@nabeeltahirdeveloper/chart-sdk 2.3.5 → 2.3.6-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chart-sdk.es.js +16340 -11676
- package/dist/chart-sdk.umd.js +21 -19
- package/package.json +1 -1
package/dist/chart-sdk.umd.js
CHANGED
|
@@ -1,23 +1,25 @@
|
|
|
1
|
-
(function(ze,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],h):(ze=typeof globalThis<"u"?globalThis:ze||self,h(ze.ChartSDK={},ze.jsxRuntime,ze.React))})(this,(function(ze,h,J){"use strict";var is=typeof document<"u"?document.currentScript:null;function sA(r){var e=r.width,A=r.height;if(e<0)throw new Error("Negative width is not allowed for Size");if(A<0)throw new Error("Negative height is not allowed for Size");return{width:e,height:A}}function Pt(r,e){return r.width===e.width&&r.height===e.height}var Ud=(function(){function r(e){var A=this;this._resolutionListener=function(){return A._onResolutionChanged()},this._resolutionMediaQueryList=null,this._observers=[],this._window=e,this._installResolutionListener()}return r.prototype.dispose=function(){this._uninstallResolutionListener(),this._window=null},Object.defineProperty(r.prototype,"value",{get:function(){return this._window.devicePixelRatio},enumerable:!1,configurable:!0}),r.prototype.subscribe=function(e){var A=this,t={next:e};return this._observers.push(t),{unsubscribe:function(){A._observers=A._observers.filter(function(i){return i!==t})}}},r.prototype._installResolutionListener=function(){if(this._resolutionMediaQueryList!==null)throw new Error("Resolution listener is already installed");var e=this._window.devicePixelRatio;this._resolutionMediaQueryList=this._window.matchMedia("all and (resolution: ".concat(e,"dppx)")),this._resolutionMediaQueryList.addListener(this._resolutionListener)},r.prototype._uninstallResolutionListener=function(){this._resolutionMediaQueryList!==null&&(this._resolutionMediaQueryList.removeListener(this._resolutionListener),this._resolutionMediaQueryList=null)},r.prototype._reinstallResolutionListener=function(){this._uninstallResolutionListener(),this._installResolutionListener()},r.prototype._onResolutionChanged=function(){var e=this;this._observers.forEach(function(A){return A.next(e._window.devicePixelRatio)}),this._reinstallResolutionListener()},r})();function Ed(r){return new Ud(r)}var Sd=(function(){function r(e,A,t){var i;this._canvasElement=null,this._bitmapSizeChangedListeners=[],this._suggestedBitmapSize=null,this._suggestedBitmapSizeChangedListeners=[],this._devicePixelRatioObservable=null,this._canvasElementResizeObserver=null,this._canvasElement=e,this._canvasElementClientSize=sA({width:this._canvasElement.clientWidth,height:this._canvasElement.clientHeight}),this._transformBitmapSize=A??(function(n){return n}),this._allowResizeObserver=(i=t?.allowResizeObserver)!==null&&i!==void 0?i:!0,this._chooseAndInitObserver()}return r.prototype.dispose=function(){var e,A;if(this._canvasElement===null)throw new Error("Object is disposed");(e=this._canvasElementResizeObserver)===null||e===void 0||e.disconnect(),this._canvasElementResizeObserver=null,(A=this._devicePixelRatioObservable)===null||A===void 0||A.dispose(),this._devicePixelRatioObservable=null,this._suggestedBitmapSizeChangedListeners.length=0,this._bitmapSizeChangedListeners.length=0,this._canvasElement=null},Object.defineProperty(r.prototype,"canvasElement",{get:function(){if(this._canvasElement===null)throw new Error("Object is disposed");return this._canvasElement},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"canvasElementClientSize",{get:function(){return this._canvasElementClientSize},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"bitmapSize",{get:function(){return sA({width:this.canvasElement.width,height:this.canvasElement.height})},enumerable:!1,configurable:!0}),r.prototype.resizeCanvasElement=function(e){this._canvasElementClientSize=sA(e),this.canvasElement.style.width="".concat(this._canvasElementClientSize.width,"px"),this.canvasElement.style.height="".concat(this._canvasElementClientSize.height,"px"),this._invalidateBitmapSize()},r.prototype.subscribeBitmapSizeChanged=function(e){this._bitmapSizeChangedListeners.push(e)},r.prototype.unsubscribeBitmapSizeChanged=function(e){this._bitmapSizeChangedListeners=this._bitmapSizeChangedListeners.filter(function(A){return A!==e})},Object.defineProperty(r.prototype,"suggestedBitmapSize",{get:function(){return this._suggestedBitmapSize},enumerable:!1,configurable:!0}),r.prototype.subscribeSuggestedBitmapSizeChanged=function(e){this._suggestedBitmapSizeChangedListeners.push(e)},r.prototype.unsubscribeSuggestedBitmapSizeChanged=function(e){this._suggestedBitmapSizeChangedListeners=this._suggestedBitmapSizeChangedListeners.filter(function(A){return A!==e})},r.prototype.applySuggestedBitmapSize=function(){if(this._suggestedBitmapSize!==null){var e=this._suggestedBitmapSize;this._suggestedBitmapSize=null,this._resizeBitmap(e),this._emitSuggestedBitmapSizeChanged(e,this._suggestedBitmapSize)}},r.prototype._resizeBitmap=function(e){var A=this.bitmapSize;Pt(A,e)||(this.canvasElement.width=e.width,this.canvasElement.height=e.height,this._emitBitmapSizeChanged(A,e))},r.prototype._emitBitmapSizeChanged=function(e,A){var t=this;this._bitmapSizeChangedListeners.forEach(function(i){return i.call(t,e,A)})},r.prototype._suggestNewBitmapSize=function(e){var A=this._suggestedBitmapSize,t=sA(this._transformBitmapSize(e,this._canvasElementClientSize)),i=Pt(this.bitmapSize,t)?null:t;A===null&&i===null||A!==null&&i!==null&&Pt(A,i)||(this._suggestedBitmapSize=i,this._emitSuggestedBitmapSizeChanged(A,i))},r.prototype._emitSuggestedBitmapSizeChanged=function(e,A){var t=this;this._suggestedBitmapSizeChangedListeners.forEach(function(i){return i.call(t,e,A)})},r.prototype._chooseAndInitObserver=function(){var e=this;if(!this._allowResizeObserver){this._initDevicePixelRatioObservable();return}Ld().then(function(A){return A?e._initResizeObserver():e._initDevicePixelRatioObservable()})},r.prototype._initDevicePixelRatioObservable=function(){var e=this;if(this._canvasElement!==null){var A=ya(this._canvasElement);if(A===null)throw new Error("No window is associated with the canvas");this._devicePixelRatioObservable=Ed(A),this._devicePixelRatioObservable.subscribe(function(){return e._invalidateBitmapSize()}),this._invalidateBitmapSize()}},r.prototype._invalidateBitmapSize=function(){var e,A;if(this._canvasElement!==null){var t=ya(this._canvasElement);if(t!==null){var i=(A=(e=this._devicePixelRatioObservable)===null||e===void 0?void 0:e.value)!==null&&A!==void 0?A:t.devicePixelRatio,n=this._canvasElement.getClientRects(),s=n[0]!==void 0?Md(n[0],i):sA({width:this._canvasElementClientSize.width*i,height:this._canvasElementClientSize.height*i});this._suggestNewBitmapSize(s)}}},r.prototype._initResizeObserver=function(){var e=this;this._canvasElement!==null&&(this._canvasElementResizeObserver=new ResizeObserver(function(A){var t=A.find(function(s){return s.target===e._canvasElement});if(!(!t||!t.devicePixelContentBoxSize||!t.devicePixelContentBoxSize[0])){var i=t.devicePixelContentBoxSize[0],n=sA({width:i.inlineSize,height:i.blockSize});e._suggestNewBitmapSize(n)}}),this._canvasElementResizeObserver.observe(this._canvasElement,{box:"device-pixel-content-box"}))},r})();function Hd(r,e){return new Sd(r,e.transform,e.options)}function ya(r){return r.ownerDocument.defaultView}function Ld(){return new Promise(function(r){var e=new ResizeObserver(function(A){r(A.every(function(t){return"devicePixelContentBoxSize"in t})),e.disconnect()});e.observe(document.body,{box:"device-pixel-content-box"})}).catch(function(){return!1})}function Md(r,e){return sA({width:Math.round(r.left*e+r.width*e)-Math.round(r.left*e),height:Math.round(r.top*e+r.height*e)-Math.round(r.top*e)})}var Id=(function(){function r(e,A,t){if(A.width===0||A.height===0)throw new TypeError("Rendering target could only be created on a media with positive width and height");if(this._mediaSize=A,t.width===0||t.height===0)throw new TypeError("Rendering target could only be created using a bitmap with positive integer width and height");this._bitmapSize=t,this._context=e}return r.prototype.useMediaCoordinateSpace=function(e){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),this._context.scale(this._horizontalPixelRatio,this._verticalPixelRatio),e({context:this._context,mediaSize:this._mediaSize})}finally{this._context.restore()}},r.prototype.useBitmapCoordinateSpace=function(e){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),e({context:this._context,mediaSize:this._mediaSize,bitmapSize:this._bitmapSize,horizontalPixelRatio:this._horizontalPixelRatio,verticalPixelRatio:this._verticalPixelRatio})}finally{this._context.restore()}},Object.defineProperty(r.prototype,"_horizontalPixelRatio",{get:function(){return this._bitmapSize.width/this._mediaSize.width},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"_verticalPixelRatio",{get:function(){return this._bitmapSize.height/this._mediaSize.height},enumerable:!1,configurable:!0}),r})();function Vt(r,e){var A=r.canvasElementClientSize;if(A.width===0||A.height===0)return null;var t=r.bitmapSize;if(t.width===0||t.height===0)return null;var i=r.canvasElement.getContext("2d",e);return i===null?null:new Id(i,A,t)}const _d={upColor:"#26a69a",downColor:"#ef5350",wickVisible:!0,borderVisible:!0,borderColor:"#378658",borderUpColor:"#26a69a",borderDownColor:"#ef5350",wickColor:"#737375",wickUpColor:"#26a69a",wickDownColor:"#ef5350"},Dd={upColor:"#26a69a",downColor:"#ef5350",openVisible:!0,thinBars:!0},kd={color:"#2196f3",lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},Od={topColor:"rgba( 46, 220, 135, 0.4)",bottomColor:"rgba( 40, 221, 100, 0)",invertFilledArea:!1,lineColor:"#33D778",lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},Nd={baseValue:{type:"price",price:0},topFillColor1:"rgba(38, 166, 154, 0.28)",topFillColor2:"rgba(38, 166, 154, 0.05)",topLineColor:"rgba(38, 166, 154, 1)",bottomFillColor1:"rgba(239, 83, 80, 0.05)",bottomFillColor2:"rgba(239, 83, 80, 0.28)",bottomLineColor:"rgba(239, 83, 80, 1)",lineWidth:3,lineStyle:0,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},Kd={color:"#26a69a",base:0},ba={color:"#2196f3"},Ta={title:"",visible:!0,lastValueVisible:!0,priceLineVisible:!0,priceLineSource:0,priceLineWidth:1,priceLineColor:"",priceLineStyle:2,baseLineVisible:!0,baseLineWidth:1,baseLineColor:"#B2B5BE",baseLineStyle:0,priceFormat:{type:"price",precision:2,minMove:.01}};var Qa,xa;function zt(r,e){const A={0:[],1:[r.lineWidth,r.lineWidth],2:[2*r.lineWidth,2*r.lineWidth],3:[6*r.lineWidth,6*r.lineWidth],4:[r.lineWidth,4*r.lineWidth]}[e];r.setLineDash(A)}function Fa(r,e,A,t){r.beginPath();const i=r.lineWidth%2?.5:0;r.moveTo(A,e+i),r.lineTo(t,e+i),r.stroke()}function Ft(r,e){if(!r)throw new Error("Assertion failed"+(e?": "+e:""))}function LA(r){if(r===void 0)throw new Error("Value is undefined");return r}function ue(r){if(r===null)throw new Error("Value is null");return r}function rr(r){return ue(LA(r))}(function(r){r[r.Simple=0]="Simple",r[r.WithSteps=1]="WithSteps",r[r.Curved=2]="Curved"})(Qa||(Qa={})),(function(r){r[r.Solid=0]="Solid",r[r.Dotted=1]="Dotted",r[r.Dashed=2]="Dashed",r[r.LargeDashed=3]="LargeDashed",r[r.SparseDotted=4]="SparseDotted"})(xa||(xa={}));const Ua={khaki:"#f0e68c",azure:"#f0ffff",aliceblue:"#f0f8ff",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",gray:"#808080",green:"#008000",honeydew:"#f0fff0",floralwhite:"#fffaf0",lightblue:"#add8e6",lightcoral:"#f08080",lemonchiffon:"#fffacd",hotpink:"#ff69b4",lightyellow:"#ffffe0",greenyellow:"#adff2f",lightgoldenrodyellow:"#fafad2",limegreen:"#32cd32",linen:"#faf0e6",lightcyan:"#e0ffff",magenta:"#f0f",maroon:"#800000",olive:"#808000",orange:"#ffa500",oldlace:"#fdf5e6",mediumblue:"#0000cd",transparent:"#0000",lime:"#0f0",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",midnightblue:"#191970",orchid:"#da70d6",mediumorchid:"#ba55d3",mediumturquoise:"#48d1cc",orangered:"#ff4500",royalblue:"#4169e1",powderblue:"#b0e0e6",red:"#f00",coral:"#ff7f50",turquoise:"#40e0d0",white:"#fff",whitesmoke:"#f5f5f5",wheat:"#f5deb3",teal:"#008080",steelblue:"#4682b4",bisque:"#ffe4c4",aquamarine:"#7fffd4",aqua:"#0ff",sienna:"#a0522d",silver:"#c0c0c0",springgreen:"#00ff7f",antiquewhite:"#faebd7",burlywood:"#deb887",brown:"#a52a2a",beige:"#f5f5dc",chocolate:"#d2691e",chartreuse:"#7fff00",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cadetblue:"#5f9ea0",tomato:"#ff6347",fuchsia:"#f0f",blue:"#00f",salmon:"#fa8072",blanchedalmond:"#ffebcd",slateblue:"#6a5acd",slategray:"#708090",thistle:"#d8bfd8",tan:"#d2b48c",cyan:"#0ff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",blueviolet:"#8a2be2",black:"#000",darkmagenta:"#8b008b",darkslateblue:"#483d8b",darkkhaki:"#bdb76b",darkorchid:"#9932cc",darkorange:"#ff8c00",darkgreen:"#006400",darkred:"#8b0000",dodgerblue:"#1e90ff",darkslategray:"#2f4f4f",dimgray:"#696969",deepskyblue:"#00bfff",firebrick:"#b22222",forestgreen:"#228b22",indigo:"#4b0082",ivory:"#fffff0",lavenderblush:"#fff0f5",feldspar:"#d19275",indianred:"#cd5c5c",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightskyblue:"#87cefa",lightslategray:"#789",lightslateblue:"#8470ff",snow:"#fffafa",lightseagreen:"#20b2aa",lightsalmon:"#ffa07a",darksalmon:"#e9967a",darkviolet:"#9400d3",mediumpurple:"#9370d8",mediumaquamarine:"#66cdaa",skyblue:"#87ceeb",lavender:"#e6e6fa",lightsteelblue:"#b0c4de",mediumvioletred:"#c71585",mintcream:"#f5fffa",navajowhite:"#ffdead",navy:"#000080",olivedrab:"#6b8e23",palevioletred:"#d87093",violetred:"#d02090",yellow:"#ff0",yellowgreen:"#9acd32",lawngreen:"#7cfc00",pink:"#ffc0cb",paleturquoise:"#afeeee",palegoldenrod:"#eee8aa",darkolivegreen:"#556b2f",darkseagreen:"#8fbc8f",darkturquoise:"#00ced1",peachpuff:"#ffdab9",deeppink:"#ff1493",violet:"#ee82ee",palegreen:"#98fb98",mediumseagreen:"#3cb371",peru:"#cd853f",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",purple:"#800080",seagreen:"#2e8b57",seashell:"#fff5ee",papayawhip:"#ffefd5",mediumslateblue:"#7b68ee",plum:"#dda0dd",mediumspringgreen:"#00fa9a"};function $A(r){return r<0?0:r>255?255:Math.round(r)||0}function Ea(r){return r<=0||r>1?Math.min(Math.max(r,0),1):Math.round(1e4*r)/1e4}const Pd=/^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])?$/i,Vd=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?$/i,zd=/^rgb\(\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*\)$/,Gd=/^rgba\(\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*,\s*(-?\d*\.?\d+)\s*\)$/;function xr(r){(r=r.toLowerCase())in Ua&&(r=Ua[r]);{const e=Gd.exec(r)||zd.exec(r);if(e)return[$A(parseInt(e[1],10)),$A(parseInt(e[2],10)),$A(parseInt(e[3],10)),Ea(e.length<5?1:parseFloat(e[4]))]}{const e=Vd.exec(r);if(e)return[$A(parseInt(e[1],16)),$A(parseInt(e[2],16)),$A(parseInt(e[3],16)),1]}{const e=Pd.exec(r);if(e)return[$A(17*parseInt(e[1],16)),$A(17*parseInt(e[2],16)),$A(17*parseInt(e[3],16)),1]}throw new Error(`Cannot parse color: ${r}`)}function Sa(r){return .199*r[0]+.687*r[1]+.114*r[2]}function Ci(r){const e=xr(r);return{t:`rgb(${e[0]}, ${e[1]}, ${e[2]})`,i:Sa(e)>160?"black":"white"}}class uA{constructor(){this.h=[]}l(e,A,t){const i={o:e,_:A,u:t===!0};this.h.push(i)}v(e){const A=this.h.findIndex((t=>e===t.o));A>-1&&this.h.splice(A,1)}p(e){this.h=this.h.filter((A=>A._!==e))}m(e,A,t){const i=[...this.h];this.h=this.h.filter((n=>!n.u)),i.forEach((n=>n.o(e,A,t)))}M(){return this.h.length>0}S(){this.h=[]}}function et(r,...e){for(const A of e)for(const t in A)A[t]!==void 0&&Object.prototype.hasOwnProperty.call(A,t)&&!["__proto__","constructor","prototype"].includes(t)&&(typeof A[t]!="object"||r[t]===void 0||Array.isArray(A[t])?r[t]=A[t]:et(r[t],A[t]));return r}function ot(r){return typeof r=="number"&&isFinite(r)}function Fr(r){return typeof r=="number"&&r%1==0}function Ur(r){return typeof r=="string"}function vi(r){return typeof r=="boolean"}function Ct(r){const e=r;if(!e||typeof e!="object")return e;let A,t,i;for(t in A=Array.isArray(e)?[]:{},e)e.hasOwnProperty(t)&&(i=e[t],A[t]=i&&typeof i=="object"?Ct(i):i);return A}function Rd(r){return r!==null}function Er(r){return r===null?void 0:r}const ns="-apple-system, BlinkMacSystemFont, 'Trebuchet MS', Roboto, Ubuntu, sans-serif";function ir(r,e,A){return e===void 0&&(e=ns),`${A=A!==void 0?`${A} `:""}${r}px ${e}`}class Wd{constructor(e){this.k={C:1,T:5,P:NaN,R:"",D:"",V:"",O:"",B:0,A:0,I:0,L:0,N:0},this.F=e}W(){const e=this.k,A=this.j(),t=this.H();return e.P===A&&e.D===t||(e.P=A,e.D=t,e.R=ir(A,t),e.L=2.5/12*A,e.B=e.L,e.A=A/12*e.T,e.I=A/12*e.T,e.N=0),e.V=this.$(),e.O=this.U(),this.k}$(){return this.F.W().layout.textColor}U(){return this.F.q()}j(){return this.F.W().layout.fontSize}H(){return this.F.W().layout.fontFamily}}class ss{constructor(){this.Y=[]}Z(e){this.Y=e}X(e,A,t){this.Y.forEach((i=>{i.X(e,A,t)}))}}class At{X(e,A,t){e.useBitmapCoordinateSpace((i=>this.K(i,A,t)))}}class $d extends At{constructor(){super(...arguments),this.G=null}J(e){this.G=e}K({context:e,horizontalPixelRatio:A,verticalPixelRatio:t}){if(this.G===null||this.G.tt===null)return;const i=this.G.tt,n=this.G,s=Math.max(1,Math.floor(A))%2/2,o=a=>{e.beginPath();for(let l=i.to-1;l>=i.from;--l){const c=n.it[l],d=Math.round(c.nt*A)+s,p=c.st*t,y=a*t+s;e.moveTo(d,p),e.arc(d,p,y,0,2*Math.PI)}e.fill()};n.et>0&&(e.fillStyle=n.rt,o(n.ht+n.et)),e.fillStyle=n.lt,o(n.ht)}}function Xd(){return{it:[{nt:0,st:0,ot:0,_t:0}],lt:"",rt:"",ht:0,et:0,tt:null}}const Jd={from:0,to:1};class Zd{constructor(e,A){this.ut=new ss,this.ct=[],this.dt=[],this.ft=!0,this.F=e,this.vt=A,this.ut.Z(this.ct)}bt(e){const A=this.F.wt();A.length!==this.ct.length&&(this.dt=A.map(Xd),this.ct=this.dt.map((t=>{const i=new $d;return i.J(t),i})),this.ut.Z(this.ct)),this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.ut}Mt(){const e=this.vt.W().mode===2,A=this.F.wt(),t=this.vt.xt(),i=this.F.St();A.forEach(((n,s)=>{var o;const a=this.dt[s],l=n.kt(t);if(e||l===null||!n.yt())return void(a.tt=null);const c=ue(n.Ct());a.lt=l.Tt,a.ht=l.ht,a.et=l.Pt,a.it[0]._t=l._t,a.it[0].st=n.Dt().Rt(l._t,c.Vt),a.rt=(o=l.Ot)!==null&&o!==void 0?o:this.F.Bt(a.it[0].st/n.Dt().At()),a.it[0].ot=t,a.it[0].nt=i.It(t),a.tt=Jd}))}}let qd=class extends At{constructor(e){super(),this.zt=e}K({context:e,bitmapSize:A,horizontalPixelRatio:t,verticalPixelRatio:i}){if(this.zt===null)return;const n=this.zt.Lt.yt,s=this.zt.Et.yt;if(!n&&!s)return;const o=Math.round(this.zt.nt*t),a=Math.round(this.zt.st*i);e.lineCap="butt",n&&o>=0&&(e.lineWidth=Math.floor(this.zt.Lt.et*t),e.strokeStyle=this.zt.Lt.V,e.fillStyle=this.zt.Lt.V,zt(e,this.zt.Lt.Nt),(function(l,c,d,p){l.beginPath();const y=l.lineWidth%2?.5:0;l.moveTo(c+y,d),l.lineTo(c+y,p),l.stroke()})(e,o,0,A.height)),s&&a>=0&&(e.lineWidth=Math.floor(this.zt.Et.et*i),e.strokeStyle=this.zt.Et.V,e.fillStyle=this.zt.Et.V,zt(e,this.zt.Et.Nt),Fa(e,a,0,A.width))}};class Yd{constructor(e){this.ft=!0,this.Ft={Lt:{et:1,Nt:0,V:"",yt:!1},Et:{et:1,Nt:0,V:"",yt:!1},nt:0,st:0},this.Wt=new qd(this.Ft),this.jt=e}bt(){this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.Wt}Mt(){const e=this.jt.yt(),A=ue(this.jt.Ht()),t=A.$t().W().crosshair,i=this.Ft;if(t.mode===2)return i.Et.yt=!1,void(i.Lt.yt=!1);i.Et.yt=e&&this.jt.Ut(A),i.Lt.yt=e&&this.jt.qt(),i.Et.et=t.horzLine.width,i.Et.Nt=t.horzLine.style,i.Et.V=t.horzLine.color,i.Lt.et=t.vertLine.width,i.Lt.Nt=t.vertLine.style,i.Lt.V=t.vertLine.color,i.nt=this.jt.Yt(),i.st=this.jt.Zt()}}function jd(r,e,A,t,i,n){r.fillRect(e+n,A,t-2*n,n),r.fillRect(e+n,A+i-n,t-2*n,n),r.fillRect(e,A,n,i),r.fillRect(e+t-n,A,n,i)}function yi(r,e,A,t,i,n){r.save(),r.globalCompositeOperation="copy",r.fillStyle=n,r.fillRect(e,A,t,i),r.restore()}function Ha(r,e,A,t,i,n){r.beginPath(),r.roundRect?r.roundRect(e,A,t,i,n):(r.lineTo(e+t-n[1],A),n[1]!==0&&r.arcTo(e+t,A,e+t,A+n[1],n[1]),r.lineTo(e+t,A+i-n[2]),n[2]!==0&&r.arcTo(e+t,A+i,e+t-n[2],A+i,n[2]),r.lineTo(e+n[3],A+i),n[3]!==0&&r.arcTo(e,A+i,e,A+i-n[3],n[3]),r.lineTo(e,A+n[0]),n[0]!==0&&r.arcTo(e,A,e+n[0],A,n[0]))}function La(r,e,A,t,i,n,s=0,o=[0,0,0,0],a=""){if(r.save(),!s||!a||a===n)return Ha(r,e,A,t,i,o),r.fillStyle=n,r.fill(),void r.restore();const l=s/2;var c;Ha(r,e+l,A+l,t-s,i-s,(c=-l,o.map((d=>d===0?d:d+c)))),n!=="transparent"&&(r.fillStyle=n,r.fill()),a!=="transparent"&&(r.lineWidth=s,r.strokeStyle=a,r.closePath(),r.stroke()),r.restore()}function Ma(r,e,A,t,i,n,s){r.save(),r.globalCompositeOperation="copy";const o=r.createLinearGradient(0,0,0,i);o.addColorStop(0,n),o.addColorStop(1,s),r.fillStyle=o,r.fillRect(e,A,t,i),r.restore()}class Ia{constructor(e,A){this.J(e,A)}J(e,A){this.zt=e,this.Xt=A}At(e,A){return this.zt.yt?e.P+e.L+e.B:0}X(e,A,t,i){if(!this.zt.yt||this.zt.Kt.length===0)return;const n=this.zt.V,s=this.Xt.t,o=e.useBitmapCoordinateSpace((a=>{const l=a.context;l.font=A.R;const c=this.Gt(a,A,t,i),d=c.Jt;return c.Qt?La(l,d.ti,d.ii,d.ni,d.si,s,d.ei,[d.ht,0,0,d.ht],s):La(l,d.ri,d.ii,d.ni,d.si,s,d.ei,[0,d.ht,d.ht,0],s),this.zt.hi&&(l.fillStyle=n,l.fillRect(d.ri,d.li,d.ai-d.ri,d.oi)),this.zt._i&&(l.fillStyle=A.O,l.fillRect(c.Qt?d.ui-d.ei:0,d.ii,d.ei,d.ci-d.ii)),c}));e.useMediaCoordinateSpace((({context:a})=>{const l=o.di;a.font=A.R,a.textAlign=o.Qt?"right":"left",a.textBaseline="middle",a.fillStyle=n,a.fillText(this.zt.Kt,l.fi,(l.ii+l.ci)/2+l.pi)}))}Gt(e,A,t,i){var n;const{context:s,bitmapSize:o,mediaSize:a,horizontalPixelRatio:l,verticalPixelRatio:c}=e,d=this.zt.hi||!this.zt.mi?A.T:0,p=this.zt.bi?A.C:0,y=A.L+this.Xt.wi,w=A.B+this.Xt.gi,C=A.A,v=A.I,S=this.zt.Kt,F=A.P,k=t.Mi(s,S),x=Math.ceil(t.xi(s,S)),V=F+y+w,N=A.C+C+v+x+d,Z=Math.max(1,Math.floor(c));let X=Math.round(V*c);X%2!=Z%2&&(X+=1);const W=p>0?Math.max(1,Math.floor(p*l)):0,ae=Math.round(N*l),G=Math.round(d*l),ee=(n=this.Xt.Si)!==null&&n!==void 0?n:this.Xt.ki,oe=Math.round(ee*c)-Math.floor(.5*c),me=Math.floor(oe+Z/2-X/2),Le=me+X,Ue=i==="right",Fe=Ue?a.width-p:p,ke=Ue?o.width-W:W;let ye,ve,Ce;return Ue?(ye=ke-ae,ve=ke-G,Ce=Fe-d-C-p):(ye=ke+ae,ve=ke+G,Ce=Fe+d+C),{Qt:Ue,Jt:{ii:me,li:oe,ci:Le,ni:ae,si:X,ht:2*l,ei:W,ti:ye,ri:ke,ai:ve,oi:Z,ui:o.width},di:{ii:me/c,ci:Le/c,fi:Ce,pi:k}}}}class bi{constructor(e){this.yi={ki:0,t:"#000",gi:0,wi:0},this.Ci={Kt:"",yt:!1,hi:!0,mi:!1,Ot:"",V:"#FFF",_i:!1,bi:!1},this.Ti={Kt:"",yt:!1,hi:!1,mi:!0,Ot:"",V:"#FFF",_i:!0,bi:!0},this.ft=!0,this.Pi=new(e||Ia)(this.Ci,this.yi),this.Ri=new(e||Ia)(this.Ti,this.yi)}Kt(){return this.Di(),this.Ci.Kt}ki(){return this.Di(),this.yi.ki}bt(){this.ft=!0}At(e,A=!1){return Math.max(this.Pi.At(e,A),this.Ri.At(e,A))}Vi(){return this.yi.Si||0}Oi(e){this.yi.Si=e}Bi(){return this.Di(),this.Ci.yt||this.Ti.yt}Ai(){return this.Di(),this.Ci.yt}gt(e){return this.Di(),this.Ci.hi=this.Ci.hi&&e.W().ticksVisible,this.Ti.hi=this.Ti.hi&&e.W().ticksVisible,this.Pi.J(this.Ci,this.yi),this.Ri.J(this.Ti,this.yi),this.Pi}Ii(){return this.Di(),this.Pi.J(this.Ci,this.yi),this.Ri.J(this.Ti,this.yi),this.Ri}Di(){this.ft&&(this.Ci.hi=!0,this.Ti.hi=!1,this.zi(this.Ci,this.Ti,this.yi))}}class ef extends bi{constructor(e,A,t){super(),this.jt=e,this.Li=A,this.Ei=t}zi(e,A,t){if(e.yt=!1,this.jt.W().mode===2)return;const i=this.jt.W().horzLine;if(!i.labelVisible)return;const n=this.Li.Ct();if(!this.jt.yt()||this.Li.Ni()||n===null)return;const s=Ci(i.labelBackgroundColor);t.t=s.t,e.V=s.i;const o=2/12*this.Li.P();t.wi=o,t.gi=o;const a=this.Ei(this.Li);t.ki=a.ki,e.Kt=this.Li.Fi(a._t,n),e.yt=!0}}const Af=/[1-9]/g;class _a{constructor(){this.zt=null}J(e){this.zt=e}X(e,A){if(this.zt===null||this.zt.yt===!1||this.zt.Kt.length===0)return;const t=e.useMediaCoordinateSpace((({context:p})=>(p.font=A.R,Math.round(A.Wi.xi(p,ue(this.zt).Kt,Af)))));if(t<=0)return;const i=A.ji,n=t+2*i,s=n/2,o=this.zt.Hi;let a=this.zt.ki,l=Math.floor(a-s)+.5;l<0?(a+=Math.abs(0-l),l=Math.floor(a-s)+.5):l+n>o&&(a-=Math.abs(o-(l+n)),l=Math.floor(a-s)+.5);const c=l+n,d=Math.ceil(0+A.C+A.T+A.L+A.P+A.B);e.useBitmapCoordinateSpace((({context:p,horizontalPixelRatio:y,verticalPixelRatio:w})=>{const C=ue(this.zt);p.fillStyle=C.t;const v=Math.round(l*y),S=Math.round(0*w),F=Math.round(c*y),k=Math.round(d*w),x=Math.round(2*y);if(p.beginPath(),p.moveTo(v,S),p.lineTo(v,k-x),p.arcTo(v,k,v+x,k,x),p.lineTo(F-x,k),p.arcTo(F,k,F,k-x,x),p.lineTo(F,S),p.fill(),C.hi){const V=Math.round(C.ki*y),N=S,Z=Math.round((N+A.T)*w);p.fillStyle=C.V;const X=Math.max(1,Math.floor(y)),W=Math.floor(.5*y);p.fillRect(V-W,N,X,Z-N)}})),e.useMediaCoordinateSpace((({context:p})=>{const y=ue(this.zt),w=0+A.C+A.T+A.L+A.P/2;p.font=A.R,p.textAlign="left",p.textBaseline="middle",p.fillStyle=y.V;const C=A.Wi.Mi(p,"Apr0");p.translate(l+i,w+C),p.fillText(y.Kt,0,0)}))}}class tf{constructor(e,A,t){this.ft=!0,this.Wt=new _a,this.Ft={yt:!1,t:"#4c525e",V:"white",Kt:"",Hi:0,ki:NaN,hi:!0},this.vt=e,this.$i=A,this.Ei=t}bt(){this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.Wt.J(this.Ft),this.Wt}Mt(){const e=this.Ft;if(e.yt=!1,this.vt.W().mode===2)return;const A=this.vt.W().vertLine;if(!A.labelVisible)return;const t=this.$i.St();if(t.Ni())return;e.Hi=t.Hi();const i=this.Ei();if(i===null)return;e.ki=i.ki;const n=t.Ui(this.vt.xt());e.Kt=t.qi(ue(n)),e.yt=!0;const s=Ci(A.labelBackgroundColor);e.t=s.t,e.V=s.i,e.hi=t.W().ticksVisible}}class os{constructor(){this.Yi=null,this.Zi=0}Xi(){return this.Zi}Ki(e){this.Zi=e}Dt(){return this.Yi}Gi(e){this.Yi=e}Ji(e){return[]}Qi(){return[]}yt(){return!0}}var Da;(function(r){r[r.Normal=0]="Normal",r[r.Magnet=1]="Magnet",r[r.Hidden=2]="Hidden"})(Da||(Da={}));class rf extends os{constructor(e,A){super(),this.tn=null,this.nn=NaN,this.sn=0,this.en=!0,this.rn=new Map,this.hn=!1,this.ln=NaN,this.an=NaN,this._n=NaN,this.un=NaN,this.$i=e,this.cn=A,this.dn=new Zd(e,this),this.fn=((i,n)=>s=>{const o=n(),a=i();if(s===ue(this.tn).vn())return{_t:a,ki:o};{const l=ue(s.Ct());return{_t:s.pn(o,l),ki:o}}})((()=>this.nn),(()=>this.an));const t=((i,n)=>()=>{const s=this.$i.St().mn(i()),o=n();return s&&Number.isFinite(o)?{ot:s,ki:o}:null})((()=>this.sn),(()=>this.Yt()));this.bn=new tf(this,e,t),this.wn=new Yd(this)}W(){return this.cn}gn(e,A){this._n=e,this.un=A}Mn(){this._n=NaN,this.un=NaN}xn(){return this._n}Sn(){return this.un}kn(e,A,t){this.hn||(this.hn=!0),this.en=!0,this.yn(e,A,t)}xt(){return this.sn}Yt(){return this.ln}Zt(){return this.an}yt(){return this.en}Cn(){this.en=!1,this.Tn(),this.nn=NaN,this.ln=NaN,this.an=NaN,this.tn=null,this.Mn()}Pn(e){return this.tn!==null?[this.wn,this.dn]:[]}Ut(e){return e===this.tn&&this.cn.horzLine.visible}qt(){return this.cn.vertLine.visible}Rn(e,A){this.en&&this.tn===e||this.rn.clear();const t=[];return this.tn===e&&t.push(this.Dn(this.rn,A,this.fn)),t}Qi(){return this.en?[this.bn]:[]}Ht(){return this.tn}Vn(){this.wn.bt(),this.rn.forEach((e=>e.bt())),this.bn.bt(),this.dn.bt()}On(e){return e&&!e.vn().Ni()?e.vn():null}yn(e,A,t){this.Bn(e,A,t)&&this.Vn()}Bn(e,A,t){const i=this.ln,n=this.an,s=this.nn,o=this.sn,a=this.tn,l=this.On(t);this.sn=e,this.ln=isNaN(e)?NaN:this.$i.St().It(e),this.tn=t;const c=l!==null?l.Ct():null;return l!==null&&c!==null?(this.nn=A,this.an=l.Rt(A,c)):(this.nn=NaN,this.an=NaN),i!==this.ln||n!==this.an||o!==this.sn||s!==this.nn||a!==this.tn}Tn(){const e=this.$i.wt().map((t=>t.In().An())).filter(Rd),A=e.length===0?null:Math.max(...e);this.sn=A!==null?A:NaN}Dn(e,A,t){let i=e.get(A);return i===void 0&&(i=new ef(this,A,t),e.set(A,i)),i}}function Ti(r){return r==="left"||r==="right"}class yA{constructor(e){this.zn=new Map,this.Ln=[],this.En=e}Nn(e,A){const t=(function(i,n){return i===void 0?n:{Fn:Math.max(i.Fn,n.Fn),Wn:i.Wn||n.Wn}})(this.zn.get(e),A);this.zn.set(e,t)}jn(){return this.En}Hn(e){const A=this.zn.get(e);return A===void 0?{Fn:this.En}:{Fn:Math.max(this.En,A.Fn),Wn:A.Wn}}$n(){this.Un(),this.Ln=[{qn:0}]}Yn(e){this.Un(),this.Ln=[{qn:1,Vt:e}]}Zn(e){this.Xn(),this.Ln.push({qn:5,Vt:e})}Un(){this.Xn(),this.Ln.push({qn:6})}Kn(){this.Un(),this.Ln=[{qn:4}]}Gn(e){this.Un(),this.Ln.push({qn:2,Vt:e})}Jn(e){this.Un(),this.Ln.push({qn:3,Vt:e})}Qn(){return this.Ln}ts(e){for(const A of e.Ln)this.ns(A);this.En=Math.max(this.En,e.En),e.zn.forEach(((A,t)=>{this.Nn(t,A)}))}static ss(){return new yA(2)}static es(){return new yA(3)}ns(e){switch(e.qn){case 0:this.$n();break;case 1:this.Yn(e.Vt);break;case 2:this.Gn(e.Vt);break;case 3:this.Jn(e.Vt);break;case 4:this.Kn();break;case 5:this.Zn(e.Vt);break;case 6:this.Xn()}}Xn(){const e=this.Ln.findIndex((A=>A.qn===5));e!==-1&&this.Ln.splice(e,1)}}const ka=".";function vt(r,e){if(!ot(r))return"n/a";if(!Fr(e))throw new TypeError("invalid length");if(e<0||e>16)throw new TypeError("invalid length");return e===0?r.toString():("0000000000000000"+r.toString()).slice(-e)}class Qi{constructor(e,A){if(A||(A=1),ot(e)&&Fr(e)||(e=100),e<0)throw new TypeError("invalid base");this.Li=e,this.rs=A,this.hs()}format(e){const A=e<0?"−":"";return e=Math.abs(e),A+this.ls(e)}hs(){if(this._s=0,this.Li>0&&this.rs>0){let e=this.Li;for(;e>1;)e/=10,this._s++}}ls(e){const A=this.Li/this.rs;let t=Math.floor(e),i="";const n=this._s!==void 0?this._s:NaN;if(A>1){let s=+(Math.round(e*A)-t*A).toFixed(this._s);s>=A&&(s-=A,t+=1),i=ka+vt(+s.toFixed(this._s)*this.rs,n)}else t=Math.round(t*A)/A,n>0&&(i=ka+vt(0,n));return t.toFixed(0)+i}}class Oa extends Qi{constructor(e=100){super(e)}format(e){return`${super.format(e)}%`}}class nf{constructor(e){this.us=e}format(e){let A="";return e<0&&(A="-",e=-e),e<995?A+this.cs(e):e<999995?A+this.cs(e/1e3)+"K":e<999999995?(e=1e3*Math.round(e/1e3),A+this.cs(e/1e6)+"M"):(e=1e6*Math.round(e/1e6),A+this.cs(e/1e9)+"B")}cs(e){let A;const t=Math.pow(10,this.us);return A=(e=Math.round(e*t)/t)>=1e-15&&e<1?e.toFixed(this.us).replace(/\.?0+$/,""):String(e),A.replace(/(\.[1-9]*)0+$/,((i,n)=>n))}}function Na(r,e,A,t,i,n,s){if(e.length===0||t.from>=e.length||t.to<=0)return;const{context:o,horizontalPixelRatio:a,verticalPixelRatio:l}=r,c=e[t.from];let d=n(r,c),p=c;if(t.to-t.from<2){const y=i/2;o.beginPath();const w={nt:c.nt-y,st:c.st},C={nt:c.nt+y,st:c.st};o.moveTo(w.nt*a,w.st*l),o.lineTo(C.nt*a,C.st*l),s(r,d,w,C)}else{const y=(C,v)=>{s(r,d,p,v),o.beginPath(),d=C,p=v};let w=p;o.beginPath(),o.moveTo(c.nt*a,c.st*l);for(let C=t.from+1;C<t.to;++C){w=e[C];const v=n(r,w);switch(A){case 0:o.lineTo(w.nt*a,w.st*l);break;case 1:o.lineTo(w.nt*a,e[C-1].st*l),v!==d&&(y(v,w),o.lineTo(w.nt*a,e[C-1].st*l)),o.lineTo(w.nt*a,w.st*l);break;case 2:{const[S,F]=sf(e,C-1,C);o.bezierCurveTo(S.nt*a,S.st*l,F.nt*a,F.st*l,w.nt*a,w.st*l);break}}A!==1&&v!==d&&(y(v,w),o.moveTo(w.nt*a,w.st*l))}(p!==w||p===w&&A===1)&&s(r,d,p,w)}}const Ka=6;function as(r,e){return{nt:r.nt-e.nt,st:r.st-e.st}}function Pa(r,e){return{nt:r.nt/e,st:r.st/e}}function sf(r,e,A){const t=Math.max(0,e-1),i=Math.min(r.length-1,A+1);var n,s;return[(n=r[e],s=Pa(as(r[A],r[t]),Ka),{nt:n.nt+s.nt,st:n.st+s.st}),as(r[A],Pa(as(r[i],r[e]),Ka))]}function of(r,e,A,t,i){const{context:n,horizontalPixelRatio:s,verticalPixelRatio:o}=e;n.lineTo(i.nt*s,r*o),n.lineTo(t.nt*s,r*o),n.closePath(),n.fillStyle=A,n.fill()}class Va extends At{constructor(){super(...arguments),this.G=null}J(e){this.G=e}K(e){var A;if(this.G===null)return;const{it:t,tt:i,ds:n,et:s,Nt:o,fs:a}=this.G,l=(A=this.G.vs)!==null&&A!==void 0?A:this.G.ps?0:e.mediaSize.height;if(i===null)return;const c=e.context;c.lineCap="butt",c.lineJoin="round",c.lineWidth=s,zt(c,o),c.lineWidth=1,Na(e,t,a,i,n,this.bs.bind(this),of.bind(null,l))}}function ls(r,e,A){return Math.min(Math.max(r,e),A)}function xi(r,e,A){return e-r<=A}function za(r){const e=Math.ceil(r);return e%2==0?e-1:e}class cs{ws(e,A){const t=this.gs,{Ms:i,xs:n,Ss:s,ks:o,ys:a,vs:l}=A;if(this.Cs===void 0||t===void 0||t.Ms!==i||t.xs!==n||t.Ss!==s||t.ks!==o||t.vs!==l||t.ys!==a){const c=e.context.createLinearGradient(0,0,0,a);if(c.addColorStop(0,i),l!=null){const d=ls(l*e.verticalPixelRatio/a,0,1);c.addColorStop(d,n),c.addColorStop(d,s)}c.addColorStop(1,o),this.Cs=c,this.gs=A}return this.Cs}}class af extends Va{constructor(){super(...arguments),this.Ts=new cs}bs(e,A){return this.Ts.ws(e,{Ms:A.Ps,xs:"",Ss:"",ks:A.Rs,ys:e.bitmapSize.height})}}function lf(r,e){const A=r.context;A.strokeStyle=e,A.stroke()}class Ga extends At{constructor(){super(...arguments),this.G=null}J(e){this.G=e}K(e){if(this.G===null)return;const{it:A,tt:t,ds:i,fs:n,et:s,Nt:o,Ds:a}=this.G;if(t===null)return;const l=e.context;l.lineCap="butt",l.lineWidth=s*e.verticalPixelRatio,zt(l,o),l.lineJoin="round";const c=this.Vs.bind(this);n!==void 0&&Na(e,A,n,t,i,c,lf),a&&(function(d,p,y,w,C){const{horizontalPixelRatio:v,verticalPixelRatio:S,context:F}=d;let k=null;const x=Math.max(1,Math.floor(v))%2/2,V=y*S+x;for(let N=w.to-1;N>=w.from;--N){const Z=p[N];if(Z){const X=C(d,Z);X!==k&&(F.beginPath(),k!==null&&F.fill(),F.fillStyle=X,k=X);const W=Math.round(Z.nt*v)+x,ae=Z.st*S;F.moveTo(W,ae),F.arc(W,ae,V,0,2*Math.PI)}}F.fill()})(e,A,a,t,c)}}class Ra extends Ga{Vs(e,A){return A.lt}}function Wa(r,e,A,t,i=0,n=e.length){let s=n-i;for(;0<s;){const o=s>>1,a=i+o;t(e[a],A)===r?(i=a+1,s-=o+1):s=o}return i}const Sr=Wa.bind(null,!0),$a=Wa.bind(null,!1);function cf(r,e){return r.ot<e}function hf(r,e){return e<r.ot}function Xa(r,e,A){const t=e.Os(),i=e.ui(),n=Sr(r,t,cf),s=$a(r,i,hf);if(!A)return{from:n,to:s};let o=n,a=s;return n>0&&n<r.length&&r[n].ot>=t&&(o=n-1),s>0&&s<r.length&&r[s-1].ot<=i&&(a=s+1),{from:o,to:a}}class hs{constructor(e,A,t){this.Bs=!0,this.As=!0,this.Is=!0,this.zs=[],this.Ls=null,this.Es=e,this.Ns=A,this.Fs=t}bt(e){this.Bs=!0,e==="data"&&(this.As=!0),e==="options"&&(this.Is=!0)}gt(){return this.Es.yt()?(this.Ws(),this.Ls===null?null:this.js):null}Hs(){this.zs=this.zs.map((e=>Object.assign(Object.assign({},e),this.Es.Us().$s(e.ot))))}qs(){this.Ls=null}Ws(){this.As&&(this.Ys(),this.As=!1),this.Is&&(this.Hs(),this.Is=!1),this.Bs&&(this.Zs(),this.Bs=!1)}Zs(){const e=this.Es.Dt(),A=this.Ns.St();if(this.qs(),A.Ni()||e.Ni())return;const t=A.Xs();if(t===null||this.Es.In().Ks()===0)return;const i=this.Es.Ct();i!==null&&(this.Ls=Xa(this.zs,t,this.Fs),this.Gs(e,A,i.Vt),this.Js())}}class Fi extends hs{constructor(e,A){super(e,A,!0)}Gs(e,A,t){A.Qs(this.zs,Er(this.Ls)),e.te(this.zs,t,Er(this.Ls))}ie(e,A){return{ot:e,_t:A,nt:NaN,st:NaN}}Ys(){const e=this.Es.Us();this.zs=this.Es.In().ne().map((A=>{const t=A.Vt[3];return this.se(A.ee,t,e)}))}}class uf extends Fi{constructor(e,A){super(e,A),this.js=new ss,this.re=new af,this.he=new Ra,this.js.Z([this.re,this.he])}se(e,A,t){return Object.assign(Object.assign({},this.ie(e,A)),t.$s(e))}Js(){const e=this.Es.W();this.re.J({fs:e.lineType,it:this.zs,Nt:e.lineStyle,et:e.lineWidth,vs:null,ps:e.invertFilledArea,tt:this.Ls,ds:this.Ns.St().le()}),this.he.J({fs:e.lineVisible?e.lineType:void 0,it:this.zs,Nt:e.lineStyle,et:e.lineWidth,tt:this.Ls,ds:this.Ns.St().le(),Ds:e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0})}}class df extends At{constructor(){super(...arguments),this.zt=null,this.ae=0,this.oe=0}J(e){this.zt=e}K({context:e,horizontalPixelRatio:A,verticalPixelRatio:t}){if(this.zt===null||this.zt.In.length===0||this.zt.tt===null)return;this.ae=this._e(A),this.ae>=2&&Math.max(1,Math.floor(A))%2!=this.ae%2&&this.ae--,this.oe=this.zt.ue?Math.min(this.ae,Math.floor(A)):this.ae;let i=null;const n=this.oe<=this.ae&&this.zt.le>=Math.floor(1.5*A);for(let s=this.zt.tt.from;s<this.zt.tt.to;++s){const o=this.zt.In[s];i!==o.ce&&(e.fillStyle=o.ce,i=o.ce);const a=Math.floor(.5*this.oe),l=Math.round(o.nt*A),c=l-a,d=this.oe,p=c+d-1,y=Math.min(o.de,o.fe),w=Math.max(o.de,o.fe),C=Math.round(y*t)-a,v=Math.round(w*t)+a,S=Math.max(v-C,this.oe);e.fillRect(c,C,d,S);const F=Math.ceil(1.5*this.ae);if(n){if(this.zt.ve){const N=l-F;let Z=Math.max(C,Math.round(o.pe*t)-a),X=Z+d-1;X>C+S-1&&(X=C+S-1,Z=X-d+1),e.fillRect(N,Z,c-N,X-Z+1)}const k=l+F;let x=Math.max(C,Math.round(o.me*t)-a),V=x+d-1;V>C+S-1&&(V=C+S-1,x=V-d+1),e.fillRect(p+1,x,k-p,V-x+1)}}}_e(e){const A=Math.floor(e);return Math.max(A,Math.floor((function(t,i){return Math.floor(.3*t*i)})(ue(this.zt).le,e)))}}class Ja extends hs{constructor(e,A){super(e,A,!1)}Gs(e,A,t){A.Qs(this.zs,Er(this.Ls)),e.be(this.zs,t,Er(this.Ls))}we(e,A,t){return{ot:e,ge:A.Vt[0],Me:A.Vt[1],xe:A.Vt[2],Se:A.Vt[3],nt:NaN,pe:NaN,de:NaN,fe:NaN,me:NaN}}Ys(){const e=this.Es.Us();this.zs=this.Es.In().ne().map((A=>this.se(A.ee,A,e)))}}class ff extends Ja{constructor(){super(...arguments),this.js=new df}se(e,A,t){return Object.assign(Object.assign({},this.we(e,A,t)),t.$s(e))}Js(){const e=this.Es.W();this.js.J({In:this.zs,le:this.Ns.St().le(),ve:e.openVisible,ue:e.thinBars,tt:this.Ls})}}class pf extends Va{constructor(){super(...arguments),this.Ts=new cs}bs(e,A){const t=this.G;return this.Ts.ws(e,{Ms:A.ke,xs:A.ye,Ss:A.Ce,ks:A.Te,ys:e.bitmapSize.height,vs:t.vs})}}class gf extends Ga{constructor(){super(...arguments),this.Pe=new cs}Vs(e,A){const t=this.G;return this.Pe.ws(e,{Ms:A.Re,xs:A.Re,Ss:A.De,ks:A.De,ys:e.bitmapSize.height,vs:t.vs})}}class mf extends Fi{constructor(e,A){super(e,A),this.js=new ss,this.Ve=new pf,this.Oe=new gf,this.js.Z([this.Ve,this.Oe])}se(e,A,t){return Object.assign(Object.assign({},this.ie(e,A)),t.$s(e))}Js(){const e=this.Es.Ct();if(e===null)return;const A=this.Es.W(),t=this.Es.Dt().Rt(A.baseValue.price,e.Vt),i=this.Ns.St().le();this.Ve.J({it:this.zs,et:A.lineWidth,Nt:A.lineStyle,fs:A.lineType,vs:t,ps:!1,tt:this.Ls,ds:i}),this.Oe.J({it:this.zs,et:A.lineWidth,Nt:A.lineStyle,fs:A.lineVisible?A.lineType:void 0,Ds:A.pointMarkersVisible?A.pointMarkersRadius||A.lineWidth/2+2:void 0,vs:t,tt:this.Ls,ds:i})}}class Bf extends At{constructor(){super(...arguments),this.zt=null,this.ae=0}J(e){this.zt=e}K(e){if(this.zt===null||this.zt.In.length===0||this.zt.tt===null)return;const{horizontalPixelRatio:A}=e;this.ae=(function(n,s){if(n>=2.5&&n<=4)return Math.floor(3*s);const o=1-.2*Math.atan(Math.max(4,n)-4)/(.5*Math.PI),a=Math.floor(n*o*s),l=Math.floor(n*s),c=Math.min(a,l);return Math.max(Math.floor(s),c)})(this.zt.le,A),this.ae>=2&&Math.floor(A)%2!=this.ae%2&&this.ae--;const t=this.zt.In;this.zt.Be&&this.Ae(e,t,this.zt.tt),this.zt._i&&this.Ie(e,t,this.zt.tt);const i=this.ze(A);(!this.zt._i||this.ae>2*i)&&this.Le(e,t,this.zt.tt)}Ae(e,A,t){if(this.zt===null)return;const{context:i,horizontalPixelRatio:n,verticalPixelRatio:s}=e;let o="",a=Math.min(Math.floor(n),Math.floor(this.zt.le*n));a=Math.max(Math.floor(n),Math.min(a,this.ae));const l=Math.floor(.5*a);let c=null;for(let d=t.from;d<t.to;d++){const p=A[d];p.Ee!==o&&(i.fillStyle=p.Ee,o=p.Ee);const y=Math.round(Math.min(p.pe,p.me)*s),w=Math.round(Math.max(p.pe,p.me)*s),C=Math.round(p.de*s),v=Math.round(p.fe*s);let S=Math.round(n*p.nt)-l;const F=S+a-1;c!==null&&(S=Math.max(c+1,S),S=Math.min(S,F));const k=F-S+1;i.fillRect(S,C,k,y-C),i.fillRect(S,w+1,k,v-w),c=F}}ze(e){let A=Math.floor(1*e);this.ae<=2*A&&(A=Math.floor(.5*(this.ae-1)));const t=Math.max(Math.floor(e),A);return this.ae<=2*t?Math.max(Math.floor(e),Math.floor(1*e)):t}Ie(e,A,t){if(this.zt===null)return;const{context:i,horizontalPixelRatio:n,verticalPixelRatio:s}=e;let o="";const a=this.ze(n);let l=null;for(let c=t.from;c<t.to;c++){const d=A[c];d.Ne!==o&&(i.fillStyle=d.Ne,o=d.Ne);let p=Math.round(d.nt*n)-Math.floor(.5*this.ae);const y=p+this.ae-1,w=Math.round(Math.min(d.pe,d.me)*s),C=Math.round(Math.max(d.pe,d.me)*s);if(l!==null&&(p=Math.max(l+1,p),p=Math.min(p,y)),this.zt.le*n>2*a)jd(i,p,w,y-p+1,C-w+1,a);else{const v=y-p+1;i.fillRect(p,w,v,C-w+1)}l=y}}Le(e,A,t){if(this.zt===null)return;const{context:i,horizontalPixelRatio:n,verticalPixelRatio:s}=e;let o="";const a=this.ze(n);for(let l=t.from;l<t.to;l++){const c=A[l];let d=Math.round(Math.min(c.pe,c.me)*s),p=Math.round(Math.max(c.pe,c.me)*s),y=Math.round(c.nt*n)-Math.floor(.5*this.ae),w=y+this.ae-1;if(c.ce!==o){const C=c.ce;i.fillStyle=C,o=C}this.zt._i&&(y+=a,d+=a,w-=a,p-=a),d>p||i.fillRect(y,d,w-y+1,p-d+1)}}}class wf extends Ja{constructor(){super(...arguments),this.js=new Bf}se(e,A,t){return Object.assign(Object.assign({},this.we(e,A,t)),t.$s(e))}Js(){const e=this.Es.W();this.js.J({In:this.zs,le:this.Ns.St().le(),Be:e.wickVisible,_i:e.borderVisible,tt:this.Ls})}}class Cf{constructor(e,A){this.Fe=e,this.Li=A}X(e,A,t){this.Fe.draw(e,this.Li,A,t)}}class us extends hs{constructor(e,A,t){super(e,A,!1),this.wn=t,this.js=new Cf(this.wn.renderer(),(i=>{const n=e.Ct();return n===null?null:e.Dt().Rt(i,n.Vt)}))}We(e){return this.wn.priceValueBuilder(e)}je(e){return this.wn.isWhitespace(e)}Ys(){const e=this.Es.Us();this.zs=this.Es.In().ne().map((A=>Object.assign(Object.assign({ot:A.ee,nt:NaN},e.$s(A.ee)),{He:A.$e})))}Gs(e,A){A.Qs(this.zs,Er(this.Ls))}Js(){this.wn.update({bars:this.zs.map(vf),barSpacing:this.Ns.St().le(),visibleRange:this.Ls},this.Es.W())}}function vf(r){return{x:r.nt,time:r.ot,originalData:r.He,barColor:r.ce}}class yf extends At{constructor(){super(...arguments),this.zt=null,this.Ue=[]}J(e){this.zt=e,this.Ue=[]}K({context:e,horizontalPixelRatio:A,verticalPixelRatio:t}){if(this.zt===null||this.zt.it.length===0||this.zt.tt===null)return;this.Ue.length||this.qe(A);const i=Math.max(1,Math.floor(t)),n=Math.round(this.zt.Ye*t)-Math.floor(i/2),s=n+i;for(let o=this.zt.tt.from;o<this.zt.tt.to;o++){const a=this.zt.it[o],l=this.Ue[o-this.zt.tt.from],c=Math.round(a.st*t);let d,p;e.fillStyle=a.ce,c<=n?(d=c,p=s):(d=n,p=c-Math.floor(i/2)+i),e.fillRect(l.Os,d,l.ui-l.Os+1,p-d)}}qe(e){if(this.zt===null||this.zt.it.length===0||this.zt.tt===null)return void(this.Ue=[]);const A=Math.ceil(this.zt.le*e)<=1?0:Math.max(1,Math.floor(e)),t=Math.round(this.zt.le*e)-A;this.Ue=new Array(this.zt.tt.to-this.zt.tt.from);for(let n=this.zt.tt.from;n<this.zt.tt.to;n++){const s=this.zt.it[n],o=Math.round(s.nt*e);let a,l;if(t%2){const c=(t-1)/2;a=o-c,l=o+c}else{const c=t/2;a=o-c,l=o+c-1}this.Ue[n-this.zt.tt.from]={Os:a,ui:l,Ze:o,Xe:s.nt*e,ot:s.ot}}for(let n=this.zt.tt.from+1;n<this.zt.tt.to;n++){const s=this.Ue[n-this.zt.tt.from],o=this.Ue[n-this.zt.tt.from-1];s.ot===o.ot+1&&s.Os-o.ui!==A+1&&(o.Ze>o.Xe?o.ui=s.Os-A-1:s.Os=o.ui+A+1)}let i=Math.ceil(this.zt.le*e);for(let n=this.zt.tt.from;n<this.zt.tt.to;n++){const s=this.Ue[n-this.zt.tt.from];s.ui<s.Os&&(s.ui=s.Os);const o=s.ui-s.Os+1;i=Math.min(o,i)}if(A>0&&i<4)for(let n=this.zt.tt.from;n<this.zt.tt.to;n++){const s=this.Ue[n-this.zt.tt.from];s.ui-s.Os+1>i&&(s.Ze>s.Xe?s.ui-=1:s.Os+=1)}}}class bf extends Fi{constructor(){super(...arguments),this.js=new yf}se(e,A,t){return Object.assign(Object.assign({},this.ie(e,A)),t.$s(e))}Js(){const e={it:this.zs,le:this.Ns.St().le(),tt:this.Ls,Ye:this.Es.Dt().Rt(this.Es.W().base,ue(this.Es.Ct()).Vt)};this.js.J(e)}}class Tf extends Fi{constructor(){super(...arguments),this.js=new Ra}se(e,A,t){return Object.assign(Object.assign({},this.ie(e,A)),t.$s(e))}Js(){const e=this.Es.W(),A={it:this.zs,Nt:e.lineStyle,fs:e.lineVisible?e.lineType:void 0,et:e.lineWidth,Ds:e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0,tt:this.Ls,ds:this.Ns.St().le()};this.js.J(A)}}const Qf=/[2-9]/g;class Hr{constructor(e=50){this.Ke=0,this.Ge=1,this.Je=1,this.Qe={},this.tr=new Map,this.ir=e}nr(){this.Ke=0,this.tr.clear(),this.Ge=1,this.Je=1,this.Qe={}}xi(e,A,t){return this.sr(e,A,t).width}Mi(e,A,t){const i=this.sr(e,A,t);return((i.actualBoundingBoxAscent||0)-(i.actualBoundingBoxDescent||0))/2}sr(e,A,t){const i=t||Qf,n=String(A).replace(i,"0");if(this.tr.has(n))return LA(this.tr.get(n)).er;if(this.Ke===this.ir){const o=this.Qe[this.Je];delete this.Qe[this.Je],this.tr.delete(o),this.Je++,this.Ke--}e.save(),e.textBaseline="middle";const s=e.measureText(n);return e.restore(),s.width===0&&A.length||(this.tr.set(n,{er:s,rr:this.Ge}),this.Qe[this.Ge]=n,this.Ke++,this.Ge++),s}}class xf{constructor(e){this.hr=null,this.k=null,this.lr="right",this.ar=e}_r(e,A,t){this.hr=e,this.k=A,this.lr=t}X(e){this.k!==null&&this.hr!==null&&this.hr.X(e,this.k,this.ar,this.lr)}}class Za{constructor(e,A,t){this.ur=e,this.ar=new Hr(50),this.cr=A,this.F=t,this.j=-1,this.Wt=new xf(this.ar)}gt(){const e=this.F.dr(this.cr);if(e===null)return null;const A=e.vr(this.cr)?e.pr():this.cr.Dt();if(A===null)return null;const t=e.mr(A);if(t==="overlay")return null;const i=this.F.br();return i.P!==this.j&&(this.j=i.P,this.ar.nr()),this.Wt._r(this.ur.Ii(),i,t),this.Wt}}class Ff extends At{constructor(){super(...arguments),this.zt=null}J(e){this.zt=e}wr(e,A){var t;if(!(!((t=this.zt)===null||t===void 0)&&t.yt))return null;const{st:i,et:n,gr:s}=this.zt;return A>=i-n-7&&A<=i+n+7?{Mr:this.zt,gr:s}:null}K({context:e,bitmapSize:A,horizontalPixelRatio:t,verticalPixelRatio:i}){if(this.zt===null||this.zt.yt===!1)return;const n=Math.round(this.zt.st*i);n<0||n>A.height||(e.lineCap="butt",e.strokeStyle=this.zt.V,e.lineWidth=Math.floor(this.zt.et*t),zt(e,this.zt.Nt),Fa(e,n,0,A.width))}}class ds{constructor(e){this.Sr={st:0,V:"rgba(0, 0, 0, 0)",et:1,Nt:0,yt:!1},this.kr=new Ff,this.ft=!0,this.Es=e,this.Ns=e.$t(),this.kr.J(this.Sr)}bt(){this.ft=!0}gt(){return this.Es.yt()?(this.ft&&(this.yr(),this.ft=!1),this.kr):null}}class Uf extends ds{constructor(e){super(e)}yr(){this.Sr.yt=!1;const e=this.Es.Dt(),A=e.Cr().Cr;if(A!==2&&A!==3)return;const t=this.Es.W();if(!t.baseLineVisible||!this.Es.yt())return;const i=this.Es.Ct();i!==null&&(this.Sr.yt=!0,this.Sr.st=e.Rt(i.Vt,i.Vt),this.Sr.V=t.baseLineColor,this.Sr.et=t.baseLineWidth,this.Sr.Nt=t.baseLineStyle)}}class Ef extends At{constructor(){super(...arguments),this.zt=null}J(e){this.zt=e}$e(){return this.zt}K({context:e,horizontalPixelRatio:A,verticalPixelRatio:t}){const i=this.zt;if(i===null)return;const n=Math.max(1,Math.floor(A)),s=n%2/2,o=Math.round(i.Xe.x*A)+s,a=i.Xe.y*t;e.fillStyle=i.Tr,e.beginPath();const l=Math.max(2,1.5*i.Pr)*A;e.arc(o,a,l,0,2*Math.PI,!1),e.fill(),e.fillStyle=i.Rr,e.beginPath(),e.arc(o,a,i.ht*A,0,2*Math.PI,!1),e.fill(),e.lineWidth=n,e.strokeStyle=i.Dr,e.beginPath(),e.arc(o,a,i.ht*A+n/2,0,2*Math.PI,!1),e.stroke()}}const Sf=[{Vr:0,Or:.25,Br:4,Ar:10,Ir:.25,zr:0,Lr:.4,Er:.8},{Vr:.25,Or:.525,Br:10,Ar:14,Ir:0,zr:0,Lr:.8,Er:0},{Vr:.525,Or:1,Br:14,Ar:14,Ir:0,zr:0,Lr:0,Er:0}];function qa(r,e,A,t){return(function(i,n){if(i==="transparent")return i;const s=xr(i),o=s[3];return`rgba(${s[0]}, ${s[1]}, ${s[2]}, ${n*o})`})(r,A+(t-A)*e)}function Ya(r,e){const A=r%2600/2600;let t;for(const a of Sf)if(A>=a.Vr&&A<=a.Or){t=a;break}Ft(t!==void 0,"Last price animation internal logic error");const i=(A-t.Vr)/(t.Or-t.Vr);return{Rr:qa(e,i,t.Ir,t.zr),Dr:qa(e,i,t.Lr,t.Er),ht:(n=i,s=t.Br,o=t.Ar,s+(o-s)*n)};var n,s,o}class Hf{constructor(e){this.Wt=new Ef,this.ft=!0,this.Nr=!0,this.Fr=performance.now(),this.Wr=this.Fr-1,this.jr=e}Hr(){this.Wr=this.Fr-1,this.bt()}$r(){if(this.bt(),this.jr.W().lastPriceAnimation===2){const e=performance.now(),A=this.Wr-e;if(A>0)return void(A<650&&(this.Wr+=2600));this.Fr=e,this.Wr=e+2600}}bt(){this.ft=!0}Ur(){this.Nr=!0}yt(){return this.jr.W().lastPriceAnimation!==0}qr(){switch(this.jr.W().lastPriceAnimation){case 0:return!1;case 1:return!0;case 2:return performance.now()<=this.Wr}}gt(){return this.ft?(this.Mt(),this.ft=!1,this.Nr=!1):this.Nr&&(this.Yr(),this.Nr=!1),this.Wt}Mt(){this.Wt.J(null);const e=this.jr.$t().St(),A=e.Xs(),t=this.jr.Ct();if(A===null||t===null)return;const i=this.jr.Zr(!0);if(i.Xr||!A.Kr(i.ee))return;const n={x:e.It(i.ee),y:this.jr.Dt().Rt(i._t,t.Vt)},s=i.V,o=this.jr.W().lineWidth,a=Ya(this.Gr(),s);this.Wt.J({Tr:s,Pr:o,Rr:a.Rr,Dr:a.Dr,ht:a.ht,Xe:n})}Yr(){const e=this.Wt.$e();if(e!==null){const A=Ya(this.Gr(),e.Tr);e.Rr=A.Rr,e.Dr=A.Dr,e.ht=A.ht}}Gr(){return this.qr()?performance.now()-this.Fr:2599}}function Lr(r,e){return za(Math.min(Math.max(r,12),30)*e)}function Mr(r,e){switch(r){case"arrowDown":case"arrowUp":return Lr(e,1);case"circle":return Lr(e,.8);case"square":return Lr(e,.7)}}function ja(r){return(function(e){const A=Math.ceil(e);return A%2!=0?A-1:A})(Lr(r,1))}function el(r){return Math.max(Lr(r,.1),3)}function Al(r,e,A){return e?r:A?Math.ceil(r/2):0}function tl(r,e,A,t,i){const n=Mr("square",A),s=(n-1)/2,o=r-s,a=e-s;return t>=o&&t<=o+n&&i>=a&&i<=a+n}function rl(r,e,A,t){const i=(Mr("arrowUp",t)-1)/2*A.Jr,n=(za(t/2)-1)/2*A.Jr;e.beginPath(),r?(e.moveTo(A.nt-i,A.st),e.lineTo(A.nt,A.st-i),e.lineTo(A.nt+i,A.st),e.lineTo(A.nt+n,A.st),e.lineTo(A.nt+n,A.st+i),e.lineTo(A.nt-n,A.st+i),e.lineTo(A.nt-n,A.st)):(e.moveTo(A.nt-i,A.st),e.lineTo(A.nt,A.st+i),e.lineTo(A.nt+i,A.st),e.lineTo(A.nt+n,A.st),e.lineTo(A.nt+n,A.st-i),e.lineTo(A.nt-n,A.st-i),e.lineTo(A.nt-n,A.st)),e.fill()}function Lf(r,e,A,t,i,n){return tl(e,A,t,i,n)}class Mf extends At{constructor(){super(...arguments),this.zt=null,this.ar=new Hr,this.j=-1,this.H="",this.Qr=""}J(e){this.zt=e}_r(e,A){this.j===e&&this.H===A||(this.j=e,this.H=A,this.Qr=ir(e,A),this.ar.nr())}wr(e,A){if(this.zt===null||this.zt.tt===null)return null;for(let t=this.zt.tt.from;t<this.zt.tt.to;t++){const i=this.zt.it[t];if(_f(i,e,A))return{Mr:i.th,gr:i.gr}}return null}K({context:e,horizontalPixelRatio:A,verticalPixelRatio:t},i,n){if(this.zt!==null&&this.zt.tt!==null){e.textBaseline="middle",e.font=this.Qr;for(let s=this.zt.tt.from;s<this.zt.tt.to;s++){const o=this.zt.it[s];o.Kt!==void 0&&(o.Kt.Hi=this.ar.xi(e,o.Kt.ih),o.Kt.At=this.j,o.Kt.nt=o.nt-o.Kt.Hi/2),If(o,e,A,t)}}}}function If(r,e,A,t){e.fillStyle=r.V,r.Kt!==void 0&&(function(i,n,s,o,a,l){i.save(),i.scale(a,l),i.fillText(n,s,o),i.restore()})(e,r.Kt.ih,r.Kt.nt,r.Kt.st,A,t),(function(i,n,s){if(i.Ks!==0){switch(i.nh){case"arrowDown":return void rl(!1,n,s,i.Ks);case"arrowUp":return void rl(!0,n,s,i.Ks);case"circle":return void(function(o,a,l){const c=(Mr("circle",l)-1)/2;o.beginPath(),o.arc(a.nt,a.st,c*a.Jr,0,2*Math.PI,!1),o.fill()})(n,s,i.Ks);case"square":return void(function(o,a,l){const c=Mr("square",l),d=(c-1)*a.Jr/2,p=a.nt-d,y=a.st-d;o.fillRect(p,y,c*a.Jr,c*a.Jr)})(n,s,i.Ks)}i.nh}})(r,e,(function(i,n,s){const o=Math.max(1,Math.floor(n))%2/2;return{nt:Math.round(i.nt*n)+o,st:i.st*s,Jr:n}})(r,A,t))}function _f(r,e,A){return!(r.Kt===void 0||!(function(t,i,n,s,o,a){const l=s/2;return o>=t&&o<=t+n&&a>=i-l&&a<=i+l})(r.Kt.nt,r.Kt.st,r.Kt.Hi,r.Kt.At,e,A))||(function(t,i,n){if(t.Ks===0)return!1;switch(t.nh){case"arrowDown":case"arrowUp":return Lf(0,t.nt,t.st,t.Ks,i,n);case"circle":return(function(s,o,a,l,c){const d=2+Mr("circle",a)/2,p=s-l,y=o-c;return Math.sqrt(p*p+y*y)<=d})(t.nt,t.st,t.Ks,i,n);case"square":return tl(t.nt,t.st,t.Ks,i,n)}})(r,e,A)}function Df(r,e,A,t,i,n,s,o,a){const l=ot(A)?A:A.Se,c=ot(A)?A:A.Me,d=ot(A)?A:A.xe,p=ot(e.size)?Math.max(e.size,0):1,y=ja(o.le())*p,w=y/2;switch(r.Ks=y,e.position){case"inBar":return r.st=s.Rt(l,a),void(r.Kt!==void 0&&(r.Kt.st=r.st+w+n+.6*i));case"aboveBar":return r.st=s.Rt(c,a)-w-t.sh,r.Kt!==void 0&&(r.Kt.st=r.st-w-.6*i,t.sh+=1.2*i),void(t.sh+=y+n);case"belowBar":return r.st=s.Rt(d,a)+w+t.eh,r.Kt!==void 0&&(r.Kt.st=r.st+w+n+.6*i,t.eh+=1.2*i),void(t.eh+=y+n)}e.position}class kf{constructor(e,A){this.ft=!0,this.rh=!0,this.hh=!0,this.ah=null,this.oh=null,this.Wt=new Mf,this.jr=e,this.$i=A,this.zt={it:[],tt:null}}bt(e){this.ft=!0,this.hh=!0,e==="data"&&(this.rh=!0,this.oh=null)}gt(e){if(!this.jr.yt())return null;this.ft&&this._h();const A=this.$i.W().layout;return this.Wt._r(A.fontSize,A.fontFamily),this.Wt.J(this.zt),this.Wt}uh(){if(this.hh){if(this.jr.dh().length>0){const e=this.$i.St().le(),A=el(e),t=1.5*ja(e)+2*A,i=this.fh();this.ah={above:Al(t,i.aboveBar,i.inBar),below:Al(t,i.belowBar,i.inBar)}}else this.ah=null;this.hh=!1}return this.ah}fh(){return this.oh===null&&(this.oh=this.jr.dh().reduce(((e,A)=>(e[A.position]||(e[A.position]=!0),e)),{inBar:!1,aboveBar:!1,belowBar:!1})),this.oh}_h(){const e=this.jr.Dt(),A=this.$i.St(),t=this.jr.dh();this.rh&&(this.zt.it=t.map((c=>({ot:c.time,nt:0,st:0,Ks:0,nh:c.shape,V:c.color,th:c.th,gr:c.id,Kt:void 0}))),this.rh=!1);const i=this.$i.W().layout;this.zt.tt=null;const n=A.Xs();if(n===null)return;const s=this.jr.Ct();if(s===null||this.zt.it.length===0)return;let o=NaN;const a=el(A.le()),l={sh:a,eh:a};this.zt.tt=Xa(this.zt.it,n,!0);for(let c=this.zt.tt.from;c<this.zt.tt.to;c++){const d=t[c];d.time!==o&&(l.sh=a,l.eh=a,o=d.time);const p=this.zt.it[c];p.nt=A.It(d.time),d.text!==void 0&&d.text.length>0&&(p.Kt={ih:d.text,nt:0,st:0,Hi:0,At:0});const y=this.jr.ph(d.time);y!==null&&Df(p,d,y,l,i.fontSize,a,e,A,s.Vt)}this.ft=!1}}class Of extends ds{constructor(e){super(e)}yr(){const e=this.Sr;e.yt=!1;const A=this.Es.W();if(!A.priceLineVisible||!this.Es.yt())return;const t=this.Es.Zr(A.priceLineSource===0);t.Xr||(e.yt=!0,e.st=t.ki,e.V=this.Es.mh(t.V),e.et=A.priceLineWidth,e.Nt=A.priceLineStyle)}}class Nf extends bi{constructor(e){super(),this.jt=e}zi(e,A,t){e.yt=!1,A.yt=!1;const i=this.jt;if(!i.yt())return;const n=i.W(),s=n.lastValueVisible,o=i.bh()!=="",a=n.seriesLastValueMode===0,l=i.Zr(!1);if(l.Xr)return;s&&(e.Kt=this.wh(l,s,a),e.yt=e.Kt.length!==0),(o||a)&&(A.Kt=this.gh(l,s,o,a),A.yt=A.Kt.length>0);const c=i.mh(l.V),d=Ci(c);t.t=d.t,t.ki=l.ki,A.Ot=i.$t().Bt(l.ki/i.Dt().At()),e.Ot=c,e.V=d.i,A.V=d.i}gh(e,A,t,i){let n="";const s=this.jt.bh();return t&&s.length!==0&&(n+=`${s} `),A&&i&&(n+=this.jt.Dt().Mh()?e.xh:e.Sh),n.trim()}wh(e,A,t){return A?t?this.jt.Dt().Mh()?e.Sh:e.xh:e.Kt:""}}function il(r,e,A,t){const i=Number.isFinite(e),n=Number.isFinite(A);return i&&n?r(e,A):i||n?i?e:A:t}class DA{constructor(e,A){this.kh=e,this.yh=A}Ch(e){return e!==null&&this.kh===e.kh&&this.yh===e.yh}Th(){return new DA(this.kh,this.yh)}Ph(){return this.kh}Rh(){return this.yh}Dh(){return this.yh-this.kh}Ni(){return this.yh===this.kh||Number.isNaN(this.yh)||Number.isNaN(this.kh)}ts(e){return e===null?this:new DA(il(Math.min,this.Ph(),e.Ph(),-1/0),il(Math.max,this.Rh(),e.Rh(),1/0))}Vh(e){if(!ot(e)||this.yh-this.kh===0)return;const A=.5*(this.yh+this.kh);let t=this.yh-A,i=this.kh-A;t*=e,i*=e,this.yh=A+t,this.kh=A+i}Oh(e){ot(e)&&(this.yh+=e,this.kh+=e)}Bh(){return{minValue:this.kh,maxValue:this.yh}}static Ah(e){return e===null?null:new DA(e.minValue,e.maxValue)}}class Ui{constructor(e,A){this.Ih=e,this.zh=A||null}Lh(){return this.Ih}Eh(){return this.zh}Bh(){return this.Ih===null?null:{priceRange:this.Ih.Bh(),margins:this.zh||void 0}}static Ah(e){return e===null?null:new Ui(DA.Ah(e.priceRange),e.margins)}}class Kf extends ds{constructor(e,A){super(e),this.Nh=A}yr(){const e=this.Sr;e.yt=!1;const A=this.Nh.W();if(!this.Es.yt()||!A.lineVisible)return;const t=this.Nh.Fh();t!==null&&(e.yt=!0,e.st=t,e.V=A.color,e.et=A.lineWidth,e.Nt=A.lineStyle,e.gr=this.Nh.W().id)}}class Pf extends bi{constructor(e,A){super(),this.jr=e,this.Nh=A}zi(e,A,t){e.yt=!1,A.yt=!1;const i=this.Nh.W(),n=i.axisLabelVisible,s=i.title!=="",o=this.jr;if(!n||!o.yt())return;const a=this.Nh.Fh();if(a===null)return;s&&(A.Kt=i.title,A.yt=!0),A.Ot=o.$t().Bt(a/o.Dt().At()),e.Kt=this.Wh(i.price),e.yt=!0;const l=Ci(i.axisLabelColor||i.color);t.t=l.t;const c=i.axisLabelTextColor||l.i;e.V=c,A.V=c,t.ki=a}Wh(e){const A=this.jr.Ct();return A===null?"":this.jr.Dt().Fi(e,A.Vt)}}class Vf{constructor(e,A){this.jr=e,this.cn=A,this.jh=new Kf(e,this),this.ur=new Pf(e,this),this.Hh=new Za(this.ur,e,e.$t())}$h(e){et(this.cn,e),this.bt(),this.jr.$t().Uh()}W(){return this.cn}qh(){return this.jh}Yh(){return this.Hh}Zh(){return this.ur}bt(){this.jh.bt(),this.ur.bt()}Fh(){const e=this.jr,A=e.Dt();if(e.$t().St().Ni()||A.Ni())return null;const t=e.Ct();return t===null?null:A.Rt(this.cn.price,t.Vt)}}class zf extends os{constructor(e){super(),this.$i=e}$t(){return this.$i}}const Gf={Bar:(r,e,A,t)=>{var i;const n=e.upColor,s=e.downColor,o=ue(r(A,t)),a=rr(o.Vt[0])<=rr(o.Vt[3]);return{ce:(i=o.V)!==null&&i!==void 0?i:a?n:s}},Candlestick:(r,e,A,t)=>{var i,n,s;const o=e.upColor,a=e.downColor,l=e.borderUpColor,c=e.borderDownColor,d=e.wickUpColor,p=e.wickDownColor,y=ue(r(A,t)),w=rr(y.Vt[0])<=rr(y.Vt[3]);return{ce:(i=y.V)!==null&&i!==void 0?i:w?o:a,Ne:(n=y.Ot)!==null&&n!==void 0?n:w?l:c,Ee:(s=y.Xh)!==null&&s!==void 0?s:w?d:p}},Custom:(r,e,A,t)=>{var i;return{ce:(i=ue(r(A,t)).V)!==null&&i!==void 0?i:e.color}},Area:(r,e,A,t)=>{var i,n,s,o;const a=ue(r(A,t));return{ce:(i=a.lt)!==null&&i!==void 0?i:e.lineColor,lt:(n=a.lt)!==null&&n!==void 0?n:e.lineColor,Ps:(s=a.Ps)!==null&&s!==void 0?s:e.topColor,Rs:(o=a.Rs)!==null&&o!==void 0?o:e.bottomColor}},Baseline:(r,e,A,t)=>{var i,n,s,o,a,l;const c=ue(r(A,t));return{ce:c.Vt[3]>=e.baseValue.price?e.topLineColor:e.bottomLineColor,Re:(i=c.Re)!==null&&i!==void 0?i:e.topLineColor,De:(n=c.De)!==null&&n!==void 0?n:e.bottomLineColor,ke:(s=c.ke)!==null&&s!==void 0?s:e.topFillColor1,ye:(o=c.ye)!==null&&o!==void 0?o:e.topFillColor2,Ce:(a=c.Ce)!==null&&a!==void 0?a:e.bottomFillColor1,Te:(l=c.Te)!==null&&l!==void 0?l:e.bottomFillColor2}},Line:(r,e,A,t)=>{var i,n;const s=ue(r(A,t));return{ce:(i=s.V)!==null&&i!==void 0?i:e.color,lt:(n=s.V)!==null&&n!==void 0?n:e.color}},Histogram:(r,e,A,t)=>{var i;return{ce:(i=ue(r(A,t)).V)!==null&&i!==void 0?i:e.color}}};class Rf{constructor(e){this.Kh=(A,t)=>t!==void 0?t.Vt:this.jr.In().Gh(A),this.jr=e,this.Jh=Gf[e.Qh()]}$s(e,A){return this.Jh(this.Kh,this.jr.W(),e,A)}}var nl;(function(r){r[r.NearestLeft=-1]="NearestLeft",r[r.None=0]="None",r[r.NearestRight=1]="NearestRight"})(nl||(nl={}));const Ut=30;class Wf{constructor(){this.tl=[],this.il=new Map,this.nl=new Map}sl(){return this.Ks()>0?this.tl[this.tl.length-1]:null}el(){return this.Ks()>0?this.rl(0):null}An(){return this.Ks()>0?this.rl(this.tl.length-1):null}Ks(){return this.tl.length}Ni(){return this.Ks()===0}Kr(e){return this.hl(e,0)!==null}Gh(e){return this.ll(e)}ll(e,A=0){const t=this.hl(e,A);return t===null?null:Object.assign(Object.assign({},this.al(t)),{ee:this.rl(t)})}ne(){return this.tl}ol(e,A,t){if(this.Ni())return null;let i=null;for(const n of t)i=Ei(i,this._l(e,A,n));return i}J(e){this.nl.clear(),this.il.clear(),this.tl=e}rl(e){return this.tl[e].ee}al(e){return this.tl[e]}hl(e,A){const t=this.ul(e);if(t===null&&A!==0)switch(A){case-1:return this.cl(e);case 1:return this.dl(e);default:throw new TypeError("Unknown search mode")}return t}cl(e){let A=this.fl(e);return A>0&&(A-=1),A!==this.tl.length&&this.rl(A)<e?A:null}dl(e){const A=this.vl(e);return A!==this.tl.length&&e<this.rl(A)?A:null}ul(e){const A=this.fl(e);return A===this.tl.length||e<this.tl[A].ee?null:A}fl(e){return Sr(this.tl,e,((A,t)=>A.ee<t))}vl(e){return $a(this.tl,e,((A,t)=>A.ee>t))}pl(e,A,t){let i=null;for(let n=e;n<A;n++){const s=this.tl[n].Vt[t];Number.isNaN(s)||(i===null?i={ml:s,bl:s}:(s<i.ml&&(i.ml=s),s>i.bl&&(i.bl=s)))}return i}_l(e,A,t){if(this.Ni())return null;let i=null;const n=ue(this.el()),s=ue(this.An()),o=Math.max(e,n),a=Math.min(A,s),l=Math.ceil(o/Ut)*Ut,c=Math.max(l,Math.floor(a/Ut)*Ut);{const p=this.fl(o),y=this.vl(Math.min(a,l,A));i=Ei(i,this.pl(p,y,t))}let d=this.il.get(t);d===void 0&&(d=new Map,this.il.set(t,d));for(let p=Math.max(l+1,o);p<c;p+=Ut){const y=Math.floor(p/Ut);let w=d.get(y);if(w===void 0){const C=this.fl(y*Ut),v=this.vl((y+1)*Ut-1);w=this.pl(C,v,t),d.set(y,w)}i=Ei(i,w)}{const p=this.fl(c),y=this.vl(a);i=Ei(i,this.pl(p,y,t))}return i}}function Ei(r,e){return r===null?e:e===null?r:{ml:Math.min(r.ml,e.ml),bl:Math.max(r.bl,e.bl)}}class $f{constructor(e){this.wl=e}X(e,A,t){this.wl.draw(e)}gl(e,A,t){var i,n;(n=(i=this.wl).drawBackground)===null||n===void 0||n.call(i,e)}}class fs{constructor(e){this.tr=null,this.wn=e}gt(){var e;const A=this.wn.renderer();if(A===null)return null;if(((e=this.tr)===null||e===void 0?void 0:e.Ml)===A)return this.tr.xl;const t=new $f(A);return this.tr={Ml:A,xl:t},t}Sl(){var e,A,t;return(t=(A=(e=this.wn).zOrder)===null||A===void 0?void 0:A.call(e))!==null&&t!==void 0?t:"normal"}}function sl(r){var e,A,t,i,n;return{Kt:r.text(),ki:r.coordinate(),Si:(e=r.fixedCoordinate)===null||e===void 0?void 0:e.call(r),V:r.textColor(),t:r.backColor(),yt:(t=(A=r.visible)===null||A===void 0?void 0:A.call(r))===null||t===void 0||t,hi:(n=(i=r.tickVisible)===null||i===void 0?void 0:i.call(r))===null||n===void 0||n}}class Xf{constructor(e,A){this.Wt=new _a,this.kl=e,this.yl=A}gt(){return this.Wt.J(Object.assign({Hi:this.yl.Hi()},sl(this.kl))),this.Wt}}class Jf extends bi{constructor(e,A){super(),this.kl=e,this.Li=A}zi(e,A,t){const i=sl(this.kl);t.t=i.t,e.V=i.V;const n=2/12*this.Li.P();t.wi=n,t.gi=n,t.ki=i.ki,t.Si=i.Si,e.Kt=i.Kt,e.yt=i.yt,e.hi=i.hi}}class Zf{constructor(e,A){this.Cl=null,this.Tl=null,this.Pl=null,this.Rl=null,this.Dl=null,this.Vl=e,this.jr=A}Ol(){return this.Vl}Vn(){var e,A;(A=(e=this.Vl).updateAllViews)===null||A===void 0||A.call(e)}Pn(){var e,A,t,i;const n=(t=(A=(e=this.Vl).paneViews)===null||A===void 0?void 0:A.call(e))!==null&&t!==void 0?t:[];if(((i=this.Cl)===null||i===void 0?void 0:i.Ml)===n)return this.Cl.xl;const s=n.map((o=>new fs(o)));return this.Cl={Ml:n,xl:s},s}Qi(){var e,A,t,i;const n=(t=(A=(e=this.Vl).timeAxisViews)===null||A===void 0?void 0:A.call(e))!==null&&t!==void 0?t:[];if(((i=this.Tl)===null||i===void 0?void 0:i.Ml)===n)return this.Tl.xl;const s=this.jr.$t().St(),o=n.map((a=>new Xf(a,s)));return this.Tl={Ml:n,xl:o},o}Rn(){var e,A,t,i;const n=(t=(A=(e=this.Vl).priceAxisViews)===null||A===void 0?void 0:A.call(e))!==null&&t!==void 0?t:[];if(((i=this.Pl)===null||i===void 0?void 0:i.Ml)===n)return this.Pl.xl;const s=this.jr.Dt(),o=n.map((a=>new Jf(a,s)));return this.Pl={Ml:n,xl:o},o}Bl(){var e,A,t,i;const n=(t=(A=(e=this.Vl).priceAxisPaneViews)===null||A===void 0?void 0:A.call(e))!==null&&t!==void 0?t:[];if(((i=this.Rl)===null||i===void 0?void 0:i.Ml)===n)return this.Rl.xl;const s=n.map((o=>new fs(o)));return this.Rl={Ml:n,xl:s},s}Al(){var e,A,t,i;const n=(t=(A=(e=this.Vl).timeAxisPaneViews)===null||A===void 0?void 0:A.call(e))!==null&&t!==void 0?t:[];if(((i=this.Dl)===null||i===void 0?void 0:i.Ml)===n)return this.Dl.xl;const s=n.map((o=>new fs(o)));return this.Dl={Ml:n,xl:s},s}Il(e,A){var t,i,n;return(n=(i=(t=this.Vl).autoscaleInfo)===null||i===void 0?void 0:i.call(t,e,A))!==null&&n!==void 0?n:null}wr(e,A){var t,i,n;return(n=(i=(t=this.Vl).hitTest)===null||i===void 0?void 0:i.call(t,e,A))!==null&&n!==void 0?n:null}}function ps(r,e,A,t){r.forEach((i=>{e(i).forEach((n=>{n.Sl()===A&&t.push(n)}))}))}function gs(r){return r.Pn()}function qf(r){return r.Bl()}function Yf(r){return r.Al()}class ms extends zf{constructor(e,A,t,i,n){super(e),this.zt=new Wf,this.jh=new Of(this),this.zl=[],this.Ll=new Uf(this),this.El=null,this.Nl=null,this.Fl=[],this.Wl=[],this.jl=null,this.Hl=[],this.cn=A,this.$l=t;const s=new Nf(this);this.rn=[s],this.Hh=new Za(s,this,e),t!=="Area"&&t!=="Line"&&t!=="Baseline"||(this.El=new Hf(this)),this.Ul(),this.ql(n)}S(){this.jl!==null&&clearTimeout(this.jl)}mh(e){return this.cn.priceLineColor||e}Zr(e){const A={Xr:!0},t=this.Dt();if(this.$t().St().Ni()||t.Ni()||this.zt.Ni())return A;const i=this.$t().St().Xs(),n=this.Ct();if(i===null||n===null)return A;let s,o;if(e){const d=this.zt.sl();if(d===null)return A;s=d,o=d.ee}else{const d=this.zt.ll(i.ui(),-1);if(d===null||(s=this.zt.Gh(d.ee),s===null))return A;o=d.ee}const a=s.Vt[3],l=this.Us().$s(o,{Vt:s}),c=t.Rt(a,n.Vt);return{Xr:!1,_t:a,Kt:t.Fi(a,n.Vt),xh:t.Yl(a),Sh:t.Zl(a,n.Vt),V:l.ce,ki:c,ee:o}}Us(){return this.Nl!==null||(this.Nl=new Rf(this)),this.Nl}W(){return this.cn}$h(e){const A=e.priceScaleId;A!==void 0&&A!==this.cn.priceScaleId&&this.$t().Xl(this,A),et(this.cn,e),e.priceFormat!==void 0&&(this.Ul(),this.$t().Kl()),this.$t().Gl(this),this.$t().Jl(),this.wn.bt("options")}J(e,A){this.zt.J(e),this.Ql(),this.wn.bt("data"),this.dn.bt("data"),this.El!==null&&(A&&A.ta?this.El.$r():e.length===0&&this.El.Hr());const t=this.$t().dr(this);this.$t().ia(t),this.$t().Gl(this),this.$t().Jl(),this.$t().Uh()}na(e){this.Fl=e,this.Ql();const A=this.$t().dr(this);this.dn.bt("data"),this.$t().ia(A),this.$t().Gl(this),this.$t().Jl(),this.$t().Uh()}sa(){return this.Fl}dh(){return this.Wl}ea(e){const A=new Vf(this,e);return this.zl.push(A),this.$t().Gl(this),A}ra(e){const A=this.zl.indexOf(e);A!==-1&&this.zl.splice(A,1),this.$t().Gl(this)}Qh(){return this.$l}Ct(){const e=this.ha();return e===null?null:{Vt:e.Vt[3],la:e.ot}}ha(){const e=this.$t().St().Xs();if(e===null)return null;const A=e.Os();return this.zt.ll(A,1)}In(){return this.zt}ph(e){const A=this.zt.Gh(e);return A===null?null:this.$l==="Bar"||this.$l==="Candlestick"||this.$l==="Custom"?{ge:A.Vt[0],Me:A.Vt[1],xe:A.Vt[2],Se:A.Vt[3]}:A.Vt[3]}aa(e){const A=[];ps(this.Hl,gs,"top",A);const t=this.El;return t!==null&&t.yt()&&(this.jl===null&&t.qr()&&(this.jl=setTimeout((()=>{this.jl=null,this.$t().oa()}),0)),t.Ur(),A.unshift(t)),A}Pn(){const e=[];this._a()||e.push(this.Ll),e.push(this.wn,this.jh,this.dn);const A=this.zl.map((t=>t.qh()));return e.push(...A),ps(this.Hl,gs,"normal",e),e}ua(){return this.ca(gs,"bottom")}da(e){return this.ca(qf,e)}fa(e){return this.ca(Yf,e)}va(e,A){return this.Hl.map((t=>t.wr(e,A))).filter((t=>t!==null))}Ji(e){return[this.Hh,...this.zl.map((A=>A.Yh()))]}Rn(e,A){if(A!==this.Yi&&!this._a())return[];const t=[...this.rn];for(const i of this.zl)t.push(i.Zh());return this.Hl.forEach((i=>{t.push(...i.Rn())})),t}Qi(){const e=[];return this.Hl.forEach((A=>{e.push(...A.Qi())})),e}Il(e,A){if(this.cn.autoscaleInfoProvider!==void 0){const t=this.cn.autoscaleInfoProvider((()=>{const i=this.pa(e,A);return i===null?null:i.Bh()}));return Ui.Ah(t)}return this.pa(e,A)}ma(){return this.cn.priceFormat.minMove}ba(){return this.wa}Vn(){var e;this.wn.bt(),this.dn.bt();for(const A of this.rn)A.bt();for(const A of this.zl)A.bt();this.jh.bt(),this.Ll.bt(),(e=this.El)===null||e===void 0||e.bt(),this.Hl.forEach((A=>A.Vn()))}Dt(){return ue(super.Dt())}kt(e){if(!((this.$l==="Line"||this.$l==="Area"||this.$l==="Baseline")&&this.cn.crosshairMarkerVisible))return null;const A=this.zt.Gh(e);return A===null?null:{_t:A.Vt[3],ht:this.ga(),Ot:this.Ma(),Pt:this.xa(),Tt:this.Sa(e)}}bh(){return this.cn.title}yt(){return this.cn.visible}ka(e){this.Hl.push(new Zf(e,this))}ya(e){this.Hl=this.Hl.filter((A=>A.Ol()!==e))}Ca(){if(this.wn instanceof us)return e=>this.wn.We(e)}Ta(){if(this.wn instanceof us)return e=>this.wn.je(e)}_a(){return!Ti(this.Dt().Pa())}pa(e,A){if(!Fr(e)||!Fr(A)||this.zt.Ni())return null;const t=this.$l==="Line"||this.$l==="Area"||this.$l==="Baseline"||this.$l==="Histogram"?[3]:[2,1],i=this.zt.ol(e,A,t);let n=i!==null?new DA(i.ml,i.bl):null;if(this.Qh()==="Histogram"){const o=this.cn.base,a=new DA(o,o);n=n!==null?n.ts(a):a}let s=this.dn.uh();return this.Hl.forEach((o=>{const a=o.Il(e,A);if(a?.priceRange){const y=new DA(a.priceRange.minValue,a.priceRange.maxValue);n=n!==null?n.ts(y):y}var l,c,d,p;a?.margins&&(l=s,c=a.margins,s={above:Math.max((d=l?.above)!==null&&d!==void 0?d:0,c.above),below:Math.max((p=l?.below)!==null&&p!==void 0?p:0,c.below)})})),new Ui(n,s)}ga(){switch(this.$l){case"Line":case"Area":case"Baseline":return this.cn.crosshairMarkerRadius}return 0}Ma(){switch(this.$l){case"Line":case"Area":case"Baseline":{const e=this.cn.crosshairMarkerBorderColor;if(e.length!==0)return e}}return null}xa(){switch(this.$l){case"Line":case"Area":case"Baseline":return this.cn.crosshairMarkerBorderWidth}return 0}Sa(e){switch(this.$l){case"Line":case"Area":case"Baseline":{const A=this.cn.crosshairMarkerBackgroundColor;if(A.length!==0)return A}}return this.Us().$s(e).ce}Ul(){switch(this.cn.priceFormat.type){case"custom":this.wa={format:this.cn.priceFormat.formatter};break;case"volume":this.wa=new nf(this.cn.priceFormat.precision);break;case"percent":this.wa=new Oa(this.cn.priceFormat.precision);break;default:{const e=Math.pow(10,this.cn.priceFormat.precision);this.wa=new Qi(e,this.cn.priceFormat.minMove*e)}}this.Yi!==null&&this.Yi.Ra()}Ql(){const e=this.$t().St();if(!e.Da()||this.zt.Ni())return void(this.Wl=[]);const A=ue(this.zt.el());this.Wl=this.Fl.map(((t,i)=>{const n=ue(e.Va(t.time,!0)),s=n<A?1:-1;return{time:ue(this.zt.ll(n,s)).ee,position:t.position,shape:t.shape,color:t.color,id:t.id,th:i,text:t.text,size:t.size,originalTime:t.originalTime}}))}ql(e){switch(this.dn=new kf(this,this.$t()),this.$l){case"Bar":this.wn=new ff(this,this.$t());break;case"Candlestick":this.wn=new wf(this,this.$t());break;case"Line":this.wn=new Tf(this,this.$t());break;case"Custom":this.wn=new us(this,this.$t(),LA(e));break;case"Area":this.wn=new uf(this,this.$t());break;case"Baseline":this.wn=new mf(this,this.$t());break;case"Histogram":this.wn=new bf(this,this.$t());break;default:throw Error("Unknown chart style assigned: "+this.$l)}}ca(e,A){const t=[];return ps(this.Hl,e,A,t),t}}class jf{constructor(e){this.cn=e}Oa(e,A,t){let i=e;if(this.cn.mode===0)return i;const n=t.vn(),s=n.Ct();if(s===null)return i;const o=n.Rt(e,s),a=t.Ba().filter((c=>c instanceof ms)).reduce(((c,d)=>{if(t.vr(d)||!d.yt())return c;const p=d.Dt(),y=d.In();if(p.Ni()||!y.Kr(A))return c;const w=y.Gh(A);if(w===null)return c;const C=rr(d.Ct());return c.concat([p.Rt(w.Vt[3],C.Vt)])}),[]);if(a.length===0)return i;a.sort(((c,d)=>Math.abs(c-o)-Math.abs(d-o)));const l=a[0];return i=n.pn(l,s),i}}class ep extends At{constructor(){super(...arguments),this.zt=null}J(e){this.zt=e}K({context:e,bitmapSize:A,horizontalPixelRatio:t,verticalPixelRatio:i}){if(this.zt===null)return;const n=Math.max(1,Math.floor(t));e.lineWidth=n,(function(s,o){s.save(),s.lineWidth%2&&s.translate(.5,.5),o(),s.restore()})(e,(()=>{const s=ue(this.zt);if(s.Aa){e.strokeStyle=s.Ia,zt(e,s.za),e.beginPath();for(const o of s.La){const a=Math.round(o.Ea*t);e.moveTo(a,-n),e.lineTo(a,A.height+n)}e.stroke()}if(s.Na){e.strokeStyle=s.Fa,zt(e,s.Wa),e.beginPath();for(const o of s.ja){const a=Math.round(o.Ea*i);e.moveTo(-n,a),e.lineTo(A.width+n,a)}e.stroke()}}))}}class Ap{constructor(e){this.Wt=new ep,this.ft=!0,this.tn=e}bt(){this.ft=!0}gt(){if(this.ft){const e=this.tn.$t().W().grid,A={Na:e.horzLines.visible,Aa:e.vertLines.visible,Fa:e.horzLines.color,Ia:e.vertLines.color,Wa:e.horzLines.style,za:e.vertLines.style,ja:this.tn.vn().Ha(),La:(this.tn.$t().St().Ha()||[]).map((t=>({Ea:t.coord})))};this.Wt.J(A),this.ft=!1}return this.Wt}}class tp{constructor(e){this.wn=new Ap(e)}qh(){return this.wn}}const Bs={$a:4,Ua:1e-4};function nr(r,e){const A=100*(r-e)/e;return e<0?-A:A}function rp(r,e){const A=nr(r.Ph(),e),t=nr(r.Rh(),e);return new DA(A,t)}function Ir(r,e){const A=100*(r-e)/e+100;return e<0?-A:A}function ip(r,e){const A=Ir(r.Ph(),e),t=Ir(r.Rh(),e);return new DA(A,t)}function Si(r,e){const A=Math.abs(r);if(A<1e-15)return 0;const t=Math.log10(A+e.Ua)+e.$a;return r<0?-t:t}function _r(r,e){const A=Math.abs(r);if(A<1e-15)return 0;const t=Math.pow(10,A-e.$a)-e.Ua;return r<0?-t:t}function Dr(r,e){if(r===null)return null;const A=Si(r.Ph(),e),t=Si(r.Rh(),e);return new DA(A,t)}function Hi(r,e){if(r===null)return null;const A=_r(r.Ph(),e),t=_r(r.Rh(),e);return new DA(A,t)}function ws(r){if(r===null)return Bs;const e=Math.abs(r.Rh()-r.Ph());if(e>=1||e<1e-15)return Bs;const A=Math.ceil(Math.abs(Math.log10(e))),t=Bs.$a+A;return{$a:t,Ua:1/Math.pow(10,t)}}class Cs{constructor(e,A){if(this.qa=e,this.Ya=A,(function(t){if(t<0)return!1;for(let i=t;i>1;i/=10)if(i%10!=0)return!1;return!0})(this.qa))this.Za=[2,2.5,2];else{this.Za=[];for(let t=this.qa;t!==1;){if(t%2==0)this.Za.push(2),t/=2;else{if(t%5!=0)throw new Error("unexpected base");this.Za.push(2,2.5),t/=5}if(this.Za.length>100)throw new Error("something wrong with base")}}}Xa(e,A,t){const i=this.qa===0?0:1/this.qa;let n=Math.pow(10,Math.max(0,Math.ceil(Math.log10(e-A)))),s=0,o=this.Ya[0];for(;;){const d=xi(n,i,1e-14)&&n>i+1e-14,p=xi(n,t*o,1e-14),y=xi(n,1,1e-14);if(!(d&&p&&y))break;n/=o,o=this.Ya[++s%this.Ya.length]}if(n<=i+1e-14&&(n=i),n=Math.max(1,n),this.Za.length>0&&(a=n,l=1,c=1e-14,Math.abs(a-l)<c))for(s=0,o=this.Za[0];xi(n,t*o,1e-14)&&n>i+1e-14;)n/=o,o=this.Za[++s%this.Za.length];var a,l,c;return n}}class ol{constructor(e,A,t,i){this.Ka=[],this.Li=e,this.qa=A,this.Ga=t,this.Ja=i}Xa(e,A){if(e<A)throw new Error("high < low");const t=this.Li.At(),i=(e-A)*this.Qa()/t,n=new Cs(this.qa,[2,2.5,2]),s=new Cs(this.qa,[2,2,2.5]),o=new Cs(this.qa,[2.5,2,2]),a=[];return a.push(n.Xa(e,A,i),s.Xa(e,A,i),o.Xa(e,A,i)),(function(l){if(l.length<1)throw Error("array is empty");let c=l[0];for(let d=1;d<l.length;++d)l[d]<c&&(c=l[d]);return c})(a)}io(){const e=this.Li,A=e.Ct();if(A===null)return void(this.Ka=[]);const t=e.At(),i=this.Ga(t-1,A),n=this.Ga(0,A),s=this.Li.W().entireTextOnly?this.no()/2:0,o=s,a=t-1-s,l=Math.max(i,n),c=Math.min(i,n);if(l===c)return void(this.Ka=[]);let d=this.Xa(l,c),p=l%d;p+=p<0?d:0;const y=l>=c?1:-1;let w=null,C=0;for(let v=l-p;v>c;v-=d){const S=this.Ja(v,A,!0);w!==null&&Math.abs(S-w)<this.Qa()||S<o||S>a||(C<this.Ka.length?(this.Ka[C].Ea=S,this.Ka[C].so=e.eo(v)):this.Ka.push({Ea:S,so:e.eo(v)}),C++,w=S,e.ro()&&(d=this.Xa(v*y,c)))}this.Ka.length=C}Ha(){return this.Ka}no(){return this.Li.P()}Qa(){return Math.ceil(2.5*this.no())}}function al(r){return r.slice().sort(((e,A)=>ue(e.Xi())-ue(A.Xi())))}var ll;(function(r){r[r.Normal=0]="Normal",r[r.Logarithmic=1]="Logarithmic",r[r.Percentage=2]="Percentage",r[r.IndexedTo100=3]="IndexedTo100"})(ll||(ll={}));const cl=new Oa,hl=new Qi(100,1);class np{constructor(e,A,t,i){this.ho=0,this.lo=null,this.Ih=null,this.ao=null,this.oo={_o:!1,uo:null},this.co=0,this.do=0,this.fo=new uA,this.vo=new uA,this.po=[],this.mo=null,this.bo=null,this.wo=null,this.Mo=null,this.wa=hl,this.xo=ws(null),this.So=e,this.cn=A,this.ko=t,this.yo=i,this.Co=new ol(this,100,this.To.bind(this),this.Po.bind(this))}Pa(){return this.So}W(){return this.cn}$h(e){if(et(this.cn,e),this.Ra(),e.mode!==void 0&&this.Ro({Cr:e.mode}),e.scaleMargins!==void 0){const A=LA(e.scaleMargins.top),t=LA(e.scaleMargins.bottom);if(A<0||A>1)throw new Error(`Invalid top margin - expect value between 0 and 1, given=${A}`);if(t<0||t>1)throw new Error(`Invalid bottom margin - expect value between 0 and 1, given=${t}`);if(A+t>1)throw new Error(`Invalid margins - sum of margins must be less than 1, given=${A+t}`);this.Do(),this.bo=null}}Vo(){return this.cn.autoScale}ro(){return this.cn.mode===1}Mh(){return this.cn.mode===2}Oo(){return this.cn.mode===3}Cr(){return{Wn:this.cn.autoScale,Bo:this.cn.invertScale,Cr:this.cn.mode}}Ro(e){const A=this.Cr();let t=null;e.Wn!==void 0&&(this.cn.autoScale=e.Wn),e.Cr!==void 0&&(this.cn.mode=e.Cr,e.Cr!==2&&e.Cr!==3||(this.cn.autoScale=!0),this.oo._o=!1),A.Cr===1&&e.Cr!==A.Cr&&((function(n,s){if(n===null)return!1;const o=_r(n.Ph(),s),a=_r(n.Rh(),s);return isFinite(o)&&isFinite(a)})(this.Ih,this.xo)?(t=Hi(this.Ih,this.xo),t!==null&&this.Ao(t)):this.cn.autoScale=!0),e.Cr===1&&e.Cr!==A.Cr&&(t=Dr(this.Ih,this.xo),t!==null&&this.Ao(t));const i=A.Cr!==this.cn.mode;i&&(A.Cr===2||this.Mh())&&this.Ra(),i&&(A.Cr===3||this.Oo())&&this.Ra(),e.Bo!==void 0&&A.Bo!==e.Bo&&(this.cn.invertScale=e.Bo,this.Io()),this.vo.m(A,this.Cr())}zo(){return this.vo}P(){return this.ko.fontSize}At(){return this.ho}Lo(e){this.ho!==e&&(this.ho=e,this.Do(),this.bo=null)}Eo(){if(this.lo)return this.lo;const e=this.At()-this.No()-this.Fo();return this.lo=e,e}Lh(){return this.Wo(),this.Ih}Ao(e,A){const t=this.Ih;(A||t===null&&e!==null||t!==null&&!t.Ch(e))&&(this.bo=null,this.Ih=e)}Ni(){return this.Wo(),this.ho===0||!this.Ih||this.Ih.Ni()}jo(e){return this.Bo()?e:this.At()-1-e}Rt(e,A){return this.Mh()?e=nr(e,A):this.Oo()&&(e=Ir(e,A)),this.Po(e,A)}te(e,A,t){this.Wo();const i=this.Fo(),n=ue(this.Lh()),s=n.Ph(),o=n.Rh(),a=this.Eo()-1,l=this.Bo(),c=a/(o-s),d=t===void 0?0:t.from,p=t===void 0?e.length:t.to,y=this.Ho();for(let w=d;w<p;w++){const C=e[w],v=C._t;if(isNaN(v))continue;let S=v;y!==null&&(S=y(C._t,A));const F=i+c*(S-s),k=l?F:this.ho-1-F;C.st=k}}be(e,A,t){this.Wo();const i=this.Fo(),n=ue(this.Lh()),s=n.Ph(),o=n.Rh(),a=this.Eo()-1,l=this.Bo(),c=a/(o-s),d=t===void 0?0:t.from,p=t===void 0?e.length:t.to,y=this.Ho();for(let w=d;w<p;w++){const C=e[w];let v=C.ge,S=C.Me,F=C.xe,k=C.Se;y!==null&&(v=y(C.ge,A),S=y(C.Me,A),F=y(C.xe,A),k=y(C.Se,A));let x=i+c*(v-s),V=l?x:this.ho-1-x;C.pe=V,x=i+c*(S-s),V=l?x:this.ho-1-x,C.de=V,x=i+c*(F-s),V=l?x:this.ho-1-x,C.fe=V,x=i+c*(k-s),V=l?x:this.ho-1-x,C.me=V}}pn(e,A){const t=this.To(e,A);return this.$o(t,A)}$o(e,A){let t=e;return this.Mh()?t=(function(i,n){return n<0&&(i=-i),i/100*n+n})(t,A):this.Oo()&&(t=(function(i,n){return i-=100,n<0&&(i=-i),i/100*n+n})(t,A)),t}Ba(){return this.po}Uo(){if(this.mo)return this.mo;let e=[];for(let A=0;A<this.po.length;A++){const t=this.po[A];t.Xi()===null&&t.Ki(A+1),e.push(t)}return e=al(e),this.mo=e,this.mo}qo(e){this.po.indexOf(e)===-1&&(this.po.push(e),this.Ra(),this.Yo())}Zo(e){const A=this.po.indexOf(e);if(A===-1)throw new Error("source is not attached to scale");this.po.splice(A,1),this.po.length===0&&(this.Ro({Wn:!0}),this.Ao(null)),this.Ra(),this.Yo()}Ct(){let e=null;for(const A of this.po){const t=A.Ct();t!==null&&(e===null||t.la<e.la)&&(e=t)}return e===null?null:e.Vt}Bo(){return this.cn.invertScale}Ha(){const e=this.Ct()===null;if(this.bo!==null&&(e||this.bo.Xo===e))return this.bo.Ha;this.Co.io();const A=this.Co.Ha();return this.bo={Ha:A,Xo:e},this.fo.m(),A}Ko(){return this.fo}Go(e){this.Mh()||this.Oo()||this.wo===null&&this.ao===null&&(this.Ni()||(this.wo=this.ho-e,this.ao=ue(this.Lh()).Th()))}Jo(e){if(this.Mh()||this.Oo()||this.wo===null)return;this.Ro({Wn:!1}),(e=this.ho-e)<0&&(e=0);let A=(this.wo+.2*(this.ho-1))/(e+.2*(this.ho-1));const t=ue(this.ao).Th();A=Math.max(A,.1),t.Vh(A),this.Ao(t)}Qo(){this.Mh()||this.Oo()||(this.wo=null,this.ao=null)}t_(e){this.Vo()||this.Mo===null&&this.ao===null&&(this.Ni()||(this.Mo=e,this.ao=ue(this.Lh()).Th()))}i_(e){if(this.Vo()||this.Mo===null)return;const A=ue(this.Lh()).Dh()/(this.Eo()-1);let t=e-this.Mo;this.Bo()&&(t*=-1);const i=t*A,n=ue(this.ao).Th();n.Oh(i),this.Ao(n,!0),this.bo=null}n_(){this.Vo()||this.Mo!==null&&(this.Mo=null,this.ao=null)}ba(){return this.wa||this.Ra(),this.wa}Fi(e,A){switch(this.cn.mode){case 2:return this.s_(nr(e,A));case 3:return this.ba().format(Ir(e,A));default:return this.Wh(e)}}eo(e){switch(this.cn.mode){case 2:return this.s_(e);case 3:return this.ba().format(e);default:return this.Wh(e)}}Yl(e){return this.Wh(e,ue(this.e_()).ba())}Zl(e,A){return e=nr(e,A),this.s_(e,cl)}r_(){return this.po}h_(e){this.oo={uo:e,_o:!1}}Vn(){this.po.forEach((e=>e.Vn()))}Ra(){this.bo=null;const e=this.e_();let A=100;e!==null&&(A=Math.round(1/e.ma())),this.wa=hl,this.Mh()?(this.wa=cl,A=100):this.Oo()?(this.wa=new Qi(100,1),A=100):e!==null&&(this.wa=e.ba()),this.Co=new ol(this,A,this.To.bind(this),this.Po.bind(this)),this.Co.io()}Yo(){this.mo=null}e_(){return this.po[0]||null}No(){return this.Bo()?this.cn.scaleMargins.bottom*this.At()+this.do:this.cn.scaleMargins.top*this.At()+this.co}Fo(){return this.Bo()?this.cn.scaleMargins.top*this.At()+this.co:this.cn.scaleMargins.bottom*this.At()+this.do}Wo(){this.oo._o||(this.oo._o=!0,this.l_())}Do(){this.lo=null}Po(e,A){if(this.Wo(),this.Ni())return 0;e=this.ro()&&e?Si(e,this.xo):e;const t=ue(this.Lh()),i=this.Fo()+(this.Eo()-1)*(e-t.Ph())/t.Dh();return this.jo(i)}To(e,A){if(this.Wo(),this.Ni())return 0;const t=this.jo(e),i=ue(this.Lh()),n=i.Ph()+i.Dh()*((t-this.Fo())/(this.Eo()-1));return this.ro()?_r(n,this.xo):n}Io(){this.bo=null,this.Co.io()}l_(){const e=this.oo.uo;if(e===null)return;let A=null;const t=this.r_();let i=0,n=0;for(const a of t){if(!a.yt())continue;const l=a.Ct();if(l===null)continue;const c=a.Il(e.Os(),e.ui());let d=c&&c.Lh();if(d!==null){switch(this.cn.mode){case 1:d=Dr(d,this.xo);break;case 2:d=rp(d,l.Vt);break;case 3:d=ip(d,l.Vt)}if(A=A===null?d:A.ts(ue(d)),c!==null){const p=c.Eh();p!==null&&(i=Math.max(i,p.above),n=Math.max(n,p.below))}}}if(i===this.co&&n===this.do||(this.co=i,this.do=n,this.bo=null,this.Do()),A!==null){if(A.Ph()===A.Rh()){const a=this.e_(),l=5*(a===null||this.Mh()||this.Oo()?1:a.ma());this.ro()&&(A=Hi(A,this.xo)),A=new DA(A.Ph()-l,A.Rh()+l),this.ro()&&(A=Dr(A,this.xo))}if(this.ro()){const a=Hi(A,this.xo),l=ws(a);if(s=l,o=this.xo,s.$a!==o.$a||s.Ua!==o.Ua){const c=this.ao!==null?Hi(this.ao,this.xo):null;this.xo=l,A=Dr(a,l),c!==null&&(this.ao=Dr(c,l))}}this.Ao(A)}else this.Ih===null&&(this.Ao(new DA(-.5,.5)),this.xo=ws(null));var s,o;this.oo._o=!0}Ho(){return this.Mh()?nr:this.Oo()?Ir:this.ro()?e=>Si(e,this.xo):null}a_(e,A,t){return A===void 0?(t===void 0&&(t=this.ba()),t.format(e)):A(e)}Wh(e,A){return this.a_(e,this.yo.priceFormatter,A)}s_(e,A){return this.a_(e,this.yo.percentageFormatter,A)}}class sp{constructor(e,A){this.po=[],this.o_=new Map,this.ho=0,this.__=0,this.u_=1e3,this.mo=null,this.c_=new uA,this.yl=e,this.$i=A,this.d_=new tp(this);const t=A.W();this.f_=this.v_("left",t.leftPriceScale),this.p_=this.v_("right",t.rightPriceScale),this.f_.zo().l(this.m_.bind(this,this.f_),this),this.p_.zo().l(this.m_.bind(this,this.p_),this),this.b_(t)}b_(e){if(e.leftPriceScale&&this.f_.$h(e.leftPriceScale),e.rightPriceScale&&this.p_.$h(e.rightPriceScale),e.localization&&(this.f_.Ra(),this.p_.Ra()),e.overlayPriceScales){const A=Array.from(this.o_.values());for(const t of A){const i=ue(t[0].Dt());i.$h(e.overlayPriceScales),e.localization&&i.Ra()}}}w_(e){switch(e){case"left":return this.f_;case"right":return this.p_}return this.o_.has(e)?LA(this.o_.get(e))[0].Dt():null}S(){this.$t().g_().p(this),this.f_.zo().p(this),this.p_.zo().p(this),this.po.forEach((e=>{e.S&&e.S()})),this.c_.m()}M_(){return this.u_}x_(e){this.u_=e}$t(){return this.$i}Hi(){return this.__}At(){return this.ho}S_(e){this.__=e,this.k_()}Lo(e){this.ho=e,this.f_.Lo(e),this.p_.Lo(e),this.po.forEach((A=>{if(this.vr(A)){const t=A.Dt();t!==null&&t.Lo(e)}})),this.k_()}Ba(){return this.po}vr(e){const A=e.Dt();return A===null||this.f_!==A&&this.p_!==A}qo(e,A,t){const i=t!==void 0?t:this.C_().y_+1;this.T_(e,A,i)}Zo(e){const A=this.po.indexOf(e);Ft(A!==-1,"removeDataSource: invalid data source"),this.po.splice(A,1);const t=ue(e.Dt()).Pa();if(this.o_.has(t)){const n=LA(this.o_.get(t)),s=n.indexOf(e);s!==-1&&(n.splice(s,1),n.length===0&&this.o_.delete(t))}const i=e.Dt();i&&i.Ba().indexOf(e)>=0&&i.Zo(e),i!==null&&(i.Yo(),this.P_(i)),this.mo=null}mr(e){return e===this.f_?"left":e===this.p_?"right":"overlay"}R_(){return this.f_}D_(){return this.p_}V_(e,A){e.Go(A)}O_(e,A){e.Jo(A),this.k_()}B_(e){e.Qo()}A_(e,A){e.t_(A)}I_(e,A){e.i_(A),this.k_()}z_(e){e.n_()}k_(){this.po.forEach((e=>{e.Vn()}))}vn(){let e=null;return this.$i.W().rightPriceScale.visible&&this.p_.Ba().length!==0?e=this.p_:this.$i.W().leftPriceScale.visible&&this.f_.Ba().length!==0?e=this.f_:this.po.length!==0&&(e=this.po[0].Dt()),e===null&&(e=this.p_),e}pr(){let e=null;return this.$i.W().rightPriceScale.visible?e=this.p_:this.$i.W().leftPriceScale.visible&&(e=this.f_),e}P_(e){e!==null&&e.Vo()&&this.L_(e)}E_(e){const A=this.yl.Xs();e.Ro({Wn:!0}),A!==null&&e.h_(A),this.k_()}N_(){this.L_(this.f_),this.L_(this.p_)}F_(){this.P_(this.f_),this.P_(this.p_),this.po.forEach((e=>{this.vr(e)&&this.P_(e.Dt())})),this.k_(),this.$i.Uh()}Uo(){return this.mo===null&&(this.mo=al(this.po)),this.mo}W_(){return this.c_}j_(){return this.d_}L_(e){const A=e.r_();if(A&&A.length>0&&!this.yl.Ni()){const t=this.yl.Xs();t!==null&&e.h_(t)}e.Vn()}C_(){const e=this.Uo();if(e.length===0)return{H_:0,y_:0};let A=0,t=0;for(let i=0;i<e.length;i++){const n=e[i].Xi();n!==null&&(n<A&&(A=n),n>t&&(t=n))}return{H_:A,y_:t}}T_(e,A,t){let i=this.w_(A);if(i===null&&(i=this.v_(A,this.$i.W().overlayPriceScales)),this.po.push(e),!Ti(A)){const n=this.o_.get(A)||[];n.push(e),this.o_.set(A,n)}i.qo(e),e.Gi(i),e.Ki(t),this.P_(i),this.mo=null}m_(e,A,t){A.Cr!==t.Cr&&this.L_(e)}v_(e,A){const t=Object.assign({visible:!0,autoScale:!0},Ct(A)),i=new np(e,t,this.$i.W().layout,this.$i.W().localization);return i.Lo(this.At()),i}}class op{constructor(e,A,t=50){this.Ke=0,this.Ge=1,this.Je=1,this.tr=new Map,this.Qe=new Map,this.U_=e,this.q_=A,this.ir=t}Y_(e){const A=e.time,t=this.q_.cacheKey(A),i=this.tr.get(t);if(i!==void 0)return i.Z_;if(this.Ke===this.ir){const s=this.Qe.get(this.Je);this.Qe.delete(this.Je),this.tr.delete(LA(s)),this.Je++,this.Ke--}const n=this.U_(e);return this.tr.set(t,{Z_:n,rr:this.Ge}),this.Qe.set(this.Ge,t),this.Ke++,this.Ge++,n}}class kr{constructor(e,A){Ft(e<=A,"right should be >= left"),this.X_=e,this.K_=A}Os(){return this.X_}ui(){return this.K_}G_(){return this.K_-this.X_+1}Kr(e){return this.X_<=e&&e<=this.K_}Ch(e){return this.X_===e.Os()&&this.K_===e.ui()}}function ul(r,e){return r===null||e===null?r===e:r.Ch(e)}class ap{constructor(){this.J_=new Map,this.tr=null,this.Q_=!1}tu(e){this.Q_=e,this.tr=null}iu(e,A){this.nu(A),this.tr=null;for(let t=A;t<e.length;++t){const i=e[t];let n=this.J_.get(i.timeWeight);n===void 0&&(n=[],this.J_.set(i.timeWeight,n)),n.push({index:t,time:i.time,weight:i.timeWeight,originalTime:i.originalTime})}}su(e,A){const t=Math.ceil(A/e);return this.tr!==null&&this.tr.eu===t||(this.tr={Ha:this.ru(t),eu:t}),this.tr.Ha}nu(e){if(e===0)return void this.J_.clear();const A=[];this.J_.forEach(((t,i)=>{e<=t[0].index?A.push(i):t.splice(Sr(t,e,(n=>n.index<e)),1/0)}));for(const t of A)this.J_.delete(t)}ru(e){let A=[];for(const t of Array.from(this.J_.keys()).sort(((i,n)=>n-i))){if(!this.J_.get(t))continue;const i=A;A=[];const n=i.length;let s=0;const o=LA(this.J_.get(t)),a=o.length;let l=1/0,c=-1/0;for(let d=0;d<a;d++){const p=o[d],y=p.index;for(;s<n;){const w=i[s],C=w.index;if(!(C<y)){l=C;break}s++,A.push(w),c=C,l=1/0}if(l-y>=e&&y-c>=e)A.push(p),c=y;else if(this.Q_)return i}for(;s<n;s++)A.push(i[s])}return A}}class sr{constructor(e){this.hu=e}lu(){return this.hu===null?null:new kr(Math.floor(this.hu.Os()),Math.ceil(this.hu.ui()))}au(){return this.hu}static ou(){return new sr(null)}}function lp(r,e){return r.weight>e.weight?r:e}class cp{constructor(e,A,t,i){this.__=0,this._u=null,this.uu=[],this.Mo=null,this.wo=null,this.cu=new ap,this.du=new Map,this.fu=sr.ou(),this.vu=!0,this.pu=new uA,this.mu=new uA,this.bu=new uA,this.wu=null,this.gu=null,this.Mu=[],this.cn=A,this.yo=t,this.xu=A.rightOffset,this.Su=A.barSpacing,this.$i=e,this.q_=i,this.ku(),this.cu.tu(A.uniformDistribution)}W(){return this.cn}yu(e){et(this.yo,e),this.Cu(),this.ku()}$h(e,A){var t;et(this.cn,e),this.cn.fixLeftEdge&&this.Tu(),this.cn.fixRightEdge&&this.Pu(),e.barSpacing!==void 0&&this.$i.Gn(e.barSpacing),e.rightOffset!==void 0&&this.$i.Jn(e.rightOffset),e.minBarSpacing!==void 0&&this.$i.Gn((t=e.barSpacing)!==null&&t!==void 0?t:this.Su),this.Cu(),this.ku(),this.bu.m()}mn(e){var A,t;return(t=(A=this.uu[e])===null||A===void 0?void 0:A.time)!==null&&t!==void 0?t:null}Ui(e){var A;return(A=this.uu[e])!==null&&A!==void 0?A:null}Va(e,A){if(this.uu.length<1)return null;if(this.q_.key(e)>this.q_.key(this.uu[this.uu.length-1].time))return A?this.uu.length-1:null;const t=Sr(this.uu,this.q_.key(e),((i,n)=>this.q_.key(i.time)<n));return this.q_.key(e)<this.q_.key(this.uu[t].time)?A?t:null:t}Ni(){return this.__===0||this.uu.length===0||this._u===null}Da(){return this.uu.length>0}Xs(){return this.Ru(),this.fu.lu()}Du(){return this.Ru(),this.fu.au()}Vu(){const e=this.Xs();if(e===null)return null;const A={from:e.Os(),to:e.ui()};return this.Ou(A)}Ou(e){const A=Math.round(e.from),t=Math.round(e.to),i=ue(this.Bu()),n=ue(this.Au());return{from:ue(this.Ui(Math.max(i,A))),to:ue(this.Ui(Math.min(n,t)))}}Iu(e){return{from:ue(this.Va(e.from,!0)),to:ue(this.Va(e.to,!0))}}Hi(){return this.__}S_(e){if(!isFinite(e)||e<=0||this.__===e)return;const A=this.Du(),t=this.__;if(this.__=e,this.vu=!0,this.cn.lockVisibleTimeRangeOnResize&&t!==0){const i=this.Su*e/t;this.Su=i}if(this.cn.fixLeftEdge&&A!==null&&A.Os()<=0){const i=t-e;this.xu-=Math.round(i/this.Su)+1,this.vu=!0}this.zu(),this.Lu()}It(e){if(this.Ni()||!Fr(e))return 0;const A=this.Eu()+this.xu-e;return this.__-(A+.5)*this.Su-1}Qs(e,A){const t=this.Eu(),i=A===void 0?0:A.from,n=A===void 0?e.length:A.to;for(let s=i;s<n;s++){const o=e[s].ot,a=t+this.xu-o,l=this.__-(a+.5)*this.Su-1;e[s].nt=l}}Nu(e){return Math.ceil(this.Fu(e))}Jn(e){this.vu=!0,this.xu=e,this.Lu(),this.$i.Wu(),this.$i.Uh()}le(){return this.Su}Gn(e){this.ju(e),this.Lu(),this.$i.Wu(),this.$i.Uh()}Hu(){return this.xu}Ha(){if(this.Ni())return null;if(this.gu!==null)return this.gu;const e=this.Su,A=5*(this.$i.W().layout.fontSize+4)/8*(this.cn.tickMarkMaxCharacterLength||8),t=Math.round(A/e),i=ue(this.Xs()),n=Math.max(i.Os(),i.Os()-t),s=Math.max(i.ui(),i.ui()-t),o=this.cu.su(e,A),a=this.Bu()+t,l=this.Au()-t,c=this.$u(),d=this.cn.fixLeftEdge||c,p=this.cn.fixRightEdge||c;let y=0;for(const w of o){if(!(n<=w.index&&w.index<=s))continue;let C;y<this.Mu.length?(C=this.Mu[y],C.coord=this.It(w.index),C.label=this.Uu(w),C.weight=w.weight):(C={needAlignCoordinate:!1,coord:this.It(w.index),label:this.Uu(w),weight:w.weight},this.Mu.push(C)),this.Su>A/2&&!c?C.needAlignCoordinate=!1:C.needAlignCoordinate=d&&w.index<=a||p&&w.index>=l,y++}return this.Mu.length=y,this.gu=this.Mu,this.Mu}qu(){this.vu=!0,this.Gn(this.cn.barSpacing),this.Jn(this.cn.rightOffset)}Yu(e){this.vu=!0,this._u=e,this.Lu(),this.Tu()}Zu(e,A){const t=this.Fu(e),i=this.le(),n=i+A*(i/10);this.Gn(n),this.cn.rightBarStaysOnScroll||this.Jn(this.Hu()+(t-this.Fu(e)))}Go(e){this.Mo&&this.n_(),this.wo===null&&this.wu===null&&(this.Ni()||(this.wo=e,this.Xu()))}Jo(e){if(this.wu===null)return;const A=ls(this.__-e,0,this.__),t=ls(this.__-ue(this.wo),0,this.__);A!==0&&t!==0&&this.Gn(this.wu.le*A/t)}Qo(){this.wo!==null&&(this.wo=null,this.Ku())}t_(e){this.Mo===null&&this.wu===null&&(this.Ni()||(this.Mo=e,this.Xu()))}i_(e){if(this.Mo===null)return;const A=(this.Mo-e)/this.le();this.xu=ue(this.wu).Hu+A,this.vu=!0,this.Lu()}n_(){this.Mo!==null&&(this.Mo=null,this.Ku())}Gu(){this.Ju(this.cn.rightOffset)}Ju(e,A=400){if(!isFinite(e))throw new RangeError("offset is required and must be finite number");if(!isFinite(A)||A<=0)throw new RangeError("animationDuration (optional) must be finite positive number");const t=this.xu,i=performance.now();this.$i.Zn({Qu:n=>(n-i)/A>=1,tc:n=>{const s=(n-i)/A;return s>=1?e:t+(e-t)*s}})}bt(e,A){this.vu=!0,this.uu=e,this.cu.iu(e,A),this.Lu()}nc(){return this.pu}sc(){return this.mu}ec(){return this.bu}Eu(){return this._u||0}rc(e){const A=e.G_();this.ju(this.__/A),this.xu=e.ui()-this.Eu(),this.Lu(),this.vu=!0,this.$i.Wu(),this.$i.Uh()}hc(){const e=this.Bu(),A=this.Au();e!==null&&A!==null&&this.rc(new kr(e,A+this.cn.rightOffset))}lc(e){const A=new kr(e.from,e.to);this.rc(A)}qi(e){return this.yo.timeFormatter!==void 0?this.yo.timeFormatter(e.originalTime):this.q_.formatHorzItem(e.time)}$u(){const{handleScroll:e,handleScale:A}=this.$i.W();return!(e.horzTouchDrag||e.mouseWheel||e.pressedMouseMove||e.vertTouchDrag||A.axisDoubleClickReset.time||A.axisPressedMouseMove.time||A.mouseWheel||A.pinch)}Bu(){return this.uu.length===0?null:0}Au(){return this.uu.length===0?null:this.uu.length-1}ac(e){return(this.__-1-e)/this.Su}Fu(e){const A=this.ac(e),t=this.Eu()+this.xu-A;return Math.round(1e6*t)/1e6}ju(e){const A=this.Su;this.Su=e,this.zu(),A!==this.Su&&(this.vu=!0,this.oc())}Ru(){if(!this.vu)return;if(this.vu=!1,this.Ni())return void this._c(sr.ou());const e=this.Eu(),A=this.__/this.Su,t=this.xu+e,i=new kr(t-A+1,t);this._c(new sr(i))}zu(){const e=this.uc();if(this.Su<e&&(this.Su=e,this.vu=!0),this.__!==0){const A=.5*this.__;this.Su>A&&(this.Su=A,this.vu=!0)}}uc(){return this.cn.fixLeftEdge&&this.cn.fixRightEdge&&this.uu.length!==0?this.__/this.uu.length:this.cn.minBarSpacing}Lu(){const e=this.cc();e!==null&&this.xu<e&&(this.xu=e,this.vu=!0);const A=this.dc();this.xu>A&&(this.xu=A,this.vu=!0)}cc(){const e=this.Bu(),A=this._u;return e===null||A===null?null:e-A-1+(this.cn.fixLeftEdge?this.__/this.Su:Math.min(2,this.uu.length))}dc(){return this.cn.fixRightEdge?0:this.__/this.Su-Math.min(2,this.uu.length)}Xu(){this.wu={le:this.le(),Hu:this.Hu()}}Ku(){this.wu=null}Uu(e){let A=this.du.get(e.weight);return A===void 0&&(A=new op((t=>this.fc(t)),this.q_),this.du.set(e.weight,A)),A.Y_(e)}fc(e){return this.q_.formatTickmark(e,this.yo)}_c(e){const A=this.fu;this.fu=e,ul(A.lu(),this.fu.lu())||this.pu.m(),ul(A.au(),this.fu.au())||this.mu.m(),this.oc()}oc(){this.gu=null}Cu(){this.oc(),this.du.clear()}ku(){this.q_.updateFormatter(this.yo)}Tu(){if(!this.cn.fixLeftEdge)return;const e=this.Bu();if(e===null)return;const A=this.Xs();if(A===null)return;const t=A.Os()-e;if(t<0){const i=this.xu-t-1;this.Jn(i)}this.zu()}Pu(){this.Lu(),this.zu()}}class hp{X(e,A,t){e.useMediaCoordinateSpace((i=>this.K(i,A,t)))}gl(e,A,t){e.useMediaCoordinateSpace((i=>this.vc(i,A,t)))}vc(e,A,t){}}class up extends hp{constructor(e){super(),this.mc=new Map,this.zt=e}K(e){}vc(e){if(!this.zt.yt)return;const{context:A,mediaSize:t}=e;let i=0;for(const s of this.zt.bc){if(s.Kt.length===0)continue;A.font=s.R;const o=this.wc(A,s.Kt);o>t.width?s.Zu=t.width/o:s.Zu=1,i+=s.gc*s.Zu}let n=0;switch(this.zt.Mc){case"top":n=0;break;case"center":n=Math.max((t.height-i)/2,0);break;case"bottom":n=Math.max(t.height-i,0)}A.fillStyle=this.zt.V;for(const s of this.zt.bc){A.save();let o=0;switch(this.zt.xc){case"left":A.textAlign="left",o=s.gc/2;break;case"center":A.textAlign="center",o=t.width/2;break;case"right":A.textAlign="right",o=t.width-1-s.gc/2}A.translate(o,n),A.textBaseline="top",A.font=s.R,A.scale(s.Zu,s.Zu),A.fillText(s.Kt,0,s.Sc),A.restore(),n+=s.gc*s.Zu}}wc(e,A){const t=this.kc(e.font);let i=t.get(A);return i===void 0&&(i=e.measureText(A).width,t.set(A,i)),i}kc(e){let A=this.mc.get(e);return A===void 0&&(A=new Map,this.mc.set(e,A)),A}}class dp{constructor(e){this.ft=!0,this.Ft={yt:!1,V:"",bc:[],Mc:"center",xc:"center"},this.Wt=new up(this.Ft),this.jt=e}bt(){this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.Wt}Mt(){const e=this.jt.W(),A=this.Ft;A.yt=e.visible,A.yt&&(A.V=e.color,A.xc=e.horzAlign,A.Mc=e.vertAlign,A.bc=[{Kt:e.text,R:ir(e.fontSize,e.fontFamily,e.fontStyle),gc:1.2*e.fontSize,Sc:0,Zu:0}])}}class fp extends os{constructor(e,A){super(),this.cn=A,this.wn=new dp(this)}Rn(){return[]}Pn(){return[this.wn]}W(){return this.cn}Vn(){this.wn.bt()}}var dl,fl,pl,gl,ml;(function(r){r[r.OnTouchEnd=0]="OnTouchEnd",r[r.OnNextTap=1]="OnNextTap"})(dl||(dl={}));class pp{constructor(e,A,t){this.yc=[],this.Cc=[],this.__=0,this.Tc=null,this.Pc=new uA,this.Rc=new uA,this.Dc=null,this.Vc=e,this.cn=A,this.q_=t,this.Oc=new Wd(this),this.yl=new cp(this,A.timeScale,this.cn.localization,t),this.vt=new rf(this,A.crosshair),this.Bc=new jf(A.crosshair),this.Ac=new fp(this,A.watermark),this.Ic(),this.yc[0].x_(2e3),this.zc=this.Lc(0),this.Ec=this.Lc(1)}Kl(){this.Nc(yA.es())}Uh(){this.Nc(yA.ss())}oa(){this.Nc(new yA(1))}Gl(e){const A=this.Fc(e);this.Nc(A)}Wc(){return this.Tc}jc(e){const A=this.Tc;this.Tc=e,A!==null&&this.Gl(A.Hc),e!==null&&this.Gl(e.Hc)}W(){return this.cn}$h(e){et(this.cn,e),this.yc.forEach((A=>A.b_(e))),e.timeScale!==void 0&&this.yl.$h(e.timeScale),e.localization!==void 0&&this.yl.yu(e.localization),(e.leftPriceScale||e.rightPriceScale)&&this.Pc.m(),this.zc=this.Lc(0),this.Ec=this.Lc(1),this.Kl()}$c(e,A){if(e==="left")return void this.$h({leftPriceScale:A});if(e==="right")return void this.$h({rightPriceScale:A});const t=this.Uc(e);t!==null&&(t.Dt.$h(A),this.Pc.m())}Uc(e){for(const A of this.yc){const t=A.w_(e);if(t!==null)return{Ht:A,Dt:t}}return null}St(){return this.yl}qc(){return this.yc}Yc(){return this.Ac}Zc(){return this.vt}Xc(){return this.Rc}Kc(e,A){e.Lo(A),this.Wu()}S_(e){this.__=e,this.yl.S_(this.__),this.yc.forEach((A=>A.S_(e))),this.Wu()}Ic(e){const A=new sp(this.yl,this);e!==void 0?this.yc.splice(e,0,A):this.yc.push(A);const t=e===void 0?this.yc.length-1:e,i=yA.es();return i.Nn(t,{Fn:0,Wn:!0}),this.Nc(i),A}V_(e,A,t){e.V_(A,t)}O_(e,A,t){e.O_(A,t),this.Jl(),this.Nc(this.Gc(e,2))}B_(e,A){e.B_(A),this.Nc(this.Gc(e,2))}A_(e,A,t){A.Vo()||e.A_(A,t)}I_(e,A,t){A.Vo()||(e.I_(A,t),this.Jl(),this.Nc(this.Gc(e,2)))}z_(e,A){A.Vo()||(e.z_(A),this.Nc(this.Gc(e,2)))}E_(e,A){e.E_(A),this.Nc(this.Gc(e,2))}Jc(e){this.yl.Go(e)}Qc(e,A){const t=this.St();if(t.Ni()||A===0)return;const i=t.Hi();e=Math.max(1,Math.min(e,i)),t.Zu(e,A),this.Wu()}td(e){this.nd(0),this.sd(e),this.ed()}rd(e){this.yl.Jo(e),this.Wu()}hd(){this.yl.Qo(),this.Uh()}nd(e){this.yl.t_(e)}sd(e){this.yl.i_(e),this.Wu()}ed(){this.yl.n_(),this.Uh()}wt(){return this.Cc}ld(e,A,t,i,n){this.vt.gn(e,A);let s=NaN,o=this.yl.Nu(e);const a=this.yl.Xs();a!==null&&(o=Math.min(Math.max(a.Os(),o),a.ui()));const l=i.vn(),c=l.Ct();c!==null&&(s=l.pn(A,c)),s=this.Bc.Oa(s,o,i),this.vt.kn(o,s,i),this.oa(),n||this.Rc.m(this.vt.xt(),{x:e,y:A},t)}ad(e,A,t){const i=t.vn(),n=i.Ct(),s=i.Rt(e,ue(n)),o=this.yl.Va(A,!0),a=this.yl.It(ue(o));this.ld(a,s,null,t,!0)}od(e){this.Zc().Cn(),this.oa(),e||this.Rc.m(null,null,null)}Jl(){const e=this.vt.Ht();if(e!==null){const A=this.vt.xn(),t=this.vt.Sn();this.ld(A,t,null,e)}this.vt.Vn()}_d(e,A,t){const i=this.yl.mn(0);A!==void 0&&t!==void 0&&this.yl.bt(A,t);const n=this.yl.mn(0),s=this.yl.Eu(),o=this.yl.Xs();if(o!==null&&i!==null&&n!==null){const a=o.Kr(s),l=this.q_.key(i)>this.q_.key(n),c=e!==null&&e>s&&!l,d=this.yl.W().allowShiftVisibleRangeOnWhitespaceReplacement,p=a&&(t!==void 0||d)&&this.yl.W().shiftVisibleRangeOnNewBar;if(c&&!p){const y=e-s;this.yl.Jn(this.yl.Hu()-y)}}this.yl.Yu(e)}ia(e){e!==null&&e.F_()}dr(e){const A=this.yc.find((t=>t.Uo().includes(e)));return A===void 0?null:A}Wu(){this.Ac.Vn(),this.yc.forEach((e=>e.F_())),this.Jl()}S(){this.yc.forEach((e=>e.S())),this.yc.length=0,this.cn.localization.priceFormatter=void 0,this.cn.localization.percentageFormatter=void 0,this.cn.localization.timeFormatter=void 0}ud(){return this.Oc}br(){return this.Oc.W()}g_(){return this.Pc}dd(e,A,t){const i=this.yc[0],n=this.fd(A,e,i,t);return this.Cc.push(n),this.Cc.length===1?this.Kl():this.Uh(),n}vd(e){const A=this.dr(e),t=this.Cc.indexOf(e);Ft(t!==-1,"Series not found"),this.Cc.splice(t,1),ue(A).Zo(e),e.S&&e.S()}Xl(e,A){const t=ue(this.dr(e));t.Zo(e);const i=this.Uc(A);if(i===null){const n=e.Xi();t.qo(e,A,n)}else{const n=i.Ht===t?e.Xi():void 0;i.Ht.qo(e,A,n)}}hc(){const e=yA.ss();e.$n(),this.Nc(e)}pd(e){const A=yA.ss();A.Yn(e),this.Nc(A)}Kn(){const e=yA.ss();e.Kn(),this.Nc(e)}Gn(e){const A=yA.ss();A.Gn(e),this.Nc(A)}Jn(e){const A=yA.ss();A.Jn(e),this.Nc(A)}Zn(e){const A=yA.ss();A.Zn(e),this.Nc(A)}Un(){const e=yA.ss();e.Un(),this.Nc(e)}md(){return this.cn.rightPriceScale.visible?"right":"left"}bd(){return this.Ec}q(){return this.zc}Bt(e){const A=this.Ec,t=this.zc;if(A===t)return A;if(e=Math.max(0,Math.min(100,Math.round(100*e))),this.Dc===null||this.Dc.Ps!==t||this.Dc.Rs!==A)this.Dc={Ps:t,Rs:A,wd:new Map};else{const n=this.Dc.wd.get(e);if(n!==void 0)return n}const i=(function(n,s,o){const[a,l,c,d]=xr(n),[p,y,w,C]=xr(s),v=[$A(a+o*(p-a)),$A(l+o*(y-l)),$A(c+o*(w-c)),Ea(d+o*(C-d))];return`rgba(${v[0]}, ${v[1]}, ${v[2]}, ${v[3]})`})(t,A,e/100);return this.Dc.wd.set(e,i),i}Gc(e,A){const t=new yA(A);if(e!==null){const i=this.yc.indexOf(e);t.Nn(i,{Fn:A})}return t}Fc(e,A){return A===void 0&&(A=2),this.Gc(this.dr(e),A)}Nc(e){this.Vc&&this.Vc(e),this.yc.forEach((A=>A.j_().qh().bt()))}fd(e,A,t,i){const n=new ms(this,e,A,t,i),s=e.priceScaleId!==void 0?e.priceScaleId:this.md();return t.qo(n,s),Ti(s)||n.$h(e),n}Lc(e){const A=this.cn.layout;return A.background.type==="gradient"?e===0?A.background.topColor:A.background.bottomColor:A.background.color}}function vs(r){return!ot(r)&&!Ur(r)}function Bl(r){return ot(r)}(function(r){r[r.Disabled=0]="Disabled",r[r.Continuous=1]="Continuous",r[r.OnDataUpdate=2]="OnDataUpdate"})(fl||(fl={})),(function(r){r[r.LastBar=0]="LastBar",r[r.LastVisible=1]="LastVisible"})(pl||(pl={})),(function(r){r.Solid="solid",r.VerticalGradient="gradient"})(gl||(gl={})),(function(r){r[r.Year=0]="Year",r[r.Month=1]="Month",r[r.DayOfMonth=2]="DayOfMonth",r[r.Time=3]="Time",r[r.TimeWithSeconds=4]="TimeWithSeconds"})(ml||(ml={}));const wl=r=>r.getUTCFullYear();function gp(r,e,A){return e.replace(/yyyy/g,(t=>vt(wl(t),4))(r)).replace(/yy/g,(t=>vt(wl(t)%100,2))(r)).replace(/MMMM/g,((t,i)=>new Date(t.getUTCFullYear(),t.getUTCMonth(),1).toLocaleString(i,{month:"long"}))(r,A)).replace(/MMM/g,((t,i)=>new Date(t.getUTCFullYear(),t.getUTCMonth(),1).toLocaleString(i,{month:"short"}))(r,A)).replace(/MM/g,(t=>vt((i=>i.getUTCMonth()+1)(t),2))(r)).replace(/dd/g,(t=>vt((i=>i.getUTCDate())(t),2))(r))}class Cl{constructor(e="yyyy-MM-dd",A="default"){this.gd=e,this.Md=A}Y_(e){return gp(e,this.gd,this.Md)}}class mp{constructor(e){this.xd=e||"%h:%m:%s"}Y_(e){return this.xd.replace("%h",vt(e.getUTCHours(),2)).replace("%m",vt(e.getUTCMinutes(),2)).replace("%s",vt(e.getUTCSeconds(),2))}}const Bp={Sd:"yyyy-MM-dd",kd:"%h:%m:%s",yd:" ",Cd:"default"};class wp{constructor(e={}){const A=Object.assign(Object.assign({},Bp),e);this.Td=new Cl(A.Sd,A.Cd),this.Pd=new mp(A.kd),this.Rd=A.yd}Y_(e){return`${this.Td.Y_(e)}${this.Rd}${this.Pd.Y_(e)}`}}function Li(r){return 60*r*60*1e3}function ys(r){return 60*r*1e3}const Mi=[{Dd:(vl=1,1e3*vl),Vd:10},{Dd:ys(1),Vd:20},{Dd:ys(5),Vd:21},{Dd:ys(30),Vd:22},{Dd:Li(1),Vd:30},{Dd:Li(3),Vd:31},{Dd:Li(6),Vd:32},{Dd:Li(12),Vd:33}];var vl;function yl(r,e){if(r.getUTCFullYear()!==e.getUTCFullYear())return 70;if(r.getUTCMonth()!==e.getUTCMonth())return 60;if(r.getUTCDate()!==e.getUTCDate())return 50;for(let A=Mi.length-1;A>=0;--A)if(Math.floor(e.getTime()/Mi[A].Dd)!==Math.floor(r.getTime()/Mi[A].Dd))return Mi[A].Vd;return 0}function bs(r){let e=r;if(Ur(r)&&(e=Ts(r)),!vs(e))throw new Error("time must be of type BusinessDay");const A=new Date(Date.UTC(e.year,e.month-1,e.day,0,0,0,0));return{Od:Math.round(A.getTime()/1e3),Bd:e}}function bl(r){if(!Bl(r))throw new Error("time must be of type isUTCTimestamp");return{Od:r}}function Ts(r){const e=new Date(r);if(isNaN(e.getTime()))throw new Error(`Invalid date string=${r}, expected format=yyyy-mm-dd`);return{day:e.getUTCDate(),month:e.getUTCMonth()+1,year:e.getUTCFullYear()}}function Tl(r){Ur(r.time)&&(r.time=Ts(r.time))}class Ql{options(){return this.cn}setOptions(e){this.cn=e,this.updateFormatter(e.localization)}preprocessData(e){Array.isArray(e)?(function(A){A.forEach(Tl)})(e):Tl(e)}createConverterToInternalObj(e){return ue((function(A){return A.length===0?null:vs(A[0].time)||Ur(A[0].time)?bs:bl})(e))}key(e){return typeof e=="object"&&"Od"in e?e.Od:this.key(this.convertHorzItemToInternal(e))}cacheKey(e){const A=e;return A.Bd===void 0?new Date(1e3*A.Od).getTime():new Date(Date.UTC(A.Bd.year,A.Bd.month-1,A.Bd.day)).getTime()}convertHorzItemToInternal(e){return Bl(A=e)?bl(A):vs(A)?bs(A):bs(Ts(A));var A}updateFormatter(e){if(!this.cn)return;const A=e.dateFormat;this.cn.timeScale.timeVisible?this.Ad=new wp({Sd:A,kd:this.cn.timeScale.secondsVisible?"%h:%m:%s":"%h:%m",yd:" ",Cd:e.locale}):this.Ad=new Cl(A,e.locale)}formatHorzItem(e){const A=e;return this.Ad.Y_(new Date(1e3*A.Od))}formatTickmark(e,A){const t=(function(n,s,o){switch(n){case 0:case 10:return s?o?4:3:2;case 20:case 21:case 22:case 30:case 31:case 32:case 33:return s?3:2;case 50:return 2;case 60:return 1;case 70:return 0}})(e.weight,this.cn.timeScale.timeVisible,this.cn.timeScale.secondsVisible),i=this.cn.timeScale;if(i.tickMarkFormatter!==void 0){const n=i.tickMarkFormatter(e.originalTime,t,A.locale);if(n!==null)return n}return(function(n,s,o){const a={};switch(s){case 0:a.year="numeric";break;case 1:a.month="short";break;case 2:a.day="numeric";break;case 3:a.hour12=!1,a.hour="2-digit",a.minute="2-digit";break;case 4:a.hour12=!1,a.hour="2-digit",a.minute="2-digit",a.second="2-digit"}const l=n.Bd===void 0?new Date(1e3*n.Od):new Date(Date.UTC(n.Bd.year,n.Bd.month-1,n.Bd.day));return new Date(l.getUTCFullYear(),l.getUTCMonth(),l.getUTCDate(),l.getUTCHours(),l.getUTCMinutes(),l.getUTCSeconds(),l.getUTCMilliseconds()).toLocaleString(o,a)})(e.time,t,A.locale)}maxTickMarkWeight(e){let A=e.reduce(lp,e[0]).weight;return A>30&&A<50&&(A=30),A}fillWeightsForPoints(e,A){(function(t,i=0){if(t.length===0)return;let n=i===0?null:t[i-1].time.Od,s=n!==null?new Date(1e3*n):null,o=0;for(let a=i;a<t.length;++a){const l=t[a],c=new Date(1e3*l.time.Od);s!==null&&(l.timeWeight=yl(c,s)),o+=l.time.Od-(n||l.time.Od),n=l.time.Od,s=c}if(i===0&&t.length>1){const a=Math.ceil(o/(t.length-1)),l=new Date(1e3*(t[0].time.Od-a));t[0].timeWeight=yl(new Date(1e3*t[0].time.Od),l)}})(e,A)}static Id(e){return et({localization:{dateFormat:"dd MMM 'yy"}},e??{})}}const or=typeof window<"u";function xl(){return!!or&&window.navigator.userAgent.toLowerCase().indexOf("firefox")>-1}function Qs(){return!!or&&/iPhone|iPad|iPod/.test(window.navigator.platform)}function xs(r){return r+r%2}function Fs(r,e){return r.zd-e.zd}function Us(r,e,A){const t=(r.zd-e.zd)/(r.ot-e.ot);return Math.sign(t)*Math.min(Math.abs(t),A)}class Cp{constructor(e,A,t,i){this.Ld=null,this.Ed=null,this.Nd=null,this.Fd=null,this.Wd=null,this.jd=0,this.Hd=0,this.$d=e,this.Ud=A,this.qd=t,this.rs=i}Yd(e,A){if(this.Ld!==null){if(this.Ld.ot===A)return void(this.Ld.zd=e);if(Math.abs(this.Ld.zd-e)<this.rs)return}this.Fd=this.Nd,this.Nd=this.Ed,this.Ed=this.Ld,this.Ld={ot:A,zd:e}}Vr(e,A){if(this.Ld===null||this.Ed===null||A-this.Ld.ot>50)return;let t=0;const i=Us(this.Ld,this.Ed,this.Ud),n=Fs(this.Ld,this.Ed),s=[i],o=[n];if(t+=n,this.Nd!==null){const l=Us(this.Ed,this.Nd,this.Ud);if(Math.sign(l)===Math.sign(i)){const c=Fs(this.Ed,this.Nd);if(s.push(l),o.push(c),t+=c,this.Fd!==null){const d=Us(this.Nd,this.Fd,this.Ud);if(Math.sign(d)===Math.sign(i)){const p=Fs(this.Nd,this.Fd);s.push(d),o.push(p),t+=p}}}}let a=0;for(let l=0;l<s.length;++l)a+=o[l]/t*s[l];Math.abs(a)<this.$d||(this.Wd={zd:e,ot:A},this.Hd=a,this.jd=(function(l,c){const d=Math.log(c);return Math.log(1*d/-l)/d})(Math.abs(a),this.qd))}tc(e){const A=ue(this.Wd),t=e-A.ot;return A.zd+this.Hd*(Math.pow(this.qd,t)-1)/Math.log(this.qd)}Qu(e){return this.Wd===null||this.Zd(e)===this.jd}Zd(e){const A=e-ue(this.Wd).ot;return Math.min(A,this.jd)}}class vp{constructor(e,A){this.Xd=void 0,this.Kd=void 0,this.Gd=void 0,this.en=!1,this.Jd=e,this.Qd=A,this.tf()}bt(){this.tf()}if(){this.Xd&&this.Jd.removeChild(this.Xd),this.Kd&&this.Jd.removeChild(this.Kd),this.Xd=void 0,this.Kd=void 0}nf(){return this.en!==this.sf()||this.Gd!==this.ef()}ef(){return Sa(xr(this.Qd.W().layout.textColor))>160?"dark":"light"}sf(){return this.Qd.W().layout.attributionLogo}rf(){const e=new URL(location.href);return e.hostname?"&utm_source="+e.hostname+e.pathname:""}tf(){this.nf()&&(this.if(),this.en=this.sf(),this.en&&(this.Gd=this.ef(),this.Kd=document.createElement("style"),this.Kd.innerText="a#tv-attr-logo{--fill:#131722;--stroke:#fff;position:absolute;left:10px;bottom:10px;height:19px;width:35px;margin:0;padding:0;border:0;z-index:3;}a#tv-attr-logo[data-dark]{--fill:#D1D4DC;--stroke:#131722;}",this.Xd=document.createElement("a"),this.Xd.href=`https://www.tradingview.com/?utm_medium=lwc-link&utm_campaign=lwc-chart${this.rf()}`,this.Xd.title="Charting by TradingView",this.Xd.id="tv-attr-logo",this.Xd.target="_blank",this.Xd.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 19" width="35" height="19" fill="none"><g fill-rule="evenodd" clip-path="url(#a)" clip-rule="evenodd"><path fill="var(--stroke)" d="M2 0H0v10h6v9h21.4l.5-1.3 6-15 1-2.7H23.7l-.5 1.3-.2.6a5 5 0 0 0-7-.9V0H2Zm20 17h4l5.2-13 .8-2h-7l-1 2.5-.2.5-1.5 3.8-.3.7V17Zm-.8-10a3 3 0 0 0 .7-2.7A3 3 0 1 0 16.8 7h4.4ZM14 7V2H2v6h6v9h4V7h2Z"/><path fill="var(--fill)" d="M14 2H2v6h6v9h6V2Zm12 15h-7l6-15h7l-6 15Zm-7-9a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"/></g><defs><clipPath id="a"><path fill="var(--stroke)" d="M0 0h35v19H0z"/></clipPath></defs></svg>',this.Xd.toggleAttribute("data-dark",this.Gd==="dark"),this.Jd.appendChild(this.Kd),this.Jd.appendChild(this.Xd)))}}function Gt(r,e){const A=ue(r.ownerDocument).createElement("canvas");r.appendChild(A);const t=Hd(A,{options:{allowResizeObserver:!1},transform:(i,n)=>({width:Math.max(i.width,n.width),height:Math.max(i.height,n.height)})});return t.resizeCanvasElement(e),t}function Rt(r){var e;r.width=1,r.height=1,(e=r.getContext("2d"))===null||e===void 0||e.clearRect(0,0,1,1)}function Es(r,e,A,t){r.gl&&r.gl(e,A,t)}function Ii(r,e,A,t){r.X(e,A,t)}function Ss(r,e,A,t){const i=r(A,t);for(const n of i){const s=n.gt();s!==null&&e(s)}}function yp(r){or&&window.chrome!==void 0&&r.addEventListener("mousedown",(e=>{if(e.button===1)return e.preventDefault(),!1}))}class Hs{constructor(e,A,t){this.hf=0,this.lf=null,this.af={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY},this._f=0,this.uf=null,this.cf={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY},this.df=null,this.ff=!1,this.vf=null,this.pf=null,this.mf=!1,this.bf=!1,this.wf=!1,this.gf=null,this.Mf=null,this.xf=null,this.Sf=null,this.kf=null,this.yf=null,this.Cf=null,this.Tf=0,this.Pf=!1,this.Rf=!1,this.Df=!1,this.Vf=0,this.Of=null,this.Bf=!Qs(),this.Af=i=>{this.If(i)},this.zf=i=>{if(this.Lf(i)){const n=this.Ef(i);if(++this._f,this.uf&&this._f>1){const{Nf:s}=this.Ff(at(i),this.cf);s<30&&!this.wf&&this.Wf(n,this.Hf.jf),this.$f()}}else{const n=this.Ef(i);if(++this.hf,this.lf&&this.hf>1){const{Nf:s}=this.Ff(at(i),this.af);s<5&&!this.bf&&this.Uf(n,this.Hf.qf),this.Yf()}}},this.Zf=e,this.Hf=A,this.cn=t,this.Xf()}S(){this.gf!==null&&(this.gf(),this.gf=null),this.Mf!==null&&(this.Mf(),this.Mf=null),this.Sf!==null&&(this.Sf(),this.Sf=null),this.kf!==null&&(this.kf(),this.kf=null),this.yf!==null&&(this.yf(),this.yf=null),this.xf!==null&&(this.xf(),this.xf=null),this.Kf(),this.Yf()}Gf(e){this.Sf&&this.Sf();const A=this.Jf.bind(this);if(this.Sf=()=>{this.Zf.removeEventListener("mousemove",A)},this.Zf.addEventListener("mousemove",A),this.Lf(e))return;const t=this.Ef(e);this.Uf(t,this.Hf.Qf),this.Bf=!0}Yf(){this.lf!==null&&clearTimeout(this.lf),this.hf=0,this.lf=null,this.af={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY}}$f(){this.uf!==null&&clearTimeout(this.uf),this._f=0,this.uf=null,this.cf={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY}}Jf(e){if(this.Df||this.pf!==null||this.Lf(e))return;const A=this.Ef(e);this.Uf(A,this.Hf.tv),this.Bf=!0}iv(e){const A=Ls(e.changedTouches,ue(this.Of));if(A===null||(this.Vf=_i(e),this.Cf!==null)||this.Rf)return;this.Pf=!0;const t=this.Ff(at(A),ue(this.pf)),{nv:i,sv:n,Nf:s}=t;if(this.mf||!(s<5)){if(!this.mf){const o=.5*i,a=n>=o&&!this.cn.ev(),l=o>n&&!this.cn.rv();a||l||(this.Rf=!0),this.mf=!0,this.wf=!0,this.Kf(),this.$f()}if(!this.Rf){const o=this.Ef(e,A);this.Wf(o,this.Hf.hv),ar(e)}}}lv(e){if(e.button!==0)return;const A=this.Ff(at(e),ue(this.vf)),{Nf:t}=A;if(t>=5&&(this.bf=!0,this.Yf()),this.bf){const i=this.Ef(e);this.Uf(i,this.Hf.av)}}Ff(e,A){const t=Math.abs(A.nt-e.nt),i=Math.abs(A.st-e.st);return{nv:t,sv:i,Nf:t+i}}ov(e){let A=Ls(e.changedTouches,ue(this.Of));if(A===null&&e.touches.length===0&&(A=e.changedTouches[0]),A===null)return;this.Of=null,this.Vf=_i(e),this.Kf(),this.pf=null,this.yf&&(this.yf(),this.yf=null);const t=this.Ef(e,A);if(this.Wf(t,this.Hf._v),++this._f,this.uf&&this._f>1){const{Nf:i}=this.Ff(at(A),this.cf);i<30&&!this.wf&&this.Wf(t,this.Hf.jf),this.$f()}else this.wf||(this.Wf(t,this.Hf.uv),this.Hf.uv&&ar(e));this._f===0&&ar(e),e.touches.length===0&&this.ff&&(this.ff=!1,ar(e))}If(e){if(e.button!==0)return;const A=this.Ef(e);if(this.vf=null,this.Df=!1,this.kf&&(this.kf(),this.kf=null),xl()&&this.Zf.ownerDocument.documentElement.removeEventListener("mouseleave",this.Af),!this.Lf(e))if(this.Uf(A,this.Hf.cv),++this.hf,this.lf&&this.hf>1){const{Nf:t}=this.Ff(at(e),this.af);t<5&&!this.bf&&this.Uf(A,this.Hf.qf),this.Yf()}else this.bf||this.Uf(A,this.Hf.dv)}Kf(){this.df!==null&&(clearTimeout(this.df),this.df=null)}fv(e){if(this.Of!==null)return;const A=e.changedTouches[0];this.Of=A.identifier,this.Vf=_i(e);const t=this.Zf.ownerDocument.documentElement;this.wf=!1,this.mf=!1,this.Rf=!1,this.pf=at(A),this.yf&&(this.yf(),this.yf=null);{const n=this.iv.bind(this),s=this.ov.bind(this);this.yf=()=>{t.removeEventListener("touchmove",n),t.removeEventListener("touchend",s)},t.addEventListener("touchmove",n,{passive:!1}),t.addEventListener("touchend",s,{passive:!1}),this.Kf(),this.df=setTimeout(this.vv.bind(this,e),240)}const i=this.Ef(e,A);this.Wf(i,this.Hf.pv),this.uf||(this._f=0,this.uf=setTimeout(this.$f.bind(this),500),this.cf=at(A))}mv(e){if(e.button!==0)return;const A=this.Zf.ownerDocument.documentElement;xl()&&A.addEventListener("mouseleave",this.Af),this.bf=!1,this.vf=at(e),this.kf&&(this.kf(),this.kf=null);{const i=this.lv.bind(this),n=this.If.bind(this);this.kf=()=>{A.removeEventListener("mousemove",i),A.removeEventListener("mouseup",n)},A.addEventListener("mousemove",i),A.addEventListener("mouseup",n)}if(this.Df=!0,this.Lf(e))return;const t=this.Ef(e);this.Uf(t,this.Hf.bv),this.lf||(this.hf=0,this.lf=setTimeout(this.Yf.bind(this),500),this.af=at(e))}Xf(){this.Zf.addEventListener("mouseenter",this.Gf.bind(this)),this.Zf.addEventListener("touchcancel",this.Kf.bind(this));{const e=this.Zf.ownerDocument,A=t=>{this.Hf.wv&&(t.composed&&this.Zf.contains(t.composedPath()[0])||t.target&&this.Zf.contains(t.target)||this.Hf.wv())};this.Mf=()=>{e.removeEventListener("touchstart",A)},this.gf=()=>{e.removeEventListener("mousedown",A)},e.addEventListener("mousedown",A),e.addEventListener("touchstart",A,{passive:!0})}Qs()&&(this.xf=()=>{this.Zf.removeEventListener("dblclick",this.zf)},this.Zf.addEventListener("dblclick",this.zf)),this.Zf.addEventListener("mouseleave",this.gv.bind(this)),this.Zf.addEventListener("touchstart",this.fv.bind(this),{passive:!0}),yp(this.Zf),this.Zf.addEventListener("mousedown",this.mv.bind(this)),this.Mv(),this.Zf.addEventListener("touchmove",(()=>{}),{passive:!1})}Mv(){this.Hf.xv===void 0&&this.Hf.Sv===void 0&&this.Hf.kv===void 0||(this.Zf.addEventListener("touchstart",(e=>this.yv(e.touches)),{passive:!0}),this.Zf.addEventListener("touchmove",(e=>{if(e.touches.length===2&&this.Cf!==null&&this.Hf.Sv!==void 0){const A=Fl(e.touches[0],e.touches[1])/this.Tf;this.Hf.Sv(this.Cf,A),ar(e)}}),{passive:!1}),this.Zf.addEventListener("touchend",(e=>{this.yv(e.touches)})))}yv(e){e.length===1&&(this.Pf=!1),e.length!==2||this.Pf||this.ff?this.Cv():this.Tv(e)}Tv(e){const A=this.Zf.getBoundingClientRect()||{left:0,top:0};this.Cf={nt:(e[0].clientX-A.left+(e[1].clientX-A.left))/2,st:(e[0].clientY-A.top+(e[1].clientY-A.top))/2},this.Tf=Fl(e[0],e[1]),this.Hf.xv!==void 0&&this.Hf.xv(),this.Kf()}Cv(){this.Cf!==null&&(this.Cf=null,this.Hf.kv!==void 0&&this.Hf.kv())}gv(e){if(this.Sf&&this.Sf(),this.Lf(e)||!this.Bf)return;const A=this.Ef(e);this.Uf(A,this.Hf.Pv),this.Bf=!Qs()}vv(e){const A=Ls(e.touches,ue(this.Of));if(A===null)return;const t=this.Ef(e,A);this.Wf(t,this.Hf.Rv),this.wf=!0,this.ff=!0}Lf(e){return e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents!==void 0?e.sourceCapabilities.firesTouchEvents:_i(e)<this.Vf+500}Wf(e,A){A&&A.call(this.Hf,e)}Uf(e,A){A&&A.call(this.Hf,e)}Ef(e,A){const t=A||e,i=this.Zf.getBoundingClientRect()||{left:0,top:0};return{clientX:t.clientX,clientY:t.clientY,pageX:t.pageX,pageY:t.pageY,screenX:t.screenX,screenY:t.screenY,localX:t.clientX-i.left,localY:t.clientY-i.top,ctrlKey:e.ctrlKey,altKey:e.altKey,shiftKey:e.shiftKey,metaKey:e.metaKey,Dv:!e.type.startsWith("mouse")&&e.type!=="contextmenu"&&e.type!=="click",Vv:e.type,Ov:t.target,Bv:e.view,Av:()=>{e.type!=="touchstart"&&ar(e)}}}}function Fl(r,e){const A=r.clientX-e.clientX,t=r.clientY-e.clientY;return Math.sqrt(A*A+t*t)}function ar(r){r.cancelable&&r.preventDefault()}function at(r){return{nt:r.pageX,st:r.pageY}}function _i(r){return r.timeStamp||performance.now()}function Ls(r,e){for(let A=0;A<r.length;++A)if(r[A].identifier===e)return r[A];return null}function Di(r){return{Hc:r.Hc,Iv:{gr:r.zv.externalId},Lv:r.zv.cursorStyle}}function bp(r,e,A){for(const t of r){const i=t.gt();if(i!==null&&i.wr){const n=i.wr(e,A);if(n!==null)return{Bv:t,Iv:n}}}return null}function Ms(r,e){return A=>{var t,i,n,s;return((i=(t=A.Dt())===null||t===void 0?void 0:t.Pa())!==null&&i!==void 0?i:"")!==e?[]:(s=(n=A.da)===null||n===void 0?void 0:n.call(A,r))!==null&&s!==void 0?s:[]}}function Ul(r,e,A,t){if(!r.length)return;let i=0;const n=A/2,s=r[0].At(t,!0);let o=e===1?n-(r[0].Vi()-s/2):r[0].Vi()-s/2-n;o=Math.max(0,o);for(let a=1;a<r.length;a++){const l=r[a],c=r[a-1],d=c.At(t,!1),p=l.Vi(),y=c.Vi();if(e===1?p>y-d:p<y+d){const w=y-d*e;l.Oi(w);const C=w-e*d/2;if((e===1?C<0:C>A)&&o>0){const v=e===1?-1-C:C-A,S=Math.min(v,o);for(let F=i;F<r.length;F++)r[F].Oi(r[F].Vi()+e*S);o-=S}}else i=a,o=e===1?y-d-p:p-(y+d)}}class El{constructor(e,A,t,i){this.Li=null,this.Ev=null,this.Nv=!1,this.Fv=new Hr(200),this.Qr=null,this.Wv=0,this.jv=!1,this.Hv=()=>{this.jv||this.tn.$v().$t().Uh()},this.Uv=()=>{this.jv||this.tn.$v().$t().Uh()},this.tn=e,this.cn=A,this.ko=A.layout,this.Oc=t,this.qv=i==="left",this.Yv=Ms("normal",i),this.Zv=Ms("top",i),this.Xv=Ms("bottom",i),this.Kv=document.createElement("div"),this.Kv.style.height="100%",this.Kv.style.overflow="hidden",this.Kv.style.width="25px",this.Kv.style.left="0",this.Kv.style.position="relative",this.Gv=Gt(this.Kv,sA({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv);const n=this.Gv.canvasElement;n.style.position="absolute",n.style.zIndex="1",n.style.left="0",n.style.top="0",this.Jv=Gt(this.Kv,sA({width:16,height:16})),this.Jv.subscribeSuggestedBitmapSizeChanged(this.Uv);const s=this.Jv.canvasElement;s.style.position="absolute",s.style.zIndex="2",s.style.left="0",s.style.top="0";const o={bv:this.Qv.bind(this),pv:this.Qv.bind(this),av:this.tp.bind(this),hv:this.tp.bind(this),wv:this.ip.bind(this),cv:this.np.bind(this),_v:this.np.bind(this),qf:this.sp.bind(this),jf:this.sp.bind(this),Qf:this.ep.bind(this),Pv:this.rp.bind(this)};this.hp=new Hs(this.Jv.canvasElement,o,{ev:()=>!this.cn.handleScroll.vertTouchDrag,rv:()=>!0})}S(){this.hp.S(),this.Jv.unsubscribeSuggestedBitmapSizeChanged(this.Uv),Rt(this.Jv.canvasElement),this.Jv.dispose(),this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),Rt(this.Gv.canvasElement),this.Gv.dispose(),this.Li!==null&&this.Li.Ko().p(this),this.Li=null}lp(){return this.Kv}P(){return this.ko.fontSize}ap(){const e=this.Oc.W();return this.Qr!==e.R&&(this.Fv.nr(),this.Qr=e.R),e}op(){if(this.Li===null)return 0;let e=0;const A=this.ap(),t=ue(this.Gv.canvasElement.getContext("2d"));t.save();const i=this.Li.Ha();t.font=this._p(),i.length>0&&(e=Math.max(this.Fv.xi(t,i[0].so),this.Fv.xi(t,i[i.length-1].so)));const n=this.up();for(let l=n.length;l--;){const c=this.Fv.xi(t,n[l].Kt());c>e&&(e=c)}const s=this.Li.Ct();if(s!==null&&this.Ev!==null&&(o=this.cn.crosshair).mode!==2&&o.horzLine.visible&&o.horzLine.labelVisible){const l=this.Li.pn(1,s),c=this.Li.pn(this.Ev.height-2,s);e=Math.max(e,this.Fv.xi(t,this.Li.Fi(Math.floor(Math.min(l,c))+.11111111111111,s)),this.Fv.xi(t,this.Li.Fi(Math.ceil(Math.max(l,c))-.11111111111111,s)))}var o;t.restore();const a=e||34;return xs(Math.ceil(A.C+A.T+A.A+A.I+5+a))}cp(e){this.Ev!==null&&Pt(this.Ev,e)||(this.Ev=e,this.jv=!0,this.Gv.resizeCanvasElement(e),this.Jv.resizeCanvasElement(e),this.jv=!1,this.Kv.style.width=`${e.width}px`,this.Kv.style.height=`${e.height}px`)}dp(){return ue(this.Ev).width}Gi(e){this.Li!==e&&(this.Li!==null&&this.Li.Ko().p(this),this.Li=e,e.Ko().l(this.fo.bind(this),this))}Dt(){return this.Li}nr(){const e=this.tn.fp();this.tn.$v().$t().E_(e,ue(this.Dt()))}vp(e){if(this.Ev===null)return;if(e!==1){this.pp(),this.Gv.applySuggestedBitmapSize();const t=Vt(this.Gv);t!==null&&(t.useBitmapCoordinateSpace((i=>{this.mp(i),this.Ie(i)})),this.tn.bp(t,this.Xv),this.wp(t),this.tn.bp(t,this.Yv),this.gp(t))}this.Jv.applySuggestedBitmapSize();const A=Vt(this.Jv);A!==null&&(A.useBitmapCoordinateSpace((({context:t,bitmapSize:i})=>{t.clearRect(0,0,i.width,i.height)})),this.Mp(A),this.tn.bp(A,this.Zv))}xp(){return this.Gv.bitmapSize}Sp(e,A,t){const i=this.xp();i.width>0&&i.height>0&&e.drawImage(this.Gv.canvasElement,A,t)}bt(){var e;(e=this.Li)===null||e===void 0||e.Ha()}Qv(e){if(this.Li===null||this.Li.Ni()||!this.cn.handleScale.axisPressedMouseMove.price)return;const A=this.tn.$v().$t(),t=this.tn.fp();this.Nv=!0,A.V_(t,this.Li,e.localY)}tp(e){if(this.Li===null||!this.cn.handleScale.axisPressedMouseMove.price)return;const A=this.tn.$v().$t(),t=this.tn.fp(),i=this.Li;A.O_(t,i,e.localY)}ip(){if(this.Li===null||!this.cn.handleScale.axisPressedMouseMove.price)return;const e=this.tn.$v().$t(),A=this.tn.fp(),t=this.Li;this.Nv&&(this.Nv=!1,e.B_(A,t))}np(e){if(this.Li===null||!this.cn.handleScale.axisPressedMouseMove.price)return;const A=this.tn.$v().$t(),t=this.tn.fp();this.Nv=!1,A.B_(t,this.Li)}sp(e){this.cn.handleScale.axisDoubleClickReset.price&&this.nr()}ep(e){this.Li!==null&&(!this.tn.$v().$t().W().handleScale.axisPressedMouseMove.price||this.Li.Mh()||this.Li.Oo()||this.kp(1))}rp(e){this.kp(0)}up(){const e=[],A=this.Li===null?void 0:this.Li;return(t=>{for(let i=0;i<t.length;++i){const n=t[i].Rn(this.tn.fp(),A);for(let s=0;s<n.length;s++)e.push(n[s])}})(this.tn.fp().Uo()),e}mp({context:e,bitmapSize:A}){const{width:t,height:i}=A,n=this.tn.fp().$t(),s=n.q(),o=n.bd();s===o?yi(e,0,0,t,i,s):Ma(e,0,0,t,i,s,o)}Ie({context:e,bitmapSize:A,horizontalPixelRatio:t}){if(this.Ev===null||this.Li===null||!this.Li.W().borderVisible)return;e.fillStyle=this.Li.W().borderColor;const i=Math.max(1,Math.floor(this.ap().C*t));let n;n=this.qv?A.width-i:0,e.fillRect(n,0,i,A.height)}wp(e){if(this.Ev===null||this.Li===null)return;const A=this.Li.Ha(),t=this.Li.W(),i=this.ap(),n=this.qv?this.Ev.width-i.T:0;t.borderVisible&&t.ticksVisible&&e.useBitmapCoordinateSpace((({context:s,horizontalPixelRatio:o,verticalPixelRatio:a})=>{s.fillStyle=t.borderColor;const l=Math.max(1,Math.floor(a)),c=Math.floor(.5*a),d=Math.round(i.T*o);s.beginPath();for(const p of A)s.rect(Math.floor(n*o),Math.round(p.Ea*a)-c,d,l);s.fill()})),e.useMediaCoordinateSpace((({context:s})=>{var o;s.font=this._p(),s.fillStyle=(o=t.textColor)!==null&&o!==void 0?o:this.ko.textColor,s.textAlign=this.qv?"right":"left",s.textBaseline="middle";const a=this.qv?Math.round(n-i.A):Math.round(n+i.T+i.A),l=A.map((c=>this.Fv.Mi(s,c.so)));for(let c=A.length;c--;){const d=A[c];s.fillText(d.so,a,d.Ea+l[c])}}))}pp(){if(this.Ev===null||this.Li===null)return;const e=[],A=this.Li.Uo().slice(),t=this.tn.fp(),i=this.ap();this.Li===t.pr()&&this.tn.fp().Uo().forEach((s=>{t.vr(s)&&A.push(s)}));const n=this.Li;A.forEach((s=>{s.Rn(t,n).forEach((o=>{o.Oi(null),o.Bi()&&e.push(o)}))})),e.forEach((s=>s.Oi(s.ki()))),this.Li.W().alignLabels&&this.yp(e,i)}yp(e,A){if(this.Ev===null)return;const t=this.Ev.height/2,i=e.filter((s=>s.ki()<=t)),n=e.filter((s=>s.ki()>t));i.sort(((s,o)=>o.ki()-s.ki())),n.sort(((s,o)=>s.ki()-o.ki()));for(const s of e){const o=Math.floor(s.At(A)/2),a=s.ki();a>-o&&a<o&&s.Oi(o),a>this.Ev.height-o&&a<this.Ev.height+o&&s.Oi(this.Ev.height-o)}Ul(i,1,this.Ev.height,A),Ul(n,-1,this.Ev.height,A)}gp(e){if(this.Ev===null)return;const A=this.up(),t=this.ap(),i=this.qv?"right":"left";A.forEach((n=>{n.Ai()&&n.gt(ue(this.Li)).X(e,t,this.Fv,i)}))}Mp(e){if(this.Ev===null||this.Li===null)return;const A=this.tn.$v().$t(),t=[],i=this.tn.fp(),n=A.Zc().Rn(i,this.Li);n.length&&t.push(n);const s=this.ap(),o=this.qv?"right":"left";t.forEach((a=>{a.forEach((l=>{l.gt(ue(this.Li)).X(e,s,this.Fv,o)}))}))}kp(e){this.Kv.style.cursor=e===1?"ns-resize":"default"}fo(){const e=this.op();this.Wv<e&&this.tn.$v().$t().Kl(),this.Wv=e}_p(){return ir(this.ko.fontSize,this.ko.fontFamily)}}function Tp(r,e){var A,t;return(t=(A=r.ua)===null||A===void 0?void 0:A.call(r,e))!==null&&t!==void 0?t:[]}function ki(r,e){var A,t;return(t=(A=r.Pn)===null||A===void 0?void 0:A.call(r,e))!==null&&t!==void 0?t:[]}function Qp(r,e){var A,t;return(t=(A=r.Ji)===null||A===void 0?void 0:A.call(r,e))!==null&&t!==void 0?t:[]}function xp(r,e){var A,t;return(t=(A=r.aa)===null||A===void 0?void 0:A.call(r,e))!==null&&t!==void 0?t:[]}class Is{constructor(e,A){this.Ev=sA({width:0,height:0}),this.Cp=null,this.Tp=null,this.Pp=null,this.Rp=null,this.Dp=!1,this.Vp=new uA,this.Op=new uA,this.Bp=0,this.Ap=!1,this.Ip=null,this.zp=!1,this.Lp=null,this.Ep=null,this.jv=!1,this.Hv=()=>{this.jv||this.Np===null||this.$i().Uh()},this.Uv=()=>{this.jv||this.Np===null||this.$i().Uh()},this.Qd=e,this.Np=A,this.Np.W_().l(this.Fp.bind(this),this,!0),this.Wp=document.createElement("td"),this.Wp.style.padding="0",this.Wp.style.position="relative";const t=document.createElement("div");t.style.width="100%",t.style.height="100%",t.style.position="relative",t.style.overflow="hidden",this.jp=document.createElement("td"),this.jp.style.padding="0",this.Hp=document.createElement("td"),this.Hp.style.padding="0",this.Wp.appendChild(t),this.Gv=Gt(t,sA({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv);const i=this.Gv.canvasElement;i.style.position="absolute",i.style.zIndex="1",i.style.left="0",i.style.top="0",this.Jv=Gt(t,sA({width:16,height:16})),this.Jv.subscribeSuggestedBitmapSizeChanged(this.Uv);const n=this.Jv.canvasElement;n.style.position="absolute",n.style.zIndex="2",n.style.left="0",n.style.top="0",this.$p=document.createElement("tr"),this.$p.appendChild(this.jp),this.$p.appendChild(this.Wp),this.$p.appendChild(this.Hp),this.Up(),this.hp=new Hs(this.Jv.canvasElement,this,{ev:()=>this.Ip===null&&!this.Qd.W().handleScroll.vertTouchDrag,rv:()=>this.Ip===null&&!this.Qd.W().handleScroll.horzTouchDrag})}S(){this.Cp!==null&&this.Cp.S(),this.Tp!==null&&this.Tp.S(),this.Pp=null,this.Jv.unsubscribeSuggestedBitmapSizeChanged(this.Uv),Rt(this.Jv.canvasElement),this.Jv.dispose(),this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),Rt(this.Gv.canvasElement),this.Gv.dispose(),this.Np!==null&&this.Np.W_().p(this),this.hp.S()}fp(){return ue(this.Np)}qp(e){var A,t;this.Np!==null&&this.Np.W_().p(this),this.Np=e,this.Np!==null&&this.Np.W_().l(Is.prototype.Fp.bind(this),this,!0),this.Up(),this.Qd.Yp().indexOf(this)===this.Qd.Yp().length-1?(this.Pp=(A=this.Pp)!==null&&A!==void 0?A:new vp(this.Wp,this.Qd),this.Pp.bt()):((t=this.Pp)===null||t===void 0||t.if(),this.Pp=null)}$v(){return this.Qd}lp(){return this.$p}Up(){if(this.Np!==null&&(this.Zp(),this.$i().wt().length!==0)){if(this.Cp!==null){const e=this.Np.R_();this.Cp.Gi(ue(e))}if(this.Tp!==null){const e=this.Np.D_();this.Tp.Gi(ue(e))}}}Xp(){this.Cp!==null&&this.Cp.bt(),this.Tp!==null&&this.Tp.bt()}M_(){return this.Np!==null?this.Np.M_():0}x_(e){this.Np&&this.Np.x_(e)}Qf(e){if(!this.Np)return;this.Kp();const A=e.localX,t=e.localY;this.Gp(A,t,e)}bv(e){this.Kp(),this.Jp(),this.Gp(e.localX,e.localY,e)}tv(e){var A;if(!this.Np)return;this.Kp();const t=e.localX,i=e.localY;this.Gp(t,i,e);const n=this.wr(t,i);this.Qd.Qp((A=n?.Lv)!==null&&A!==void 0?A:null),this.$i().jc(n&&{Hc:n.Hc,Iv:n.Iv})}dv(e){this.Np!==null&&(this.Kp(),this.tm(e))}qf(e){this.Np!==null&&this.im(this.Op,e)}jf(e){this.qf(e)}av(e){this.Kp(),this.nm(e),this.Gp(e.localX,e.localY,e)}cv(e){this.Np!==null&&(this.Kp(),this.Ap=!1,this.sm(e))}uv(e){this.Np!==null&&this.tm(e)}Rv(e){if(this.Ap=!0,this.Ip===null){const A={x:e.localX,y:e.localY};this.rm(A,A,e)}}Pv(e){this.Np!==null&&(this.Kp(),this.Np.$t().jc(null),this.hm())}lm(){return this.Vp}am(){return this.Op}xv(){this.Bp=1,this.$i().Un()}Sv(e,A){if(!this.Qd.W().handleScale.pinch)return;const t=5*(A-this.Bp);this.Bp=A,this.$i().Qc(e.nt,t)}pv(e){this.Ap=!1,this.zp=this.Ip!==null,this.Jp();const A=this.$i().Zc();this.Ip!==null&&A.yt()&&(this.Lp={x:A.Yt(),y:A.Zt()},this.Ip={x:e.localX,y:e.localY})}hv(e){if(this.Np===null)return;const A=e.localX,t=e.localY;if(this.Ip===null)this.nm(e);else{this.zp=!1;const i=ue(this.Lp),n=i.x+(A-this.Ip.x),s=i.y+(t-this.Ip.y);this.Gp(n,s,e)}}_v(e){this.$v().W().trackingMode.exitMode===0&&(this.zp=!0),this.om(),this.sm(e)}wr(e,A){const t=this.Np;return t===null?null:(function(i,n,s){const o=i.Uo(),a=(function(l,c,d){var p,y;let w,C;for(const F of l){const k=(y=(p=F.va)===null||p===void 0?void 0:p.call(F,c,d))!==null&&y!==void 0?y:[];for(const x of k)v=x.zOrder,(!(S=w?.zOrder)||v==="top"&&S!=="top"||v==="normal"&&S==="bottom")&&(w=x,C=F)}var v,S;return w&&C?{zv:w,Hc:C}:null})(o,n,s);if(a?.zv.zOrder==="top")return Di(a);for(const l of o){if(a&&a.Hc===l&&a.zv.zOrder!=="bottom"&&!a.zv.isBackground)return Di(a);const c=bp(l.Pn(i),n,s);if(c!==null)return{Hc:l,Bv:c.Bv,Iv:c.Iv};if(a&&a.Hc===l&&a.zv.zOrder!=="bottom"&&a.zv.isBackground)return Di(a)}return a?.zv?Di(a):null})(t,e,A)}_m(e,A){ue(A==="left"?this.Cp:this.Tp).cp(sA({width:e,height:this.Ev.height}))}um(){return this.Ev}cp(e){Pt(this.Ev,e)||(this.Ev=e,this.jv=!0,this.Gv.resizeCanvasElement(e),this.Jv.resizeCanvasElement(e),this.jv=!1,this.Wp.style.width=e.width+"px",this.Wp.style.height=e.height+"px")}dm(){const e=ue(this.Np);e.P_(e.R_()),e.P_(e.D_());for(const A of e.Ba())if(e.vr(A)){const t=A.Dt();t!==null&&e.P_(t),A.Vn()}}xp(){return this.Gv.bitmapSize}Sp(e,A,t){const i=this.xp();i.width>0&&i.height>0&&e.drawImage(this.Gv.canvasElement,A,t)}vp(e){if(e===0||this.Np===null)return;if(e>1&&this.dm(),this.Cp!==null&&this.Cp.vp(e),this.Tp!==null&&this.Tp.vp(e),e!==1){this.Gv.applySuggestedBitmapSize();const t=Vt(this.Gv);t!==null&&(t.useBitmapCoordinateSpace((i=>{this.mp(i)})),this.Np&&(this.fm(t,Tp),this.vm(t),this.pm(t),this.fm(t,ki),this.fm(t,Qp)))}this.Jv.applySuggestedBitmapSize();const A=Vt(this.Jv);A!==null&&(A.useBitmapCoordinateSpace((({context:t,bitmapSize:i})=>{t.clearRect(0,0,i.width,i.height)})),this.bm(A),this.fm(A,xp))}wm(){return this.Cp}gm(){return this.Tp}bp(e,A){this.fm(e,A)}Fp(){this.Np!==null&&this.Np.W_().p(this),this.Np=null}tm(e){this.im(this.Vp,e)}im(e,A){const t=A.localX,i=A.localY;e.M()&&e.m(this.$i().St().Nu(t),{x:t,y:i},A)}mp({context:e,bitmapSize:A}){const{width:t,height:i}=A,n=this.$i(),s=n.q(),o=n.bd();s===o?yi(e,0,0,t,i,o):Ma(e,0,0,t,i,s,o)}vm(e){const A=ue(this.Np).j_().qh().gt();A!==null&&A.X(e,!1)}pm(e){const A=this.$i().Yc();this.Mm(e,ki,Es,A),this.Mm(e,ki,Ii,A)}bm(e){this.Mm(e,ki,Ii,this.$i().Zc())}fm(e,A){const t=ue(this.Np).Uo();for(const i of t)this.Mm(e,A,Es,i);for(const i of t)this.Mm(e,A,Ii,i)}Mm(e,A,t,i){const n=ue(this.Np),s=n.$t().Wc(),o=s!==null&&s.Hc===i,a=s!==null&&o&&s.Iv!==void 0?s.Iv.Mr:void 0;Ss(A,(l=>t(l,e,o,a)),i,n)}Zp(){if(this.Np===null)return;const e=this.Qd,A=this.Np.R_().W().visible,t=this.Np.D_().W().visible;A||this.Cp===null||(this.jp.removeChild(this.Cp.lp()),this.Cp.S(),this.Cp=null),t||this.Tp===null||(this.Hp.removeChild(this.Tp.lp()),this.Tp.S(),this.Tp=null);const i=e.$t().ud();A&&this.Cp===null&&(this.Cp=new El(this,e.W(),i,"left"),this.jp.appendChild(this.Cp.lp())),t&&this.Tp===null&&(this.Tp=new El(this,e.W(),i,"right"),this.Hp.appendChild(this.Tp.lp()))}xm(e){return e.Dv&&this.Ap||this.Ip!==null}Sm(e){return Math.max(0,Math.min(e,this.Ev.width-1))}km(e){return Math.max(0,Math.min(e,this.Ev.height-1))}Gp(e,A,t){this.$i().ld(this.Sm(e),this.km(A),t,ue(this.Np))}hm(){this.$i().od()}om(){this.zp&&(this.Ip=null,this.hm())}rm(e,A,t){this.Ip=e,this.zp=!1,this.Gp(A.x,A.y,t);const i=this.$i().Zc();this.Lp={x:i.Yt(),y:i.Zt()}}$i(){return this.Qd.$t()}sm(e){if(!this.Dp)return;const A=this.$i(),t=this.fp();if(A.z_(t,t.vn()),this.Rp=null,this.Dp=!1,A.ed(),this.Ep!==null){const i=performance.now(),n=A.St();this.Ep.Vr(n.Hu(),i),this.Ep.Qu(i)||A.Zn(this.Ep)}}Kp(){this.Ip=null}Jp(){if(this.Np){if(this.$i().Un(),document.activeElement!==document.body&&document.activeElement!==document.documentElement)ue(document.activeElement).blur();else{const e=document.getSelection();e!==null&&e.removeAllRanges()}!this.Np.vn().Ni()&&this.$i().St().Ni()}}nm(e){if(this.Np===null)return;const A=this.$i(),t=A.St();if(t.Ni())return;const i=this.Qd.W(),n=i.handleScroll,s=i.kineticScroll;if((!n.pressedMouseMove||e.Dv)&&(!n.horzTouchDrag&&!n.vertTouchDrag||!e.Dv))return;const o=this.Np.vn(),a=performance.now();if(this.Rp!==null||this.xm(e)||(this.Rp={x:e.clientX,y:e.clientY,Od:a,ym:e.localX,Cm:e.localY}),this.Rp!==null&&!this.Dp&&(this.Rp.x!==e.clientX||this.Rp.y!==e.clientY)){if(e.Dv&&s.touch||!e.Dv&&s.mouse){const l=t.le();this.Ep=new Cp(.2/l,7/l,.997,15/l),this.Ep.Yd(t.Hu(),this.Rp.Od)}else this.Ep=null;o.Ni()||A.A_(this.Np,o,e.localY),A.nd(e.localX),this.Dp=!0}this.Dp&&(o.Ni()||A.I_(this.Np,o,e.localY),A.sd(e.localX),this.Ep!==null&&this.Ep.Yd(t.Hu(),a))}}class Sl{constructor(e,A,t,i,n){this.ft=!0,this.Ev=sA({width:0,height:0}),this.Hv=()=>this.vp(3),this.qv=e==="left",this.Oc=t.ud,this.cn=A,this.Tm=i,this.Pm=n,this.Kv=document.createElement("div"),this.Kv.style.width="25px",this.Kv.style.height="100%",this.Kv.style.overflow="hidden",this.Gv=Gt(this.Kv,sA({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv)}S(){this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),Rt(this.Gv.canvasElement),this.Gv.dispose()}lp(){return this.Kv}um(){return this.Ev}cp(e){Pt(this.Ev,e)||(this.Ev=e,this.Gv.resizeCanvasElement(e),this.Kv.style.width=`${e.width}px`,this.Kv.style.height=`${e.height}px`,this.ft=!0)}vp(e){if(e<3&&!this.ft||this.Ev.width===0||this.Ev.height===0)return;this.ft=!1,this.Gv.applySuggestedBitmapSize();const A=Vt(this.Gv);A!==null&&A.useBitmapCoordinateSpace((t=>{this.mp(t),this.Ie(t)}))}xp(){return this.Gv.bitmapSize}Sp(e,A,t){const i=this.xp();i.width>0&&i.height>0&&e.drawImage(this.Gv.canvasElement,A,t)}Ie({context:e,bitmapSize:A,horizontalPixelRatio:t,verticalPixelRatio:i}){if(!this.Tm())return;e.fillStyle=this.cn.timeScale.borderColor;const n=Math.floor(this.Oc.W().C*t),s=Math.floor(this.Oc.W().C*i),o=this.qv?A.width-n:0;e.fillRect(o,0,n,s)}mp({context:e,bitmapSize:A}){yi(e,0,0,A.width,A.height,this.Pm())}}function _s(r){return e=>{var A,t;return(t=(A=e.fa)===null||A===void 0?void 0:A.call(e,r))!==null&&t!==void 0?t:[]}}const Fp=_s("normal"),Up=_s("top"),Ep=_s("bottom");class Sp{constructor(e,A){this.Rm=null,this.Dm=null,this.k=null,this.Vm=!1,this.Ev=sA({width:0,height:0}),this.Om=new uA,this.Fv=new Hr(5),this.jv=!1,this.Hv=()=>{this.jv||this.Qd.$t().Uh()},this.Uv=()=>{this.jv||this.Qd.$t().Uh()},this.Qd=e,this.q_=A,this.cn=e.W().layout,this.Xd=document.createElement("tr"),this.Bm=document.createElement("td"),this.Bm.style.padding="0",this.Am=document.createElement("td"),this.Am.style.padding="0",this.Kv=document.createElement("td"),this.Kv.style.height="25px",this.Kv.style.padding="0",this.Im=document.createElement("div"),this.Im.style.width="100%",this.Im.style.height="100%",this.Im.style.position="relative",this.Im.style.overflow="hidden",this.Kv.appendChild(this.Im),this.Gv=Gt(this.Im,sA({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv);const t=this.Gv.canvasElement;t.style.position="absolute",t.style.zIndex="1",t.style.left="0",t.style.top="0",this.Jv=Gt(this.Im,sA({width:16,height:16})),this.Jv.subscribeSuggestedBitmapSizeChanged(this.Uv);const i=this.Jv.canvasElement;i.style.position="absolute",i.style.zIndex="2",i.style.left="0",i.style.top="0",this.Xd.appendChild(this.Bm),this.Xd.appendChild(this.Kv),this.Xd.appendChild(this.Am),this.zm(),this.Qd.$t().g_().l(this.zm.bind(this),this),this.hp=new Hs(this.Jv.canvasElement,this,{ev:()=>!0,rv:()=>!this.Qd.W().handleScroll.horzTouchDrag})}S(){this.hp.S(),this.Rm!==null&&this.Rm.S(),this.Dm!==null&&this.Dm.S(),this.Jv.unsubscribeSuggestedBitmapSizeChanged(this.Uv),Rt(this.Jv.canvasElement),this.Jv.dispose(),this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),Rt(this.Gv.canvasElement),this.Gv.dispose()}lp(){return this.Xd}Lm(){return this.Rm}Em(){return this.Dm}bv(e){if(this.Vm)return;this.Vm=!0;const A=this.Qd.$t();!A.St().Ni()&&this.Qd.W().handleScale.axisPressedMouseMove.time&&A.Jc(e.localX)}pv(e){this.bv(e)}wv(){const e=this.Qd.$t();!e.St().Ni()&&this.Vm&&(this.Vm=!1,this.Qd.W().handleScale.axisPressedMouseMove.time&&e.hd())}av(e){const A=this.Qd.$t();!A.St().Ni()&&this.Qd.W().handleScale.axisPressedMouseMove.time&&A.rd(e.localX)}hv(e){this.av(e)}cv(){this.Vm=!1;const e=this.Qd.$t();e.St().Ni()&&!this.Qd.W().handleScale.axisPressedMouseMove.time||e.hd()}_v(){this.cv()}qf(){this.Qd.W().handleScale.axisDoubleClickReset.time&&this.Qd.$t().Kn()}jf(){this.qf()}Qf(){this.Qd.$t().W().handleScale.axisPressedMouseMove.time&&this.kp(1)}Pv(){this.kp(0)}um(){return this.Ev}Nm(){return this.Om}Fm(e,A,t){Pt(this.Ev,e)||(this.Ev=e,this.jv=!0,this.Gv.resizeCanvasElement(e),this.Jv.resizeCanvasElement(e),this.jv=!1,this.Kv.style.width=`${e.width}px`,this.Kv.style.height=`${e.height}px`,this.Om.m(e)),this.Rm!==null&&this.Rm.cp(sA({width:A,height:e.height})),this.Dm!==null&&this.Dm.cp(sA({width:t,height:e.height}))}Wm(){const e=this.jm();return Math.ceil(e.C+e.T+e.P+e.L+e.B+e.Hm)}bt(){this.Qd.$t().St().Ha()}xp(){return this.Gv.bitmapSize}Sp(e,A,t){const i=this.xp();i.width>0&&i.height>0&&e.drawImage(this.Gv.canvasElement,A,t)}vp(e){if(e===0)return;if(e!==1){this.Gv.applySuggestedBitmapSize();const t=Vt(this.Gv);t!==null&&(t.useBitmapCoordinateSpace((i=>{this.mp(i),this.Ie(i),this.$m(t,Ep)})),this.wp(t),this.$m(t,Fp)),this.Rm!==null&&this.Rm.vp(e),this.Dm!==null&&this.Dm.vp(e)}this.Jv.applySuggestedBitmapSize();const A=Vt(this.Jv);A!==null&&(A.useBitmapCoordinateSpace((({context:t,bitmapSize:i})=>{t.clearRect(0,0,i.width,i.height)})),this.Um([...this.Qd.$t().wt(),this.Qd.$t().Zc()],A),this.$m(A,Up))}$m(e,A){const t=this.Qd.$t().wt();for(const i of t)Ss(A,(n=>Es(n,e,!1,void 0)),i,void 0);for(const i of t)Ss(A,(n=>Ii(n,e,!1,void 0)),i,void 0)}mp({context:e,bitmapSize:A}){yi(e,0,0,A.width,A.height,this.Qd.$t().bd())}Ie({context:e,bitmapSize:A,verticalPixelRatio:t}){if(this.Qd.W().timeScale.borderVisible){e.fillStyle=this.qm();const i=Math.max(1,Math.floor(this.jm().C*t));e.fillRect(0,0,A.width,i)}}wp(e){const A=this.Qd.$t().St(),t=A.Ha();if(!t||t.length===0)return;const i=this.q_.maxTickMarkWeight(t),n=this.jm(),s=A.W();s.borderVisible&&s.ticksVisible&&e.useBitmapCoordinateSpace((({context:o,horizontalPixelRatio:a,verticalPixelRatio:l})=>{o.strokeStyle=this.qm(),o.fillStyle=this.qm();const c=Math.max(1,Math.floor(a)),d=Math.floor(.5*a);o.beginPath();const p=Math.round(n.T*l);for(let y=t.length;y--;){const w=Math.round(t[y].coord*a);o.rect(w-d,0,c,p)}o.fill()})),e.useMediaCoordinateSpace((({context:o})=>{const a=n.C+n.T+n.L+n.P/2;o.textAlign="center",o.textBaseline="middle",o.fillStyle=this.$(),o.font=this._p();for(const l of t)if(l.weight<i){const c=l.needAlignCoordinate?this.Ym(o,l.coord,l.label):l.coord;o.fillText(l.label,c,a)}this.Qd.W().timeScale.allowBoldLabels&&(o.font=this.Zm());for(const l of t)if(l.weight>=i){const c=l.needAlignCoordinate?this.Ym(o,l.coord,l.label):l.coord;o.fillText(l.label,c,a)}}))}Ym(e,A,t){const i=this.Fv.xi(e,t),n=i/2,s=Math.floor(A-n)+.5;return s<0?A+=Math.abs(0-s):s+i>this.Ev.width&&(A-=Math.abs(this.Ev.width-(s+i))),A}Um(e,A){const t=this.jm();for(const i of e)for(const n of i.Qi())n.gt().X(A,t)}qm(){return this.Qd.W().timeScale.borderColor}$(){return this.cn.textColor}j(){return this.cn.fontSize}_p(){return ir(this.j(),this.cn.fontFamily)}Zm(){return ir(this.j(),this.cn.fontFamily,"bold")}jm(){this.k===null&&(this.k={C:1,N:NaN,L:NaN,B:NaN,ji:NaN,T:5,P:NaN,R:"",Wi:new Hr,Hm:0});const e=this.k,A=this._p();if(e.R!==A){const t=this.j();e.P=t,e.R=A,e.L=3*t/12,e.B=3*t/12,e.ji=9*t/12,e.N=0,e.Hm=4*t/12,e.Wi.nr()}return this.k}kp(e){this.Kv.style.cursor=e===1?"ew-resize":"default"}zm(){const e=this.Qd.$t(),A=e.W();A.leftPriceScale.visible||this.Rm===null||(this.Bm.removeChild(this.Rm.lp()),this.Rm.S(),this.Rm=null),A.rightPriceScale.visible||this.Dm===null||(this.Am.removeChild(this.Dm.lp()),this.Dm.S(),this.Dm=null);const t={ud:this.Qd.$t().ud()},i=()=>A.leftPriceScale.borderVisible&&e.St().W().borderVisible,n=()=>e.bd();A.leftPriceScale.visible&&this.Rm===null&&(this.Rm=new Sl("left",A,t,i,n),this.Bm.appendChild(this.Rm.lp())),A.rightPriceScale.visible&&this.Dm===null&&(this.Dm=new Sl("right",A,t,i,n),this.Am.appendChild(this.Dm.lp()))}}const Hp=!!or&&!!navigator.userAgentData&&navigator.userAgentData.brands.some((r=>r.brand.includes("Chromium")))&&!!or&&(!((Ds=navigator?.userAgentData)===null||Ds===void 0)&&Ds.platform?navigator.userAgentData.platform==="Windows":navigator.userAgent.toLowerCase().indexOf("win")>=0);var Ds;class Lp{constructor(e,A,t){var i;this.Xm=[],this.Km=0,this.ho=0,this.__=0,this.Gm=0,this.Jm=0,this.Qm=null,this.tb=!1,this.Vp=new uA,this.Op=new uA,this.Rc=new uA,this.ib=null,this.nb=null,this.Jd=e,this.cn=A,this.q_=t,this.Xd=document.createElement("div"),this.Xd.classList.add("tv-lightweight-charts"),this.Xd.style.overflow="hidden",this.Xd.style.direction="ltr",this.Xd.style.width="100%",this.Xd.style.height="100%",(i=this.Xd).style.userSelect="none",i.style.webkitUserSelect="none",i.style.msUserSelect="none",i.style.MozUserSelect="none",i.style.webkitTapHighlightColor="transparent",this.sb=document.createElement("table"),this.sb.setAttribute("cellspacing","0"),this.Xd.appendChild(this.sb),this.eb=this.rb.bind(this),ks(this.cn)&&this.hb(!0),this.$i=new pp(this.Vc.bind(this),this.cn,t),this.$t().Xc().l(this.lb.bind(this),this),this.ab=new Sp(this,this.q_),this.sb.appendChild(this.ab.lp());const n=A.autoSize&&this.ob();let s=this.cn.width,o=this.cn.height;if(n||s===0||o===0){const a=e.getBoundingClientRect();s=s||a.width,o=o||a.height}this._b(s,o),this.ub(),e.appendChild(this.Xd),this.cb(),this.$i.St().ec().l(this.$i.Kl.bind(this.$i),this),this.$i.g_().l(this.$i.Kl.bind(this.$i),this)}$t(){return this.$i}W(){return this.cn}Yp(){return this.Xm}fb(){return this.ab}S(){this.hb(!1),this.Km!==0&&window.cancelAnimationFrame(this.Km),this.$i.Xc().p(this),this.$i.St().ec().p(this),this.$i.g_().p(this),this.$i.S();for(const e of this.Xm)this.sb.removeChild(e.lp()),e.lm().p(this),e.am().p(this),e.S();this.Xm=[],ue(this.ab).S(),this.Xd.parentElement!==null&&this.Xd.parentElement.removeChild(this.Xd),this.Rc.S(),this.Vp.S(),this.Op.S(),this.pb()}_b(e,A,t=!1){if(this.ho===A&&this.__===e)return;const i=(function(o){const a=Math.floor(o.width),l=Math.floor(o.height);return sA({width:a-a%2,height:l-l%2})})(sA({width:e,height:A}));this.ho=i.height,this.__=i.width;const n=this.ho+"px",s=this.__+"px";ue(this.Xd).style.height=n,ue(this.Xd).style.width=s,this.sb.style.height=n,this.sb.style.width=s,t?this.mb(yA.es(),performance.now()):this.$i.Kl()}vp(e){e===void 0&&(e=yA.es());for(let A=0;A<this.Xm.length;A++)this.Xm[A].vp(e.Hn(A).Fn);this.cn.timeScale.visible&&this.ab.vp(e.jn())}$h(e){const A=ks(this.cn);this.$i.$h(e);const t=ks(this.cn);t!==A&&this.hb(t),this.cb(),this.bb(e)}lm(){return this.Vp}am(){return this.Op}Xc(){return this.Rc}wb(){this.Qm!==null&&(this.mb(this.Qm,performance.now()),this.Qm=null);const e=this.gb(null),A=document.createElement("canvas");A.width=e.width,A.height=e.height;const t=ue(A.getContext("2d"));return this.gb(t),A}Mb(e){return e==="left"&&!this.xb()||e==="right"&&!this.Sb()||this.Xm.length===0?0:ue(e==="left"?this.Xm[0].wm():this.Xm[0].gm()).dp()}kb(){return this.cn.autoSize&&this.ib!==null}yb(){return this.Xd}Qp(e){this.nb=e,this.nb?this.yb().style.setProperty("cursor",e):this.yb().style.removeProperty("cursor")}Cb(){return this.nb}Tb(){return LA(this.Xm[0]).um()}bb(e){(e.autoSize!==void 0||!this.ib||e.width===void 0&&e.height===void 0)&&(e.autoSize&&!this.ib&&this.ob(),e.autoSize===!1&&this.ib!==null&&this.pb(),e.autoSize||e.width===void 0&&e.height===void 0||this._b(e.width||this.__,e.height||this.ho))}gb(e){let A=0,t=0;const i=this.Xm[0],n=(o,a)=>{let l=0;for(let c=0;c<this.Xm.length;c++){const d=this.Xm[c],p=ue(o==="left"?d.wm():d.gm()),y=p.xp();e!==null&&p.Sp(e,a,l),l+=y.height}};this.xb()&&(n("left",0),A+=ue(i.wm()).xp().width);for(let o=0;o<this.Xm.length;o++){const a=this.Xm[o],l=a.xp();e!==null&&a.Sp(e,A,t),t+=l.height}A+=i.xp().width,this.Sb()&&(n("right",A),A+=ue(i.gm()).xp().width);const s=(o,a,l)=>{ue(o==="left"?this.ab.Lm():this.ab.Em()).Sp(ue(e),a,l)};if(this.cn.timeScale.visible){const o=this.ab.xp();if(e!==null){let a=0;this.xb()&&(s("left",a,t),a=ue(i.wm()).xp().width),this.ab.Sp(e,a,t),a+=o.width,this.Sb()&&s("right",a,t)}t+=o.height}return sA({width:A,height:t})}Pb(){let e=0,A=0,t=0;for(const w of this.Xm)this.xb()&&(A=Math.max(A,ue(w.wm()).op(),this.cn.leftPriceScale.minimumWidth)),this.Sb()&&(t=Math.max(t,ue(w.gm()).op(),this.cn.rightPriceScale.minimumWidth)),e+=w.M_();A=xs(A),t=xs(t);const i=this.__,n=this.ho,s=Math.max(i-A-t,0),o=this.cn.timeScale.visible;let a=o?Math.max(this.ab.Wm(),this.cn.timeScale.minimumHeight):0;var l;a=(l=a)+l%2;const c=0+a,d=n<c?0:n-c,p=d/e;let y=0;for(let w=0;w<this.Xm.length;++w){const C=this.Xm[w];C.qp(this.$i.qc()[w]);let v=0,S=0;S=w===this.Xm.length-1?d-y:Math.round(C.M_()*p),v=Math.max(S,2),y+=v,C.cp(sA({width:s,height:v})),this.xb()&&C._m(A,"left"),this.Sb()&&C._m(t,"right"),C.fp()&&this.$i.Kc(C.fp(),v)}this.ab.Fm(sA({width:o?s:0,height:a}),o?A:0,o?t:0),this.$i.S_(s),this.Gm!==A&&(this.Gm=A),this.Jm!==t&&(this.Jm=t)}hb(e){e?this.Xd.addEventListener("wheel",this.eb,{passive:!1}):this.Xd.removeEventListener("wheel",this.eb)}Rb(e){switch(e.deltaMode){case e.DOM_DELTA_PAGE:return 120;case e.DOM_DELTA_LINE:return 32}return Hp?1/window.devicePixelRatio:1}rb(e){if(!(e.deltaX!==0&&this.cn.handleScroll.mouseWheel||e.deltaY!==0&&this.cn.handleScale.mouseWheel))return;const A=this.Rb(e),t=A*e.deltaX/100,i=-A*e.deltaY/100;if(e.cancelable&&e.preventDefault(),i!==0&&this.cn.handleScale.mouseWheel){const n=Math.sign(i)*Math.min(1,Math.abs(i)),s=e.clientX-this.Xd.getBoundingClientRect().left;this.$t().Qc(s,n)}t!==0&&this.cn.handleScroll.mouseWheel&&this.$t().td(-80*t)}mb(e,A){var t;const i=e.jn();i===3&&this.Db(),i!==3&&i!==2||(this.Vb(e),this.Ob(e,A),this.ab.bt(),this.Xm.forEach((n=>{n.Xp()})),((t=this.Qm)===null||t===void 0?void 0:t.jn())===3&&(this.Qm.ts(e),this.Db(),this.Vb(this.Qm),this.Ob(this.Qm,A),e=this.Qm,this.Qm=null)),this.vp(e)}Ob(e,A){for(const t of e.Qn())this.ns(t,A)}Vb(e){const A=this.$i.qc();for(let t=0;t<A.length;t++)e.Hn(t).Wn&&A[t].N_()}ns(e,A){const t=this.$i.St();switch(e.qn){case 0:t.hc();break;case 1:t.lc(e.Vt);break;case 2:t.Gn(e.Vt);break;case 3:t.Jn(e.Vt);break;case 4:t.qu();break;case 5:e.Vt.Qu(A)||t.Jn(e.Vt.tc(A))}}Vc(e){this.Qm!==null?this.Qm.ts(e):this.Qm=e,this.tb||(this.tb=!0,this.Km=window.requestAnimationFrame((A=>{if(this.tb=!1,this.Km=0,this.Qm!==null){const t=this.Qm;this.Qm=null,this.mb(t,A);for(const i of t.Qn())if(i.qn===5&&!i.Vt.Qu(A)){this.$t().Zn(i.Vt);break}}})))}Db(){this.ub()}ub(){const e=this.$i.qc(),A=e.length,t=this.Xm.length;for(let i=A;i<t;i++){const n=LA(this.Xm.pop());this.sb.removeChild(n.lp()),n.lm().p(this),n.am().p(this),n.S()}for(let i=t;i<A;i++){const n=new Is(this,e[i]);n.lm().l(this.Bb.bind(this),this),n.am().l(this.Ab.bind(this),this),this.Xm.push(n),this.sb.insertBefore(n.lp(),this.ab.lp())}for(let i=0;i<A;i++){const n=e[i],s=this.Xm[i];s.fp()!==n?s.qp(n):s.Up()}this.cb(),this.Pb()}Ib(e,A,t){var i;const n=new Map;e!==null&&this.$i.wt().forEach((c=>{const d=c.In().ll(e);d!==null&&n.set(c,d)}));let s;if(e!==null){const c=(i=this.$i.St().Ui(e))===null||i===void 0?void 0:i.originalTime;c!==void 0&&(s=c)}const o=this.$t().Wc(),a=o!==null&&o.Hc instanceof ms?o.Hc:void 0,l=o!==null&&o.Iv!==void 0?o.Iv.gr:void 0;return{zb:s,ee:e??void 0,Lb:A??void 0,Eb:a,Nb:n,Fb:l,Wb:t??void 0}}Bb(e,A,t){this.Vp.m((()=>this.Ib(e,A,t)))}Ab(e,A,t){this.Op.m((()=>this.Ib(e,A,t)))}lb(e,A,t){this.Rc.m((()=>this.Ib(e,A,t)))}cb(){const e=this.cn.timeScale.visible?"":"none";this.ab.lp().style.display=e}xb(){return this.Xm[0].fp().R_().W().visible}Sb(){return this.Xm[0].fp().D_().W().visible}ob(){return"ResizeObserver"in window&&(this.ib=new ResizeObserver((e=>{const A=e.find((t=>t.target===this.Jd));A&&this._b(A.contentRect.width,A.contentRect.height)})),this.ib.observe(this.Jd,{box:"border-box"}),!0)}pb(){this.ib!==null&&this.ib.disconnect(),this.ib=null}}function ks(r){return!!(r.handleScroll.mouseWheel||r.handleScale.mouseWheel)}function Mp(r){return(function(e){return e.open!==void 0})(r)||(function(e){return e.value!==void 0})(r)}function Hl(r,e){var A={};for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&e.indexOf(t)<0&&(A[t]=r[t]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function"){var i=0;for(t=Object.getOwnPropertySymbols(r);i<t.length;i++)e.indexOf(t[i])<0&&Object.prototype.propertyIsEnumerable.call(r,t[i])&&(A[t[i]]=r[t[i]])}return A}function Ll(r,e,A,t){const i=A.value,n={ee:e,ot:r,Vt:[i,i,i,i],zb:t};return A.color!==void 0&&(n.V=A.color),n}function Ip(r,e,A,t){const i=A.value,n={ee:e,ot:r,Vt:[i,i,i,i],zb:t};return A.lineColor!==void 0&&(n.lt=A.lineColor),A.topColor!==void 0&&(n.Ps=A.topColor),A.bottomColor!==void 0&&(n.Rs=A.bottomColor),n}function _p(r,e,A,t){const i=A.value,n={ee:e,ot:r,Vt:[i,i,i,i],zb:t};return A.topLineColor!==void 0&&(n.Re=A.topLineColor),A.bottomLineColor!==void 0&&(n.De=A.bottomLineColor),A.topFillColor1!==void 0&&(n.ke=A.topFillColor1),A.topFillColor2!==void 0&&(n.ye=A.topFillColor2),A.bottomFillColor1!==void 0&&(n.Ce=A.bottomFillColor1),A.bottomFillColor2!==void 0&&(n.Te=A.bottomFillColor2),n}function Dp(r,e,A,t){const i={ee:e,ot:r,Vt:[A.open,A.high,A.low,A.close],zb:t};return A.color!==void 0&&(i.V=A.color),i}function kp(r,e,A,t){const i={ee:e,ot:r,Vt:[A.open,A.high,A.low,A.close],zb:t};return A.color!==void 0&&(i.V=A.color),A.borderColor!==void 0&&(i.Ot=A.borderColor),A.wickColor!==void 0&&(i.Xh=A.wickColor),i}function Op(r,e,A,t,i){const n=LA(i)(A),s=Math.max(...n),o=Math.min(...n),a=n[n.length-1],l=[a,s,o,a],c=A,{time:d,color:p}=c;return{ee:e,ot:r,Vt:l,zb:t,$e:Hl(c,["time","color"]),V:p}}function Oi(r){return r.Vt!==void 0}function Ml(r,e){return e.customValues!==void 0&&(r.jb=e.customValues),r}function Wt(r){return(e,A,t,i,n,s)=>(function(o,a){return a?a(o):(l=o).open===void 0&&l.value===void 0;var l})(t,s)?Ml({ot:e,ee:A,zb:i},t):Ml(r(e,A,t,i,n),t)}function Il(r){return{Candlestick:Wt(kp),Bar:Wt(Dp),Area:Wt(Ip),Baseline:Wt(_p),Histogram:Wt(Ll),Line:Wt(Ll),Custom:Wt(Op)}[r]}function _l(r){return{ee:0,Hb:new Map,la:r}}function Dl(r,e){if(r!==void 0&&r.length!==0)return{$b:e.key(r[0].ot),Ub:e.key(r[r.length-1].ot)}}function kl(r){let e;return r.forEach((A=>{e===void 0&&(e=A.zb)})),LA(e)}class Np{constructor(e){this.qb=new Map,this.Yb=new Map,this.Zb=new Map,this.Xb=[],this.q_=e}S(){this.qb.clear(),this.Yb.clear(),this.Zb.clear(),this.Xb=[]}Kb(e,A){let t=this.qb.size!==0,i=!1;const n=this.Yb.get(e);if(n!==void 0)if(this.Yb.size===1)t=!1,i=!0,this.qb.clear();else for(const a of this.Xb)a.pointData.Hb.delete(e)&&(i=!0);let s=[];if(A.length!==0){const a=A.map((y=>y.time)),l=this.q_.createConverterToInternalObj(A),c=Il(e.Qh()),d=e.Ca(),p=e.Ta();s=A.map(((y,w)=>{const C=l(y.time),v=this.q_.key(C);let S=this.qb.get(v);S===void 0&&(S=_l(C),this.qb.set(v,S),i=!0);const F=c(C,S.ee,y,a[w],d,p);return S.Hb.set(e,F),F}))}t&&this.Gb(),this.Jb(e,s);let o=-1;if(i){const a=[];this.qb.forEach((l=>{a.push({timeWeight:0,time:l.la,pointData:l,originalTime:kl(l.Hb)})})),a.sort(((l,c)=>this.q_.key(l.time)-this.q_.key(c.time))),o=this.Qb(a)}return this.tw(e,o,(function(a,l,c){const d=Dl(a,c),p=Dl(l,c);if(d!==void 0&&p!==void 0)return{ta:d.Ub>=p.Ub&&d.$b>=p.$b}})(this.Yb.get(e),n,this.q_))}vd(e){return this.Kb(e,[])}iw(e,A){const t=A;(function(C){C.zb===void 0&&(C.zb=C.time)})(t),this.q_.preprocessData(A);const i=this.q_.createConverterToInternalObj([A])(A.time),n=this.Zb.get(e);if(n!==void 0&&this.q_.key(i)<this.q_.key(n))throw new Error(`Cannot update oldest data, last time=${n}, new time=${i}`);let s=this.qb.get(this.q_.key(i));const o=s===void 0;s===void 0&&(s=_l(i),this.qb.set(this.q_.key(i),s));const a=Il(e.Qh()),l=e.Ca(),c=e.Ta(),d=a(i,s.ee,A,t.zb,l,c);s.Hb.set(e,d),this.nw(e,d);const p={ta:Oi(d)};if(!o)return this.tw(e,-1,p);const y={timeWeight:0,time:s.la,pointData:s,originalTime:kl(s.Hb)},w=Sr(this.Xb,this.q_.key(y.time),((C,v)=>this.q_.key(C.time)<v));this.Xb.splice(w,0,y);for(let C=w;C<this.Xb.length;++C)Os(this.Xb[C].pointData,C);return this.q_.fillWeightsForPoints(this.Xb,w),this.tw(e,w,p)}nw(e,A){let t=this.Yb.get(e);t===void 0&&(t=[],this.Yb.set(e,t));const i=t.length!==0?t[t.length-1]:null;i===null||this.q_.key(A.ot)>this.q_.key(i.ot)?Oi(A)&&t.push(A):Oi(A)?t[t.length-1]=A:t.splice(-1,1),this.Zb.set(e,A.ot)}Jb(e,A){A.length!==0?(this.Yb.set(e,A.filter(Oi)),this.Zb.set(e,A[A.length-1].ot)):(this.Yb.delete(e),this.Zb.delete(e))}Gb(){for(const e of this.Xb)e.pointData.Hb.size===0&&this.qb.delete(this.q_.key(e.time))}Qb(e){let A=-1;for(let t=0;t<this.Xb.length&&t<e.length;++t){const i=this.Xb[t],n=e[t];if(this.q_.key(i.time)!==this.q_.key(n.time)){A=t;break}n.timeWeight=i.timeWeight,Os(n.pointData,t)}if(A===-1&&this.Xb.length!==e.length&&(A=Math.min(this.Xb.length,e.length)),A===-1)return-1;for(let t=A;t<e.length;++t)Os(e[t].pointData,t);return this.q_.fillWeightsForPoints(e,A),this.Xb=e,A}sw(){if(this.Yb.size===0)return null;let e=0;return this.Yb.forEach((A=>{A.length!==0&&(e=Math.max(e,A[A.length-1].ee))})),e}tw(e,A,t){const i={ew:new Map,St:{Eu:this.sw()}};if(A!==-1)this.Yb.forEach(((n,s)=>{i.ew.set(s,{$e:n,rw:s===e?t:void 0})})),this.Yb.has(e)||i.ew.set(e,{$e:[],rw:t}),i.St.hw=this.Xb,i.St.lw=A;else{const n=this.Yb.get(e);i.ew.set(e,{$e:n||[],rw:t})}return i}}function Os(r,e){r.ee=e,r.Hb.forEach((A=>{A.ee=e}))}function Ns(r){const e={value:r.Vt[3],time:r.zb};return r.jb!==void 0&&(e.customValues=r.jb),e}function Ol(r){const e=Ns(r);return r.V!==void 0&&(e.color=r.V),e}function Kp(r){const e=Ns(r);return r.lt!==void 0&&(e.lineColor=r.lt),r.Ps!==void 0&&(e.topColor=r.Ps),r.Rs!==void 0&&(e.bottomColor=r.Rs),e}function Pp(r){const e=Ns(r);return r.Re!==void 0&&(e.topLineColor=r.Re),r.De!==void 0&&(e.bottomLineColor=r.De),r.ke!==void 0&&(e.topFillColor1=r.ke),r.ye!==void 0&&(e.topFillColor2=r.ye),r.Ce!==void 0&&(e.bottomFillColor1=r.Ce),r.Te!==void 0&&(e.bottomFillColor2=r.Te),e}function Nl(r){const e={open:r.Vt[0],high:r.Vt[1],low:r.Vt[2],close:r.Vt[3],time:r.zb};return r.jb!==void 0&&(e.customValues=r.jb),e}function Vp(r){const e=Nl(r);return r.V!==void 0&&(e.color=r.V),e}function zp(r){const e=Nl(r),{V:A,Ot:t,Xh:i}=r;return A!==void 0&&(e.color=A),t!==void 0&&(e.borderColor=t),i!==void 0&&(e.wickColor=i),e}function Ks(r){return{Area:Kp,Line:Ol,Baseline:Pp,Histogram:Ol,Bar:Vp,Candlestick:zp,Custom:Gp}[r]}function Gp(r){const e=r.zb;return Object.assign(Object.assign({},r.$e),{time:e})}const Rp={vertLine:{color:"#9598A1",width:1,style:3,visible:!0,labelVisible:!0,labelBackgroundColor:"#131722"},horzLine:{color:"#9598A1",width:1,style:3,visible:!0,labelVisible:!0,labelBackgroundColor:"#131722"},mode:1},Wp={vertLines:{color:"#D6DCDE",style:0,visible:!0},horzLines:{color:"#D6DCDE",style:0,visible:!0}},$p={background:{type:"solid",color:"#FFFFFF"},textColor:"#191919",fontSize:12,fontFamily:ns,attributionLogo:!0},Ps={autoScale:!0,mode:0,invertScale:!1,alignLabels:!0,borderVisible:!0,borderColor:"#2B2B43",entireTextOnly:!1,visible:!1,ticksVisible:!1,scaleMargins:{bottom:.1,top:.2},minimumWidth:0},Xp={rightOffset:0,barSpacing:6,minBarSpacing:.5,fixLeftEdge:!1,fixRightEdge:!1,lockVisibleTimeRangeOnResize:!1,rightBarStaysOnScroll:!1,borderVisible:!0,borderColor:"#2B2B43",visible:!0,timeVisible:!1,secondsVisible:!0,shiftVisibleRangeOnNewBar:!0,allowShiftVisibleRangeOnWhitespaceReplacement:!1,ticksVisible:!1,uniformDistribution:!1,minimumHeight:0,allowBoldLabels:!0},Jp={color:"rgba(0, 0, 0, 0)",visible:!1,fontSize:48,fontFamily:ns,fontStyle:"",text:"",horzAlign:"center",vertAlign:"center"};function Kl(){return{width:0,height:0,autoSize:!1,layout:$p,crosshair:Rp,grid:Wp,overlayPriceScales:Object.assign({},Ps),leftPriceScale:Object.assign(Object.assign({},Ps),{visible:!1}),rightPriceScale:Object.assign(Object.assign({},Ps),{visible:!0}),timeScale:Xp,watermark:Jp,localization:{locale:or?navigator.language:"",dateFormat:"dd MMM 'yy"},handleScroll:{mouseWheel:!0,pressedMouseMove:!0,horzTouchDrag:!0,vertTouchDrag:!0},handleScale:{axisPressedMouseMove:{time:!0,price:!0},axisDoubleClickReset:{time:!0,price:!0},mouseWheel:!0,pinch:!0},kineticScroll:{mouse:!1,touch:!0},trackingMode:{exitMode:1}}}class Zp{constructor(e,A){this.aw=e,this.ow=A}applyOptions(e){this.aw.$t().$c(this.ow,e)}options(){return this.Li().W()}width(){return Ti(this.ow)?this.aw.Mb(this.ow):0}Li(){return ue(this.aw.$t().Uc(this.ow)).Dt}}function Pl(r,e,A){const t=Hl(r,["time","originalTime"]),i=Object.assign({time:e},t);return A!==void 0&&(i.originalTime=A),i}const qp={color:"#FF0000",price:0,lineStyle:2,lineWidth:1,lineVisible:!0,axisLabelVisible:!0,title:"",axisLabelColor:"",axisLabelTextColor:""};class Yp{constructor(e){this.Nh=e}applyOptions(e){this.Nh.$h(e)}options(){return this.Nh.W()}_w(){return this.Nh}}class jp{constructor(e,A,t,i,n){this.uw=new uA,this.Es=e,this.cw=A,this.dw=t,this.q_=n,this.fw=i}S(){this.uw.S()}priceFormatter(){return this.Es.ba()}priceToCoordinate(e){const A=this.Es.Ct();return A===null?null:this.Es.Dt().Rt(e,A.Vt)}coordinateToPrice(e){const A=this.Es.Ct();return A===null?null:this.Es.Dt().pn(e,A.Vt)}barsInLogicalRange(e){if(e===null)return null;const A=new sr(new kr(e.from,e.to)).lu(),t=this.Es.In();if(t.Ni())return null;const i=t.ll(A.Os(),1),n=t.ll(A.ui(),-1),s=ue(t.el()),o=ue(t.An());if(i!==null&&n!==null&&i.ee>n.ee)return{barsBefore:e.from-s,barsAfter:o-e.to};const a={barsBefore:i===null||i.ee===s?e.from-s:i.ee-s,barsAfter:n===null||n.ee===o?o-e.to:o-n.ee};return i!==null&&n!==null&&(a.from=i.zb,a.to=n.zb),a}setData(e){this.q_,this.Es.Qh(),this.cw.pw(this.Es,e),this.mw("full")}update(e){this.Es.Qh(),this.cw.bw(this.Es,e),this.mw("update")}dataByIndex(e,A){const t=this.Es.In().ll(e,A);return t===null?null:Ks(this.seriesType())(t)}data(){const e=Ks(this.seriesType());return this.Es.In().ne().map((A=>e(A)))}subscribeDataChanged(e){this.uw.l(e)}unsubscribeDataChanged(e){this.uw.v(e)}setMarkers(e){this.q_;const A=e.map((t=>Pl(t,this.q_.convertHorzItemToInternal(t.time),t.time)));this.Es.na(A)}markers(){return this.Es.sa().map((e=>Pl(e,e.originalTime,void 0)))}applyOptions(e){this.Es.$h(e)}options(){return Ct(this.Es.W())}priceScale(){return this.dw.priceScale(this.Es.Dt().Pa())}createPriceLine(e){const A=et(Ct(qp),e),t=this.Es.ea(A);return new Yp(t)}removePriceLine(e){this.Es.ra(e._w())}seriesType(){return this.Es.Qh()}attachPrimitive(e){this.Es.ka(e),e.attached&&e.attached({chart:this.fw,series:this,requestUpdate:()=>this.Es.$t().Kl()})}detachPrimitive(e){this.Es.ya(e),e.detached&&e.detached()}mw(e){this.uw.M()&&this.uw.m(e)}}class e0{constructor(e,A,t){this.ww=new uA,this.mu=new uA,this.Om=new uA,this.$i=e,this.yl=e.St(),this.ab=A,this.yl.nc().l(this.gw.bind(this)),this.yl.sc().l(this.Mw.bind(this)),this.ab.Nm().l(this.xw.bind(this)),this.q_=t}S(){this.yl.nc().p(this),this.yl.sc().p(this),this.ab.Nm().p(this),this.ww.S(),this.mu.S(),this.Om.S()}scrollPosition(){return this.yl.Hu()}scrollToPosition(e,A){A?this.yl.Ju(e,1e3):this.$i.Jn(e)}scrollToRealTime(){this.yl.Gu()}getVisibleRange(){const e=this.yl.Vu();return e===null?null:{from:e.from.originalTime,to:e.to.originalTime}}setVisibleRange(e){const A={from:this.q_.convertHorzItemToInternal(e.from),to:this.q_.convertHorzItemToInternal(e.to)},t=this.yl.Iu(A);this.$i.pd(t)}getVisibleLogicalRange(){const e=this.yl.Du();return e===null?null:{from:e.Os(),to:e.ui()}}setVisibleLogicalRange(e){Ft(e.from<=e.to,"The from index cannot be after the to index."),this.$i.pd(e)}resetTimeScale(){this.$i.Kn()}fitContent(){this.$i.hc()}logicalToCoordinate(e){const A=this.$i.St();return A.Ni()?null:A.It(e)}coordinateToLogical(e){return this.yl.Ni()?null:this.yl.Nu(e)}timeToCoordinate(e){const A=this.q_.convertHorzItemToInternal(e),t=this.yl.Va(A,!1);return t===null?null:this.yl.It(t)}coordinateToTime(e){const A=this.$i.St(),t=A.Nu(e),i=A.Ui(t);return i===null?null:i.originalTime}width(){return this.ab.um().width}height(){return this.ab.um().height}subscribeVisibleTimeRangeChange(e){this.ww.l(e)}unsubscribeVisibleTimeRangeChange(e){this.ww.v(e)}subscribeVisibleLogicalRangeChange(e){this.mu.l(e)}unsubscribeVisibleLogicalRangeChange(e){this.mu.v(e)}subscribeSizeChange(e){this.Om.l(e)}unsubscribeSizeChange(e){this.Om.v(e)}applyOptions(e){this.yl.$h(e)}options(){return Object.assign(Object.assign({},Ct(this.yl.W())),{barSpacing:this.yl.le()})}gw(){this.ww.M()&&this.ww.m(this.getVisibleRange())}Mw(){this.mu.M()&&this.mu.m(this.getVisibleLogicalRange())}xw(e){this.Om.m(e.width,e.height)}}function A0(r){if(r===void 0||r.type==="custom")return;const e=r;e.minMove!==void 0&&e.precision===void 0&&(e.precision=(function(A){if(A>=1)return 0;let t=0;for(;t<8;t++){const i=Math.round(A);if(Math.abs(i-A)<1e-8)return t;A*=10}return t})(e.minMove))}function Vl(r){return(function(e){if(vi(e.handleScale)){const t=e.handleScale;e.handleScale={axisDoubleClickReset:{time:t,price:t},axisPressedMouseMove:{time:t,price:t},mouseWheel:t,pinch:t}}else if(e.handleScale!==void 0){const{axisPressedMouseMove:t,axisDoubleClickReset:i}=e.handleScale;vi(t)&&(e.handleScale.axisPressedMouseMove={time:t,price:t}),vi(i)&&(e.handleScale.axisDoubleClickReset={time:i,price:i})}const A=e.handleScroll;vi(A)&&(e.handleScroll={horzTouchDrag:A,vertTouchDrag:A,mouseWheel:A,pressedMouseMove:A})})(r),r}class t0{constructor(e,A,t){this.Sw=new Map,this.kw=new Map,this.yw=new uA,this.Cw=new uA,this.Tw=new uA,this.Pw=new Np(A);const i=t===void 0?Ct(Kl()):et(Ct(Kl()),Vl(t));this.q_=A,this.aw=new Lp(e,i,A),this.aw.lm().l((s=>{this.yw.M()&&this.yw.m(this.Rw(s()))}),this),this.aw.am().l((s=>{this.Cw.M()&&this.Cw.m(this.Rw(s()))}),this),this.aw.Xc().l((s=>{this.Tw.M()&&this.Tw.m(this.Rw(s()))}),this);const n=this.aw.$t();this.Dw=new e0(n,this.aw.fb(),this.q_)}remove(){this.aw.lm().p(this),this.aw.am().p(this),this.aw.Xc().p(this),this.Dw.S(),this.aw.S(),this.Sw.clear(),this.kw.clear(),this.yw.S(),this.Cw.S(),this.Tw.S(),this.Pw.S()}resize(e,A,t){this.autoSizeActive()||this.aw._b(e,A,t)}addCustomSeries(e,A){const t=rr(e),i=Object.assign(Object.assign({},ba),t.defaultOptions());return this.Vw("Custom",i,A,t)}addAreaSeries(e){return this.Vw("Area",Od,e)}addBaselineSeries(e){return this.Vw("Baseline",Nd,e)}addBarSeries(e){return this.Vw("Bar",Dd,e)}addCandlestickSeries(e={}){return(function(A){A.borderColor!==void 0&&(A.borderUpColor=A.borderColor,A.borderDownColor=A.borderColor),A.wickColor!==void 0&&(A.wickUpColor=A.wickColor,A.wickDownColor=A.wickColor)})(e),this.Vw("Candlestick",_d,e)}addHistogramSeries(e){return this.Vw("Histogram",Kd,e)}addLineSeries(e){return this.Vw("Line",kd,e)}removeSeries(e){const A=LA(this.Sw.get(e)),t=this.Pw.vd(A);this.aw.$t().vd(A),this.Ow(t),this.Sw.delete(e),this.kw.delete(A)}pw(e,A){this.Ow(this.Pw.Kb(e,A))}bw(e,A){this.Ow(this.Pw.iw(e,A))}subscribeClick(e){this.yw.l(e)}unsubscribeClick(e){this.yw.v(e)}subscribeCrosshairMove(e){this.Tw.l(e)}unsubscribeCrosshairMove(e){this.Tw.v(e)}subscribeDblClick(e){this.Cw.l(e)}unsubscribeDblClick(e){this.Cw.v(e)}priceScale(e){return new Zp(this.aw,e)}timeScale(){return this.Dw}applyOptions(e){this.aw.$h(Vl(e))}options(){return this.aw.W()}takeScreenshot(){return this.aw.wb()}autoSizeActive(){return this.aw.kb()}chartElement(){return this.aw.yb()}paneSize(){const e=this.aw.Tb();return{height:e.height,width:e.width}}setCrosshairPosition(e,A,t){const i=this.Sw.get(t);if(i===void 0)return;const n=this.aw.$t().dr(i);n!==null&&this.aw.$t().ad(e,A,n)}clearCrosshairPosition(){this.aw.$t().od(!0)}Vw(e,A,t={},i){A0(t.priceFormat);const n=et(Ct(Ta),Ct(A),t),s=this.aw.$t().dd(e,n,i),o=new jp(s,this,this,this,this.q_);return this.Sw.set(o,s),this.kw.set(s,o),o}Ow(e){const A=this.aw.$t();A._d(e.St.Eu,e.St.hw,e.St.lw),e.ew.forEach(((t,i)=>i.J(t.$e,t.rw))),A.Wu()}Bw(e){return LA(this.kw.get(e))}Rw(e){const A=new Map;e.Nb.forEach(((i,n)=>{const s=n.Qh(),o=Ks(s)(i);if(s!=="Custom")Ft(Mp(o));else{const a=n.Ta();Ft(!a||a(o)===!1)}A.set(this.Bw(n),o)}));const t=e.Eb!==void 0&&this.kw.has(e.Eb)?this.Bw(e.Eb):void 0;return{time:e.zb,logical:e.ee,point:e.Lb,hoveredSeries:t,hoveredObjectId:e.Fb,seriesData:A,sourceEvent:e.Wb}}}function r0(r,e,A){let t;if(Ur(r)){const n=document.getElementById(r);Ft(n!==null,`Cannot find element in DOM with id=${r}`),t=n}else t=r;const i=new t0(t,e,A);return e.setOptions(i.options()),i}function i0(r,e){return r0(r,new Ql,Ql.Id(e))}Object.assign(Object.assign({},Ta),ba);function zl(r,e){return function(){return r.apply(e,arguments)}}const{toString:n0}=Object.prototype,{getPrototypeOf:Vs}=Object,{iterator:Ni,toStringTag:Gl}=Symbol,Ki=(r=>e=>{const A=n0.call(e);return r[A]||(r[A]=A.slice(8,-1).toLowerCase())})(Object.create(null)),tt=r=>(r=r.toLowerCase(),e=>Ki(e)===r),Pi=r=>e=>typeof e===r,{isArray:lr}=Array,cr=Pi("undefined");function Or(r){return r!==null&&!cr(r)&&r.constructor!==null&&!cr(r.constructor)&&kA(r.constructor.isBuffer)&&r.constructor.isBuffer(r)}const Rl=tt("ArrayBuffer");function s0(r){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(r):e=r&&r.buffer&&Rl(r.buffer),e}const o0=Pi("string"),kA=Pi("function"),Wl=Pi("number"),Nr=r=>r!==null&&typeof r=="object",a0=r=>r===!0||r===!1,Vi=r=>{if(Ki(r)!=="object")return!1;const e=Vs(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Gl in r)&&!(Ni in r)},l0=r=>{if(!Nr(r)||Or(r))return!1;try{return Object.keys(r).length===0&&Object.getPrototypeOf(r)===Object.prototype}catch{return!1}},c0=tt("Date"),h0=tt("File"),u0=tt("Blob"),d0=tt("FileList"),f0=r=>Nr(r)&&kA(r.pipe),p0=r=>{let e;return r&&(typeof FormData=="function"&&r instanceof FormData||kA(r.append)&&((e=Ki(r))==="formdata"||e==="object"&&kA(r.toString)&&r.toString()==="[object FormData]"))},g0=tt("URLSearchParams"),[m0,B0,w0,C0]=["ReadableStream","Request","Response","Headers"].map(tt),v0=r=>r.trim?r.trim():r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Kr(r,e,{allOwnKeys:A=!1}={}){if(r===null||typeof r>"u")return;let t,i;if(typeof r!="object"&&(r=[r]),lr(r))for(t=0,i=r.length;t<i;t++)e.call(null,r[t],t,r);else{if(Or(r))return;const n=A?Object.getOwnPropertyNames(r):Object.keys(r),s=n.length;let o;for(t=0;t<s;t++)o=n[t],e.call(null,r[o],o,r)}}function $l(r,e){if(Or(r))return null;e=e.toLowerCase();const A=Object.keys(r);let t=A.length,i;for(;t-- >0;)if(i=A[t],e===i.toLowerCase())return i;return null}const $t=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Xl=r=>!cr(r)&&r!==$t;function zs(){const{caseless:r,skipUndefined:e}=Xl(this)&&this||{},A={},t=(i,n)=>{if(n==="__proto__"||n==="constructor"||n==="prototype")return;const s=r&&$l(A,n)||n;Vi(A[s])&&Vi(i)?A[s]=zs(A[s],i):Vi(i)?A[s]=zs({},i):lr(i)?A[s]=i.slice():(!e||!cr(i))&&(A[s]=i)};for(let i=0,n=arguments.length;i<n;i++)arguments[i]&&Kr(arguments[i],t);return A}const y0=(r,e,A,{allOwnKeys:t}={})=>(Kr(e,(i,n)=>{A&&kA(i)?Object.defineProperty(r,n,{value:zl(i,A),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(r,n,{value:i,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:t}),r),b0=r=>(r.charCodeAt(0)===65279&&(r=r.slice(1)),r),T0=(r,e,A,t)=>{r.prototype=Object.create(e.prototype,t),Object.defineProperty(r.prototype,"constructor",{value:r,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(r,"super",{value:e.prototype}),A&&Object.assign(r.prototype,A)},Q0=(r,e,A,t)=>{let i,n,s;const o={};if(e=e||{},r==null)return e;do{for(i=Object.getOwnPropertyNames(r),n=i.length;n-- >0;)s=i[n],(!t||t(s,r,e))&&!o[s]&&(e[s]=r[s],o[s]=!0);r=A!==!1&&Vs(r)}while(r&&(!A||A(r,e))&&r!==Object.prototype);return e},x0=(r,e,A)=>{r=String(r),(A===void 0||A>r.length)&&(A=r.length),A-=e.length;const t=r.indexOf(e,A);return t!==-1&&t===A},F0=r=>{if(!r)return null;if(lr(r))return r;let e=r.length;if(!Wl(e))return null;const A=new Array(e);for(;e-- >0;)A[e]=r[e];return A},U0=(r=>e=>r&&e instanceof r)(typeof Uint8Array<"u"&&Vs(Uint8Array)),E0=(r,e)=>{const t=(r&&r[Ni]).call(r);let i;for(;(i=t.next())&&!i.done;){const n=i.value;e.call(r,n[0],n[1])}},S0=(r,e)=>{let A;const t=[];for(;(A=r.exec(e))!==null;)t.push(A);return t},H0=tt("HTMLFormElement"),L0=r=>r.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(A,t,i){return t.toUpperCase()+i}),Jl=(({hasOwnProperty:r})=>(e,A)=>r.call(e,A))(Object.prototype),M0=tt("RegExp"),Zl=(r,e)=>{const A=Object.getOwnPropertyDescriptors(r),t={};Kr(A,(i,n)=>{let s;(s=e(i,n,r))!==!1&&(t[n]=s||i)}),Object.defineProperties(r,t)},I0=r=>{Zl(r,(e,A)=>{if(kA(r)&&["arguments","caller","callee"].indexOf(A)!==-1)return!1;const t=r[A];if(kA(t)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+A+"'")})}})},_0=(r,e)=>{const A={},t=i=>{i.forEach(n=>{A[n]=!0})};return lr(r)?t(r):t(String(r).split(e)),A},D0=()=>{},k0=(r,e)=>r!=null&&Number.isFinite(r=+r)?r:e;function O0(r){return!!(r&&kA(r.append)&&r[Gl]==="FormData"&&r[Ni])}const N0=r=>{const e=new Array(10),A=(t,i)=>{if(Nr(t)){if(e.indexOf(t)>=0)return;if(Or(t))return t;if(!("toJSON"in t)){e[i]=t;const n=lr(t)?[]:{};return Kr(t,(s,o)=>{const a=A(s,i+1);!cr(a)&&(n[o]=a)}),e[i]=void 0,n}}return t};return A(r,0)},K0=tt("AsyncFunction"),P0=r=>r&&(Nr(r)||kA(r))&&kA(r.then)&&kA(r.catch),ql=((r,e)=>r?setImmediate:e?((A,t)=>($t.addEventListener("message",({source:i,data:n})=>{i===$t&&n===A&&t.length&&t.shift()()},!1),i=>{t.push(i),$t.postMessage(A,"*")}))(`axios@${Math.random()}`,[]):A=>setTimeout(A))(typeof setImmediate=="function",kA($t.postMessage)),V0=typeof queueMicrotask<"u"?queueMicrotask.bind($t):typeof process<"u"&&process.nextTick||ql,j={isArray:lr,isArrayBuffer:Rl,isBuffer:Or,isFormData:p0,isArrayBufferView:s0,isString:o0,isNumber:Wl,isBoolean:a0,isObject:Nr,isPlainObject:Vi,isEmptyObject:l0,isReadableStream:m0,isRequest:B0,isResponse:w0,isHeaders:C0,isUndefined:cr,isDate:c0,isFile:h0,isBlob:u0,isRegExp:M0,isFunction:kA,isStream:f0,isURLSearchParams:g0,isTypedArray:U0,isFileList:d0,forEach:Kr,merge:zs,extend:y0,trim:v0,stripBOM:b0,inherits:T0,toFlatObject:Q0,kindOf:Ki,kindOfTest:tt,endsWith:x0,toArray:F0,forEachEntry:E0,matchAll:S0,isHTMLForm:H0,hasOwnProperty:Jl,hasOwnProp:Jl,reduceDescriptors:Zl,freezeMethods:I0,toObjectSet:_0,toCamelCase:L0,noop:D0,toFiniteNumber:k0,findKey:$l,global:$t,isContextDefined:Xl,isSpecCompliantForm:O0,toJSONObject:N0,isAsyncFn:K0,isThenable:P0,setImmediate:ql,asap:V0,isIterable:r=>r!=null&&kA(r[Ni])};let Pe=class xd extends Error{static from(e,A,t,i,n,s){const o=new xd(e.message,A||e.code,t,i,n);return o.cause=e,o.name=e.name,s&&Object.assign(o,s),o}constructor(e,A,t,i,n){super(e),this.name="AxiosError",this.isAxiosError=!0,A&&(this.code=A),t&&(this.config=t),i&&(this.request=i),n&&(this.response=n,this.status=n.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:j.toJSONObject(this.config),code:this.code,status:this.status}}};Pe.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",Pe.ERR_BAD_OPTION="ERR_BAD_OPTION",Pe.ECONNABORTED="ECONNABORTED",Pe.ETIMEDOUT="ETIMEDOUT",Pe.ERR_NETWORK="ERR_NETWORK",Pe.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",Pe.ERR_DEPRECATED="ERR_DEPRECATED",Pe.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",Pe.ERR_BAD_REQUEST="ERR_BAD_REQUEST",Pe.ERR_CANCELED="ERR_CANCELED",Pe.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",Pe.ERR_INVALID_URL="ERR_INVALID_URL";const z0=null;function Gs(r){return j.isPlainObject(r)||j.isArray(r)}function Yl(r){return j.endsWith(r,"[]")?r.slice(0,-2):r}function jl(r,e,A){return r?r.concat(e).map(function(i,n){return i=Yl(i),!A&&n?"["+i+"]":i}).join(A?".":""):e}function G0(r){return j.isArray(r)&&!r.some(Gs)}const R0=j.toFlatObject(j,{},null,function(e){return/^is[A-Z]/.test(e)});function zi(r,e,A){if(!j.isObject(r))throw new TypeError("target must be an object");e=e||new FormData,A=j.toFlatObject(A,{metaTokens:!0,dots:!1,indexes:!1},!1,function(C,v){return!j.isUndefined(v[C])});const t=A.metaTokens,i=A.visitor||c,n=A.dots,s=A.indexes,a=(A.Blob||typeof Blob<"u"&&Blob)&&j.isSpecCompliantForm(e);if(!j.isFunction(i))throw new TypeError("visitor must be a function");function l(w){if(w===null)return"";if(j.isDate(w))return w.toISOString();if(j.isBoolean(w))return w.toString();if(!a&&j.isBlob(w))throw new Pe("Blob is not supported. Use a Buffer instead.");return j.isArrayBuffer(w)||j.isTypedArray(w)?a&&typeof Blob=="function"?new Blob([w]):Buffer.from(w):w}function c(w,C,v){let S=w;if(w&&!v&&typeof w=="object"){if(j.endsWith(C,"{}"))C=t?C:C.slice(0,-2),w=JSON.stringify(w);else if(j.isArray(w)&&G0(w)||(j.isFileList(w)||j.endsWith(C,"[]"))&&(S=j.toArray(w)))return C=Yl(C),S.forEach(function(k,x){!(j.isUndefined(k)||k===null)&&e.append(s===!0?jl([C],x,n):s===null?C:C+"[]",l(k))}),!1}return Gs(w)?!0:(e.append(jl(v,C,n),l(w)),!1)}const d=[],p=Object.assign(R0,{defaultVisitor:c,convertValue:l,isVisitable:Gs});function y(w,C){if(!j.isUndefined(w)){if(d.indexOf(w)!==-1)throw Error("Circular reference detected in "+C.join("."));d.push(w),j.forEach(w,function(S,F){(!(j.isUndefined(S)||S===null)&&i.call(e,S,j.isString(F)?F.trim():F,C,p))===!0&&y(S,C?C.concat(F):[F])}),d.pop()}}if(!j.isObject(r))throw new TypeError("data must be an object");return y(r),e}function ec(r){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(r).replace(/[!'()~]|%20|%00/g,function(t){return e[t]})}function Rs(r,e){this._pairs=[],r&&zi(r,this,e)}const Ac=Rs.prototype;Ac.append=function(e,A){this._pairs.push([e,A])},Ac.toString=function(e){const A=e?function(t){return e.call(this,t,ec)}:ec;return this._pairs.map(function(i){return A(i[0])+"="+A(i[1])},"").join("&")};function W0(r){return encodeURIComponent(r).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function tc(r,e,A){if(!e)return r;const t=A&&A.encode||W0,i=j.isFunction(A)?{serialize:A}:A,n=i&&i.serialize;let s;if(n?s=n(e,i):s=j.isURLSearchParams(e)?e.toString():new Rs(e,i).toString(t),s){const o=r.indexOf("#");o!==-1&&(r=r.slice(0,o)),r+=(r.indexOf("?")===-1?"?":"&")+s}return r}class rc{constructor(){this.handlers=[]}use(e,A,t){return this.handlers.push({fulfilled:e,rejected:A,synchronous:t?t.synchronous:!1,runWhen:t?t.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){j.forEach(this.handlers,function(t){t!==null&&e(t)})}}const Ws={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},$0={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Rs,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},$s=typeof window<"u"&&typeof document<"u",Xs=typeof navigator=="object"&&navigator||void 0,X0=$s&&(!Xs||["ReactNative","NativeScript","NS"].indexOf(Xs.product)<0),J0=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Z0=$s&&window.location.href||"http://localhost",xA={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:$s,hasStandardBrowserEnv:X0,hasStandardBrowserWebWorkerEnv:J0,navigator:Xs,origin:Z0},Symbol.toStringTag,{value:"Module"})),...$0};function q0(r,e){return zi(r,new xA.classes.URLSearchParams,{visitor:function(A,t,i,n){return xA.isNode&&j.isBuffer(A)?(this.append(t,A.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)},...e})}function Y0(r){return j.matchAll(/\w+|\[(\w*)]/g,r).map(e=>e[0]==="[]"?"":e[1]||e[0])}function j0(r){const e={},A=Object.keys(r);let t;const i=A.length;let n;for(t=0;t<i;t++)n=A[t],e[n]=r[n];return e}function ic(r){function e(A,t,i,n){let s=A[n++];if(s==="__proto__")return!0;const o=Number.isFinite(+s),a=n>=A.length;return s=!s&&j.isArray(i)?i.length:s,a?(j.hasOwnProp(i,s)?i[s]=[i[s],t]:i[s]=t,!o):((!i[s]||!j.isObject(i[s]))&&(i[s]=[]),e(A,t,i[s],n)&&j.isArray(i[s])&&(i[s]=j0(i[s])),!o)}if(j.isFormData(r)&&j.isFunction(r.entries)){const A={};return j.forEachEntry(r,(t,i)=>{e(Y0(t),i,A,0)}),A}return null}function e1(r,e,A){if(j.isString(r))try{return(e||JSON.parse)(r),j.trim(r)}catch(t){if(t.name!=="SyntaxError")throw t}return(A||JSON.stringify)(r)}const Pr={transitional:Ws,adapter:["xhr","http","fetch"],transformRequest:[function(e,A){const t=A.getContentType()||"",i=t.indexOf("application/json")>-1,n=j.isObject(e);if(n&&j.isHTMLForm(e)&&(e=new FormData(e)),j.isFormData(e))return i?JSON.stringify(ic(e)):e;if(j.isArrayBuffer(e)||j.isBuffer(e)||j.isStream(e)||j.isFile(e)||j.isBlob(e)||j.isReadableStream(e))return e;if(j.isArrayBufferView(e))return e.buffer;if(j.isURLSearchParams(e))return A.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(n){if(t.indexOf("application/x-www-form-urlencoded")>-1)return q0(e,this.formSerializer).toString();if((o=j.isFileList(e))||t.indexOf("multipart/form-data")>-1){const a=this.env&&this.env.FormData;return zi(o?{"files[]":e}:e,a&&new a,this.formSerializer)}}return n||i?(A.setContentType("application/json",!1),e1(e)):e}],transformResponse:[function(e){const A=this.transitional||Pr.transitional,t=A&&A.forcedJSONParsing,i=this.responseType==="json";if(j.isResponse(e)||j.isReadableStream(e))return e;if(e&&j.isString(e)&&(t&&!this.responseType||i)){const s=!(A&&A.silentJSONParsing)&&i;try{return JSON.parse(e,this.parseReviver)}catch(o){if(s)throw o.name==="SyntaxError"?Pe.from(o,Pe.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:xA.classes.FormData,Blob:xA.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};j.forEach(["delete","get","head","post","put","patch"],r=>{Pr.headers[r]={}});const A1=j.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),t1=r=>{const e={};let A,t,i;return r&&r.split(`
|
|
2
|
-
`).forEach(function(s){
|
|
3
|
-
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...A){const t=new this(e);return A.forEach(i=>t.set(i)),t}static accessor(e){const t=(this[nc]=this[nc]={accessors:{}}).accessors,i=this.prototype;function n(s){const o=Vr(s);t[o]||(s1(i,s),t[o]=!0)}return j.isArray(e)?e.forEach(n):n(e),this}};OA.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),j.reduceDescriptors(OA.prototype,({value:r},e)=>{let A=e[0].toUpperCase()+e.slice(1);return{get:()=>r,set(t){this[A]=t}}}),j.freezeMethods(OA);function Zs(r,e){const A=this||Pr,t=e||A,i=OA.from(t.headers);let n=t.data;return j.forEach(r,function(o){n=o.call(A,n,i.normalize(),e?e.status:void 0)}),i.normalize(),n}function sc(r){return!!(r&&r.__CANCEL__)}let zr=class extends Pe{constructor(e,A,t){super(e??"canceled",Pe.ERR_CANCELED,A,t),this.name="CanceledError",this.__CANCEL__=!0}};function oc(r,e,A){const t=A.config.validateStatus;!A.status||!t||t(A.status)?r(A):e(new Pe("Request failed with status code "+A.status,[Pe.ERR_BAD_REQUEST,Pe.ERR_BAD_RESPONSE][Math.floor(A.status/100)-4],A.config,A.request,A))}function o1(r){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(r);return e&&e[1]||""}function a1(r,e){r=r||10;const A=new Array(r),t=new Array(r);let i=0,n=0,s;return e=e!==void 0?e:1e3,function(a){const l=Date.now(),c=t[n];s||(s=l),A[i]=a,t[i]=l;let d=n,p=0;for(;d!==i;)p+=A[d++],d=d%r;if(i=(i+1)%r,i===n&&(n=(n+1)%r),l-s<e)return;const y=c&&l-c;return y?Math.round(p*1e3/y):void 0}}function l1(r,e){let A=0,t=1e3/e,i,n;const s=(l,c=Date.now())=>{A=c,i=null,n&&(clearTimeout(n),n=null),r(...l)};return[(...l)=>{const c=Date.now(),d=c-A;d>=t?s(l,c):(i=l,n||(n=setTimeout(()=>{n=null,s(i)},t-d)))},()=>i&&s(i)]}const Ri=(r,e,A=3)=>{let t=0;const i=a1(50,250);return l1(n=>{const s=n.loaded,o=n.lengthComputable?n.total:void 0,a=s-t,l=i(a),c=s<=o;t=s;const d={loaded:s,total:o,progress:o?s/o:void 0,bytes:a,rate:l||void 0,estimated:l&&o&&c?(o-s)/l:void 0,event:n,lengthComputable:o!=null,[e?"download":"upload"]:!0};r(d)},A)},ac=(r,e)=>{const A=r!=null;return[t=>e[0]({lengthComputable:A,total:r,loaded:t}),e[1]]},lc=r=>(...e)=>j.asap(()=>r(...e)),c1=xA.hasStandardBrowserEnv?((r,e)=>A=>(A=new URL(A,xA.origin),r.protocol===A.protocol&&r.host===A.host&&(e||r.port===A.port)))(new URL(xA.origin),xA.navigator&&/(msie|trident)/i.test(xA.navigator.userAgent)):()=>!0,h1=xA.hasStandardBrowserEnv?{write(r,e,A,t,i,n,s){if(typeof document>"u")return;const o=[`${r}=${encodeURIComponent(e)}`];j.isNumber(A)&&o.push(`expires=${new Date(A).toUTCString()}`),j.isString(t)&&o.push(`path=${t}`),j.isString(i)&&o.push(`domain=${i}`),n===!0&&o.push("secure"),j.isString(s)&&o.push(`SameSite=${s}`),document.cookie=o.join("; ")},read(r){if(typeof document>"u")return null;const e=document.cookie.match(new RegExp("(?:^|; )"+r+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(r){this.write(r,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function u1(r){return typeof r!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(r)}function d1(r,e){return e?r.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):r}function cc(r,e,A){let t=!u1(e);return r&&(t||A==!1)?d1(r,e):e}const hc=r=>r instanceof OA?{...r}:r;function Xt(r,e){e=e||{};const A={};function t(l,c,d,p){return j.isPlainObject(l)&&j.isPlainObject(c)?j.merge.call({caseless:p},l,c):j.isPlainObject(c)?j.merge({},c):j.isArray(c)?c.slice():c}function i(l,c,d,p){if(j.isUndefined(c)){if(!j.isUndefined(l))return t(void 0,l,d,p)}else return t(l,c,d,p)}function n(l,c){if(!j.isUndefined(c))return t(void 0,c)}function s(l,c){if(j.isUndefined(c)){if(!j.isUndefined(l))return t(void 0,l)}else return t(void 0,c)}function o(l,c,d){if(d in e)return t(l,c);if(d in r)return t(void 0,l)}const a={url:n,method:n,data:n,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:o,headers:(l,c,d)=>i(hc(l),hc(c),d,!0)};return j.forEach(Object.keys({...r,...e}),function(c){if(c==="__proto__"||c==="constructor"||c==="prototype")return;const d=j.hasOwnProp(a,c)?a[c]:i,p=d(r[c],e[c],c);j.isUndefined(p)&&d!==o||(A[c]=p)}),A}const uc=r=>{const e=Xt({},r);let{data:A,withXSRFToken:t,xsrfHeaderName:i,xsrfCookieName:n,headers:s,auth:o}=e;if(e.headers=s=OA.from(s),e.url=tc(cc(e.baseURL,e.url,e.allowAbsoluteUrls),r.params,r.paramsSerializer),o&&s.set("Authorization","Basic "+btoa((o.username||"")+":"+(o.password?unescape(encodeURIComponent(o.password)):""))),j.isFormData(A)){if(xA.hasStandardBrowserEnv||xA.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(j.isFunction(A.getHeaders)){const a=A.getHeaders(),l=["content-type","content-length"];Object.entries(a).forEach(([c,d])=>{l.includes(c.toLowerCase())&&s.set(c,d)})}}if(xA.hasStandardBrowserEnv&&(t&&j.isFunction(t)&&(t=t(e)),t||t!==!1&&c1(e.url))){const a=i&&n&&h1.read(n);a&&s.set(i,a)}return e},f1=typeof XMLHttpRequest<"u"&&function(r){return new Promise(function(A,t){const i=uc(r);let n=i.data;const s=OA.from(i.headers).normalize();let{responseType:o,onUploadProgress:a,onDownloadProgress:l}=i,c,d,p,y,w;function C(){y&&y(),w&&w(),i.cancelToken&&i.cancelToken.unsubscribe(c),i.signal&&i.signal.removeEventListener("abort",c)}let v=new XMLHttpRequest;v.open(i.method.toUpperCase(),i.url,!0),v.timeout=i.timeout;function S(){if(!v)return;const k=OA.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders()),V={data:!o||o==="text"||o==="json"?v.responseText:v.response,status:v.status,statusText:v.statusText,headers:k,config:r,request:v};oc(function(Z){A(Z),C()},function(Z){t(Z),C()},V),v=null}"onloadend"in v?v.onloadend=S:v.onreadystatechange=function(){!v||v.readyState!==4||v.status===0&&!(v.responseURL&&v.responseURL.indexOf("file:")===0)||setTimeout(S)},v.onabort=function(){v&&(t(new Pe("Request aborted",Pe.ECONNABORTED,r,v)),v=null)},v.onerror=function(x){const V=x&&x.message?x.message:"Network Error",N=new Pe(V,Pe.ERR_NETWORK,r,v);N.event=x||null,t(N),v=null},v.ontimeout=function(){let x=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const V=i.transitional||Ws;i.timeoutErrorMessage&&(x=i.timeoutErrorMessage),t(new Pe(x,V.clarifyTimeoutError?Pe.ETIMEDOUT:Pe.ECONNABORTED,r,v)),v=null},n===void 0&&s.setContentType(null),"setRequestHeader"in v&&j.forEach(s.toJSON(),function(x,V){v.setRequestHeader(V,x)}),j.isUndefined(i.withCredentials)||(v.withCredentials=!!i.withCredentials),o&&o!=="json"&&(v.responseType=i.responseType),l&&([p,w]=Ri(l,!0),v.addEventListener("progress",p)),a&&v.upload&&([d,y]=Ri(a),v.upload.addEventListener("progress",d),v.upload.addEventListener("loadend",y)),(i.cancelToken||i.signal)&&(c=k=>{v&&(t(!k||k.type?new zr(null,r,v):k),v.abort(),v=null)},i.cancelToken&&i.cancelToken.subscribe(c),i.signal&&(i.signal.aborted?c():i.signal.addEventListener("abort",c)));const F=o1(i.url);if(F&&xA.protocols.indexOf(F)===-1){t(new Pe("Unsupported protocol "+F+":",Pe.ERR_BAD_REQUEST,r));return}v.send(n||null)})},p1=(r,e)=>{const{length:A}=r=r?r.filter(Boolean):[];if(e||A){let t=new AbortController,i;const n=function(l){if(!i){i=!0,o();const c=l instanceof Error?l:this.reason;t.abort(c instanceof Pe?c:new zr(c instanceof Error?c.message:c))}};let s=e&&setTimeout(()=>{s=null,n(new Pe(`timeout of ${e}ms exceeded`,Pe.ETIMEDOUT))},e);const o=()=>{r&&(s&&clearTimeout(s),s=null,r.forEach(l=>{l.unsubscribe?l.unsubscribe(n):l.removeEventListener("abort",n)}),r=null)};r.forEach(l=>l.addEventListener("abort",n));const{signal:a}=t;return a.unsubscribe=()=>j.asap(o),a}},g1=function*(r,e){let A=r.byteLength;if(A<e){yield r;return}let t=0,i;for(;t<A;)i=t+e,yield r.slice(t,i),t=i},m1=async function*(r,e){for await(const A of B1(r))yield*g1(A,e)},B1=async function*(r){if(r[Symbol.asyncIterator]){yield*r;return}const e=r.getReader();try{for(;;){const{done:A,value:t}=await e.read();if(A)break;yield t}}finally{await e.cancel()}},dc=(r,e,A,t)=>{const i=m1(r,e);let n=0,s,o=a=>{s||(s=!0,t&&t(a))};return new ReadableStream({async pull(a){try{const{done:l,value:c}=await i.next();if(l){o(),a.close();return}let d=c.byteLength;if(A){let p=n+=d;A(p)}a.enqueue(new Uint8Array(c))}catch(l){throw o(l),l}},cancel(a){return o(a),i.return()}},{highWaterMark:2})},fc=64*1024,{isFunction:Wi}=j,w1=(({Request:r,Response:e})=>({Request:r,Response:e}))(j.global),{ReadableStream:pc,TextEncoder:gc}=j.global,mc=(r,...e)=>{try{return!!r(...e)}catch{return!1}},C1=r=>{r=j.merge.call({skipUndefined:!0},w1,r);const{fetch:e,Request:A,Response:t}=r,i=e?Wi(e):typeof fetch=="function",n=Wi(A),s=Wi(t);if(!i)return!1;const o=i&&Wi(pc),a=i&&(typeof gc=="function"?(w=>C=>w.encode(C))(new gc):async w=>new Uint8Array(await new A(w).arrayBuffer())),l=n&&o&&mc(()=>{let w=!1;const C=new A(xA.origin,{body:new pc,method:"POST",get duplex(){return w=!0,"half"}}).headers.has("Content-Type");return w&&!C}),c=s&&o&&mc(()=>j.isReadableStream(new t("").body)),d={stream:c&&(w=>w.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(w=>{!d[w]&&(d[w]=(C,v)=>{let S=C&&C[w];if(S)return S.call(C);throw new Pe(`Response type '${w}' is not supported`,Pe.ERR_NOT_SUPPORT,v)})});const p=async w=>{if(w==null)return 0;if(j.isBlob(w))return w.size;if(j.isSpecCompliantForm(w))return(await new A(xA.origin,{method:"POST",body:w}).arrayBuffer()).byteLength;if(j.isArrayBufferView(w)||j.isArrayBuffer(w))return w.byteLength;if(j.isURLSearchParams(w)&&(w=w+""),j.isString(w))return(await a(w)).byteLength},y=async(w,C)=>{const v=j.toFiniteNumber(w.getContentLength());return v??p(C)};return async w=>{let{url:C,method:v,data:S,signal:F,cancelToken:k,timeout:x,onDownloadProgress:V,onUploadProgress:N,responseType:Z,headers:X,withCredentials:W="same-origin",fetchOptions:ae}=uc(w),G=e||fetch;Z=Z?(Z+"").toLowerCase():"text";let ee=p1([F,k&&k.toAbortSignal()],x),oe=null;const me=ee&&ee.unsubscribe&&(()=>{ee.unsubscribe()});let Le;try{if(N&&l&&v!=="get"&&v!=="head"&&(Le=await y(X,S))!==0){let Ce=new A(C,{method:"POST",body:S,duplex:"half"}),ge;if(j.isFormData(S)&&(ge=Ce.headers.get("content-type"))&&X.setContentType(ge),Ce.body){const[Me,_e]=ac(Le,Ri(lc(N)));S=dc(Ce.body,fc,Me,_e)}}j.isString(W)||(W=W?"include":"omit");const Ue=n&&"credentials"in A.prototype,Fe={...ae,signal:ee,method:v.toUpperCase(),headers:X.normalize().toJSON(),body:S,duplex:"half",credentials:Ue?W:void 0};oe=n&&new A(C,Fe);let ke=await(n?G(oe,ae):G(C,Fe));const ye=c&&(Z==="stream"||Z==="response");if(c&&(V||ye&&me)){const Ce={};["status","statusText","headers"].forEach(Be=>{Ce[Be]=ke[Be]});const ge=j.toFiniteNumber(ke.headers.get("content-length")),[Me,_e]=V&&ac(ge,Ri(lc(V),!0))||[];ke=new t(dc(ke.body,fc,Me,()=>{_e&&_e(),me&&me()}),Ce)}Z=Z||"text";let ve=await d[j.findKey(d,Z)||"text"](ke,w);return!ye&&me&&me(),await new Promise((Ce,ge)=>{oc(Ce,ge,{data:ve,headers:OA.from(ke.headers),status:ke.status,statusText:ke.statusText,config:w,request:oe})})}catch(Ue){throw me&&me(),Ue&&Ue.name==="TypeError"&&/Load failed|fetch/i.test(Ue.message)?Object.assign(new Pe("Network Error",Pe.ERR_NETWORK,w,oe,Ue&&Ue.response),{cause:Ue.cause||Ue}):Pe.from(Ue,Ue&&Ue.code,w,oe,Ue&&Ue.response)}}},v1=new Map,Bc=r=>{let e=r&&r.env||{};const{fetch:A,Request:t,Response:i}=e,n=[t,i,A];let s=n.length,o=s,a,l,c=v1;for(;o--;)a=n[o],l=c.get(a),l===void 0&&c.set(a,l=o?new Map:C1(e)),c=l;return l};Bc();const qs={http:z0,xhr:f1,fetch:{get:Bc}};j.forEach(qs,(r,e)=>{if(r){try{Object.defineProperty(r,"name",{value:e})}catch{}Object.defineProperty(r,"adapterName",{value:e})}});const wc=r=>`- ${r}`,y1=r=>j.isFunction(r)||r===null||r===!1;function b1(r,e){r=j.isArray(r)?r:[r];const{length:A}=r;let t,i;const n={};for(let s=0;s<A;s++){t=r[s];let o;if(i=t,!y1(t)&&(i=qs[(o=String(t)).toLowerCase()],i===void 0))throw new Pe(`Unknown adapter '${o}'`);if(i&&(j.isFunction(i)||(i=i.get(e))))break;n[o||"#"+s]=i}if(!i){const s=Object.entries(n).map(([a,l])=>`adapter ${a} `+(l===!1?"is not supported by the environment":"is not available in the build"));let o=A?s.length>1?`since :
|
|
4
|
-
`+s.map(
|
|
5
|
-
`):" "+
|
|
6
|
-
`+n):t.stack=n}catch{}}throw t}}_request(e,A){typeof e=="string"?(A=A||{},A.url=e):A=e||{},A=Xt(this.defaults,A);const{transitional:t,paramsSerializer:i,headers:n}=A;t!==void 0&&Xi.assertOptions(t,{silentJSONParsing:XA.transitional(XA.boolean),forcedJSONParsing:XA.transitional(XA.boolean),clarifyTimeoutError:XA.transitional(XA.boolean),legacyInterceptorReqResOrdering:XA.transitional(XA.boolean)},!1),i!=null&&(j.isFunction(i)?A.paramsSerializer={serialize:i}:Xi.assertOptions(i,{encode:XA.function,serialize:XA.function},!0)),A.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?A.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:A.allowAbsoluteUrls=!0),Xi.assertOptions(A,{baseUrl:XA.spelling("baseURL"),withXsrfToken:XA.spelling("withXSRFToken")},!0),A.method=(A.method||this.defaults.method||"get").toLowerCase();let s=n&&j.merge(n.common,n[A.method]);n&&j.forEach(["delete","get","head","post","put","patch","common"],w=>{delete n[w]}),A.headers=OA.concat(s,n);const o=[];let a=!0;this.interceptors.request.forEach(function(C){if(typeof C.runWhen=="function"&&C.runWhen(A)===!1)return;a=a&&C.synchronous;const v=A.transitional||Ws;v&&v.legacyInterceptorReqResOrdering?o.unshift(C.fulfilled,C.rejected):o.push(C.fulfilled,C.rejected)});const l=[];this.interceptors.response.forEach(function(C){l.push(C.fulfilled,C.rejected)});let c,d=0,p;if(!a){const w=[vc.bind(this),void 0];for(w.unshift(...o),w.push(...l),p=w.length,c=Promise.resolve(A);d<p;)c=c.then(w[d++],w[d++]);return c}p=o.length;let y=A;for(;d<p;){const w=o[d++],C=o[d++];try{y=w(y)}catch(v){C.call(this,v);break}}try{c=vc.call(this,y)}catch(w){return Promise.reject(w)}for(d=0,p=l.length;d<p;)c=c.then(l[d++],l[d++]);return c}getUri(e){e=Xt(this.defaults,e);const A=cc(e.baseURL,e.url,e.allowAbsoluteUrls);return tc(A,e.params,e.paramsSerializer)}};j.forEach(["delete","get","head","options"],function(e){Jt.prototype[e]=function(A,t){return this.request(Xt(t||{},{method:e,url:A,data:(t||{}).data}))}}),j.forEach(["post","put","patch"],function(e){function A(t){return function(n,s,o){return this.request(Xt(o||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:s}))}}Jt.prototype[e]=A(),Jt.prototype[e+"Form"]=A(!0)});let Q1=class Fd{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let A;this.promise=new Promise(function(n){A=n});const t=this;this.promise.then(i=>{if(!t._listeners)return;let n=t._listeners.length;for(;n-- >0;)t._listeners[n](i);t._listeners=null}),this.promise.then=i=>{let n;const s=new Promise(o=>{t.subscribe(o),n=o}).then(i);return s.cancel=function(){t.unsubscribe(n)},s},e(function(n,s,o){t.reason||(t.reason=new zr(n,s,o),A(t.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const A=this._listeners.indexOf(e);A!==-1&&this._listeners.splice(A,1)}toAbortSignal(){const e=new AbortController,A=t=>{e.abort(t)};return this.subscribe(A),e.signal.unsubscribe=()=>this.unsubscribe(A),e.signal}static source(){let e;return{token:new Fd(function(i){e=i}),cancel:e}}};function x1(r){return function(A){return r.apply(null,A)}}function F1(r){return j.isObject(r)&&r.isAxiosError===!0}const js={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(js).forEach(([r,e])=>{js[e]=r});function Tc(r){const e=new Jt(r),A=zl(Jt.prototype.request,e);return j.extend(A,Jt.prototype,e,{allOwnKeys:!0}),j.extend(A,e,null,{allOwnKeys:!0}),A.create=function(i){return Tc(Xt(r,i))},A}const oA=Tc(Pr);oA.Axios=Jt,oA.CanceledError=zr,oA.CancelToken=Q1,oA.isCancel=sc,oA.VERSION=yc,oA.toFormData=zi,oA.AxiosError=Pe,oA.Cancel=oA.CanceledError,oA.all=function(e){return Promise.all(e)},oA.spread=x1,oA.isAxiosError=F1,oA.mergeConfig=Xt,oA.AxiosHeaders=OA,oA.formToJSON=r=>ic(j.isHTMLForm(r)?new FormData(r):r),oA.getAdapter=Cc.getAdapter,oA.HttpStatusCode=js,oA.default=oA;const{Axios:dy,AxiosError:fy,CanceledError:py,isCancel:gy,CancelToken:my,VERSION:By,all:wy,Cancel:Cy,isAxiosError:vy,spread:yy,toFormData:by,AxiosHeaders:Ty,HttpStatusCode:Qy,formToJSON:xy,getAdapter:Fy,mergeConfig:Uy}=oA,lt=Object.create(null);lt.open="0",lt.close="1",lt.ping="2",lt.pong="3",lt.message="4",lt.upgrade="5",lt.noop="6";const Ji=Object.create(null);Object.keys(lt).forEach(r=>{Ji[lt[r]]=r});const eo={type:"error",data:"parser error"},Qc=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",xc=typeof ArrayBuffer=="function",Fc=r=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(r):r&&r.buffer instanceof ArrayBuffer,Ao=({type:r,data:e},A,t)=>Qc&&e instanceof Blob?A?t(e):Uc(e,t):xc&&(e instanceof ArrayBuffer||Fc(e))?A?t(e):Uc(new Blob([e]),t):t(lt[r]+(e||"")),Uc=(r,e)=>{const A=new FileReader;return A.onload=function(){const t=A.result.split(",")[1];e("b"+(t||""))},A.readAsDataURL(r)};function Ec(r){return r instanceof Uint8Array?r:r instanceof ArrayBuffer?new Uint8Array(r):new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}let to;function U1(r,e){if(Qc&&r.data instanceof Blob)return r.data.arrayBuffer().then(Ec).then(e);if(xc&&(r.data instanceof ArrayBuffer||Fc(r.data)))return e(Ec(r.data));Ao(r,!1,A=>{to||(to=new TextEncoder),e(to.encode(A))})}const Sc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Gr=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let r=0;r<Sc.length;r++)Gr[Sc.charCodeAt(r)]=r;const E1=r=>{let e=r.length*.75,A=r.length,t,i=0,n,s,o,a;r[r.length-1]==="="&&(e--,r[r.length-2]==="="&&e--);const l=new ArrayBuffer(e),c=new Uint8Array(l);for(t=0;t<A;t+=4)n=Gr[r.charCodeAt(t)],s=Gr[r.charCodeAt(t+1)],o=Gr[r.charCodeAt(t+2)],a=Gr[r.charCodeAt(t+3)],c[i++]=n<<2|s>>4,c[i++]=(s&15)<<4|o>>2,c[i++]=(o&3)<<6|a&63;return l},S1=typeof ArrayBuffer=="function",ro=(r,e)=>{if(typeof r!="string")return{type:"message",data:Hc(r,e)};const A=r.charAt(0);return A==="b"?{type:"message",data:H1(r.substring(1),e)}:Ji[A]?r.length>1?{type:Ji[A],data:r.substring(1)}:{type:Ji[A]}:eo},H1=(r,e)=>{if(S1){const A=E1(r);return Hc(A,e)}else return{base64:!0,data:r}},Hc=(r,e)=>e==="blob"?r instanceof Blob?r:new Blob([r]):r instanceof ArrayBuffer?r:r.buffer,Lc="",L1=(r,e)=>{const A=r.length,t=new Array(A);let i=0;r.forEach((n,s)=>{Ao(n,!1,o=>{t[s]=o,++i===A&&e(t.join(Lc))})})},M1=(r,e)=>{const A=r.split(Lc),t=[];for(let i=0;i<A.length;i++){const n=ro(A[i],e);if(t.push(n),n.type==="error")break}return t};function I1(){return new TransformStream({transform(r,e){U1(r,A=>{const t=A.length;let i;if(t<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,t);else if(t<65536){i=new Uint8Array(3);const n=new DataView(i.buffer);n.setUint8(0,126),n.setUint16(1,t)}else{i=new Uint8Array(9);const n=new DataView(i.buffer);n.setUint8(0,127),n.setBigUint64(1,BigInt(t))}r.data&&typeof r.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(A)})}})}let io;function Zi(r){return r.reduce((e,A)=>e+A.length,0)}function qi(r,e){if(r[0].length===e)return r.shift();const A=new Uint8Array(e);let t=0;for(let i=0;i<e;i++)A[i]=r[0][t++],t===r[0].length&&(r.shift(),t=0);return r.length&&t<r[0].length&&(r[0]=r[0].slice(t)),A}function _1(r,e){io||(io=new TextDecoder);const A=[];let t=0,i=-1,n=!1;return new TransformStream({transform(s,o){for(A.push(s);;){if(t===0){if(Zi(A)<1)break;const a=qi(A,1);n=(a[0]&128)===128,i=a[0]&127,i<126?t=3:i===126?t=1:t=2}else if(t===1){if(Zi(A)<2)break;const a=qi(A,2);i=new DataView(a.buffer,a.byteOffset,a.length).getUint16(0),t=3}else if(t===2){if(Zi(A)<8)break;const a=qi(A,8),l=new DataView(a.buffer,a.byteOffset,a.length),c=l.getUint32(0);if(c>Math.pow(2,21)-1){o.enqueue(eo);break}i=c*Math.pow(2,32)+l.getUint32(4),t=3}else{if(Zi(A)<i)break;const a=qi(A,i);o.enqueue(ro(n?a:io.decode(a),e)),t=0}if(i===0||i>r){o.enqueue(eo);break}}}})}const Mc=4;function gA(r){if(r)return D1(r)}function D1(r){for(var e in gA.prototype)r[e]=gA.prototype[e];return r}gA.prototype.on=gA.prototype.addEventListener=function(r,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+r]=this._callbacks["$"+r]||[]).push(e),this},gA.prototype.once=function(r,e){function A(){this.off(r,A),e.apply(this,arguments)}return A.fn=e,this.on(r,A),this},gA.prototype.off=gA.prototype.removeListener=gA.prototype.removeAllListeners=gA.prototype.removeEventListener=function(r,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var A=this._callbacks["$"+r];if(!A)return this;if(arguments.length==1)return delete this._callbacks["$"+r],this;for(var t,i=0;i<A.length;i++)if(t=A[i],t===e||t.fn===e){A.splice(i,1);break}return A.length===0&&delete this._callbacks["$"+r],this},gA.prototype.emit=function(r){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),A=this._callbacks["$"+r],t=1;t<arguments.length;t++)e[t-1]=arguments[t];if(A){A=A.slice(0);for(var t=0,i=A.length;t<i;++t)A[t].apply(this,e)}return this},gA.prototype.emitReserved=gA.prototype.emit,gA.prototype.listeners=function(r){return this._callbacks=this._callbacks||{},this._callbacks["$"+r]||[]},gA.prototype.hasListeners=function(r){return!!this.listeners(r).length};const Yi=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,A)=>A(e,0),JA=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),k1="arraybuffer";function Ey(){}function Ic(r,...e){return e.reduce((A,t)=>(r.hasOwnProperty(t)&&(A[t]=r[t]),A),{})}const O1=JA.setTimeout,N1=JA.clearTimeout;function ji(r,e){e.useNativeTimers?(r.setTimeoutFn=O1.bind(JA),r.clearTimeoutFn=N1.bind(JA)):(r.setTimeoutFn=JA.setTimeout.bind(JA),r.clearTimeoutFn=JA.clearTimeout.bind(JA))}const K1=1.33;function P1(r){return typeof r=="string"?V1(r):Math.ceil((r.byteLength||r.size)*K1)}function V1(r){let e=0,A=0;for(let t=0,i=r.length;t<i;t++)e=r.charCodeAt(t),e<128?A+=1:e<2048?A+=2:e<55296||e>=57344?A+=3:(t++,A+=4);return A}function _c(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function z1(r){let e="";for(let A in r)r.hasOwnProperty(A)&&(e.length&&(e+="&"),e+=encodeURIComponent(A)+"="+encodeURIComponent(r[A]));return e}function G1(r){let e={},A=r.split("&");for(let t=0,i=A.length;t<i;t++){let n=A[t].split("=");e[decodeURIComponent(n[0])]=decodeURIComponent(n[1])}return e}class R1 extends Error{constructor(e,A,t){super(e),this.description=A,this.context=t,this.type="TransportError"}}class no extends gA{constructor(e){super(),this.writable=!1,ji(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,A,t){return super.emitReserved("error",new R1(e,A,t)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const A=ro(e,this.socket.binaryType);this.onPacket(A)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,A={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(A)}_hostname(){const e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(this.opts.port)!==443||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){const A=z1(e);return A.length?"?"+A:""}}class W1 extends no{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(e){this.readyState="pausing";const A=()=>{this.readyState="paused",e()};if(this._polling||!this.writable){let t=0;this._polling&&(t++,this.once("pollComplete",function(){--t||A()})),this.writable||(t++,this.once("drain",function(){--t||A()}))}else A()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const A=t=>{if(this.readyState==="opening"&&t.type==="open"&&this.onOpen(),t.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(t)};M1(e,this.socket.binaryType).forEach(A),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,L1(e,A=>{this.doWrite(A,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",A=this.query||{};return this.opts.timestampRequests!==!1&&(A[this.opts.timestampParam]=_c()),!this.supportsBinary&&!A.sid&&(A.b64=1),this.createUri(e,A)}}let Dc=!1;try{Dc=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const $1=Dc;function X1(){}class J1 extends W1{constructor(e){if(super(e),typeof location<"u"){const A=location.protocol==="https:";let t=location.port;t||(t=A?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||t!==e.port}}doWrite(e,A){const t=this.request({method:"POST",data:e});t.on("success",A),t.on("error",(i,n)=>{this.onError("xhr post error",i,n)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(A,t)=>{this.onError("xhr poll error",A,t)}),this.pollXhr=e}}class ct extends gA{constructor(e,A,t){super(),this.createRequest=e,ji(this,t),this._opts=t,this._method=t.method||"GET",this._uri=A,this._data=t.data!==void 0?t.data:null,this._create()}_create(){var e;const A=Ic(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");A.xdomain=!!this._opts.xd;const t=this._xhr=this.createRequest(A);try{t.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){t.setDisableHeaderCheck&&t.setDisableHeaderCheck(!0);for(let i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&t.setRequestHeader(i,this._opts.extraHeaders[i])}}catch{}if(this._method==="POST")try{t.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{t.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(t),"withCredentials"in t&&(t.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(t.timeout=this._opts.requestTimeout),t.onreadystatechange=()=>{var i;t.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.parseCookies(t.getResponseHeader("set-cookie"))),t.readyState===4&&(t.status===200||t.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof t.status=="number"?t.status:0)},0))},t.send(this._data)}catch(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=ct.requestsCount++,ct.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=X1,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete ct.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}if(ct.requestsCount=0,ct.requests={},typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",kc);else if(typeof addEventListener=="function"){const r="onpagehide"in JA?"pagehide":"unload";addEventListener(r,kc,!1)}}function kc(){for(let r in ct.requests)ct.requests.hasOwnProperty(r)&&ct.requests[r].abort()}const Z1=(function(){const r=Oc({xdomain:!1});return r&&r.responseType!==null})();class q1 extends J1{constructor(e){super(e);const A=e&&e.forceBase64;this.supportsBinary=Z1&&!A}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new ct(Oc,this.uri(),e)}}function Oc(r){const e=r.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||$1))return new XMLHttpRequest}catch{}if(!e)try{return new JA[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Nc=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class Y1 extends no{get name(){return"websocket"}doOpen(){const e=this.uri(),A=this.opts.protocols,t=Nc?{}:Ic(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(t.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,A,t)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let A=0;A<e.length;A++){const t=e[A],i=A===e.length-1;Ao(t,this.supportsBinary,n=>{try{this.doWrite(t,n)}catch{}i&&Yi(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",A=this.query||{};return this.opts.timestampRequests&&(A[this.opts.timestampParam]=_c()),this.supportsBinary||(A.b64=1),this.createUri(e,A)}}const so=JA.WebSocket||JA.MozWebSocket;class j1 extends Y1{createSocket(e,A,t){return Nc?new so(e,A,t):A?new so(e,A):new so(e)}doWrite(e,A){this.ws.send(A)}}class eg extends no{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const A=_1(Number.MAX_SAFE_INTEGER,this.socket.binaryType),t=e.readable.pipeThrough(A).getReader(),i=I1();i.readable.pipeTo(e.writable),this._writer=i.writable.getWriter();const n=()=>{t.read().then(({done:o,value:a})=>{o||(this.onPacket(a),n())}).catch(o=>{})};n();const s={type:"open"};this.query.sid&&(s.data=`{"sid":"${this.query.sid}"}`),this._writer.write(s).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let A=0;A<e.length;A++){const t=e[A],i=A===e.length-1;this._writer.write(t).then(()=>{i&&Yi(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const Ag={websocket:j1,webtransport:eg,polling:q1},tg=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,rg=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function oo(r){if(r.length>8e3)throw"URI too long";const e=r,A=r.indexOf("["),t=r.indexOf("]");A!=-1&&t!=-1&&(r=r.substring(0,A)+r.substring(A,t).replace(/:/g,";")+r.substring(t,r.length));let i=tg.exec(r||""),n={},s=14;for(;s--;)n[rg[s]]=i[s]||"";return A!=-1&&t!=-1&&(n.source=e,n.host=n.host.substring(1,n.host.length-1).replace(/;/g,":"),n.authority=n.authority.replace("[","").replace("]","").replace(/;/g,":"),n.ipv6uri=!0),n.pathNames=ig(n,n.path),n.queryKey=ng(n,n.query),n}function ig(r,e){const A=/\/{2,9}/g,t=e.replace(A,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&t.splice(0,1),e.slice(-1)=="/"&&t.splice(t.length-1,1),t}function ng(r,e){const A={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(t,i,n){i&&(A[i]=n)}),A}const ao=typeof addEventListener=="function"&&typeof removeEventListener=="function",en=[];ao&&addEventListener("offline",()=>{en.forEach(r=>r())},!1);class Et extends gA{constructor(e,A){if(super(),this.binaryType=k1,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(A=e,e=null),e){const t=oo(e);A.hostname=t.host,A.secure=t.protocol==="https"||t.protocol==="wss",A.port=t.port,t.query&&(A.query=t.query)}else A.host&&(A.hostname=oo(A.host).host);ji(this,A),this.secure=A.secure!=null?A.secure:typeof location<"u"&&location.protocol==="https:",A.hostname&&!A.port&&(A.port=this.secure?"443":"80"),this.hostname=A.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=A.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},A.transports.forEach(t=>{const i=t.prototype.name;this.transports.push(i),this._transportsByName[i]=t}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},A),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=G1(this.opts.query)),ao&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},en.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const A=Object.assign({},this.opts.query);A.EIO=Mc,A.transport=e,this.id&&(A.sid=this.id);const t=Object.assign({},this.opts,{query:A,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](t)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&Et.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const A=this.createTransport(e);A.open(),this.setTransport(A)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",A=>this._onClose("transport close",A))}onOpen(){this.readyState="open",Et.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const A=new Error("server error");A.code=e.data,this._onError(A);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let A=1;for(let t=0;t<this.writeBuffer.length;t++){const i=this.writeBuffer[t].data;if(i&&(A+=P1(i)),t>0&&A>this._maxPayload)return this.writeBuffer.slice(0,t);A+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,Yi(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,A,t){return this._sendPacket("message",e,A,t),this}send(e,A,t){return this._sendPacket("message",e,A,t),this}_sendPacket(e,A,t,i){if(typeof A=="function"&&(i=A,A=void 0),typeof t=="function"&&(i=t,t=null),this.readyState==="closing"||this.readyState==="closed")return;t=t||{},t.compress=t.compress!==!1;const n={type:e,data:A,options:t};this.emitReserved("packetCreate",n),this.writeBuffer.push(n),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},A=()=>{this.off("upgrade",A),this.off("upgradeError",A),e()},t=()=>{this.once("upgrade",A),this.once("upgradeError",A)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?t():e()}):this.upgrading?t():e()),this}_onError(e){if(Et.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,A){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),ao&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const t=en.indexOf(this._offlineEventListener);t!==-1&&en.splice(t,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,A),this.writeBuffer=[],this._prevBufferLen=0}}}Et.protocol=Mc;class sg extends Et{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}_probe(e){let A=this.createTransport(e),t=!1;Et.priorWebsocketSuccess=!1;const i=()=>{t||(A.send([{type:"ping",data:"probe"}]),A.once("packet",d=>{if(!t)if(d.type==="pong"&&d.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",A),!A)return;Et.priorWebsocketSuccess=A.name==="websocket",this.transport.pause(()=>{t||this.readyState!=="closed"&&(c(),this.setTransport(A),A.send([{type:"upgrade"}]),this.emitReserved("upgrade",A),A=null,this.upgrading=!1,this.flush())})}else{const p=new Error("probe error");p.transport=A.name,this.emitReserved("upgradeError",p)}}))};function n(){t||(t=!0,c(),A.close(),A=null)}const s=d=>{const p=new Error("probe error: "+d);p.transport=A.name,n(),this.emitReserved("upgradeError",p)};function o(){s("transport closed")}function a(){s("socket closed")}function l(d){A&&d.name!==A.name&&n()}const c=()=>{A.removeListener("open",i),A.removeListener("error",s),A.removeListener("close",o),this.off("close",a),this.off("upgrading",l)};A.once("open",i),A.once("error",s),A.once("close",o),this.once("close",a),this.once("upgrading",l),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{t||A.open()},200):A.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const A=[];for(let t=0;t<e.length;t++)~this.transports.indexOf(e[t])&&A.push(e[t]);return A}}let og=class extends sg{constructor(e,A={}){const t=typeof e=="object"?e:A;(!t.transports||t.transports&&typeof t.transports[0]=="string")&&(t.transports=(t.transports||["polling","websocket","webtransport"]).map(i=>Ag[i]).filter(i=>!!i)),super(e,t)}};function ag(r,e="",A){let t=r;A=A||typeof location<"u"&&location,r==null&&(r=A.protocol+"//"+A.host),typeof r=="string"&&(r.charAt(0)==="/"&&(r.charAt(1)==="/"?r=A.protocol+r:r=A.host+r),/^(https?|wss?):\/\//.test(r)||(typeof A<"u"?r=A.protocol+"//"+r:r="https://"+r),t=oo(r)),t.port||(/^(http|ws)$/.test(t.protocol)?t.port="80":/^(http|ws)s$/.test(t.protocol)&&(t.port="443")),t.path=t.path||"/";const n=t.host.indexOf(":")!==-1?"["+t.host+"]":t.host;return t.id=t.protocol+"://"+n+":"+t.port+e,t.href=t.protocol+"://"+n+(A&&A.port===t.port?"":":"+t.port),t}const lg=typeof ArrayBuffer=="function",cg=r=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(r):r.buffer instanceof ArrayBuffer,Kc=Object.prototype.toString,hg=typeof Blob=="function"||typeof Blob<"u"&&Kc.call(Blob)==="[object BlobConstructor]",ug=typeof File=="function"||typeof File<"u"&&Kc.call(File)==="[object FileConstructor]";function lo(r){return lg&&(r instanceof ArrayBuffer||cg(r))||hg&&r instanceof Blob||ug&&r instanceof File}function An(r,e){if(!r||typeof r!="object")return!1;if(Array.isArray(r)){for(let A=0,t=r.length;A<t;A++)if(An(r[A]))return!0;return!1}if(lo(r))return!0;if(r.toJSON&&typeof r.toJSON=="function"&&arguments.length===1)return An(r.toJSON(),!0);for(const A in r)if(Object.prototype.hasOwnProperty.call(r,A)&&An(r[A]))return!0;return!1}function dg(r){const e=[],A=r.data,t=r;return t.data=co(A,e),t.attachments=e.length,{packet:t,buffers:e}}function co(r,e){if(!r)return r;if(lo(r)){const A={_placeholder:!0,num:e.length};return e.push(r),A}else if(Array.isArray(r)){const A=new Array(r.length);for(let t=0;t<r.length;t++)A[t]=co(r[t],e);return A}else if(typeof r=="object"&&!(r instanceof Date)){const A={};for(const t in r)Object.prototype.hasOwnProperty.call(r,t)&&(A[t]=co(r[t],e));return A}return r}function fg(r,e){return r.data=ho(r.data,e),delete r.attachments,r}function ho(r,e){if(!r)return r;if(r&&r._placeholder===!0){if(typeof r.num=="number"&&r.num>=0&&r.num<e.length)return e[r.num];throw new Error("illegal attachments")}else if(Array.isArray(r))for(let A=0;A<r.length;A++)r[A]=ho(r[A],e);else if(typeof r=="object")for(const A in r)Object.prototype.hasOwnProperty.call(r,A)&&(r[A]=ho(r[A],e));return r}const pg=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var Ze;(function(r){r[r.CONNECT=0]="CONNECT",r[r.DISCONNECT=1]="DISCONNECT",r[r.EVENT=2]="EVENT",r[r.ACK=3]="ACK",r[r.CONNECT_ERROR=4]="CONNECT_ERROR",r[r.BINARY_EVENT=5]="BINARY_EVENT",r[r.BINARY_ACK=6]="BINARY_ACK"})(Ze||(Ze={}));class gg{constructor(e){this.replacer=e}encode(e){return(e.type===Ze.EVENT||e.type===Ze.ACK)&&An(e)?this.encodeAsBinary({type:e.type===Ze.EVENT?Ze.BINARY_EVENT:Ze.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let A=""+e.type;return(e.type===Ze.BINARY_EVENT||e.type===Ze.BINARY_ACK)&&(A+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(A+=e.nsp+","),e.id!=null&&(A+=e.id),e.data!=null&&(A+=JSON.stringify(e.data,this.replacer)),A}encodeAsBinary(e){const A=dg(e),t=this.encodeAsString(A.packet),i=A.buffers;return i.unshift(t),i}}class uo extends gA{constructor(e){super(),this.reviver=e}add(e){let A;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");A=this.decodeString(e);const t=A.type===Ze.BINARY_EVENT;t||A.type===Ze.BINARY_ACK?(A.type=t?Ze.EVENT:Ze.ACK,this.reconstructor=new mg(A),A.attachments===0&&super.emitReserved("decoded",A)):super.emitReserved("decoded",A)}else if(lo(e)||e.base64)if(this.reconstructor)A=this.reconstructor.takeBinaryData(e),A&&(this.reconstructor=null,super.emitReserved("decoded",A));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let A=0;const t={type:Number(e.charAt(0))};if(Ze[t.type]===void 0)throw new Error("unknown packet type "+t.type);if(t.type===Ze.BINARY_EVENT||t.type===Ze.BINARY_ACK){const n=A+1;for(;e.charAt(++A)!=="-"&&A!=e.length;);const s=e.substring(n,A);if(s!=Number(s)||e.charAt(A)!=="-")throw new Error("Illegal attachments");t.attachments=Number(s)}if(e.charAt(A+1)==="/"){const n=A+1;for(;++A&&!(e.charAt(A)===","||A===e.length););t.nsp=e.substring(n,A)}else t.nsp="/";const i=e.charAt(A+1);if(i!==""&&Number(i)==i){const n=A+1;for(;++A;){const s=e.charAt(A);if(s==null||Number(s)!=s){--A;break}if(A===e.length)break}t.id=Number(e.substring(n,A+1))}if(e.charAt(++A)){const n=this.tryParse(e.substr(A));if(uo.isPayloadValid(t.type,n))t.data=n;else throw new Error("invalid payload")}return t}tryParse(e){try{return JSON.parse(e,this.reviver)}catch{return!1}}static isPayloadValid(e,A){switch(e){case Ze.CONNECT:return Pc(A);case Ze.DISCONNECT:return A===void 0;case Ze.CONNECT_ERROR:return typeof A=="string"||Pc(A);case Ze.EVENT:case Ze.BINARY_EVENT:return Array.isArray(A)&&(typeof A[0]=="number"||typeof A[0]=="string"&&pg.indexOf(A[0])===-1);case Ze.ACK:case Ze.BINARY_ACK:return Array.isArray(A)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class mg{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const A=fg(this.reconPack,this.buffers);return this.finishedReconstruction(),A}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}function Pc(r){return Object.prototype.toString.call(r)==="[object Object]"}const Bg=Object.freeze(Object.defineProperty({__proto__:null,Decoder:uo,Encoder:gg,get PacketType(){return Ze}},Symbol.toStringTag,{value:"Module"}));function rt(r,e,A){return r.on(e,A),function(){r.off(e,A)}}const wg=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class Vc extends gA{constructor(e,A,t){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=A,t&&t.auth&&(this.auth=t.auth),this._opts=Object.assign({},t),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[rt(e,"open",this.onopen.bind(this)),rt(e,"packet",this.onpacket.bind(this)),rt(e,"error",this.onerror.bind(this)),rt(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...A){var t,i,n;if(wg.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(A.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(A),this;const s={type:Ze.EVENT,data:A};if(s.options={},s.options.compress=this.flags.compress!==!1,typeof A[A.length-1]=="function"){const c=this.ids++,d=A.pop();this._registerAckCallback(c,d),s.id=c}const o=(i=(t=this.io.engine)===null||t===void 0?void 0:t.transport)===null||i===void 0?void 0:i.writable,a=this.connected&&!(!((n=this.io.engine)===null||n===void 0)&&n._hasPingExpired());return this.flags.volatile&&!o||(a?(this.notifyOutgoingListeners(s),this.packet(s)):this.sendBuffer.push(s)),this.flags={},this}_registerAckCallback(e,A){var t;const i=(t=this.flags.timeout)!==null&&t!==void 0?t:this._opts.ackTimeout;if(i===void 0){this.acks[e]=A;return}const n=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let o=0;o<this.sendBuffer.length;o++)this.sendBuffer[o].id===e&&this.sendBuffer.splice(o,1);A.call(this,new Error("operation has timed out"))},i),s=(...o)=>{this.io.clearTimeoutFn(n),A.apply(this,o)};s.withError=!0,this.acks[e]=s}emitWithAck(e,...A){return new Promise((t,i)=>{const n=(s,o)=>s?i(s):t(o);n.withError=!0,A.push(n),this.emit(e,...A)})}_addToQueue(e){let A;typeof e[e.length-1]=="function"&&(A=e.pop());const t={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...n)=>(this._queue[0],i!==null?t.tryCount>this._opts.retries&&(this._queue.shift(),A&&A(i)):(this._queue.shift(),A&&A(null,...n)),t.pending=!1,this._drainQueue())),this._queue.push(t),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const A=this._queue[0];A.pending&&!e||(A.pending=!0,A.tryCount++,this.flags=A.flags,this.emit.apply(this,A.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:Ze.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,A){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,A),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(t=>String(t.id)===e)){const t=this.acks[e];delete this.acks[e],t.withError&&t.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case Ze.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case Ze.EVENT:case Ze.BINARY_EVENT:this.onevent(e);break;case Ze.ACK:case Ze.BINARY_ACK:this.onack(e);break;case Ze.DISCONNECT:this.ondisconnect();break;case Ze.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t);break}}onevent(e){const A=e.data||[];e.id!=null&&A.push(this.ack(e.id)),this.connected?this.emitEvent(A):this.receiveBuffer.push(Object.freeze(A))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const A=this._anyListeners.slice();for(const t of A)t.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const A=this;let t=!1;return function(...i){t||(t=!0,A.packet({type:Ze.ACK,id:e,data:i}))}}onack(e){const A=this.acks[e.id];typeof A=="function"&&(delete this.acks[e.id],A.withError&&e.data.unshift(null),A.apply(this,e.data))}onconnect(e,A){this.id=e,this.recovered=A&&this._pid===A,this._pid=A,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:Ze.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const A=this._anyListeners;for(let t=0;t<A.length;t++)if(e===A[t])return A.splice(t,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const A=this._anyOutgoingListeners;for(let t=0;t<A.length;t++)if(e===A[t])return A.splice(t,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const A=this._anyOutgoingListeners.slice();for(const t of A)t.apply(this,e.data)}}}function hr(r){r=r||{},this.ms=r.min||100,this.max=r.max||1e4,this.factor=r.factor||2,this.jitter=r.jitter>0&&r.jitter<=1?r.jitter:0,this.attempts=0}hr.prototype.duration=function(){var r=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),A=Math.floor(e*this.jitter*r);r=(Math.floor(e*10)&1)==0?r-A:r+A}return Math.min(r,this.max)|0},hr.prototype.reset=function(){this.attempts=0},hr.prototype.setMin=function(r){this.ms=r},hr.prototype.setMax=function(r){this.max=r},hr.prototype.setJitter=function(r){this.jitter=r};class fo extends gA{constructor(e,A){var t;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(A=e,e=void 0),A=A||{},A.path=A.path||"/socket.io",this.opts=A,ji(this,A),this.reconnection(A.reconnection!==!1),this.reconnectionAttempts(A.reconnectionAttempts||1/0),this.reconnectionDelay(A.reconnectionDelay||1e3),this.reconnectionDelayMax(A.reconnectionDelayMax||5e3),this.randomizationFactor((t=A.randomizationFactor)!==null&&t!==void 0?t:.5),this.backoff=new hr({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(A.timeout==null?2e4:A.timeout),this._readyState="closed",this.uri=e;const i=A.parser||Bg;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=A.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var A;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(A=this.backoff)===null||A===void 0||A.setMin(e),this)}randomizationFactor(e){var A;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(A=this.backoff)===null||A===void 0||A.setJitter(e),this)}reconnectionDelayMax(e){var A;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(A=this.backoff)===null||A===void 0||A.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new og(this.uri,this.opts);const A=this.engine,t=this;this._readyState="opening",this.skipReconnect=!1;const i=rt(A,"open",function(){t.onopen(),e&&e()}),n=o=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",o),e?e(o):this.maybeReconnectOnOpen()},s=rt(A,"error",n);if(this._timeout!==!1){const o=this._timeout,a=this.setTimeoutFn(()=>{i(),n(new Error("timeout")),A.close()},o);this.opts.autoUnref&&a.unref(),this.subs.push(()=>{this.clearTimeoutFn(a)})}return this.subs.push(i),this.subs.push(s),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(rt(e,"ping",this.onping.bind(this)),rt(e,"data",this.ondata.bind(this)),rt(e,"error",this.onerror.bind(this)),rt(e,"close",this.onclose.bind(this)),rt(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(A){this.onclose("parse error",A)}}ondecoded(e){Yi(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,A){let t=this.nsps[e];return t?this._autoConnect&&!t.active&&t.connect():(t=new Vc(this,e,A),this.nsps[e]=t),t}_destroy(e){const A=Object.keys(this.nsps);for(const t of A)if(this.nsps[t].active)return;this._close()}_packet(e){const A=this.encoder.encode(e);for(let t=0;t<A.length;t++)this.engine.write(A[t],e.options)}cleanup(){this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,A){var t;this.cleanup(),(t=this.engine)===null||t===void 0||t.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,A),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const A=this.backoff.duration();this._reconnecting=!0;const t=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},A);this.opts.autoUnref&&t.unref(),this.subs.push(()=>{this.clearTimeoutFn(t)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const Rr={};function tn(r,e){typeof r=="object"&&(e=r,r=void 0),e=e||{};const A=ag(r,e.path||"/socket.io"),t=A.source,i=A.id,n=A.path,s=Rr[i]&&n in Rr[i].nsps,o=e.forceNew||e["force new connection"]||e.multiplex===!1||s;let a;return o?a=new fo(t,e):(Rr[i]||(Rr[i]=new fo(t,e)),a=Rr[i]),A.query&&!e.query&&(e.query=A.queryKey),a.socket(A.path,e)}Object.assign(tn,{Manager:fo,Socket:Vc,io:tn,connect:tn});function po(r){if(!r)return null;try{const e=typeof window<"u"&&window?.location?.origin?window.location.origin:void 0,A=new URL(r,e),t=A.pathname.replace(/\/+$/,"");return`${A.protocol}//${A.host}${t}`}catch{return String(r).trim().replace(/\/+$/,"")}}let GA=po("http://localhost:8000");function zc(r){const e=po(r);e&&e!==GA&&(GA=e,hA&&(hA.disconnect(),hA.removeAllListeners(),hA=null))}let hA=null;function Cg(){const r=()=>{try{return localStorage.getItem("token")||localStorage.getItem("authToken")||localStorage.getItem("accessToken")||localStorage.getItem("jwt_token")}catch{return null}},e=r();console.log("🔧 [SOCKET DEBUG] Creating socket for MT5 backend:",{baseUrl:GA,hasToken:!!e,tokenLength:e?.length||0,note:"Connecting to MT5 backend WebSocket (root namespace for candles)"});const A=tn(GA,{transports:["websocket","polling"],reconnection:!0,reconnectionDelay:1e3,reconnectionAttempts:10,timeout:15e3,forceNew:!1,withCredentials:!1,autoConnect:!0,upgrade:!0,auth:e?{token:e}:void 0}),t=()=>{const i=r();return A.auth=i?{token:i}:{},i};return A.on("connect",()=>{console.log("✅ [SOCKET DEBUG] SocketService: connected to ROOT namespace",{socketId:A.id,baseUrl:GA,transport:A.io.engine.transport.name,namespace:A.nsp.name||"/",note:"This socket connects to CandlesGateway (root namespace)"})}),A.on("disconnect",i=>{console.log("⚠️ [SOCKET DEBUG] SocketService: disconnected:",{reason:i,socketId:A.id})}),A.on("connect_error",i=>{console.error("❌ [SOCKET DEBUG] SocketService: connection error to ROOT namespace:",{message:i?.message,description:i?.description,context:i?.context,type:i?.type,baseUrl:GA,namespace:A.nsp.name||"/",note:"CandlesGateway requires JWT authentication - check if token is valid"})}),A.io.on("reconnect_attempt",i=>{const n=t();console.log("🔄 [SOCKET DEBUG] SocketService: reconnect attempt",{attempt:i,baseUrl:GA,hasToken:!!n})}),A.io.on("reconnect_failed",()=>{console.error("❌ [SOCKET DEBUG] SocketService: failed to reconnect",{baseUrl:GA})}),A.io.on("reconnect",i=>{console.log("✅ [SOCKET DEBUG] SocketService: reconnected after",{attempts:i,socketId:A.id})}),A}function go(){const r=po(hA?.io?.uri||null);return!hA||hA.io&&r&&GA&&r!==GA?(hA&&(console.log("🔄 [SOCKET DEBUG] Recreating socket:",{oldUri:r,newBaseUrl:GA,wasConnected:hA.connected,reason:"baseUrl changed"}),hA.disconnect(),hA.removeAllListeners(),hA=null),hA=Cg()):hA.connected?console.log("✅ [SOCKET DEBUG] Reusing existing connected socket:",{socketId:hA.id,connected:hA.connected,baseUrl:GA,uri:r}):console.log("⏳ [SOCKET DEBUG] Socket exists but not connected, waiting...",{socketId:hA.id,baseUrl:GA}),hA}function vg(r,e){const A=go();return A.on(r,e),()=>A.off(r,e)}function yg(r,e){hA&&hA.off(r,e)}function bg(r,e){go().emit(r,e)}function Tg(){return hA?hA.connected?"connected":"connecting":"disconnected"}const rn={getSocket:go,on:vg,off:yg,emit:bg,getStatus:Tg,setBaseUrl:zc},Qg={},Gc=J.createContext(),FA=()=>{const r=J.useContext(Gc);if(!r)throw new Error("useTrading must be used within TradingProvider");return r},xg=({children:r,baseUrl:e,endpoints:A,accountId:t})=>{const i=e??(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:is&&is.tagName.toUpperCase()==="SCRIPT"&&is.src||new URL("chart-sdk.umd.js",document.baseURI).href}<"u"&&Qg?.VITE_BASE_URL)??"http://localhost:8000",s={...{candles:"/api/chart/candles",symbols:"/symbols",trades:"/trades",account:"/api/user/account"},...A},o=A?.params||{},[a,l]=J.useState("BTCUSD"),[c,d]=J.useState("M1"),[p,y]=J.useState([]),[w,C]=J.useState(!0),[v,S]=J.useState([]),[F,k]=J.useState(!1),[x,V]=J.useState(1e5),[N,Z]=J.useState(null),[X,W]=J.useState([]),[ae,G]=J.useState(!0),[ee,oe]=J.useState(!1),[me,Le]=J.useState(!0),[Ue,Fe]=J.useState("candles"),[ke,ye]=J.useState(!1),[ve,Ce]=J.useState("dark"),ge=J.useRef(null);J.useEffect(()=>{rn.setBaseUrl(i)},[i]);const Me=J.useRef(new Map),_e=J.useRef(null),Be=1e3,iA=J.useCallback(async()=>{if(t)try{const Ke=localStorage.getItem("token");if(!Ke)return;k(!0);const Xe=await oA.get(`${i}/trades/account/${t}`,{headers:{Authorization:`Bearer ${Ke}`}});let We=[];Array.isArray(Xe.data)?We=Xe.data:Xe.data?.data&&Array.isArray(Xe.data.data)&&(We=Xe.data.data);const je=We.filter(we=>we.closePrice===null||we.closePrice===void 0).map(we=>({id:we.id,ticket:we.id?.substring(0,8),symbol:we.symbol,type:we.type,volume:we.volume,price:we.openPrice,stopLoss:we.stopLoss,takeProfit:we.takeProfit,comment:we.comment||"",status:"OPEN",swap:0,profit:we.profit||0,profitCurrency:"USD",time:new Date(we.openedAt||we.openAt||Date.now()).toLocaleTimeString(),openAt:we.openedAt||we.openAt,closeAt:we.closedAt||we.closeAt}));S(je)}catch(Ke){console.error("❌ Error fetching orders:",Ke.response?.data||Ke.message),S([])}finally{k(!1)}},[i,t]),Ee=J.useCallback((Ke,Xe)=>!Xe||!Ke.price||isNaN(Xe)||isNaN(Ke.price)?Ke.profit||0:(Ke.type==="BUY"?Xe-Ke.price:Ke.price-Xe)*Ke.volume,[]),Te=J.useCallback(async()=>{try{const Ke=localStorage.getItem("token");if(!Ke)return;const Xe=await oA.get(`${i}${s.account}`,{headers:{Authorization:`Bearer ${Ke}`}});if(Xe.data&&Xe.data.data){const We=parseFloat(Xe.data.data.balance);isNaN(We)||V(We)}}catch(Ke){console.error("❌ Error fetching user balance:",Ke.response?.data||Ke.message)}},[i]),de=J.useMemo(()=>{const Ke=x,Xe=v.reduce((Ie,fe)=>Ie+fe.volume*fe.price*.01,0),We=v.reduce((Ie,fe)=>{const ne=p.find(Oe=>Oe.symbol===fe.symbol);if(ne){const Oe=fe.type==="BUY"?parseFloat(ne.bid||0):parseFloat(ne.ask||0);if(Oe&&Oe>0&&!isNaN(Oe))return Ie+Ee(fe,Oe)}return Ie+(fe.profit||0)},0),je=Ke+We,we=je-Xe,le=Xe>0?je/Xe*100:0;return{balance:Ke,equity:je,margin:Xe,freeMargin:we,level:le.toFixed(2)}},[v,p,x,Ee]);J.useEffect(()=>{localStorage.getItem("token")&&t&&(iA(),Te())},[iA,Te,t]),J.useEffect(()=>{(async()=>{try{C(!0);const Xe=s.symbols.includes("?")?`${i}${s.symbols}`:`${i}${s.symbols}`,We=await oA.get(Xe);let je=[];Array.isArray(We.data)?je=We.data:We.data&&We.data.data&&Array.isArray(We.data.data)?je=We.data.data:We.data&&We.data.prices&&Array.isArray(We.data.prices)?je=We.data.prices:We.data&&Array.isArray(We.data)&&(je=We.data);const we=je.map(le=>le.symbol&&(le.bid!==void 0||le.price!==void 0)?{symbol:le.symbol,bid:le.bid??le.price??0,ask:le.ask??le.price??0,change:le.change??0}:le);we.length>0?(y(we),we.find(Ie=>Ie.symbol===a)||l(we[0].symbol)):y([])}catch(Xe){console.error("❌ Error fetching symbols:",Xe.response?.data||Xe.message),y([])}finally{C(!1)}})()},[i,s.symbols]);const Qe=J.useCallback(()=>{const Ke=Me.current;if(Ke.size===0)return;const Xe=new Map(Ke);Ke.clear(),y(We=>We.map(je=>{const we=Xe.get(je.symbol);return we?{...je,...we}:je})),S(We=>{let je=!1;const we=We.map(le=>{const Ie=Xe.get(le.symbol);if(!Ie)return le;const fe=le.type==="BUY"?parseFloat(Ie.bid||0):parseFloat(Ie.ask||0);if(!fe||isNaN(fe)||fe<=0)return le;const ne=Ee(le,fe);return ne===le.profit?le:(je=!0,{...le,profit:ne})});return je?we:We})},[Ee]);J.useEffect(()=>{ge.current||(ge.current=rn.getSocket());const Ke=ge.current,Xe=()=>console.log("✅ TradingContext: Connected"),We=()=>console.log("⚠️ TradingContext: Disconnected"),je=le=>{le?.symbol&&(Me.current.set(le.symbol,le),_e.current||(_e.current=setTimeout(()=>{_e.current=null,Qe()},Be)))},we=async le=>{if(le){if(le.newBalance!==void 0){const Ie=parseFloat(le.newBalance);isNaN(Ie)||V(Ie)}if(window.notify){const Ie=le.profitLoss||le.profit||0,fe=Ie>=0?`+${Ie.toFixed(2)}`:Ie.toFixed(2),ne=le.symbol||"Trade",Oe=le.reason||"Closed";window.notify(`Trade Closed: ${Oe} | ${ne} | P/L: ${fe} USD`,Ie>=0?"success":"error")}le.tradeId&&S(Ie=>Ie.filter(fe=>fe.id!==le.tradeId)),await iA(),await Te()}};return Ke.on("connect",Xe),Ke.on("disconnect",We),Ke.on("priceUpdate",je),Ke.on("tradeClosed",we),()=>{Ke.off("connect",Xe),Ke.off("disconnect",We),Ke.off("priceUpdate",je),Ke.off("tradeClosed",we),_e.current&&(clearTimeout(_e.current),_e.current=null),Me.current.clear()}},[Qe,iA,Te]),J.useEffect(()=>{try{const Ke=document.documentElement;if(!Ke)return;Ke.dataset.theme=ve}catch{}},[ve]);const cA=J.useMemo(()=>p.find(Ke=>Ke.symbol===a)||{bid:"0.00000",ask:"0.00000",change:0},[p,a]),Re=J.useMemo(()=>({selectedSymbol:a,setSelectedSymbol:l,selectedTimeframe:c,setSelectedTimeframe:d,symbols:p,setSymbols:y,symbolsLoading:w,orders:v,setOrders:S,ordersLoading:F,fetchOrders:iA,fetchUserBalance:Te,userBalance:x,setUserBalance:V,accountSummary:de,currentSymbolData:cA,activeTool:N,setActiveTool:Z,chartObjects:X,setChartObjects:W,showGrid:ae,setShowGrid:G,snapToGrid:ee,setSnapToGrid:oe,drawingsVisible:me,setDrawingsVisible:Le,chartType:Ue,setChartType:Fe,chartLocked:ke,setChartLocked:ye,theme:ve,setTheme:Ce,baseUrl:i,endpoints:s,endpointParams:o,accountId:t}),[a,c,p,w,v,F,iA,Te,x,de,cA,N,X,ae,ee,me,Ue,ke,ve,i,s,o]);return h.jsx(Gc.Provider,{value:Re,children:r})};var Rc={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},Wc=J.createContext&&J.createContext(Rc),Fg=["attr","size","title"];function Ug(r,e){if(r==null)return{};var A=Eg(r,e),t,i;if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);for(i=0;i<n.length;i++)t=n[i],!(e.indexOf(t)>=0)&&Object.prototype.propertyIsEnumerable.call(r,t)&&(A[t]=r[t])}return A}function Eg(r,e){if(r==null)return{};var A={};for(var t in r)if(Object.prototype.hasOwnProperty.call(r,t)){if(e.indexOf(t)>=0)continue;A[t]=r[t]}return A}function nn(){return nn=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var A=arguments[e];for(var t in A)Object.prototype.hasOwnProperty.call(A,t)&&(r[t]=A[t])}return r},nn.apply(this,arguments)}function $c(r,e){var A=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),A.push.apply(A,t)}return A}function sn(r){for(var e=1;e<arguments.length;e++){var A=arguments[e]!=null?arguments[e]:{};e%2?$c(Object(A),!0).forEach(function(t){Sg(r,t,A[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(A)):$c(Object(A)).forEach(function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(A,t))})}return r}function Sg(r,e,A){return e=Hg(e),e in r?Object.defineProperty(r,e,{value:A,enumerable:!0,configurable:!0,writable:!0}):r[e]=A,r}function Hg(r){var e=Lg(r,"string");return typeof e=="symbol"?e:e+""}function Lg(r,e){if(typeof r!="object"||!r)return r;var A=r[Symbol.toPrimitive];if(A!==void 0){var t=A.call(r,e);if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Xc(r){return r&&r.map((e,A)=>J.createElement(e.tag,sn({key:A},e.attr),Xc(e.child)))}function Wr(r){return e=>J.createElement(Mg,nn({attr:sn({},r.attr)},e),Xc(r.child))}function Mg(r){var e=A=>{var{attr:t,size:i,title:n}=r,s=Ug(r,Fg),o=i||A.size||"1em",a;return A.className&&(a=A.className),r.className&&(a=(a?a+" ":"")+r.className),J.createElement("svg",nn({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},A.attr,t,s,{className:a,style:sn(sn({color:r.color||A.color},A.style),r.style),height:o,width:o,xmlns:"http://www.w3.org/2000/svg"}),n&&J.createElement("title",null,n),r.children)};return Wc!==void 0?J.createElement(Wc.Consumer,null,A=>e(A)):e(Rc)}function Ig(r){return Wr({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z"},child:[]}]})(r)}function _g(r){return Wr({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"},child:[]}]})(r)}const Jc=({bidPrice:r,askPrice:e,onBuyClick:A,onSellClick:t})=>{const{theme:i}=FA(),n=i==="light",[s,o]=J.useState("0.01"),a=n?"bg-slate-100":"bg-[#12161d]",l=n?"text-slate-700":"text-white",c=n?"hover:bg-slate-200":"hover:bg-[#1e2635]",d=w=>{const C=parseFloat(s)||.01,v=Math.max(.01,C+w);o(v.toFixed(2))},p=()=>{A&&A({volume:parseFloat(s)})},y=()=>{t&&t({volume:parseFloat(s)})};return h.jsxs("div",{className:"flex items-stretch h-[30px] text-xs font-semibold select-none",children:[h.jsxs("button",{onClick:y,className:"flex items-stretch overflow-hidden",children:[h.jsx("span",{className:"flex items-center px-2.5 font-mono tabular-nums bg-[#BD3E3E] text-white",children:r||"—"}),h.jsx("span",{className:"flex items-center px-2.5 tracking-wide bg-[#DE4848] text-white",children:"SELL"})]}),h.jsxs("div",{className:`flex items-stretch ${a}`,children:[h.jsx("button",{type:"button",onClick:()=>d(-.01),className:`w-5 flex items-center justify-center ${l} ${c} transition-colors`,children:h.jsx(Ig,{size:8})}),h.jsx("input",{type:"number",value:s,onChange:w=>{const C=w.target.value;(C===""||parseFloat(C)>=0)&&o(C)},onBlur:()=>{const w=parseFloat(s);o(isNaN(w)||w<.01?"0.01":w.toFixed(2))},className:`w-14 text-center focus:outline-none ${a} ${l}`,step:"0.01",min:"0.01",style:{MozAppearance:"textfield"}}),h.jsx("button",{type:"button",onClick:()=>d(.01),className:`w-5 flex items-center justify-center ${l} ${c} transition-colors`,children:h.jsx(_g,{size:8})})]}),h.jsxs("button",{onClick:p,className:"flex items-stretch overflow-hidden",children:[h.jsx("span",{className:"flex items-center px-2.5 tracking-wide bg-[#2869CE] text-white",children:"BUY"}),h.jsx("span",{className:"flex items-center px-2.5 font-mono tabular-nums bg-[#2F7CF2] text-white",children:e||"—"})]})]})},Dg={},Zc=({isOpen:r,onClose:e,orderType:A,bidPrice:t,askPrice:i,onExecuteTrade:n,userAccountId:s,initialVolume:o,disableOptimistic:a=!1,forceParentExecution:l=!1,tradingEngine:c})=>{const{selectedSymbol:d,selectedTimeframe:p,setOrders:y,symbols:w,fetchOrders:C,theme:v,baseUrl:S,endpoints:F}=FA(),k=v==="light",x={getContractSpec:fe=>{const ne=String(fe||"").toUpperCase();return ne.includes("BTC")||ne.includes("ETH")||ne.includes("SOL")||ne.includes("XRP")||ne.includes("ADA")||ne.includes("DOGE")||ne.includes("BNB")||ne.includes("AVAX")||ne.includes("DOT")||ne.includes("LINK")||ne.endsWith("USDT")?{contractSize:1}:ne.includes("XAU")||ne.includes("XAG")?{contractSize:100}:{contractSize:1e5}},calculateVolumeUnits:({symbol:fe,volume:ne})=>{const Oe=x.getContractSpec(fe);return(parseFloat(ne)||0)*(Oe.contractSize||1)}},V=c||x,[N,Z]=J.useState("0.01"),[X,W]=J.useState(""),[ae,G]=J.useState(""),[ee,oe]=J.useState(""),[me,Le]=J.useState(!1),[Ue,Fe]=J.useState(null),[ke,ye]=J.useState(""),[ve,Ce]=J.useState(A||"BUY"),[ge,Me]=J.useState(parseFloat(t)||0),[_e,Be]=J.useState(parseFloat(i)||0),[iA,Ee]=J.useState("text-white"),[Te,de]=J.useState("text-white"),Qe=J.useRef(parseFloat(t)||0),cA=J.useRef(parseFloat(i)||0);J.useEffect(()=>{if(!r)return;const fe=rn.getSocket(),ne=De=>{if(!(!De||!De.symbol)&&De.symbol.toUpperCase()===d?.toUpperCase()){const Ye=parseFloat(De.bid)||0,CA=parseFloat(De.ask)||0;Ye>0&&(Ye>Qe.current?(Ee("text-green-400"),setTimeout(()=>Ee("text-white"),500)):Ye<Qe.current&&Qe.current>0&&(Ee("text-red-400"),setTimeout(()=>Ee("text-white"),500)),Me(Ye),Qe.current=Ye),CA>0&&(CA>cA.current?(de("text-green-400"),setTimeout(()=>de("text-white"),500)):CA<cA.current&&cA.current>0&&(de("text-red-400"),setTimeout(()=>de("text-white"),500)),Be(CA),cA.current=CA)}};fe.on("priceUpdate",ne);const Oe=w.find(De=>De.symbol===d);if(Oe){const De=parseFloat(Oe.bid)||0,Ye=parseFloat(Oe.ask)||0;De>0&&(Me(De),Qe.current=De),Ye>0&&(Be(Ye),cA.current=Ye)}return()=>{fe.off("priceUpdate",ne)}},[r,d,w]),J.useEffect(()=>{if(r){Z(o?String(o):"0.01"),W(""),G(""),oe(""),ye(""),Ce(A||"BUY");const fe=parseFloat(t)||0,ne=parseFloat(i)||0;fe>0&&(Me(fe),Qe.current=fe),ne>0&&(Be(ne),cA.current=ne)}},[r,A,t,i,o]);const Re=ge||0,Ke=_e||0,Xe=fe=>{const ne=parseFloat(N)||.01,Oe=Math.max(.01,ne+fe);Z(Oe.toFixed(2))},We=fe=>{const ne=parseFloat(X)||0,Oe=parseFloat(ve==="BUY"?_e:ge)||0;if(!Oe){ye("Current price not available. Please wait...");return}let De=ne+fe;ve==="BUY"?De=Math.max(1e-5,Math.min(De,Oe-1e-5)):De=Math.max(Oe+1e-5,De),W(De>0?De.toFixed(5):""),ye("")},je=fe=>{const ne=parseFloat(ae)||0,Oe=parseFloat(ve==="BUY"?_e:ge)||0;if(!Oe){ye("Current price not available. Please wait...");return}let De=ne+fe;ve==="BUY"?De=Math.max(Oe+1e-5,De):De=Math.max(1e-5,Math.min(De,Oe-1e-5)),G(De>0?De.toFixed(5):""),ye("")},we=async fe=>{ye("");const ne=fe||ve,Oe=parseFloat(ne==="BUY"?_e:ge),De=parseFloat(N),Ye=X?parseFloat(X):null,CA=ae?parseFloat(ae):null;if(!De||De<=0||isNaN(De)){ye("Please enter a valid volume (minimum 0.01)");return}if(De<.01){ye("Volume must be at least 0.01");return}if(!Oe||Oe<=0||isNaN(Oe)){ye("Invalid price. Please refresh and try again.");return}if(Ye!==null&&Ye!==""){if(isNaN(Ye)||Ye<=0){ye("Stop Loss must be a valid positive number");return}if(ne==="BUY"&&Ye>=Oe){ye("Stop Loss must be below the current price for BUY orders");return}if(ne==="SELL"&&Ye<=Oe){ye("Stop Loss must be above the current price for SELL orders");return}}if(CA!==null&&CA!==""){if(isNaN(CA)||CA<=0){ye("Take Profit must be a valid positive number");return}if(ne==="BUY"){if(CA<=Oe){ye(`Take Profit must be above the entry price (${Oe.toFixed(5)}) for BUY orders`);return}}else if(ne==="SELL"&&CA>=Oe){ye(`Take Profit must be below the entry price (${Oe.toFixed(5)}) for SELL orders`);return}}Ce(ne),Fe(ne),Le(!0);const xt=new Date,wi=xt.toLocaleTimeString(),Bt=`temp_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,ts=localStorage.getItem("token");if(!ts){ye("Please login to place trades"),Le(!1),Fe(null);return}const Ca={accountId:s,symbol:d,type:ne,volume:De,price:Oe,takeProfit:CA,stopLoss:Ye,comment:ee.trim()||null},va={ticket:Bt.substring(0,8),symbol:d,type:ne,volume:parseFloat(De),price:parseFloat(Oe),time:wi,stopLoss:Ye?parseFloat(Ye):null,takeProfit:CA?parseFloat(CA):null,swap:0,profit:0,profitCurrency:"USD",comment:ee.trim()||"",id:Bt,status:"OPEN",openAt:xt.toISOString()};if(!a&&y&&y(Kt=>[...Kt,va]),l&&!n){ye("Execution handler is required in forceParentExecution mode"),Le(!1),Fe(null);return}if(n){Le(!1),Fe(null),e();const Kt={symbol:d,type:ne,lotSize:De,entryPrice:Oe,stopLoss:Ye,takeProfit:CA,comment:ee.trim()||null};Promise.resolve(n(Kt)).then(()=>{console.log("✅ Trade executed successfully via parent handler"),C&&C()}).catch(Qr=>{console.error("❌ Trade execution failed:",Qr),!a&&y&&y(VA=>VA.filter(BA=>BA.id!==Bt))})}else{if(l){ye("Fallback API path disabled in forceParentExecution mode"),Le(!1),Fe(null);return}Le(!1),Fe(null),e();const Kt=S||Dg?.VITE_BASE_URL||"http://localhost:8000",Qr=F?.trades||"/api/trades";oA.post(`${Kt}${Qr}`,Ca,{headers:{Authorization:`Bearer ${ts}`,"Content-Type":"application/json"}}).then(VA=>{if(VA.data&&VA.data.data){const BA=VA.data.data.trade;!a&&y&&y(b=>b.map(m=>m.id===Bt?{...m,id:BA.id,ticket:BA.id.substring(0,8),time:wi,openAt:BA.openAt}:m)),console.log("✅ Trade saved successfully:",BA),window.notify&&window.notify(`Trade placed successfully: ${BA.symbol} ${BA.type}`,"success")}else{!a&&y&&y(b=>b.filter(m=>m.id!==Bt));const BA=VA.data?.message||"Failed to place trade";window.notify&&window.notify(BA,"error")}}).catch(VA=>{console.error("Error placing trade:",VA),!a&&y&&y(b=>b.filter(m=>m.id!==Bt));let BA="Failed to place trade";if(VA.response){const b=VA.response.status,m=VA.response.data;b===400?BA=m?.message||"Invalid trade data. Please check your inputs.":b===401?BA="Authentication failed. Please login again.":b===404?BA=m?.message||"Symbol not found. Please select a valid symbol.":b===500?BA="Server error. Please try again later.":BA=m?.message||`Error: ${b}`}else VA.request&&(BA="Network error. Please check your internet connection.");window.notify&&window.notify(BA,"error")})}},Ie=(V?.calculateVolumeUnits?.({symbol:d,volume:parseFloat(N)||0})??0).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2});return r?h.jsxs("div",{className:`w-full flex flex-col pointer-events-auto z-30 h-full ${k?"bg-white border-r border-slate-300":"bg-[#12161d] border-r border-slate-700"}`,children:[h.jsxs("div",{className:`px-4 py-2.5 flex items-center justify-between border-b ${k?"border-slate-300 bg-white":"border-slate-700 bg-[#12161d]"}`,children:[h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("h3",{className:`text-sm font-semibold ${k?"text-slate-800":"text-white"}`,children:"Market Execution"}),h.jsx("button",{className:`p-0.5 transition-colors ${k?"text-slate-600 hover:text-slate-800":"text-white hover:text-white"}`,children:h.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})})]}),h.jsx("button",{onClick:e,className:`p-1 rounded transition-colors ${k?"text-slate-600 hover:text-slate-800 hover:bg-slate-100":"text-white hover:text-white hover:bg-[#12161d]"}`,children:h.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),h.jsxs("div",{className:"overflow-y-auto p-4 space-y-4 flex-1",children:[ke&&h.jsx("div",{className:"p-2 rounded-lg bg-rose-500/10 border border-rose-500/50 text-rose-400 text-xs",children:ke}),h.jsxs("div",{children:[h.jsxs("div",{className:"flex items-center justify-between mb-4",children:[h.jsx("label",{className:`text-sm font-medium ${k?"text-slate-700":"text-white"}`,children:"Volume"}),h.jsxs("span",{className:`text-sm ${k?"text-slate-700":"text-white"}`,children:[Ie," ",d]})]}),h.jsxs("div",{className:"relative flex items-center",children:[h.jsx("button",{type:"button",onClick:()=>Xe(-.01),className:`absolute left-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${k?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,children:"−"}),h.jsx("input",{type:"number",value:N,onChange:fe=>{Z(fe.target.value),ye("")},className:`w-full px-10 py-2 rounded text-sm focus:outline-none focus:border-secondary text-center ${k?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-white"}`,step:"0.01",min:"0.01",placeholder:"0.01"}),h.jsx("button",{type:"button",onClick:()=>Xe(.01),className:`absolute right-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${k?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,children:"+"})]})]}),h.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[h.jsxs("div",{children:[h.jsx("div",{className:"flex items-center justify-between mb-2",children:h.jsx("label",{className:`text-sm font-medium ${k?"text-slate-700":"text-white"}`,children:"Stop Loss"})}),h.jsxs("div",{className:"relative flex items-center",children:[h.jsx("button",{type:"button",onClick:()=>We(-1e-4),className:`absolute left-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${k?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Decrease SL",children:"−"}),h.jsx("input",{type:"text",value:X,onChange:fe=>{const ne=fe.target.value;(ne===""||/^\d*\.?\d*$/.test(ne))&&(W(ne),ye(""))},onBlur:fe=>{const ne=parseFloat(fe.target.value);!isNaN(ne)&&ne>0?W(ne.toFixed(5)):fe.target.value===""&&W("")},placeholder:"0.00000",className:`w-full px-10 py-2 rounded text-sm focus:outline-none focus:border-secondary text-center ${k?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-slate-100"}`}),h.jsx("button",{type:"button",onClick:()=>We(1e-4),className:`absolute right-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${k?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Increase SL",children:"+"})]})]}),h.jsxs("div",{children:[h.jsx("div",{className:"flex items-center justify-between mb-2",children:h.jsx("label",{className:`text-sm font-medium ${k?"text-slate-700":"text-white"}`,children:"Take Profit"})}),h.jsxs("div",{className:"relative flex items-center",children:[h.jsx("button",{type:"button",onClick:()=>je(-1e-4),className:`absolute left-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${k?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Decrease TP",children:"−"}),h.jsx("input",{type:"text",value:ae,onChange:fe=>{const ne=fe.target.value;(ne===""||/^\d*\.?\d*$/.test(ne))&&(G(ne),ye(""))},onBlur:fe=>{const ne=parseFloat(fe.target.value);!isNaN(ne)&&ne>0?G(ne.toFixed(5)):fe.target.value===""&&G("")},placeholder:"0.00000",className:`w-full px-10 py-2 rounded text-sm focus:outline-none focus:border-secondary text-center ${k?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-slate-100"}`}),h.jsx("button",{type:"button",onClick:()=>je(1e-4),className:`absolute right-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${k?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Increase TP",children:"+"})]})]})]}),h.jsxs("div",{children:[h.jsx("label",{className:`block text-sm font-medium mb-2 ${k?"text-slate-700":"text-white"}`,children:"Comment"}),h.jsx("textarea",{value:ee,onChange:fe=>oe(fe.target.value),placeholder:"Optional comment",rows:2,className:`w-full px-3 py-2 rounded text-sm focus:outline-none focus:border-secondary resize-none ${k?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-slate-100"}`})]}),h.jsxs("div",{className:`flex items-center justify-between py-2 border-t ${k?"border-slate-400":"border-slate-700"}`,children:[h.jsxs("div",{className:"text-sm",children:[h.jsx("span",{className:k?"text-slate-700":"text-white",children:"Bid: "}),h.jsx("span",{className:`${iA} font-medium transition-colors duration-400`,children:Re>0?Re.toFixed(5):"---"})]}),h.jsxs("div",{className:"text-sm",children:[h.jsx("span",{className:k?"text-slate-700":"text-white",children:"Ask: "}),h.jsx("span",{className:`${Te} font-medium transition-colors duration-400`,children:Ke>0?Ke.toFixed(5):"---"})]})]}),h.jsxs("div",{className:"grid grid-cols-2 gap-3 pt-2",children:[h.jsx("button",{onClick:()=>we("SELL"),disabled:me,className:"px-4 py-3 bg-rose-600 hover:bg-rose-700 text-white font-semibold rounded text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:me&&Ue==="SELL"?h.jsxs("span",{className:"flex items-center justify-center gap-2",children:[h.jsxs("svg",{className:"animate-spin h-4 w-4",viewBox:"0 0 24 24",children:[h.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4",fill:"none"}),h.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),"Placing..."]}):"Sell by Market"}),h.jsx("button",{onClick:()=>we("BUY"),disabled:me,className:"px-4 py-3 bg-sky-600 hover:bg-sky-700 text-white font-semibold rounded text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:me&&Ue==="BUY"?h.jsxs("span",{className:"flex items-center justify-center gap-2",children:[h.jsxs("svg",{className:"animate-spin h-4 w-4",viewBox:"0 0 24 24",children:[h.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4",fill:"none"}),h.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),"Placing..."]}):"Buy by Market"})]})]})]}):null};function Y(r){if(r==null)return null;if(typeof r=="number"){if(Number.isNaN(r)||!Number.isFinite(r))return null;let e;r>1e10?e=r/1e3:(r<1e9,e=r);const A=Math.floor(e);return A<946684800||A>4102444800?null:A}if(typeof r=="string"){const e=Date.parse(r);return Number.isNaN(e)?null:Math.floor(e/1e3)}if(typeof r=="object"&&"year"in r&&"month"in r&&"day"in r){const A=new Date(Date.UTC(r.year,r.month-1,r.day)).getTime();return Number.isNaN(A)?null:Math.floor(A/1e3)}return null}function kg(r,e){if(!r||r.length<2)return[];const A=[],t=2;for(let i=1;i<r.length;i++){const n=r[i-1].time,s=r[i].time,o=s-n;o>e*t&&A.push({from:n,to:s,gapSeconds:o,gapHours:(o/3600).toFixed(1),fromDate:new Date(n*1e3).toISOString(),toDate:new Date(s*1e3).toISOString()})}return A}function Og(r,e="America/New_York"){const A=new Date(r*1e3),t=new Date(A.toLocaleString("en-US",{timeZone:e})),i=t.getDay();return!(i===0||i===6||i===5&&t.getHours()>=17)}function qc(r){return Array.isArray(r)?r.map(e=>({...e,time:Y(e.time)})).filter(e=>e.time!=null):[]}function Ng(r){if(!r||r.length<2)return!0;for(let e=1;e<r.length;e++)if(r[e].time<=r[e-1].time)return!1;return!0}function ur(r,e){return!Number.isFinite(r)||!Number.isFinite(e)||e<=0?r:Math.floor(r/e)*e}const UA="17:00-17:00",EA="America/New_York",ht="24x7",ut="UTC",Yc={EURUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},GBPUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},USDJPY:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},USDCHF:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},AUDUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},USDCAD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},NZDUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},EURGBP:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},EURJPY:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},GBPJPY:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},CADJPY:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},EURJPY:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},XAUUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},XAGUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},OILUSD:{type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"},BTCUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},ETHUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},BNBUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},SOLUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},ADAUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},XRPUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},DOGEUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},DOTUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},MATICUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"},LINKUSDT:{type:"crypto",session:ht,sessionTZ:ut,priceMode:"last"}},jc={type:"forex",sessionTZ:EA,session:UA,priceMode:"mid"};function $r(r){return r&&Yc[r.toUpperCase()]||jc}function Kg(r){return $r(r).type==="forex"}function Pg(r){return $r(r).type==="crypto"}function Vg(r){return $r(r).session==="24x7"}function eh(r){if(!r||typeof r!="object")return!1;const{time:e,open:A,high:t,low:i,close:n,volume:s}=r;return!(Y(e)==null||typeof A!="number"||!Number.isFinite(A)||typeof t!="number"||!Number.isFinite(t)||typeof i!="number"||!Number.isFinite(i)||typeof n!="number"||!Number.isFinite(n)||s!=null&&(typeof s!="number"||s<0||!Number.isFinite(s))||t<A||t<n||t<i||i>A||i>n||i>t||A<=0||t<=0||i<=0||n<=0)}function Ah(r){const e=s=>Math.round(s*1e5)/1e5;let A=e(r.open),t=e(r.high),i=e(r.low),n=e(r.close);return t=Math.max(t,A,n,i),i=Math.min(i,A,n,t),{...r,open:A,high:t,low:i,close:n,volume:r.volume!=null?Math.round(r.volume):r.volume}}function th(r){if(!Array.isArray(r)||r.length===0)return[];const e=new Map;return r.forEach(A=>{const t=Y(A.time);if(t!=null)if(e.has(t)){const i=e.get(t);e.set(t,{...A,time:t,open:A.open,high:Math.max(i.high,A.high),low:Math.min(i.low,A.low),close:A.close,volume:(i.volume||0)+(A.volume||0)})}else e.set(t,{...A,time:t})}),Array.from(e.values())}function zg(r,e="percentile"){if(!Array.isArray(r)||r.length<3)return r;const A=r.map(s=>s.close).filter(s=>Number.isFinite(s));if(A.length<3)return r;const t=[...A].sort((s,o)=>s-o);let i,n;if(e==="percentile"){const s=Math.floor(t.length*.25),o=Math.floor(t.length*.75),a=t[s],l=t[o],c=l-a;i=a-1.5*c,n=l+1.5*c}else{const s=A.reduce((l,c)=>l+c,0)/A.length,o=A.reduce((l,c)=>l+Math.pow(c-s,2),0)/A.length,a=Math.sqrt(o);if(a===0)return r;i=s-3*a,n=s+3*a}return r.map((s,o)=>{const a=s.close;if(a<i||a>n){if(o===0)return s;const l=r[o-1].close;return{...s,open:l,high:Math.max(l,s.high),low:Math.min(l,s.low),close:l}}return s})}function Gg(r,e){if(!Array.isArray(r)||r.length===0)return r;const A=[],t=Math.max(e*10080,604800),i=1e4;for(let o=0;o<r.length;o++)if(A.push(r[o]),o<r.length-1){const a=r[o].time,l=r[o+1].time,c=l-a;if(c>t&&((c/3600).toFixed(1),(t/3600).toFixed(1)),c>e&&c<=t){const d=r[o];let p=a+e,y=0;for(p=ur(p,e);p<l&&y<i;){const w=ur(p,e);A.some(v=>v.time===w)||(A.push({time:w,open:d.close,high:d.close,low:d.close,close:d.close,volume:0}),y++),p+=e}if(p<l&&y>=i){const w=ur(l-e,e);A.some(v=>v.time===w)||A.push({time:w,open:d.close,high:d.close,low:d.close,close:d.close,volume:0})}}}A.sort((o,a)=>o.time-a.time);const n=[],s=new Set;for(const o of A)s.has(o.time)||(s.add(o.time),n.push(o));return n}function it(r){if(!r||typeof r!="string")return 60;const e=r.toUpperCase();if(e==="MN")return 2592e3;let A=e.match(/^([MHDW])(\d+)$/);if(A){const t=A[1];return parseInt(A[2],10)*({M:60,H:3600,D:86400,W:604800}[t]||60)}if(A=r.match(/^(\d+)([mhdwy])$/i),A){const t=parseInt(A[1],10),i=A[2].toLowerCase();return t*({m:60,h:3600,d:86400,w:604800,y:31536e3}[i]||60)}return 60}function rh(r,e,A){if(!Array.isArray(r)||r.length===0)return{candles:[],stats:{original:0,processed:0,duplicates:0,outliers:0,gaps:[]}};const t=$r(e),i=it(A),o=qc(r).map(v=>({...v,time:ur(v.time,i)})).filter(v=>eh(v)).map(v=>Ah(v)),a=th(o);a.sort((v,S)=>v.time-S.time);const l=a.filter((v,S)=>S===0?!0:v.time>a[S-1].time),c=l.length>10?zg(l,"percentile"):l,d=th(c);d.sort((v,S)=>v.time-S.time);const p=Gg(d,i),y=[];for(let v=1;v<p.length;v++){const S=p[v].time-p[v-1].time;S>i*2&&y.push({from:p[v-1].time,to:p[v].time,gapSeconds:S,gapMinutes:Math.round(S/60),fromDate:new Date(p[v-1].time*1e3).toISOString(),toDate:new Date(p[v].time*1e3).toISOString()})}const w=c.filter((v,S)=>S===0?!1:v.close===c[S-1].close&&v.open===c[S-1].close).length,C={original:r.length,processed:p.length,duplicates:r.length-a.length,outliers:w,gaps:y,filledGaps:p.length-d.length,symbolConfig:t};return{candles:p,stats:C}}function ih(r,e,A="1m"){if(!r||!e||!eh(r))return null;const t=Y(r.time);if(t==null)return null;const i=it(A),n=ur(t,i);return Ah({...r,time:n})}var mo=function(r,e){return mo=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(A,t){A.__proto__=t}||function(A,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(A[i]=t[i])},mo(r,e)};function nt(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");mo(r,e);function A(){this.constructor=r}r.prototype=e===null?Object.create(e):(A.prototype=e.prototype,new A)}var Bo=function(){return Bo=Object.assign||function(e){for(var A,t=1,i=arguments.length;t<i;t++){A=arguments[t];for(var n in A)Object.prototype.hasOwnProperty.call(A,n)&&(e[n]=A[n])}return e},Bo.apply(this,arguments)};function MA(r,e,A,t){function i(n){return n instanceof A?n:new A(function(s){s(n)})}return new(A||(A=Promise))(function(n,s){function o(c){try{l(t.next(c))}catch(d){s(d)}}function a(c){try{l(t.throw(c))}catch(d){s(d)}}function l(c){c.done?n(c.value):i(c.value).then(o,a)}l((t=t.apply(r,[])).next())})}function SA(r,e){var A={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},t,i,n,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(l){return function(c){return a([l,c])}}function a(l){if(t)throw new TypeError("Generator is already executing.");for(;A;)try{if(t=1,i&&(n=l[0]&2?i.return:l[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,l[1])).done)return n;switch(i=0,n&&(l=[l[0]&2,n.value]),l[0]){case 0:case 1:n=l;break;case 4:return A.label++,{value:l[1],done:!1};case 5:A.label++,i=l[1],l=[0];continue;case 7:l=A.ops.pop(),A.trys.pop();continue;default:if(n=A.trys,!(n=n.length>0&&n[n.length-1])&&(l[0]===6||l[0]===2)){A=0;continue}if(l[0]===3&&(!n||l[1]>n[0]&&l[1]<n[3])){A.label=l[1];break}if(l[0]===6&&A.label<n[1]){A.label=n[1],n=l;break}if(n&&A.label<n[2]){A.label=n[2],A.ops.push(l);break}n[2]&&A.ops.pop(),A.trys.pop();continue}l=e.call(r,A)}catch(c){l=[6,c],i=0}finally{t=n=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}function on(r,e,A){if(arguments.length===2)for(var t=0,i=e.length,n;t<i;t++)(n||!(t in e))&&(n||(n=Array.prototype.slice.call(e,0,t)),n[t]=e[t]);return r.concat(n||e)}for(var yt=(function(){function r(e,A,t,i){this.left=e,this.top=A,this.width=t,this.height=i}return r.prototype.add=function(e,A,t,i){return new r(this.left+e,this.top+A,this.width+t,this.height+i)},r.fromClientRect=function(e,A){return new r(A.left+e.windowBounds.left,A.top+e.windowBounds.top,A.width,A.height)},r.fromDOMRectList=function(e,A){var t=Array.from(A).find(function(i){return i.width!==0});return t?new r(t.left+e.windowBounds.left,t.top+e.windowBounds.top,t.width,t.height):r.EMPTY},r.EMPTY=new r(0,0,0,0),r})(),an=function(r,e){return yt.fromClientRect(r,e.getBoundingClientRect())},Rg=function(r){var e=r.body,A=r.documentElement;if(!e||!A)throw new Error("Unable to get document size");var t=Math.max(Math.max(e.scrollWidth,A.scrollWidth),Math.max(e.offsetWidth,A.offsetWidth),Math.max(e.clientWidth,A.clientWidth)),i=Math.max(Math.max(e.scrollHeight,A.scrollHeight),Math.max(e.offsetHeight,A.offsetHeight),Math.max(e.clientHeight,A.clientHeight));return new yt(0,0,t,i)},ln=function(r){for(var e=[],A=0,t=r.length;A<t;){var i=r.charCodeAt(A++);if(i>=55296&&i<=56319&&A<t){var n=r.charCodeAt(A++);(n&64512)===56320?e.push(((i&1023)<<10)+(n&1023)+65536):(e.push(i),A--)}else e.push(i)}return e},dA=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,r);var A=r.length;if(!A)return"";for(var t=[],i=-1,n="";++i<A;){var s=r[i];s<=65535?t.push(s):(s-=65536,t.push((s>>10)+55296,s%1024+56320)),(i+1===A||t.length>16384)&&(n+=String.fromCharCode.apply(String,t),t.length=0)}return n},nh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Wg=typeof Uint8Array>"u"?[]:new Uint8Array(256),cn=0;cn<nh.length;cn++)Wg[nh.charCodeAt(cn)]=cn;for(var sh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Xr=typeof Uint8Array>"u"?[]:new Uint8Array(256),hn=0;hn<sh.length;hn++)Xr[sh.charCodeAt(hn)]=hn;for(var $g=function(r){var e=r.length*.75,A=r.length,t,i=0,n,s,o,a;r[r.length-1]==="="&&(e--,r[r.length-2]==="="&&e--);var l=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(e):new Array(e),c=Array.isArray(l)?l:new Uint8Array(l);for(t=0;t<A;t+=4)n=Xr[r.charCodeAt(t)],s=Xr[r.charCodeAt(t+1)],o=Xr[r.charCodeAt(t+2)],a=Xr[r.charCodeAt(t+3)],c[i++]=n<<2|s>>4,c[i++]=(s&15)<<4|o>>2,c[i++]=(o&3)<<6|a&63;return l},Xg=function(r){for(var e=r.length,A=[],t=0;t<e;t+=2)A.push(r[t+1]<<8|r[t]);return A},Jg=function(r){for(var e=r.length,A=[],t=0;t<e;t+=4)A.push(r[t+3]<<24|r[t+2]<<16|r[t+1]<<8|r[t]);return A},Zt=5,wo=11,Co=2,Zg=wo-Zt,oh=65536>>Zt,qg=1<<Zt,vo=qg-1,Yg=1024>>Zt,jg=oh+Yg,em=jg,Am=32,tm=em+Am,rm=65536>>wo,im=1<<Zg,nm=im-1,ah=function(r,e,A){return r.slice?r.slice(e,A):new Uint16Array(Array.prototype.slice.call(r,e,A))},sm=function(r,e,A){return r.slice?r.slice(e,A):new Uint32Array(Array.prototype.slice.call(r,e,A))},om=function(r,e){var A=$g(r),t=Array.isArray(A)?Jg(A):new Uint32Array(A),i=Array.isArray(A)?Xg(A):new Uint16Array(A),n=24,s=ah(i,n/2,t[4]/2),o=t[5]===2?ah(i,(n+t[4])/2):sm(t,Math.ceil((n+t[4])/4));return new am(t[0],t[1],t[2],t[3],s,o)},am=(function(){function r(e,A,t,i,n,s){this.initialValue=e,this.errorValue=A,this.highStart=t,this.highValueIndex=i,this.index=n,this.data=s}return r.prototype.get=function(e){var A;if(e>=0){if(e<55296||e>56319&&e<=65535)return A=this.index[e>>Zt],A=(A<<Co)+(e&vo),this.data[A];if(e<=65535)return A=this.index[oh+(e-55296>>Zt)],A=(A<<Co)+(e&vo),this.data[A];if(e<this.highStart)return A=tm-rm+(e>>wo),A=this.index[A],A+=e>>Zt&nm,A=this.index[A],A=(A<<Co)+(e&vo),this.data[A];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},r})(),lh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",lm=typeof Uint8Array>"u"?[]:new Uint8Array(256),un=0;un<lh.length;un++)lm[lh.charCodeAt(un)]=un;var cm="KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==",ch=50,hm=1,hh=2,uh=3,um=4,dm=5,dh=7,fh=8,ph=9,St=10,yo=11,gh=12,bo=13,fm=14,Jr=15,To=16,dn=17,Zr=18,pm=19,mh=20,Qo=21,qr=22,xo=23,dr=24,RA=25,Yr=26,jr=27,fr=28,gm=29,qt=30,mm=31,fn=32,pn=33,Fo=34,Uo=35,Eo=36,ei=37,So=38,gn=39,mn=40,Ho=41,Bh=42,Bm=43,wm=[9001,65288],wh="!",Je="×",Bn="÷",Lo=om(cm),bt=[qt,Eo],Mo=[hm,hh,uh,dm],Ch=[St,fh],vh=[jr,Yr],Cm=Mo.concat(Ch),yh=[So,gn,mn,Fo,Uo],vm=[Jr,bo],ym=function(r,e){e===void 0&&(e="strict");var A=[],t=[],i=[];return r.forEach(function(n,s){var o=Lo.get(n);if(o>ch?(i.push(!0),o-=ch):i.push(!1),["normal","auto","loose"].indexOf(e)!==-1&&[8208,8211,12316,12448].indexOf(n)!==-1)return t.push(s),A.push(To);if(o===um||o===yo){if(s===0)return t.push(s),A.push(qt);var a=A[s-1];return Cm.indexOf(a)===-1?(t.push(t[s-1]),A.push(a)):(t.push(s),A.push(qt))}if(t.push(s),o===mm)return A.push(e==="strict"?Qo:ei);if(o===Bh||o===gm)return A.push(qt);if(o===Bm)return n>=131072&&n<=196605||n>=196608&&n<=262141?A.push(ei):A.push(qt);A.push(o)}),[t,A,i]},Io=function(r,e,A,t){var i=t[A];if(Array.isArray(r)?r.indexOf(i)!==-1:r===i)for(var n=A;n<=t.length;){n++;var s=t[n];if(s===e)return!0;if(s!==St)break}if(i===St)for(var n=A;n>0;){n--;var o=t[n];if(Array.isArray(r)?r.indexOf(o)!==-1:r===o)for(var a=A;a<=t.length;){a++;var s=t[a];if(s===e)return!0;if(s!==St)break}if(o!==St)break}return!1},bh=function(r,e){for(var A=r;A>=0;){var t=e[A];if(t===St)A--;else return t}return 0},bm=function(r,e,A,t,i){if(A[t]===0)return Je;var n=t-1;if(Array.isArray(i)&&i[n]===!0)return Je;var s=n-1,o=n+1,a=e[n],l=s>=0?e[s]:0,c=e[o];if(a===hh&&c===uh)return Je;if(Mo.indexOf(a)!==-1)return wh;if(Mo.indexOf(c)!==-1||Ch.indexOf(c)!==-1)return Je;if(bh(n,e)===fh)return Bn;if(Lo.get(r[n])===yo||(a===fn||a===pn)&&Lo.get(r[o])===yo||a===dh||c===dh||a===ph||[St,bo,Jr].indexOf(a)===-1&&c===ph||[dn,Zr,pm,dr,fr].indexOf(c)!==-1||bh(n,e)===qr||Io(xo,qr,n,e)||Io([dn,Zr],Qo,n,e)||Io(gh,gh,n,e))return Je;if(a===St)return Bn;if(a===xo||c===xo)return Je;if(c===To||a===To)return Bn;if([bo,Jr,Qo].indexOf(c)!==-1||a===fm||l===Eo&&vm.indexOf(a)!==-1||a===fr&&c===Eo||c===mh||bt.indexOf(c)!==-1&&a===RA||bt.indexOf(a)!==-1&&c===RA||a===jr&&[ei,fn,pn].indexOf(c)!==-1||[ei,fn,pn].indexOf(a)!==-1&&c===Yr||bt.indexOf(a)!==-1&&vh.indexOf(c)!==-1||vh.indexOf(a)!==-1&&bt.indexOf(c)!==-1||[jr,Yr].indexOf(a)!==-1&&(c===RA||[qr,Jr].indexOf(c)!==-1&&e[o+1]===RA)||[qr,Jr].indexOf(a)!==-1&&c===RA||a===RA&&[RA,fr,dr].indexOf(c)!==-1)return Je;if([RA,fr,dr,dn,Zr].indexOf(c)!==-1)for(var d=n;d>=0;){var p=e[d];if(p===RA)return Je;if([fr,dr].indexOf(p)!==-1)d--;else break}if([jr,Yr].indexOf(c)!==-1)for(var d=[dn,Zr].indexOf(a)!==-1?s:n;d>=0;){var p=e[d];if(p===RA)return Je;if([fr,dr].indexOf(p)!==-1)d--;else break}if(So===a&&[So,gn,Fo,Uo].indexOf(c)!==-1||[gn,Fo].indexOf(a)!==-1&&[gn,mn].indexOf(c)!==-1||[mn,Uo].indexOf(a)!==-1&&c===mn||yh.indexOf(a)!==-1&&[mh,Yr].indexOf(c)!==-1||yh.indexOf(c)!==-1&&a===jr||bt.indexOf(a)!==-1&&bt.indexOf(c)!==-1||a===dr&&bt.indexOf(c)!==-1||bt.concat(RA).indexOf(a)!==-1&&c===qr&&wm.indexOf(r[o])===-1||bt.concat(RA).indexOf(c)!==-1&&a===Zr)return Je;if(a===Ho&&c===Ho){for(var y=A[n],w=1;y>0&&(y--,e[y]===Ho);)w++;if(w%2!==0)return Je}return a===fn&&c===pn?Je:Bn},Tm=function(r,e){e||(e={lineBreak:"normal",wordBreak:"normal"});var A=ym(r,e.lineBreak),t=A[0],i=A[1],n=A[2];(e.wordBreak==="break-all"||e.wordBreak==="break-word")&&(i=i.map(function(o){return[RA,qt,Bh].indexOf(o)!==-1?ei:o}));var s=e.wordBreak==="keep-all"?n.map(function(o,a){return o&&r[a]>=19968&&r[a]<=40959}):void 0;return[t,i,s]},Qm=(function(){function r(e,A,t,i){this.codePoints=e,this.required=A===wh,this.start=t,this.end=i}return r.prototype.slice=function(){return dA.apply(void 0,this.codePoints.slice(this.start,this.end))},r})(),xm=function(r,e){var A=ln(r),t=Tm(A,e),i=t[0],n=t[1],s=t[2],o=A.length,a=0,l=0;return{next:function(){if(l>=o)return{done:!0,value:null};for(var c=Je;l<o&&(c=bm(A,n,i,++l,s))===Je;);if(c!==Je||l===o){var d=new Qm(A,c,a,l);return a=l,{value:d,done:!1}}return{done:!0,value:null}}}},Fm=1,Um=2,Ai=4,Th=8,wn=10,Qh=47,ti=92,Em=9,Sm=32,Cn=34,ri=61,Hm=35,Lm=36,Mm=37,vn=39,yn=40,ii=41,Im=95,NA=45,_m=33,Dm=60,km=62,Om=64,Nm=91,Km=93,Pm=61,Vm=123,bn=63,zm=125,xh=124,Gm=126,Rm=128,Fh=65533,_o=42,Yt=43,Wm=44,$m=58,Xm=59,ni=46,Jm=0,Zm=8,qm=11,Ym=14,jm=31,eB=127,dt=-1,Uh=48,Eh=97,Sh=101,AB=102,tB=117,rB=122,Hh=65,Lh=69,Mh=70,iB=85,nB=90,HA=function(r){return r>=Uh&&r<=57},sB=function(r){return r>=55296&&r<=57343},pr=function(r){return HA(r)||r>=Hh&&r<=Mh||r>=Eh&&r<=AB},oB=function(r){return r>=Eh&&r<=rB},aB=function(r){return r>=Hh&&r<=nB},lB=function(r){return oB(r)||aB(r)},cB=function(r){return r>=Rm},Tn=function(r){return r===wn||r===Em||r===Sm},Qn=function(r){return lB(r)||cB(r)||r===Im},Ih=function(r){return Qn(r)||HA(r)||r===NA},hB=function(r){return r>=Jm&&r<=Zm||r===qm||r>=Ym&&r<=jm||r===eB},Ht=function(r,e){return r!==ti?!1:e!==wn},xn=function(r,e,A){return r===NA?Qn(e)||Ht(e,A):Qn(r)?!0:!!(r===ti&&Ht(r,e))},Do=function(r,e,A){return r===Yt||r===NA?HA(e)?!0:e===ni&&HA(A):HA(r===ni?e:r)},uB=function(r){var e=0,A=1;(r[e]===Yt||r[e]===NA)&&(r[e]===NA&&(A=-1),e++);for(var t=[];HA(r[e]);)t.push(r[e++]);var i=t.length?parseInt(dA.apply(void 0,t),10):0;r[e]===ni&&e++;for(var n=[];HA(r[e]);)n.push(r[e++]);var s=n.length,o=s?parseInt(dA.apply(void 0,n),10):0;(r[e]===Lh||r[e]===Sh)&&e++;var a=1;(r[e]===Yt||r[e]===NA)&&(r[e]===NA&&(a=-1),e++);for(var l=[];HA(r[e]);)l.push(r[e++]);var c=l.length?parseInt(dA.apply(void 0,l),10):0;return A*(i+o*Math.pow(10,-s))*Math.pow(10,a*c)},dB={type:2},fB={type:3},pB={type:4},gB={type:13},mB={type:8},BB={type:21},wB={type:9},CB={type:10},vB={type:11},yB={type:12},bB={type:14},Fn={type:23},TB={type:1},QB={type:25},xB={type:24},FB={type:26},UB={type:27},EB={type:28},SB={type:29},HB={type:31},ko={type:32},_h=(function(){function r(){this._value=[]}return r.prototype.write=function(e){this._value=this._value.concat(ln(e))},r.prototype.read=function(){for(var e=[],A=this.consumeToken();A!==ko;)e.push(A),A=this.consumeToken();return e},r.prototype.consumeToken=function(){var e=this.consumeCodePoint();switch(e){case Cn:return this.consumeStringToken(Cn);case Hm:var A=this.peekCodePoint(0),t=this.peekCodePoint(1),i=this.peekCodePoint(2);if(Ih(A)||Ht(t,i)){var n=xn(A,t,i)?Um:Fm,s=this.consumeName();return{type:5,value:s,flags:n}}break;case Lm:if(this.peekCodePoint(0)===ri)return this.consumeCodePoint(),gB;break;case vn:return this.consumeStringToken(vn);case yn:return dB;case ii:return fB;case _o:if(this.peekCodePoint(0)===ri)return this.consumeCodePoint(),bB;break;case Yt:if(Do(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case Wm:return pB;case NA:var o=e,a=this.peekCodePoint(0),l=this.peekCodePoint(1);if(Do(o,a,l))return this.reconsumeCodePoint(e),this.consumeNumericToken();if(xn(o,a,l))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();if(a===NA&&l===km)return this.consumeCodePoint(),this.consumeCodePoint(),xB;break;case ni:if(Do(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case Qh:if(this.peekCodePoint(0)===_o)for(this.consumeCodePoint();;){var c=this.consumeCodePoint();if(c===_o&&(c=this.consumeCodePoint(),c===Qh))return this.consumeToken();if(c===dt)return this.consumeToken()}break;case $m:return FB;case Xm:return UB;case Dm:if(this.peekCodePoint(0)===_m&&this.peekCodePoint(1)===NA&&this.peekCodePoint(2)===NA)return this.consumeCodePoint(),this.consumeCodePoint(),QB;break;case Om:var d=this.peekCodePoint(0),p=this.peekCodePoint(1),y=this.peekCodePoint(2);if(xn(d,p,y)){var s=this.consumeName();return{type:7,value:s}}break;case Nm:return EB;case ti:if(Ht(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();break;case Km:return SB;case Pm:if(this.peekCodePoint(0)===ri)return this.consumeCodePoint(),mB;break;case Vm:return vB;case zm:return yB;case tB:case iB:var w=this.peekCodePoint(0),C=this.peekCodePoint(1);return w===Yt&&(pr(C)||C===bn)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(e),this.consumeIdentLikeToken();case xh:if(this.peekCodePoint(0)===ri)return this.consumeCodePoint(),wB;if(this.peekCodePoint(0)===xh)return this.consumeCodePoint(),BB;break;case Gm:if(this.peekCodePoint(0)===ri)return this.consumeCodePoint(),CB;break;case dt:return ko}return Tn(e)?(this.consumeWhiteSpace(),HB):HA(e)?(this.reconsumeCodePoint(e),this.consumeNumericToken()):Qn(e)?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):{type:6,value:dA(e)}},r.prototype.consumeCodePoint=function(){var e=this._value.shift();return typeof e>"u"?-1:e},r.prototype.reconsumeCodePoint=function(e){this._value.unshift(e)},r.prototype.peekCodePoint=function(e){return e>=this._value.length?-1:this._value[e]},r.prototype.consumeUnicodeRangeToken=function(){for(var e=[],A=this.consumeCodePoint();pr(A)&&e.length<6;)e.push(A),A=this.consumeCodePoint();for(var t=!1;A===bn&&e.length<6;)e.push(A),A=this.consumeCodePoint(),t=!0;if(t){var i=parseInt(dA.apply(void 0,e.map(function(a){return a===bn?Uh:a})),16),n=parseInt(dA.apply(void 0,e.map(function(a){return a===bn?Mh:a})),16);return{type:30,start:i,end:n}}var s=parseInt(dA.apply(void 0,e),16);if(this.peekCodePoint(0)===NA&&pr(this.peekCodePoint(1))){this.consumeCodePoint(),A=this.consumeCodePoint();for(var o=[];pr(A)&&o.length<6;)o.push(A),A=this.consumeCodePoint();var n=parseInt(dA.apply(void 0,o),16);return{type:30,start:s,end:n}}else return{type:30,start:s,end:s}},r.prototype.consumeIdentLikeToken=function(){var e=this.consumeName();return e.toLowerCase()==="url"&&this.peekCodePoint(0)===yn?(this.consumeCodePoint(),this.consumeUrlToken()):this.peekCodePoint(0)===yn?(this.consumeCodePoint(),{type:19,value:e}):{type:20,value:e}},r.prototype.consumeUrlToken=function(){var e=[];if(this.consumeWhiteSpace(),this.peekCodePoint(0)===dt)return{type:22,value:""};var A=this.peekCodePoint(0);if(A===vn||A===Cn){var t=this.consumeStringToken(this.consumeCodePoint());return t.type===0&&(this.consumeWhiteSpace(),this.peekCodePoint(0)===dt||this.peekCodePoint(0)===ii)?(this.consumeCodePoint(),{type:22,value:t.value}):(this.consumeBadUrlRemnants(),Fn)}for(;;){var i=this.consumeCodePoint();if(i===dt||i===ii)return{type:22,value:dA.apply(void 0,e)};if(Tn(i))return this.consumeWhiteSpace(),this.peekCodePoint(0)===dt||this.peekCodePoint(0)===ii?(this.consumeCodePoint(),{type:22,value:dA.apply(void 0,e)}):(this.consumeBadUrlRemnants(),Fn);if(i===Cn||i===vn||i===yn||hB(i))return this.consumeBadUrlRemnants(),Fn;if(i===ti)if(Ht(i,this.peekCodePoint(0)))e.push(this.consumeEscapedCodePoint());else return this.consumeBadUrlRemnants(),Fn;else e.push(i)}},r.prototype.consumeWhiteSpace=function(){for(;Tn(this.peekCodePoint(0));)this.consumeCodePoint()},r.prototype.consumeBadUrlRemnants=function(){for(;;){var e=this.consumeCodePoint();if(e===ii||e===dt)return;Ht(e,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},r.prototype.consumeStringSlice=function(e){for(var A=5e4,t="";e>0;){var i=Math.min(A,e);t+=dA.apply(void 0,this._value.splice(0,i)),e-=i}return this._value.shift(),t},r.prototype.consumeStringToken=function(e){var A="",t=0;do{var i=this._value[t];if(i===dt||i===void 0||i===e)return A+=this.consumeStringSlice(t),{type:0,value:A};if(i===wn)return this._value.splice(0,t),TB;if(i===ti){var n=this._value[t+1];n!==dt&&n!==void 0&&(n===wn?(A+=this.consumeStringSlice(t),t=-1,this._value.shift()):Ht(i,n)&&(A+=this.consumeStringSlice(t),A+=dA(this.consumeEscapedCodePoint()),t=-1))}t++}while(!0)},r.prototype.consumeNumber=function(){var e=[],A=Ai,t=this.peekCodePoint(0);for((t===Yt||t===NA)&&e.push(this.consumeCodePoint());HA(this.peekCodePoint(0));)e.push(this.consumeCodePoint());t=this.peekCodePoint(0);var i=this.peekCodePoint(1);if(t===ni&&HA(i))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),A=Th;HA(this.peekCodePoint(0));)e.push(this.consumeCodePoint());t=this.peekCodePoint(0),i=this.peekCodePoint(1);var n=this.peekCodePoint(2);if((t===Lh||t===Sh)&&((i===Yt||i===NA)&&HA(n)||HA(i)))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),A=Th;HA(this.peekCodePoint(0));)e.push(this.consumeCodePoint());return[uB(e),A]},r.prototype.consumeNumericToken=function(){var e=this.consumeNumber(),A=e[0],t=e[1],i=this.peekCodePoint(0),n=this.peekCodePoint(1),s=this.peekCodePoint(2);if(xn(i,n,s)){var o=this.consumeName();return{type:15,number:A,flags:t,unit:o}}return i===Mm?(this.consumeCodePoint(),{type:16,number:A,flags:t}):{type:17,number:A,flags:t}},r.prototype.consumeEscapedCodePoint=function(){var e=this.consumeCodePoint();if(pr(e)){for(var A=dA(e);pr(this.peekCodePoint(0))&&A.length<6;)A+=dA(this.consumeCodePoint());Tn(this.peekCodePoint(0))&&this.consumeCodePoint();var t=parseInt(A,16);return t===0||sB(t)||t>1114111?Fh:t}return e===dt?Fh:e},r.prototype.consumeName=function(){for(var e="";;){var A=this.consumeCodePoint();if(Ih(A))e+=dA(A);else if(Ht(A,this.peekCodePoint(0)))e+=dA(this.consumeEscapedCodePoint());else return this.reconsumeCodePoint(A),e}},r})(),Dh=(function(){function r(e){this._tokens=e}return r.create=function(e){var A=new _h;return A.write(e),new r(A.read())},r.parseValue=function(e){return r.create(e).parseComponentValue()},r.parseValues=function(e){return r.create(e).parseComponentValues()},r.prototype.parseComponentValue=function(){for(var e=this.consumeToken();e.type===31;)e=this.consumeToken();if(e.type===32)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(e);var A=this.consumeComponentValue();do e=this.consumeToken();while(e.type===31);if(e.type===32)return A;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")},r.prototype.parseComponentValues=function(){for(var e=[];;){var A=this.consumeComponentValue();if(A.type===32)return e;e.push(A),e.push()}},r.prototype.consumeComponentValue=function(){var e=this.consumeToken();switch(e.type){case 11:case 28:case 2:return this.consumeSimpleBlock(e.type);case 19:return this.consumeFunction(e)}return e},r.prototype.consumeSimpleBlock=function(e){for(var A={type:e,values:[]},t=this.consumeToken();;){if(t.type===32||MB(t,e))return A;this.reconsumeToken(t),A.values.push(this.consumeComponentValue()),t=this.consumeToken()}},r.prototype.consumeFunction=function(e){for(var A={name:e.value,values:[],type:18};;){var t=this.consumeToken();if(t.type===32||t.type===3)return A;this.reconsumeToken(t),A.values.push(this.consumeComponentValue())}},r.prototype.consumeToken=function(){var e=this._tokens.shift();return typeof e>"u"?ko:e},r.prototype.reconsumeToken=function(e){this._tokens.unshift(e)},r})(),si=function(r){return r.type===15},gr=function(r){return r.type===17},tA=function(r){return r.type===20},LB=function(r){return r.type===0},Oo=function(r,e){return tA(r)&&r.value===e},kh=function(r){return r.type!==31},mr=function(r){return r.type!==31&&r.type!==4},ft=function(r){var e=[],A=[];return r.forEach(function(t){if(t.type===4){if(A.length===0)throw new Error("Error parsing function args, zero tokens for arg");e.push(A),A=[];return}t.type!==31&&A.push(t)}),A.length&&e.push(A),e},MB=function(r,e){return e===11&&r.type===12||e===28&&r.type===29?!0:e===2&&r.type===3},Lt=function(r){return r.type===17||r.type===15},mA=function(r){return r.type===16||Lt(r)},Oh=function(r){return r.length>1?[r[0],r[1]]:[r[0]]},bA={type:17,number:0,flags:Ai},No={type:16,number:50,flags:Ai},Mt={type:16,number:100,flags:Ai},oi=function(r,e,A){var t=r[0],i=r[1];return[rA(t,e),rA(typeof i<"u"?i:t,A)]},rA=function(r,e){if(r.type===16)return r.number/100*e;if(si(r))switch(r.unit){case"rem":case"em":return 16*r.number;default:return r.number}return r.number},Nh="deg",Kh="grad",Ph="rad",Vh="turn",Un={name:"angle",parse:function(r,e){if(e.type===15)switch(e.unit){case Nh:return Math.PI*e.number/180;case Kh:return Math.PI/200*e.number;case Ph:return e.number;case Vh:return Math.PI*2*e.number}throw new Error("Unsupported angle type")}},zh=function(r){return r.type===15&&(r.unit===Nh||r.unit===Kh||r.unit===Ph||r.unit===Vh)},Gh=function(r){var e=r.filter(tA).map(function(A){return A.value}).join(" ");switch(e){case"to bottom right":case"to right bottom":case"left top":case"top left":return[bA,bA];case"to top":case"bottom":return ZA(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[bA,Mt];case"to right":case"left":return ZA(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[Mt,Mt];case"to bottom":case"top":return ZA(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[Mt,bA];case"to left":case"right":return ZA(270)}return 0},ZA=function(r){return Math.PI*r/180},It={name:"color",parse:function(r,e){if(e.type===18){var A=IB[e.name];if(typeof A>"u")throw new Error('Attempting to parse an unsupported color function "'+e.name+'"');return A(r,e.values)}if(e.type===5){if(e.value.length===3){var t=e.value.substring(0,1),i=e.value.substring(1,2),n=e.value.substring(2,3);return Dt(parseInt(t+t,16),parseInt(i+i,16),parseInt(n+n,16),1)}if(e.value.length===4){var t=e.value.substring(0,1),i=e.value.substring(1,2),n=e.value.substring(2,3),s=e.value.substring(3,4);return Dt(parseInt(t+t,16),parseInt(i+i,16),parseInt(n+n,16),parseInt(s+s,16)/255)}if(e.value.length===6){var t=e.value.substring(0,2),i=e.value.substring(2,4),n=e.value.substring(4,6);return Dt(parseInt(t,16),parseInt(i,16),parseInt(n,16),1)}if(e.value.length===8){var t=e.value.substring(0,2),i=e.value.substring(2,4),n=e.value.substring(4,6),s=e.value.substring(6,8);return Dt(parseInt(t,16),parseInt(i,16),parseInt(n,16),parseInt(s,16)/255)}}if(e.type===20){var o=Tt[e.value.toUpperCase()];if(typeof o<"u")return o}return Tt.TRANSPARENT}},_t=function(r){return(255&r)===0},vA=function(r){var e=255&r,A=255&r>>8,t=255&r>>16,i=255&r>>24;return e<255?"rgba("+i+","+t+","+A+","+e/255+")":"rgb("+i+","+t+","+A+")"},Dt=function(r,e,A,t){return(r<<24|e<<16|A<<8|Math.round(t*255)<<0)>>>0},Rh=function(r,e){if(r.type===17)return r.number;if(r.type===16){var A=e===3?1:255;return e===3?r.number/100*A:Math.round(r.number/100*A)}return 0},Wh=function(r,e){var A=e.filter(mr);if(A.length===3){var t=A.map(Rh),i=t[0],n=t[1],s=t[2];return Dt(i,n,s,1)}if(A.length===4){var o=A.map(Rh),i=o[0],n=o[1],s=o[2],a=o[3];return Dt(i,n,s,a)}return 0};function Ko(r,e,A){return A<0&&(A+=1),A>=1&&(A-=1),A<1/6?(e-r)*A*6+r:A<1/2?e:A<2/3?(e-r)*6*(2/3-A)+r:r}var $h=function(r,e){var A=e.filter(mr),t=A[0],i=A[1],n=A[2],s=A[3],o=(t.type===17?ZA(t.number):Un.parse(r,t))/(Math.PI*2),a=mA(i)?i.number/100:0,l=mA(n)?n.number/100:0,c=typeof s<"u"&&mA(s)?rA(s,1):1;if(a===0)return Dt(l*255,l*255,l*255,1);var d=l<=.5?l*(a+1):l+a-l*a,p=l*2-d,y=Ko(p,d,o+1/3),w=Ko(p,d,o),C=Ko(p,d,o-1/3);return Dt(y*255,w*255,C*255,c)},IB={hsl:$h,hsla:$h,rgb:Wh,rgba:Wh},ai=function(r,e){return It.parse(r,Dh.create(e).parseComponentValue())},Tt={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},_B={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(r,e){return e.map(function(A){if(tA(A))switch(A.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},DB={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},En=function(r,e){var A=It.parse(r,e[0]),t=e[1];return t&&mA(t)?{color:A,stop:t}:{color:A,stop:null}},Xh=function(r,e){var A=r[0],t=r[r.length-1];A.stop===null&&(A.stop=bA),t.stop===null&&(t.stop=Mt);for(var i=[],n=0,s=0;s<r.length;s++){var o=r[s].stop;if(o!==null){var a=rA(o,e);a>n?i.push(a):i.push(n),n=a}else i.push(null)}for(var l=null,s=0;s<i.length;s++){var c=i[s];if(c===null)l===null&&(l=s);else if(l!==null){for(var d=s-l,p=i[l-1],y=(c-p)/(d+1),w=1;w<=d;w++)i[l+w-1]=y*w;l=null}}return r.map(function(C,v){var S=C.color;return{color:S,stop:Math.max(Math.min(1,i[v]/e),0)}})},kB=function(r,e,A){var t=e/2,i=A/2,n=rA(r[0],e)-t,s=i-rA(r[1],A);return(Math.atan2(s,n)+Math.PI*2)%(Math.PI*2)},OB=function(r,e,A){var t=typeof r=="number"?r:kB(r,e,A),i=Math.abs(e*Math.sin(t))+Math.abs(A*Math.cos(t)),n=e/2,s=A/2,o=i/2,a=Math.sin(t-Math.PI/2)*o,l=Math.cos(t-Math.PI/2)*o;return[i,n-l,n+l,s-a,s+a]},st=function(r,e){return Math.sqrt(r*r+e*e)},Jh=function(r,e,A,t,i){var n=[[0,0],[0,e],[r,0],[r,e]];return n.reduce(function(s,o){var a=o[0],l=o[1],c=st(A-a,t-l);return(i?c<s.optimumDistance:c>s.optimumDistance)?{optimumCorner:o,optimumDistance:c}:s},{optimumDistance:i?1/0:-1/0,optimumCorner:null}).optimumCorner},NB=function(r,e,A,t,i){var n=0,s=0;switch(r.size){case 0:r.shape===0?n=s=Math.min(Math.abs(e),Math.abs(e-t),Math.abs(A),Math.abs(A-i)):r.shape===1&&(n=Math.min(Math.abs(e),Math.abs(e-t)),s=Math.min(Math.abs(A),Math.abs(A-i)));break;case 2:if(r.shape===0)n=s=Math.min(st(e,A),st(e,A-i),st(e-t,A),st(e-t,A-i));else if(r.shape===1){var o=Math.min(Math.abs(A),Math.abs(A-i))/Math.min(Math.abs(e),Math.abs(e-t)),a=Jh(t,i,e,A,!0),l=a[0],c=a[1];n=st(l-e,(c-A)/o),s=o*n}break;case 1:r.shape===0?n=s=Math.max(Math.abs(e),Math.abs(e-t),Math.abs(A),Math.abs(A-i)):r.shape===1&&(n=Math.max(Math.abs(e),Math.abs(e-t)),s=Math.max(Math.abs(A),Math.abs(A-i)));break;case 3:if(r.shape===0)n=s=Math.max(st(e,A),st(e,A-i),st(e-t,A),st(e-t,A-i));else if(r.shape===1){var o=Math.max(Math.abs(A),Math.abs(A-i))/Math.max(Math.abs(e),Math.abs(e-t)),d=Jh(t,i,e,A,!1),l=d[0],c=d[1];n=st(l-e,(c-A)/o),s=o*n}break}return Array.isArray(r.size)&&(n=rA(r.size[0],t),s=r.size.length===2?rA(r.size[1],i):n),[n,s]},KB=function(r,e){var A=ZA(180),t=[];return ft(e).forEach(function(i,n){if(n===0){var s=i[0];if(s.type===20&&s.value==="to"){A=Gh(i);return}else if(zh(s)){A=Un.parse(r,s);return}}var o=En(r,i);t.push(o)}),{angle:A,stops:t,type:1}},Sn=function(r,e){var A=ZA(180),t=[];return ft(e).forEach(function(i,n){if(n===0){var s=i[0];if(s.type===20&&["top","left","right","bottom"].indexOf(s.value)!==-1){A=Gh(i);return}else if(zh(s)){A=(Un.parse(r,s)+ZA(270))%ZA(360);return}}var o=En(r,i);t.push(o)}),{angle:A,stops:t,type:1}},PB=function(r,e){var A=ZA(180),t=[],i=1,n=0,s=3,o=[];return ft(e).forEach(function(a,l){var c=a[0];if(l===0){if(tA(c)&&c.value==="linear"){i=1;return}else if(tA(c)&&c.value==="radial"){i=2;return}}if(c.type===18){if(c.name==="from"){var d=It.parse(r,c.values[0]);t.push({stop:bA,color:d})}else if(c.name==="to"){var d=It.parse(r,c.values[0]);t.push({stop:Mt,color:d})}else if(c.name==="color-stop"){var p=c.values.filter(mr);if(p.length===2){var d=It.parse(r,p[1]),y=p[0];gr(y)&&t.push({stop:{type:16,number:y.number*100,flags:y.flags},color:d})}}}}),i===1?{angle:(A+ZA(180))%ZA(360),stops:t,type:i}:{size:s,shape:n,stops:t,position:o,type:i}},Zh="closest-side",qh="farthest-side",Yh="closest-corner",jh="farthest-corner",eu="circle",Au="ellipse",tu="cover",ru="contain",VB=function(r,e){var A=0,t=3,i=[],n=[];return ft(e).forEach(function(s,o){var a=!0;if(o===0){var l=!1;a=s.reduce(function(d,p){if(l)if(tA(p))switch(p.value){case"center":return n.push(No),d;case"top":case"left":return n.push(bA),d;case"right":case"bottom":return n.push(Mt),d}else(mA(p)||Lt(p))&&n.push(p);else if(tA(p))switch(p.value){case eu:return A=0,!1;case Au:return A=1,!1;case"at":return l=!0,!1;case Zh:return t=0,!1;case tu:case qh:return t=1,!1;case ru:case Yh:return t=2,!1;case jh:return t=3,!1}else if(Lt(p)||mA(p))return Array.isArray(t)||(t=[]),t.push(p),!1;return d},a)}if(a){var c=En(r,s);i.push(c)}}),{size:t,shape:A,stops:i,position:n,type:2}},Hn=function(r,e){var A=0,t=3,i=[],n=[];return ft(e).forEach(function(s,o){var a=!0;if(o===0?a=s.reduce(function(c,d){if(tA(d))switch(d.value){case"center":return n.push(No),!1;case"top":case"left":return n.push(bA),!1;case"right":case"bottom":return n.push(Mt),!1}else if(mA(d)||Lt(d))return n.push(d),!1;return c},a):o===1&&(a=s.reduce(function(c,d){if(tA(d))switch(d.value){case eu:return A=0,!1;case Au:return A=1,!1;case ru:case Zh:return t=0,!1;case qh:return t=1,!1;case Yh:return t=2,!1;case tu:case jh:return t=3,!1}else if(Lt(d)||mA(d))return Array.isArray(t)||(t=[]),t.push(d),!1;return c},a)),a){var l=En(r,s);i.push(l)}}),{size:t,shape:A,stops:i,position:n,type:2}},zB=function(r){return r.type===1},GB=function(r){return r.type===2},Po={name:"image",parse:function(r,e){if(e.type===22){var A={url:e.value,type:0};return r.cache.addImage(e.value),A}if(e.type===18){var t=iu[e.name];if(typeof t>"u")throw new Error('Attempting to parse an unsupported image function "'+e.name+'"');return t(r,e.values)}throw new Error("Unsupported image type "+e.type)}};function RB(r){return!(r.type===20&&r.value==="none")&&(r.type!==18||!!iu[r.name])}var iu={"linear-gradient":KB,"-moz-linear-gradient":Sn,"-ms-linear-gradient":Sn,"-o-linear-gradient":Sn,"-webkit-linear-gradient":Sn,"radial-gradient":VB,"-moz-radial-gradient":Hn,"-ms-radial-gradient":Hn,"-o-radial-gradient":Hn,"-webkit-radial-gradient":Hn,"-webkit-gradient":PB},WB={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(r,e){if(e.length===0)return[];var A=e[0];return A.type===20&&A.value==="none"?[]:e.filter(function(t){return mr(t)&&RB(t)}).map(function(t){return Po.parse(r,t)})}},$B={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(r,e){return e.map(function(A){if(tA(A))switch(A.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},XB={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(r,e){return ft(e).map(function(A){return A.filter(mA)}).map(Oh)}},JB={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(r,e){return ft(e).map(function(A){return A.filter(tA).map(function(t){return t.value}).join(" ")}).map(ZB)}},ZB=function(r){switch(r){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}},Br;(function(r){r.AUTO="auto",r.CONTAIN="contain",r.COVER="cover"})(Br||(Br={}));var qB={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:function(r,e){return ft(e).map(function(A){return A.filter(YB)})}},YB=function(r){return tA(r)||mA(r)},Ln=function(r){return{name:"border-"+r+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},jB=Ln("top"),ew=Ln("right"),Aw=Ln("bottom"),tw=Ln("left"),Mn=function(r){return{name:"border-radius-"+r,initialValue:"0 0",prefix:!1,type:1,parse:function(e,A){return Oh(A.filter(mA))}}},rw=Mn("top-left"),iw=Mn("top-right"),nw=Mn("bottom-right"),sw=Mn("bottom-left"),In=function(r){return{name:"border-"+r+"-style",initialValue:"solid",prefix:!1,type:2,parse:function(e,A){switch(A){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}},ow=In("top"),aw=In("right"),lw=In("bottom"),cw=In("left"),_n=function(r){return{name:"border-"+r+"-width",initialValue:"0",type:0,prefix:!1,parse:function(e,A){return si(A)?A.number:0}}},hw=_n("top"),uw=_n("right"),dw=_n("bottom"),fw=_n("left"),pw={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},gw={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(r,e){return e==="rtl"?1:0}},mw={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(r,e){return e.filter(tA).reduce(function(A,t){return A|Bw(t.value)},0)}},Bw=function(r){switch(r){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},ww={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},Cw={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(r,e){return e.type===20&&e.value==="normal"?0:e.type===17||e.type===15?e.number:0}},Dn;(function(r){r.NORMAL="normal",r.STRICT="strict"})(Dn||(Dn={}));var vw={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){return e==="strict"?Dn.STRICT:Dn.NORMAL}},yw={name:"line-height",initialValue:"normal",prefix:!1,type:4},nu=function(r,e){return tA(r)&&r.value==="normal"?1.2*e:r.type===17?e*r.number:mA(r)?rA(r,e):e},bw={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(r,e){return e.type===20&&e.value==="none"?null:Po.parse(r,e)}},Tw={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(r,e){return e==="inside"?0:1}},Vo={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":return 22;case"hebrew":return 22;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},kn=function(r){return{name:"margin-"+r,initialValue:"0",prefix:!1,type:4}},Qw=kn("top"),xw=kn("right"),Fw=kn("bottom"),Uw=kn("left"),Ew={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(r,e){return e.filter(tA).map(function(A){switch(A.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})}},Sw={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){return e==="break-word"?"break-word":"normal"}},On=function(r){return{name:"padding-"+r,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},Hw=On("top"),Lw=On("right"),Mw=On("bottom"),Iw=On("left"),_w={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(r,e){switch(e){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},Dw={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(r,e){switch(e){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},kw={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(r,e){return e.length===1&&Oo(e[0],"none")?[]:ft(e).map(function(A){for(var t={color:Tt.TRANSPARENT,offsetX:bA,offsetY:bA,blur:bA},i=0,n=0;n<A.length;n++){var s=A[n];Lt(s)?(i===0?t.offsetX=s:i===1?t.offsetY=s:t.blur=s,i++):t.color=It.parse(r,s)}return t})}},Ow={name:"text-transform",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"uppercase":return 2;case"lowercase":return 1;case"capitalize":return 3}return 0}},Nw={name:"transform",initialValue:"none",prefix:!0,type:0,parse:function(r,e){if(e.type===20&&e.value==="none")return null;if(e.type===18){var A=Vw[e.name];if(typeof A>"u")throw new Error('Attempting to parse an unsupported transform function "'+e.name+'"');return A(e.values)}return null}},Kw=function(r){var e=r.filter(function(A){return A.type===17}).map(function(A){return A.number});return e.length===6?e:null},Pw=function(r){var e=r.filter(function(a){return a.type===17}).map(function(a){return a.number}),A=e[0],t=e[1];e[2],e[3];var i=e[4],n=e[5];e[6],e[7],e[8],e[9],e[10],e[11];var s=e[12],o=e[13];return e[14],e[15],e.length===16?[A,t,i,n,s,o]:null},Vw={matrix:Kw,matrix3d:Pw},su={type:16,number:50,flags:Ai},zw=[su,su],Gw={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:function(r,e){var A=e.filter(mA);return A.length!==2?zw:[A[0],A[1]]}},Rw={name:"visible",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"hidden":return 1;case"collapse":return 2;default:return 0}}},li;(function(r){r.NORMAL="normal",r.BREAK_ALL="break-all",r.KEEP_ALL="keep-all"})(li||(li={}));for(var Ww={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){switch(e){case"break-all":return li.BREAK_ALL;case"keep-all":return li.KEEP_ALL;default:return li.NORMAL}}},$w={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:function(r,e){if(e.type===20)return{auto:!0,order:0};if(gr(e))return{auto:!1,order:e.number};throw new Error("Invalid z-index number parsed")}},ou={name:"time",parse:function(r,e){if(e.type===15)switch(e.unit.toLowerCase()){case"s":return 1e3*e.number;case"ms":return e.number}throw new Error("Unsupported time type")}},Xw={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:function(r,e){return gr(e)?e.number:1}},Jw={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},Zw={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:function(r,e){return e.filter(tA).map(function(A){switch(A.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(function(A){return A!==0})}},qw={name:"font-family",initialValue:"",prefix:!1,type:1,parse:function(r,e){var A=[],t=[];return e.forEach(function(i){switch(i.type){case 20:case 0:A.push(i.value);break;case 17:A.push(i.number.toString());break;case 4:t.push(A.join(" ")),A.length=0;break}}),A.length&&t.push(A.join(" ")),t.map(function(i){return i.indexOf(" ")===-1?i:"'"+i+"'"})}},Yw={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},jw={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:function(r,e){return gr(e)?e.number:tA(e)&&e.value==="bold"?700:400}},eC={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:function(r,e){return e.filter(tA).map(function(A){return A.value})}},AC={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){switch(e){case"oblique":return"oblique";case"italic":return"italic";default:return"normal"}}},wA=function(r,e){return(r&e)!==0},tC={name:"content",initialValue:"none",type:1,prefix:!1,parse:function(r,e){if(e.length===0)return[];var A=e[0];return A.type===20&&A.value==="none"?[]:e}},rC={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:function(r,e){if(e.length===0)return null;var A=e[0];if(A.type===20&&A.value==="none")return null;for(var t=[],i=e.filter(kh),n=0;n<i.length;n++){var s=i[n],o=i[n+1];if(s.type===20){var a=o&&gr(o)?o.number:1;t.push({counter:s.value,increment:a})}}return t}},iC={name:"counter-reset",initialValue:"none",prefix:!0,type:1,parse:function(r,e){if(e.length===0)return[];for(var A=[],t=e.filter(kh),i=0;i<t.length;i++){var n=t[i],s=t[i+1];if(tA(n)&&n.value!=="none"){var o=s&&gr(s)?s.number:0;A.push({counter:n.value,reset:o})}}return A}},nC={name:"duration",initialValue:"0s",prefix:!1,type:1,parse:function(r,e){return e.filter(si).map(function(A){return ou.parse(r,A)})}},sC={name:"quotes",initialValue:"none",prefix:!0,type:1,parse:function(r,e){if(e.length===0)return null;var A=e[0];if(A.type===20&&A.value==="none")return null;var t=[],i=e.filter(LB);if(i.length%2!==0)return null;for(var n=0;n<i.length;n+=2){var s=i[n].value,o=i[n+1].value;t.push({open:s,close:o})}return t}},au=function(r,e,A){if(!r)return"";var t=r[Math.min(e,r.length-1)];return t?A?t.open:t.close:""},oC={name:"box-shadow",initialValue:"none",type:1,prefix:!1,parse:function(r,e){return e.length===1&&Oo(e[0],"none")?[]:ft(e).map(function(A){for(var t={color:255,offsetX:bA,offsetY:bA,blur:bA,spread:bA,inset:!1},i=0,n=0;n<A.length;n++){var s=A[n];Oo(s,"inset")?t.inset=!0:Lt(s)?(i===0?t.offsetX=s:i===1?t.offsetY=s:i===2?t.blur=s:t.spread=s,i++):t.color=It.parse(r,s)}return t})}},aC={name:"paint-order",initialValue:"normal",prefix:!1,type:1,parse:function(r,e){var A=[0,1,2],t=[];return e.filter(tA).forEach(function(i){switch(i.value){case"stroke":t.push(1);break;case"fill":t.push(0);break;case"markers":t.push(2);break}}),A.forEach(function(i){t.indexOf(i)===-1&&t.push(i)}),t}},lC={name:"-webkit-text-stroke-color",initialValue:"currentcolor",prefix:!1,type:3,format:"color"},cC={name:"-webkit-text-stroke-width",initialValue:"0",type:0,prefix:!1,parse:function(r,e){return si(e)?e.number:0}},hC=(function(){function r(e,A){var t,i;this.animationDuration=xe(e,nC,A.animationDuration),this.backgroundClip=xe(e,_B,A.backgroundClip),this.backgroundColor=xe(e,DB,A.backgroundColor),this.backgroundImage=xe(e,WB,A.backgroundImage),this.backgroundOrigin=xe(e,$B,A.backgroundOrigin),this.backgroundPosition=xe(e,XB,A.backgroundPosition),this.backgroundRepeat=xe(e,JB,A.backgroundRepeat),this.backgroundSize=xe(e,qB,A.backgroundSize),this.borderTopColor=xe(e,jB,A.borderTopColor),this.borderRightColor=xe(e,ew,A.borderRightColor),this.borderBottomColor=xe(e,Aw,A.borderBottomColor),this.borderLeftColor=xe(e,tw,A.borderLeftColor),this.borderTopLeftRadius=xe(e,rw,A.borderTopLeftRadius),this.borderTopRightRadius=xe(e,iw,A.borderTopRightRadius),this.borderBottomRightRadius=xe(e,nw,A.borderBottomRightRadius),this.borderBottomLeftRadius=xe(e,sw,A.borderBottomLeftRadius),this.borderTopStyle=xe(e,ow,A.borderTopStyle),this.borderRightStyle=xe(e,aw,A.borderRightStyle),this.borderBottomStyle=xe(e,lw,A.borderBottomStyle),this.borderLeftStyle=xe(e,cw,A.borderLeftStyle),this.borderTopWidth=xe(e,hw,A.borderTopWidth),this.borderRightWidth=xe(e,uw,A.borderRightWidth),this.borderBottomWidth=xe(e,dw,A.borderBottomWidth),this.borderLeftWidth=xe(e,fw,A.borderLeftWidth),this.boxShadow=xe(e,oC,A.boxShadow),this.color=xe(e,pw,A.color),this.direction=xe(e,gw,A.direction),this.display=xe(e,mw,A.display),this.float=xe(e,ww,A.cssFloat),this.fontFamily=xe(e,qw,A.fontFamily),this.fontSize=xe(e,Yw,A.fontSize),this.fontStyle=xe(e,AC,A.fontStyle),this.fontVariant=xe(e,eC,A.fontVariant),this.fontWeight=xe(e,jw,A.fontWeight),this.letterSpacing=xe(e,Cw,A.letterSpacing),this.lineBreak=xe(e,vw,A.lineBreak),this.lineHeight=xe(e,yw,A.lineHeight),this.listStyleImage=xe(e,bw,A.listStyleImage),this.listStylePosition=xe(e,Tw,A.listStylePosition),this.listStyleType=xe(e,Vo,A.listStyleType),this.marginTop=xe(e,Qw,A.marginTop),this.marginRight=xe(e,xw,A.marginRight),this.marginBottom=xe(e,Fw,A.marginBottom),this.marginLeft=xe(e,Uw,A.marginLeft),this.opacity=xe(e,Xw,A.opacity);var n=xe(e,Ew,A.overflow);this.overflowX=n[0],this.overflowY=n[n.length>1?1:0],this.overflowWrap=xe(e,Sw,A.overflowWrap),this.paddingTop=xe(e,Hw,A.paddingTop),this.paddingRight=xe(e,Lw,A.paddingRight),this.paddingBottom=xe(e,Mw,A.paddingBottom),this.paddingLeft=xe(e,Iw,A.paddingLeft),this.paintOrder=xe(e,aC,A.paintOrder),this.position=xe(e,Dw,A.position),this.textAlign=xe(e,_w,A.textAlign),this.textDecorationColor=xe(e,Jw,(t=A.textDecorationColor)!==null&&t!==void 0?t:A.color),this.textDecorationLine=xe(e,Zw,(i=A.textDecorationLine)!==null&&i!==void 0?i:A.textDecoration),this.textShadow=xe(e,kw,A.textShadow),this.textTransform=xe(e,Ow,A.textTransform),this.transform=xe(e,Nw,A.transform),this.transformOrigin=xe(e,Gw,A.transformOrigin),this.visibility=xe(e,Rw,A.visibility),this.webkitTextStrokeColor=xe(e,lC,A.webkitTextStrokeColor),this.webkitTextStrokeWidth=xe(e,cC,A.webkitTextStrokeWidth),this.wordBreak=xe(e,Ww,A.wordBreak),this.zIndex=xe(e,$w,A.zIndex)}return r.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&this.visibility===0},r.prototype.isTransparent=function(){return _t(this.backgroundColor)},r.prototype.isTransformed=function(){return this.transform!==null},r.prototype.isPositioned=function(){return this.position!==0},r.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},r.prototype.isFloating=function(){return this.float!==0},r.prototype.isInlineLevel=function(){return wA(this.display,4)||wA(this.display,33554432)||wA(this.display,268435456)||wA(this.display,536870912)||wA(this.display,67108864)||wA(this.display,134217728)},r})(),uC=(function(){function r(e,A){this.content=xe(e,tC,A.content),this.quotes=xe(e,sC,A.quotes)}return r})(),lu=(function(){function r(e,A){this.counterIncrement=xe(e,rC,A.counterIncrement),this.counterReset=xe(e,iC,A.counterReset)}return r})(),xe=function(r,e,A){var t=new _h,i=A!==null&&typeof A<"u"?A.toString():e.initialValue;t.write(i);var n=new Dh(t.read());switch(e.type){case 2:var s=n.parseComponentValue();return e.parse(r,tA(s)?s.value:e.initialValue);case 0:return e.parse(r,n.parseComponentValue());case 1:return e.parse(r,n.parseComponentValues());case 4:return n.parseComponentValue();case 3:switch(e.format){case"angle":return Un.parse(r,n.parseComponentValue());case"color":return It.parse(r,n.parseComponentValue());case"image":return Po.parse(r,n.parseComponentValue());case"length":var o=n.parseComponentValue();return Lt(o)?o:bA;case"length-percentage":var a=n.parseComponentValue();return mA(a)?a:bA;case"time":return ou.parse(r,n.parseComponentValue())}break}},dC="data-html2canvas-debug",fC=function(r){var e=r.getAttribute(dC);switch(e){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}},zo=function(r,e){var A=fC(r);return A===1||e===A},pt=(function(){function r(e,A){if(this.context=e,this.textNodes=[],this.elements=[],this.flags=0,zo(A,3))debugger;this.styles=new hC(e,window.getComputedStyle(A,null)),ra(A)&&(this.styles.animationDuration.some(function(t){return t>0})&&(A.style.animationDuration="0s"),this.styles.transform!==null&&(A.style.transform="none")),this.bounds=an(this.context,A),zo(A,4)&&(this.flags|=16)}return r})(),pC="AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=",cu="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ci=typeof Uint8Array>"u"?[]:new Uint8Array(256),Nn=0;Nn<cu.length;Nn++)ci[cu.charCodeAt(Nn)]=Nn;for(var gC=function(r){var e=r.length*.75,A=r.length,t,i=0,n,s,o,a;r[r.length-1]==="="&&(e--,r[r.length-2]==="="&&e--);var l=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(e):new Array(e),c=Array.isArray(l)?l:new Uint8Array(l);for(t=0;t<A;t+=4)n=ci[r.charCodeAt(t)],s=ci[r.charCodeAt(t+1)],o=ci[r.charCodeAt(t+2)],a=ci[r.charCodeAt(t+3)],c[i++]=n<<2|s>>4,c[i++]=(s&15)<<4|o>>2,c[i++]=(o&3)<<6|a&63;return l},mC=function(r){for(var e=r.length,A=[],t=0;t<e;t+=2)A.push(r[t+1]<<8|r[t]);return A},BC=function(r){for(var e=r.length,A=[],t=0;t<e;t+=4)A.push(r[t+3]<<24|r[t+2]<<16|r[t+1]<<8|r[t]);return A},jt=5,Go=11,Ro=2,wC=Go-jt,hu=65536>>jt,CC=1<<jt,Wo=CC-1,vC=1024>>jt,yC=hu+vC,bC=yC,TC=32,QC=bC+TC,xC=65536>>Go,FC=1<<wC,UC=FC-1,uu=function(r,e,A){return r.slice?r.slice(e,A):new Uint16Array(Array.prototype.slice.call(r,e,A))},EC=function(r,e,A){return r.slice?r.slice(e,A):new Uint32Array(Array.prototype.slice.call(r,e,A))},SC=function(r,e){var A=gC(r),t=Array.isArray(A)?BC(A):new Uint32Array(A),i=Array.isArray(A)?mC(A):new Uint16Array(A),n=24,s=uu(i,n/2,t[4]/2),o=t[5]===2?uu(i,(n+t[4])/2):EC(t,Math.ceil((n+t[4])/4));return new HC(t[0],t[1],t[2],t[3],s,o)},HC=(function(){function r(e,A,t,i,n,s){this.initialValue=e,this.errorValue=A,this.highStart=t,this.highValueIndex=i,this.index=n,this.data=s}return r.prototype.get=function(e){var A;if(e>=0){if(e<55296||e>56319&&e<=65535)return A=this.index[e>>jt],A=(A<<Ro)+(e&Wo),this.data[A];if(e<=65535)return A=this.index[hu+(e-55296>>jt)],A=(A<<Ro)+(e&Wo),this.data[A];if(e<this.highStart)return A=QC-xC+(e>>Go),A=this.index[A],A+=e>>jt&UC,A=this.index[A],A=(A<<Ro)+(e&Wo),this.data[A];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},r})(),du="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",LC=typeof Uint8Array>"u"?[]:new Uint8Array(256),Kn=0;Kn<du.length;Kn++)LC[du.charCodeAt(Kn)]=Kn;var MC=1,$o=2,Xo=3,fu=4,pu=5,IC=7,gu=8,Jo=9,Zo=10,mu=11,Bu=12,wu=13,Cu=14,qo=15,_C=function(r){for(var e=[],A=0,t=r.length;A<t;){var i=r.charCodeAt(A++);if(i>=55296&&i<=56319&&A<t){var n=r.charCodeAt(A++);(n&64512)===56320?e.push(((i&1023)<<10)+(n&1023)+65536):(e.push(i),A--)}else e.push(i)}return e},DC=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,r);var A=r.length;if(!A)return"";for(var t=[],i=-1,n="";++i<A;){var s=r[i];s<=65535?t.push(s):(s-=65536,t.push((s>>10)+55296,s%1024+56320)),(i+1===A||t.length>16384)&&(n+=String.fromCharCode.apply(String,t),t.length=0)}return n},kC=SC(pC),qA="×",Yo="÷",OC=function(r){return kC.get(r)},NC=function(r,e,A){var t=A-2,i=e[t],n=e[A-1],s=e[A];if(n===$o&&s===Xo)return qA;if(n===$o||n===Xo||n===fu||s===$o||s===Xo||s===fu)return Yo;if(n===gu&&[gu,Jo,mu,Bu].indexOf(s)!==-1||(n===mu||n===Jo)&&(s===Jo||s===Zo)||(n===Bu||n===Zo)&&s===Zo||s===wu||s===pu||s===IC||n===MC)return qA;if(n===wu&&s===Cu){for(;i===pu;)i=e[--t];if(i===Cu)return qA}if(n===qo&&s===qo){for(var o=0;i===qo;)o++,i=e[--t];if(o%2===0)return qA}return Yo},KC=function(r){var e=_C(r),A=e.length,t=0,i=0,n=e.map(OC);return{next:function(){if(t>=A)return{done:!0,value:null};for(var s=qA;t<A&&(s=NC(e,n,++t))===qA;);if(s!==qA||t===A){var o=DC.apply(null,e.slice(i,t));return i=t,{value:o,done:!1}}return{done:!0,value:null}}}},PC=function(r){for(var e=KC(r),A=[],t;!(t=e.next()).done;)t.value&&A.push(t.value.slice());return A},VC=function(r){var e=123;if(r.createRange){var A=r.createRange();if(A.getBoundingClientRect){var t=r.createElement("boundtest");t.style.height=e+"px",t.style.display="block",r.body.appendChild(t),A.selectNode(t);var i=A.getBoundingClientRect(),n=Math.round(i.height);if(r.body.removeChild(t),n===e)return!0}}return!1},zC=function(r){var e=r.createElement("boundtest");e.style.width="50px",e.style.display="block",e.style.fontSize="12px",e.style.letterSpacing="0px",e.style.wordSpacing="0px",r.body.appendChild(e);var A=r.createRange();e.innerHTML=typeof"".repeat=="function"?"👨".repeat(10):"";var t=e.firstChild,i=ln(t.data).map(function(a){return dA(a)}),n=0,s={},o=i.every(function(a,l){A.setStart(t,n),A.setEnd(t,n+a.length);var c=A.getBoundingClientRect();n+=a.length;var d=c.x>s.x||c.y>s.y;return s=c,l===0?!0:d});return r.body.removeChild(e),o},GC=function(){return typeof new Image().crossOrigin<"u"},RC=function(){return typeof new XMLHttpRequest().responseType=="string"},WC=function(r){var e=new Image,A=r.createElement("canvas"),t=A.getContext("2d");if(!t)return!1;e.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{t.drawImage(e,0,0),A.toDataURL()}catch{return!1}return!0},vu=function(r){return r[0]===0&&r[1]===255&&r[2]===0&&r[3]===255},$C=function(r){var e=r.createElement("canvas"),A=100;e.width=A,e.height=A;var t=e.getContext("2d");if(!t)return Promise.reject(!1);t.fillStyle="rgb(0, 255, 0)",t.fillRect(0,0,A,A);var i=new Image,n=e.toDataURL();i.src=n;var s=jo(A,A,0,0,i);return t.fillStyle="red",t.fillRect(0,0,A,A),yu(s).then(function(o){t.drawImage(o,0,0);var a=t.getImageData(0,0,A,A).data;t.fillStyle="red",t.fillRect(0,0,A,A);var l=r.createElement("div");return l.style.backgroundImage="url("+n+")",l.style.height=A+"px",vu(a)?yu(jo(A,A,0,0,l)):Promise.reject(!1)}).then(function(o){return t.drawImage(o,0,0),vu(t.getImageData(0,0,A,A).data)}).catch(function(){return!1})},jo=function(r,e,A,t,i){var n="http://www.w3.org/2000/svg",s=document.createElementNS(n,"svg"),o=document.createElementNS(n,"foreignObject");return s.setAttributeNS(null,"width",r.toString()),s.setAttributeNS(null,"height",e.toString()),o.setAttributeNS(null,"width","100%"),o.setAttributeNS(null,"height","100%"),o.setAttributeNS(null,"x",A.toString()),o.setAttributeNS(null,"y",t.toString()),o.setAttributeNS(null,"externalResourcesRequired","true"),s.appendChild(o),o.appendChild(i),s},yu=function(r){return new Promise(function(e,A){var t=new Image;t.onload=function(){return e(t)},t.onerror=A,t.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(r))})},TA={get SUPPORT_RANGE_BOUNDS(){var r=VC(document);return Object.defineProperty(TA,"SUPPORT_RANGE_BOUNDS",{value:r}),r},get SUPPORT_WORD_BREAKING(){var r=TA.SUPPORT_RANGE_BOUNDS&&zC(document);return Object.defineProperty(TA,"SUPPORT_WORD_BREAKING",{value:r}),r},get SUPPORT_SVG_DRAWING(){var r=WC(document);return Object.defineProperty(TA,"SUPPORT_SVG_DRAWING",{value:r}),r},get SUPPORT_FOREIGNOBJECT_DRAWING(){var r=typeof Array.from=="function"&&typeof window.fetch=="function"?$C(document):Promise.resolve(!1);return Object.defineProperty(TA,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:r}),r},get SUPPORT_CORS_IMAGES(){var r=GC();return Object.defineProperty(TA,"SUPPORT_CORS_IMAGES",{value:r}),r},get SUPPORT_RESPONSE_TYPE(){var r=RC();return Object.defineProperty(TA,"SUPPORT_RESPONSE_TYPE",{value:r}),r},get SUPPORT_CORS_XHR(){var r="withCredentials"in new XMLHttpRequest;return Object.defineProperty(TA,"SUPPORT_CORS_XHR",{value:r}),r},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var r=!!(typeof Intl<"u"&&Intl.Segmenter);return Object.defineProperty(TA,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:r}),r}},hi=(function(){function r(e,A){this.text=e,this.bounds=A}return r})(),XC=function(r,e,A,t){var i=qC(e,A),n=[],s=0;return i.forEach(function(o){if(A.textDecorationLine.length||o.trim().length>0)if(TA.SUPPORT_RANGE_BOUNDS){var a=bu(t,s,o.length).getClientRects();if(a.length>1){var l=ea(o),c=0;l.forEach(function(p){n.push(new hi(p,yt.fromDOMRectList(r,bu(t,c+s,p.length).getClientRects()))),c+=p.length})}else n.push(new hi(o,yt.fromDOMRectList(r,a)))}else{var d=t.splitText(o.length);n.push(new hi(o,JC(r,t))),t=d}else TA.SUPPORT_RANGE_BOUNDS||(t=t.splitText(o.length));s+=o.length}),n},JC=function(r,e){var A=e.ownerDocument;if(A){var t=A.createElement("html2canvaswrapper");t.appendChild(e.cloneNode(!0));var i=e.parentNode;if(i){i.replaceChild(t,e);var n=an(r,t);return t.firstChild&&i.replaceChild(t.firstChild,t),n}}return yt.EMPTY},bu=function(r,e,A){var t=r.ownerDocument;if(!t)throw new Error("Node has no owner document");var i=t.createRange();return i.setStart(r,e),i.setEnd(r,e+A),i},ea=function(r){if(TA.SUPPORT_NATIVE_TEXT_SEGMENTATION){var e=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(e.segment(r)).map(function(A){return A.segment})}return PC(r)},ZC=function(r,e){if(TA.SUPPORT_NATIVE_TEXT_SEGMENTATION){var A=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(A.segment(r)).map(function(t){return t.segment})}return jC(r,e)},qC=function(r,e){return e.letterSpacing!==0?ea(r):ZC(r,e)},YC=[32,160,4961,65792,65793,4153,4241],jC=function(r,e){for(var A=xm(r,{lineBreak:e.lineBreak,wordBreak:e.overflowWrap==="break-word"?"break-word":e.wordBreak}),t=[],i,n=function(){if(i.value){var s=i.value.slice(),o=ln(s),a="";o.forEach(function(l){YC.indexOf(l)===-1?a+=dA(l):(a.length&&t.push(a),t.push(dA(l)),a="")}),a.length&&t.push(a)}};!(i=A.next()).done;)n();return t},e2=(function(){function r(e,A,t){this.text=A2(A.data,t.textTransform),this.textBounds=XC(e,this.text,t,A)}return r})(),A2=function(r,e){switch(e){case 1:return r.toLowerCase();case 3:return r.replace(t2,r2);case 2:return r.toUpperCase();default:return r}},t2=/(^|\s|:|-|\(|\))([a-z])/g,r2=function(r,e,A){return r.length>0?e+A.toUpperCase():r},Tu=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i.src=t.currentSrc||t.src,i.intrinsicWidth=t.naturalWidth,i.intrinsicHeight=t.naturalHeight,i.context.cache.addImage(i.src),i}return e})(pt),Qu=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i.canvas=t,i.intrinsicWidth=t.width,i.intrinsicHeight=t.height,i}return e})(pt),xu=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this,n=new XMLSerializer,s=an(A,t);return t.setAttribute("width",s.width+"px"),t.setAttribute("height",s.height+"px"),i.svg="data:image/svg+xml,"+encodeURIComponent(n.serializeToString(t)),i.intrinsicWidth=t.width.baseVal.value,i.intrinsicHeight=t.height.baseVal.value,i.context.cache.addImage(i.svg),i}return e})(pt),Fu=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i.value=t.value,i}return e})(pt),Aa=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i.start=t.start,i.reversed=typeof t.reversed=="boolean"&&t.reversed===!0,i}return e})(pt),i2=[{type:15,flags:0,unit:"px",number:3}],n2=[{type:16,flags:0,number:50}],s2=function(r){return r.width>r.height?new yt(r.left+(r.width-r.height)/2,r.top,r.height,r.height):r.width<r.height?new yt(r.left,r.top+(r.height-r.width)/2,r.width,r.width):r},o2=function(r){var e=r.type===a2?new Array(r.value.length+1).join("•"):r.value;return e.length===0?r.placeholder||"":e},Pn="checkbox",Vn="radio",a2="password",Uu=707406591,ta=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;switch(i.type=t.type.toLowerCase(),i.checked=t.checked,i.value=o2(t),(i.type===Pn||i.type===Vn)&&(i.styles.backgroundColor=3739148031,i.styles.borderTopColor=i.styles.borderRightColor=i.styles.borderBottomColor=i.styles.borderLeftColor=2779096575,i.styles.borderTopWidth=i.styles.borderRightWidth=i.styles.borderBottomWidth=i.styles.borderLeftWidth=1,i.styles.borderTopStyle=i.styles.borderRightStyle=i.styles.borderBottomStyle=i.styles.borderLeftStyle=1,i.styles.backgroundClip=[0],i.styles.backgroundOrigin=[0],i.bounds=s2(i.bounds)),i.type){case Pn:i.styles.borderTopRightRadius=i.styles.borderTopLeftRadius=i.styles.borderBottomRightRadius=i.styles.borderBottomLeftRadius=i2;break;case Vn:i.styles.borderTopRightRadius=i.styles.borderTopLeftRadius=i.styles.borderBottomRightRadius=i.styles.borderBottomLeftRadius=n2;break}return i}return e})(pt),Eu=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this,n=t.options[t.selectedIndex||0];return i.value=n&&n.text||"",i}return e})(pt),Su=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i.value=t.value,i}return e})(pt),Hu=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;i.src=t.src,i.width=parseInt(t.width,10)||0,i.height=parseInt(t.height,10)||0,i.backgroundColor=i.styles.backgroundColor;try{if(t.contentWindow&&t.contentWindow.document&&t.contentWindow.document.documentElement){i.tree=Mu(A,t.contentWindow.document.documentElement);var n=t.contentWindow.document.documentElement?ai(A,getComputedStyle(t.contentWindow.document.documentElement).backgroundColor):Tt.TRANSPARENT,s=t.contentWindow.document.body?ai(A,getComputedStyle(t.contentWindow.document.body).backgroundColor):Tt.TRANSPARENT;i.backgroundColor=_t(n)?_t(s)?i.styles.backgroundColor:s:n}}catch{}return i}return e})(pt),l2=["OL","UL","MENU"],zn=function(r,e,A,t){for(var i=e.firstChild,n=void 0;i;i=n)if(n=i.nextSibling,Iu(i)&&i.data.trim().length>0)A.textNodes.push(new e2(r,i,A.styles));else if(wr(i))if(Ku(i)&&i.assignedNodes)i.assignedNodes().forEach(function(o){return zn(r,o,A,t)});else{var s=Lu(r,i);s.styles.isVisible()&&(c2(i,s,t)?s.flags|=4:h2(s.styles)&&(s.flags|=2),l2.indexOf(i.tagName)!==-1&&(s.flags|=8),A.elements.push(s),i.slot,i.shadowRoot?zn(r,i.shadowRoot,s,t):!Rn(i)&&!_u(i)&&!Wn(i)&&zn(r,i,s,t))}},Lu=function(r,e){return na(e)?new Tu(r,e):Du(e)?new Qu(r,e):_u(e)?new xu(r,e):u2(e)?new Fu(r,e):d2(e)?new Aa(r,e):f2(e)?new ta(r,e):Wn(e)?new Eu(r,e):Rn(e)?new Su(r,e):Ou(e)?new Hu(r,e):new pt(r,e)},Mu=function(r,e){var A=Lu(r,e);return A.flags|=4,zn(r,e,A,A),A},c2=function(r,e,A){return e.styles.isPositionedWithZIndex()||e.styles.opacity<1||e.styles.isTransformed()||ia(r)&&A.styles.isTransparent()},h2=function(r){return r.isPositioned()||r.isFloating()},Iu=function(r){return r.nodeType===Node.TEXT_NODE},wr=function(r){return r.nodeType===Node.ELEMENT_NODE},ra=function(r){return wr(r)&&typeof r.style<"u"&&!Gn(r)},Gn=function(r){return typeof r.className=="object"},u2=function(r){return r.tagName==="LI"},d2=function(r){return r.tagName==="OL"},f2=function(r){return r.tagName==="INPUT"},p2=function(r){return r.tagName==="HTML"},_u=function(r){return r.tagName==="svg"},ia=function(r){return r.tagName==="BODY"},Du=function(r){return r.tagName==="CANVAS"},ku=function(r){return r.tagName==="VIDEO"},na=function(r){return r.tagName==="IMG"},Ou=function(r){return r.tagName==="IFRAME"},Nu=function(r){return r.tagName==="STYLE"},g2=function(r){return r.tagName==="SCRIPT"},Rn=function(r){return r.tagName==="TEXTAREA"},Wn=function(r){return r.tagName==="SELECT"},Ku=function(r){return r.tagName==="SLOT"},Pu=function(r){return r.tagName.indexOf("-")>0},m2=(function(){function r(){this.counters={}}return r.prototype.getCounterValue=function(e){var A=this.counters[e];return A&&A.length?A[A.length-1]:1},r.prototype.getCounterValues=function(e){var A=this.counters[e];return A||[]},r.prototype.pop=function(e){var A=this;e.forEach(function(t){return A.counters[t].pop()})},r.prototype.parse=function(e){var A=this,t=e.counterIncrement,i=e.counterReset,n=!0;t!==null&&t.forEach(function(o){var a=A.counters[o.counter];a&&o.increment!==0&&(n=!1,a.length||a.push(1),a[Math.max(0,a.length-1)]+=o.increment)});var s=[];return n&&i.forEach(function(o){var a=A.counters[o.counter];s.push(o.counter),a||(a=A.counters[o.counter]=[]),a.push(o.reset)}),s},r})(),Vu={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},zu={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["Ք","Փ","Ւ","Ց","Ր","Տ","Վ","Ս","Ռ","Ջ","Պ","Չ","Ո","Շ","Ն","Յ","Մ","Ճ","Ղ","Ձ","Հ","Կ","Ծ","Խ","Լ","Ի","Ժ","Թ","Ը","Է","Զ","Ե","Դ","Գ","Բ","Ա"]},B2={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["י׳","ט׳","ח׳","ז׳","ו׳","ה׳","ד׳","ג׳","ב׳","א׳","ת","ש","ר","ק","צ","פ","ע","ס","נ","מ","ל","כ","יט","יח","יז","טז","טו","י","ט","ח","ז","ו","ה","ד","ג","ב","א"]},w2={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["ჵ","ჰ","ჯ","ჴ","ხ","ჭ","წ","ძ","ც","ჩ","შ","ყ","ღ","ქ","ფ","ჳ","ტ","ს","რ","ჟ","პ","ო","ჲ","ნ","მ","ლ","კ","ი","თ","ჱ","ზ","ვ","ე","დ","გ","ბ","ა"]},Cr=function(r,e,A,t,i,n){return r<e||r>A?di(r,i,n.length>0):t.integers.reduce(function(s,o,a){for(;r>=o;)r-=o,s+=t.values[a];return s},"")+n},Gu=function(r,e,A,t){var i="";do A||r--,i=t(r)+i,r/=e;while(r*e>=e);return i},fA=function(r,e,A,t,i){var n=A-e+1;return(r<0?"-":"")+(Gu(Math.abs(r),n,t,function(s){return dA(Math.floor(s%n)+e)})+i)},er=function(r,e,A){A===void 0&&(A=". ");var t=e.length;return Gu(Math.abs(r),t,!1,function(i){return e[Math.floor(i%t)]})+A},vr=1,kt=2,Ot=4,ui=8,Qt=function(r,e,A,t,i,n){if(r<-9999||r>9999)return di(r,4,i.length>0);var s=Math.abs(r),o=i;if(s===0)return e[0]+o;for(var a=0;s>0&&a<=4;a++){var l=s%10;l===0&&wA(n,vr)&&o!==""?o=e[l]+o:l>1||l===1&&a===0||l===1&&a===1&&wA(n,kt)||l===1&&a===1&&wA(n,Ot)&&r>100||l===1&&a>1&&wA(n,ui)?o=e[l]+(a>0?A[a-1]:"")+o:l===1&&a>0&&(o=A[a-1]+o),s=Math.floor(s/10)}return(r<0?t:"")+o},Ru="十百千萬",Wu="拾佰仟萬",$u="マイナス",sa="마이너스",di=function(r,e,A){var t=A?". ":"",i=A?"、":"",n=A?", ":"",s=A?" ":"";switch(e){case 0:return"•"+s;case 1:return"◦"+s;case 2:return"◾"+s;case 5:var o=fA(r,48,57,!0,t);return o.length<4?"0"+o:o;case 4:return er(r,"〇一二三四五六七八九",i);case 6:return Cr(r,1,3999,Vu,3,t).toLowerCase();case 7:return Cr(r,1,3999,Vu,3,t);case 8:return fA(r,945,969,!1,t);case 9:return fA(r,97,122,!1,t);case 10:return fA(r,65,90,!1,t);case 11:return fA(r,1632,1641,!0,t);case 12:case 49:return Cr(r,1,9999,zu,3,t);case 35:return Cr(r,1,9999,zu,3,t).toLowerCase();case 13:return fA(r,2534,2543,!0,t);case 14:case 30:return fA(r,6112,6121,!0,t);case 15:return er(r,"子丑寅卯辰巳午未申酉戌亥",i);case 16:return er(r,"甲乙丙丁戊己庚辛壬癸",i);case 17:case 48:return Qt(r,"零一二三四五六七八九",Ru,"負",i,kt|Ot|ui);case 47:return Qt(r,"零壹貳參肆伍陸柒捌玖",Wu,"負",i,vr|kt|Ot|ui);case 42:return Qt(r,"零一二三四五六七八九",Ru,"负",i,kt|Ot|ui);case 41:return Qt(r,"零壹贰叁肆伍陆柒捌玖",Wu,"负",i,vr|kt|Ot|ui);case 26:return Qt(r,"〇一二三四五六七八九","十百千万",$u,i,0);case 25:return Qt(r,"零壱弐参四伍六七八九","拾百千万",$u,i,vr|kt|Ot);case 31:return Qt(r,"영일이삼사오육칠팔구","십백천만",sa,n,vr|kt|Ot);case 33:return Qt(r,"零一二三四五六七八九","十百千萬",sa,n,0);case 32:return Qt(r,"零壹貳參四五六七八九","拾百千",sa,n,vr|kt|Ot);case 18:return fA(r,2406,2415,!0,t);case 20:return Cr(r,1,19999,w2,3,t);case 21:return fA(r,2790,2799,!0,t);case 22:return fA(r,2662,2671,!0,t);case 22:return Cr(r,1,10999,B2,3,t);case 23:return er(r,"あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん");case 24:return er(r,"いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす");case 27:return fA(r,3302,3311,!0,t);case 28:return er(r,"アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン",i);case 29:return er(r,"イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス",i);case 34:return fA(r,3792,3801,!0,t);case 37:return fA(r,6160,6169,!0,t);case 38:return fA(r,4160,4169,!0,t);case 39:return fA(r,2918,2927,!0,t);case 40:return fA(r,1776,1785,!0,t);case 43:return fA(r,3046,3055,!0,t);case 44:return fA(r,3174,3183,!0,t);case 45:return fA(r,3664,3673,!0,t);case 46:return fA(r,3872,3881,!0,t);default:return fA(r,48,57,!0,t)}},Xu="data-html2canvas-ignore",Ju=(function(){function r(e,A,t){if(this.context=e,this.options=t,this.scrolledElements=[],this.referenceElement=A,this.counters=new m2,this.quoteDepth=0,!A.ownerDocument)throw new Error("Cloned element does not have an owner document");this.documentElement=this.cloneNode(A.ownerDocument.documentElement,!1)}return r.prototype.toIFrame=function(e,A){var t=this,i=C2(e,A);if(!i.contentWindow)return Promise.reject("Unable to find iframe window");var n=e.defaultView.pageXOffset,s=e.defaultView.pageYOffset,o=i.contentWindow,a=o.document,l=b2(i).then(function(){return MA(t,void 0,void 0,function(){var c,d;return SA(this,function(p){switch(p.label){case 0:return this.scrolledElements.forEach(F2),o&&(o.scrollTo(A.left,A.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(o.scrollY!==A.top||o.scrollX!==A.left)&&(this.context.logger.warn("Unable to restore scroll position for cloned document"),this.context.windowBounds=this.context.windowBounds.add(o.scrollX-A.left,o.scrollY-A.top,0,0))),c=this.options.onclone,d=this.clonedReferenceElement,typeof d>"u"?[2,Promise.reject("Error finding the "+this.referenceElement.nodeName+" in the cloned document")]:a.fonts&&a.fonts.ready?[4,a.fonts.ready]:[3,2];case 1:p.sent(),p.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,y2(a)]:[3,4];case 3:p.sent(),p.label=4;case 4:return typeof c=="function"?[2,Promise.resolve().then(function(){return c(a,d)}).then(function(){return i})]:[2,i]}})})});return a.open(),a.write(Q2(document.doctype)+"<html></html>"),x2(this.referenceElement.ownerDocument,n,s),a.replaceChild(a.adoptNode(this.documentElement),a.documentElement),a.close(),l},r.prototype.createElementClone=function(e){if(zo(e,2))debugger;if(Du(e))return this.createCanvasClone(e);if(ku(e))return this.createVideoClone(e);if(Nu(e))return this.createStyleClone(e);var A=e.cloneNode(!1);return na(A)&&(na(e)&&e.currentSrc&&e.currentSrc!==e.src&&(A.src=e.currentSrc,A.srcset=""),A.loading==="lazy"&&(A.loading="eager")),Pu(A)?this.createCustomElementClone(A):A},r.prototype.createCustomElementClone=function(e){var A=document.createElement("html2canvascustomelement");return oa(e.style,A),A},r.prototype.createStyleClone=function(e){try{var A=e.sheet;if(A&&A.cssRules){var t=[].slice.call(A.cssRules,0).reduce(function(n,s){return s&&typeof s.cssText=="string"?n+s.cssText:n},""),i=e.cloneNode(!1);return i.textContent=t,i}}catch(n){if(this.context.logger.error("Unable to access cssRules property",n),n.name!=="SecurityError")throw n}return e.cloneNode(!1)},r.prototype.createCanvasClone=function(e){var A;if(this.options.inlineImages&&e.ownerDocument){var t=e.ownerDocument.createElement("img");try{return t.src=e.toDataURL(),t}catch{this.context.logger.info("Unable to inline canvas contents, canvas is tainted",e)}}var i=e.cloneNode(!1);try{i.width=e.width,i.height=e.height;var n=e.getContext("2d"),s=i.getContext("2d");if(s)if(!this.options.allowTaint&&n)s.putImageData(n.getImageData(0,0,e.width,e.height),0,0);else{var o=(A=e.getContext("webgl2"))!==null&&A!==void 0?A:e.getContext("webgl");if(o){var a=o.getContextAttributes();a?.preserveDrawingBuffer===!1&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",e)}s.drawImage(e,0,0)}return i}catch{this.context.logger.info("Unable to clone canvas as it is tainted",e)}return i},r.prototype.createVideoClone=function(e){var A=e.ownerDocument.createElement("canvas");A.width=e.offsetWidth,A.height=e.offsetHeight;var t=A.getContext("2d");try{return t&&(t.drawImage(e,0,0,A.width,A.height),this.options.allowTaint||t.getImageData(0,0,A.width,A.height)),A}catch{this.context.logger.info("Unable to clone video as it is tainted",e)}var i=e.ownerDocument.createElement("canvas");return i.width=e.offsetWidth,i.height=e.offsetHeight,i},r.prototype.appendChildNode=function(e,A,t){(!wr(A)||!g2(A)&&!A.hasAttribute(Xu)&&(typeof this.options.ignoreElements!="function"||!this.options.ignoreElements(A)))&&(!this.options.copyStyles||!wr(A)||!Nu(A))&&e.appendChild(this.cloneNode(A,t))},r.prototype.cloneChildNodes=function(e,A,t){for(var i=this,n=e.shadowRoot?e.shadowRoot.firstChild:e.firstChild;n;n=n.nextSibling)if(wr(n)&&Ku(n)&&typeof n.assignedNodes=="function"){var s=n.assignedNodes();s.length&&s.forEach(function(o){return i.appendChildNode(A,o,t)})}else this.appendChildNode(A,n,t)},r.prototype.cloneNode=function(e,A){if(Iu(e))return document.createTextNode(e.data);if(!e.ownerDocument)return e.cloneNode(!1);var t=e.ownerDocument.defaultView;if(t&&wr(e)&&(ra(e)||Gn(e))){var i=this.createElementClone(e);i.style.transitionProperty="none";var n=t.getComputedStyle(e),s=t.getComputedStyle(e,":before"),o=t.getComputedStyle(e,":after");this.referenceElement===e&&ra(i)&&(this.clonedReferenceElement=i),ia(i)&&S2(i);var a=this.counters.parse(new lu(this.context,n)),l=this.resolvePseudoContent(e,i,s,fi.BEFORE);Pu(e)&&(A=!0),ku(e)||this.cloneChildNodes(e,i,A),l&&i.insertBefore(l,i.firstChild);var c=this.resolvePseudoContent(e,i,o,fi.AFTER);return c&&i.appendChild(c),this.counters.pop(a),(n&&(this.options.copyStyles||Gn(e))&&!Ou(e)||A)&&oa(n,i),(e.scrollTop!==0||e.scrollLeft!==0)&&this.scrolledElements.push([i,e.scrollLeft,e.scrollTop]),(Rn(e)||Wn(e))&&(Rn(i)||Wn(i))&&(i.value=e.value),i}return e.cloneNode(!1)},r.prototype.resolvePseudoContent=function(e,A,t,i){var n=this;if(t){var s=t.content,o=A.ownerDocument;if(!(!o||!s||s==="none"||s==="-moz-alt-content"||t.display==="none")){this.counters.parse(new lu(this.context,t));var a=new uC(this.context,t),l=o.createElement("html2canvaspseudoelement");oa(t,l),a.content.forEach(function(d){if(d.type===0)l.appendChild(o.createTextNode(d.value));else if(d.type===22){var p=o.createElement("img");p.src=d.value,p.style.opacity="1",l.appendChild(p)}else if(d.type===18){if(d.name==="attr"){var y=d.values.filter(tA);y.length&&l.appendChild(o.createTextNode(e.getAttribute(y[0].value)||""))}else if(d.name==="counter"){var w=d.values.filter(mr),C=w[0],v=w[1];if(C&&tA(C)){var S=n.counters.getCounterValue(C.value),F=v&&tA(v)?Vo.parse(n.context,v.value):3;l.appendChild(o.createTextNode(di(S,F,!1)))}}else if(d.name==="counters"){var k=d.values.filter(mr),C=k[0],x=k[1],v=k[2];if(C&&tA(C)){var V=n.counters.getCounterValues(C.value),N=v&&tA(v)?Vo.parse(n.context,v.value):3,Z=x&&x.type===0?x.value:"",X=V.map(function(G){return di(G,N,!1)}).join(Z);l.appendChild(o.createTextNode(X))}}}else if(d.type===20)switch(d.value){case"open-quote":l.appendChild(o.createTextNode(au(a.quotes,n.quoteDepth++,!0)));break;case"close-quote":l.appendChild(o.createTextNode(au(a.quotes,--n.quoteDepth,!1)));break;default:l.appendChild(o.createTextNode(d.value))}}),l.className=aa+" "+la;var c=i===fi.BEFORE?" "+aa:" "+la;return Gn(A)?A.className.baseValue+=c:A.className+=c,l}}},r.destroy=function(e){return e.parentNode?(e.parentNode.removeChild(e),!0):!1},r})(),fi;(function(r){r[r.BEFORE=0]="BEFORE",r[r.AFTER=1]="AFTER"})(fi||(fi={}));var C2=function(r,e){var A=r.createElement("iframe");return A.className="html2canvas-container",A.style.visibility="hidden",A.style.position="fixed",A.style.left="-10000px",A.style.top="0px",A.style.border="0",A.width=e.width.toString(),A.height=e.height.toString(),A.scrolling="no",A.setAttribute(Xu,"true"),r.body.appendChild(A),A},v2=function(r){return new Promise(function(e){if(r.complete){e();return}if(!r.src){e();return}r.onload=e,r.onerror=e})},y2=function(r){return Promise.all([].slice.call(r.images,0).map(v2))},b2=function(r){return new Promise(function(e,A){var t=r.contentWindow;if(!t)return A("No window assigned for iframe");var i=t.document;t.onload=r.onload=function(){t.onload=r.onload=null;var n=setInterval(function(){i.body.childNodes.length>0&&i.readyState==="complete"&&(clearInterval(n),e(r))},50)}})},T2=["all","d","content"],oa=function(r,e){for(var A=r.length-1;A>=0;A--){var t=r.item(A);T2.indexOf(t)===-1&&e.style.setProperty(t,r.getPropertyValue(t))}return e},Q2=function(r){var e="";return r&&(e+="<!DOCTYPE ",r.name&&(e+=r.name),r.internalSubset&&(e+=r.internalSubset),r.publicId&&(e+='"'+r.publicId+'"'),r.systemId&&(e+='"'+r.systemId+'"'),e+=">"),e},x2=function(r,e,A){r&&r.defaultView&&(e!==r.defaultView.pageXOffset||A!==r.defaultView.pageYOffset)&&r.defaultView.scrollTo(e,A)},F2=function(r){var e=r[0],A=r[1],t=r[2];e.scrollLeft=A,e.scrollTop=t},U2=":before",E2=":after",aa="___html2canvas___pseudoelement_before",la="___html2canvas___pseudoelement_after",Zu=`{
|
|
1
|
+
(function(je,a){typeof exports=="object"&&typeof module<"u"?a(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],a):(je=typeof globalThis<"u"?globalThis:je||self,a(je.ChartSDK={},je.jsxRuntime,je.React))})(this,(function(je,a,Ae){"use strict";var vs=typeof document<"u"?document.currentScript:null;const _t="17:00-17:00",Pt="America/New_York",wA="24x7",BA="UTC",Na={EURUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},GBPUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},USDJPY:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},USDCHF:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},AUDUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},USDCAD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},NZDUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},EURGBP:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},EURJPY:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},GBPJPY:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},CADJPY:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},EURJPY:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},XAUUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},XAGUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},OILUSD:{type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"},BTCUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},ETHUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},BNBUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},SOLUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},ADAUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},XRPUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},DOGEUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},DOTUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},MATICUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"},LINKUSDT:{type:"crypto",session:wA,sessionTZ:BA,priceMode:"last"}},Oa={type:"forex",sessionTZ:Pt,session:_t,priceMode:"mid"};function Oi(i){return i&&Na[i.toUpperCase()]||Oa}function rp(i){return Oi(i).type==="forex"}function np(i){return Oi(i).type==="crypto"}function sp(i){return Oi(i).session==="24x7"}function Y(i){if(i==null)return null;if(typeof i=="number"){if(Number.isNaN(i)||!Number.isFinite(i))return null;let e;i>1e10?e=i/1e3:(i<1e9,e=i);const t=Math.floor(e);return t<946684800||t>4102444800?null:t}if(typeof i=="string"){const e=Date.parse(i);return Number.isNaN(e)?null:Math.floor(e/1e3)}if(typeof i=="object"&&"year"in i&&"month"in i&&"day"in i){const t=new Date(Date.UTC(i.year,i.month-1,i.day)).getTime();return Number.isNaN(t)?null:Math.floor(t/1e3)}return null}function op(i,e){if(!i||i.length<2)return[];const t=[],A=2;for(let r=1;r<i.length;r++){const n=i[r-1].time,s=i[r].time,o=s-n;o>e*A&&t.push({from:n,to:s,gapSeconds:o,gapHours:(o/3600).toFixed(1),fromDate:new Date(n*1e3).toISOString(),toDate:new Date(s*1e3).toISOString()})}return t}function ap(i,e="America/New_York"){const t=new Date(i*1e3),A=new Date(t.toLocaleString("en-US",{timeZone:e})),r=A.getDay();return!(r===0||r===6||r===5&&A.getHours()>=17)}function Ka(i){return Array.isArray(i)?i.map(e=>({...e,time:Y(e.time)})).filter(e=>e.time!=null):[]}function lp(i){if(!i||i.length<2)return!0;for(let e=1;e<i.length;e++)if(i[e].time<=i[e-1].time)return!1;return!0}function We(i,e){return!Number.isFinite(i)||!Number.isFinite(e)||e<=0?i:Math.floor(i/e)*e}function Va(i){if(!i||typeof i!="object")return!1;const{time:e,open:t,high:A,low:r,close:n,volume:s}=i;return!(Y(e)==null||typeof t!="number"||!Number.isFinite(t)||typeof A!="number"||!Number.isFinite(A)||typeof r!="number"||!Number.isFinite(r)||typeof n!="number"||!Number.isFinite(n)||s!=null&&(typeof s!="number"||s<0||!Number.isFinite(s))||A<t||A<n||A<r||r>t||r>n||r>A||t<=0||A<=0||r<=0||n<=0)}function za(i){const e=s=>Math.round(s*1e5)/1e5;let t=e(i.open),A=e(i.high),r=e(i.low),n=e(i.close);return A=Math.max(A,t,n,r),r=Math.min(r,t,n,A),{...i,open:t,high:A,low:r,close:n,volume:i.volume!=null?Math.round(i.volume):i.volume}}function Wa(i){if(!Array.isArray(i)||i.length===0)return[];const e=new Map;return i.forEach(t=>{const A=Y(t.time);if(A!=null)if(e.has(A)){const r=e.get(A);e.set(A,{...t,time:A,open:t.open,high:Math.max(r.high,t.high),low:Math.min(r.low,t.low),close:t.close,volume:(r.volume||0)+(t.volume||0)})}else e.set(A,{...t,time:A})}),Array.from(e.values())}function cp(i,e="percentile"){if(!Array.isArray(i)||i.length<3)return i;const t=i.map(s=>s.close).filter(s=>Number.isFinite(s));if(t.length<3)return i;const A=[...t].sort((s,o)=>s-o);let r,n;if(e==="percentile"){const s=Math.floor(A.length*.25),o=Math.floor(A.length*.75),l=A[s],c=A[o],h=c-l;r=l-1.5*h,n=c+1.5*h}else{const s=t.reduce((c,h)=>c+h,0)/t.length,o=t.reduce((c,h)=>c+Math.pow(h-s,2),0)/t.length,l=Math.sqrt(o);if(l===0)return i;r=s-3*l,n=s+3*l}return i.map((s,o)=>{const l=s.close;if(l<r||l>n){if(o===0)return s;const c=i[o-1].close;return{...s,open:c,high:Math.max(c,s.high),low:Math.min(c,s.low),close:c}}return s})}function hp(i,e){if(!Array.isArray(i)||i.length===0)return i;const t=[],A=Math.max(e*10080,604800),r=1e4;for(let o=0;o<i.length;o++)if(t.push(i[o]),o<i.length-1){const l=i[o].time,c=i[o+1].time,h=c-l;if(h>A&&((h/3600).toFixed(1),(A/3600).toFixed(1)),h>e&&h<=A){const g=i[o];let C=l+e,x=0;for(C=We(C,e);C<c&&x<r;){const b=We(C,e);t.some(U=>U.time===b)||(t.push({time:b,open:g.close,high:g.close,low:g.close,close:g.close,volume:0}),x++),C+=e}if(C<c&&x>=r){const b=We(c-e,e);t.some(U=>U.time===b)||t.push({time:b,open:g.close,high:g.close,low:g.close,close:g.close,volume:0})}}}t.sort((o,l)=>o.time-l.time);const n=[],s=new Set;for(const o of t)s.has(o.time)||(s.add(o.time),n.push(o));return n}function tA(i){if(!i||typeof i!="string")return 60;const e=i.toUpperCase();if(e==="MN")return 2592e3;let t=e.match(/^([MHDW])(\d+)$/);if(t){const A=t[1];return parseInt(t[2],10)*({M:60,H:3600,D:86400,W:604800}[A]||60)}if(t=i.match(/^(\d+)([mhdwy])$/i),t){const A=parseInt(t[1],10),r=t[2].toLowerCase();return A*({m:60,h:3600,d:86400,w:604800,y:31536e3}[r]||60)}return 60}function Ra(i,e,t){if(!Array.isArray(i)||i.length===0)return{candles:[],stats:{original:0,processed:0,duplicates:0,outliers:0,gaps:[]}};const A=Oi(e),r=tA(t),o=Ka(i).map(U=>({...U,time:We(U.time,r)})).filter(U=>Va(U)).map(U=>za(U)),l=Wa(o);l.sort((U,F)=>U.time-F.time);const c=l.filter((U,F)=>F===0?!0:U.time>l[F-1].time),h=c.length>10?cp(c,"percentile"):c,g=Wa(h);g.sort((U,F)=>U.time-F.time);const C=hp(g,r),x=[];for(let U=1;U<C.length;U++){const F=C[U].time-C[U-1].time;F>r*2&&x.push({from:C[U-1].time,to:C[U].time,gapSeconds:F,gapMinutes:Math.round(F/60),fromDate:new Date(C[U-1].time*1e3).toISOString(),toDate:new Date(C[U].time*1e3).toISOString()})}const b=h.filter((U,F)=>F===0?!1:U.close===h[F-1].close&&U.open===h[F-1].close).length,v={original:i.length,processed:C.length,duplicates:i.length-l.length,outliers:b,gaps:x,filledGaps:C.length-g.length,symbolConfig:A};return{candles:C,stats:v}}function Ga(i,e,t="1m"){if(!i||!e||!Va(i))return null;const A=Y(i.time);if(A==null)return null;const r=tA(t),n=We(A,r);return za({...i,time:n})}function pt(i){var e=i.width,t=i.height;if(e<0)throw new Error("Negative width is not allowed for Size");if(t<0)throw new Error("Negative height is not allowed for Size");return{width:e,height:t}}function jA(i,e){return i.width===e.width&&i.height===e.height}var up=(function(){function i(e){var t=this;this._resolutionListener=function(){return t._onResolutionChanged()},this._resolutionMediaQueryList=null,this._observers=[],this._window=e,this._installResolutionListener()}return i.prototype.dispose=function(){this._uninstallResolutionListener(),this._window=null},Object.defineProperty(i.prototype,"value",{get:function(){return this._window.devicePixelRatio},enumerable:!1,configurable:!0}),i.prototype.subscribe=function(e){var t=this,A={next:e};return this._observers.push(A),{unsubscribe:function(){t._observers=t._observers.filter(function(r){return r!==A})}}},i.prototype._installResolutionListener=function(){if(this._resolutionMediaQueryList!==null)throw new Error("Resolution listener is already installed");var e=this._window.devicePixelRatio;this._resolutionMediaQueryList=this._window.matchMedia("all and (resolution: ".concat(e,"dppx)")),this._resolutionMediaQueryList.addListener(this._resolutionListener)},i.prototype._uninstallResolutionListener=function(){this._resolutionMediaQueryList!==null&&(this._resolutionMediaQueryList.removeListener(this._resolutionListener),this._resolutionMediaQueryList=null)},i.prototype._reinstallResolutionListener=function(){this._uninstallResolutionListener(),this._installResolutionListener()},i.prototype._onResolutionChanged=function(){var e=this;this._observers.forEach(function(t){return t.next(e._window.devicePixelRatio)}),this._reinstallResolutionListener()},i})();function dp(i){return new up(i)}var pp=(function(){function i(e,t,A){var r;this._canvasElement=null,this._bitmapSizeChangedListeners=[],this._suggestedBitmapSize=null,this._suggestedBitmapSizeChangedListeners=[],this._devicePixelRatioObservable=null,this._canvasElementResizeObserver=null,this._canvasElement=e,this._canvasElementClientSize=pt({width:this._canvasElement.clientWidth,height:this._canvasElement.clientHeight}),this._transformBitmapSize=t??(function(n){return n}),this._allowResizeObserver=(r=A?.allowResizeObserver)!==null&&r!==void 0?r:!0,this._chooseAndInitObserver()}return i.prototype.dispose=function(){var e,t;if(this._canvasElement===null)throw new Error("Object is disposed");(e=this._canvasElementResizeObserver)===null||e===void 0||e.disconnect(),this._canvasElementResizeObserver=null,(t=this._devicePixelRatioObservable)===null||t===void 0||t.dispose(),this._devicePixelRatioObservable=null,this._suggestedBitmapSizeChangedListeners.length=0,this._bitmapSizeChangedListeners.length=0,this._canvasElement=null},Object.defineProperty(i.prototype,"canvasElement",{get:function(){if(this._canvasElement===null)throw new Error("Object is disposed");return this._canvasElement},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"canvasElementClientSize",{get:function(){return this._canvasElementClientSize},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"bitmapSize",{get:function(){return pt({width:this.canvasElement.width,height:this.canvasElement.height})},enumerable:!1,configurable:!0}),i.prototype.resizeCanvasElement=function(e){this._canvasElementClientSize=pt(e),this.canvasElement.style.width="".concat(this._canvasElementClientSize.width,"px"),this.canvasElement.style.height="".concat(this._canvasElementClientSize.height,"px"),this._invalidateBitmapSize()},i.prototype.subscribeBitmapSizeChanged=function(e){this._bitmapSizeChangedListeners.push(e)},i.prototype.unsubscribeBitmapSizeChanged=function(e){this._bitmapSizeChangedListeners=this._bitmapSizeChangedListeners.filter(function(t){return t!==e})},Object.defineProperty(i.prototype,"suggestedBitmapSize",{get:function(){return this._suggestedBitmapSize},enumerable:!1,configurable:!0}),i.prototype.subscribeSuggestedBitmapSizeChanged=function(e){this._suggestedBitmapSizeChangedListeners.push(e)},i.prototype.unsubscribeSuggestedBitmapSizeChanged=function(e){this._suggestedBitmapSizeChangedListeners=this._suggestedBitmapSizeChangedListeners.filter(function(t){return t!==e})},i.prototype.applySuggestedBitmapSize=function(){if(this._suggestedBitmapSize!==null){var e=this._suggestedBitmapSize;this._suggestedBitmapSize=null,this._resizeBitmap(e),this._emitSuggestedBitmapSizeChanged(e,this._suggestedBitmapSize)}},i.prototype._resizeBitmap=function(e){var t=this.bitmapSize;jA(t,e)||(this.canvasElement.width=e.width,this.canvasElement.height=e.height,this._emitBitmapSizeChanged(t,e))},i.prototype._emitBitmapSizeChanged=function(e,t){var A=this;this._bitmapSizeChangedListeners.forEach(function(r){return r.call(A,e,t)})},i.prototype._suggestNewBitmapSize=function(e){var t=this._suggestedBitmapSize,A=pt(this._transformBitmapSize(e,this._canvasElementClientSize)),r=jA(this.bitmapSize,A)?null:A;t===null&&r===null||t!==null&&r!==null&&jA(t,r)||(this._suggestedBitmapSize=r,this._emitSuggestedBitmapSizeChanged(t,r))},i.prototype._emitSuggestedBitmapSizeChanged=function(e,t){var A=this;this._suggestedBitmapSizeChangedListeners.forEach(function(r){return r.call(A,e,t)})},i.prototype._chooseAndInitObserver=function(){var e=this;if(!this._allowResizeObserver){this._initDevicePixelRatioObservable();return}gp().then(function(t){return t?e._initResizeObserver():e._initDevicePixelRatioObservable()})},i.prototype._initDevicePixelRatioObservable=function(){var e=this;if(this._canvasElement!==null){var t=$a(this._canvasElement);if(t===null)throw new Error("No window is associated with the canvas");this._devicePixelRatioObservable=dp(t),this._devicePixelRatioObservable.subscribe(function(){return e._invalidateBitmapSize()}),this._invalidateBitmapSize()}},i.prototype._invalidateBitmapSize=function(){var e,t;if(this._canvasElement!==null){var A=$a(this._canvasElement);if(A!==null){var r=(t=(e=this._devicePixelRatioObservable)===null||e===void 0?void 0:e.value)!==null&&t!==void 0?t:A.devicePixelRatio,n=this._canvasElement.getClientRects(),s=n[0]!==void 0?mp(n[0],r):pt({width:this._canvasElementClientSize.width*r,height:this._canvasElementClientSize.height*r});this._suggestNewBitmapSize(s)}}},i.prototype._initResizeObserver=function(){var e=this;this._canvasElement!==null&&(this._canvasElementResizeObserver=new ResizeObserver(function(t){var A=t.find(function(s){return s.target===e._canvasElement});if(!(!A||!A.devicePixelContentBoxSize||!A.devicePixelContentBoxSize[0])){var r=A.devicePixelContentBoxSize[0],n=pt({width:r.inlineSize,height:r.blockSize});e._suggestNewBitmapSize(n)}}),this._canvasElementResizeObserver.observe(this._canvasElement,{box:"device-pixel-content-box"}))},i})();function fp(i,e){return new pp(i,e.transform,e.options)}function $a(i){return i.ownerDocument.defaultView}function gp(){return new Promise(function(i){var e=new ResizeObserver(function(t){i(t.every(function(A){return"devicePixelContentBoxSize"in A})),e.disconnect()});e.observe(document.body,{box:"device-pixel-content-box"})}).catch(function(){return!1})}function mp(i,e){return pt({width:Math.round(i.left*e+i.width*e)-Math.round(i.left*e),height:Math.round(i.top*e+i.height*e)-Math.round(i.top*e)})}var wp=(function(){function i(e,t,A){if(t.width===0||t.height===0)throw new TypeError("Rendering target could only be created on a media with positive width and height");if(this._mediaSize=t,A.width===0||A.height===0)throw new TypeError("Rendering target could only be created using a bitmap with positive integer width and height");this._bitmapSize=A,this._context=e}return i.prototype.useMediaCoordinateSpace=function(e){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),this._context.scale(this._horizontalPixelRatio,this._verticalPixelRatio),e({context:this._context,mediaSize:this._mediaSize})}finally{this._context.restore()}},i.prototype.useBitmapCoordinateSpace=function(e){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),e({context:this._context,mediaSize:this._mediaSize,bitmapSize:this._bitmapSize,horizontalPixelRatio:this._horizontalPixelRatio,verticalPixelRatio:this._verticalPixelRatio})}finally{this._context.restore()}},Object.defineProperty(i.prototype,"_horizontalPixelRatio",{get:function(){return this._bitmapSize.width/this._mediaSize.width},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"_verticalPixelRatio",{get:function(){return this._bitmapSize.height/this._mediaSize.height},enumerable:!1,configurable:!0}),i})();function ei(i,e){var t=i.canvasElementClientSize;if(t.width===0||t.height===0)return null;var A=i.bitmapSize;if(A.width===0||A.height===0)return null;var r=i.canvasElement.getContext("2d",e);return r===null?null:new wp(r,t,A)}const Bp={upColor:"#26a69a",downColor:"#ef5350",wickVisible:!0,borderVisible:!0,borderColor:"#378658",borderUpColor:"#26a69a",borderDownColor:"#ef5350",wickColor:"#737375",wickUpColor:"#26a69a",wickDownColor:"#ef5350"},yp={upColor:"#26a69a",downColor:"#ef5350",openVisible:!0,thinBars:!0},Cp={color:"#2196f3",lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},vp={topColor:"rgba( 46, 220, 135, 0.4)",bottomColor:"rgba( 40, 221, 100, 0)",invertFilledArea:!1,lineColor:"#33D778",lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},Tp={baseValue:{type:"price",price:0},topFillColor1:"rgba(38, 166, 154, 0.28)",topFillColor2:"rgba(38, 166, 154, 0.05)",topLineColor:"rgba(38, 166, 154, 1)",bottomFillColor1:"rgba(239, 83, 80, 0.05)",bottomFillColor2:"rgba(239, 83, 80, 0.28)",bottomLineColor:"rgba(239, 83, 80, 1)",lineWidth:3,lineStyle:0,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},xp={color:"#26a69a",base:0},Xa={color:"#2196f3"},Za={title:"",visible:!0,lastValueVisible:!0,priceLineVisible:!0,priceLineSource:0,priceLineWidth:1,priceLineColor:"",priceLineStyle:2,baseLineVisible:!0,baseLineWidth:1,baseLineColor:"#B2B5BE",baseLineStyle:0,priceFormat:{type:"price",precision:2,minMove:.01}};var Ja,Ya;function ti(i,e){const t={0:[],1:[i.lineWidth,i.lineWidth],2:[2*i.lineWidth,2*i.lineWidth],3:[6*i.lineWidth,6*i.lineWidth],4:[i.lineWidth,4*i.lineWidth]}[e];i.setLineDash(t)}function qa(i,e,t,A){i.beginPath();const r=i.lineWidth%2?.5:0;i.moveTo(t,e+r),i.lineTo(A,e+r),i.stroke()}function kA(i,e){if(!i)throw new Error("Assertion failed"+(e?": "+e:""))}function Vt(i){if(i===void 0)throw new Error("Value is undefined");return i}function Le(i){if(i===null)throw new Error("Value is null");return i}function wi(i){return Le(Vt(i))}(function(i){i[i.Simple=0]="Simple",i[i.WithSteps=1]="WithSteps",i[i.Curved=2]="Curved"})(Ja||(Ja={})),(function(i){i[i.Solid=0]="Solid",i[i.Dotted=1]="Dotted",i[i.Dashed=2]="Dashed",i[i.LargeDashed=3]="LargeDashed",i[i.SparseDotted=4]="SparseDotted"})(Ya||(Ya={}));const ja={khaki:"#f0e68c",azure:"#f0ffff",aliceblue:"#f0f8ff",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",gray:"#808080",green:"#008000",honeydew:"#f0fff0",floralwhite:"#fffaf0",lightblue:"#add8e6",lightcoral:"#f08080",lemonchiffon:"#fffacd",hotpink:"#ff69b4",lightyellow:"#ffffe0",greenyellow:"#adff2f",lightgoldenrodyellow:"#fafad2",limegreen:"#32cd32",linen:"#faf0e6",lightcyan:"#e0ffff",magenta:"#f0f",maroon:"#800000",olive:"#808000",orange:"#ffa500",oldlace:"#fdf5e6",mediumblue:"#0000cd",transparent:"#0000",lime:"#0f0",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",midnightblue:"#191970",orchid:"#da70d6",mediumorchid:"#ba55d3",mediumturquoise:"#48d1cc",orangered:"#ff4500",royalblue:"#4169e1",powderblue:"#b0e0e6",red:"#f00",coral:"#ff7f50",turquoise:"#40e0d0",white:"#fff",whitesmoke:"#f5f5f5",wheat:"#f5deb3",teal:"#008080",steelblue:"#4682b4",bisque:"#ffe4c4",aquamarine:"#7fffd4",aqua:"#0ff",sienna:"#a0522d",silver:"#c0c0c0",springgreen:"#00ff7f",antiquewhite:"#faebd7",burlywood:"#deb887",brown:"#a52a2a",beige:"#f5f5dc",chocolate:"#d2691e",chartreuse:"#7fff00",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cadetblue:"#5f9ea0",tomato:"#ff6347",fuchsia:"#f0f",blue:"#00f",salmon:"#fa8072",blanchedalmond:"#ffebcd",slateblue:"#6a5acd",slategray:"#708090",thistle:"#d8bfd8",tan:"#d2b48c",cyan:"#0ff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",blueviolet:"#8a2be2",black:"#000",darkmagenta:"#8b008b",darkslateblue:"#483d8b",darkkhaki:"#bdb76b",darkorchid:"#9932cc",darkorange:"#ff8c00",darkgreen:"#006400",darkred:"#8b0000",dodgerblue:"#1e90ff",darkslategray:"#2f4f4f",dimgray:"#696969",deepskyblue:"#00bfff",firebrick:"#b22222",forestgreen:"#228b22",indigo:"#4b0082",ivory:"#fffff0",lavenderblush:"#fff0f5",feldspar:"#d19275",indianred:"#cd5c5c",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightskyblue:"#87cefa",lightslategray:"#789",lightslateblue:"#8470ff",snow:"#fffafa",lightseagreen:"#20b2aa",lightsalmon:"#ffa07a",darksalmon:"#e9967a",darkviolet:"#9400d3",mediumpurple:"#9370d8",mediumaquamarine:"#66cdaa",skyblue:"#87ceeb",lavender:"#e6e6fa",lightsteelblue:"#b0c4de",mediumvioletred:"#c71585",mintcream:"#f5fffa",navajowhite:"#ffdead",navy:"#000080",olivedrab:"#6b8e23",palevioletred:"#d87093",violetred:"#d02090",yellow:"#ff0",yellowgreen:"#9acd32",lawngreen:"#7cfc00",pink:"#ffc0cb",paleturquoise:"#afeeee",palegoldenrod:"#eee8aa",darkolivegreen:"#556b2f",darkseagreen:"#8fbc8f",darkturquoise:"#00ced1",peachpuff:"#ffdab9",deeppink:"#ff1493",violet:"#ee82ee",palegreen:"#98fb98",mediumseagreen:"#3cb371",peru:"#cd853f",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",purple:"#800080",seagreen:"#2e8b57",seashell:"#fff5ee",papayawhip:"#ffefd5",mediumslateblue:"#7b68ee",plum:"#dda0dd",mediumspringgreen:"#00fa9a"};function rA(i){return i<0?0:i>255?255:Math.round(i)||0}function el(i){return i<=0||i>1?Math.min(Math.max(i,0),1):Math.round(1e4*i)/1e4}const bp=/^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])?$/i,Qp=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?$/i,Fp=/^rgb\(\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*\)$/,Up=/^rgba\(\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*,\s*(-?\d{1,10})\s*,\s*(-?\d*\.?\d+)\s*\)$/;function Ki(i){(i=i.toLowerCase())in ja&&(i=ja[i]);{const e=Up.exec(i)||Fp.exec(i);if(e)return[rA(parseInt(e[1],10)),rA(parseInt(e[2],10)),rA(parseInt(e[3],10)),el(e.length<5?1:parseFloat(e[4]))]}{const e=Qp.exec(i);if(e)return[rA(parseInt(e[1],16)),rA(parseInt(e[2],16)),rA(parseInt(e[3],16)),1]}{const e=bp.exec(i);if(e)return[rA(17*parseInt(e[1],16)),rA(17*parseInt(e[2],16)),rA(17*parseInt(e[3],16)),1]}throw new Error(`Cannot parse color: ${i}`)}function tl(i){return .199*i[0]+.687*i[1]+.114*i[2]}function Dr(i){const e=Ki(i);return{t:`rgb(${e[0]}, ${e[1]}, ${e[2]})`,i:tl(e)>160?"black":"white"}}class Bt{constructor(){this.h=[]}l(e,t,A){const r={o:e,_:t,u:A===!0};this.h.push(r)}v(e){const t=this.h.findIndex((A=>e===A.o));t>-1&&this.h.splice(t,1)}p(e){this.h=this.h.filter((t=>t._!==e))}m(e,t,A){const r=[...this.h];this.h=this.h.filter((n=>!n.u)),r.forEach((n=>n.o(e,t,A)))}M(){return this.h.length>0}S(){this.h=[]}}function uA(i,...e){for(const t of e)for(const A in t)t[A]!==void 0&&Object.prototype.hasOwnProperty.call(t,A)&&!["__proto__","constructor","prototype"].includes(A)&&(typeof t[A]!="object"||i[A]===void 0||Array.isArray(t[A])?i[A]=t[A]:uA(i[A],t[A]));return i}function yA(i){return typeof i=="number"&&isFinite(i)}function Vi(i){return typeof i=="number"&&i%1==0}function zi(i){return typeof i=="string"}function _r(i){return typeof i=="boolean"}function MA(i){const e=i;if(!e||typeof e!="object")return e;let t,A,r;for(A in t=Array.isArray(e)?[]:{},e)e.hasOwnProperty(A)&&(r=e[A],t[A]=r&&typeof r=="object"?MA(r):r);return t}function Sp(i){return i!==null}function Wi(i){return i===null?void 0:i}const Ts="-apple-system, BlinkMacSystemFont, 'Trebuchet MS', Roboto, Ubuntu, sans-serif";function Bi(i,e,t){return e===void 0&&(e=Ts),`${t=t!==void 0?`${t} `:""}${i}px ${e}`}class Ep{constructor(e){this.k={C:1,T:5,P:NaN,R:"",D:"",V:"",O:"",B:0,A:0,I:0,L:0,N:0},this.F=e}W(){const e=this.k,t=this.j(),A=this.H();return e.P===t&&e.D===A||(e.P=t,e.D=A,e.R=Bi(t,A),e.L=2.5/12*t,e.B=e.L,e.A=t/12*e.T,e.I=t/12*e.T,e.N=0),e.V=this.$(),e.O=this.U(),this.k}$(){return this.F.W().layout.textColor}U(){return this.F.q()}j(){return this.F.W().layout.fontSize}H(){return this.F.W().layout.fontFamily}}class xs{constructor(){this.Y=[]}Z(e){this.Y=e}X(e,t,A){this.Y.forEach((r=>{r.X(e,t,A)}))}}class dA{X(e,t,A){e.useBitmapCoordinateSpace((r=>this.K(r,t,A)))}}class Lp extends dA{constructor(){super(...arguments),this.G=null}J(e){this.G=e}K({context:e,horizontalPixelRatio:t,verticalPixelRatio:A}){if(this.G===null||this.G.tt===null)return;const r=this.G.tt,n=this.G,s=Math.max(1,Math.floor(t))%2/2,o=l=>{e.beginPath();for(let c=r.to-1;c>=r.from;--c){const h=n.it[c],g=Math.round(h.nt*t)+s,C=h.st*A,x=l*A+s;e.moveTo(g,C),e.arc(g,C,x,0,2*Math.PI)}e.fill()};n.et>0&&(e.fillStyle=n.rt,o(n.ht+n.et)),e.fillStyle=n.lt,o(n.ht)}}function Mp(){return{it:[{nt:0,st:0,ot:0,_t:0}],lt:"",rt:"",ht:0,et:0,tt:null}}const Hp={from:0,to:1};class Ip{constructor(e,t){this.ut=new xs,this.ct=[],this.dt=[],this.ft=!0,this.F=e,this.vt=t,this.ut.Z(this.ct)}bt(e){const t=this.F.wt();t.length!==this.ct.length&&(this.dt=t.map(Mp),this.ct=this.dt.map((A=>{const r=new Lp;return r.J(A),r})),this.ut.Z(this.ct)),this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.ut}Mt(){const e=this.vt.W().mode===2,t=this.F.wt(),A=this.vt.xt(),r=this.F.St();t.forEach(((n,s)=>{var o;const l=this.dt[s],c=n.kt(A);if(e||c===null||!n.yt())return void(l.tt=null);const h=Le(n.Ct());l.lt=c.Tt,l.ht=c.ht,l.et=c.Pt,l.it[0]._t=c._t,l.it[0].st=n.Dt().Rt(c._t,h.Vt),l.rt=(o=c.Ot)!==null&&o!==void 0?o:this.F.Bt(l.it[0].st/n.Dt().At()),l.it[0].ot=A,l.it[0].nt=r.It(A),l.tt=Hp}))}}let Dp=class extends dA{constructor(e){super(),this.zt=e}K({context:e,bitmapSize:t,horizontalPixelRatio:A,verticalPixelRatio:r}){if(this.zt===null)return;const n=this.zt.Lt.yt,s=this.zt.Et.yt;if(!n&&!s)return;const o=Math.round(this.zt.nt*A),l=Math.round(this.zt.st*r);e.lineCap="butt",n&&o>=0&&(e.lineWidth=Math.floor(this.zt.Lt.et*A),e.strokeStyle=this.zt.Lt.V,e.fillStyle=this.zt.Lt.V,ti(e,this.zt.Lt.Nt),(function(c,h,g,C){c.beginPath();const x=c.lineWidth%2?.5:0;c.moveTo(h+x,g),c.lineTo(h+x,C),c.stroke()})(e,o,0,t.height)),s&&l>=0&&(e.lineWidth=Math.floor(this.zt.Et.et*r),e.strokeStyle=this.zt.Et.V,e.fillStyle=this.zt.Et.V,ti(e,this.zt.Et.Nt),qa(e,l,0,t.width))}};class _p{constructor(e){this.ft=!0,this.Ft={Lt:{et:1,Nt:0,V:"",yt:!1},Et:{et:1,Nt:0,V:"",yt:!1},nt:0,st:0},this.Wt=new Dp(this.Ft),this.jt=e}bt(){this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.Wt}Mt(){const e=this.jt.yt(),t=Le(this.jt.Ht()),A=t.$t().W().crosshair,r=this.Ft;if(A.mode===2)return r.Et.yt=!1,void(r.Lt.yt=!1);r.Et.yt=e&&this.jt.Ut(t),r.Lt.yt=e&&this.jt.qt(),r.Et.et=A.horzLine.width,r.Et.Nt=A.horzLine.style,r.Et.V=A.horzLine.color,r.Lt.et=A.vertLine.width,r.Lt.Nt=A.vertLine.style,r.Lt.V=A.vertLine.color,r.nt=this.jt.Yt(),r.st=this.jt.Zt()}}function Pp(i,e,t,A,r,n){i.fillRect(e+n,t,A-2*n,n),i.fillRect(e+n,t+r-n,A-2*n,n),i.fillRect(e,t,n,r),i.fillRect(e+A-n,t,n,r)}function Pr(i,e,t,A,r,n){i.save(),i.globalCompositeOperation="copy",i.fillStyle=n,i.fillRect(e,t,A,r),i.restore()}function Al(i,e,t,A,r,n){i.beginPath(),i.roundRect?i.roundRect(e,t,A,r,n):(i.lineTo(e+A-n[1],t),n[1]!==0&&i.arcTo(e+A,t,e+A,t+n[1],n[1]),i.lineTo(e+A,t+r-n[2]),n[2]!==0&&i.arcTo(e+A,t+r,e+A-n[2],t+r,n[2]),i.lineTo(e+n[3],t+r),n[3]!==0&&i.arcTo(e,t+r,e,t+r-n[3],n[3]),i.lineTo(e,t+n[0]),n[0]!==0&&i.arcTo(e,t,e+n[0],t,n[0]))}function il(i,e,t,A,r,n,s=0,o=[0,0,0,0],l=""){if(i.save(),!s||!l||l===n)return Al(i,e,t,A,r,o),i.fillStyle=n,i.fill(),void i.restore();const c=s/2;var h;Al(i,e+c,t+c,A-s,r-s,(h=-c,o.map((g=>g===0?g:g+h)))),n!=="transparent"&&(i.fillStyle=n,i.fill()),l!=="transparent"&&(i.lineWidth=s,i.strokeStyle=l,i.closePath(),i.stroke()),i.restore()}function rl(i,e,t,A,r,n,s){i.save(),i.globalCompositeOperation="copy";const o=i.createLinearGradient(0,0,0,r);o.addColorStop(0,n),o.addColorStop(1,s),i.fillStyle=o,i.fillRect(e,t,A,r),i.restore()}class nl{constructor(e,t){this.J(e,t)}J(e,t){this.zt=e,this.Xt=t}At(e,t){return this.zt.yt?e.P+e.L+e.B:0}X(e,t,A,r){if(!this.zt.yt||this.zt.Kt.length===0)return;const n=this.zt.V,s=this.Xt.t,o=e.useBitmapCoordinateSpace((l=>{const c=l.context;c.font=t.R;const h=this.Gt(l,t,A,r),g=h.Jt;return h.Qt?il(c,g.ti,g.ii,g.ni,g.si,s,g.ei,[g.ht,0,0,g.ht],s):il(c,g.ri,g.ii,g.ni,g.si,s,g.ei,[0,g.ht,g.ht,0],s),this.zt.hi&&(c.fillStyle=n,c.fillRect(g.ri,g.li,g.ai-g.ri,g.oi)),this.zt._i&&(c.fillStyle=t.O,c.fillRect(h.Qt?g.ui-g.ei:0,g.ii,g.ei,g.ci-g.ii)),h}));e.useMediaCoordinateSpace((({context:l})=>{const c=o.di;l.font=t.R,l.textAlign=o.Qt?"right":"left",l.textBaseline="middle",l.fillStyle=n,l.fillText(this.zt.Kt,c.fi,(c.ii+c.ci)/2+c.pi)}))}Gt(e,t,A,r){var n;const{context:s,bitmapSize:o,mediaSize:l,horizontalPixelRatio:c,verticalPixelRatio:h}=e,g=this.zt.hi||!this.zt.mi?t.T:0,C=this.zt.bi?t.C:0,x=t.L+this.Xt.wi,b=t.B+this.Xt.gi,v=t.A,U=t.I,F=this.zt.Kt,M=t.P,N=A.Mi(s,F),R=Math.ceil(A.xi(s,F)),L=M+x+b,z=t.C+v+U+R+g,q=Math.max(1,Math.floor(h));let $=Math.round(L*h);$%2!=q%2&&($+=1);const V=C>0?Math.max(1,Math.floor(C*c)):0,j=Math.round(z*c),te=Math.round(g*c),ce=(n=this.Xt.Si)!==null&&n!==void 0?n:this.Xt.ki,X=Math.round(ce*h)-Math.floor(.5*h),ee=Math.floor(X+q/2-$/2),se=ee+$,le=r==="right",ne=le?l.width-C:C,he=le?o.width-V:V;let de,we,xe;return le?(de=he-j,we=he-te,xe=ne-g-v-C):(de=he+j,we=he+te,xe=ne+g+v),{Qt:le,Jt:{ii:ee,li:X,ci:se,ni:j,si:$,ht:2*c,ei:V,ti:de,ri:he,ai:we,oi:q,ui:o.width},di:{ii:ee/h,ci:se/h,fi:xe,pi:N}}}}class kr{constructor(e){this.yi={ki:0,t:"#000",gi:0,wi:0},this.Ci={Kt:"",yt:!1,hi:!0,mi:!1,Ot:"",V:"#FFF",_i:!1,bi:!1},this.Ti={Kt:"",yt:!1,hi:!1,mi:!0,Ot:"",V:"#FFF",_i:!0,bi:!0},this.ft=!0,this.Pi=new(e||nl)(this.Ci,this.yi),this.Ri=new(e||nl)(this.Ti,this.yi)}Kt(){return this.Di(),this.Ci.Kt}ki(){return this.Di(),this.yi.ki}bt(){this.ft=!0}At(e,t=!1){return Math.max(this.Pi.At(e,t),this.Ri.At(e,t))}Vi(){return this.yi.Si||0}Oi(e){this.yi.Si=e}Bi(){return this.Di(),this.Ci.yt||this.Ti.yt}Ai(){return this.Di(),this.Ci.yt}gt(e){return this.Di(),this.Ci.hi=this.Ci.hi&&e.W().ticksVisible,this.Ti.hi=this.Ti.hi&&e.W().ticksVisible,this.Pi.J(this.Ci,this.yi),this.Ri.J(this.Ti,this.yi),this.Pi}Ii(){return this.Di(),this.Pi.J(this.Ci,this.yi),this.Ri.J(this.Ti,this.yi),this.Ri}Di(){this.ft&&(this.Ci.hi=!0,this.Ti.hi=!1,this.zi(this.Ci,this.Ti,this.yi))}}class kp extends kr{constructor(e,t,A){super(),this.jt=e,this.Li=t,this.Ei=A}zi(e,t,A){if(e.yt=!1,this.jt.W().mode===2)return;const r=this.jt.W().horzLine;if(!r.labelVisible)return;const n=this.Li.Ct();if(!this.jt.yt()||this.Li.Ni()||n===null)return;const s=Dr(r.labelBackgroundColor);A.t=s.t,e.V=s.i;const o=2/12*this.Li.P();A.wi=o,A.gi=o;const l=this.Ei(this.Li);A.ki=l.ki,e.Kt=this.Li.Fi(l._t,n),e.yt=!0}}const Np=/[1-9]/g;class sl{constructor(){this.zt=null}J(e){this.zt=e}X(e,t){if(this.zt===null||this.zt.yt===!1||this.zt.Kt.length===0)return;const A=e.useMediaCoordinateSpace((({context:C})=>(C.font=t.R,Math.round(t.Wi.xi(C,Le(this.zt).Kt,Np)))));if(A<=0)return;const r=t.ji,n=A+2*r,s=n/2,o=this.zt.Hi;let l=this.zt.ki,c=Math.floor(l-s)+.5;c<0?(l+=Math.abs(0-c),c=Math.floor(l-s)+.5):c+n>o&&(l-=Math.abs(o-(c+n)),c=Math.floor(l-s)+.5);const h=c+n,g=Math.ceil(0+t.C+t.T+t.L+t.P+t.B);e.useBitmapCoordinateSpace((({context:C,horizontalPixelRatio:x,verticalPixelRatio:b})=>{const v=Le(this.zt);C.fillStyle=v.t;const U=Math.round(c*x),F=Math.round(0*b),M=Math.round(h*x),N=Math.round(g*b),R=Math.round(2*x);if(C.beginPath(),C.moveTo(U,F),C.lineTo(U,N-R),C.arcTo(U,N,U+R,N,R),C.lineTo(M-R,N),C.arcTo(M,N,M,N-R,R),C.lineTo(M,F),C.fill(),v.hi){const L=Math.round(v.ki*x),z=F,q=Math.round((z+t.T)*b);C.fillStyle=v.V;const $=Math.max(1,Math.floor(x)),V=Math.floor(.5*x);C.fillRect(L-V,z,$,q-z)}})),e.useMediaCoordinateSpace((({context:C})=>{const x=Le(this.zt),b=0+t.C+t.T+t.L+t.P/2;C.font=t.R,C.textAlign="left",C.textBaseline="middle",C.fillStyle=x.V;const v=t.Wi.Mi(C,"Apr0");C.translate(c+r,b+v),C.fillText(x.Kt,0,0)}))}}class Op{constructor(e,t,A){this.ft=!0,this.Wt=new sl,this.Ft={yt:!1,t:"#4c525e",V:"white",Kt:"",Hi:0,ki:NaN,hi:!0},this.vt=e,this.$i=t,this.Ei=A}bt(){this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.Wt.J(this.Ft),this.Wt}Mt(){const e=this.Ft;if(e.yt=!1,this.vt.W().mode===2)return;const t=this.vt.W().vertLine;if(!t.labelVisible)return;const A=this.$i.St();if(A.Ni())return;e.Hi=A.Hi();const r=this.Ei();if(r===null)return;e.ki=r.ki;const n=A.Ui(this.vt.xt());e.Kt=A.qi(Le(n)),e.yt=!0;const s=Dr(t.labelBackgroundColor);e.t=s.t,e.V=s.i,e.hi=A.W().ticksVisible}}class bs{constructor(){this.Yi=null,this.Zi=0}Xi(){return this.Zi}Ki(e){this.Zi=e}Dt(){return this.Yi}Gi(e){this.Yi=e}Ji(e){return[]}Qi(){return[]}yt(){return!0}}var ol;(function(i){i[i.Normal=0]="Normal",i[i.Magnet=1]="Magnet",i[i.Hidden=2]="Hidden"})(ol||(ol={}));class Kp extends bs{constructor(e,t){super(),this.tn=null,this.nn=NaN,this.sn=0,this.en=!0,this.rn=new Map,this.hn=!1,this.ln=NaN,this.an=NaN,this._n=NaN,this.un=NaN,this.$i=e,this.cn=t,this.dn=new Ip(e,this),this.fn=((r,n)=>s=>{const o=n(),l=r();if(s===Le(this.tn).vn())return{_t:l,ki:o};{const c=Le(s.Ct());return{_t:s.pn(o,c),ki:o}}})((()=>this.nn),(()=>this.an));const A=((r,n)=>()=>{const s=this.$i.St().mn(r()),o=n();return s&&Number.isFinite(o)?{ot:s,ki:o}:null})((()=>this.sn),(()=>this.Yt()));this.bn=new Op(this,e,A),this.wn=new _p(this)}W(){return this.cn}gn(e,t){this._n=e,this.un=t}Mn(){this._n=NaN,this.un=NaN}xn(){return this._n}Sn(){return this.un}kn(e,t,A){this.hn||(this.hn=!0),this.en=!0,this.yn(e,t,A)}xt(){return this.sn}Yt(){return this.ln}Zt(){return this.an}yt(){return this.en}Cn(){this.en=!1,this.Tn(),this.nn=NaN,this.ln=NaN,this.an=NaN,this.tn=null,this.Mn()}Pn(e){return this.tn!==null?[this.wn,this.dn]:[]}Ut(e){return e===this.tn&&this.cn.horzLine.visible}qt(){return this.cn.vertLine.visible}Rn(e,t){this.en&&this.tn===e||this.rn.clear();const A=[];return this.tn===e&&A.push(this.Dn(this.rn,t,this.fn)),A}Qi(){return this.en?[this.bn]:[]}Ht(){return this.tn}Vn(){this.wn.bt(),this.rn.forEach((e=>e.bt())),this.bn.bt(),this.dn.bt()}On(e){return e&&!e.vn().Ni()?e.vn():null}yn(e,t,A){this.Bn(e,t,A)&&this.Vn()}Bn(e,t,A){const r=this.ln,n=this.an,s=this.nn,o=this.sn,l=this.tn,c=this.On(A);this.sn=e,this.ln=isNaN(e)?NaN:this.$i.St().It(e),this.tn=A;const h=c!==null?c.Ct():null;return c!==null&&h!==null?(this.nn=t,this.an=c.Rt(t,h)):(this.nn=NaN,this.an=NaN),r!==this.ln||n!==this.an||o!==this.sn||s!==this.nn||l!==this.tn}Tn(){const e=this.$i.wt().map((A=>A.In().An())).filter(Sp),t=e.length===0?null:Math.max(...e);this.sn=t!==null?t:NaN}Dn(e,t,A){let r=e.get(t);return r===void 0&&(r=new kp(this,t,A),e.set(t,r)),r}}function Nr(i){return i==="left"||i==="right"}class Et{constructor(e){this.zn=new Map,this.Ln=[],this.En=e}Nn(e,t){const A=(function(r,n){return r===void 0?n:{Fn:Math.max(r.Fn,n.Fn),Wn:r.Wn||n.Wn}})(this.zn.get(e),t);this.zn.set(e,A)}jn(){return this.En}Hn(e){const t=this.zn.get(e);return t===void 0?{Fn:this.En}:{Fn:Math.max(this.En,t.Fn),Wn:t.Wn}}$n(){this.Un(),this.Ln=[{qn:0}]}Yn(e){this.Un(),this.Ln=[{qn:1,Vt:e}]}Zn(e){this.Xn(),this.Ln.push({qn:5,Vt:e})}Un(){this.Xn(),this.Ln.push({qn:6})}Kn(){this.Un(),this.Ln=[{qn:4}]}Gn(e){this.Un(),this.Ln.push({qn:2,Vt:e})}Jn(e){this.Un(),this.Ln.push({qn:3,Vt:e})}Qn(){return this.Ln}ts(e){for(const t of e.Ln)this.ns(t);this.En=Math.max(this.En,e.En),e.zn.forEach(((t,A)=>{this.Nn(A,t)}))}static ss(){return new Et(2)}static es(){return new Et(3)}ns(e){switch(e.qn){case 0:this.$n();break;case 1:this.Yn(e.Vt);break;case 2:this.Gn(e.Vt);break;case 3:this.Jn(e.Vt);break;case 4:this.Kn();break;case 5:this.Zn(e.Vt);break;case 6:this.Xn()}}Xn(){const e=this.Ln.findIndex((t=>t.qn===5));e!==-1&&this.Ln.splice(e,1)}}const al=".";function HA(i,e){if(!yA(i))return"n/a";if(!Vi(e))throw new TypeError("invalid length");if(e<0||e>16)throw new TypeError("invalid length");return e===0?i.toString():("0000000000000000"+i.toString()).slice(-e)}class Or{constructor(e,t){if(t||(t=1),yA(e)&&Vi(e)||(e=100),e<0)throw new TypeError("invalid base");this.Li=e,this.rs=t,this.hs()}format(e){const t=e<0?"−":"";return e=Math.abs(e),t+this.ls(e)}hs(){if(this._s=0,this.Li>0&&this.rs>0){let e=this.Li;for(;e>1;)e/=10,this._s++}}ls(e){const t=this.Li/this.rs;let A=Math.floor(e),r="";const n=this._s!==void 0?this._s:NaN;if(t>1){let s=+(Math.round(e*t)-A*t).toFixed(this._s);s>=t&&(s-=t,A+=1),r=al+HA(+s.toFixed(this._s)*this.rs,n)}else A=Math.round(A*t)/t,n>0&&(r=al+HA(0,n));return A.toFixed(0)+r}}class ll extends Or{constructor(e=100){super(e)}format(e){return`${super.format(e)}%`}}class Vp{constructor(e){this.us=e}format(e){let t="";return e<0&&(t="-",e=-e),e<995?t+this.cs(e):e<999995?t+this.cs(e/1e3)+"K":e<999999995?(e=1e3*Math.round(e/1e3),t+this.cs(e/1e6)+"M"):(e=1e6*Math.round(e/1e6),t+this.cs(e/1e9)+"B")}cs(e){let t;const A=Math.pow(10,this.us);return t=(e=Math.round(e*A)/A)>=1e-15&&e<1?e.toFixed(this.us).replace(/\.?0+$/,""):String(e),t.replace(/(\.[1-9]*)0+$/,((r,n)=>n))}}function cl(i,e,t,A,r,n,s){if(e.length===0||A.from>=e.length||A.to<=0)return;const{context:o,horizontalPixelRatio:l,verticalPixelRatio:c}=i,h=e[A.from];let g=n(i,h),C=h;if(A.to-A.from<2){const x=r/2;o.beginPath();const b={nt:h.nt-x,st:h.st},v={nt:h.nt+x,st:h.st};o.moveTo(b.nt*l,b.st*c),o.lineTo(v.nt*l,v.st*c),s(i,g,b,v)}else{const x=(v,U)=>{s(i,g,C,U),o.beginPath(),g=v,C=U};let b=C;o.beginPath(),o.moveTo(h.nt*l,h.st*c);for(let v=A.from+1;v<A.to;++v){b=e[v];const U=n(i,b);switch(t){case 0:o.lineTo(b.nt*l,b.st*c);break;case 1:o.lineTo(b.nt*l,e[v-1].st*c),U!==g&&(x(U,b),o.lineTo(b.nt*l,e[v-1].st*c)),o.lineTo(b.nt*l,b.st*c);break;case 2:{const[F,M]=zp(e,v-1,v);o.bezierCurveTo(F.nt*l,F.st*c,M.nt*l,M.st*c,b.nt*l,b.st*c);break}}t!==1&&U!==g&&(x(U,b),o.moveTo(b.nt*l,b.st*c))}(C!==b||C===b&&t===1)&&s(i,g,C,b)}}const hl=6;function Qs(i,e){return{nt:i.nt-e.nt,st:i.st-e.st}}function ul(i,e){return{nt:i.nt/e,st:i.st/e}}function zp(i,e,t){const A=Math.max(0,e-1),r=Math.min(i.length-1,t+1);var n,s;return[(n=i[e],s=ul(Qs(i[t],i[A]),hl),{nt:n.nt+s.nt,st:n.st+s.st}),Qs(i[t],ul(Qs(i[r],i[e]),hl))]}function Wp(i,e,t,A,r){const{context:n,horizontalPixelRatio:s,verticalPixelRatio:o}=e;n.lineTo(r.nt*s,i*o),n.lineTo(A.nt*s,i*o),n.closePath(),n.fillStyle=t,n.fill()}class dl extends dA{constructor(){super(...arguments),this.G=null}J(e){this.G=e}K(e){var t;if(this.G===null)return;const{it:A,tt:r,ds:n,et:s,Nt:o,fs:l}=this.G,c=(t=this.G.vs)!==null&&t!==void 0?t:this.G.ps?0:e.mediaSize.height;if(r===null)return;const h=e.context;h.lineCap="butt",h.lineJoin="round",h.lineWidth=s,ti(h,o),h.lineWidth=1,cl(e,A,l,r,n,this.bs.bind(this),Wp.bind(null,c))}}function Fs(i,e,t){return Math.min(Math.max(i,e),t)}function Kr(i,e,t){return e-i<=t}function pl(i){const e=Math.ceil(i);return e%2==0?e-1:e}class Us{ws(e,t){const A=this.gs,{Ms:r,xs:n,Ss:s,ks:o,ys:l,vs:c}=t;if(this.Cs===void 0||A===void 0||A.Ms!==r||A.xs!==n||A.Ss!==s||A.ks!==o||A.vs!==c||A.ys!==l){const h=e.context.createLinearGradient(0,0,0,l);if(h.addColorStop(0,r),c!=null){const g=Fs(c*e.verticalPixelRatio/l,0,1);h.addColorStop(g,n),h.addColorStop(g,s)}h.addColorStop(1,o),this.Cs=h,this.gs=t}return this.Cs}}class Rp extends dl{constructor(){super(...arguments),this.Ts=new Us}bs(e,t){return this.Ts.ws(e,{Ms:t.Ps,xs:"",Ss:"",ks:t.Rs,ys:e.bitmapSize.height})}}function Gp(i,e){const t=i.context;t.strokeStyle=e,t.stroke()}class fl extends dA{constructor(){super(...arguments),this.G=null}J(e){this.G=e}K(e){if(this.G===null)return;const{it:t,tt:A,ds:r,fs:n,et:s,Nt:o,Ds:l}=this.G;if(A===null)return;const c=e.context;c.lineCap="butt",c.lineWidth=s*e.verticalPixelRatio,ti(c,o),c.lineJoin="round";const h=this.Vs.bind(this);n!==void 0&&cl(e,t,n,A,r,h,Gp),l&&(function(g,C,x,b,v){const{horizontalPixelRatio:U,verticalPixelRatio:F,context:M}=g;let N=null;const R=Math.max(1,Math.floor(U))%2/2,L=x*F+R;for(let z=b.to-1;z>=b.from;--z){const q=C[z];if(q){const $=v(g,q);$!==N&&(M.beginPath(),N!==null&&M.fill(),M.fillStyle=$,N=$);const V=Math.round(q.nt*U)+R,j=q.st*F;M.moveTo(V,j),M.arc(V,j,L,0,2*Math.PI)}}M.fill()})(e,t,l,A,h)}}class gl extends fl{Vs(e,t){return t.lt}}function ml(i,e,t,A,r=0,n=e.length){let s=n-r;for(;0<s;){const o=s>>1,l=r+o;A(e[l],t)===i?(r=l+1,s-=o+1):s=o}return r}const Ri=ml.bind(null,!0),wl=ml.bind(null,!1);function $p(i,e){return i.ot<e}function Xp(i,e){return e<i.ot}function Bl(i,e,t){const A=e.Os(),r=e.ui(),n=Ri(i,A,$p),s=wl(i,r,Xp);if(!t)return{from:n,to:s};let o=n,l=s;return n>0&&n<i.length&&i[n].ot>=A&&(o=n-1),s>0&&s<i.length&&i[s-1].ot<=r&&(l=s+1),{from:o,to:l}}class Ss{constructor(e,t,A){this.Bs=!0,this.As=!0,this.Is=!0,this.zs=[],this.Ls=null,this.Es=e,this.Ns=t,this.Fs=A}bt(e){this.Bs=!0,e==="data"&&(this.As=!0),e==="options"&&(this.Is=!0)}gt(){return this.Es.yt()?(this.Ws(),this.Ls===null?null:this.js):null}Hs(){this.zs=this.zs.map((e=>Object.assign(Object.assign({},e),this.Es.Us().$s(e.ot))))}qs(){this.Ls=null}Ws(){this.As&&(this.Ys(),this.As=!1),this.Is&&(this.Hs(),this.Is=!1),this.Bs&&(this.Zs(),this.Bs=!1)}Zs(){const e=this.Es.Dt(),t=this.Ns.St();if(this.qs(),t.Ni()||e.Ni())return;const A=t.Xs();if(A===null||this.Es.In().Ks()===0)return;const r=this.Es.Ct();r!==null&&(this.Ls=Bl(this.zs,A,this.Fs),this.Gs(e,t,r.Vt),this.Js())}}class Vr extends Ss{constructor(e,t){super(e,t,!0)}Gs(e,t,A){t.Qs(this.zs,Wi(this.Ls)),e.te(this.zs,A,Wi(this.Ls))}ie(e,t){return{ot:e,_t:t,nt:NaN,st:NaN}}Ys(){const e=this.Es.Us();this.zs=this.Es.In().ne().map((t=>{const A=t.Vt[3];return this.se(t.ee,A,e)}))}}class Zp extends Vr{constructor(e,t){super(e,t),this.js=new xs,this.re=new Rp,this.he=new gl,this.js.Z([this.re,this.he])}se(e,t,A){return Object.assign(Object.assign({},this.ie(e,t)),A.$s(e))}Js(){const e=this.Es.W();this.re.J({fs:e.lineType,it:this.zs,Nt:e.lineStyle,et:e.lineWidth,vs:null,ps:e.invertFilledArea,tt:this.Ls,ds:this.Ns.St().le()}),this.he.J({fs:e.lineVisible?e.lineType:void 0,it:this.zs,Nt:e.lineStyle,et:e.lineWidth,tt:this.Ls,ds:this.Ns.St().le(),Ds:e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0})}}class Jp extends dA{constructor(){super(...arguments),this.zt=null,this.ae=0,this.oe=0}J(e){this.zt=e}K({context:e,horizontalPixelRatio:t,verticalPixelRatio:A}){if(this.zt===null||this.zt.In.length===0||this.zt.tt===null)return;this.ae=this._e(t),this.ae>=2&&Math.max(1,Math.floor(t))%2!=this.ae%2&&this.ae--,this.oe=this.zt.ue?Math.min(this.ae,Math.floor(t)):this.ae;let r=null;const n=this.oe<=this.ae&&this.zt.le>=Math.floor(1.5*t);for(let s=this.zt.tt.from;s<this.zt.tt.to;++s){const o=this.zt.In[s];r!==o.ce&&(e.fillStyle=o.ce,r=o.ce);const l=Math.floor(.5*this.oe),c=Math.round(o.nt*t),h=c-l,g=this.oe,C=h+g-1,x=Math.min(o.de,o.fe),b=Math.max(o.de,o.fe),v=Math.round(x*A)-l,U=Math.round(b*A)+l,F=Math.max(U-v,this.oe);e.fillRect(h,v,g,F);const M=Math.ceil(1.5*this.ae);if(n){if(this.zt.ve){const z=c-M;let q=Math.max(v,Math.round(o.pe*A)-l),$=q+g-1;$>v+F-1&&($=v+F-1,q=$-g+1),e.fillRect(z,q,h-z,$-q+1)}const N=c+M;let R=Math.max(v,Math.round(o.me*A)-l),L=R+g-1;L>v+F-1&&(L=v+F-1,R=L-g+1),e.fillRect(C+1,R,N-C,L-R+1)}}}_e(e){const t=Math.floor(e);return Math.max(t,Math.floor((function(A,r){return Math.floor(.3*A*r)})(Le(this.zt).le,e)))}}class yl extends Ss{constructor(e,t){super(e,t,!1)}Gs(e,t,A){t.Qs(this.zs,Wi(this.Ls)),e.be(this.zs,A,Wi(this.Ls))}we(e,t,A){return{ot:e,ge:t.Vt[0],Me:t.Vt[1],xe:t.Vt[2],Se:t.Vt[3],nt:NaN,pe:NaN,de:NaN,fe:NaN,me:NaN}}Ys(){const e=this.Es.Us();this.zs=this.Es.In().ne().map((t=>this.se(t.ee,t,e)))}}class Yp extends yl{constructor(){super(...arguments),this.js=new Jp}se(e,t,A){return Object.assign(Object.assign({},this.we(e,t,A)),A.$s(e))}Js(){const e=this.Es.W();this.js.J({In:this.zs,le:this.Ns.St().le(),ve:e.openVisible,ue:e.thinBars,tt:this.Ls})}}class qp extends dl{constructor(){super(...arguments),this.Ts=new Us}bs(e,t){const A=this.G;return this.Ts.ws(e,{Ms:t.ke,xs:t.ye,Ss:t.Ce,ks:t.Te,ys:e.bitmapSize.height,vs:A.vs})}}class jp extends fl{constructor(){super(...arguments),this.Pe=new Us}Vs(e,t){const A=this.G;return this.Pe.ws(e,{Ms:t.Re,xs:t.Re,Ss:t.De,ks:t.De,ys:e.bitmapSize.height,vs:A.vs})}}class ef extends Vr{constructor(e,t){super(e,t),this.js=new xs,this.Ve=new qp,this.Oe=new jp,this.js.Z([this.Ve,this.Oe])}se(e,t,A){return Object.assign(Object.assign({},this.ie(e,t)),A.$s(e))}Js(){const e=this.Es.Ct();if(e===null)return;const t=this.Es.W(),A=this.Es.Dt().Rt(t.baseValue.price,e.Vt),r=this.Ns.St().le();this.Ve.J({it:this.zs,et:t.lineWidth,Nt:t.lineStyle,fs:t.lineType,vs:A,ps:!1,tt:this.Ls,ds:r}),this.Oe.J({it:this.zs,et:t.lineWidth,Nt:t.lineStyle,fs:t.lineVisible?t.lineType:void 0,Ds:t.pointMarkersVisible?t.pointMarkersRadius||t.lineWidth/2+2:void 0,vs:A,tt:this.Ls,ds:r})}}class tf extends dA{constructor(){super(...arguments),this.zt=null,this.ae=0}J(e){this.zt=e}K(e){if(this.zt===null||this.zt.In.length===0||this.zt.tt===null)return;const{horizontalPixelRatio:t}=e;this.ae=(function(n,s){if(n>=2.5&&n<=4)return Math.floor(3*s);const o=1-.2*Math.atan(Math.max(4,n)-4)/(.5*Math.PI),l=Math.floor(n*o*s),c=Math.floor(n*s),h=Math.min(l,c);return Math.max(Math.floor(s),h)})(this.zt.le,t),this.ae>=2&&Math.floor(t)%2!=this.ae%2&&this.ae--;const A=this.zt.In;this.zt.Be&&this.Ae(e,A,this.zt.tt),this.zt._i&&this.Ie(e,A,this.zt.tt);const r=this.ze(t);(!this.zt._i||this.ae>2*r)&&this.Le(e,A,this.zt.tt)}Ae(e,t,A){if(this.zt===null)return;const{context:r,horizontalPixelRatio:n,verticalPixelRatio:s}=e;let o="",l=Math.min(Math.floor(n),Math.floor(this.zt.le*n));l=Math.max(Math.floor(n),Math.min(l,this.ae));const c=Math.floor(.5*l);let h=null;for(let g=A.from;g<A.to;g++){const C=t[g];C.Ee!==o&&(r.fillStyle=C.Ee,o=C.Ee);const x=Math.round(Math.min(C.pe,C.me)*s),b=Math.round(Math.max(C.pe,C.me)*s),v=Math.round(C.de*s),U=Math.round(C.fe*s);let F=Math.round(n*C.nt)-c;const M=F+l-1;h!==null&&(F=Math.max(h+1,F),F=Math.min(F,M));const N=M-F+1;r.fillRect(F,v,N,x-v),r.fillRect(F,b+1,N,U-b),h=M}}ze(e){let t=Math.floor(1*e);this.ae<=2*t&&(t=Math.floor(.5*(this.ae-1)));const A=Math.max(Math.floor(e),t);return this.ae<=2*A?Math.max(Math.floor(e),Math.floor(1*e)):A}Ie(e,t,A){if(this.zt===null)return;const{context:r,horizontalPixelRatio:n,verticalPixelRatio:s}=e;let o="";const l=this.ze(n);let c=null;for(let h=A.from;h<A.to;h++){const g=t[h];g.Ne!==o&&(r.fillStyle=g.Ne,o=g.Ne);let C=Math.round(g.nt*n)-Math.floor(.5*this.ae);const x=C+this.ae-1,b=Math.round(Math.min(g.pe,g.me)*s),v=Math.round(Math.max(g.pe,g.me)*s);if(c!==null&&(C=Math.max(c+1,C),C=Math.min(C,x)),this.zt.le*n>2*l)Pp(r,C,b,x-C+1,v-b+1,l);else{const U=x-C+1;r.fillRect(C,b,U,v-b+1)}c=x}}Le(e,t,A){if(this.zt===null)return;const{context:r,horizontalPixelRatio:n,verticalPixelRatio:s}=e;let o="";const l=this.ze(n);for(let c=A.from;c<A.to;c++){const h=t[c];let g=Math.round(Math.min(h.pe,h.me)*s),C=Math.round(Math.max(h.pe,h.me)*s),x=Math.round(h.nt*n)-Math.floor(.5*this.ae),b=x+this.ae-1;if(h.ce!==o){const v=h.ce;r.fillStyle=v,o=v}this.zt._i&&(x+=l,g+=l,b-=l,C-=l),g>C||r.fillRect(x,g,b-x+1,C-g+1)}}}class Af extends yl{constructor(){super(...arguments),this.js=new tf}se(e,t,A){return Object.assign(Object.assign({},this.we(e,t,A)),A.$s(e))}Js(){const e=this.Es.W();this.js.J({In:this.zs,le:this.Ns.St().le(),Be:e.wickVisible,_i:e.borderVisible,tt:this.Ls})}}class rf{constructor(e,t){this.Fe=e,this.Li=t}X(e,t,A){this.Fe.draw(e,this.Li,t,A)}}class Es extends Ss{constructor(e,t,A){super(e,t,!1),this.wn=A,this.js=new rf(this.wn.renderer(),(r=>{const n=e.Ct();return n===null?null:e.Dt().Rt(r,n.Vt)}))}We(e){return this.wn.priceValueBuilder(e)}je(e){return this.wn.isWhitespace(e)}Ys(){const e=this.Es.Us();this.zs=this.Es.In().ne().map((t=>Object.assign(Object.assign({ot:t.ee,nt:NaN},e.$s(t.ee)),{He:t.$e})))}Gs(e,t){t.Qs(this.zs,Wi(this.Ls))}Js(){this.wn.update({bars:this.zs.map(nf),barSpacing:this.Ns.St().le(),visibleRange:this.Ls},this.Es.W())}}function nf(i){return{x:i.nt,time:i.ot,originalData:i.He,barColor:i.ce}}class sf extends dA{constructor(){super(...arguments),this.zt=null,this.Ue=[]}J(e){this.zt=e,this.Ue=[]}K({context:e,horizontalPixelRatio:t,verticalPixelRatio:A}){if(this.zt===null||this.zt.it.length===0||this.zt.tt===null)return;this.Ue.length||this.qe(t);const r=Math.max(1,Math.floor(A)),n=Math.round(this.zt.Ye*A)-Math.floor(r/2),s=n+r;for(let o=this.zt.tt.from;o<this.zt.tt.to;o++){const l=this.zt.it[o],c=this.Ue[o-this.zt.tt.from],h=Math.round(l.st*A);let g,C;e.fillStyle=l.ce,h<=n?(g=h,C=s):(g=n,C=h-Math.floor(r/2)+r),e.fillRect(c.Os,g,c.ui-c.Os+1,C-g)}}qe(e){if(this.zt===null||this.zt.it.length===0||this.zt.tt===null)return void(this.Ue=[]);const t=Math.ceil(this.zt.le*e)<=1?0:Math.max(1,Math.floor(e)),A=Math.round(this.zt.le*e)-t;this.Ue=new Array(this.zt.tt.to-this.zt.tt.from);for(let n=this.zt.tt.from;n<this.zt.tt.to;n++){const s=this.zt.it[n],o=Math.round(s.nt*e);let l,c;if(A%2){const h=(A-1)/2;l=o-h,c=o+h}else{const h=A/2;l=o-h,c=o+h-1}this.Ue[n-this.zt.tt.from]={Os:l,ui:c,Ze:o,Xe:s.nt*e,ot:s.ot}}for(let n=this.zt.tt.from+1;n<this.zt.tt.to;n++){const s=this.Ue[n-this.zt.tt.from],o=this.Ue[n-this.zt.tt.from-1];s.ot===o.ot+1&&s.Os-o.ui!==t+1&&(o.Ze>o.Xe?o.ui=s.Os-t-1:s.Os=o.ui+t+1)}let r=Math.ceil(this.zt.le*e);for(let n=this.zt.tt.from;n<this.zt.tt.to;n++){const s=this.Ue[n-this.zt.tt.from];s.ui<s.Os&&(s.ui=s.Os);const o=s.ui-s.Os+1;r=Math.min(o,r)}if(t>0&&r<4)for(let n=this.zt.tt.from;n<this.zt.tt.to;n++){const s=this.Ue[n-this.zt.tt.from];s.ui-s.Os+1>r&&(s.Ze>s.Xe?s.ui-=1:s.Os+=1)}}}class of extends Vr{constructor(){super(...arguments),this.js=new sf}se(e,t,A){return Object.assign(Object.assign({},this.ie(e,t)),A.$s(e))}Js(){const e={it:this.zs,le:this.Ns.St().le(),tt:this.Ls,Ye:this.Es.Dt().Rt(this.Es.W().base,Le(this.Es.Ct()).Vt)};this.js.J(e)}}class af extends Vr{constructor(){super(...arguments),this.js=new gl}se(e,t,A){return Object.assign(Object.assign({},this.ie(e,t)),A.$s(e))}Js(){const e=this.Es.W(),t={it:this.zs,Nt:e.lineStyle,fs:e.lineVisible?e.lineType:void 0,et:e.lineWidth,Ds:e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0,tt:this.Ls,ds:this.Ns.St().le()};this.js.J(t)}}const lf=/[2-9]/g;class Gi{constructor(e=50){this.Ke=0,this.Ge=1,this.Je=1,this.Qe={},this.tr=new Map,this.ir=e}nr(){this.Ke=0,this.tr.clear(),this.Ge=1,this.Je=1,this.Qe={}}xi(e,t,A){return this.sr(e,t,A).width}Mi(e,t,A){const r=this.sr(e,t,A);return((r.actualBoundingBoxAscent||0)-(r.actualBoundingBoxDescent||0))/2}sr(e,t,A){const r=A||lf,n=String(t).replace(r,"0");if(this.tr.has(n))return Vt(this.tr.get(n)).er;if(this.Ke===this.ir){const o=this.Qe[this.Je];delete this.Qe[this.Je],this.tr.delete(o),this.Je++,this.Ke--}e.save(),e.textBaseline="middle";const s=e.measureText(n);return e.restore(),s.width===0&&t.length||(this.tr.set(n,{er:s,rr:this.Ge}),this.Qe[this.Ge]=n,this.Ke++,this.Ge++),s}}class cf{constructor(e){this.hr=null,this.k=null,this.lr="right",this.ar=e}_r(e,t,A){this.hr=e,this.k=t,this.lr=A}X(e){this.k!==null&&this.hr!==null&&this.hr.X(e,this.k,this.ar,this.lr)}}class Cl{constructor(e,t,A){this.ur=e,this.ar=new Gi(50),this.cr=t,this.F=A,this.j=-1,this.Wt=new cf(this.ar)}gt(){const e=this.F.dr(this.cr);if(e===null)return null;const t=e.vr(this.cr)?e.pr():this.cr.Dt();if(t===null)return null;const A=e.mr(t);if(A==="overlay")return null;const r=this.F.br();return r.P!==this.j&&(this.j=r.P,this.ar.nr()),this.Wt._r(this.ur.Ii(),r,A),this.Wt}}class hf extends dA{constructor(){super(...arguments),this.zt=null}J(e){this.zt=e}wr(e,t){var A;if(!(!((A=this.zt)===null||A===void 0)&&A.yt))return null;const{st:r,et:n,gr:s}=this.zt;return t>=r-n-7&&t<=r+n+7?{Mr:this.zt,gr:s}:null}K({context:e,bitmapSize:t,horizontalPixelRatio:A,verticalPixelRatio:r}){if(this.zt===null||this.zt.yt===!1)return;const n=Math.round(this.zt.st*r);n<0||n>t.height||(e.lineCap="butt",e.strokeStyle=this.zt.V,e.lineWidth=Math.floor(this.zt.et*A),ti(e,this.zt.Nt),qa(e,n,0,t.width))}}class Ls{constructor(e){this.Sr={st:0,V:"rgba(0, 0, 0, 0)",et:1,Nt:0,yt:!1},this.kr=new hf,this.ft=!0,this.Es=e,this.Ns=e.$t(),this.kr.J(this.Sr)}bt(){this.ft=!0}gt(){return this.Es.yt()?(this.ft&&(this.yr(),this.ft=!1),this.kr):null}}class uf extends Ls{constructor(e){super(e)}yr(){this.Sr.yt=!1;const e=this.Es.Dt(),t=e.Cr().Cr;if(t!==2&&t!==3)return;const A=this.Es.W();if(!A.baseLineVisible||!this.Es.yt())return;const r=this.Es.Ct();r!==null&&(this.Sr.yt=!0,this.Sr.st=e.Rt(r.Vt,r.Vt),this.Sr.V=A.baseLineColor,this.Sr.et=A.baseLineWidth,this.Sr.Nt=A.baseLineStyle)}}class df extends dA{constructor(){super(...arguments),this.zt=null}J(e){this.zt=e}$e(){return this.zt}K({context:e,horizontalPixelRatio:t,verticalPixelRatio:A}){const r=this.zt;if(r===null)return;const n=Math.max(1,Math.floor(t)),s=n%2/2,o=Math.round(r.Xe.x*t)+s,l=r.Xe.y*A;e.fillStyle=r.Tr,e.beginPath();const c=Math.max(2,1.5*r.Pr)*t;e.arc(o,l,c,0,2*Math.PI,!1),e.fill(),e.fillStyle=r.Rr,e.beginPath(),e.arc(o,l,r.ht*t,0,2*Math.PI,!1),e.fill(),e.lineWidth=n,e.strokeStyle=r.Dr,e.beginPath(),e.arc(o,l,r.ht*t+n/2,0,2*Math.PI,!1),e.stroke()}}const pf=[{Vr:0,Or:.25,Br:4,Ar:10,Ir:.25,zr:0,Lr:.4,Er:.8},{Vr:.25,Or:.525,Br:10,Ar:14,Ir:0,zr:0,Lr:.8,Er:0},{Vr:.525,Or:1,Br:14,Ar:14,Ir:0,zr:0,Lr:0,Er:0}];function vl(i,e,t,A){return(function(r,n){if(r==="transparent")return r;const s=Ki(r),o=s[3];return`rgba(${s[0]}, ${s[1]}, ${s[2]}, ${n*o})`})(i,t+(A-t)*e)}function Tl(i,e){const t=i%2600/2600;let A;for(const l of pf)if(t>=l.Vr&&t<=l.Or){A=l;break}kA(A!==void 0,"Last price animation internal logic error");const r=(t-A.Vr)/(A.Or-A.Vr);return{Rr:vl(e,r,A.Ir,A.zr),Dr:vl(e,r,A.Lr,A.Er),ht:(n=r,s=A.Br,o=A.Ar,s+(o-s)*n)};var n,s,o}class ff{constructor(e){this.Wt=new df,this.ft=!0,this.Nr=!0,this.Fr=performance.now(),this.Wr=this.Fr-1,this.jr=e}Hr(){this.Wr=this.Fr-1,this.bt()}$r(){if(this.bt(),this.jr.W().lastPriceAnimation===2){const e=performance.now(),t=this.Wr-e;if(t>0)return void(t<650&&(this.Wr+=2600));this.Fr=e,this.Wr=e+2600}}bt(){this.ft=!0}Ur(){this.Nr=!0}yt(){return this.jr.W().lastPriceAnimation!==0}qr(){switch(this.jr.W().lastPriceAnimation){case 0:return!1;case 1:return!0;case 2:return performance.now()<=this.Wr}}gt(){return this.ft?(this.Mt(),this.ft=!1,this.Nr=!1):this.Nr&&(this.Yr(),this.Nr=!1),this.Wt}Mt(){this.Wt.J(null);const e=this.jr.$t().St(),t=e.Xs(),A=this.jr.Ct();if(t===null||A===null)return;const r=this.jr.Zr(!0);if(r.Xr||!t.Kr(r.ee))return;const n={x:e.It(r.ee),y:this.jr.Dt().Rt(r._t,A.Vt)},s=r.V,o=this.jr.W().lineWidth,l=Tl(this.Gr(),s);this.Wt.J({Tr:s,Pr:o,Rr:l.Rr,Dr:l.Dr,ht:l.ht,Xe:n})}Yr(){const e=this.Wt.$e();if(e!==null){const t=Tl(this.Gr(),e.Tr);e.Rr=t.Rr,e.Dr=t.Dr,e.ht=t.ht}}Gr(){return this.qr()?performance.now()-this.Fr:2599}}function $i(i,e){return pl(Math.min(Math.max(i,12),30)*e)}function Xi(i,e){switch(i){case"arrowDown":case"arrowUp":return $i(e,1);case"circle":return $i(e,.8);case"square":return $i(e,.7)}}function xl(i){return(function(e){const t=Math.ceil(e);return t%2!=0?t-1:t})($i(i,1))}function bl(i){return Math.max($i(i,.1),3)}function Ql(i,e,t){return e?i:t?Math.ceil(i/2):0}function Fl(i,e,t,A,r){const n=Xi("square",t),s=(n-1)/2,o=i-s,l=e-s;return A>=o&&A<=o+n&&r>=l&&r<=l+n}function Ul(i,e,t,A){const r=(Xi("arrowUp",A)-1)/2*t.Jr,n=(pl(A/2)-1)/2*t.Jr;e.beginPath(),i?(e.moveTo(t.nt-r,t.st),e.lineTo(t.nt,t.st-r),e.lineTo(t.nt+r,t.st),e.lineTo(t.nt+n,t.st),e.lineTo(t.nt+n,t.st+r),e.lineTo(t.nt-n,t.st+r),e.lineTo(t.nt-n,t.st)):(e.moveTo(t.nt-r,t.st),e.lineTo(t.nt,t.st+r),e.lineTo(t.nt+r,t.st),e.lineTo(t.nt+n,t.st),e.lineTo(t.nt+n,t.st-r),e.lineTo(t.nt-n,t.st-r),e.lineTo(t.nt-n,t.st)),e.fill()}function gf(i,e,t,A,r,n){return Fl(e,t,A,r,n)}class mf extends dA{constructor(){super(...arguments),this.zt=null,this.ar=new Gi,this.j=-1,this.H="",this.Qr=""}J(e){this.zt=e}_r(e,t){this.j===e&&this.H===t||(this.j=e,this.H=t,this.Qr=Bi(e,t),this.ar.nr())}wr(e,t){if(this.zt===null||this.zt.tt===null)return null;for(let A=this.zt.tt.from;A<this.zt.tt.to;A++){const r=this.zt.it[A];if(Bf(r,e,t))return{Mr:r.th,gr:r.gr}}return null}K({context:e,horizontalPixelRatio:t,verticalPixelRatio:A},r,n){if(this.zt!==null&&this.zt.tt!==null){e.textBaseline="middle",e.font=this.Qr;for(let s=this.zt.tt.from;s<this.zt.tt.to;s++){const o=this.zt.it[s];o.Kt!==void 0&&(o.Kt.Hi=this.ar.xi(e,o.Kt.ih),o.Kt.At=this.j,o.Kt.nt=o.nt-o.Kt.Hi/2),wf(o,e,t,A)}}}}function wf(i,e,t,A){e.fillStyle=i.V,i.Kt!==void 0&&(function(r,n,s,o,l,c){r.save(),r.scale(l,c),r.fillText(n,s,o),r.restore()})(e,i.Kt.ih,i.Kt.nt,i.Kt.st,t,A),(function(r,n,s){if(r.Ks!==0){switch(r.nh){case"arrowDown":return void Ul(!1,n,s,r.Ks);case"arrowUp":return void Ul(!0,n,s,r.Ks);case"circle":return void(function(o,l,c){const h=(Xi("circle",c)-1)/2;o.beginPath(),o.arc(l.nt,l.st,h*l.Jr,0,2*Math.PI,!1),o.fill()})(n,s,r.Ks);case"square":return void(function(o,l,c){const h=Xi("square",c),g=(h-1)*l.Jr/2,C=l.nt-g,x=l.st-g;o.fillRect(C,x,h*l.Jr,h*l.Jr)})(n,s,r.Ks)}r.nh}})(i,e,(function(r,n,s){const o=Math.max(1,Math.floor(n))%2/2;return{nt:Math.round(r.nt*n)+o,st:r.st*s,Jr:n}})(i,t,A))}function Bf(i,e,t){return!(i.Kt===void 0||!(function(A,r,n,s,o,l){const c=s/2;return o>=A&&o<=A+n&&l>=r-c&&l<=r+c})(i.Kt.nt,i.Kt.st,i.Kt.Hi,i.Kt.At,e,t))||(function(A,r,n){if(A.Ks===0)return!1;switch(A.nh){case"arrowDown":case"arrowUp":return gf(0,A.nt,A.st,A.Ks,r,n);case"circle":return(function(s,o,l,c,h){const g=2+Xi("circle",l)/2,C=s-c,x=o-h;return Math.sqrt(C*C+x*x)<=g})(A.nt,A.st,A.Ks,r,n);case"square":return Fl(A.nt,A.st,A.Ks,r,n)}})(i,e,t)}function yf(i,e,t,A,r,n,s,o,l){const c=yA(t)?t:t.Se,h=yA(t)?t:t.Me,g=yA(t)?t:t.xe,C=yA(e.size)?Math.max(e.size,0):1,x=xl(o.le())*C,b=x/2;switch(i.Ks=x,e.position){case"inBar":return i.st=s.Rt(c,l),void(i.Kt!==void 0&&(i.Kt.st=i.st+b+n+.6*r));case"aboveBar":return i.st=s.Rt(h,l)-b-A.sh,i.Kt!==void 0&&(i.Kt.st=i.st-b-.6*r,A.sh+=1.2*r),void(A.sh+=x+n);case"belowBar":return i.st=s.Rt(g,l)+b+A.eh,i.Kt!==void 0&&(i.Kt.st=i.st+b+n+.6*r,A.eh+=1.2*r),void(A.eh+=x+n)}e.position}class Cf{constructor(e,t){this.ft=!0,this.rh=!0,this.hh=!0,this.ah=null,this.oh=null,this.Wt=new mf,this.jr=e,this.$i=t,this.zt={it:[],tt:null}}bt(e){this.ft=!0,this.hh=!0,e==="data"&&(this.rh=!0,this.oh=null)}gt(e){if(!this.jr.yt())return null;this.ft&&this._h();const t=this.$i.W().layout;return this.Wt._r(t.fontSize,t.fontFamily),this.Wt.J(this.zt),this.Wt}uh(){if(this.hh){if(this.jr.dh().length>0){const e=this.$i.St().le(),t=bl(e),A=1.5*xl(e)+2*t,r=this.fh();this.ah={above:Ql(A,r.aboveBar,r.inBar),below:Ql(A,r.belowBar,r.inBar)}}else this.ah=null;this.hh=!1}return this.ah}fh(){return this.oh===null&&(this.oh=this.jr.dh().reduce(((e,t)=>(e[t.position]||(e[t.position]=!0),e)),{inBar:!1,aboveBar:!1,belowBar:!1})),this.oh}_h(){const e=this.jr.Dt(),t=this.$i.St(),A=this.jr.dh();this.rh&&(this.zt.it=A.map((h=>({ot:h.time,nt:0,st:0,Ks:0,nh:h.shape,V:h.color,th:h.th,gr:h.id,Kt:void 0}))),this.rh=!1);const r=this.$i.W().layout;this.zt.tt=null;const n=t.Xs();if(n===null)return;const s=this.jr.Ct();if(s===null||this.zt.it.length===0)return;let o=NaN;const l=bl(t.le()),c={sh:l,eh:l};this.zt.tt=Bl(this.zt.it,n,!0);for(let h=this.zt.tt.from;h<this.zt.tt.to;h++){const g=A[h];g.time!==o&&(c.sh=l,c.eh=l,o=g.time);const C=this.zt.it[h];C.nt=t.It(g.time),g.text!==void 0&&g.text.length>0&&(C.Kt={ih:g.text,nt:0,st:0,Hi:0,At:0});const x=this.jr.ph(g.time);x!==null&&yf(C,g,x,c,r.fontSize,l,e,t,s.Vt)}this.ft=!1}}class vf extends Ls{constructor(e){super(e)}yr(){const e=this.Sr;e.yt=!1;const t=this.Es.W();if(!t.priceLineVisible||!this.Es.yt())return;const A=this.Es.Zr(t.priceLineSource===0);A.Xr||(e.yt=!0,e.st=A.ki,e.V=this.Es.mh(A.V),e.et=t.priceLineWidth,e.Nt=t.priceLineStyle)}}class Tf extends kr{constructor(e){super(),this.jt=e}zi(e,t,A){e.yt=!1,t.yt=!1;const r=this.jt;if(!r.yt())return;const n=r.W(),s=n.lastValueVisible,o=r.bh()!=="",l=n.seriesLastValueMode===0,c=r.Zr(!1);if(c.Xr)return;s&&(e.Kt=this.wh(c,s,l),e.yt=e.Kt.length!==0),(o||l)&&(t.Kt=this.gh(c,s,o,l),t.yt=t.Kt.length>0);const h=r.mh(c.V),g=Dr(h);A.t=g.t,A.ki=c.ki,t.Ot=r.$t().Bt(c.ki/r.Dt().At()),e.Ot=h,e.V=g.i,t.V=g.i}gh(e,t,A,r){let n="";const s=this.jt.bh();return A&&s.length!==0&&(n+=`${s} `),t&&r&&(n+=this.jt.Dt().Mh()?e.xh:e.Sh),n.trim()}wh(e,t,A){return t?A?this.jt.Dt().Mh()?e.Sh:e.xh:e.Kt:""}}function Sl(i,e,t,A){const r=Number.isFinite(e),n=Number.isFinite(t);return r&&n?i(e,t):r||n?r?e:t:A}class $t{constructor(e,t){this.kh=e,this.yh=t}Ch(e){return e!==null&&this.kh===e.kh&&this.yh===e.yh}Th(){return new $t(this.kh,this.yh)}Ph(){return this.kh}Rh(){return this.yh}Dh(){return this.yh-this.kh}Ni(){return this.yh===this.kh||Number.isNaN(this.yh)||Number.isNaN(this.kh)}ts(e){return e===null?this:new $t(Sl(Math.min,this.Ph(),e.Ph(),-1/0),Sl(Math.max,this.Rh(),e.Rh(),1/0))}Vh(e){if(!yA(e)||this.yh-this.kh===0)return;const t=.5*(this.yh+this.kh);let A=this.yh-t,r=this.kh-t;A*=e,r*=e,this.yh=t+A,this.kh=t+r}Oh(e){yA(e)&&(this.yh+=e,this.kh+=e)}Bh(){return{minValue:this.kh,maxValue:this.yh}}static Ah(e){return e===null?null:new $t(e.minValue,e.maxValue)}}class zr{constructor(e,t){this.Ih=e,this.zh=t||null}Lh(){return this.Ih}Eh(){return this.zh}Bh(){return this.Ih===null?null:{priceRange:this.Ih.Bh(),margins:this.zh||void 0}}static Ah(e){return e===null?null:new zr($t.Ah(e.priceRange),e.margins)}}class xf extends Ls{constructor(e,t){super(e),this.Nh=t}yr(){const e=this.Sr;e.yt=!1;const t=this.Nh.W();if(!this.Es.yt()||!t.lineVisible)return;const A=this.Nh.Fh();A!==null&&(e.yt=!0,e.st=A,e.V=t.color,e.et=t.lineWidth,e.Nt=t.lineStyle,e.gr=this.Nh.W().id)}}class bf extends kr{constructor(e,t){super(),this.jr=e,this.Nh=t}zi(e,t,A){e.yt=!1,t.yt=!1;const r=this.Nh.W(),n=r.axisLabelVisible,s=r.title!=="",o=this.jr;if(!n||!o.yt())return;const l=this.Nh.Fh();if(l===null)return;s&&(t.Kt=r.title,t.yt=!0),t.Ot=o.$t().Bt(l/o.Dt().At()),e.Kt=this.Wh(r.price),e.yt=!0;const c=Dr(r.axisLabelColor||r.color);A.t=c.t;const h=r.axisLabelTextColor||c.i;e.V=h,t.V=h,A.ki=l}Wh(e){const t=this.jr.Ct();return t===null?"":this.jr.Dt().Fi(e,t.Vt)}}class Qf{constructor(e,t){this.jr=e,this.cn=t,this.jh=new xf(e,this),this.ur=new bf(e,this),this.Hh=new Cl(this.ur,e,e.$t())}$h(e){uA(this.cn,e),this.bt(),this.jr.$t().Uh()}W(){return this.cn}qh(){return this.jh}Yh(){return this.Hh}Zh(){return this.ur}bt(){this.jh.bt(),this.ur.bt()}Fh(){const e=this.jr,t=e.Dt();if(e.$t().St().Ni()||t.Ni())return null;const A=e.Ct();return A===null?null:t.Rt(this.cn.price,A.Vt)}}class Ff extends bs{constructor(e){super(),this.$i=e}$t(){return this.$i}}const Uf={Bar:(i,e,t,A)=>{var r;const n=e.upColor,s=e.downColor,o=Le(i(t,A)),l=wi(o.Vt[0])<=wi(o.Vt[3]);return{ce:(r=o.V)!==null&&r!==void 0?r:l?n:s}},Candlestick:(i,e,t,A)=>{var r,n,s;const o=e.upColor,l=e.downColor,c=e.borderUpColor,h=e.borderDownColor,g=e.wickUpColor,C=e.wickDownColor,x=Le(i(t,A)),b=wi(x.Vt[0])<=wi(x.Vt[3]);return{ce:(r=x.V)!==null&&r!==void 0?r:b?o:l,Ne:(n=x.Ot)!==null&&n!==void 0?n:b?c:h,Ee:(s=x.Xh)!==null&&s!==void 0?s:b?g:C}},Custom:(i,e,t,A)=>{var r;return{ce:(r=Le(i(t,A)).V)!==null&&r!==void 0?r:e.color}},Area:(i,e,t,A)=>{var r,n,s,o;const l=Le(i(t,A));return{ce:(r=l.lt)!==null&&r!==void 0?r:e.lineColor,lt:(n=l.lt)!==null&&n!==void 0?n:e.lineColor,Ps:(s=l.Ps)!==null&&s!==void 0?s:e.topColor,Rs:(o=l.Rs)!==null&&o!==void 0?o:e.bottomColor}},Baseline:(i,e,t,A)=>{var r,n,s,o,l,c;const h=Le(i(t,A));return{ce:h.Vt[3]>=e.baseValue.price?e.topLineColor:e.bottomLineColor,Re:(r=h.Re)!==null&&r!==void 0?r:e.topLineColor,De:(n=h.De)!==null&&n!==void 0?n:e.bottomLineColor,ke:(s=h.ke)!==null&&s!==void 0?s:e.topFillColor1,ye:(o=h.ye)!==null&&o!==void 0?o:e.topFillColor2,Ce:(l=h.Ce)!==null&&l!==void 0?l:e.bottomFillColor1,Te:(c=h.Te)!==null&&c!==void 0?c:e.bottomFillColor2}},Line:(i,e,t,A)=>{var r,n;const s=Le(i(t,A));return{ce:(r=s.V)!==null&&r!==void 0?r:e.color,lt:(n=s.V)!==null&&n!==void 0?n:e.color}},Histogram:(i,e,t,A)=>{var r;return{ce:(r=Le(i(t,A)).V)!==null&&r!==void 0?r:e.color}}};class Sf{constructor(e){this.Kh=(t,A)=>A!==void 0?A.Vt:this.jr.In().Gh(t),this.jr=e,this.Jh=Uf[e.Qh()]}$s(e,t){return this.Jh(this.Kh,this.jr.W(),e,t)}}var El;(function(i){i[i.NearestLeft=-1]="NearestLeft",i[i.None=0]="None",i[i.NearestRight=1]="NearestRight"})(El||(El={}));const NA=30;class Ef{constructor(){this.tl=[],this.il=new Map,this.nl=new Map}sl(){return this.Ks()>0?this.tl[this.tl.length-1]:null}el(){return this.Ks()>0?this.rl(0):null}An(){return this.Ks()>0?this.rl(this.tl.length-1):null}Ks(){return this.tl.length}Ni(){return this.Ks()===0}Kr(e){return this.hl(e,0)!==null}Gh(e){return this.ll(e)}ll(e,t=0){const A=this.hl(e,t);return A===null?null:Object.assign(Object.assign({},this.al(A)),{ee:this.rl(A)})}ne(){return this.tl}ol(e,t,A){if(this.Ni())return null;let r=null;for(const n of A)r=Wr(r,this._l(e,t,n));return r}J(e){this.nl.clear(),this.il.clear(),this.tl=e}rl(e){return this.tl[e].ee}al(e){return this.tl[e]}hl(e,t){const A=this.ul(e);if(A===null&&t!==0)switch(t){case-1:return this.cl(e);case 1:return this.dl(e);default:throw new TypeError("Unknown search mode")}return A}cl(e){let t=this.fl(e);return t>0&&(t-=1),t!==this.tl.length&&this.rl(t)<e?t:null}dl(e){const t=this.vl(e);return t!==this.tl.length&&e<this.rl(t)?t:null}ul(e){const t=this.fl(e);return t===this.tl.length||e<this.tl[t].ee?null:t}fl(e){return Ri(this.tl,e,((t,A)=>t.ee<A))}vl(e){return wl(this.tl,e,((t,A)=>t.ee>A))}pl(e,t,A){let r=null;for(let n=e;n<t;n++){const s=this.tl[n].Vt[A];Number.isNaN(s)||(r===null?r={ml:s,bl:s}:(s<r.ml&&(r.ml=s),s>r.bl&&(r.bl=s)))}return r}_l(e,t,A){if(this.Ni())return null;let r=null;const n=Le(this.el()),s=Le(this.An()),o=Math.max(e,n),l=Math.min(t,s),c=Math.ceil(o/NA)*NA,h=Math.max(c,Math.floor(l/NA)*NA);{const C=this.fl(o),x=this.vl(Math.min(l,c,t));r=Wr(r,this.pl(C,x,A))}let g=this.il.get(A);g===void 0&&(g=new Map,this.il.set(A,g));for(let C=Math.max(c+1,o);C<h;C+=NA){const x=Math.floor(C/NA);let b=g.get(x);if(b===void 0){const v=this.fl(x*NA),U=this.vl((x+1)*NA-1);b=this.pl(v,U,A),g.set(x,b)}r=Wr(r,b)}{const C=this.fl(h),x=this.vl(l);r=Wr(r,this.pl(C,x,A))}return r}}function Wr(i,e){return i===null?e:e===null?i:{ml:Math.min(i.ml,e.ml),bl:Math.max(i.bl,e.bl)}}class Lf{constructor(e){this.wl=e}X(e,t,A){this.wl.draw(e)}gl(e,t,A){var r,n;(n=(r=this.wl).drawBackground)===null||n===void 0||n.call(r,e)}}class Ms{constructor(e){this.tr=null,this.wn=e}gt(){var e;const t=this.wn.renderer();if(t===null)return null;if(((e=this.tr)===null||e===void 0?void 0:e.Ml)===t)return this.tr.xl;const A=new Lf(t);return this.tr={Ml:t,xl:A},A}Sl(){var e,t,A;return(A=(t=(e=this.wn).zOrder)===null||t===void 0?void 0:t.call(e))!==null&&A!==void 0?A:"normal"}}function Ll(i){var e,t,A,r,n;return{Kt:i.text(),ki:i.coordinate(),Si:(e=i.fixedCoordinate)===null||e===void 0?void 0:e.call(i),V:i.textColor(),t:i.backColor(),yt:(A=(t=i.visible)===null||t===void 0?void 0:t.call(i))===null||A===void 0||A,hi:(n=(r=i.tickVisible)===null||r===void 0?void 0:r.call(i))===null||n===void 0||n}}class Mf{constructor(e,t){this.Wt=new sl,this.kl=e,this.yl=t}gt(){return this.Wt.J(Object.assign({Hi:this.yl.Hi()},Ll(this.kl))),this.Wt}}class Hf extends kr{constructor(e,t){super(),this.kl=e,this.Li=t}zi(e,t,A){const r=Ll(this.kl);A.t=r.t,e.V=r.V;const n=2/12*this.Li.P();A.wi=n,A.gi=n,A.ki=r.ki,A.Si=r.Si,e.Kt=r.Kt,e.yt=r.yt,e.hi=r.hi}}class If{constructor(e,t){this.Cl=null,this.Tl=null,this.Pl=null,this.Rl=null,this.Dl=null,this.Vl=e,this.jr=t}Ol(){return this.Vl}Vn(){var e,t;(t=(e=this.Vl).updateAllViews)===null||t===void 0||t.call(e)}Pn(){var e,t,A,r;const n=(A=(t=(e=this.Vl).paneViews)===null||t===void 0?void 0:t.call(e))!==null&&A!==void 0?A:[];if(((r=this.Cl)===null||r===void 0?void 0:r.Ml)===n)return this.Cl.xl;const s=n.map((o=>new Ms(o)));return this.Cl={Ml:n,xl:s},s}Qi(){var e,t,A,r;const n=(A=(t=(e=this.Vl).timeAxisViews)===null||t===void 0?void 0:t.call(e))!==null&&A!==void 0?A:[];if(((r=this.Tl)===null||r===void 0?void 0:r.Ml)===n)return this.Tl.xl;const s=this.jr.$t().St(),o=n.map((l=>new Mf(l,s)));return this.Tl={Ml:n,xl:o},o}Rn(){var e,t,A,r;const n=(A=(t=(e=this.Vl).priceAxisViews)===null||t===void 0?void 0:t.call(e))!==null&&A!==void 0?A:[];if(((r=this.Pl)===null||r===void 0?void 0:r.Ml)===n)return this.Pl.xl;const s=this.jr.Dt(),o=n.map((l=>new Hf(l,s)));return this.Pl={Ml:n,xl:o},o}Bl(){var e,t,A,r;const n=(A=(t=(e=this.Vl).priceAxisPaneViews)===null||t===void 0?void 0:t.call(e))!==null&&A!==void 0?A:[];if(((r=this.Rl)===null||r===void 0?void 0:r.Ml)===n)return this.Rl.xl;const s=n.map((o=>new Ms(o)));return this.Rl={Ml:n,xl:s},s}Al(){var e,t,A,r;const n=(A=(t=(e=this.Vl).timeAxisPaneViews)===null||t===void 0?void 0:t.call(e))!==null&&A!==void 0?A:[];if(((r=this.Dl)===null||r===void 0?void 0:r.Ml)===n)return this.Dl.xl;const s=n.map((o=>new Ms(o)));return this.Dl={Ml:n,xl:s},s}Il(e,t){var A,r,n;return(n=(r=(A=this.Vl).autoscaleInfo)===null||r===void 0?void 0:r.call(A,e,t))!==null&&n!==void 0?n:null}wr(e,t){var A,r,n;return(n=(r=(A=this.Vl).hitTest)===null||r===void 0?void 0:r.call(A,e,t))!==null&&n!==void 0?n:null}}function Hs(i,e,t,A){i.forEach((r=>{e(r).forEach((n=>{n.Sl()===t&&A.push(n)}))}))}function Is(i){return i.Pn()}function Df(i){return i.Bl()}function _f(i){return i.Al()}class Ds extends Ff{constructor(e,t,A,r,n){super(e),this.zt=new Ef,this.jh=new vf(this),this.zl=[],this.Ll=new uf(this),this.El=null,this.Nl=null,this.Fl=[],this.Wl=[],this.jl=null,this.Hl=[],this.cn=t,this.$l=A;const s=new Tf(this);this.rn=[s],this.Hh=new Cl(s,this,e),A!=="Area"&&A!=="Line"&&A!=="Baseline"||(this.El=new ff(this)),this.Ul(),this.ql(n)}S(){this.jl!==null&&clearTimeout(this.jl)}mh(e){return this.cn.priceLineColor||e}Zr(e){const t={Xr:!0},A=this.Dt();if(this.$t().St().Ni()||A.Ni()||this.zt.Ni())return t;const r=this.$t().St().Xs(),n=this.Ct();if(r===null||n===null)return t;let s,o;if(e){const g=this.zt.sl();if(g===null)return t;s=g,o=g.ee}else{const g=this.zt.ll(r.ui(),-1);if(g===null||(s=this.zt.Gh(g.ee),s===null))return t;o=g.ee}const l=s.Vt[3],c=this.Us().$s(o,{Vt:s}),h=A.Rt(l,n.Vt);return{Xr:!1,_t:l,Kt:A.Fi(l,n.Vt),xh:A.Yl(l),Sh:A.Zl(l,n.Vt),V:c.ce,ki:h,ee:o}}Us(){return this.Nl!==null||(this.Nl=new Sf(this)),this.Nl}W(){return this.cn}$h(e){const t=e.priceScaleId;t!==void 0&&t!==this.cn.priceScaleId&&this.$t().Xl(this,t),uA(this.cn,e),e.priceFormat!==void 0&&(this.Ul(),this.$t().Kl()),this.$t().Gl(this),this.$t().Jl(),this.wn.bt("options")}J(e,t){this.zt.J(e),this.Ql(),this.wn.bt("data"),this.dn.bt("data"),this.El!==null&&(t&&t.ta?this.El.$r():e.length===0&&this.El.Hr());const A=this.$t().dr(this);this.$t().ia(A),this.$t().Gl(this),this.$t().Jl(),this.$t().Uh()}na(e){this.Fl=e,this.Ql();const t=this.$t().dr(this);this.dn.bt("data"),this.$t().ia(t),this.$t().Gl(this),this.$t().Jl(),this.$t().Uh()}sa(){return this.Fl}dh(){return this.Wl}ea(e){const t=new Qf(this,e);return this.zl.push(t),this.$t().Gl(this),t}ra(e){const t=this.zl.indexOf(e);t!==-1&&this.zl.splice(t,1),this.$t().Gl(this)}Qh(){return this.$l}Ct(){const e=this.ha();return e===null?null:{Vt:e.Vt[3],la:e.ot}}ha(){const e=this.$t().St().Xs();if(e===null)return null;const t=e.Os();return this.zt.ll(t,1)}In(){return this.zt}ph(e){const t=this.zt.Gh(e);return t===null?null:this.$l==="Bar"||this.$l==="Candlestick"||this.$l==="Custom"?{ge:t.Vt[0],Me:t.Vt[1],xe:t.Vt[2],Se:t.Vt[3]}:t.Vt[3]}aa(e){const t=[];Hs(this.Hl,Is,"top",t);const A=this.El;return A!==null&&A.yt()&&(this.jl===null&&A.qr()&&(this.jl=setTimeout((()=>{this.jl=null,this.$t().oa()}),0)),A.Ur(),t.unshift(A)),t}Pn(){const e=[];this._a()||e.push(this.Ll),e.push(this.wn,this.jh,this.dn);const t=this.zl.map((A=>A.qh()));return e.push(...t),Hs(this.Hl,Is,"normal",e),e}ua(){return this.ca(Is,"bottom")}da(e){return this.ca(Df,e)}fa(e){return this.ca(_f,e)}va(e,t){return this.Hl.map((A=>A.wr(e,t))).filter((A=>A!==null))}Ji(e){return[this.Hh,...this.zl.map((t=>t.Yh()))]}Rn(e,t){if(t!==this.Yi&&!this._a())return[];const A=[...this.rn];for(const r of this.zl)A.push(r.Zh());return this.Hl.forEach((r=>{A.push(...r.Rn())})),A}Qi(){const e=[];return this.Hl.forEach((t=>{e.push(...t.Qi())})),e}Il(e,t){if(this.cn.autoscaleInfoProvider!==void 0){const A=this.cn.autoscaleInfoProvider((()=>{const r=this.pa(e,t);return r===null?null:r.Bh()}));return zr.Ah(A)}return this.pa(e,t)}ma(){return this.cn.priceFormat.minMove}ba(){return this.wa}Vn(){var e;this.wn.bt(),this.dn.bt();for(const t of this.rn)t.bt();for(const t of this.zl)t.bt();this.jh.bt(),this.Ll.bt(),(e=this.El)===null||e===void 0||e.bt(),this.Hl.forEach((t=>t.Vn()))}Dt(){return Le(super.Dt())}kt(e){if(!((this.$l==="Line"||this.$l==="Area"||this.$l==="Baseline")&&this.cn.crosshairMarkerVisible))return null;const t=this.zt.Gh(e);return t===null?null:{_t:t.Vt[3],ht:this.ga(),Ot:this.Ma(),Pt:this.xa(),Tt:this.Sa(e)}}bh(){return this.cn.title}yt(){return this.cn.visible}ka(e){this.Hl.push(new If(e,this))}ya(e){this.Hl=this.Hl.filter((t=>t.Ol()!==e))}Ca(){if(this.wn instanceof Es)return e=>this.wn.We(e)}Ta(){if(this.wn instanceof Es)return e=>this.wn.je(e)}_a(){return!Nr(this.Dt().Pa())}pa(e,t){if(!Vi(e)||!Vi(t)||this.zt.Ni())return null;const A=this.$l==="Line"||this.$l==="Area"||this.$l==="Baseline"||this.$l==="Histogram"?[3]:[2,1],r=this.zt.ol(e,t,A);let n=r!==null?new $t(r.ml,r.bl):null;if(this.Qh()==="Histogram"){const o=this.cn.base,l=new $t(o,o);n=n!==null?n.ts(l):l}let s=this.dn.uh();return this.Hl.forEach((o=>{const l=o.Il(e,t);if(l?.priceRange){const x=new $t(l.priceRange.minValue,l.priceRange.maxValue);n=n!==null?n.ts(x):x}var c,h,g,C;l?.margins&&(c=s,h=l.margins,s={above:Math.max((g=c?.above)!==null&&g!==void 0?g:0,h.above),below:Math.max((C=c?.below)!==null&&C!==void 0?C:0,h.below)})})),new zr(n,s)}ga(){switch(this.$l){case"Line":case"Area":case"Baseline":return this.cn.crosshairMarkerRadius}return 0}Ma(){switch(this.$l){case"Line":case"Area":case"Baseline":{const e=this.cn.crosshairMarkerBorderColor;if(e.length!==0)return e}}return null}xa(){switch(this.$l){case"Line":case"Area":case"Baseline":return this.cn.crosshairMarkerBorderWidth}return 0}Sa(e){switch(this.$l){case"Line":case"Area":case"Baseline":{const t=this.cn.crosshairMarkerBackgroundColor;if(t.length!==0)return t}}return this.Us().$s(e).ce}Ul(){switch(this.cn.priceFormat.type){case"custom":this.wa={format:this.cn.priceFormat.formatter};break;case"volume":this.wa=new Vp(this.cn.priceFormat.precision);break;case"percent":this.wa=new ll(this.cn.priceFormat.precision);break;default:{const e=Math.pow(10,this.cn.priceFormat.precision);this.wa=new Or(e,this.cn.priceFormat.minMove*e)}}this.Yi!==null&&this.Yi.Ra()}Ql(){const e=this.$t().St();if(!e.Da()||this.zt.Ni())return void(this.Wl=[]);const t=Le(this.zt.el());this.Wl=this.Fl.map(((A,r)=>{const n=Le(e.Va(A.time,!0)),s=n<t?1:-1;return{time:Le(this.zt.ll(n,s)).ee,position:A.position,shape:A.shape,color:A.color,id:A.id,th:r,text:A.text,size:A.size,originalTime:A.originalTime}}))}ql(e){switch(this.dn=new Cf(this,this.$t()),this.$l){case"Bar":this.wn=new Yp(this,this.$t());break;case"Candlestick":this.wn=new Af(this,this.$t());break;case"Line":this.wn=new af(this,this.$t());break;case"Custom":this.wn=new Es(this,this.$t(),Vt(e));break;case"Area":this.wn=new Zp(this,this.$t());break;case"Baseline":this.wn=new ef(this,this.$t());break;case"Histogram":this.wn=new of(this,this.$t());break;default:throw Error("Unknown chart style assigned: "+this.$l)}}ca(e,t){const A=[];return Hs(this.Hl,e,t,A),A}}class Pf{constructor(e){this.cn=e}Oa(e,t,A){let r=e;if(this.cn.mode===0)return r;const n=A.vn(),s=n.Ct();if(s===null)return r;const o=n.Rt(e,s),l=A.Ba().filter((h=>h instanceof Ds)).reduce(((h,g)=>{if(A.vr(g)||!g.yt())return h;const C=g.Dt(),x=g.In();if(C.Ni()||!x.Kr(t))return h;const b=x.Gh(t);if(b===null)return h;const v=wi(g.Ct());return h.concat([C.Rt(b.Vt[3],v.Vt)])}),[]);if(l.length===0)return r;l.sort(((h,g)=>Math.abs(h-o)-Math.abs(g-o)));const c=l[0];return r=n.pn(c,s),r}}class kf extends dA{constructor(){super(...arguments),this.zt=null}J(e){this.zt=e}K({context:e,bitmapSize:t,horizontalPixelRatio:A,verticalPixelRatio:r}){if(this.zt===null)return;const n=Math.max(1,Math.floor(A));e.lineWidth=n,(function(s,o){s.save(),s.lineWidth%2&&s.translate(.5,.5),o(),s.restore()})(e,(()=>{const s=Le(this.zt);if(s.Aa){e.strokeStyle=s.Ia,ti(e,s.za),e.beginPath();for(const o of s.La){const l=Math.round(o.Ea*A);e.moveTo(l,-n),e.lineTo(l,t.height+n)}e.stroke()}if(s.Na){e.strokeStyle=s.Fa,ti(e,s.Wa),e.beginPath();for(const o of s.ja){const l=Math.round(o.Ea*r);e.moveTo(-n,l),e.lineTo(t.width+n,l)}e.stroke()}}))}}class Nf{constructor(e){this.Wt=new kf,this.ft=!0,this.tn=e}bt(){this.ft=!0}gt(){if(this.ft){const e=this.tn.$t().W().grid,t={Na:e.horzLines.visible,Aa:e.vertLines.visible,Fa:e.horzLines.color,Ia:e.vertLines.color,Wa:e.horzLines.style,za:e.vertLines.style,ja:this.tn.vn().Ha(),La:(this.tn.$t().St().Ha()||[]).map((A=>({Ea:A.coord})))};this.Wt.J(t),this.ft=!1}return this.Wt}}class Of{constructor(e){this.wn=new Nf(e)}qh(){return this.wn}}const _s={$a:4,Ua:1e-4};function yi(i,e){const t=100*(i-e)/e;return e<0?-t:t}function Kf(i,e){const t=yi(i.Ph(),e),A=yi(i.Rh(),e);return new $t(t,A)}function Zi(i,e){const t=100*(i-e)/e+100;return e<0?-t:t}function Vf(i,e){const t=Zi(i.Ph(),e),A=Zi(i.Rh(),e);return new $t(t,A)}function Rr(i,e){const t=Math.abs(i);if(t<1e-15)return 0;const A=Math.log10(t+e.Ua)+e.$a;return i<0?-A:A}function Ji(i,e){const t=Math.abs(i);if(t<1e-15)return 0;const A=Math.pow(10,t-e.$a)-e.Ua;return i<0?-A:A}function Yi(i,e){if(i===null)return null;const t=Rr(i.Ph(),e),A=Rr(i.Rh(),e);return new $t(t,A)}function Gr(i,e){if(i===null)return null;const t=Ji(i.Ph(),e),A=Ji(i.Rh(),e);return new $t(t,A)}function Ps(i){if(i===null)return _s;const e=Math.abs(i.Rh()-i.Ph());if(e>=1||e<1e-15)return _s;const t=Math.ceil(Math.abs(Math.log10(e))),A=_s.$a+t;return{$a:A,Ua:1/Math.pow(10,A)}}class ks{constructor(e,t){if(this.qa=e,this.Ya=t,(function(A){if(A<0)return!1;for(let r=A;r>1;r/=10)if(r%10!=0)return!1;return!0})(this.qa))this.Za=[2,2.5,2];else{this.Za=[];for(let A=this.qa;A!==1;){if(A%2==0)this.Za.push(2),A/=2;else{if(A%5!=0)throw new Error("unexpected base");this.Za.push(2,2.5),A/=5}if(this.Za.length>100)throw new Error("something wrong with base")}}}Xa(e,t,A){const r=this.qa===0?0:1/this.qa;let n=Math.pow(10,Math.max(0,Math.ceil(Math.log10(e-t)))),s=0,o=this.Ya[0];for(;;){const g=Kr(n,r,1e-14)&&n>r+1e-14,C=Kr(n,A*o,1e-14),x=Kr(n,1,1e-14);if(!(g&&C&&x))break;n/=o,o=this.Ya[++s%this.Ya.length]}if(n<=r+1e-14&&(n=r),n=Math.max(1,n),this.Za.length>0&&(l=n,c=1,h=1e-14,Math.abs(l-c)<h))for(s=0,o=this.Za[0];Kr(n,A*o,1e-14)&&n>r+1e-14;)n/=o,o=this.Za[++s%this.Za.length];var l,c,h;return n}}class Ml{constructor(e,t,A,r){this.Ka=[],this.Li=e,this.qa=t,this.Ga=A,this.Ja=r}Xa(e,t){if(e<t)throw new Error("high < low");const A=this.Li.At(),r=(e-t)*this.Qa()/A,n=new ks(this.qa,[2,2.5,2]),s=new ks(this.qa,[2,2,2.5]),o=new ks(this.qa,[2.5,2,2]),l=[];return l.push(n.Xa(e,t,r),s.Xa(e,t,r),o.Xa(e,t,r)),(function(c){if(c.length<1)throw Error("array is empty");let h=c[0];for(let g=1;g<c.length;++g)c[g]<h&&(h=c[g]);return h})(l)}io(){const e=this.Li,t=e.Ct();if(t===null)return void(this.Ka=[]);const A=e.At(),r=this.Ga(A-1,t),n=this.Ga(0,t),s=this.Li.W().entireTextOnly?this.no()/2:0,o=s,l=A-1-s,c=Math.max(r,n),h=Math.min(r,n);if(c===h)return void(this.Ka=[]);let g=this.Xa(c,h),C=c%g;C+=C<0?g:0;const x=c>=h?1:-1;let b=null,v=0;for(let U=c-C;U>h;U-=g){const F=this.Ja(U,t,!0);b!==null&&Math.abs(F-b)<this.Qa()||F<o||F>l||(v<this.Ka.length?(this.Ka[v].Ea=F,this.Ka[v].so=e.eo(U)):this.Ka.push({Ea:F,so:e.eo(U)}),v++,b=F,e.ro()&&(g=this.Xa(U*x,h)))}this.Ka.length=v}Ha(){return this.Ka}no(){return this.Li.P()}Qa(){return Math.ceil(2.5*this.no())}}function Hl(i){return i.slice().sort(((e,t)=>Le(e.Xi())-Le(t.Xi())))}var Il;(function(i){i[i.Normal=0]="Normal",i[i.Logarithmic=1]="Logarithmic",i[i.Percentage=2]="Percentage",i[i.IndexedTo100=3]="IndexedTo100"})(Il||(Il={}));const Dl=new ll,_l=new Or(100,1);class zf{constructor(e,t,A,r){this.ho=0,this.lo=null,this.Ih=null,this.ao=null,this.oo={_o:!1,uo:null},this.co=0,this.do=0,this.fo=new Bt,this.vo=new Bt,this.po=[],this.mo=null,this.bo=null,this.wo=null,this.Mo=null,this.wa=_l,this.xo=Ps(null),this.So=e,this.cn=t,this.ko=A,this.yo=r,this.Co=new Ml(this,100,this.To.bind(this),this.Po.bind(this))}Pa(){return this.So}W(){return this.cn}$h(e){if(uA(this.cn,e),this.Ra(),e.mode!==void 0&&this.Ro({Cr:e.mode}),e.scaleMargins!==void 0){const t=Vt(e.scaleMargins.top),A=Vt(e.scaleMargins.bottom);if(t<0||t>1)throw new Error(`Invalid top margin - expect value between 0 and 1, given=${t}`);if(A<0||A>1)throw new Error(`Invalid bottom margin - expect value between 0 and 1, given=${A}`);if(t+A>1)throw new Error(`Invalid margins - sum of margins must be less than 1, given=${t+A}`);this.Do(),this.bo=null}}Vo(){return this.cn.autoScale}ro(){return this.cn.mode===1}Mh(){return this.cn.mode===2}Oo(){return this.cn.mode===3}Cr(){return{Wn:this.cn.autoScale,Bo:this.cn.invertScale,Cr:this.cn.mode}}Ro(e){const t=this.Cr();let A=null;e.Wn!==void 0&&(this.cn.autoScale=e.Wn),e.Cr!==void 0&&(this.cn.mode=e.Cr,e.Cr!==2&&e.Cr!==3||(this.cn.autoScale=!0),this.oo._o=!1),t.Cr===1&&e.Cr!==t.Cr&&((function(n,s){if(n===null)return!1;const o=Ji(n.Ph(),s),l=Ji(n.Rh(),s);return isFinite(o)&&isFinite(l)})(this.Ih,this.xo)?(A=Gr(this.Ih,this.xo),A!==null&&this.Ao(A)):this.cn.autoScale=!0),e.Cr===1&&e.Cr!==t.Cr&&(A=Yi(this.Ih,this.xo),A!==null&&this.Ao(A));const r=t.Cr!==this.cn.mode;r&&(t.Cr===2||this.Mh())&&this.Ra(),r&&(t.Cr===3||this.Oo())&&this.Ra(),e.Bo!==void 0&&t.Bo!==e.Bo&&(this.cn.invertScale=e.Bo,this.Io()),this.vo.m(t,this.Cr())}zo(){return this.vo}P(){return this.ko.fontSize}At(){return this.ho}Lo(e){this.ho!==e&&(this.ho=e,this.Do(),this.bo=null)}Eo(){if(this.lo)return this.lo;const e=this.At()-this.No()-this.Fo();return this.lo=e,e}Lh(){return this.Wo(),this.Ih}Ao(e,t){const A=this.Ih;(t||A===null&&e!==null||A!==null&&!A.Ch(e))&&(this.bo=null,this.Ih=e)}Ni(){return this.Wo(),this.ho===0||!this.Ih||this.Ih.Ni()}jo(e){return this.Bo()?e:this.At()-1-e}Rt(e,t){return this.Mh()?e=yi(e,t):this.Oo()&&(e=Zi(e,t)),this.Po(e,t)}te(e,t,A){this.Wo();const r=this.Fo(),n=Le(this.Lh()),s=n.Ph(),o=n.Rh(),l=this.Eo()-1,c=this.Bo(),h=l/(o-s),g=A===void 0?0:A.from,C=A===void 0?e.length:A.to,x=this.Ho();for(let b=g;b<C;b++){const v=e[b],U=v._t;if(isNaN(U))continue;let F=U;x!==null&&(F=x(v._t,t));const M=r+h*(F-s),N=c?M:this.ho-1-M;v.st=N}}be(e,t,A){this.Wo();const r=this.Fo(),n=Le(this.Lh()),s=n.Ph(),o=n.Rh(),l=this.Eo()-1,c=this.Bo(),h=l/(o-s),g=A===void 0?0:A.from,C=A===void 0?e.length:A.to,x=this.Ho();for(let b=g;b<C;b++){const v=e[b];let U=v.ge,F=v.Me,M=v.xe,N=v.Se;x!==null&&(U=x(v.ge,t),F=x(v.Me,t),M=x(v.xe,t),N=x(v.Se,t));let R=r+h*(U-s),L=c?R:this.ho-1-R;v.pe=L,R=r+h*(F-s),L=c?R:this.ho-1-R,v.de=L,R=r+h*(M-s),L=c?R:this.ho-1-R,v.fe=L,R=r+h*(N-s),L=c?R:this.ho-1-R,v.me=L}}pn(e,t){const A=this.To(e,t);return this.$o(A,t)}$o(e,t){let A=e;return this.Mh()?A=(function(r,n){return n<0&&(r=-r),r/100*n+n})(A,t):this.Oo()&&(A=(function(r,n){return r-=100,n<0&&(r=-r),r/100*n+n})(A,t)),A}Ba(){return this.po}Uo(){if(this.mo)return this.mo;let e=[];for(let t=0;t<this.po.length;t++){const A=this.po[t];A.Xi()===null&&A.Ki(t+1),e.push(A)}return e=Hl(e),this.mo=e,this.mo}qo(e){this.po.indexOf(e)===-1&&(this.po.push(e),this.Ra(),this.Yo())}Zo(e){const t=this.po.indexOf(e);if(t===-1)throw new Error("source is not attached to scale");this.po.splice(t,1),this.po.length===0&&(this.Ro({Wn:!0}),this.Ao(null)),this.Ra(),this.Yo()}Ct(){let e=null;for(const t of this.po){const A=t.Ct();A!==null&&(e===null||A.la<e.la)&&(e=A)}return e===null?null:e.Vt}Bo(){return this.cn.invertScale}Ha(){const e=this.Ct()===null;if(this.bo!==null&&(e||this.bo.Xo===e))return this.bo.Ha;this.Co.io();const t=this.Co.Ha();return this.bo={Ha:t,Xo:e},this.fo.m(),t}Ko(){return this.fo}Go(e){this.Mh()||this.Oo()||this.wo===null&&this.ao===null&&(this.Ni()||(this.wo=this.ho-e,this.ao=Le(this.Lh()).Th()))}Jo(e){if(this.Mh()||this.Oo()||this.wo===null)return;this.Ro({Wn:!1}),(e=this.ho-e)<0&&(e=0);let t=(this.wo+.2*(this.ho-1))/(e+.2*(this.ho-1));const A=Le(this.ao).Th();t=Math.max(t,.1),A.Vh(t),this.Ao(A)}Qo(){this.Mh()||this.Oo()||(this.wo=null,this.ao=null)}t_(e){this.Vo()||this.Mo===null&&this.ao===null&&(this.Ni()||(this.Mo=e,this.ao=Le(this.Lh()).Th()))}i_(e){if(this.Vo()||this.Mo===null)return;const t=Le(this.Lh()).Dh()/(this.Eo()-1);let A=e-this.Mo;this.Bo()&&(A*=-1);const r=A*t,n=Le(this.ao).Th();n.Oh(r),this.Ao(n,!0),this.bo=null}n_(){this.Vo()||this.Mo!==null&&(this.Mo=null,this.ao=null)}ba(){return this.wa||this.Ra(),this.wa}Fi(e,t){switch(this.cn.mode){case 2:return this.s_(yi(e,t));case 3:return this.ba().format(Zi(e,t));default:return this.Wh(e)}}eo(e){switch(this.cn.mode){case 2:return this.s_(e);case 3:return this.ba().format(e);default:return this.Wh(e)}}Yl(e){return this.Wh(e,Le(this.e_()).ba())}Zl(e,t){return e=yi(e,t),this.s_(e,Dl)}r_(){return this.po}h_(e){this.oo={uo:e,_o:!1}}Vn(){this.po.forEach((e=>e.Vn()))}Ra(){this.bo=null;const e=this.e_();let t=100;e!==null&&(t=Math.round(1/e.ma())),this.wa=_l,this.Mh()?(this.wa=Dl,t=100):this.Oo()?(this.wa=new Or(100,1),t=100):e!==null&&(this.wa=e.ba()),this.Co=new Ml(this,t,this.To.bind(this),this.Po.bind(this)),this.Co.io()}Yo(){this.mo=null}e_(){return this.po[0]||null}No(){return this.Bo()?this.cn.scaleMargins.bottom*this.At()+this.do:this.cn.scaleMargins.top*this.At()+this.co}Fo(){return this.Bo()?this.cn.scaleMargins.top*this.At()+this.co:this.cn.scaleMargins.bottom*this.At()+this.do}Wo(){this.oo._o||(this.oo._o=!0,this.l_())}Do(){this.lo=null}Po(e,t){if(this.Wo(),this.Ni())return 0;e=this.ro()&&e?Rr(e,this.xo):e;const A=Le(this.Lh()),r=this.Fo()+(this.Eo()-1)*(e-A.Ph())/A.Dh();return this.jo(r)}To(e,t){if(this.Wo(),this.Ni())return 0;const A=this.jo(e),r=Le(this.Lh()),n=r.Ph()+r.Dh()*((A-this.Fo())/(this.Eo()-1));return this.ro()?Ji(n,this.xo):n}Io(){this.bo=null,this.Co.io()}l_(){const e=this.oo.uo;if(e===null)return;let t=null;const A=this.r_();let r=0,n=0;for(const l of A){if(!l.yt())continue;const c=l.Ct();if(c===null)continue;const h=l.Il(e.Os(),e.ui());let g=h&&h.Lh();if(g!==null){switch(this.cn.mode){case 1:g=Yi(g,this.xo);break;case 2:g=Kf(g,c.Vt);break;case 3:g=Vf(g,c.Vt)}if(t=t===null?g:t.ts(Le(g)),h!==null){const C=h.Eh();C!==null&&(r=Math.max(r,C.above),n=Math.max(n,C.below))}}}if(r===this.co&&n===this.do||(this.co=r,this.do=n,this.bo=null,this.Do()),t!==null){if(t.Ph()===t.Rh()){const l=this.e_(),c=5*(l===null||this.Mh()||this.Oo()?1:l.ma());this.ro()&&(t=Gr(t,this.xo)),t=new $t(t.Ph()-c,t.Rh()+c),this.ro()&&(t=Yi(t,this.xo))}if(this.ro()){const l=Gr(t,this.xo),c=Ps(l);if(s=c,o=this.xo,s.$a!==o.$a||s.Ua!==o.Ua){const h=this.ao!==null?Gr(this.ao,this.xo):null;this.xo=c,t=Yi(l,c),h!==null&&(this.ao=Yi(h,c))}}this.Ao(t)}else this.Ih===null&&(this.Ao(new $t(-.5,.5)),this.xo=Ps(null));var s,o;this.oo._o=!0}Ho(){return this.Mh()?yi:this.Oo()?Zi:this.ro()?e=>Rr(e,this.xo):null}a_(e,t,A){return t===void 0?(A===void 0&&(A=this.ba()),A.format(e)):t(e)}Wh(e,t){return this.a_(e,this.yo.priceFormatter,t)}s_(e,t){return this.a_(e,this.yo.percentageFormatter,t)}}class Wf{constructor(e,t){this.po=[],this.o_=new Map,this.ho=0,this.__=0,this.u_=1e3,this.mo=null,this.c_=new Bt,this.yl=e,this.$i=t,this.d_=new Of(this);const A=t.W();this.f_=this.v_("left",A.leftPriceScale),this.p_=this.v_("right",A.rightPriceScale),this.f_.zo().l(this.m_.bind(this,this.f_),this),this.p_.zo().l(this.m_.bind(this,this.p_),this),this.b_(A)}b_(e){if(e.leftPriceScale&&this.f_.$h(e.leftPriceScale),e.rightPriceScale&&this.p_.$h(e.rightPriceScale),e.localization&&(this.f_.Ra(),this.p_.Ra()),e.overlayPriceScales){const t=Array.from(this.o_.values());for(const A of t){const r=Le(A[0].Dt());r.$h(e.overlayPriceScales),e.localization&&r.Ra()}}}w_(e){switch(e){case"left":return this.f_;case"right":return this.p_}return this.o_.has(e)?Vt(this.o_.get(e))[0].Dt():null}S(){this.$t().g_().p(this),this.f_.zo().p(this),this.p_.zo().p(this),this.po.forEach((e=>{e.S&&e.S()})),this.c_.m()}M_(){return this.u_}x_(e){this.u_=e}$t(){return this.$i}Hi(){return this.__}At(){return this.ho}S_(e){this.__=e,this.k_()}Lo(e){this.ho=e,this.f_.Lo(e),this.p_.Lo(e),this.po.forEach((t=>{if(this.vr(t)){const A=t.Dt();A!==null&&A.Lo(e)}})),this.k_()}Ba(){return this.po}vr(e){const t=e.Dt();return t===null||this.f_!==t&&this.p_!==t}qo(e,t,A){const r=A!==void 0?A:this.C_().y_+1;this.T_(e,t,r)}Zo(e){const t=this.po.indexOf(e);kA(t!==-1,"removeDataSource: invalid data source"),this.po.splice(t,1);const A=Le(e.Dt()).Pa();if(this.o_.has(A)){const n=Vt(this.o_.get(A)),s=n.indexOf(e);s!==-1&&(n.splice(s,1),n.length===0&&this.o_.delete(A))}const r=e.Dt();r&&r.Ba().indexOf(e)>=0&&r.Zo(e),r!==null&&(r.Yo(),this.P_(r)),this.mo=null}mr(e){return e===this.f_?"left":e===this.p_?"right":"overlay"}R_(){return this.f_}D_(){return this.p_}V_(e,t){e.Go(t)}O_(e,t){e.Jo(t),this.k_()}B_(e){e.Qo()}A_(e,t){e.t_(t)}I_(e,t){e.i_(t),this.k_()}z_(e){e.n_()}k_(){this.po.forEach((e=>{e.Vn()}))}vn(){let e=null;return this.$i.W().rightPriceScale.visible&&this.p_.Ba().length!==0?e=this.p_:this.$i.W().leftPriceScale.visible&&this.f_.Ba().length!==0?e=this.f_:this.po.length!==0&&(e=this.po[0].Dt()),e===null&&(e=this.p_),e}pr(){let e=null;return this.$i.W().rightPriceScale.visible?e=this.p_:this.$i.W().leftPriceScale.visible&&(e=this.f_),e}P_(e){e!==null&&e.Vo()&&this.L_(e)}E_(e){const t=this.yl.Xs();e.Ro({Wn:!0}),t!==null&&e.h_(t),this.k_()}N_(){this.L_(this.f_),this.L_(this.p_)}F_(){this.P_(this.f_),this.P_(this.p_),this.po.forEach((e=>{this.vr(e)&&this.P_(e.Dt())})),this.k_(),this.$i.Uh()}Uo(){return this.mo===null&&(this.mo=Hl(this.po)),this.mo}W_(){return this.c_}j_(){return this.d_}L_(e){const t=e.r_();if(t&&t.length>0&&!this.yl.Ni()){const A=this.yl.Xs();A!==null&&e.h_(A)}e.Vn()}C_(){const e=this.Uo();if(e.length===0)return{H_:0,y_:0};let t=0,A=0;for(let r=0;r<e.length;r++){const n=e[r].Xi();n!==null&&(n<t&&(t=n),n>A&&(A=n))}return{H_:t,y_:A}}T_(e,t,A){let r=this.w_(t);if(r===null&&(r=this.v_(t,this.$i.W().overlayPriceScales)),this.po.push(e),!Nr(t)){const n=this.o_.get(t)||[];n.push(e),this.o_.set(t,n)}r.qo(e),e.Gi(r),e.Ki(A),this.P_(r),this.mo=null}m_(e,t,A){t.Cr!==A.Cr&&this.L_(e)}v_(e,t){const A=Object.assign({visible:!0,autoScale:!0},MA(t)),r=new zf(e,A,this.$i.W().layout,this.$i.W().localization);return r.Lo(this.At()),r}}class Rf{constructor(e,t,A=50){this.Ke=0,this.Ge=1,this.Je=1,this.tr=new Map,this.Qe=new Map,this.U_=e,this.q_=t,this.ir=A}Y_(e){const t=e.time,A=this.q_.cacheKey(t),r=this.tr.get(A);if(r!==void 0)return r.Z_;if(this.Ke===this.ir){const s=this.Qe.get(this.Je);this.Qe.delete(this.Je),this.tr.delete(Vt(s)),this.Je++,this.Ke--}const n=this.U_(e);return this.tr.set(A,{Z_:n,rr:this.Ge}),this.Qe.set(this.Ge,A),this.Ke++,this.Ge++,n}}class qi{constructor(e,t){kA(e<=t,"right should be >= left"),this.X_=e,this.K_=t}Os(){return this.X_}ui(){return this.K_}G_(){return this.K_-this.X_+1}Kr(e){return this.X_<=e&&e<=this.K_}Ch(e){return this.X_===e.Os()&&this.K_===e.ui()}}function Pl(i,e){return i===null||e===null?i===e:i.Ch(e)}class Gf{constructor(){this.J_=new Map,this.tr=null,this.Q_=!1}tu(e){this.Q_=e,this.tr=null}iu(e,t){this.nu(t),this.tr=null;for(let A=t;A<e.length;++A){const r=e[A];let n=this.J_.get(r.timeWeight);n===void 0&&(n=[],this.J_.set(r.timeWeight,n)),n.push({index:A,time:r.time,weight:r.timeWeight,originalTime:r.originalTime})}}su(e,t){const A=Math.ceil(t/e);return this.tr!==null&&this.tr.eu===A||(this.tr={Ha:this.ru(A),eu:A}),this.tr.Ha}nu(e){if(e===0)return void this.J_.clear();const t=[];this.J_.forEach(((A,r)=>{e<=A[0].index?t.push(r):A.splice(Ri(A,e,(n=>n.index<e)),1/0)}));for(const A of t)this.J_.delete(A)}ru(e){let t=[];for(const A of Array.from(this.J_.keys()).sort(((r,n)=>n-r))){if(!this.J_.get(A))continue;const r=t;t=[];const n=r.length;let s=0;const o=Vt(this.J_.get(A)),l=o.length;let c=1/0,h=-1/0;for(let g=0;g<l;g++){const C=o[g],x=C.index;for(;s<n;){const b=r[s],v=b.index;if(!(v<x)){c=v;break}s++,t.push(b),h=v,c=1/0}if(c-x>=e&&x-h>=e)t.push(C),h=x;else if(this.Q_)return r}for(;s<n;s++)t.push(r[s])}return t}}class Ci{constructor(e){this.hu=e}lu(){return this.hu===null?null:new qi(Math.floor(this.hu.Os()),Math.ceil(this.hu.ui()))}au(){return this.hu}static ou(){return new Ci(null)}}function $f(i,e){return i.weight>e.weight?i:e}class Xf{constructor(e,t,A,r){this.__=0,this._u=null,this.uu=[],this.Mo=null,this.wo=null,this.cu=new Gf,this.du=new Map,this.fu=Ci.ou(),this.vu=!0,this.pu=new Bt,this.mu=new Bt,this.bu=new Bt,this.wu=null,this.gu=null,this.Mu=[],this.cn=t,this.yo=A,this.xu=t.rightOffset,this.Su=t.barSpacing,this.$i=e,this.q_=r,this.ku(),this.cu.tu(t.uniformDistribution)}W(){return this.cn}yu(e){uA(this.yo,e),this.Cu(),this.ku()}$h(e,t){var A;uA(this.cn,e),this.cn.fixLeftEdge&&this.Tu(),this.cn.fixRightEdge&&this.Pu(),e.barSpacing!==void 0&&this.$i.Gn(e.barSpacing),e.rightOffset!==void 0&&this.$i.Jn(e.rightOffset),e.minBarSpacing!==void 0&&this.$i.Gn((A=e.barSpacing)!==null&&A!==void 0?A:this.Su),this.Cu(),this.ku(),this.bu.m()}mn(e){var t,A;return(A=(t=this.uu[e])===null||t===void 0?void 0:t.time)!==null&&A!==void 0?A:null}Ui(e){var t;return(t=this.uu[e])!==null&&t!==void 0?t:null}Va(e,t){if(this.uu.length<1)return null;if(this.q_.key(e)>this.q_.key(this.uu[this.uu.length-1].time))return t?this.uu.length-1:null;const A=Ri(this.uu,this.q_.key(e),((r,n)=>this.q_.key(r.time)<n));return this.q_.key(e)<this.q_.key(this.uu[A].time)?t?A:null:A}Ni(){return this.__===0||this.uu.length===0||this._u===null}Da(){return this.uu.length>0}Xs(){return this.Ru(),this.fu.lu()}Du(){return this.Ru(),this.fu.au()}Vu(){const e=this.Xs();if(e===null)return null;const t={from:e.Os(),to:e.ui()};return this.Ou(t)}Ou(e){const t=Math.round(e.from),A=Math.round(e.to),r=Le(this.Bu()),n=Le(this.Au());return{from:Le(this.Ui(Math.max(r,t))),to:Le(this.Ui(Math.min(n,A)))}}Iu(e){return{from:Le(this.Va(e.from,!0)),to:Le(this.Va(e.to,!0))}}Hi(){return this.__}S_(e){if(!isFinite(e)||e<=0||this.__===e)return;const t=this.Du(),A=this.__;if(this.__=e,this.vu=!0,this.cn.lockVisibleTimeRangeOnResize&&A!==0){const r=this.Su*e/A;this.Su=r}if(this.cn.fixLeftEdge&&t!==null&&t.Os()<=0){const r=A-e;this.xu-=Math.round(r/this.Su)+1,this.vu=!0}this.zu(),this.Lu()}It(e){if(this.Ni()||!Vi(e))return 0;const t=this.Eu()+this.xu-e;return this.__-(t+.5)*this.Su-1}Qs(e,t){const A=this.Eu(),r=t===void 0?0:t.from,n=t===void 0?e.length:t.to;for(let s=r;s<n;s++){const o=e[s].ot,l=A+this.xu-o,c=this.__-(l+.5)*this.Su-1;e[s].nt=c}}Nu(e){return Math.ceil(this.Fu(e))}Jn(e){this.vu=!0,this.xu=e,this.Lu(),this.$i.Wu(),this.$i.Uh()}le(){return this.Su}Gn(e){this.ju(e),this.Lu(),this.$i.Wu(),this.$i.Uh()}Hu(){return this.xu}Ha(){if(this.Ni())return null;if(this.gu!==null)return this.gu;const e=this.Su,t=5*(this.$i.W().layout.fontSize+4)/8*(this.cn.tickMarkMaxCharacterLength||8),A=Math.round(t/e),r=Le(this.Xs()),n=Math.max(r.Os(),r.Os()-A),s=Math.max(r.ui(),r.ui()-A),o=this.cu.su(e,t),l=this.Bu()+A,c=this.Au()-A,h=this.$u(),g=this.cn.fixLeftEdge||h,C=this.cn.fixRightEdge||h;let x=0;for(const b of o){if(!(n<=b.index&&b.index<=s))continue;let v;x<this.Mu.length?(v=this.Mu[x],v.coord=this.It(b.index),v.label=this.Uu(b),v.weight=b.weight):(v={needAlignCoordinate:!1,coord:this.It(b.index),label:this.Uu(b),weight:b.weight},this.Mu.push(v)),this.Su>t/2&&!h?v.needAlignCoordinate=!1:v.needAlignCoordinate=g&&b.index<=l||C&&b.index>=c,x++}return this.Mu.length=x,this.gu=this.Mu,this.Mu}qu(){this.vu=!0,this.Gn(this.cn.barSpacing),this.Jn(this.cn.rightOffset)}Yu(e){this.vu=!0,this._u=e,this.Lu(),this.Tu()}Zu(e,t){const A=this.Fu(e),r=this.le(),n=r+t*(r/10);this.Gn(n),this.cn.rightBarStaysOnScroll||this.Jn(this.Hu()+(A-this.Fu(e)))}Go(e){this.Mo&&this.n_(),this.wo===null&&this.wu===null&&(this.Ni()||(this.wo=e,this.Xu()))}Jo(e){if(this.wu===null)return;const t=Fs(this.__-e,0,this.__),A=Fs(this.__-Le(this.wo),0,this.__);t!==0&&A!==0&&this.Gn(this.wu.le*t/A)}Qo(){this.wo!==null&&(this.wo=null,this.Ku())}t_(e){this.Mo===null&&this.wu===null&&(this.Ni()||(this.Mo=e,this.Xu()))}i_(e){if(this.Mo===null)return;const t=(this.Mo-e)/this.le();this.xu=Le(this.wu).Hu+t,this.vu=!0,this.Lu()}n_(){this.Mo!==null&&(this.Mo=null,this.Ku())}Gu(){this.Ju(this.cn.rightOffset)}Ju(e,t=400){if(!isFinite(e))throw new RangeError("offset is required and must be finite number");if(!isFinite(t)||t<=0)throw new RangeError("animationDuration (optional) must be finite positive number");const A=this.xu,r=performance.now();this.$i.Zn({Qu:n=>(n-r)/t>=1,tc:n=>{const s=(n-r)/t;return s>=1?e:A+(e-A)*s}})}bt(e,t){this.vu=!0,this.uu=e,this.cu.iu(e,t),this.Lu()}nc(){return this.pu}sc(){return this.mu}ec(){return this.bu}Eu(){return this._u||0}rc(e){const t=e.G_();this.ju(this.__/t),this.xu=e.ui()-this.Eu(),this.Lu(),this.vu=!0,this.$i.Wu(),this.$i.Uh()}hc(){const e=this.Bu(),t=this.Au();e!==null&&t!==null&&this.rc(new qi(e,t+this.cn.rightOffset))}lc(e){const t=new qi(e.from,e.to);this.rc(t)}qi(e){return this.yo.timeFormatter!==void 0?this.yo.timeFormatter(e.originalTime):this.q_.formatHorzItem(e.time)}$u(){const{handleScroll:e,handleScale:t}=this.$i.W();return!(e.horzTouchDrag||e.mouseWheel||e.pressedMouseMove||e.vertTouchDrag||t.axisDoubleClickReset.time||t.axisPressedMouseMove.time||t.mouseWheel||t.pinch)}Bu(){return this.uu.length===0?null:0}Au(){return this.uu.length===0?null:this.uu.length-1}ac(e){return(this.__-1-e)/this.Su}Fu(e){const t=this.ac(e),A=this.Eu()+this.xu-t;return Math.round(1e6*A)/1e6}ju(e){const t=this.Su;this.Su=e,this.zu(),t!==this.Su&&(this.vu=!0,this.oc())}Ru(){if(!this.vu)return;if(this.vu=!1,this.Ni())return void this._c(Ci.ou());const e=this.Eu(),t=this.__/this.Su,A=this.xu+e,r=new qi(A-t+1,A);this._c(new Ci(r))}zu(){const e=this.uc();if(this.Su<e&&(this.Su=e,this.vu=!0),this.__!==0){const t=.5*this.__;this.Su>t&&(this.Su=t,this.vu=!0)}}uc(){return this.cn.fixLeftEdge&&this.cn.fixRightEdge&&this.uu.length!==0?this.__/this.uu.length:this.cn.minBarSpacing}Lu(){const e=this.cc();e!==null&&this.xu<e&&(this.xu=e,this.vu=!0);const t=this.dc();this.xu>t&&(this.xu=t,this.vu=!0)}cc(){const e=this.Bu(),t=this._u;return e===null||t===null?null:e-t-1+(this.cn.fixLeftEdge?this.__/this.Su:Math.min(2,this.uu.length))}dc(){return this.cn.fixRightEdge?0:this.__/this.Su-Math.min(2,this.uu.length)}Xu(){this.wu={le:this.le(),Hu:this.Hu()}}Ku(){this.wu=null}Uu(e){let t=this.du.get(e.weight);return t===void 0&&(t=new Rf((A=>this.fc(A)),this.q_),this.du.set(e.weight,t)),t.Y_(e)}fc(e){return this.q_.formatTickmark(e,this.yo)}_c(e){const t=this.fu;this.fu=e,Pl(t.lu(),this.fu.lu())||this.pu.m(),Pl(t.au(),this.fu.au())||this.mu.m(),this.oc()}oc(){this.gu=null}Cu(){this.oc(),this.du.clear()}ku(){this.q_.updateFormatter(this.yo)}Tu(){if(!this.cn.fixLeftEdge)return;const e=this.Bu();if(e===null)return;const t=this.Xs();if(t===null)return;const A=t.Os()-e;if(A<0){const r=this.xu-A-1;this.Jn(r)}this.zu()}Pu(){this.Lu(),this.zu()}}class Zf{X(e,t,A){e.useMediaCoordinateSpace((r=>this.K(r,t,A)))}gl(e,t,A){e.useMediaCoordinateSpace((r=>this.vc(r,t,A)))}vc(e,t,A){}}class Jf extends Zf{constructor(e){super(),this.mc=new Map,this.zt=e}K(e){}vc(e){if(!this.zt.yt)return;const{context:t,mediaSize:A}=e;let r=0;for(const s of this.zt.bc){if(s.Kt.length===0)continue;t.font=s.R;const o=this.wc(t,s.Kt);o>A.width?s.Zu=A.width/o:s.Zu=1,r+=s.gc*s.Zu}let n=0;switch(this.zt.Mc){case"top":n=0;break;case"center":n=Math.max((A.height-r)/2,0);break;case"bottom":n=Math.max(A.height-r,0)}t.fillStyle=this.zt.V;for(const s of this.zt.bc){t.save();let o=0;switch(this.zt.xc){case"left":t.textAlign="left",o=s.gc/2;break;case"center":t.textAlign="center",o=A.width/2;break;case"right":t.textAlign="right",o=A.width-1-s.gc/2}t.translate(o,n),t.textBaseline="top",t.font=s.R,t.scale(s.Zu,s.Zu),t.fillText(s.Kt,0,s.Sc),t.restore(),n+=s.gc*s.Zu}}wc(e,t){const A=this.kc(e.font);let r=A.get(t);return r===void 0&&(r=e.measureText(t).width,A.set(t,r)),r}kc(e){let t=this.mc.get(e);return t===void 0&&(t=new Map,this.mc.set(e,t)),t}}class Yf{constructor(e){this.ft=!0,this.Ft={yt:!1,V:"",bc:[],Mc:"center",xc:"center"},this.Wt=new Jf(this.Ft),this.jt=e}bt(){this.ft=!0}gt(){return this.ft&&(this.Mt(),this.ft=!1),this.Wt}Mt(){const e=this.jt.W(),t=this.Ft;t.yt=e.visible,t.yt&&(t.V=e.color,t.xc=e.horzAlign,t.Mc=e.vertAlign,t.bc=[{Kt:e.text,R:Bi(e.fontSize,e.fontFamily,e.fontStyle),gc:1.2*e.fontSize,Sc:0,Zu:0}])}}class qf extends bs{constructor(e,t){super(),this.cn=t,this.wn=new Yf(this)}Rn(){return[]}Pn(){return[this.wn]}W(){return this.cn}Vn(){this.wn.bt()}}var kl,Nl,Ol,Kl,Vl;(function(i){i[i.OnTouchEnd=0]="OnTouchEnd",i[i.OnNextTap=1]="OnNextTap"})(kl||(kl={}));class jf{constructor(e,t,A){this.yc=[],this.Cc=[],this.__=0,this.Tc=null,this.Pc=new Bt,this.Rc=new Bt,this.Dc=null,this.Vc=e,this.cn=t,this.q_=A,this.Oc=new Ep(this),this.yl=new Xf(this,t.timeScale,this.cn.localization,A),this.vt=new Kp(this,t.crosshair),this.Bc=new Pf(t.crosshair),this.Ac=new qf(this,t.watermark),this.Ic(),this.yc[0].x_(2e3),this.zc=this.Lc(0),this.Ec=this.Lc(1)}Kl(){this.Nc(Et.es())}Uh(){this.Nc(Et.ss())}oa(){this.Nc(new Et(1))}Gl(e){const t=this.Fc(e);this.Nc(t)}Wc(){return this.Tc}jc(e){const t=this.Tc;this.Tc=e,t!==null&&this.Gl(t.Hc),e!==null&&this.Gl(e.Hc)}W(){return this.cn}$h(e){uA(this.cn,e),this.yc.forEach((t=>t.b_(e))),e.timeScale!==void 0&&this.yl.$h(e.timeScale),e.localization!==void 0&&this.yl.yu(e.localization),(e.leftPriceScale||e.rightPriceScale)&&this.Pc.m(),this.zc=this.Lc(0),this.Ec=this.Lc(1),this.Kl()}$c(e,t){if(e==="left")return void this.$h({leftPriceScale:t});if(e==="right")return void this.$h({rightPriceScale:t});const A=this.Uc(e);A!==null&&(A.Dt.$h(t),this.Pc.m())}Uc(e){for(const t of this.yc){const A=t.w_(e);if(A!==null)return{Ht:t,Dt:A}}return null}St(){return this.yl}qc(){return this.yc}Yc(){return this.Ac}Zc(){return this.vt}Xc(){return this.Rc}Kc(e,t){e.Lo(t),this.Wu()}S_(e){this.__=e,this.yl.S_(this.__),this.yc.forEach((t=>t.S_(e))),this.Wu()}Ic(e){const t=new Wf(this.yl,this);e!==void 0?this.yc.splice(e,0,t):this.yc.push(t);const A=e===void 0?this.yc.length-1:e,r=Et.es();return r.Nn(A,{Fn:0,Wn:!0}),this.Nc(r),t}V_(e,t,A){e.V_(t,A)}O_(e,t,A){e.O_(t,A),this.Jl(),this.Nc(this.Gc(e,2))}B_(e,t){e.B_(t),this.Nc(this.Gc(e,2))}A_(e,t,A){t.Vo()||e.A_(t,A)}I_(e,t,A){t.Vo()||(e.I_(t,A),this.Jl(),this.Nc(this.Gc(e,2)))}z_(e,t){t.Vo()||(e.z_(t),this.Nc(this.Gc(e,2)))}E_(e,t){e.E_(t),this.Nc(this.Gc(e,2))}Jc(e){this.yl.Go(e)}Qc(e,t){const A=this.St();if(A.Ni()||t===0)return;const r=A.Hi();e=Math.max(1,Math.min(e,r)),A.Zu(e,t),this.Wu()}td(e){this.nd(0),this.sd(e),this.ed()}rd(e){this.yl.Jo(e),this.Wu()}hd(){this.yl.Qo(),this.Uh()}nd(e){this.yl.t_(e)}sd(e){this.yl.i_(e),this.Wu()}ed(){this.yl.n_(),this.Uh()}wt(){return this.Cc}ld(e,t,A,r,n){this.vt.gn(e,t);let s=NaN,o=this.yl.Nu(e);const l=this.yl.Xs();l!==null&&(o=Math.min(Math.max(l.Os(),o),l.ui()));const c=r.vn(),h=c.Ct();h!==null&&(s=c.pn(t,h)),s=this.Bc.Oa(s,o,r),this.vt.kn(o,s,r),this.oa(),n||this.Rc.m(this.vt.xt(),{x:e,y:t},A)}ad(e,t,A){const r=A.vn(),n=r.Ct(),s=r.Rt(e,Le(n)),o=this.yl.Va(t,!0),l=this.yl.It(Le(o));this.ld(l,s,null,A,!0)}od(e){this.Zc().Cn(),this.oa(),e||this.Rc.m(null,null,null)}Jl(){const e=this.vt.Ht();if(e!==null){const t=this.vt.xn(),A=this.vt.Sn();this.ld(t,A,null,e)}this.vt.Vn()}_d(e,t,A){const r=this.yl.mn(0);t!==void 0&&A!==void 0&&this.yl.bt(t,A);const n=this.yl.mn(0),s=this.yl.Eu(),o=this.yl.Xs();if(o!==null&&r!==null&&n!==null){const l=o.Kr(s),c=this.q_.key(r)>this.q_.key(n),h=e!==null&&e>s&&!c,g=this.yl.W().allowShiftVisibleRangeOnWhitespaceReplacement,C=l&&(A!==void 0||g)&&this.yl.W().shiftVisibleRangeOnNewBar;if(h&&!C){const x=e-s;this.yl.Jn(this.yl.Hu()-x)}}this.yl.Yu(e)}ia(e){e!==null&&e.F_()}dr(e){const t=this.yc.find((A=>A.Uo().includes(e)));return t===void 0?null:t}Wu(){this.Ac.Vn(),this.yc.forEach((e=>e.F_())),this.Jl()}S(){this.yc.forEach((e=>e.S())),this.yc.length=0,this.cn.localization.priceFormatter=void 0,this.cn.localization.percentageFormatter=void 0,this.cn.localization.timeFormatter=void 0}ud(){return this.Oc}br(){return this.Oc.W()}g_(){return this.Pc}dd(e,t,A){const r=this.yc[0],n=this.fd(t,e,r,A);return this.Cc.push(n),this.Cc.length===1?this.Kl():this.Uh(),n}vd(e){const t=this.dr(e),A=this.Cc.indexOf(e);kA(A!==-1,"Series not found"),this.Cc.splice(A,1),Le(t).Zo(e),e.S&&e.S()}Xl(e,t){const A=Le(this.dr(e));A.Zo(e);const r=this.Uc(t);if(r===null){const n=e.Xi();A.qo(e,t,n)}else{const n=r.Ht===A?e.Xi():void 0;r.Ht.qo(e,t,n)}}hc(){const e=Et.ss();e.$n(),this.Nc(e)}pd(e){const t=Et.ss();t.Yn(e),this.Nc(t)}Kn(){const e=Et.ss();e.Kn(),this.Nc(e)}Gn(e){const t=Et.ss();t.Gn(e),this.Nc(t)}Jn(e){const t=Et.ss();t.Jn(e),this.Nc(t)}Zn(e){const t=Et.ss();t.Zn(e),this.Nc(t)}Un(){const e=Et.ss();e.Un(),this.Nc(e)}md(){return this.cn.rightPriceScale.visible?"right":"left"}bd(){return this.Ec}q(){return this.zc}Bt(e){const t=this.Ec,A=this.zc;if(t===A)return t;if(e=Math.max(0,Math.min(100,Math.round(100*e))),this.Dc===null||this.Dc.Ps!==A||this.Dc.Rs!==t)this.Dc={Ps:A,Rs:t,wd:new Map};else{const n=this.Dc.wd.get(e);if(n!==void 0)return n}const r=(function(n,s,o){const[l,c,h,g]=Ki(n),[C,x,b,v]=Ki(s),U=[rA(l+o*(C-l)),rA(c+o*(x-c)),rA(h+o*(b-h)),el(g+o*(v-g))];return`rgba(${U[0]}, ${U[1]}, ${U[2]}, ${U[3]})`})(A,t,e/100);return this.Dc.wd.set(e,r),r}Gc(e,t){const A=new Et(t);if(e!==null){const r=this.yc.indexOf(e);A.Nn(r,{Fn:t})}return A}Fc(e,t){return t===void 0&&(t=2),this.Gc(this.dr(e),t)}Nc(e){this.Vc&&this.Vc(e),this.yc.forEach((t=>t.j_().qh().bt()))}fd(e,t,A,r){const n=new Ds(this,e,t,A,r),s=e.priceScaleId!==void 0?e.priceScaleId:this.md();return A.qo(n,s),Nr(s)||n.$h(e),n}Lc(e){const t=this.cn.layout;return t.background.type==="gradient"?e===0?t.background.topColor:t.background.bottomColor:t.background.color}}function Ns(i){return!yA(i)&&!zi(i)}function zl(i){return yA(i)}(function(i){i[i.Disabled=0]="Disabled",i[i.Continuous=1]="Continuous",i[i.OnDataUpdate=2]="OnDataUpdate"})(Nl||(Nl={})),(function(i){i[i.LastBar=0]="LastBar",i[i.LastVisible=1]="LastVisible"})(Ol||(Ol={})),(function(i){i.Solid="solid",i.VerticalGradient="gradient"})(Kl||(Kl={})),(function(i){i[i.Year=0]="Year",i[i.Month=1]="Month",i[i.DayOfMonth=2]="DayOfMonth",i[i.Time=3]="Time",i[i.TimeWithSeconds=4]="TimeWithSeconds"})(Vl||(Vl={}));const Wl=i=>i.getUTCFullYear();function e0(i,e,t){return e.replace(/yyyy/g,(A=>HA(Wl(A),4))(i)).replace(/yy/g,(A=>HA(Wl(A)%100,2))(i)).replace(/MMMM/g,((A,r)=>new Date(A.getUTCFullYear(),A.getUTCMonth(),1).toLocaleString(r,{month:"long"}))(i,t)).replace(/MMM/g,((A,r)=>new Date(A.getUTCFullYear(),A.getUTCMonth(),1).toLocaleString(r,{month:"short"}))(i,t)).replace(/MM/g,(A=>HA((r=>r.getUTCMonth()+1)(A),2))(i)).replace(/dd/g,(A=>HA((r=>r.getUTCDate())(A),2))(i))}class Rl{constructor(e="yyyy-MM-dd",t="default"){this.gd=e,this.Md=t}Y_(e){return e0(e,this.gd,this.Md)}}class t0{constructor(e){this.xd=e||"%h:%m:%s"}Y_(e){return this.xd.replace("%h",HA(e.getUTCHours(),2)).replace("%m",HA(e.getUTCMinutes(),2)).replace("%s",HA(e.getUTCSeconds(),2))}}const A0={Sd:"yyyy-MM-dd",kd:"%h:%m:%s",yd:" ",Cd:"default"};class i0{constructor(e={}){const t=Object.assign(Object.assign({},A0),e);this.Td=new Rl(t.Sd,t.Cd),this.Pd=new t0(t.kd),this.Rd=t.yd}Y_(e){return`${this.Td.Y_(e)}${this.Rd}${this.Pd.Y_(e)}`}}function $r(i){return 60*i*60*1e3}function Os(i){return 60*i*1e3}const Xr=[{Dd:(Gl=1,1e3*Gl),Vd:10},{Dd:Os(1),Vd:20},{Dd:Os(5),Vd:21},{Dd:Os(30),Vd:22},{Dd:$r(1),Vd:30},{Dd:$r(3),Vd:31},{Dd:$r(6),Vd:32},{Dd:$r(12),Vd:33}];var Gl;function $l(i,e){if(i.getUTCFullYear()!==e.getUTCFullYear())return 70;if(i.getUTCMonth()!==e.getUTCMonth())return 60;if(i.getUTCDate()!==e.getUTCDate())return 50;for(let t=Xr.length-1;t>=0;--t)if(Math.floor(e.getTime()/Xr[t].Dd)!==Math.floor(i.getTime()/Xr[t].Dd))return Xr[t].Vd;return 0}function Ks(i){let e=i;if(zi(i)&&(e=Vs(i)),!Ns(e))throw new Error("time must be of type BusinessDay");const t=new Date(Date.UTC(e.year,e.month-1,e.day,0,0,0,0));return{Od:Math.round(t.getTime()/1e3),Bd:e}}function Xl(i){if(!zl(i))throw new Error("time must be of type isUTCTimestamp");return{Od:i}}function Vs(i){const e=new Date(i);if(isNaN(e.getTime()))throw new Error(`Invalid date string=${i}, expected format=yyyy-mm-dd`);return{day:e.getUTCDate(),month:e.getUTCMonth()+1,year:e.getUTCFullYear()}}function Zl(i){zi(i.time)&&(i.time=Vs(i.time))}class Jl{options(){return this.cn}setOptions(e){this.cn=e,this.updateFormatter(e.localization)}preprocessData(e){Array.isArray(e)?(function(t){t.forEach(Zl)})(e):Zl(e)}createConverterToInternalObj(e){return Le((function(t){return t.length===0?null:Ns(t[0].time)||zi(t[0].time)?Ks:Xl})(e))}key(e){return typeof e=="object"&&"Od"in e?e.Od:this.key(this.convertHorzItemToInternal(e))}cacheKey(e){const t=e;return t.Bd===void 0?new Date(1e3*t.Od).getTime():new Date(Date.UTC(t.Bd.year,t.Bd.month-1,t.Bd.day)).getTime()}convertHorzItemToInternal(e){return zl(t=e)?Xl(t):Ns(t)?Ks(t):Ks(Vs(t));var t}updateFormatter(e){if(!this.cn)return;const t=e.dateFormat;this.cn.timeScale.timeVisible?this.Ad=new i0({Sd:t,kd:this.cn.timeScale.secondsVisible?"%h:%m:%s":"%h:%m",yd:" ",Cd:e.locale}):this.Ad=new Rl(t,e.locale)}formatHorzItem(e){const t=e;return this.Ad.Y_(new Date(1e3*t.Od))}formatTickmark(e,t){const A=(function(n,s,o){switch(n){case 0:case 10:return s?o?4:3:2;case 20:case 21:case 22:case 30:case 31:case 32:case 33:return s?3:2;case 50:return 2;case 60:return 1;case 70:return 0}})(e.weight,this.cn.timeScale.timeVisible,this.cn.timeScale.secondsVisible),r=this.cn.timeScale;if(r.tickMarkFormatter!==void 0){const n=r.tickMarkFormatter(e.originalTime,A,t.locale);if(n!==null)return n}return(function(n,s,o){const l={};switch(s){case 0:l.year="numeric";break;case 1:l.month="short";break;case 2:l.day="numeric";break;case 3:l.hour12=!1,l.hour="2-digit",l.minute="2-digit";break;case 4:l.hour12=!1,l.hour="2-digit",l.minute="2-digit",l.second="2-digit"}const c=n.Bd===void 0?new Date(1e3*n.Od):new Date(Date.UTC(n.Bd.year,n.Bd.month-1,n.Bd.day));return new Date(c.getUTCFullYear(),c.getUTCMonth(),c.getUTCDate(),c.getUTCHours(),c.getUTCMinutes(),c.getUTCSeconds(),c.getUTCMilliseconds()).toLocaleString(o,l)})(e.time,A,t.locale)}maxTickMarkWeight(e){let t=e.reduce($f,e[0]).weight;return t>30&&t<50&&(t=30),t}fillWeightsForPoints(e,t){(function(A,r=0){if(A.length===0)return;let n=r===0?null:A[r-1].time.Od,s=n!==null?new Date(1e3*n):null,o=0;for(let l=r;l<A.length;++l){const c=A[l],h=new Date(1e3*c.time.Od);s!==null&&(c.timeWeight=$l(h,s)),o+=c.time.Od-(n||c.time.Od),n=c.time.Od,s=h}if(r===0&&A.length>1){const l=Math.ceil(o/(A.length-1)),c=new Date(1e3*(A[0].time.Od-l));A[0].timeWeight=$l(new Date(1e3*A[0].time.Od),c)}})(e,t)}static Id(e){return uA({localization:{dateFormat:"dd MMM 'yy"}},e??{})}}const vi=typeof window<"u";function Yl(){return!!vi&&window.navigator.userAgent.toLowerCase().indexOf("firefox")>-1}function zs(){return!!vi&&/iPhone|iPad|iPod/.test(window.navigator.platform)}function Ws(i){return i+i%2}function Rs(i,e){return i.zd-e.zd}function Gs(i,e,t){const A=(i.zd-e.zd)/(i.ot-e.ot);return Math.sign(A)*Math.min(Math.abs(A),t)}class r0{constructor(e,t,A,r){this.Ld=null,this.Ed=null,this.Nd=null,this.Fd=null,this.Wd=null,this.jd=0,this.Hd=0,this.$d=e,this.Ud=t,this.qd=A,this.rs=r}Yd(e,t){if(this.Ld!==null){if(this.Ld.ot===t)return void(this.Ld.zd=e);if(Math.abs(this.Ld.zd-e)<this.rs)return}this.Fd=this.Nd,this.Nd=this.Ed,this.Ed=this.Ld,this.Ld={ot:t,zd:e}}Vr(e,t){if(this.Ld===null||this.Ed===null||t-this.Ld.ot>50)return;let A=0;const r=Gs(this.Ld,this.Ed,this.Ud),n=Rs(this.Ld,this.Ed),s=[r],o=[n];if(A+=n,this.Nd!==null){const c=Gs(this.Ed,this.Nd,this.Ud);if(Math.sign(c)===Math.sign(r)){const h=Rs(this.Ed,this.Nd);if(s.push(c),o.push(h),A+=h,this.Fd!==null){const g=Gs(this.Nd,this.Fd,this.Ud);if(Math.sign(g)===Math.sign(r)){const C=Rs(this.Nd,this.Fd);s.push(g),o.push(C),A+=C}}}}let l=0;for(let c=0;c<s.length;++c)l+=o[c]/A*s[c];Math.abs(l)<this.$d||(this.Wd={zd:e,ot:t},this.Hd=l,this.jd=(function(c,h){const g=Math.log(h);return Math.log(1*g/-c)/g})(Math.abs(l),this.qd))}tc(e){const t=Le(this.Wd),A=e-t.ot;return t.zd+this.Hd*(Math.pow(this.qd,A)-1)/Math.log(this.qd)}Qu(e){return this.Wd===null||this.Zd(e)===this.jd}Zd(e){const t=e-Le(this.Wd).ot;return Math.min(t,this.jd)}}class n0{constructor(e,t){this.Xd=void 0,this.Kd=void 0,this.Gd=void 0,this.en=!1,this.Jd=e,this.Qd=t,this.tf()}bt(){this.tf()}if(){this.Xd&&this.Jd.removeChild(this.Xd),this.Kd&&this.Jd.removeChild(this.Kd),this.Xd=void 0,this.Kd=void 0}nf(){return this.en!==this.sf()||this.Gd!==this.ef()}ef(){return tl(Ki(this.Qd.W().layout.textColor))>160?"dark":"light"}sf(){return this.Qd.W().layout.attributionLogo}rf(){const e=new URL(location.href);return e.hostname?"&utm_source="+e.hostname+e.pathname:""}tf(){this.nf()&&(this.if(),this.en=this.sf(),this.en&&(this.Gd=this.ef(),this.Kd=document.createElement("style"),this.Kd.innerText="a#tv-attr-logo{--fill:#131722;--stroke:#fff;position:absolute;left:10px;bottom:10px;height:19px;width:35px;margin:0;padding:0;border:0;z-index:3;}a#tv-attr-logo[data-dark]{--fill:#D1D4DC;--stroke:#131722;}",this.Xd=document.createElement("a"),this.Xd.href=`https://www.tradingview.com/?utm_medium=lwc-link&utm_campaign=lwc-chart${this.rf()}`,this.Xd.title="Charting by TradingView",this.Xd.id="tv-attr-logo",this.Xd.target="_blank",this.Xd.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 19" width="35" height="19" fill="none"><g fill-rule="evenodd" clip-path="url(#a)" clip-rule="evenodd"><path fill="var(--stroke)" d="M2 0H0v10h6v9h21.4l.5-1.3 6-15 1-2.7H23.7l-.5 1.3-.2.6a5 5 0 0 0-7-.9V0H2Zm20 17h4l5.2-13 .8-2h-7l-1 2.5-.2.5-1.5 3.8-.3.7V17Zm-.8-10a3 3 0 0 0 .7-2.7A3 3 0 1 0 16.8 7h4.4ZM14 7V2H2v6h6v9h4V7h2Z"/><path fill="var(--fill)" d="M14 2H2v6h6v9h6V2Zm12 15h-7l6-15h7l-6 15Zm-7-9a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"/></g><defs><clipPath id="a"><path fill="var(--stroke)" d="M0 0h35v19H0z"/></clipPath></defs></svg>',this.Xd.toggleAttribute("data-dark",this.Gd==="dark"),this.Jd.appendChild(this.Kd),this.Jd.appendChild(this.Xd)))}}function Ai(i,e){const t=Le(i.ownerDocument).createElement("canvas");i.appendChild(t);const A=fp(t,{options:{allowResizeObserver:!1},transform:(r,n)=>({width:Math.max(r.width,n.width),height:Math.max(r.height,n.height)})});return A.resizeCanvasElement(e),A}function ii(i){var e;i.width=1,i.height=1,(e=i.getContext("2d"))===null||e===void 0||e.clearRect(0,0,1,1)}function $s(i,e,t,A){i.gl&&i.gl(e,t,A)}function Zr(i,e,t,A){i.X(e,t,A)}function Xs(i,e,t,A){const r=i(t,A);for(const n of r){const s=n.gt();s!==null&&e(s)}}function s0(i){vi&&window.chrome!==void 0&&i.addEventListener("mousedown",(e=>{if(e.button===1)return e.preventDefault(),!1}))}class Zs{constructor(e,t,A){this.hf=0,this.lf=null,this.af={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY},this._f=0,this.uf=null,this.cf={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY},this.df=null,this.ff=!1,this.vf=null,this.pf=null,this.mf=!1,this.bf=!1,this.wf=!1,this.gf=null,this.Mf=null,this.xf=null,this.Sf=null,this.kf=null,this.yf=null,this.Cf=null,this.Tf=0,this.Pf=!1,this.Rf=!1,this.Df=!1,this.Vf=0,this.Of=null,this.Bf=!zs(),this.Af=r=>{this.If(r)},this.zf=r=>{if(this.Lf(r)){const n=this.Ef(r);if(++this._f,this.uf&&this._f>1){const{Nf:s}=this.Ff(CA(r),this.cf);s<30&&!this.wf&&this.Wf(n,this.Hf.jf),this.$f()}}else{const n=this.Ef(r);if(++this.hf,this.lf&&this.hf>1){const{Nf:s}=this.Ff(CA(r),this.af);s<5&&!this.bf&&this.Uf(n,this.Hf.qf),this.Yf()}}},this.Zf=e,this.Hf=t,this.cn=A,this.Xf()}S(){this.gf!==null&&(this.gf(),this.gf=null),this.Mf!==null&&(this.Mf(),this.Mf=null),this.Sf!==null&&(this.Sf(),this.Sf=null),this.kf!==null&&(this.kf(),this.kf=null),this.yf!==null&&(this.yf(),this.yf=null),this.xf!==null&&(this.xf(),this.xf=null),this.Kf(),this.Yf()}Gf(e){this.Sf&&this.Sf();const t=this.Jf.bind(this);if(this.Sf=()=>{this.Zf.removeEventListener("mousemove",t)},this.Zf.addEventListener("mousemove",t),this.Lf(e))return;const A=this.Ef(e);this.Uf(A,this.Hf.Qf),this.Bf=!0}Yf(){this.lf!==null&&clearTimeout(this.lf),this.hf=0,this.lf=null,this.af={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY}}$f(){this.uf!==null&&clearTimeout(this.uf),this._f=0,this.uf=null,this.cf={nt:Number.NEGATIVE_INFINITY,st:Number.POSITIVE_INFINITY}}Jf(e){if(this.Df||this.pf!==null||this.Lf(e))return;const t=this.Ef(e);this.Uf(t,this.Hf.tv),this.Bf=!0}iv(e){const t=Js(e.changedTouches,Le(this.Of));if(t===null||(this.Vf=Jr(e),this.Cf!==null)||this.Rf)return;this.Pf=!0;const A=this.Ff(CA(t),Le(this.pf)),{nv:r,sv:n,Nf:s}=A;if(this.mf||!(s<5)){if(!this.mf){const o=.5*r,l=n>=o&&!this.cn.ev(),c=o>n&&!this.cn.rv();l||c||(this.Rf=!0),this.mf=!0,this.wf=!0,this.Kf(),this.$f()}if(!this.Rf){const o=this.Ef(e,t);this.Wf(o,this.Hf.hv),Ti(e)}}}lv(e){if(e.button!==0)return;const t=this.Ff(CA(e),Le(this.vf)),{Nf:A}=t;if(A>=5&&(this.bf=!0,this.Yf()),this.bf){const r=this.Ef(e);this.Uf(r,this.Hf.av)}}Ff(e,t){const A=Math.abs(t.nt-e.nt),r=Math.abs(t.st-e.st);return{nv:A,sv:r,Nf:A+r}}ov(e){let t=Js(e.changedTouches,Le(this.Of));if(t===null&&e.touches.length===0&&(t=e.changedTouches[0]),t===null)return;this.Of=null,this.Vf=Jr(e),this.Kf(),this.pf=null,this.yf&&(this.yf(),this.yf=null);const A=this.Ef(e,t);if(this.Wf(A,this.Hf._v),++this._f,this.uf&&this._f>1){const{Nf:r}=this.Ff(CA(t),this.cf);r<30&&!this.wf&&this.Wf(A,this.Hf.jf),this.$f()}else this.wf||(this.Wf(A,this.Hf.uv),this.Hf.uv&&Ti(e));this._f===0&&Ti(e),e.touches.length===0&&this.ff&&(this.ff=!1,Ti(e))}If(e){if(e.button!==0)return;const t=this.Ef(e);if(this.vf=null,this.Df=!1,this.kf&&(this.kf(),this.kf=null),Yl()&&this.Zf.ownerDocument.documentElement.removeEventListener("mouseleave",this.Af),!this.Lf(e))if(this.Uf(t,this.Hf.cv),++this.hf,this.lf&&this.hf>1){const{Nf:A}=this.Ff(CA(e),this.af);A<5&&!this.bf&&this.Uf(t,this.Hf.qf),this.Yf()}else this.bf||this.Uf(t,this.Hf.dv)}Kf(){this.df!==null&&(clearTimeout(this.df),this.df=null)}fv(e){if(this.Of!==null)return;const t=e.changedTouches[0];this.Of=t.identifier,this.Vf=Jr(e);const A=this.Zf.ownerDocument.documentElement;this.wf=!1,this.mf=!1,this.Rf=!1,this.pf=CA(t),this.yf&&(this.yf(),this.yf=null);{const n=this.iv.bind(this),s=this.ov.bind(this);this.yf=()=>{A.removeEventListener("touchmove",n),A.removeEventListener("touchend",s)},A.addEventListener("touchmove",n,{passive:!1}),A.addEventListener("touchend",s,{passive:!1}),this.Kf(),this.df=setTimeout(this.vv.bind(this,e),240)}const r=this.Ef(e,t);this.Wf(r,this.Hf.pv),this.uf||(this._f=0,this.uf=setTimeout(this.$f.bind(this),500),this.cf=CA(t))}mv(e){if(e.button!==0)return;const t=this.Zf.ownerDocument.documentElement;Yl()&&t.addEventListener("mouseleave",this.Af),this.bf=!1,this.vf=CA(e),this.kf&&(this.kf(),this.kf=null);{const r=this.lv.bind(this),n=this.If.bind(this);this.kf=()=>{t.removeEventListener("mousemove",r),t.removeEventListener("mouseup",n)},t.addEventListener("mousemove",r),t.addEventListener("mouseup",n)}if(this.Df=!0,this.Lf(e))return;const A=this.Ef(e);this.Uf(A,this.Hf.bv),this.lf||(this.hf=0,this.lf=setTimeout(this.Yf.bind(this),500),this.af=CA(e))}Xf(){this.Zf.addEventListener("mouseenter",this.Gf.bind(this)),this.Zf.addEventListener("touchcancel",this.Kf.bind(this));{const e=this.Zf.ownerDocument,t=A=>{this.Hf.wv&&(A.composed&&this.Zf.contains(A.composedPath()[0])||A.target&&this.Zf.contains(A.target)||this.Hf.wv())};this.Mf=()=>{e.removeEventListener("touchstart",t)},this.gf=()=>{e.removeEventListener("mousedown",t)},e.addEventListener("mousedown",t),e.addEventListener("touchstart",t,{passive:!0})}zs()&&(this.xf=()=>{this.Zf.removeEventListener("dblclick",this.zf)},this.Zf.addEventListener("dblclick",this.zf)),this.Zf.addEventListener("mouseleave",this.gv.bind(this)),this.Zf.addEventListener("touchstart",this.fv.bind(this),{passive:!0}),s0(this.Zf),this.Zf.addEventListener("mousedown",this.mv.bind(this)),this.Mv(),this.Zf.addEventListener("touchmove",(()=>{}),{passive:!1})}Mv(){this.Hf.xv===void 0&&this.Hf.Sv===void 0&&this.Hf.kv===void 0||(this.Zf.addEventListener("touchstart",(e=>this.yv(e.touches)),{passive:!0}),this.Zf.addEventListener("touchmove",(e=>{if(e.touches.length===2&&this.Cf!==null&&this.Hf.Sv!==void 0){const t=ql(e.touches[0],e.touches[1])/this.Tf;this.Hf.Sv(this.Cf,t),Ti(e)}}),{passive:!1}),this.Zf.addEventListener("touchend",(e=>{this.yv(e.touches)})))}yv(e){e.length===1&&(this.Pf=!1),e.length!==2||this.Pf||this.ff?this.Cv():this.Tv(e)}Tv(e){const t=this.Zf.getBoundingClientRect()||{left:0,top:0};this.Cf={nt:(e[0].clientX-t.left+(e[1].clientX-t.left))/2,st:(e[0].clientY-t.top+(e[1].clientY-t.top))/2},this.Tf=ql(e[0],e[1]),this.Hf.xv!==void 0&&this.Hf.xv(),this.Kf()}Cv(){this.Cf!==null&&(this.Cf=null,this.Hf.kv!==void 0&&this.Hf.kv())}gv(e){if(this.Sf&&this.Sf(),this.Lf(e)||!this.Bf)return;const t=this.Ef(e);this.Uf(t,this.Hf.Pv),this.Bf=!zs()}vv(e){const t=Js(e.touches,Le(this.Of));if(t===null)return;const A=this.Ef(e,t);this.Wf(A,this.Hf.Rv),this.wf=!0,this.ff=!0}Lf(e){return e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents!==void 0?e.sourceCapabilities.firesTouchEvents:Jr(e)<this.Vf+500}Wf(e,t){t&&t.call(this.Hf,e)}Uf(e,t){t&&t.call(this.Hf,e)}Ef(e,t){const A=t||e,r=this.Zf.getBoundingClientRect()||{left:0,top:0};return{clientX:A.clientX,clientY:A.clientY,pageX:A.pageX,pageY:A.pageY,screenX:A.screenX,screenY:A.screenY,localX:A.clientX-r.left,localY:A.clientY-r.top,ctrlKey:e.ctrlKey,altKey:e.altKey,shiftKey:e.shiftKey,metaKey:e.metaKey,Dv:!e.type.startsWith("mouse")&&e.type!=="contextmenu"&&e.type!=="click",Vv:e.type,Ov:A.target,Bv:e.view,Av:()=>{e.type!=="touchstart"&&Ti(e)}}}}function ql(i,e){const t=i.clientX-e.clientX,A=i.clientY-e.clientY;return Math.sqrt(t*t+A*A)}function Ti(i){i.cancelable&&i.preventDefault()}function CA(i){return{nt:i.pageX,st:i.pageY}}function Jr(i){return i.timeStamp||performance.now()}function Js(i,e){for(let t=0;t<i.length;++t)if(i[t].identifier===e)return i[t];return null}function Yr(i){return{Hc:i.Hc,Iv:{gr:i.zv.externalId},Lv:i.zv.cursorStyle}}function o0(i,e,t){for(const A of i){const r=A.gt();if(r!==null&&r.wr){const n=r.wr(e,t);if(n!==null)return{Bv:A,Iv:n}}}return null}function Ys(i,e){return t=>{var A,r,n,s;return((r=(A=t.Dt())===null||A===void 0?void 0:A.Pa())!==null&&r!==void 0?r:"")!==e?[]:(s=(n=t.da)===null||n===void 0?void 0:n.call(t,i))!==null&&s!==void 0?s:[]}}function jl(i,e,t,A){if(!i.length)return;let r=0;const n=t/2,s=i[0].At(A,!0);let o=e===1?n-(i[0].Vi()-s/2):i[0].Vi()-s/2-n;o=Math.max(0,o);for(let l=1;l<i.length;l++){const c=i[l],h=i[l-1],g=h.At(A,!1),C=c.Vi(),x=h.Vi();if(e===1?C>x-g:C<x+g){const b=x-g*e;c.Oi(b);const v=b-e*g/2;if((e===1?v<0:v>t)&&o>0){const U=e===1?-1-v:v-t,F=Math.min(U,o);for(let M=r;M<i.length;M++)i[M].Oi(i[M].Vi()+e*F);o-=F}}else r=l,o=e===1?x-g-C:C-(x+g)}}class ec{constructor(e,t,A,r){this.Li=null,this.Ev=null,this.Nv=!1,this.Fv=new Gi(200),this.Qr=null,this.Wv=0,this.jv=!1,this.Hv=()=>{this.jv||this.tn.$v().$t().Uh()},this.Uv=()=>{this.jv||this.tn.$v().$t().Uh()},this.tn=e,this.cn=t,this.ko=t.layout,this.Oc=A,this.qv=r==="left",this.Yv=Ys("normal",r),this.Zv=Ys("top",r),this.Xv=Ys("bottom",r),this.Kv=document.createElement("div"),this.Kv.style.height="100%",this.Kv.style.overflow="hidden",this.Kv.style.width="25px",this.Kv.style.left="0",this.Kv.style.position="relative",this.Gv=Ai(this.Kv,pt({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv);const n=this.Gv.canvasElement;n.style.position="absolute",n.style.zIndex="1",n.style.left="0",n.style.top="0",this.Jv=Ai(this.Kv,pt({width:16,height:16})),this.Jv.subscribeSuggestedBitmapSizeChanged(this.Uv);const s=this.Jv.canvasElement;s.style.position="absolute",s.style.zIndex="2",s.style.left="0",s.style.top="0";const o={bv:this.Qv.bind(this),pv:this.Qv.bind(this),av:this.tp.bind(this),hv:this.tp.bind(this),wv:this.ip.bind(this),cv:this.np.bind(this),_v:this.np.bind(this),qf:this.sp.bind(this),jf:this.sp.bind(this),Qf:this.ep.bind(this),Pv:this.rp.bind(this)};this.hp=new Zs(this.Jv.canvasElement,o,{ev:()=>!this.cn.handleScroll.vertTouchDrag,rv:()=>!0})}S(){this.hp.S(),this.Jv.unsubscribeSuggestedBitmapSizeChanged(this.Uv),ii(this.Jv.canvasElement),this.Jv.dispose(),this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),ii(this.Gv.canvasElement),this.Gv.dispose(),this.Li!==null&&this.Li.Ko().p(this),this.Li=null}lp(){return this.Kv}P(){return this.ko.fontSize}ap(){const e=this.Oc.W();return this.Qr!==e.R&&(this.Fv.nr(),this.Qr=e.R),e}op(){if(this.Li===null)return 0;let e=0;const t=this.ap(),A=Le(this.Gv.canvasElement.getContext("2d"));A.save();const r=this.Li.Ha();A.font=this._p(),r.length>0&&(e=Math.max(this.Fv.xi(A,r[0].so),this.Fv.xi(A,r[r.length-1].so)));const n=this.up();for(let c=n.length;c--;){const h=this.Fv.xi(A,n[c].Kt());h>e&&(e=h)}const s=this.Li.Ct();if(s!==null&&this.Ev!==null&&(o=this.cn.crosshair).mode!==2&&o.horzLine.visible&&o.horzLine.labelVisible){const c=this.Li.pn(1,s),h=this.Li.pn(this.Ev.height-2,s);e=Math.max(e,this.Fv.xi(A,this.Li.Fi(Math.floor(Math.min(c,h))+.11111111111111,s)),this.Fv.xi(A,this.Li.Fi(Math.ceil(Math.max(c,h))-.11111111111111,s)))}var o;A.restore();const l=e||34;return Ws(Math.ceil(t.C+t.T+t.A+t.I+5+l))}cp(e){this.Ev!==null&&jA(this.Ev,e)||(this.Ev=e,this.jv=!0,this.Gv.resizeCanvasElement(e),this.Jv.resizeCanvasElement(e),this.jv=!1,this.Kv.style.width=`${e.width}px`,this.Kv.style.height=`${e.height}px`)}dp(){return Le(this.Ev).width}Gi(e){this.Li!==e&&(this.Li!==null&&this.Li.Ko().p(this),this.Li=e,e.Ko().l(this.fo.bind(this),this))}Dt(){return this.Li}nr(){const e=this.tn.fp();this.tn.$v().$t().E_(e,Le(this.Dt()))}vp(e){if(this.Ev===null)return;if(e!==1){this.pp(),this.Gv.applySuggestedBitmapSize();const A=ei(this.Gv);A!==null&&(A.useBitmapCoordinateSpace((r=>{this.mp(r),this.Ie(r)})),this.tn.bp(A,this.Xv),this.wp(A),this.tn.bp(A,this.Yv),this.gp(A))}this.Jv.applySuggestedBitmapSize();const t=ei(this.Jv);t!==null&&(t.useBitmapCoordinateSpace((({context:A,bitmapSize:r})=>{A.clearRect(0,0,r.width,r.height)})),this.Mp(t),this.tn.bp(t,this.Zv))}xp(){return this.Gv.bitmapSize}Sp(e,t,A){const r=this.xp();r.width>0&&r.height>0&&e.drawImage(this.Gv.canvasElement,t,A)}bt(){var e;(e=this.Li)===null||e===void 0||e.Ha()}Qv(e){if(this.Li===null||this.Li.Ni()||!this.cn.handleScale.axisPressedMouseMove.price)return;const t=this.tn.$v().$t(),A=this.tn.fp();this.Nv=!0,t.V_(A,this.Li,e.localY)}tp(e){if(this.Li===null||!this.cn.handleScale.axisPressedMouseMove.price)return;const t=this.tn.$v().$t(),A=this.tn.fp(),r=this.Li;t.O_(A,r,e.localY)}ip(){if(this.Li===null||!this.cn.handleScale.axisPressedMouseMove.price)return;const e=this.tn.$v().$t(),t=this.tn.fp(),A=this.Li;this.Nv&&(this.Nv=!1,e.B_(t,A))}np(e){if(this.Li===null||!this.cn.handleScale.axisPressedMouseMove.price)return;const t=this.tn.$v().$t(),A=this.tn.fp();this.Nv=!1,t.B_(A,this.Li)}sp(e){this.cn.handleScale.axisDoubleClickReset.price&&this.nr()}ep(e){this.Li!==null&&(!this.tn.$v().$t().W().handleScale.axisPressedMouseMove.price||this.Li.Mh()||this.Li.Oo()||this.kp(1))}rp(e){this.kp(0)}up(){const e=[],t=this.Li===null?void 0:this.Li;return(A=>{for(let r=0;r<A.length;++r){const n=A[r].Rn(this.tn.fp(),t);for(let s=0;s<n.length;s++)e.push(n[s])}})(this.tn.fp().Uo()),e}mp({context:e,bitmapSize:t}){const{width:A,height:r}=t,n=this.tn.fp().$t(),s=n.q(),o=n.bd();s===o?Pr(e,0,0,A,r,s):rl(e,0,0,A,r,s,o)}Ie({context:e,bitmapSize:t,horizontalPixelRatio:A}){if(this.Ev===null||this.Li===null||!this.Li.W().borderVisible)return;e.fillStyle=this.Li.W().borderColor;const r=Math.max(1,Math.floor(this.ap().C*A));let n;n=this.qv?t.width-r:0,e.fillRect(n,0,r,t.height)}wp(e){if(this.Ev===null||this.Li===null)return;const t=this.Li.Ha(),A=this.Li.W(),r=this.ap(),n=this.qv?this.Ev.width-r.T:0;A.borderVisible&&A.ticksVisible&&e.useBitmapCoordinateSpace((({context:s,horizontalPixelRatio:o,verticalPixelRatio:l})=>{s.fillStyle=A.borderColor;const c=Math.max(1,Math.floor(l)),h=Math.floor(.5*l),g=Math.round(r.T*o);s.beginPath();for(const C of t)s.rect(Math.floor(n*o),Math.round(C.Ea*l)-h,g,c);s.fill()})),e.useMediaCoordinateSpace((({context:s})=>{var o;s.font=this._p(),s.fillStyle=(o=A.textColor)!==null&&o!==void 0?o:this.ko.textColor,s.textAlign=this.qv?"right":"left",s.textBaseline="middle";const l=this.qv?Math.round(n-r.A):Math.round(n+r.T+r.A),c=t.map((h=>this.Fv.Mi(s,h.so)));for(let h=t.length;h--;){const g=t[h];s.fillText(g.so,l,g.Ea+c[h])}}))}pp(){if(this.Ev===null||this.Li===null)return;const e=[],t=this.Li.Uo().slice(),A=this.tn.fp(),r=this.ap();this.Li===A.pr()&&this.tn.fp().Uo().forEach((s=>{A.vr(s)&&t.push(s)}));const n=this.Li;t.forEach((s=>{s.Rn(A,n).forEach((o=>{o.Oi(null),o.Bi()&&e.push(o)}))})),e.forEach((s=>s.Oi(s.ki()))),this.Li.W().alignLabels&&this.yp(e,r)}yp(e,t){if(this.Ev===null)return;const A=this.Ev.height/2,r=e.filter((s=>s.ki()<=A)),n=e.filter((s=>s.ki()>A));r.sort(((s,o)=>o.ki()-s.ki())),n.sort(((s,o)=>s.ki()-o.ki()));for(const s of e){const o=Math.floor(s.At(t)/2),l=s.ki();l>-o&&l<o&&s.Oi(o),l>this.Ev.height-o&&l<this.Ev.height+o&&s.Oi(this.Ev.height-o)}jl(r,1,this.Ev.height,t),jl(n,-1,this.Ev.height,t)}gp(e){if(this.Ev===null)return;const t=this.up(),A=this.ap(),r=this.qv?"right":"left";t.forEach((n=>{n.Ai()&&n.gt(Le(this.Li)).X(e,A,this.Fv,r)}))}Mp(e){if(this.Ev===null||this.Li===null)return;const t=this.tn.$v().$t(),A=[],r=this.tn.fp(),n=t.Zc().Rn(r,this.Li);n.length&&A.push(n);const s=this.ap(),o=this.qv?"right":"left";A.forEach((l=>{l.forEach((c=>{c.gt(Le(this.Li)).X(e,s,this.Fv,o)}))}))}kp(e){this.Kv.style.cursor=e===1?"ns-resize":"default"}fo(){const e=this.op();this.Wv<e&&this.tn.$v().$t().Kl(),this.Wv=e}_p(){return Bi(this.ko.fontSize,this.ko.fontFamily)}}function a0(i,e){var t,A;return(A=(t=i.ua)===null||t===void 0?void 0:t.call(i,e))!==null&&A!==void 0?A:[]}function qr(i,e){var t,A;return(A=(t=i.Pn)===null||t===void 0?void 0:t.call(i,e))!==null&&A!==void 0?A:[]}function l0(i,e){var t,A;return(A=(t=i.Ji)===null||t===void 0?void 0:t.call(i,e))!==null&&A!==void 0?A:[]}function c0(i,e){var t,A;return(A=(t=i.aa)===null||t===void 0?void 0:t.call(i,e))!==null&&A!==void 0?A:[]}class qs{constructor(e,t){this.Ev=pt({width:0,height:0}),this.Cp=null,this.Tp=null,this.Pp=null,this.Rp=null,this.Dp=!1,this.Vp=new Bt,this.Op=new Bt,this.Bp=0,this.Ap=!1,this.Ip=null,this.zp=!1,this.Lp=null,this.Ep=null,this.jv=!1,this.Hv=()=>{this.jv||this.Np===null||this.$i().Uh()},this.Uv=()=>{this.jv||this.Np===null||this.$i().Uh()},this.Qd=e,this.Np=t,this.Np.W_().l(this.Fp.bind(this),this,!0),this.Wp=document.createElement("td"),this.Wp.style.padding="0",this.Wp.style.position="relative";const A=document.createElement("div");A.style.width="100%",A.style.height="100%",A.style.position="relative",A.style.overflow="hidden",this.jp=document.createElement("td"),this.jp.style.padding="0",this.Hp=document.createElement("td"),this.Hp.style.padding="0",this.Wp.appendChild(A),this.Gv=Ai(A,pt({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv);const r=this.Gv.canvasElement;r.style.position="absolute",r.style.zIndex="1",r.style.left="0",r.style.top="0",this.Jv=Ai(A,pt({width:16,height:16})),this.Jv.subscribeSuggestedBitmapSizeChanged(this.Uv);const n=this.Jv.canvasElement;n.style.position="absolute",n.style.zIndex="2",n.style.left="0",n.style.top="0",this.$p=document.createElement("tr"),this.$p.appendChild(this.jp),this.$p.appendChild(this.Wp),this.$p.appendChild(this.Hp),this.Up(),this.hp=new Zs(this.Jv.canvasElement,this,{ev:()=>this.Ip===null&&!this.Qd.W().handleScroll.vertTouchDrag,rv:()=>this.Ip===null&&!this.Qd.W().handleScroll.horzTouchDrag})}S(){this.Cp!==null&&this.Cp.S(),this.Tp!==null&&this.Tp.S(),this.Pp=null,this.Jv.unsubscribeSuggestedBitmapSizeChanged(this.Uv),ii(this.Jv.canvasElement),this.Jv.dispose(),this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),ii(this.Gv.canvasElement),this.Gv.dispose(),this.Np!==null&&this.Np.W_().p(this),this.hp.S()}fp(){return Le(this.Np)}qp(e){var t,A;this.Np!==null&&this.Np.W_().p(this),this.Np=e,this.Np!==null&&this.Np.W_().l(qs.prototype.Fp.bind(this),this,!0),this.Up(),this.Qd.Yp().indexOf(this)===this.Qd.Yp().length-1?(this.Pp=(t=this.Pp)!==null&&t!==void 0?t:new n0(this.Wp,this.Qd),this.Pp.bt()):((A=this.Pp)===null||A===void 0||A.if(),this.Pp=null)}$v(){return this.Qd}lp(){return this.$p}Up(){if(this.Np!==null&&(this.Zp(),this.$i().wt().length!==0)){if(this.Cp!==null){const e=this.Np.R_();this.Cp.Gi(Le(e))}if(this.Tp!==null){const e=this.Np.D_();this.Tp.Gi(Le(e))}}}Xp(){this.Cp!==null&&this.Cp.bt(),this.Tp!==null&&this.Tp.bt()}M_(){return this.Np!==null?this.Np.M_():0}x_(e){this.Np&&this.Np.x_(e)}Qf(e){if(!this.Np)return;this.Kp();const t=e.localX,A=e.localY;this.Gp(t,A,e)}bv(e){this.Kp(),this.Jp(),this.Gp(e.localX,e.localY,e)}tv(e){var t;if(!this.Np)return;this.Kp();const A=e.localX,r=e.localY;this.Gp(A,r,e);const n=this.wr(A,r);this.Qd.Qp((t=n?.Lv)!==null&&t!==void 0?t:null),this.$i().jc(n&&{Hc:n.Hc,Iv:n.Iv})}dv(e){this.Np!==null&&(this.Kp(),this.tm(e))}qf(e){this.Np!==null&&this.im(this.Op,e)}jf(e){this.qf(e)}av(e){this.Kp(),this.nm(e),this.Gp(e.localX,e.localY,e)}cv(e){this.Np!==null&&(this.Kp(),this.Ap=!1,this.sm(e))}uv(e){this.Np!==null&&this.tm(e)}Rv(e){if(this.Ap=!0,this.Ip===null){const t={x:e.localX,y:e.localY};this.rm(t,t,e)}}Pv(e){this.Np!==null&&(this.Kp(),this.Np.$t().jc(null),this.hm())}lm(){return this.Vp}am(){return this.Op}xv(){this.Bp=1,this.$i().Un()}Sv(e,t){if(!this.Qd.W().handleScale.pinch)return;const A=5*(t-this.Bp);this.Bp=t,this.$i().Qc(e.nt,A)}pv(e){this.Ap=!1,this.zp=this.Ip!==null,this.Jp();const t=this.$i().Zc();this.Ip!==null&&t.yt()&&(this.Lp={x:t.Yt(),y:t.Zt()},this.Ip={x:e.localX,y:e.localY})}hv(e){if(this.Np===null)return;const t=e.localX,A=e.localY;if(this.Ip===null)this.nm(e);else{this.zp=!1;const r=Le(this.Lp),n=r.x+(t-this.Ip.x),s=r.y+(A-this.Ip.y);this.Gp(n,s,e)}}_v(e){this.$v().W().trackingMode.exitMode===0&&(this.zp=!0),this.om(),this.sm(e)}wr(e,t){const A=this.Np;return A===null?null:(function(r,n,s){const o=r.Uo(),l=(function(c,h,g){var C,x;let b,v;for(const M of c){const N=(x=(C=M.va)===null||C===void 0?void 0:C.call(M,h,g))!==null&&x!==void 0?x:[];for(const R of N)U=R.zOrder,(!(F=b?.zOrder)||U==="top"&&F!=="top"||U==="normal"&&F==="bottom")&&(b=R,v=M)}var U,F;return b&&v?{zv:b,Hc:v}:null})(o,n,s);if(l?.zv.zOrder==="top")return Yr(l);for(const c of o){if(l&&l.Hc===c&&l.zv.zOrder!=="bottom"&&!l.zv.isBackground)return Yr(l);const h=o0(c.Pn(r),n,s);if(h!==null)return{Hc:c,Bv:h.Bv,Iv:h.Iv};if(l&&l.Hc===c&&l.zv.zOrder!=="bottom"&&l.zv.isBackground)return Yr(l)}return l?.zv?Yr(l):null})(A,e,t)}_m(e,t){Le(t==="left"?this.Cp:this.Tp).cp(pt({width:e,height:this.Ev.height}))}um(){return this.Ev}cp(e){jA(this.Ev,e)||(this.Ev=e,this.jv=!0,this.Gv.resizeCanvasElement(e),this.Jv.resizeCanvasElement(e),this.jv=!1,this.Wp.style.width=e.width+"px",this.Wp.style.height=e.height+"px")}dm(){const e=Le(this.Np);e.P_(e.R_()),e.P_(e.D_());for(const t of e.Ba())if(e.vr(t)){const A=t.Dt();A!==null&&e.P_(A),t.Vn()}}xp(){return this.Gv.bitmapSize}Sp(e,t,A){const r=this.xp();r.width>0&&r.height>0&&e.drawImage(this.Gv.canvasElement,t,A)}vp(e){if(e===0||this.Np===null)return;if(e>1&&this.dm(),this.Cp!==null&&this.Cp.vp(e),this.Tp!==null&&this.Tp.vp(e),e!==1){this.Gv.applySuggestedBitmapSize();const A=ei(this.Gv);A!==null&&(A.useBitmapCoordinateSpace((r=>{this.mp(r)})),this.Np&&(this.fm(A,a0),this.vm(A),this.pm(A),this.fm(A,qr),this.fm(A,l0)))}this.Jv.applySuggestedBitmapSize();const t=ei(this.Jv);t!==null&&(t.useBitmapCoordinateSpace((({context:A,bitmapSize:r})=>{A.clearRect(0,0,r.width,r.height)})),this.bm(t),this.fm(t,c0))}wm(){return this.Cp}gm(){return this.Tp}bp(e,t){this.fm(e,t)}Fp(){this.Np!==null&&this.Np.W_().p(this),this.Np=null}tm(e){this.im(this.Vp,e)}im(e,t){const A=t.localX,r=t.localY;e.M()&&e.m(this.$i().St().Nu(A),{x:A,y:r},t)}mp({context:e,bitmapSize:t}){const{width:A,height:r}=t,n=this.$i(),s=n.q(),o=n.bd();s===o?Pr(e,0,0,A,r,o):rl(e,0,0,A,r,s,o)}vm(e){const t=Le(this.Np).j_().qh().gt();t!==null&&t.X(e,!1)}pm(e){const t=this.$i().Yc();this.Mm(e,qr,$s,t),this.Mm(e,qr,Zr,t)}bm(e){this.Mm(e,qr,Zr,this.$i().Zc())}fm(e,t){const A=Le(this.Np).Uo();for(const r of A)this.Mm(e,t,$s,r);for(const r of A)this.Mm(e,t,Zr,r)}Mm(e,t,A,r){const n=Le(this.Np),s=n.$t().Wc(),o=s!==null&&s.Hc===r,l=s!==null&&o&&s.Iv!==void 0?s.Iv.Mr:void 0;Xs(t,(c=>A(c,e,o,l)),r,n)}Zp(){if(this.Np===null)return;const e=this.Qd,t=this.Np.R_().W().visible,A=this.Np.D_().W().visible;t||this.Cp===null||(this.jp.removeChild(this.Cp.lp()),this.Cp.S(),this.Cp=null),A||this.Tp===null||(this.Hp.removeChild(this.Tp.lp()),this.Tp.S(),this.Tp=null);const r=e.$t().ud();t&&this.Cp===null&&(this.Cp=new ec(this,e.W(),r,"left"),this.jp.appendChild(this.Cp.lp())),A&&this.Tp===null&&(this.Tp=new ec(this,e.W(),r,"right"),this.Hp.appendChild(this.Tp.lp()))}xm(e){return e.Dv&&this.Ap||this.Ip!==null}Sm(e){return Math.max(0,Math.min(e,this.Ev.width-1))}km(e){return Math.max(0,Math.min(e,this.Ev.height-1))}Gp(e,t,A){this.$i().ld(this.Sm(e),this.km(t),A,Le(this.Np))}hm(){this.$i().od()}om(){this.zp&&(this.Ip=null,this.hm())}rm(e,t,A){this.Ip=e,this.zp=!1,this.Gp(t.x,t.y,A);const r=this.$i().Zc();this.Lp={x:r.Yt(),y:r.Zt()}}$i(){return this.Qd.$t()}sm(e){if(!this.Dp)return;const t=this.$i(),A=this.fp();if(t.z_(A,A.vn()),this.Rp=null,this.Dp=!1,t.ed(),this.Ep!==null){const r=performance.now(),n=t.St();this.Ep.Vr(n.Hu(),r),this.Ep.Qu(r)||t.Zn(this.Ep)}}Kp(){this.Ip=null}Jp(){if(this.Np){if(this.$i().Un(),document.activeElement!==document.body&&document.activeElement!==document.documentElement)Le(document.activeElement).blur();else{const e=document.getSelection();e!==null&&e.removeAllRanges()}!this.Np.vn().Ni()&&this.$i().St().Ni()}}nm(e){if(this.Np===null)return;const t=this.$i(),A=t.St();if(A.Ni())return;const r=this.Qd.W(),n=r.handleScroll,s=r.kineticScroll;if((!n.pressedMouseMove||e.Dv)&&(!n.horzTouchDrag&&!n.vertTouchDrag||!e.Dv))return;const o=this.Np.vn(),l=performance.now();if(this.Rp!==null||this.xm(e)||(this.Rp={x:e.clientX,y:e.clientY,Od:l,ym:e.localX,Cm:e.localY}),this.Rp!==null&&!this.Dp&&(this.Rp.x!==e.clientX||this.Rp.y!==e.clientY)){if(e.Dv&&s.touch||!e.Dv&&s.mouse){const c=A.le();this.Ep=new r0(.2/c,7/c,.997,15/c),this.Ep.Yd(A.Hu(),this.Rp.Od)}else this.Ep=null;o.Ni()||t.A_(this.Np,o,e.localY),t.nd(e.localX),this.Dp=!0}this.Dp&&(o.Ni()||t.I_(this.Np,o,e.localY),t.sd(e.localX),this.Ep!==null&&this.Ep.Yd(A.Hu(),l))}}class tc{constructor(e,t,A,r,n){this.ft=!0,this.Ev=pt({width:0,height:0}),this.Hv=()=>this.vp(3),this.qv=e==="left",this.Oc=A.ud,this.cn=t,this.Tm=r,this.Pm=n,this.Kv=document.createElement("div"),this.Kv.style.width="25px",this.Kv.style.height="100%",this.Kv.style.overflow="hidden",this.Gv=Ai(this.Kv,pt({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv)}S(){this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),ii(this.Gv.canvasElement),this.Gv.dispose()}lp(){return this.Kv}um(){return this.Ev}cp(e){jA(this.Ev,e)||(this.Ev=e,this.Gv.resizeCanvasElement(e),this.Kv.style.width=`${e.width}px`,this.Kv.style.height=`${e.height}px`,this.ft=!0)}vp(e){if(e<3&&!this.ft||this.Ev.width===0||this.Ev.height===0)return;this.ft=!1,this.Gv.applySuggestedBitmapSize();const t=ei(this.Gv);t!==null&&t.useBitmapCoordinateSpace((A=>{this.mp(A),this.Ie(A)}))}xp(){return this.Gv.bitmapSize}Sp(e,t,A){const r=this.xp();r.width>0&&r.height>0&&e.drawImage(this.Gv.canvasElement,t,A)}Ie({context:e,bitmapSize:t,horizontalPixelRatio:A,verticalPixelRatio:r}){if(!this.Tm())return;e.fillStyle=this.cn.timeScale.borderColor;const n=Math.floor(this.Oc.W().C*A),s=Math.floor(this.Oc.W().C*r),o=this.qv?t.width-n:0;e.fillRect(o,0,n,s)}mp({context:e,bitmapSize:t}){Pr(e,0,0,t.width,t.height,this.Pm())}}function js(i){return e=>{var t,A;return(A=(t=e.fa)===null||t===void 0?void 0:t.call(e,i))!==null&&A!==void 0?A:[]}}const h0=js("normal"),u0=js("top"),d0=js("bottom");class p0{constructor(e,t){this.Rm=null,this.Dm=null,this.k=null,this.Vm=!1,this.Ev=pt({width:0,height:0}),this.Om=new Bt,this.Fv=new Gi(5),this.jv=!1,this.Hv=()=>{this.jv||this.Qd.$t().Uh()},this.Uv=()=>{this.jv||this.Qd.$t().Uh()},this.Qd=e,this.q_=t,this.cn=e.W().layout,this.Xd=document.createElement("tr"),this.Bm=document.createElement("td"),this.Bm.style.padding="0",this.Am=document.createElement("td"),this.Am.style.padding="0",this.Kv=document.createElement("td"),this.Kv.style.height="25px",this.Kv.style.padding="0",this.Im=document.createElement("div"),this.Im.style.width="100%",this.Im.style.height="100%",this.Im.style.position="relative",this.Im.style.overflow="hidden",this.Kv.appendChild(this.Im),this.Gv=Ai(this.Im,pt({width:16,height:16})),this.Gv.subscribeSuggestedBitmapSizeChanged(this.Hv);const A=this.Gv.canvasElement;A.style.position="absolute",A.style.zIndex="1",A.style.left="0",A.style.top="0",this.Jv=Ai(this.Im,pt({width:16,height:16})),this.Jv.subscribeSuggestedBitmapSizeChanged(this.Uv);const r=this.Jv.canvasElement;r.style.position="absolute",r.style.zIndex="2",r.style.left="0",r.style.top="0",this.Xd.appendChild(this.Bm),this.Xd.appendChild(this.Kv),this.Xd.appendChild(this.Am),this.zm(),this.Qd.$t().g_().l(this.zm.bind(this),this),this.hp=new Zs(this.Jv.canvasElement,this,{ev:()=>!0,rv:()=>!this.Qd.W().handleScroll.horzTouchDrag})}S(){this.hp.S(),this.Rm!==null&&this.Rm.S(),this.Dm!==null&&this.Dm.S(),this.Jv.unsubscribeSuggestedBitmapSizeChanged(this.Uv),ii(this.Jv.canvasElement),this.Jv.dispose(),this.Gv.unsubscribeSuggestedBitmapSizeChanged(this.Hv),ii(this.Gv.canvasElement),this.Gv.dispose()}lp(){return this.Xd}Lm(){return this.Rm}Em(){return this.Dm}bv(e){if(this.Vm)return;this.Vm=!0;const t=this.Qd.$t();!t.St().Ni()&&this.Qd.W().handleScale.axisPressedMouseMove.time&&t.Jc(e.localX)}pv(e){this.bv(e)}wv(){const e=this.Qd.$t();!e.St().Ni()&&this.Vm&&(this.Vm=!1,this.Qd.W().handleScale.axisPressedMouseMove.time&&e.hd())}av(e){const t=this.Qd.$t();!t.St().Ni()&&this.Qd.W().handleScale.axisPressedMouseMove.time&&t.rd(e.localX)}hv(e){this.av(e)}cv(){this.Vm=!1;const e=this.Qd.$t();e.St().Ni()&&!this.Qd.W().handleScale.axisPressedMouseMove.time||e.hd()}_v(){this.cv()}qf(){this.Qd.W().handleScale.axisDoubleClickReset.time&&this.Qd.$t().Kn()}jf(){this.qf()}Qf(){this.Qd.$t().W().handleScale.axisPressedMouseMove.time&&this.kp(1)}Pv(){this.kp(0)}um(){return this.Ev}Nm(){return this.Om}Fm(e,t,A){jA(this.Ev,e)||(this.Ev=e,this.jv=!0,this.Gv.resizeCanvasElement(e),this.Jv.resizeCanvasElement(e),this.jv=!1,this.Kv.style.width=`${e.width}px`,this.Kv.style.height=`${e.height}px`,this.Om.m(e)),this.Rm!==null&&this.Rm.cp(pt({width:t,height:e.height})),this.Dm!==null&&this.Dm.cp(pt({width:A,height:e.height}))}Wm(){const e=this.jm();return Math.ceil(e.C+e.T+e.P+e.L+e.B+e.Hm)}bt(){this.Qd.$t().St().Ha()}xp(){return this.Gv.bitmapSize}Sp(e,t,A){const r=this.xp();r.width>0&&r.height>0&&e.drawImage(this.Gv.canvasElement,t,A)}vp(e){if(e===0)return;if(e!==1){this.Gv.applySuggestedBitmapSize();const A=ei(this.Gv);A!==null&&(A.useBitmapCoordinateSpace((r=>{this.mp(r),this.Ie(r),this.$m(A,d0)})),this.wp(A),this.$m(A,h0)),this.Rm!==null&&this.Rm.vp(e),this.Dm!==null&&this.Dm.vp(e)}this.Jv.applySuggestedBitmapSize();const t=ei(this.Jv);t!==null&&(t.useBitmapCoordinateSpace((({context:A,bitmapSize:r})=>{A.clearRect(0,0,r.width,r.height)})),this.Um([...this.Qd.$t().wt(),this.Qd.$t().Zc()],t),this.$m(t,u0))}$m(e,t){const A=this.Qd.$t().wt();for(const r of A)Xs(t,(n=>$s(n,e,!1,void 0)),r,void 0);for(const r of A)Xs(t,(n=>Zr(n,e,!1,void 0)),r,void 0)}mp({context:e,bitmapSize:t}){Pr(e,0,0,t.width,t.height,this.Qd.$t().bd())}Ie({context:e,bitmapSize:t,verticalPixelRatio:A}){if(this.Qd.W().timeScale.borderVisible){e.fillStyle=this.qm();const r=Math.max(1,Math.floor(this.jm().C*A));e.fillRect(0,0,t.width,r)}}wp(e){const t=this.Qd.$t().St(),A=t.Ha();if(!A||A.length===0)return;const r=this.q_.maxTickMarkWeight(A),n=this.jm(),s=t.W();s.borderVisible&&s.ticksVisible&&e.useBitmapCoordinateSpace((({context:o,horizontalPixelRatio:l,verticalPixelRatio:c})=>{o.strokeStyle=this.qm(),o.fillStyle=this.qm();const h=Math.max(1,Math.floor(l)),g=Math.floor(.5*l);o.beginPath();const C=Math.round(n.T*c);for(let x=A.length;x--;){const b=Math.round(A[x].coord*l);o.rect(b-g,0,h,C)}o.fill()})),e.useMediaCoordinateSpace((({context:o})=>{const l=n.C+n.T+n.L+n.P/2;o.textAlign="center",o.textBaseline="middle",o.fillStyle=this.$(),o.font=this._p();for(const c of A)if(c.weight<r){const h=c.needAlignCoordinate?this.Ym(o,c.coord,c.label):c.coord;o.fillText(c.label,h,l)}this.Qd.W().timeScale.allowBoldLabels&&(o.font=this.Zm());for(const c of A)if(c.weight>=r){const h=c.needAlignCoordinate?this.Ym(o,c.coord,c.label):c.coord;o.fillText(c.label,h,l)}}))}Ym(e,t,A){const r=this.Fv.xi(e,A),n=r/2,s=Math.floor(t-n)+.5;return s<0?t+=Math.abs(0-s):s+r>this.Ev.width&&(t-=Math.abs(this.Ev.width-(s+r))),t}Um(e,t){const A=this.jm();for(const r of e)for(const n of r.Qi())n.gt().X(t,A)}qm(){return this.Qd.W().timeScale.borderColor}$(){return this.cn.textColor}j(){return this.cn.fontSize}_p(){return Bi(this.j(),this.cn.fontFamily)}Zm(){return Bi(this.j(),this.cn.fontFamily,"bold")}jm(){this.k===null&&(this.k={C:1,N:NaN,L:NaN,B:NaN,ji:NaN,T:5,P:NaN,R:"",Wi:new Gi,Hm:0});const e=this.k,t=this._p();if(e.R!==t){const A=this.j();e.P=A,e.R=t,e.L=3*A/12,e.B=3*A/12,e.ji=9*A/12,e.N=0,e.Hm=4*A/12,e.Wi.nr()}return this.k}kp(e){this.Kv.style.cursor=e===1?"ew-resize":"default"}zm(){const e=this.Qd.$t(),t=e.W();t.leftPriceScale.visible||this.Rm===null||(this.Bm.removeChild(this.Rm.lp()),this.Rm.S(),this.Rm=null),t.rightPriceScale.visible||this.Dm===null||(this.Am.removeChild(this.Dm.lp()),this.Dm.S(),this.Dm=null);const A={ud:this.Qd.$t().ud()},r=()=>t.leftPriceScale.borderVisible&&e.St().W().borderVisible,n=()=>e.bd();t.leftPriceScale.visible&&this.Rm===null&&(this.Rm=new tc("left",t,A,r,n),this.Bm.appendChild(this.Rm.lp())),t.rightPriceScale.visible&&this.Dm===null&&(this.Dm=new tc("right",t,A,r,n),this.Am.appendChild(this.Dm.lp()))}}const f0=!!vi&&!!navigator.userAgentData&&navigator.userAgentData.brands.some((i=>i.brand.includes("Chromium")))&&!!vi&&(!((eo=navigator?.userAgentData)===null||eo===void 0)&&eo.platform?navigator.userAgentData.platform==="Windows":navigator.userAgent.toLowerCase().indexOf("win")>=0);var eo;class g0{constructor(e,t,A){var r;this.Xm=[],this.Km=0,this.ho=0,this.__=0,this.Gm=0,this.Jm=0,this.Qm=null,this.tb=!1,this.Vp=new Bt,this.Op=new Bt,this.Rc=new Bt,this.ib=null,this.nb=null,this.Jd=e,this.cn=t,this.q_=A,this.Xd=document.createElement("div"),this.Xd.classList.add("tv-lightweight-charts"),this.Xd.style.overflow="hidden",this.Xd.style.direction="ltr",this.Xd.style.width="100%",this.Xd.style.height="100%",(r=this.Xd).style.userSelect="none",r.style.webkitUserSelect="none",r.style.msUserSelect="none",r.style.MozUserSelect="none",r.style.webkitTapHighlightColor="transparent",this.sb=document.createElement("table"),this.sb.setAttribute("cellspacing","0"),this.Xd.appendChild(this.sb),this.eb=this.rb.bind(this),to(this.cn)&&this.hb(!0),this.$i=new jf(this.Vc.bind(this),this.cn,A),this.$t().Xc().l(this.lb.bind(this),this),this.ab=new p0(this,this.q_),this.sb.appendChild(this.ab.lp());const n=t.autoSize&&this.ob();let s=this.cn.width,o=this.cn.height;if(n||s===0||o===0){const l=e.getBoundingClientRect();s=s||l.width,o=o||l.height}this._b(s,o),this.ub(),e.appendChild(this.Xd),this.cb(),this.$i.St().ec().l(this.$i.Kl.bind(this.$i),this),this.$i.g_().l(this.$i.Kl.bind(this.$i),this)}$t(){return this.$i}W(){return this.cn}Yp(){return this.Xm}fb(){return this.ab}S(){this.hb(!1),this.Km!==0&&window.cancelAnimationFrame(this.Km),this.$i.Xc().p(this),this.$i.St().ec().p(this),this.$i.g_().p(this),this.$i.S();for(const e of this.Xm)this.sb.removeChild(e.lp()),e.lm().p(this),e.am().p(this),e.S();this.Xm=[],Le(this.ab).S(),this.Xd.parentElement!==null&&this.Xd.parentElement.removeChild(this.Xd),this.Rc.S(),this.Vp.S(),this.Op.S(),this.pb()}_b(e,t,A=!1){if(this.ho===t&&this.__===e)return;const r=(function(o){const l=Math.floor(o.width),c=Math.floor(o.height);return pt({width:l-l%2,height:c-c%2})})(pt({width:e,height:t}));this.ho=r.height,this.__=r.width;const n=this.ho+"px",s=this.__+"px";Le(this.Xd).style.height=n,Le(this.Xd).style.width=s,this.sb.style.height=n,this.sb.style.width=s,A?this.mb(Et.es(),performance.now()):this.$i.Kl()}vp(e){e===void 0&&(e=Et.es());for(let t=0;t<this.Xm.length;t++)this.Xm[t].vp(e.Hn(t).Fn);this.cn.timeScale.visible&&this.ab.vp(e.jn())}$h(e){const t=to(this.cn);this.$i.$h(e);const A=to(this.cn);A!==t&&this.hb(A),this.cb(),this.bb(e)}lm(){return this.Vp}am(){return this.Op}Xc(){return this.Rc}wb(){this.Qm!==null&&(this.mb(this.Qm,performance.now()),this.Qm=null);const e=this.gb(null),t=document.createElement("canvas");t.width=e.width,t.height=e.height;const A=Le(t.getContext("2d"));return this.gb(A),t}Mb(e){return e==="left"&&!this.xb()||e==="right"&&!this.Sb()||this.Xm.length===0?0:Le(e==="left"?this.Xm[0].wm():this.Xm[0].gm()).dp()}kb(){return this.cn.autoSize&&this.ib!==null}yb(){return this.Xd}Qp(e){this.nb=e,this.nb?this.yb().style.setProperty("cursor",e):this.yb().style.removeProperty("cursor")}Cb(){return this.nb}Tb(){return Vt(this.Xm[0]).um()}bb(e){(e.autoSize!==void 0||!this.ib||e.width===void 0&&e.height===void 0)&&(e.autoSize&&!this.ib&&this.ob(),e.autoSize===!1&&this.ib!==null&&this.pb(),e.autoSize||e.width===void 0&&e.height===void 0||this._b(e.width||this.__,e.height||this.ho))}gb(e){let t=0,A=0;const r=this.Xm[0],n=(o,l)=>{let c=0;for(let h=0;h<this.Xm.length;h++){const g=this.Xm[h],C=Le(o==="left"?g.wm():g.gm()),x=C.xp();e!==null&&C.Sp(e,l,c),c+=x.height}};this.xb()&&(n("left",0),t+=Le(r.wm()).xp().width);for(let o=0;o<this.Xm.length;o++){const l=this.Xm[o],c=l.xp();e!==null&&l.Sp(e,t,A),A+=c.height}t+=r.xp().width,this.Sb()&&(n("right",t),t+=Le(r.gm()).xp().width);const s=(o,l,c)=>{Le(o==="left"?this.ab.Lm():this.ab.Em()).Sp(Le(e),l,c)};if(this.cn.timeScale.visible){const o=this.ab.xp();if(e!==null){let l=0;this.xb()&&(s("left",l,A),l=Le(r.wm()).xp().width),this.ab.Sp(e,l,A),l+=o.width,this.Sb()&&s("right",l,A)}A+=o.height}return pt({width:t,height:A})}Pb(){let e=0,t=0,A=0;for(const b of this.Xm)this.xb()&&(t=Math.max(t,Le(b.wm()).op(),this.cn.leftPriceScale.minimumWidth)),this.Sb()&&(A=Math.max(A,Le(b.gm()).op(),this.cn.rightPriceScale.minimumWidth)),e+=b.M_();t=Ws(t),A=Ws(A);const r=this.__,n=this.ho,s=Math.max(r-t-A,0),o=this.cn.timeScale.visible;let l=o?Math.max(this.ab.Wm(),this.cn.timeScale.minimumHeight):0;var c;l=(c=l)+c%2;const h=0+l,g=n<h?0:n-h,C=g/e;let x=0;for(let b=0;b<this.Xm.length;++b){const v=this.Xm[b];v.qp(this.$i.qc()[b]);let U=0,F=0;F=b===this.Xm.length-1?g-x:Math.round(v.M_()*C),U=Math.max(F,2),x+=U,v.cp(pt({width:s,height:U})),this.xb()&&v._m(t,"left"),this.Sb()&&v._m(A,"right"),v.fp()&&this.$i.Kc(v.fp(),U)}this.ab.Fm(pt({width:o?s:0,height:l}),o?t:0,o?A:0),this.$i.S_(s),this.Gm!==t&&(this.Gm=t),this.Jm!==A&&(this.Jm=A)}hb(e){e?this.Xd.addEventListener("wheel",this.eb,{passive:!1}):this.Xd.removeEventListener("wheel",this.eb)}Rb(e){switch(e.deltaMode){case e.DOM_DELTA_PAGE:return 120;case e.DOM_DELTA_LINE:return 32}return f0?1/window.devicePixelRatio:1}rb(e){if(!(e.deltaX!==0&&this.cn.handleScroll.mouseWheel||e.deltaY!==0&&this.cn.handleScale.mouseWheel))return;const t=this.Rb(e),A=t*e.deltaX/100,r=-t*e.deltaY/100;if(e.cancelable&&e.preventDefault(),r!==0&&this.cn.handleScale.mouseWheel){const n=Math.sign(r)*Math.min(1,Math.abs(r)),s=e.clientX-this.Xd.getBoundingClientRect().left;this.$t().Qc(s,n)}A!==0&&this.cn.handleScroll.mouseWheel&&this.$t().td(-80*A)}mb(e,t){var A;const r=e.jn();r===3&&this.Db(),r!==3&&r!==2||(this.Vb(e),this.Ob(e,t),this.ab.bt(),this.Xm.forEach((n=>{n.Xp()})),((A=this.Qm)===null||A===void 0?void 0:A.jn())===3&&(this.Qm.ts(e),this.Db(),this.Vb(this.Qm),this.Ob(this.Qm,t),e=this.Qm,this.Qm=null)),this.vp(e)}Ob(e,t){for(const A of e.Qn())this.ns(A,t)}Vb(e){const t=this.$i.qc();for(let A=0;A<t.length;A++)e.Hn(A).Wn&&t[A].N_()}ns(e,t){const A=this.$i.St();switch(e.qn){case 0:A.hc();break;case 1:A.lc(e.Vt);break;case 2:A.Gn(e.Vt);break;case 3:A.Jn(e.Vt);break;case 4:A.qu();break;case 5:e.Vt.Qu(t)||A.Jn(e.Vt.tc(t))}}Vc(e){this.Qm!==null?this.Qm.ts(e):this.Qm=e,this.tb||(this.tb=!0,this.Km=window.requestAnimationFrame((t=>{if(this.tb=!1,this.Km=0,this.Qm!==null){const A=this.Qm;this.Qm=null,this.mb(A,t);for(const r of A.Qn())if(r.qn===5&&!r.Vt.Qu(t)){this.$t().Zn(r.Vt);break}}})))}Db(){this.ub()}ub(){const e=this.$i.qc(),t=e.length,A=this.Xm.length;for(let r=t;r<A;r++){const n=Vt(this.Xm.pop());this.sb.removeChild(n.lp()),n.lm().p(this),n.am().p(this),n.S()}for(let r=A;r<t;r++){const n=new qs(this,e[r]);n.lm().l(this.Bb.bind(this),this),n.am().l(this.Ab.bind(this),this),this.Xm.push(n),this.sb.insertBefore(n.lp(),this.ab.lp())}for(let r=0;r<t;r++){const n=e[r],s=this.Xm[r];s.fp()!==n?s.qp(n):s.Up()}this.cb(),this.Pb()}Ib(e,t,A){var r;const n=new Map;e!==null&&this.$i.wt().forEach((h=>{const g=h.In().ll(e);g!==null&&n.set(h,g)}));let s;if(e!==null){const h=(r=this.$i.St().Ui(e))===null||r===void 0?void 0:r.originalTime;h!==void 0&&(s=h)}const o=this.$t().Wc(),l=o!==null&&o.Hc instanceof Ds?o.Hc:void 0,c=o!==null&&o.Iv!==void 0?o.Iv.gr:void 0;return{zb:s,ee:e??void 0,Lb:t??void 0,Eb:l,Nb:n,Fb:c,Wb:A??void 0}}Bb(e,t,A){this.Vp.m((()=>this.Ib(e,t,A)))}Ab(e,t,A){this.Op.m((()=>this.Ib(e,t,A)))}lb(e,t,A){this.Rc.m((()=>this.Ib(e,t,A)))}cb(){const e=this.cn.timeScale.visible?"":"none";this.ab.lp().style.display=e}xb(){return this.Xm[0].fp().R_().W().visible}Sb(){return this.Xm[0].fp().D_().W().visible}ob(){return"ResizeObserver"in window&&(this.ib=new ResizeObserver((e=>{const t=e.find((A=>A.target===this.Jd));t&&this._b(t.contentRect.width,t.contentRect.height)})),this.ib.observe(this.Jd,{box:"border-box"}),!0)}pb(){this.ib!==null&&this.ib.disconnect(),this.ib=null}}function to(i){return!!(i.handleScroll.mouseWheel||i.handleScale.mouseWheel)}function m0(i){return(function(e){return e.open!==void 0})(i)||(function(e){return e.value!==void 0})(i)}function Ac(i,e){var t={};for(var A in i)Object.prototype.hasOwnProperty.call(i,A)&&e.indexOf(A)<0&&(t[A]=i[A]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function"){var r=0;for(A=Object.getOwnPropertySymbols(i);r<A.length;r++)e.indexOf(A[r])<0&&Object.prototype.propertyIsEnumerable.call(i,A[r])&&(t[A[r]]=i[A[r]])}return t}function ic(i,e,t,A){const r=t.value,n={ee:e,ot:i,Vt:[r,r,r,r],zb:A};return t.color!==void 0&&(n.V=t.color),n}function w0(i,e,t,A){const r=t.value,n={ee:e,ot:i,Vt:[r,r,r,r],zb:A};return t.lineColor!==void 0&&(n.lt=t.lineColor),t.topColor!==void 0&&(n.Ps=t.topColor),t.bottomColor!==void 0&&(n.Rs=t.bottomColor),n}function B0(i,e,t,A){const r=t.value,n={ee:e,ot:i,Vt:[r,r,r,r],zb:A};return t.topLineColor!==void 0&&(n.Re=t.topLineColor),t.bottomLineColor!==void 0&&(n.De=t.bottomLineColor),t.topFillColor1!==void 0&&(n.ke=t.topFillColor1),t.topFillColor2!==void 0&&(n.ye=t.topFillColor2),t.bottomFillColor1!==void 0&&(n.Ce=t.bottomFillColor1),t.bottomFillColor2!==void 0&&(n.Te=t.bottomFillColor2),n}function y0(i,e,t,A){const r={ee:e,ot:i,Vt:[t.open,t.high,t.low,t.close],zb:A};return t.color!==void 0&&(r.V=t.color),r}function C0(i,e,t,A){const r={ee:e,ot:i,Vt:[t.open,t.high,t.low,t.close],zb:A};return t.color!==void 0&&(r.V=t.color),t.borderColor!==void 0&&(r.Ot=t.borderColor),t.wickColor!==void 0&&(r.Xh=t.wickColor),r}function v0(i,e,t,A,r){const n=Vt(r)(t),s=Math.max(...n),o=Math.min(...n),l=n[n.length-1],c=[l,s,o,l],h=t,{time:g,color:C}=h;return{ee:e,ot:i,Vt:c,zb:A,$e:Ac(h,["time","color"]),V:C}}function jr(i){return i.Vt!==void 0}function rc(i,e){return e.customValues!==void 0&&(i.jb=e.customValues),i}function ri(i){return(e,t,A,r,n,s)=>(function(o,l){return l?l(o):(c=o).open===void 0&&c.value===void 0;var c})(A,s)?rc({ot:e,ee:t,zb:r},A):rc(i(e,t,A,r,n),A)}function nc(i){return{Candlestick:ri(C0),Bar:ri(y0),Area:ri(w0),Baseline:ri(B0),Histogram:ri(ic),Line:ri(ic),Custom:ri(v0)}[i]}function sc(i){return{ee:0,Hb:new Map,la:i}}function oc(i,e){if(i!==void 0&&i.length!==0)return{$b:e.key(i[0].ot),Ub:e.key(i[i.length-1].ot)}}function ac(i){let e;return i.forEach((t=>{e===void 0&&(e=t.zb)})),Vt(e)}class T0{constructor(e){this.qb=new Map,this.Yb=new Map,this.Zb=new Map,this.Xb=[],this.q_=e}S(){this.qb.clear(),this.Yb.clear(),this.Zb.clear(),this.Xb=[]}Kb(e,t){let A=this.qb.size!==0,r=!1;const n=this.Yb.get(e);if(n!==void 0)if(this.Yb.size===1)A=!1,r=!0,this.qb.clear();else for(const l of this.Xb)l.pointData.Hb.delete(e)&&(r=!0);let s=[];if(t.length!==0){const l=t.map((x=>x.time)),c=this.q_.createConverterToInternalObj(t),h=nc(e.Qh()),g=e.Ca(),C=e.Ta();s=t.map(((x,b)=>{const v=c(x.time),U=this.q_.key(v);let F=this.qb.get(U);F===void 0&&(F=sc(v),this.qb.set(U,F),r=!0);const M=h(v,F.ee,x,l[b],g,C);return F.Hb.set(e,M),M}))}A&&this.Gb(),this.Jb(e,s);let o=-1;if(r){const l=[];this.qb.forEach((c=>{l.push({timeWeight:0,time:c.la,pointData:c,originalTime:ac(c.Hb)})})),l.sort(((c,h)=>this.q_.key(c.time)-this.q_.key(h.time))),o=this.Qb(l)}return this.tw(e,o,(function(l,c,h){const g=oc(l,h),C=oc(c,h);if(g!==void 0&&C!==void 0)return{ta:g.Ub>=C.Ub&&g.$b>=C.$b}})(this.Yb.get(e),n,this.q_))}vd(e){return this.Kb(e,[])}iw(e,t){const A=t;(function(v){v.zb===void 0&&(v.zb=v.time)})(A),this.q_.preprocessData(t);const r=this.q_.createConverterToInternalObj([t])(t.time),n=this.Zb.get(e);if(n!==void 0&&this.q_.key(r)<this.q_.key(n))throw new Error(`Cannot update oldest data, last time=${n}, new time=${r}`);let s=this.qb.get(this.q_.key(r));const o=s===void 0;s===void 0&&(s=sc(r),this.qb.set(this.q_.key(r),s));const l=nc(e.Qh()),c=e.Ca(),h=e.Ta(),g=l(r,s.ee,t,A.zb,c,h);s.Hb.set(e,g),this.nw(e,g);const C={ta:jr(g)};if(!o)return this.tw(e,-1,C);const x={timeWeight:0,time:s.la,pointData:s,originalTime:ac(s.Hb)},b=Ri(this.Xb,this.q_.key(x.time),((v,U)=>this.q_.key(v.time)<U));this.Xb.splice(b,0,x);for(let v=b;v<this.Xb.length;++v)Ao(this.Xb[v].pointData,v);return this.q_.fillWeightsForPoints(this.Xb,b),this.tw(e,b,C)}nw(e,t){let A=this.Yb.get(e);A===void 0&&(A=[],this.Yb.set(e,A));const r=A.length!==0?A[A.length-1]:null;r===null||this.q_.key(t.ot)>this.q_.key(r.ot)?jr(t)&&A.push(t):jr(t)?A[A.length-1]=t:A.splice(-1,1),this.Zb.set(e,t.ot)}Jb(e,t){t.length!==0?(this.Yb.set(e,t.filter(jr)),this.Zb.set(e,t[t.length-1].ot)):(this.Yb.delete(e),this.Zb.delete(e))}Gb(){for(const e of this.Xb)e.pointData.Hb.size===0&&this.qb.delete(this.q_.key(e.time))}Qb(e){let t=-1;for(let A=0;A<this.Xb.length&&A<e.length;++A){const r=this.Xb[A],n=e[A];if(this.q_.key(r.time)!==this.q_.key(n.time)){t=A;break}n.timeWeight=r.timeWeight,Ao(n.pointData,A)}if(t===-1&&this.Xb.length!==e.length&&(t=Math.min(this.Xb.length,e.length)),t===-1)return-1;for(let A=t;A<e.length;++A)Ao(e[A].pointData,A);return this.q_.fillWeightsForPoints(e,t),this.Xb=e,t}sw(){if(this.Yb.size===0)return null;let e=0;return this.Yb.forEach((t=>{t.length!==0&&(e=Math.max(e,t[t.length-1].ee))})),e}tw(e,t,A){const r={ew:new Map,St:{Eu:this.sw()}};if(t!==-1)this.Yb.forEach(((n,s)=>{r.ew.set(s,{$e:n,rw:s===e?A:void 0})})),this.Yb.has(e)||r.ew.set(e,{$e:[],rw:A}),r.St.hw=this.Xb,r.St.lw=t;else{const n=this.Yb.get(e);r.ew.set(e,{$e:n||[],rw:A})}return r}}function Ao(i,e){i.ee=e,i.Hb.forEach((t=>{t.ee=e}))}function io(i){const e={value:i.Vt[3],time:i.zb};return i.jb!==void 0&&(e.customValues=i.jb),e}function lc(i){const e=io(i);return i.V!==void 0&&(e.color=i.V),e}function x0(i){const e=io(i);return i.lt!==void 0&&(e.lineColor=i.lt),i.Ps!==void 0&&(e.topColor=i.Ps),i.Rs!==void 0&&(e.bottomColor=i.Rs),e}function b0(i){const e=io(i);return i.Re!==void 0&&(e.topLineColor=i.Re),i.De!==void 0&&(e.bottomLineColor=i.De),i.ke!==void 0&&(e.topFillColor1=i.ke),i.ye!==void 0&&(e.topFillColor2=i.ye),i.Ce!==void 0&&(e.bottomFillColor1=i.Ce),i.Te!==void 0&&(e.bottomFillColor2=i.Te),e}function cc(i){const e={open:i.Vt[0],high:i.Vt[1],low:i.Vt[2],close:i.Vt[3],time:i.zb};return i.jb!==void 0&&(e.customValues=i.jb),e}function Q0(i){const e=cc(i);return i.V!==void 0&&(e.color=i.V),e}function F0(i){const e=cc(i),{V:t,Ot:A,Xh:r}=i;return t!==void 0&&(e.color=t),A!==void 0&&(e.borderColor=A),r!==void 0&&(e.wickColor=r),e}function ro(i){return{Area:x0,Line:lc,Baseline:b0,Histogram:lc,Bar:Q0,Candlestick:F0,Custom:U0}[i]}function U0(i){const e=i.zb;return Object.assign(Object.assign({},i.$e),{time:e})}const S0={vertLine:{color:"#9598A1",width:1,style:3,visible:!0,labelVisible:!0,labelBackgroundColor:"#131722"},horzLine:{color:"#9598A1",width:1,style:3,visible:!0,labelVisible:!0,labelBackgroundColor:"#131722"},mode:1},E0={vertLines:{color:"#D6DCDE",style:0,visible:!0},horzLines:{color:"#D6DCDE",style:0,visible:!0}},L0={background:{type:"solid",color:"#FFFFFF"},textColor:"#191919",fontSize:12,fontFamily:Ts,attributionLogo:!0},no={autoScale:!0,mode:0,invertScale:!1,alignLabels:!0,borderVisible:!0,borderColor:"#2B2B43",entireTextOnly:!1,visible:!1,ticksVisible:!1,scaleMargins:{bottom:.1,top:.2},minimumWidth:0},M0={rightOffset:0,barSpacing:6,minBarSpacing:.5,fixLeftEdge:!1,fixRightEdge:!1,lockVisibleTimeRangeOnResize:!1,rightBarStaysOnScroll:!1,borderVisible:!0,borderColor:"#2B2B43",visible:!0,timeVisible:!1,secondsVisible:!0,shiftVisibleRangeOnNewBar:!0,allowShiftVisibleRangeOnWhitespaceReplacement:!1,ticksVisible:!1,uniformDistribution:!1,minimumHeight:0,allowBoldLabels:!0},H0={color:"rgba(0, 0, 0, 0)",visible:!1,fontSize:48,fontFamily:Ts,fontStyle:"",text:"",horzAlign:"center",vertAlign:"center"};function hc(){return{width:0,height:0,autoSize:!1,layout:L0,crosshair:S0,grid:E0,overlayPriceScales:Object.assign({},no),leftPriceScale:Object.assign(Object.assign({},no),{visible:!1}),rightPriceScale:Object.assign(Object.assign({},no),{visible:!0}),timeScale:M0,watermark:H0,localization:{locale:vi?navigator.language:"",dateFormat:"dd MMM 'yy"},handleScroll:{mouseWheel:!0,pressedMouseMove:!0,horzTouchDrag:!0,vertTouchDrag:!0},handleScale:{axisPressedMouseMove:{time:!0,price:!0},axisDoubleClickReset:{time:!0,price:!0},mouseWheel:!0,pinch:!0},kineticScroll:{mouse:!1,touch:!0},trackingMode:{exitMode:1}}}class I0{constructor(e,t){this.aw=e,this.ow=t}applyOptions(e){this.aw.$t().$c(this.ow,e)}options(){return this.Li().W()}width(){return Nr(this.ow)?this.aw.Mb(this.ow):0}Li(){return Le(this.aw.$t().Uc(this.ow)).Dt}}function uc(i,e,t){const A=Ac(i,["time","originalTime"]),r=Object.assign({time:e},A);return t!==void 0&&(r.originalTime=t),r}const D0={color:"#FF0000",price:0,lineStyle:2,lineWidth:1,lineVisible:!0,axisLabelVisible:!0,title:"",axisLabelColor:"",axisLabelTextColor:""};class _0{constructor(e){this.Nh=e}applyOptions(e){this.Nh.$h(e)}options(){return this.Nh.W()}_w(){return this.Nh}}class P0{constructor(e,t,A,r,n){this.uw=new Bt,this.Es=e,this.cw=t,this.dw=A,this.q_=n,this.fw=r}S(){this.uw.S()}priceFormatter(){return this.Es.ba()}priceToCoordinate(e){const t=this.Es.Ct();return t===null?null:this.Es.Dt().Rt(e,t.Vt)}coordinateToPrice(e){const t=this.Es.Ct();return t===null?null:this.Es.Dt().pn(e,t.Vt)}barsInLogicalRange(e){if(e===null)return null;const t=new Ci(new qi(e.from,e.to)).lu(),A=this.Es.In();if(A.Ni())return null;const r=A.ll(t.Os(),1),n=A.ll(t.ui(),-1),s=Le(A.el()),o=Le(A.An());if(r!==null&&n!==null&&r.ee>n.ee)return{barsBefore:e.from-s,barsAfter:o-e.to};const l={barsBefore:r===null||r.ee===s?e.from-s:r.ee-s,barsAfter:n===null||n.ee===o?o-e.to:o-n.ee};return r!==null&&n!==null&&(l.from=r.zb,l.to=n.zb),l}setData(e){this.q_,this.Es.Qh(),this.cw.pw(this.Es,e),this.mw("full")}update(e){this.Es.Qh(),this.cw.bw(this.Es,e),this.mw("update")}dataByIndex(e,t){const A=this.Es.In().ll(e,t);return A===null?null:ro(this.seriesType())(A)}data(){const e=ro(this.seriesType());return this.Es.In().ne().map((t=>e(t)))}subscribeDataChanged(e){this.uw.l(e)}unsubscribeDataChanged(e){this.uw.v(e)}setMarkers(e){this.q_;const t=e.map((A=>uc(A,this.q_.convertHorzItemToInternal(A.time),A.time)));this.Es.na(t)}markers(){return this.Es.sa().map((e=>uc(e,e.originalTime,void 0)))}applyOptions(e){this.Es.$h(e)}options(){return MA(this.Es.W())}priceScale(){return this.dw.priceScale(this.Es.Dt().Pa())}createPriceLine(e){const t=uA(MA(D0),e),A=this.Es.ea(t);return new _0(A)}removePriceLine(e){this.Es.ra(e._w())}seriesType(){return this.Es.Qh()}attachPrimitive(e){this.Es.ka(e),e.attached&&e.attached({chart:this.fw,series:this,requestUpdate:()=>this.Es.$t().Kl()})}detachPrimitive(e){this.Es.ya(e),e.detached&&e.detached()}mw(e){this.uw.M()&&this.uw.m(e)}}class k0{constructor(e,t,A){this.ww=new Bt,this.mu=new Bt,this.Om=new Bt,this.$i=e,this.yl=e.St(),this.ab=t,this.yl.nc().l(this.gw.bind(this)),this.yl.sc().l(this.Mw.bind(this)),this.ab.Nm().l(this.xw.bind(this)),this.q_=A}S(){this.yl.nc().p(this),this.yl.sc().p(this),this.ab.Nm().p(this),this.ww.S(),this.mu.S(),this.Om.S()}scrollPosition(){return this.yl.Hu()}scrollToPosition(e,t){t?this.yl.Ju(e,1e3):this.$i.Jn(e)}scrollToRealTime(){this.yl.Gu()}getVisibleRange(){const e=this.yl.Vu();return e===null?null:{from:e.from.originalTime,to:e.to.originalTime}}setVisibleRange(e){const t={from:this.q_.convertHorzItemToInternal(e.from),to:this.q_.convertHorzItemToInternal(e.to)},A=this.yl.Iu(t);this.$i.pd(A)}getVisibleLogicalRange(){const e=this.yl.Du();return e===null?null:{from:e.Os(),to:e.ui()}}setVisibleLogicalRange(e){kA(e.from<=e.to,"The from index cannot be after the to index."),this.$i.pd(e)}resetTimeScale(){this.$i.Kn()}fitContent(){this.$i.hc()}logicalToCoordinate(e){const t=this.$i.St();return t.Ni()?null:t.It(e)}coordinateToLogical(e){return this.yl.Ni()?null:this.yl.Nu(e)}timeToCoordinate(e){const t=this.q_.convertHorzItemToInternal(e),A=this.yl.Va(t,!1);return A===null?null:this.yl.It(A)}coordinateToTime(e){const t=this.$i.St(),A=t.Nu(e),r=t.Ui(A);return r===null?null:r.originalTime}width(){return this.ab.um().width}height(){return this.ab.um().height}subscribeVisibleTimeRangeChange(e){this.ww.l(e)}unsubscribeVisibleTimeRangeChange(e){this.ww.v(e)}subscribeVisibleLogicalRangeChange(e){this.mu.l(e)}unsubscribeVisibleLogicalRangeChange(e){this.mu.v(e)}subscribeSizeChange(e){this.Om.l(e)}unsubscribeSizeChange(e){this.Om.v(e)}applyOptions(e){this.yl.$h(e)}options(){return Object.assign(Object.assign({},MA(this.yl.W())),{barSpacing:this.yl.le()})}gw(){this.ww.M()&&this.ww.m(this.getVisibleRange())}Mw(){this.mu.M()&&this.mu.m(this.getVisibleLogicalRange())}xw(e){this.Om.m(e.width,e.height)}}function N0(i){if(i===void 0||i.type==="custom")return;const e=i;e.minMove!==void 0&&e.precision===void 0&&(e.precision=(function(t){if(t>=1)return 0;let A=0;for(;A<8;A++){const r=Math.round(t);if(Math.abs(r-t)<1e-8)return A;t*=10}return A})(e.minMove))}function dc(i){return(function(e){if(_r(e.handleScale)){const A=e.handleScale;e.handleScale={axisDoubleClickReset:{time:A,price:A},axisPressedMouseMove:{time:A,price:A},mouseWheel:A,pinch:A}}else if(e.handleScale!==void 0){const{axisPressedMouseMove:A,axisDoubleClickReset:r}=e.handleScale;_r(A)&&(e.handleScale.axisPressedMouseMove={time:A,price:A}),_r(r)&&(e.handleScale.axisDoubleClickReset={time:r,price:r})}const t=e.handleScroll;_r(t)&&(e.handleScroll={horzTouchDrag:t,vertTouchDrag:t,mouseWheel:t,pressedMouseMove:t})})(i),i}class O0{constructor(e,t,A){this.Sw=new Map,this.kw=new Map,this.yw=new Bt,this.Cw=new Bt,this.Tw=new Bt,this.Pw=new T0(t);const r=A===void 0?MA(hc()):uA(MA(hc()),dc(A));this.q_=t,this.aw=new g0(e,r,t),this.aw.lm().l((s=>{this.yw.M()&&this.yw.m(this.Rw(s()))}),this),this.aw.am().l((s=>{this.Cw.M()&&this.Cw.m(this.Rw(s()))}),this),this.aw.Xc().l((s=>{this.Tw.M()&&this.Tw.m(this.Rw(s()))}),this);const n=this.aw.$t();this.Dw=new k0(n,this.aw.fb(),this.q_)}remove(){this.aw.lm().p(this),this.aw.am().p(this),this.aw.Xc().p(this),this.Dw.S(),this.aw.S(),this.Sw.clear(),this.kw.clear(),this.yw.S(),this.Cw.S(),this.Tw.S(),this.Pw.S()}resize(e,t,A){this.autoSizeActive()||this.aw._b(e,t,A)}addCustomSeries(e,t){const A=wi(e),r=Object.assign(Object.assign({},Xa),A.defaultOptions());return this.Vw("Custom",r,t,A)}addAreaSeries(e){return this.Vw("Area",vp,e)}addBaselineSeries(e){return this.Vw("Baseline",Tp,e)}addBarSeries(e){return this.Vw("Bar",yp,e)}addCandlestickSeries(e={}){return(function(t){t.borderColor!==void 0&&(t.borderUpColor=t.borderColor,t.borderDownColor=t.borderColor),t.wickColor!==void 0&&(t.wickUpColor=t.wickColor,t.wickDownColor=t.wickColor)})(e),this.Vw("Candlestick",Bp,e)}addHistogramSeries(e){return this.Vw("Histogram",xp,e)}addLineSeries(e){return this.Vw("Line",Cp,e)}removeSeries(e){const t=Vt(this.Sw.get(e)),A=this.Pw.vd(t);this.aw.$t().vd(t),this.Ow(A),this.Sw.delete(e),this.kw.delete(t)}pw(e,t){this.Ow(this.Pw.Kb(e,t))}bw(e,t){this.Ow(this.Pw.iw(e,t))}subscribeClick(e){this.yw.l(e)}unsubscribeClick(e){this.yw.v(e)}subscribeCrosshairMove(e){this.Tw.l(e)}unsubscribeCrosshairMove(e){this.Tw.v(e)}subscribeDblClick(e){this.Cw.l(e)}unsubscribeDblClick(e){this.Cw.v(e)}priceScale(e){return new I0(this.aw,e)}timeScale(){return this.Dw}applyOptions(e){this.aw.$h(dc(e))}options(){return this.aw.W()}takeScreenshot(){return this.aw.wb()}autoSizeActive(){return this.aw.kb()}chartElement(){return this.aw.yb()}paneSize(){const e=this.aw.Tb();return{height:e.height,width:e.width}}setCrosshairPosition(e,t,A){const r=this.Sw.get(A);if(r===void 0)return;const n=this.aw.$t().dr(r);n!==null&&this.aw.$t().ad(e,t,n)}clearCrosshairPosition(){this.aw.$t().od(!0)}Vw(e,t,A={},r){N0(A.priceFormat);const n=uA(MA(Za),MA(t),A),s=this.aw.$t().dd(e,n,r),o=new P0(s,this,this,this,this.q_);return this.Sw.set(o,s),this.kw.set(s,o),o}Ow(e){const t=this.aw.$t();t._d(e.St.Eu,e.St.hw,e.St.lw),e.ew.forEach(((A,r)=>r.J(A.$e,A.rw))),t.Wu()}Bw(e){return Vt(this.kw.get(e))}Rw(e){const t=new Map;e.Nb.forEach(((r,n)=>{const s=n.Qh(),o=ro(s)(r);if(s!=="Custom")kA(m0(o));else{const l=n.Ta();kA(!l||l(o)===!1)}t.set(this.Bw(n),o)}));const A=e.Eb!==void 0&&this.kw.has(e.Eb)?this.Bw(e.Eb):void 0;return{time:e.zb,logical:e.ee,point:e.Lb,hoveredSeries:A,hoveredObjectId:e.Fb,seriesData:t,sourceEvent:e.Wb}}}function K0(i,e,t){let A;if(zi(i)){const n=document.getElementById(i);kA(n!==null,`Cannot find element in DOM with id=${i}`),A=n}else A=i;const r=new O0(A,e,t);return e.setOptions(r.options()),r}function V0(i,e){return K0(i,new Jl,Jl.Id(e))}Object.assign(Object.assign({},Za),Xa);function pc(i,e){return function(){return i.apply(e,arguments)}}const{toString:z0}=Object.prototype,{getPrototypeOf:so}=Object,{iterator:en,toStringTag:fc}=Symbol,tn=(i=>e=>{const t=z0.call(e);return i[t]||(i[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),pA=i=>(i=i.toLowerCase(),e=>tn(e)===i),An=i=>e=>typeof e===i,{isArray:xi}=Array,bi=An("undefined");function ji(i){return i!==null&&!bi(i)&&i.constructor!==null&&!bi(i.constructor)&&Xt(i.constructor.isBuffer)&&i.constructor.isBuffer(i)}const gc=pA("ArrayBuffer");function W0(i){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(i):e=i&&i.buffer&&gc(i.buffer),e}const R0=An("string"),Xt=An("function"),mc=An("number"),er=i=>i!==null&&typeof i=="object",G0=i=>i===!0||i===!1,rn=i=>{if(tn(i)!=="object")return!1;const e=so(i);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(fc in i)&&!(en in i)},$0=i=>{if(!er(i)||ji(i))return!1;try{return Object.keys(i).length===0&&Object.getPrototypeOf(i)===Object.prototype}catch{return!1}},X0=pA("Date"),Z0=pA("File"),J0=pA("Blob"),Y0=pA("FileList"),q0=i=>er(i)&&Xt(i.pipe),j0=i=>{let e;return i&&(typeof FormData=="function"&&i instanceof FormData||Xt(i.append)&&((e=tn(i))==="formdata"||e==="object"&&Xt(i.toString)&&i.toString()==="[object FormData]"))},e1=pA("URLSearchParams"),[t1,A1,i1,r1]=["ReadableStream","Request","Response","Headers"].map(pA),n1=i=>i.trim?i.trim():i.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function tr(i,e,{allOwnKeys:t=!1}={}){if(i===null||typeof i>"u")return;let A,r;if(typeof i!="object"&&(i=[i]),xi(i))for(A=0,r=i.length;A<r;A++)e.call(null,i[A],A,i);else{if(ji(i))return;const n=t?Object.getOwnPropertyNames(i):Object.keys(i),s=n.length;let o;for(A=0;A<s;A++)o=n[A],e.call(null,i[o],o,i)}}function wc(i,e){if(ji(i))return null;e=e.toLowerCase();const t=Object.keys(i);let A=t.length,r;for(;A-- >0;)if(r=t[A],e===r.toLowerCase())return r;return null}const ni=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Bc=i=>!bi(i)&&i!==ni;function oo(){const{caseless:i,skipUndefined:e}=Bc(this)&&this||{},t={},A=(r,n)=>{if(n==="__proto__"||n==="constructor"||n==="prototype")return;const s=i&&wc(t,n)||n;rn(t[s])&&rn(r)?t[s]=oo(t[s],r):rn(r)?t[s]=oo({},r):xi(r)?t[s]=r.slice():(!e||!bi(r))&&(t[s]=r)};for(let r=0,n=arguments.length;r<n;r++)arguments[r]&&tr(arguments[r],A);return t}const s1=(i,e,t,{allOwnKeys:A}={})=>(tr(e,(r,n)=>{t&&Xt(r)?Object.defineProperty(i,n,{value:pc(r,t),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(i,n,{value:r,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:A}),i),o1=i=>(i.charCodeAt(0)===65279&&(i=i.slice(1)),i),a1=(i,e,t,A)=>{i.prototype=Object.create(e.prototype,A),Object.defineProperty(i.prototype,"constructor",{value:i,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(i,"super",{value:e.prototype}),t&&Object.assign(i.prototype,t)},l1=(i,e,t,A)=>{let r,n,s;const o={};if(e=e||{},i==null)return e;do{for(r=Object.getOwnPropertyNames(i),n=r.length;n-- >0;)s=r[n],(!A||A(s,i,e))&&!o[s]&&(e[s]=i[s],o[s]=!0);i=t!==!1&&so(i)}while(i&&(!t||t(i,e))&&i!==Object.prototype);return e},c1=(i,e,t)=>{i=String(i),(t===void 0||t>i.length)&&(t=i.length),t-=e.length;const A=i.indexOf(e,t);return A!==-1&&A===t},h1=i=>{if(!i)return null;if(xi(i))return i;let e=i.length;if(!mc(e))return null;const t=new Array(e);for(;e-- >0;)t[e]=i[e];return t},u1=(i=>e=>i&&e instanceof i)(typeof Uint8Array<"u"&&so(Uint8Array)),d1=(i,e)=>{const A=(i&&i[en]).call(i);let r;for(;(r=A.next())&&!r.done;){const n=r.value;e.call(i,n[0],n[1])}},p1=(i,e)=>{let t;const A=[];for(;(t=i.exec(e))!==null;)A.push(t);return A},f1=pA("HTMLFormElement"),g1=i=>i.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,A,r){return A.toUpperCase()+r}),yc=(({hasOwnProperty:i})=>(e,t)=>i.call(e,t))(Object.prototype),m1=pA("RegExp"),Cc=(i,e)=>{const t=Object.getOwnPropertyDescriptors(i),A={};tr(t,(r,n)=>{let s;(s=e(r,n,i))!==!1&&(A[n]=s||r)}),Object.defineProperties(i,A)},w1=i=>{Cc(i,(e,t)=>{if(Xt(i)&&["arguments","caller","callee"].indexOf(t)!==-1)return!1;const A=i[t];if(Xt(A)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},B1=(i,e)=>{const t={},A=r=>{r.forEach(n=>{t[n]=!0})};return xi(i)?A(i):A(String(i).split(e)),t},y1=()=>{},C1=(i,e)=>i!=null&&Number.isFinite(i=+i)?i:e;function v1(i){return!!(i&&Xt(i.append)&&i[fc]==="FormData"&&i[en])}const T1=i=>{const e=new Array(10),t=(A,r)=>{if(er(A)){if(e.indexOf(A)>=0)return;if(ji(A))return A;if(!("toJSON"in A)){e[r]=A;const n=xi(A)?[]:{};return tr(A,(s,o)=>{const l=t(s,r+1);!bi(l)&&(n[o]=l)}),e[r]=void 0,n}}return A};return t(i,0)},x1=pA("AsyncFunction"),b1=i=>i&&(er(i)||Xt(i))&&Xt(i.then)&&Xt(i.catch),vc=((i,e)=>i?setImmediate:e?((t,A)=>(ni.addEventListener("message",({source:r,data:n})=>{r===ni&&n===t&&A.length&&A.shift()()},!1),r=>{A.push(r),ni.postMessage(t,"*")}))(`axios@${Math.random()}`,[]):t=>setTimeout(t))(typeof setImmediate=="function",Xt(ni.postMessage)),Q1=typeof queueMicrotask<"u"?queueMicrotask.bind(ni):typeof process<"u"&&process.nextTick||vc,pe={isArray:xi,isArrayBuffer:gc,isBuffer:ji,isFormData:j0,isArrayBufferView:W0,isString:R0,isNumber:mc,isBoolean:G0,isObject:er,isPlainObject:rn,isEmptyObject:$0,isReadableStream:t1,isRequest:A1,isResponse:i1,isHeaders:r1,isUndefined:bi,isDate:X0,isFile:Z0,isBlob:J0,isRegExp:m1,isFunction:Xt,isStream:q0,isURLSearchParams:e1,isTypedArray:u1,isFileList:Y0,forEach:tr,merge:oo,extend:s1,trim:n1,stripBOM:o1,inherits:a1,toFlatObject:l1,kindOf:tn,kindOfTest:pA,endsWith:c1,toArray:h1,forEachEntry:d1,matchAll:p1,isHTMLForm:f1,hasOwnProperty:yc,hasOwnProp:yc,reduceDescriptors:Cc,freezeMethods:w1,toObjectSet:B1,toCamelCase:g1,noop:y1,toFiniteNumber:C1,findKey:wc,global:ni,isContextDefined:Bc,isSpecCompliantForm:v1,toJSONObject:T1,isAsyncFn:x1,isThenable:b1,setImmediate:vc,asap:Q1,isIterable:i=>i!=null&&Xt(i[en])};let Xe=class Ap extends Error{static from(e,t,A,r,n,s){const o=new Ap(e.message,t||e.code,A,r,n);return o.cause=e,o.name=e.name,s&&Object.assign(o,s),o}constructor(e,t,A,r,n){super(e),this.name="AxiosError",this.isAxiosError=!0,t&&(this.code=t),A&&(this.config=A),r&&(this.request=r),n&&(this.response=n,this.status=n.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:pe.toJSONObject(this.config),code:this.code,status:this.status}}};Xe.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",Xe.ERR_BAD_OPTION="ERR_BAD_OPTION",Xe.ECONNABORTED="ECONNABORTED",Xe.ETIMEDOUT="ETIMEDOUT",Xe.ERR_NETWORK="ERR_NETWORK",Xe.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",Xe.ERR_DEPRECATED="ERR_DEPRECATED",Xe.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",Xe.ERR_BAD_REQUEST="ERR_BAD_REQUEST",Xe.ERR_CANCELED="ERR_CANCELED",Xe.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",Xe.ERR_INVALID_URL="ERR_INVALID_URL";const F1=null;function ao(i){return pe.isPlainObject(i)||pe.isArray(i)}function Tc(i){return pe.endsWith(i,"[]")?i.slice(0,-2):i}function xc(i,e,t){return i?i.concat(e).map(function(r,n){return r=Tc(r),!t&&n?"["+r+"]":r}).join(t?".":""):e}function U1(i){return pe.isArray(i)&&!i.some(ao)}const S1=pe.toFlatObject(pe,{},null,function(e){return/^is[A-Z]/.test(e)});function nn(i,e,t){if(!pe.isObject(i))throw new TypeError("target must be an object");e=e||new FormData,t=pe.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(v,U){return!pe.isUndefined(U[v])});const A=t.metaTokens,r=t.visitor||h,n=t.dots,s=t.indexes,l=(t.Blob||typeof Blob<"u"&&Blob)&&pe.isSpecCompliantForm(e);if(!pe.isFunction(r))throw new TypeError("visitor must be a function");function c(b){if(b===null)return"";if(pe.isDate(b))return b.toISOString();if(pe.isBoolean(b))return b.toString();if(!l&&pe.isBlob(b))throw new Xe("Blob is not supported. Use a Buffer instead.");return pe.isArrayBuffer(b)||pe.isTypedArray(b)?l&&typeof Blob=="function"?new Blob([b]):Buffer.from(b):b}function h(b,v,U){let F=b;if(b&&!U&&typeof b=="object"){if(pe.endsWith(v,"{}"))v=A?v:v.slice(0,-2),b=JSON.stringify(b);else if(pe.isArray(b)&&U1(b)||(pe.isFileList(b)||pe.endsWith(v,"[]"))&&(F=pe.toArray(b)))return v=Tc(v),F.forEach(function(N,R){!(pe.isUndefined(N)||N===null)&&e.append(s===!0?xc([v],R,n):s===null?v:v+"[]",c(N))}),!1}return ao(b)?!0:(e.append(xc(U,v,n),c(b)),!1)}const g=[],C=Object.assign(S1,{defaultVisitor:h,convertValue:c,isVisitable:ao});function x(b,v){if(!pe.isUndefined(b)){if(g.indexOf(b)!==-1)throw Error("Circular reference detected in "+v.join("."));g.push(b),pe.forEach(b,function(F,M){(!(pe.isUndefined(F)||F===null)&&r.call(e,F,pe.isString(M)?M.trim():M,v,C))===!0&&x(F,v?v.concat(M):[M])}),g.pop()}}if(!pe.isObject(i))throw new TypeError("data must be an object");return x(i),e}function bc(i){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(i).replace(/[!'()~]|%20|%00/g,function(A){return e[A]})}function lo(i,e){this._pairs=[],i&&nn(i,this,e)}const Qc=lo.prototype;Qc.append=function(e,t){this._pairs.push([e,t])},Qc.toString=function(e){const t=e?function(A){return e.call(this,A,bc)}:bc;return this._pairs.map(function(r){return t(r[0])+"="+t(r[1])},"").join("&")};function E1(i){return encodeURIComponent(i).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Fc(i,e,t){if(!e)return i;const A=t&&t.encode||E1,r=pe.isFunction(t)?{serialize:t}:t,n=r&&r.serialize;let s;if(n?s=n(e,r):s=pe.isURLSearchParams(e)?e.toString():new lo(e,r).toString(A),s){const o=i.indexOf("#");o!==-1&&(i=i.slice(0,o)),i+=(i.indexOf("?")===-1?"?":"&")+s}return i}class Uc{constructor(){this.handlers=[]}use(e,t,A){return this.handlers.push({fulfilled:e,rejected:t,synchronous:A?A.synchronous:!1,runWhen:A?A.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){pe.forEach(this.handlers,function(A){A!==null&&e(A)})}}const co={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},L1={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:lo,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},ho=typeof window<"u"&&typeof document<"u",uo=typeof navigator=="object"&&navigator||void 0,M1=ho&&(!uo||["ReactNative","NativeScript","NS"].indexOf(uo.product)<0),H1=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",I1=ho&&window.location.href||"http://localhost",kt={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ho,hasStandardBrowserEnv:M1,hasStandardBrowserWebWorkerEnv:H1,navigator:uo,origin:I1},Symbol.toStringTag,{value:"Module"})),...L1};function D1(i,e){return nn(i,new kt.classes.URLSearchParams,{visitor:function(t,A,r,n){return kt.isNode&&pe.isBuffer(t)?(this.append(A,t.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)},...e})}function _1(i){return pe.matchAll(/\w+|\[(\w*)]/g,i).map(e=>e[0]==="[]"?"":e[1]||e[0])}function P1(i){const e={},t=Object.keys(i);let A;const r=t.length;let n;for(A=0;A<r;A++)n=t[A],e[n]=i[n];return e}function Sc(i){function e(t,A,r,n){let s=t[n++];if(s==="__proto__")return!0;const o=Number.isFinite(+s),l=n>=t.length;return s=!s&&pe.isArray(r)?r.length:s,l?(pe.hasOwnProp(r,s)?r[s]=[r[s],A]:r[s]=A,!o):((!r[s]||!pe.isObject(r[s]))&&(r[s]=[]),e(t,A,r[s],n)&&pe.isArray(r[s])&&(r[s]=P1(r[s])),!o)}if(pe.isFormData(i)&&pe.isFunction(i.entries)){const t={};return pe.forEachEntry(i,(A,r)=>{e(_1(A),r,t,0)}),t}return null}function k1(i,e,t){if(pe.isString(i))try{return(e||JSON.parse)(i),pe.trim(i)}catch(A){if(A.name!=="SyntaxError")throw A}return(t||JSON.stringify)(i)}const Ar={transitional:co,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const A=t.getContentType()||"",r=A.indexOf("application/json")>-1,n=pe.isObject(e);if(n&&pe.isHTMLForm(e)&&(e=new FormData(e)),pe.isFormData(e))return r?JSON.stringify(Sc(e)):e;if(pe.isArrayBuffer(e)||pe.isBuffer(e)||pe.isStream(e)||pe.isFile(e)||pe.isBlob(e)||pe.isReadableStream(e))return e;if(pe.isArrayBufferView(e))return e.buffer;if(pe.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(n){if(A.indexOf("application/x-www-form-urlencoded")>-1)return D1(e,this.formSerializer).toString();if((o=pe.isFileList(e))||A.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return nn(o?{"files[]":e}:e,l&&new l,this.formSerializer)}}return n||r?(t.setContentType("application/json",!1),k1(e)):e}],transformResponse:[function(e){const t=this.transitional||Ar.transitional,A=t&&t.forcedJSONParsing,r=this.responseType==="json";if(pe.isResponse(e)||pe.isReadableStream(e))return e;if(e&&pe.isString(e)&&(A&&!this.responseType||r)){const s=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e,this.parseReviver)}catch(o){if(s)throw o.name==="SyntaxError"?Xe.from(o,Xe.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:kt.classes.FormData,Blob:kt.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};pe.forEach(["delete","get","head","post","put","patch"],i=>{Ar.headers[i]={}});const N1=pe.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),O1=i=>{const e={};let t,A,r;return i&&i.split(`
|
|
2
|
+
`).forEach(function(s){r=s.indexOf(":"),t=s.substring(0,r).trim().toLowerCase(),A=s.substring(r+1).trim(),!(!t||e[t]&&N1[t])&&(t==="set-cookie"?e[t]?e[t].push(A):e[t]=[A]:e[t]=e[t]?e[t]+", "+A:A)}),e},Ec=Symbol("internals");function ir(i){return i&&String(i).trim().toLowerCase()}function sn(i){return i===!1||i==null?i:pe.isArray(i)?i.map(sn):String(i)}function K1(i){const e=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let A;for(;A=t.exec(i);)e[A[1]]=A[2];return e}const V1=i=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(i.trim());function po(i,e,t,A,r){if(pe.isFunction(A))return A.call(this,e,t);if(r&&(e=t),!!pe.isString(e)){if(pe.isString(A))return e.indexOf(A)!==-1;if(pe.isRegExp(A))return A.test(e)}}function z1(i){return i.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,A)=>t.toUpperCase()+A)}function W1(i,e){const t=pe.toCamelCase(" "+e);["get","set","has"].forEach(A=>{Object.defineProperty(i,A+t,{value:function(r,n,s){return this[A].call(this,e,r,n,s)},configurable:!0})})}let Zt=class{constructor(e){e&&this.set(e)}set(e,t,A){const r=this;function n(o,l,c){const h=ir(l);if(!h)throw new Error("header name must be a non-empty string");const g=pe.findKey(r,h);(!g||r[g]===void 0||c===!0||c===void 0&&r[g]!==!1)&&(r[g||l]=sn(o))}const s=(o,l)=>pe.forEach(o,(c,h)=>n(c,h,l));if(pe.isPlainObject(e)||e instanceof this.constructor)s(e,t);else if(pe.isString(e)&&(e=e.trim())&&!V1(e))s(O1(e),t);else if(pe.isObject(e)&&pe.isIterable(e)){let o={},l,c;for(const h of e){if(!pe.isArray(h))throw TypeError("Object iterator must return a key-value pair");o[c=h[0]]=(l=o[c])?pe.isArray(l)?[...l,h[1]]:[l,h[1]]:h[1]}s(o,t)}else e!=null&&n(t,e,A);return this}get(e,t){if(e=ir(e),e){const A=pe.findKey(this,e);if(A){const r=this[A];if(!t)return r;if(t===!0)return K1(r);if(pe.isFunction(t))return t.call(this,r,A);if(pe.isRegExp(t))return t.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=ir(e),e){const A=pe.findKey(this,e);return!!(A&&this[A]!==void 0&&(!t||po(this,this[A],A,t)))}return!1}delete(e,t){const A=this;let r=!1;function n(s){if(s=ir(s),s){const o=pe.findKey(A,s);o&&(!t||po(A,A[o],o,t))&&(delete A[o],r=!0)}}return pe.isArray(e)?e.forEach(n):n(e),r}clear(e){const t=Object.keys(this);let A=t.length,r=!1;for(;A--;){const n=t[A];(!e||po(this,this[n],n,e,!0))&&(delete this[n],r=!0)}return r}normalize(e){const t=this,A={};return pe.forEach(this,(r,n)=>{const s=pe.findKey(A,n);if(s){t[s]=sn(r),delete t[n];return}const o=e?z1(n):String(n).trim();o!==n&&delete t[n],t[o]=sn(r),A[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return pe.forEach(this,(A,r)=>{A!=null&&A!==!1&&(t[r]=e&&pe.isArray(A)?A.join(", "):A)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join(`
|
|
3
|
+
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const A=new this(e);return t.forEach(r=>A.set(r)),A}static accessor(e){const A=(this[Ec]=this[Ec]={accessors:{}}).accessors,r=this.prototype;function n(s){const o=ir(s);A[o]||(W1(r,s),A[o]=!0)}return pe.isArray(e)?e.forEach(n):n(e),this}};Zt.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),pe.reduceDescriptors(Zt.prototype,({value:i},e)=>{let t=e[0].toUpperCase()+e.slice(1);return{get:()=>i,set(A){this[t]=A}}}),pe.freezeMethods(Zt);function fo(i,e){const t=this||Ar,A=e||t,r=Zt.from(A.headers);let n=A.data;return pe.forEach(i,function(o){n=o.call(t,n,r.normalize(),e?e.status:void 0)}),r.normalize(),n}function Lc(i){return!!(i&&i.__CANCEL__)}let rr=class extends Xe{constructor(e,t,A){super(e??"canceled",Xe.ERR_CANCELED,t,A),this.name="CanceledError",this.__CANCEL__=!0}};function Mc(i,e,t){const A=t.config.validateStatus;!t.status||!A||A(t.status)?i(t):e(new Xe("Request failed with status code "+t.status,[Xe.ERR_BAD_REQUEST,Xe.ERR_BAD_RESPONSE][Math.floor(t.status/100)-4],t.config,t.request,t))}function R1(i){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(i);return e&&e[1]||""}function G1(i,e){i=i||10;const t=new Array(i),A=new Array(i);let r=0,n=0,s;return e=e!==void 0?e:1e3,function(l){const c=Date.now(),h=A[n];s||(s=c),t[r]=l,A[r]=c;let g=n,C=0;for(;g!==r;)C+=t[g++],g=g%i;if(r=(r+1)%i,r===n&&(n=(n+1)%i),c-s<e)return;const x=h&&c-h;return x?Math.round(C*1e3/x):void 0}}function $1(i,e){let t=0,A=1e3/e,r,n;const s=(c,h=Date.now())=>{t=h,r=null,n&&(clearTimeout(n),n=null),i(...c)};return[(...c)=>{const h=Date.now(),g=h-t;g>=A?s(c,h):(r=c,n||(n=setTimeout(()=>{n=null,s(r)},A-g)))},()=>r&&s(r)]}const on=(i,e,t=3)=>{let A=0;const r=G1(50,250);return $1(n=>{const s=n.loaded,o=n.lengthComputable?n.total:void 0,l=s-A,c=r(l),h=s<=o;A=s;const g={loaded:s,total:o,progress:o?s/o:void 0,bytes:l,rate:c||void 0,estimated:c&&o&&h?(o-s)/c:void 0,event:n,lengthComputable:o!=null,[e?"download":"upload"]:!0};i(g)},t)},Hc=(i,e)=>{const t=i!=null;return[A=>e[0]({lengthComputable:t,total:i,loaded:A}),e[1]]},Ic=i=>(...e)=>pe.asap(()=>i(...e)),X1=kt.hasStandardBrowserEnv?((i,e)=>t=>(t=new URL(t,kt.origin),i.protocol===t.protocol&&i.host===t.host&&(e||i.port===t.port)))(new URL(kt.origin),kt.navigator&&/(msie|trident)/i.test(kt.navigator.userAgent)):()=>!0,Z1=kt.hasStandardBrowserEnv?{write(i,e,t,A,r,n,s){if(typeof document>"u")return;const o=[`${i}=${encodeURIComponent(e)}`];pe.isNumber(t)&&o.push(`expires=${new Date(t).toUTCString()}`),pe.isString(A)&&o.push(`path=${A}`),pe.isString(r)&&o.push(`domain=${r}`),n===!0&&o.push("secure"),pe.isString(s)&&o.push(`SameSite=${s}`),document.cookie=o.join("; ")},read(i){if(typeof document>"u")return null;const e=document.cookie.match(new RegExp("(?:^|; )"+i+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(i){this.write(i,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function J1(i){return typeof i!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(i)}function Y1(i,e){return e?i.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):i}function Dc(i,e,t){let A=!J1(e);return i&&(A||t==!1)?Y1(i,e):e}const _c=i=>i instanceof Zt?{...i}:i;function si(i,e){e=e||{};const t={};function A(c,h,g,C){return pe.isPlainObject(c)&&pe.isPlainObject(h)?pe.merge.call({caseless:C},c,h):pe.isPlainObject(h)?pe.merge({},h):pe.isArray(h)?h.slice():h}function r(c,h,g,C){if(pe.isUndefined(h)){if(!pe.isUndefined(c))return A(void 0,c,g,C)}else return A(c,h,g,C)}function n(c,h){if(!pe.isUndefined(h))return A(void 0,h)}function s(c,h){if(pe.isUndefined(h)){if(!pe.isUndefined(c))return A(void 0,c)}else return A(void 0,h)}function o(c,h,g){if(g in e)return A(c,h);if(g in i)return A(void 0,c)}const l={url:n,method:n,data:n,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:o,headers:(c,h,g)=>r(_c(c),_c(h),g,!0)};return pe.forEach(Object.keys({...i,...e}),function(h){if(h==="__proto__"||h==="constructor"||h==="prototype")return;const g=pe.hasOwnProp(l,h)?l[h]:r,C=g(i[h],e[h],h);pe.isUndefined(C)&&g!==o||(t[h]=C)}),t}const Pc=i=>{const e=si({},i);let{data:t,withXSRFToken:A,xsrfHeaderName:r,xsrfCookieName:n,headers:s,auth:o}=e;if(e.headers=s=Zt.from(s),e.url=Fc(Dc(e.baseURL,e.url,e.allowAbsoluteUrls),i.params,i.paramsSerializer),o&&s.set("Authorization","Basic "+btoa((o.username||"")+":"+(o.password?unescape(encodeURIComponent(o.password)):""))),pe.isFormData(t)){if(kt.hasStandardBrowserEnv||kt.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(pe.isFunction(t.getHeaders)){const l=t.getHeaders(),c=["content-type","content-length"];Object.entries(l).forEach(([h,g])=>{c.includes(h.toLowerCase())&&s.set(h,g)})}}if(kt.hasStandardBrowserEnv&&(A&&pe.isFunction(A)&&(A=A(e)),A||A!==!1&&X1(e.url))){const l=r&&n&&Z1.read(n);l&&s.set(r,l)}return e},q1=typeof XMLHttpRequest<"u"&&function(i){return new Promise(function(t,A){const r=Pc(i);let n=r.data;const s=Zt.from(r.headers).normalize();let{responseType:o,onUploadProgress:l,onDownloadProgress:c}=r,h,g,C,x,b;function v(){x&&x(),b&&b(),r.cancelToken&&r.cancelToken.unsubscribe(h),r.signal&&r.signal.removeEventListener("abort",h)}let U=new XMLHttpRequest;U.open(r.method.toUpperCase(),r.url,!0),U.timeout=r.timeout;function F(){if(!U)return;const N=Zt.from("getAllResponseHeaders"in U&&U.getAllResponseHeaders()),L={data:!o||o==="text"||o==="json"?U.responseText:U.response,status:U.status,statusText:U.statusText,headers:N,config:i,request:U};Mc(function(q){t(q),v()},function(q){A(q),v()},L),U=null}"onloadend"in U?U.onloadend=F:U.onreadystatechange=function(){!U||U.readyState!==4||U.status===0&&!(U.responseURL&&U.responseURL.indexOf("file:")===0)||setTimeout(F)},U.onabort=function(){U&&(A(new Xe("Request aborted",Xe.ECONNABORTED,i,U)),U=null)},U.onerror=function(R){const L=R&&R.message?R.message:"Network Error",z=new Xe(L,Xe.ERR_NETWORK,i,U);z.event=R||null,A(z),U=null},U.ontimeout=function(){let R=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const L=r.transitional||co;r.timeoutErrorMessage&&(R=r.timeoutErrorMessage),A(new Xe(R,L.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,i,U)),U=null},n===void 0&&s.setContentType(null),"setRequestHeader"in U&&pe.forEach(s.toJSON(),function(R,L){U.setRequestHeader(L,R)}),pe.isUndefined(r.withCredentials)||(U.withCredentials=!!r.withCredentials),o&&o!=="json"&&(U.responseType=r.responseType),c&&([C,b]=on(c,!0),U.addEventListener("progress",C)),l&&U.upload&&([g,x]=on(l),U.upload.addEventListener("progress",g),U.upload.addEventListener("loadend",x)),(r.cancelToken||r.signal)&&(h=N=>{U&&(A(!N||N.type?new rr(null,i,U):N),U.abort(),U=null)},r.cancelToken&&r.cancelToken.subscribe(h),r.signal&&(r.signal.aborted?h():r.signal.addEventListener("abort",h)));const M=R1(r.url);if(M&&kt.protocols.indexOf(M)===-1){A(new Xe("Unsupported protocol "+M+":",Xe.ERR_BAD_REQUEST,i));return}U.send(n||null)})},j1=(i,e)=>{const{length:t}=i=i?i.filter(Boolean):[];if(e||t){let A=new AbortController,r;const n=function(c){if(!r){r=!0,o();const h=c instanceof Error?c:this.reason;A.abort(h instanceof Xe?h:new rr(h instanceof Error?h.message:h))}};let s=e&&setTimeout(()=>{s=null,n(new Xe(`timeout of ${e}ms exceeded`,Xe.ETIMEDOUT))},e);const o=()=>{i&&(s&&clearTimeout(s),s=null,i.forEach(c=>{c.unsubscribe?c.unsubscribe(n):c.removeEventListener("abort",n)}),i=null)};i.forEach(c=>c.addEventListener("abort",n));const{signal:l}=A;return l.unsubscribe=()=>pe.asap(o),l}},eg=function*(i,e){let t=i.byteLength;if(t<e){yield i;return}let A=0,r;for(;A<t;)r=A+e,yield i.slice(A,r),A=r},tg=async function*(i,e){for await(const t of Ag(i))yield*eg(t,e)},Ag=async function*(i){if(i[Symbol.asyncIterator]){yield*i;return}const e=i.getReader();try{for(;;){const{done:t,value:A}=await e.read();if(t)break;yield A}}finally{await e.cancel()}},kc=(i,e,t,A)=>{const r=tg(i,e);let n=0,s,o=l=>{s||(s=!0,A&&A(l))};return new ReadableStream({async pull(l){try{const{done:c,value:h}=await r.next();if(c){o(),l.close();return}let g=h.byteLength;if(t){let C=n+=g;t(C)}l.enqueue(new Uint8Array(h))}catch(c){throw o(c),c}},cancel(l){return o(l),r.return()}},{highWaterMark:2})},Nc=64*1024,{isFunction:an}=pe,ig=(({Request:i,Response:e})=>({Request:i,Response:e}))(pe.global),{ReadableStream:Oc,TextEncoder:Kc}=pe.global,Vc=(i,...e)=>{try{return!!i(...e)}catch{return!1}},rg=i=>{i=pe.merge.call({skipUndefined:!0},ig,i);const{fetch:e,Request:t,Response:A}=i,r=e?an(e):typeof fetch=="function",n=an(t),s=an(A);if(!r)return!1;const o=r&&an(Oc),l=r&&(typeof Kc=="function"?(b=>v=>b.encode(v))(new Kc):async b=>new Uint8Array(await new t(b).arrayBuffer())),c=n&&o&&Vc(()=>{let b=!1;const v=new t(kt.origin,{body:new Oc,method:"POST",get duplex(){return b=!0,"half"}}).headers.has("Content-Type");return b&&!v}),h=s&&o&&Vc(()=>pe.isReadableStream(new A("").body)),g={stream:h&&(b=>b.body)};r&&["text","arrayBuffer","blob","formData","stream"].forEach(b=>{!g[b]&&(g[b]=(v,U)=>{let F=v&&v[b];if(F)return F.call(v);throw new Xe(`Response type '${b}' is not supported`,Xe.ERR_NOT_SUPPORT,U)})});const C=async b=>{if(b==null)return 0;if(pe.isBlob(b))return b.size;if(pe.isSpecCompliantForm(b))return(await new t(kt.origin,{method:"POST",body:b}).arrayBuffer()).byteLength;if(pe.isArrayBufferView(b)||pe.isArrayBuffer(b))return b.byteLength;if(pe.isURLSearchParams(b)&&(b=b+""),pe.isString(b))return(await l(b)).byteLength},x=async(b,v)=>{const U=pe.toFiniteNumber(b.getContentLength());return U??C(v)};return async b=>{let{url:v,method:U,data:F,signal:M,cancelToken:N,timeout:R,onDownloadProgress:L,onUploadProgress:z,responseType:q,headers:$,withCredentials:V="same-origin",fetchOptions:j}=Pc(b),te=e||fetch;q=q?(q+"").toLowerCase():"text";let ce=j1([M,N&&N.toAbortSignal()],R),X=null;const ee=ce&&ce.unsubscribe&&(()=>{ce.unsubscribe()});let se;try{if(z&&c&&U!=="get"&&U!=="head"&&(se=await x($,F))!==0){let xe=new t(v,{method:"POST",body:F,duplex:"half"}),Ue;if(pe.isFormData(F)&&(Ue=xe.headers.get("content-type"))&&$.setContentType(Ue),xe.body){const[ye,ve]=Hc(se,on(Ic(z)));F=kc(xe.body,Nc,ye,ve)}}pe.isString(V)||(V=V?"include":"omit");const le=n&&"credentials"in t.prototype,ne={...j,signal:ce,method:U.toUpperCase(),headers:$.normalize().toJSON(),body:F,duplex:"half",credentials:le?V:void 0};X=n&&new t(v,ne);let he=await(n?te(X,j):te(v,ne));const de=h&&(q==="stream"||q==="response");if(h&&(L||de&&ee)){const xe={};["status","statusText","headers"].forEach(be=>{xe[be]=he[be]});const Ue=pe.toFiniteNumber(he.headers.get("content-length")),[ye,ve]=L&&Hc(Ue,on(Ic(L),!0))||[];he=new A(kc(he.body,Nc,ye,()=>{ve&&ve(),ee&&ee()}),xe)}q=q||"text";let we=await g[pe.findKey(g,q)||"text"](he,b);return!de&&ee&&ee(),await new Promise((xe,Ue)=>{Mc(xe,Ue,{data:we,headers:Zt.from(he.headers),status:he.status,statusText:he.statusText,config:b,request:X})})}catch(le){throw ee&&ee(),le&&le.name==="TypeError"&&/Load failed|fetch/i.test(le.message)?Object.assign(new Xe("Network Error",Xe.ERR_NETWORK,b,X,le&&le.response),{cause:le.cause||le}):Xe.from(le,le&&le.code,b,X,le&&le.response)}}},ng=new Map,zc=i=>{let e=i&&i.env||{};const{fetch:t,Request:A,Response:r}=e,n=[A,r,t];let s=n.length,o=s,l,c,h=ng;for(;o--;)l=n[o],c=h.get(l),c===void 0&&h.set(l,c=o?new Map:rg(e)),h=c;return c};zc();const go={http:F1,xhr:q1,fetch:{get:zc}};pe.forEach(go,(i,e)=>{if(i){try{Object.defineProperty(i,"name",{value:e})}catch{}Object.defineProperty(i,"adapterName",{value:e})}});const Wc=i=>`- ${i}`,sg=i=>pe.isFunction(i)||i===null||i===!1;function og(i,e){i=pe.isArray(i)?i:[i];const{length:t}=i;let A,r;const n={};for(let s=0;s<t;s++){A=i[s];let o;if(r=A,!sg(A)&&(r=go[(o=String(A)).toLowerCase()],r===void 0))throw new Xe(`Unknown adapter '${o}'`);if(r&&(pe.isFunction(r)||(r=r.get(e))))break;n[o||"#"+s]=r}if(!r){const s=Object.entries(n).map(([l,c])=>`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let o=t?s.length>1?`since :
|
|
4
|
+
`+s.map(Wc).join(`
|
|
5
|
+
`):" "+Wc(s[0]):"as no adapter specified";throw new Xe("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return r}const Rc={getAdapter:og,adapters:go};function mo(i){if(i.cancelToken&&i.cancelToken.throwIfRequested(),i.signal&&i.signal.aborted)throw new rr(null,i)}function Gc(i){return mo(i),i.headers=Zt.from(i.headers),i.data=fo.call(i,i.transformRequest),["post","put","patch"].indexOf(i.method)!==-1&&i.headers.setContentType("application/x-www-form-urlencoded",!1),Rc.getAdapter(i.adapter||Ar.adapter,i)(i).then(function(A){return mo(i),A.data=fo.call(i,i.transformResponse,A),A.headers=Zt.from(A.headers),A},function(A){return Lc(A)||(mo(i),A&&A.response&&(A.response.data=fo.call(i,i.transformResponse,A.response),A.response.headers=Zt.from(A.response.headers))),Promise.reject(A)})}const $c="1.13.5",ln={};["object","boolean","number","function","string","symbol"].forEach((i,e)=>{ln[i]=function(A){return typeof A===i||"a"+(e<1?"n ":" ")+i}});const Xc={};ln.transitional=function(e,t,A){function r(n,s){return"[Axios v"+$c+"] Transitional option '"+n+"'"+s+(A?". "+A:"")}return(n,s,o)=>{if(e===!1)throw new Xe(r(s," has been removed"+(t?" in "+t:"")),Xe.ERR_DEPRECATED);return t&&!Xc[s]&&(Xc[s]=!0,console.warn(r(s," has been deprecated since v"+t+" and will be removed in the near future"))),e?e(n,s,o):!0}},ln.spelling=function(e){return(t,A)=>(console.warn(`${A} is likely a misspelling of ${e}`),!0)};function ag(i,e,t){if(typeof i!="object")throw new Xe("options must be an object",Xe.ERR_BAD_OPTION_VALUE);const A=Object.keys(i);let r=A.length;for(;r-- >0;){const n=A[r],s=e[n];if(s){const o=i[n],l=o===void 0||s(o,n,i);if(l!==!0)throw new Xe("option "+n+" must be "+l,Xe.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new Xe("Unknown option "+n,Xe.ERR_BAD_OPTION)}}const cn={assertOptions:ag,validators:ln},nA=cn.validators;let oi=class{constructor(e){this.defaults=e||{},this.interceptors={request:new Uc,response:new Uc}}async request(e,t){try{return await this._request(e,t)}catch(A){if(A instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const n=r.stack?r.stack.replace(/^.+\n/,""):"";try{A.stack?n&&!String(A.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(A.stack+=`
|
|
6
|
+
`+n):A.stack=n}catch{}}throw A}}_request(e,t){typeof e=="string"?(t=t||{},t.url=e):t=e||{},t=si(this.defaults,t);const{transitional:A,paramsSerializer:r,headers:n}=t;A!==void 0&&cn.assertOptions(A,{silentJSONParsing:nA.transitional(nA.boolean),forcedJSONParsing:nA.transitional(nA.boolean),clarifyTimeoutError:nA.transitional(nA.boolean),legacyInterceptorReqResOrdering:nA.transitional(nA.boolean)},!1),r!=null&&(pe.isFunction(r)?t.paramsSerializer={serialize:r}:cn.assertOptions(r,{encode:nA.function,serialize:nA.function},!0)),t.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),cn.assertOptions(t,{baseUrl:nA.spelling("baseURL"),withXsrfToken:nA.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let s=n&&pe.merge(n.common,n[t.method]);n&&pe.forEach(["delete","get","head","post","put","patch","common"],b=>{delete n[b]}),t.headers=Zt.concat(s,n);const o=[];let l=!0;this.interceptors.request.forEach(function(v){if(typeof v.runWhen=="function"&&v.runWhen(t)===!1)return;l=l&&v.synchronous;const U=t.transitional||co;U&&U.legacyInterceptorReqResOrdering?o.unshift(v.fulfilled,v.rejected):o.push(v.fulfilled,v.rejected)});const c=[];this.interceptors.response.forEach(function(v){c.push(v.fulfilled,v.rejected)});let h,g=0,C;if(!l){const b=[Gc.bind(this),void 0];for(b.unshift(...o),b.push(...c),C=b.length,h=Promise.resolve(t);g<C;)h=h.then(b[g++],b[g++]);return h}C=o.length;let x=t;for(;g<C;){const b=o[g++],v=o[g++];try{x=b(x)}catch(U){v.call(this,U);break}}try{h=Gc.call(this,x)}catch(b){return Promise.reject(b)}for(g=0,C=c.length;g<C;)h=h.then(c[g++],c[g++]);return h}getUri(e){e=si(this.defaults,e);const t=Dc(e.baseURL,e.url,e.allowAbsoluteUrls);return Fc(t,e.params,e.paramsSerializer)}};pe.forEach(["delete","get","head","options"],function(e){oi.prototype[e]=function(t,A){return this.request(si(A||{},{method:e,url:t,data:(A||{}).data}))}}),pe.forEach(["post","put","patch"],function(e){function t(A){return function(n,s,o){return this.request(si(o||{},{method:e,headers:A?{"Content-Type":"multipart/form-data"}:{},url:n,data:s}))}}oi.prototype[e]=t(),oi.prototype[e+"Form"]=t(!0)});let lg=class ip{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let t;this.promise=new Promise(function(n){t=n});const A=this;this.promise.then(r=>{if(!A._listeners)return;let n=A._listeners.length;for(;n-- >0;)A._listeners[n](r);A._listeners=null}),this.promise.then=r=>{let n;const s=new Promise(o=>{A.subscribe(o),n=o}).then(r);return s.cancel=function(){A.unsubscribe(n)},s},e(function(n,s,o){A.reason||(A.reason=new rr(n,s,o),t(A.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);t!==-1&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=A=>{e.abort(A)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new ip(function(r){e=r}),cancel:e}}};function cg(i){return function(t){return i.apply(null,t)}}function hg(i){return pe.isObject(i)&&i.isAxiosError===!0}const wo={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(wo).forEach(([i,e])=>{wo[e]=i});function Zc(i){const e=new oi(i),t=pc(oi.prototype.request,e);return pe.extend(t,oi.prototype,e,{allOwnKeys:!0}),pe.extend(t,e,null,{allOwnKeys:!0}),t.create=function(r){return Zc(si(i,r))},t}const ht=Zc(Ar);ht.Axios=oi,ht.CanceledError=rr,ht.CancelToken=lg,ht.isCancel=Lc,ht.VERSION=$c,ht.toFormData=nn,ht.AxiosError=Xe,ht.Cancel=ht.CanceledError,ht.all=function(e){return Promise.all(e)},ht.spread=cg,ht.isAxiosError=hg,ht.mergeConfig=si,ht.AxiosHeaders=Zt,ht.formToJSON=i=>Sc(pe.isHTMLForm(i)?new FormData(i):i),ht.getAdapter=Rc.getAdapter,ht.HttpStatusCode=wo,ht.default=ht;const{Axios:kT,AxiosError:NT,CanceledError:OT,isCancel:KT,CancelToken:VT,VERSION:zT,all:WT,Cancel:RT,isAxiosError:GT,spread:$T,toFormData:XT,AxiosHeaders:ZT,HttpStatusCode:JT,formToJSON:YT,getAdapter:qT,mergeConfig:jT}=ht,vA=Object.create(null);vA.open="0",vA.close="1",vA.ping="2",vA.pong="3",vA.message="4",vA.upgrade="5",vA.noop="6";const hn=Object.create(null);Object.keys(vA).forEach(i=>{hn[vA[i]]=i});const Bo={type:"error",data:"parser error"},Jc=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Yc=typeof ArrayBuffer=="function",qc=i=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(i):i&&i.buffer instanceof ArrayBuffer,yo=({type:i,data:e},t,A)=>Jc&&e instanceof Blob?t?A(e):jc(e,A):Yc&&(e instanceof ArrayBuffer||qc(e))?t?A(e):jc(new Blob([e]),A):A(vA[i]+(e||"")),jc=(i,e)=>{const t=new FileReader;return t.onload=function(){const A=t.result.split(",")[1];e("b"+(A||""))},t.readAsDataURL(i)};function eh(i){return i instanceof Uint8Array?i:i instanceof ArrayBuffer?new Uint8Array(i):new Uint8Array(i.buffer,i.byteOffset,i.byteLength)}let Co;function ug(i,e){if(Jc&&i.data instanceof Blob)return i.data.arrayBuffer().then(eh).then(e);if(Yc&&(i.data instanceof ArrayBuffer||qc(i.data)))return e(eh(i.data));yo(i,!1,t=>{Co||(Co=new TextEncoder),e(Co.encode(t))})}const th="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",nr=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let i=0;i<th.length;i++)nr[th.charCodeAt(i)]=i;const dg=i=>{let e=i.length*.75,t=i.length,A,r=0,n,s,o,l;i[i.length-1]==="="&&(e--,i[i.length-2]==="="&&e--);const c=new ArrayBuffer(e),h=new Uint8Array(c);for(A=0;A<t;A+=4)n=nr[i.charCodeAt(A)],s=nr[i.charCodeAt(A+1)],o=nr[i.charCodeAt(A+2)],l=nr[i.charCodeAt(A+3)],h[r++]=n<<2|s>>4,h[r++]=(s&15)<<4|o>>2,h[r++]=(o&3)<<6|l&63;return c},pg=typeof ArrayBuffer=="function",vo=(i,e)=>{if(typeof i!="string")return{type:"message",data:Ah(i,e)};const t=i.charAt(0);return t==="b"?{type:"message",data:fg(i.substring(1),e)}:hn[t]?i.length>1?{type:hn[t],data:i.substring(1)}:{type:hn[t]}:Bo},fg=(i,e)=>{if(pg){const t=dg(i);return Ah(t,e)}else return{base64:!0,data:i}},Ah=(i,e)=>e==="blob"?i instanceof Blob?i:new Blob([i]):i instanceof ArrayBuffer?i:i.buffer,ih="",gg=(i,e)=>{const t=i.length,A=new Array(t);let r=0;i.forEach((n,s)=>{yo(n,!1,o=>{A[s]=o,++r===t&&e(A.join(ih))})})},mg=(i,e)=>{const t=i.split(ih),A=[];for(let r=0;r<t.length;r++){const n=vo(t[r],e);if(A.push(n),n.type==="error")break}return A};function wg(){return new TransformStream({transform(i,e){ug(i,t=>{const A=t.length;let r;if(A<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,A);else if(A<65536){r=new Uint8Array(3);const n=new DataView(r.buffer);n.setUint8(0,126),n.setUint16(1,A)}else{r=new Uint8Array(9);const n=new DataView(r.buffer);n.setUint8(0,127),n.setBigUint64(1,BigInt(A))}i.data&&typeof i.data!="string"&&(r[0]|=128),e.enqueue(r),e.enqueue(t)})}})}let To;function un(i){return i.reduce((e,t)=>e+t.length,0)}function dn(i,e){if(i[0].length===e)return i.shift();const t=new Uint8Array(e);let A=0;for(let r=0;r<e;r++)t[r]=i[0][A++],A===i[0].length&&(i.shift(),A=0);return i.length&&A<i[0].length&&(i[0]=i[0].slice(A)),t}function Bg(i,e){To||(To=new TextDecoder);const t=[];let A=0,r=-1,n=!1;return new TransformStream({transform(s,o){for(t.push(s);;){if(A===0){if(un(t)<1)break;const l=dn(t,1);n=(l[0]&128)===128,r=l[0]&127,r<126?A=3:r===126?A=1:A=2}else if(A===1){if(un(t)<2)break;const l=dn(t,2);r=new DataView(l.buffer,l.byteOffset,l.length).getUint16(0),A=3}else if(A===2){if(un(t)<8)break;const l=dn(t,8),c=new DataView(l.buffer,l.byteOffset,l.length),h=c.getUint32(0);if(h>Math.pow(2,21)-1){o.enqueue(Bo);break}r=h*Math.pow(2,32)+c.getUint32(4),A=3}else{if(un(t)<r)break;const l=dn(t,r);o.enqueue(vo(n?l:To.decode(l),e)),A=0}if(r===0||r>i){o.enqueue(Bo);break}}}})}const rh=4;function xt(i){if(i)return yg(i)}function yg(i){for(var e in xt.prototype)i[e]=xt.prototype[e];return i}xt.prototype.on=xt.prototype.addEventListener=function(i,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+i]=this._callbacks["$"+i]||[]).push(e),this},xt.prototype.once=function(i,e){function t(){this.off(i,t),e.apply(this,arguments)}return t.fn=e,this.on(i,t),this},xt.prototype.off=xt.prototype.removeListener=xt.prototype.removeAllListeners=xt.prototype.removeEventListener=function(i,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+i];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+i],this;for(var A,r=0;r<t.length;r++)if(A=t[r],A===e||A.fn===e){t.splice(r,1);break}return t.length===0&&delete this._callbacks["$"+i],this},xt.prototype.emit=function(i){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+i],A=1;A<arguments.length;A++)e[A-1]=arguments[A];if(t){t=t.slice(0);for(var A=0,r=t.length;A<r;++A)t[A].apply(this,e)}return this},xt.prototype.emitReserved=xt.prototype.emit,xt.prototype.listeners=function(i){return this._callbacks=this._callbacks||{},this._callbacks["$"+i]||[]},xt.prototype.hasListeners=function(i){return!!this.listeners(i).length};const pn=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,t)=>t(e,0),sA=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),Cg="arraybuffer";function ex(){}function nh(i,...e){return e.reduce((t,A)=>(i.hasOwnProperty(A)&&(t[A]=i[A]),t),{})}const vg=sA.setTimeout,Tg=sA.clearTimeout;function fn(i,e){e.useNativeTimers?(i.setTimeoutFn=vg.bind(sA),i.clearTimeoutFn=Tg.bind(sA)):(i.setTimeoutFn=sA.setTimeout.bind(sA),i.clearTimeoutFn=sA.clearTimeout.bind(sA))}const xg=1.33;function bg(i){return typeof i=="string"?Qg(i):Math.ceil((i.byteLength||i.size)*xg)}function Qg(i){let e=0,t=0;for(let A=0,r=i.length;A<r;A++)e=i.charCodeAt(A),e<128?t+=1:e<2048?t+=2:e<55296||e>=57344?t+=3:(A++,t+=4);return t}function sh(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function Fg(i){let e="";for(let t in i)i.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(i[t]));return e}function Ug(i){let e={},t=i.split("&");for(let A=0,r=t.length;A<r;A++){let n=t[A].split("=");e[decodeURIComponent(n[0])]=decodeURIComponent(n[1])}return e}class Sg extends Error{constructor(e,t,A){super(e),this.description=t,this.context=A,this.type="TransportError"}}class xo extends xt{constructor(e){super(),this.writable=!1,fn(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,t,A){return super.emitReserved("error",new Sg(e,t,A)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=vo(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(this.opts.port)!==443||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){const t=Fg(e);return t.length?"?"+t:""}}class Eg extends xo{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this._polling||!this.writable){let A=0;this._polling&&(A++,this.once("pollComplete",function(){--A||t()})),this.writable||(A++,this.once("drain",function(){--A||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=A=>{if(this.readyState==="opening"&&A.type==="open"&&this.onOpen(),A.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(A)};mg(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,gg(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=sh()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let oh=!1;try{oh=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const Lg=oh;function Mg(){}class Hg extends Eg{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let A=location.port;A||(A=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||A!==e.port}}doWrite(e,t){const A=this.request({method:"POST",data:e});A.on("success",t),A.on("error",(r,n)=>{this.onError("xhr post error",r,n)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,A)=>{this.onError("xhr poll error",t,A)}),this.pollXhr=e}}class TA extends xt{constructor(e,t,A){super(),this.createRequest=e,fn(this,A),this._opts=A,this._method=A.method||"GET",this._uri=t,this._data=A.data!==void 0?A.data:null,this._create()}_create(){var e;const t=nh(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const A=this._xhr=this.createRequest(t);try{A.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){A.setDisableHeaderCheck&&A.setDisableHeaderCheck(!0);for(let r in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(r)&&A.setRequestHeader(r,this._opts.extraHeaders[r])}}catch{}if(this._method==="POST")try{A.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{A.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(A),"withCredentials"in A&&(A.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(A.timeout=this._opts.requestTimeout),A.onreadystatechange=()=>{var r;A.readyState===3&&((r=this._opts.cookieJar)===null||r===void 0||r.parseCookies(A.getResponseHeader("set-cookie"))),A.readyState===4&&(A.status===200||A.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof A.status=="number"?A.status:0)},0))},A.send(this._data)}catch(r){this.setTimeoutFn(()=>{this._onError(r)},0);return}typeof document<"u"&&(this._index=TA.requestsCount++,TA.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=Mg,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete TA.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}if(TA.requestsCount=0,TA.requests={},typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",ah);else if(typeof addEventListener=="function"){const i="onpagehide"in sA?"pagehide":"unload";addEventListener(i,ah,!1)}}function ah(){for(let i in TA.requests)TA.requests.hasOwnProperty(i)&&TA.requests[i].abort()}const Ig=(function(){const i=lh({xdomain:!1});return i&&i.responseType!==null})();class Dg extends Hg{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=Ig&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new TA(lh,this.uri(),e)}}function lh(i){const e=i.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||Lg))return new XMLHttpRequest}catch{}if(!e)try{return new sA[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const ch=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class _g extends xo{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,A=ch?{}:nh(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(A.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,A)}catch(r){return this.emitReserved("error",r)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const A=e[t],r=t===e.length-1;yo(A,this.supportsBinary,n=>{try{this.doWrite(A,n)}catch{}r&&pn(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=sh()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const bo=sA.WebSocket||sA.MozWebSocket;class Pg extends _g{createSocket(e,t,A){return ch?new bo(e,t,A):t?new bo(e,t):new bo(e)}doWrite(e,t){this.ws.send(t)}}class kg extends xo{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=Bg(Number.MAX_SAFE_INTEGER,this.socket.binaryType),A=e.readable.pipeThrough(t).getReader(),r=wg();r.readable.pipeTo(e.writable),this._writer=r.writable.getWriter();const n=()=>{A.read().then(({done:o,value:l})=>{o||(this.onPacket(l),n())}).catch(o=>{})};n();const s={type:"open"};this.query.sid&&(s.data=`{"sid":"${this.query.sid}"}`),this._writer.write(s).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const A=e[t],r=t===e.length-1;this._writer.write(A).then(()=>{r&&pn(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const Ng={websocket:Pg,webtransport:kg,polling:Dg},Og=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Kg=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Qo(i){if(i.length>8e3)throw"URI too long";const e=i,t=i.indexOf("["),A=i.indexOf("]");t!=-1&&A!=-1&&(i=i.substring(0,t)+i.substring(t,A).replace(/:/g,";")+i.substring(A,i.length));let r=Og.exec(i||""),n={},s=14;for(;s--;)n[Kg[s]]=r[s]||"";return t!=-1&&A!=-1&&(n.source=e,n.host=n.host.substring(1,n.host.length-1).replace(/;/g,":"),n.authority=n.authority.replace("[","").replace("]","").replace(/;/g,":"),n.ipv6uri=!0),n.pathNames=Vg(n,n.path),n.queryKey=zg(n,n.query),n}function Vg(i,e){const t=/\/{2,9}/g,A=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&A.splice(0,1),e.slice(-1)=="/"&&A.splice(A.length-1,1),A}function zg(i,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(A,r,n){r&&(t[r]=n)}),t}const Fo=typeof addEventListener=="function"&&typeof removeEventListener=="function",gn=[];Fo&&addEventListener("offline",()=>{gn.forEach(i=>i())},!1);class OA extends xt{constructor(e,t){if(super(),this.binaryType=Cg,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const A=Qo(e);t.hostname=A.host,t.secure=A.protocol==="https"||A.protocol==="wss",t.port=A.port,A.query&&(t.query=A.query)}else t.host&&(t.hostname=Qo(t.host).host);fn(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(A=>{const r=A.prototype.name;this.transports.push(r),this._transportsByName[r]=A}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Ug(this.opts.query)),Fo&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},gn.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=rh,t.transport=e,this.id&&(t.sid=this.id);const A=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](A)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&OA.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",OA.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let A=0;A<this.writeBuffer.length;A++){const r=this.writeBuffer[A].data;if(r&&(t+=bg(r)),A>0&&t>this._maxPayload)return this.writeBuffer.slice(0,A);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,pn(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,A){return this._sendPacket("message",e,t,A),this}send(e,t,A){return this._sendPacket("message",e,t,A),this}_sendPacket(e,t,A,r){if(typeof t=="function"&&(r=t,t=void 0),typeof A=="function"&&(r=A,A=null),this.readyState==="closing"||this.readyState==="closed")return;A=A||{},A.compress=A.compress!==!1;const n={type:e,data:t,options:A};this.emitReserved("packetCreate",n),this.writeBuffer.push(n),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},A=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?A():e()}):this.upgrading?A():e()),this}_onError(e){if(OA.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Fo&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const A=gn.indexOf(this._offlineEventListener);A!==-1&&gn.splice(A,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}OA.protocol=rh;class Wg extends OA{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}_probe(e){let t=this.createTransport(e),A=!1;OA.priorWebsocketSuccess=!1;const r=()=>{A||(t.send([{type:"ping",data:"probe"}]),t.once("packet",g=>{if(!A)if(g.type==="pong"&&g.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;OA.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{A||this.readyState!=="closed"&&(h(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const C=new Error("probe error");C.transport=t.name,this.emitReserved("upgradeError",C)}}))};function n(){A||(A=!0,h(),t.close(),t=null)}const s=g=>{const C=new Error("probe error: "+g);C.transport=t.name,n(),this.emitReserved("upgradeError",C)};function o(){s("transport closed")}function l(){s("socket closed")}function c(g){t&&g.name!==t.name&&n()}const h=()=>{t.removeListener("open",r),t.removeListener("error",s),t.removeListener("close",o),this.off("close",l),this.off("upgrading",c)};t.once("open",r),t.once("error",s),t.once("close",o),this.once("close",l),this.once("upgrading",c),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{A||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let A=0;A<e.length;A++)~this.transports.indexOf(e[A])&&t.push(e[A]);return t}}let Rg=class extends Wg{constructor(e,t={}){const A=typeof e=="object"?e:t;(!A.transports||A.transports&&typeof A.transports[0]=="string")&&(A.transports=(A.transports||["polling","websocket","webtransport"]).map(r=>Ng[r]).filter(r=>!!r)),super(e,A)}};function Gg(i,e="",t){let A=i;t=t||typeof location<"u"&&location,i==null&&(i=t.protocol+"//"+t.host),typeof i=="string"&&(i.charAt(0)==="/"&&(i.charAt(1)==="/"?i=t.protocol+i:i=t.host+i),/^(https?|wss?):\/\//.test(i)||(typeof t<"u"?i=t.protocol+"//"+i:i="https://"+i),A=Qo(i)),A.port||(/^(http|ws)$/.test(A.protocol)?A.port="80":/^(http|ws)s$/.test(A.protocol)&&(A.port="443")),A.path=A.path||"/";const n=A.host.indexOf(":")!==-1?"["+A.host+"]":A.host;return A.id=A.protocol+"://"+n+":"+A.port+e,A.href=A.protocol+"://"+n+(t&&t.port===A.port?"":":"+A.port),A}const $g=typeof ArrayBuffer=="function",Xg=i=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(i):i.buffer instanceof ArrayBuffer,hh=Object.prototype.toString,Zg=typeof Blob=="function"||typeof Blob<"u"&&hh.call(Blob)==="[object BlobConstructor]",Jg=typeof File=="function"||typeof File<"u"&&hh.call(File)==="[object FileConstructor]";function Uo(i){return $g&&(i instanceof ArrayBuffer||Xg(i))||Zg&&i instanceof Blob||Jg&&i instanceof File}function mn(i,e){if(!i||typeof i!="object")return!1;if(Array.isArray(i)){for(let t=0,A=i.length;t<A;t++)if(mn(i[t]))return!0;return!1}if(Uo(i))return!0;if(i.toJSON&&typeof i.toJSON=="function"&&arguments.length===1)return mn(i.toJSON(),!0);for(const t in i)if(Object.prototype.hasOwnProperty.call(i,t)&&mn(i[t]))return!0;return!1}function Yg(i){const e=[],t=i.data,A=i;return A.data=So(t,e),A.attachments=e.length,{packet:A,buffers:e}}function So(i,e){if(!i)return i;if(Uo(i)){const t={_placeholder:!0,num:e.length};return e.push(i),t}else if(Array.isArray(i)){const t=new Array(i.length);for(let A=0;A<i.length;A++)t[A]=So(i[A],e);return t}else if(typeof i=="object"&&!(i instanceof Date)){const t={};for(const A in i)Object.prototype.hasOwnProperty.call(i,A)&&(t[A]=So(i[A],e));return t}return i}function qg(i,e){return i.data=Eo(i.data,e),delete i.attachments,i}function Eo(i,e){if(!i)return i;if(i&&i._placeholder===!0){if(typeof i.num=="number"&&i.num>=0&&i.num<e.length)return e[i.num];throw new Error("illegal attachments")}else if(Array.isArray(i))for(let t=0;t<i.length;t++)i[t]=Eo(i[t],e);else if(typeof i=="object")for(const t in i)Object.prototype.hasOwnProperty.call(i,t)&&(i[t]=Eo(i[t],e));return i}const jg=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var At;(function(i){i[i.CONNECT=0]="CONNECT",i[i.DISCONNECT=1]="DISCONNECT",i[i.EVENT=2]="EVENT",i[i.ACK=3]="ACK",i[i.CONNECT_ERROR=4]="CONNECT_ERROR",i[i.BINARY_EVENT=5]="BINARY_EVENT",i[i.BINARY_ACK=6]="BINARY_ACK"})(At||(At={}));class em{constructor(e){this.replacer=e}encode(e){return(e.type===At.EVENT||e.type===At.ACK)&&mn(e)?this.encodeAsBinary({type:e.type===At.EVENT?At.BINARY_EVENT:At.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===At.BINARY_EVENT||e.type===At.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),t}encodeAsBinary(e){const t=Yg(e),A=this.encodeAsString(t.packet),r=t.buffers;return r.unshift(A),r}}class Lo extends xt{constructor(e){super(),this.reviver=e}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);const A=t.type===At.BINARY_EVENT;A||t.type===At.BINARY_ACK?(t.type=A?At.EVENT:At.ACK,this.reconstructor=new tm(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if(Uo(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0;const A={type:Number(e.charAt(0))};if(At[A.type]===void 0)throw new Error("unknown packet type "+A.type);if(A.type===At.BINARY_EVENT||A.type===At.BINARY_ACK){const n=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);const s=e.substring(n,t);if(s!=Number(s)||e.charAt(t)!=="-")throw new Error("Illegal attachments");A.attachments=Number(s)}if(e.charAt(t+1)==="/"){const n=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););A.nsp=e.substring(n,t)}else A.nsp="/";const r=e.charAt(t+1);if(r!==""&&Number(r)==r){const n=t+1;for(;++t;){const s=e.charAt(t);if(s==null||Number(s)!=s){--t;break}if(t===e.length)break}A.id=Number(e.substring(n,t+1))}if(e.charAt(++t)){const n=this.tryParse(e.substr(t));if(Lo.isPayloadValid(A.type,n))A.data=n;else throw new Error("invalid payload")}return A}tryParse(e){try{return JSON.parse(e,this.reviver)}catch{return!1}}static isPayloadValid(e,t){switch(e){case At.CONNECT:return uh(t);case At.DISCONNECT:return t===void 0;case At.CONNECT_ERROR:return typeof t=="string"||uh(t);case At.EVENT:case At.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&jg.indexOf(t[0])===-1);case At.ACK:case At.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class tm{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const t=qg(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}function uh(i){return Object.prototype.toString.call(i)==="[object Object]"}const Am=Object.freeze(Object.defineProperty({__proto__:null,Decoder:Lo,Encoder:em,get PacketType(){return At}},Symbol.toStringTag,{value:"Module"}));function fA(i,e,t){return i.on(e,t),function(){i.off(e,t)}}const im=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class dh extends xt{constructor(e,t,A){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,A&&A.auth&&(this.auth=A.auth),this._opts=Object.assign({},A),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[fA(e,"open",this.onopen.bind(this)),fA(e,"packet",this.onpacket.bind(this)),fA(e,"error",this.onerror.bind(this)),fA(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){var A,r,n;if(im.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;const s={type:At.EVENT,data:t};if(s.options={},s.options.compress=this.flags.compress!==!1,typeof t[t.length-1]=="function"){const h=this.ids++,g=t.pop();this._registerAckCallback(h,g),s.id=h}const o=(r=(A=this.io.engine)===null||A===void 0?void 0:A.transport)===null||r===void 0?void 0:r.writable,l=this.connected&&!(!((n=this.io.engine)===null||n===void 0)&&n._hasPingExpired());return this.flags.volatile&&!o||(l?(this.notifyOutgoingListeners(s),this.packet(s)):this.sendBuffer.push(s)),this.flags={},this}_registerAckCallback(e,t){var A;const r=(A=this.flags.timeout)!==null&&A!==void 0?A:this._opts.ackTimeout;if(r===void 0){this.acks[e]=t;return}const n=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let o=0;o<this.sendBuffer.length;o++)this.sendBuffer[o].id===e&&this.sendBuffer.splice(o,1);t.call(this,new Error("operation has timed out"))},r),s=(...o)=>{this.io.clearTimeoutFn(n),t.apply(this,o)};s.withError=!0,this.acks[e]=s}emitWithAck(e,...t){return new Promise((A,r)=>{const n=(s,o)=>s?r(s):A(o);n.withError=!0,t.push(n),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const A={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((r,...n)=>(this._queue[0],r!==null?A.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(r)):(this._queue.shift(),t&&t(null,...n)),A.pending=!1,this._drainQueue())),this._queue.push(A),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:At.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(A=>String(A.id)===e)){const A=this.acks[e];delete this.acks[e],A.withError&&A.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case At.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case At.EVENT:case At.BINARY_EVENT:this.onevent(e);break;case At.ACK:case At.BINARY_ACK:this.onack(e);break;case At.DISCONNECT:this.ondisconnect();break;case At.CONNECT_ERROR:this.destroy();const A=new Error(e.data.message);A.data=e.data.data,this.emitReserved("connect_error",A);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const A of t)A.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let A=!1;return function(...r){A||(A=!0,t.packet({type:At.ACK,id:e,data:r}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:At.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let A=0;A<t.length;A++)if(e===t[A])return t.splice(A,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const t=this._anyOutgoingListeners;for(let A=0;A<t.length;A++)if(e===t[A])return t.splice(A,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const t=this._anyOutgoingListeners.slice();for(const A of t)A.apply(this,e.data)}}}function Qi(i){i=i||{},this.ms=i.min||100,this.max=i.max||1e4,this.factor=i.factor||2,this.jitter=i.jitter>0&&i.jitter<=1?i.jitter:0,this.attempts=0}Qi.prototype.duration=function(){var i=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*i);i=(Math.floor(e*10)&1)==0?i-t:i+t}return Math.min(i,this.max)|0},Qi.prototype.reset=function(){this.attempts=0},Qi.prototype.setMin=function(i){this.ms=i},Qi.prototype.setMax=function(i){this.max=i},Qi.prototype.setJitter=function(i){this.jitter=i};class Mo extends xt{constructor(e,t){var A;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,fn(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((A=t.randomizationFactor)!==null&&A!==void 0?A:.5),this.backoff=new Qi({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const r=t.parser||Am;this.encoder=new r.Encoder,this.decoder=new r.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new Rg(this.uri,this.opts);const t=this.engine,A=this;this._readyState="opening",this.skipReconnect=!1;const r=fA(t,"open",function(){A.onopen(),e&&e()}),n=o=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",o),e?e(o):this.maybeReconnectOnOpen()},s=fA(t,"error",n);if(this._timeout!==!1){const o=this._timeout,l=this.setTimeoutFn(()=>{r(),n(new Error("timeout")),t.close()},o);this.opts.autoUnref&&l.unref(),this.subs.push(()=>{this.clearTimeoutFn(l)})}return this.subs.push(r),this.subs.push(s),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(fA(e,"ping",this.onping.bind(this)),fA(e,"data",this.ondata.bind(this)),fA(e,"error",this.onerror.bind(this)),fA(e,"close",this.onclose.bind(this)),fA(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){pn(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let A=this.nsps[e];return A?this._autoConnect&&!A.active&&A.connect():(A=new dh(this,e,t),this.nsps[e]=A),A}_destroy(e){const t=Object.keys(this.nsps);for(const A of t)if(this.nsps[A].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let A=0;A<t.length;A++)this.engine.write(t[A],e.options)}cleanup(){this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var A;this.cleanup(),(A=this.engine)===null||A===void 0||A.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const A=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(r=>{r?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",r)):e.onreconnect()}))},t);this.opts.autoUnref&&A.unref(),this.subs.push(()=>{this.clearTimeoutFn(A)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const sr={};function wn(i,e){typeof i=="object"&&(e=i,i=void 0),e=e||{};const t=Gg(i,e.path||"/socket.io"),A=t.source,r=t.id,n=t.path,s=sr[r]&&n in sr[r].nsps,o=e.forceNew||e["force new connection"]||e.multiplex===!1||s;let l;return o?l=new Mo(A,e):(sr[r]||(sr[r]=new Mo(A,e)),l=sr[r]),t.query&&!e.query&&(e.query=t.queryKey),l.socket(t.path,e)}Object.assign(wn,{Manager:Mo,Socket:dh,io:wn,connect:wn});function Ho(i){if(!i)return null;try{const e=typeof window<"u"&&window?.location?.origin?window.location.origin:void 0,t=new URL(i,e),A=t.pathname.replace(/\/+$/,"");return`${t.protocol}//${t.host}${A}`}catch{return String(i).trim().replace(/\/+$/,"")}}let AA=Ho("http://localhost:8000");function ph(i){const e=Ho(i);e&&e!==AA&&(AA=e,mt&&(mt.disconnect(),mt.removeAllListeners(),mt=null))}let mt=null;function rm(){const i=()=>{try{return localStorage.getItem("token")||localStorage.getItem("authToken")||localStorage.getItem("accessToken")||localStorage.getItem("jwt_token")}catch{return null}},e=i();console.log("🔧 [SOCKET DEBUG] Creating socket for MT5 backend:",{baseUrl:AA,hasToken:!!e,tokenLength:e?.length||0,note:"Connecting to MT5 backend WebSocket (root namespace for candles)"});const t=wn(AA,{reconnection:!0,reconnectionDelay:1e3,reconnectionAttempts:10,timeout:15e3,forceNew:!1,withCredentials:!1,autoConnect:!0,upgrade:!0,auth:e?{token:e}:void 0}),A=()=>{const r=i();return t.auth=r?{token:r}:{},r};return t.on("connect",()=>{console.log("✅ [SOCKET DEBUG] SocketService: connected to ROOT namespace",{socketId:t.id,baseUrl:AA,transport:t.io.engine.transport.name,namespace:t.nsp.name||"/",note:"This socket connects to CandlesGateway (root namespace)"})}),t.on("disconnect",r=>{console.log("⚠️ [SOCKET DEBUG] SocketService: disconnected:",{reason:r,socketId:t.id})}),t.on("connect_error",r=>{console.error("❌ [SOCKET DEBUG] SocketService: connection error to ROOT namespace:",{message:r?.message,description:r?.description,context:r?.context,type:r?.type,baseUrl:AA,namespace:t.nsp.name||"/",note:"CandlesGateway requires JWT authentication - check if token is valid"})}),t.io.on("reconnect_attempt",r=>{const n=A();console.log("🔄 [SOCKET DEBUG] SocketService: reconnect attempt",{attempt:r,baseUrl:AA,hasToken:!!n})}),t.io.on("reconnect_failed",()=>{console.error("❌ [SOCKET DEBUG] SocketService: failed to reconnect",{baseUrl:AA})}),t.io.on("reconnect",r=>{console.log("✅ [SOCKET DEBUG] SocketService: reconnected after",{attempts:r,socketId:t.id})}),t}function Io(){const i=Ho(mt?.io?.uri||null);return!mt||mt.io&&i&&AA&&i!==AA?(mt&&(console.log("🔄 [SOCKET DEBUG] Recreating socket:",{oldUri:i,newBaseUrl:AA,wasConnected:mt.connected,reason:"baseUrl changed"}),mt.disconnect(),mt.removeAllListeners(),mt=null),mt=rm()):mt.connected?console.log("✅ [SOCKET DEBUG] Reusing existing connected socket:",{socketId:mt.id,connected:mt.connected,baseUrl:AA,uri:i}):console.log("⏳ [SOCKET DEBUG] Socket exists but not connected, waiting...",{socketId:mt.id,baseUrl:AA}),mt}function nm(i,e){const t=Io();return t.on(i,e),()=>t.off(i,e)}function sm(i,e){mt&&mt.off(i,e)}function om(i,e){Io().emit(i,e)}function am(){return mt?mt.connected?"connected":"connecting":"disconnected"}const Bn={getSocket:Io,on:nm,off:sm,emit:om,getStatus:am,setBaseUrl:ph},lm={},fh=Ae.createContext(),Lt=()=>{const i=Ae.useContext(fh);if(!i)throw new Error("useTrading must be used within TradingProvider");return i},cm=({children:i,baseUrl:e,endpoints:t,accountId:A,initialSymbol:r,initialTimeframe:n})=>{const s=e??(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:vs&&vs.tagName.toUpperCase()==="SCRIPT"&&vs.src||new URL("chart-sdk.umd.js",document.baseURI).href}<"u"&&lm?.VITE_BASE_URL)??"http://localhost:5002",l={...{candles:"/api/chart/candles",symbols:"/symbols",trades:"/trades",account:"/api/user/account"},...t},c=t?.params||{},[h,g]=Ae.useState(r||"BTC/USD"),[C,x]=Ae.useState(n||"M1"),[b,v]=Ae.useState([]),[U,F]=Ae.useState(!0),[M,N]=Ae.useState([]),[R,L]=Ae.useState(!1),[z,q]=Ae.useState(1e5),[$,V]=Ae.useState(null),[j,te]=Ae.useState([]),[ce,X]=Ae.useState(!0),[ee,se]=Ae.useState(!1),[le,ne]=Ae.useState(!0),[he,de]=Ae.useState("candles"),[we,xe]=Ae.useState(!1),[Ue,ye]=Ae.useState("dark"),[ve,be]=Ae.useState(!1),[Ee,Ie]=Ae.useState([]),Ze=Ae.useRef(null);Ae.useEffect(()=>{Bn.setBaseUrl(s)},[s]);const ze=Ae.useRef(new Map),Ce=Ae.useRef(null),Ne=1e3,Se=Ae.useCallback(async()=>{if(A)try{const me=localStorage.getItem("token");if(!me)return;L(!0);const ge=await ht.get(`${s}/trades/account/${A}`,{headers:{Authorization:`Bearer ${me}`}});let Me=[];Array.isArray(ge.data)?Me=ge.data:ge.data?.data&&Array.isArray(ge.data.data)&&(Me=ge.data.data);const _e=Me.filter(Qe=>Qe.closePrice===null||Qe.closePrice===void 0).map(Qe=>({id:Qe.id,ticket:23,symbol:Qe.symbol,type:Qe.type,volume:Qe.volume,openPrice:Qe.openPrice??Qe.price,stopLoss:Qe.stopLoss,takeProfit:Qe.takeProfit,comment:Qe.comment||"",status:"OPEN",swap:0,profit:Qe.profit||0,profitCurrency:"USD",time:new Date(Qe.openedAt||Qe.openAt||Date.now()).toLocaleTimeString(),openAt:Qe.openedAt||Qe.openAt,closeAt:Qe.closedAt||Qe.closeAt}));N(_e)}catch(me){console.error("❌ Error fetching orders:",me.response?.data||me.message),N([])}finally{L(!1)}},[s,A]),fe=Ae.useCallback((me,ge)=>!ge||!me.price||isNaN(ge)||isNaN(me.price)?me.profit||0:(me?.type?.toUpperCase()==="BUY"?ge-me.price:me.price-ge)*me.volume,[]),Pe=Ae.useCallback(async()=>{try{const me=localStorage.getItem("token");if(!me)return;const ge=await ht.get(`${s}${l.account}`,{headers:{Authorization:`Bearer ${me}`}});if(ge.data&&ge.data.data){const Me=parseFloat(ge.data.data.balance);isNaN(Me)||q(Me)}}catch(me){console.error("❌ Error fetching user balance:",me.response?.data||me.message)}},[s]),Je=Ae.useCallback(async()=>{if(A)try{const me=localStorage.getItem("token");if(!me)return;const ge=await ht.get(`${s}/trades/account/${A}`,{headers:{Authorization:`Bearer ${me}`}});let Me=[];Array.isArray(ge.data)?Me=ge.data:ge.data?.data&&Array.isArray(ge.data.data)&&(Me=ge.data.data);const _e=Me.filter(Qe=>Qe.closePrice!==null&&Qe.closePrice!==void 0).map(Qe=>({id:Qe.id,ticket:23,symbol:Qe.symbol,type:Qe.type,volume:Qe.volume,openPrice:Qe.openPrice??Qe.price,closePrice:Qe.closePrice,stopLoss:Qe.stopLoss,takeProfit:Qe.takeProfit,profit:Qe.profit||0,profitCurrency:"USD",openAt:Qe.openedAt||Qe.openAt,closeAt:Qe.closedAt||Qe.closeAt,closeReason:Qe.closeReason||"",status:"CLOSED"}));Ie(_e)}catch(me){console.error("❌ Error fetching history orders:",me.response?.data||me.message),Ie([])}},[s,A]),it=Ae.useMemo(()=>{const me=z,ge=M.reduce((Ve,dt)=>Ve+dt.volume*dt.price*.01,0),Me=M.reduce((Ve,dt)=>{const wt=b.find(It=>It.symbol===dt.symbol);if(wt){const It=dt.type==="BUY"?parseFloat(wt.bid||0):parseFloat(wt.ask||0);if(It&&It>0&&!isNaN(It))return Ve+fe(dt,It)}return Ve+(dt.profit||0)},0),_e=me+Me,Qe=_e-ge,Ke=ge>0?_e/ge*100:0;return{balance:me,equity:_e,margin:ge,freeMargin:Qe,level:Ke.toFixed(2)}},[M,b,z,fe]);Ae.useEffect(()=>{localStorage.getItem("token")&&A&&(Se(),Pe(),Je())},[Se,Pe,Je,A]),Ae.useEffect(()=>{(async()=>{try{F(!0);const ge=l.symbols.includes("?")?`${s}${l.symbols}`:`${s}${l.symbols}`,Me=await ht.get(ge);let _e=[];Array.isArray(Me.data)?_e=Me.data:Me.data&&Me.data.data&&Array.isArray(Me.data.data)?_e=Me.data.data:Me.data&&Me.data.prices&&Array.isArray(Me.data.prices)?_e=Me.data.prices:Me.data&&Array.isArray(Me.data)&&(_e=Me.data);const Qe=_e.map(Ke=>Ke.symbol&&(Ke.bid!==void 0||Ke.price!==void 0)?{symbol:Ke.symbol,bid:Ke.bid??Ke.price??0,ask:Ke.ask??Ke.price??0,change:Ke.change??0}:Ke);Qe.length>0?(v(Qe),Qe.find(Ve=>Ve.symbol===h)||g(Qe[0].symbol)):v([])}catch(ge){console.error("❌ Error fetching symbols:",ge.response?.data||ge.message),v([])}finally{F(!1)}})()},[s,l.symbols]);const rt=Ae.useCallback(()=>{const me=ze.current;if(me.size===0)return;const ge=new Map(me);me.clear(),v(Me=>Me.map(_e=>{const Qe=ge.get(_e.symbol);return Qe?{..._e,...Qe}:_e})),N(Me=>{let _e=!1;const Qe=Me.map(Ke=>{const Ve=ge.get(Ke.symbol);if(console.log("UASDSAD",Ve),!Ve)return Ke;const dt=Ke.type?.toUpperCase()==="BUY"?parseFloat(Ve.bid||0):parseFloat(Ve.ask||0);if(!dt||isNaN(dt)||dt<=0)return Ke;const wt=fe(Ke,dt);return wt===Ke.profit?Ke:(_e=!0,{...Ke,profit:wt})});return _e?Qe:Me})},[fe]);Ae.useEffect(()=>{Ze.current||(Ze.current=Bn.getSocket());const me=Ze.current,ge=()=>console.log("✅ TradingContext: Connected"),Me=()=>console.log("⚠️ TradingContext: Disconnected"),_e=Ke=>{Ke?.symbol&&(ze.current.set(Ke.symbol,Ke),Ce.current||(Ce.current=setTimeout(()=>{Ce.current=null,rt()},Ne)))},Qe=async Ke=>{if(Ke){if(Ke.newBalance!==void 0){const Ve=parseFloat(Ke.newBalance);isNaN(Ve)||q(Ve)}if(window.notify){const Ve=Ke.profitLoss||Ke.profit||0,dt=Ve>=0?`+${Ve.toFixed(2)}`:Ve.toFixed(2),wt=Ke.symbol||"Trade",It=Ke.reason||"Closed";window.notify(`Trade Closed: ${It} | ${wt} | P/L: ${dt} USD`,Ve>=0?"success":"error")}Ke.tradeId&&N(Ve=>Ve.filter(dt=>dt.id!==Ke.tradeId)),await Se(),await Pe()}};return me.on("connect",ge),me.on("disconnect",Me),me.on("priceUpdate",_e),me.on("tradeClosed",Qe),()=>{me.off("connect",ge),me.off("disconnect",Me),me.off("priceUpdate",_e),me.off("tradeClosed",Qe),Ce.current&&(clearTimeout(Ce.current),Ce.current=null),ze.current.clear()}},[rt,Se,Pe]),Ae.useEffect(()=>{try{const me=document.documentElement;if(!me)return;me.dataset.theme=Ue}catch{}},[Ue]);const Ge=Ae.useMemo(()=>b.find(me=>me.symbol===h)||{bid:"0.00000",ask:"0.00000",change:0},[b,h]),ke=Ae.useMemo(()=>({selectedSymbol:h,setSelectedSymbol:g,selectedTimeframe:C,setSelectedTimeframe:x,symbols:b,setSymbols:v,symbolsLoading:U,orders:M,setOrders:N,ordersLoading:R,fetchOrders:Se,fetchUserBalance:Pe,userBalance:z,setUserBalance:q,accountSummary:it,currentSymbolData:Ge,activeTool:$,setActiveTool:V,chartObjects:j,setChartObjects:te,showGrid:ce,setShowGrid:X,snapToGrid:ee,setSnapToGrid:se,drawingsVisible:le,setDrawingsVisible:ne,chartType:he,setChartType:de,chartLocked:we,setChartLocked:xe,theme:Ue,setTheme:ye,baseUrl:s,endpoints:l,endpointParams:c,accountId:A,isShow:ve,setIsShow:be,historyOrders:Ee,setHistoryOrders:Ie,fetchHistoryOrders:Je}),[h,C,b,U,M,R,Se,Pe,z,it,Ge,$,j,ce,ee,le,he,we,Ue,s,l,c,ve,Ee,Je]);return a.jsx(fh.Provider,{value:ke,children:i})};var gh={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},mh=Ae.createContext&&Ae.createContext(gh),hm=["attr","size","title"];function um(i,e){if(i==null)return{};var t=dm(i,e),A,r;if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);for(r=0;r<n.length;r++)A=n[r],!(e.indexOf(A)>=0)&&Object.prototype.propertyIsEnumerable.call(i,A)&&(t[A]=i[A])}return t}function dm(i,e){if(i==null)return{};var t={};for(var A in i)if(Object.prototype.hasOwnProperty.call(i,A)){if(e.indexOf(A)>=0)continue;t[A]=i[A]}return t}function yn(){return yn=Object.assign?Object.assign.bind():function(i){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var A in t)Object.prototype.hasOwnProperty.call(t,A)&&(i[A]=t[A])}return i},yn.apply(this,arguments)}function wh(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var A=Object.getOwnPropertySymbols(i);e&&(A=A.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,A)}return t}function Cn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wh(Object(t),!0).forEach(function(A){pm(i,A,t[A])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):wh(Object(t)).forEach(function(A){Object.defineProperty(i,A,Object.getOwnPropertyDescriptor(t,A))})}return i}function pm(i,e,t){return e=fm(e),e in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function fm(i){var e=gm(i,"string");return typeof e=="symbol"?e:e+""}function gm(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var A=t.call(i,e);if(typeof A!="object")return A;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Bh(i){return i&&i.map((e,t)=>Ae.createElement(e.tag,Cn({key:t},e.attr),Bh(e.child)))}function zt(i){return e=>Ae.createElement(mm,yn({attr:Cn({},i.attr)},e),Bh(i.child))}function mm(i){var e=t=>{var{attr:A,size:r,title:n}=i,s=um(i,hm),o=r||t.size||"1em",l;return t.className&&(l=t.className),i.className&&(l=(l?l+" ":"")+i.className),Ae.createElement("svg",yn({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},t.attr,A,s,{className:l,style:Cn(Cn({color:i.color||t.color},t.style),i.style),height:o,width:o,xmlns:"http://www.w3.org/2000/svg"}),n&&Ae.createElement("title",null,n),i.children)};return mh!==void 0?Ae.createElement(mh.Consumer,null,t=>e(t)):e(gh)}function wm(i){return zt({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M432 160H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 256H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM108.1 96h231.81A12.09 12.09 0 0 0 352 83.9V44.09A12.09 12.09 0 0 0 339.91 32H108.1A12.09 12.09 0 0 0 96 44.09V83.9A12.1 12.1 0 0 0 108.1 96zm231.81 256A12.09 12.09 0 0 0 352 339.9v-39.81A12.09 12.09 0 0 0 339.91 288H108.1A12.09 12.09 0 0 0 96 300.09v39.81a12.1 12.1 0 0 0 12.1 12.1z"},child:[]}]})(i)}function Bm(i){return zt({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M12.83 352h262.34A12.82 12.82 0 0 0 288 339.17v-38.34A12.82 12.82 0 0 0 275.17 288H12.83A12.82 12.82 0 0 0 0 300.83v38.34A12.82 12.82 0 0 0 12.83 352zm0-256h262.34A12.82 12.82 0 0 0 288 83.17V44.83A12.82 12.82 0 0 0 275.17 32H12.83A12.82 12.82 0 0 0 0 44.83v38.34A12.82 12.82 0 0 0 12.83 96zM432 160H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 256H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"},child:[]}]})(i)}function ym(i){return zt({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M16 224h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm416 192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-384H172.83A12.82 12.82 0 0 0 160 44.83v38.34A12.82 12.82 0 0 0 172.83 96h262.34A12.82 12.82 0 0 0 448 83.17V44.83A12.82 12.82 0 0 0 435.17 32zm0 256H172.83A12.82 12.82 0 0 0 160 300.83v38.34A12.82 12.82 0 0 0 172.83 352h262.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288z"},child:[]}]})(i)}function Cm(i){return zt({attr:{viewBox:"0 0 384 512"},child:[{tag:"path",attr:{d:"M333.49 238a122 122 0 0 0 27-65.21C367.87 96.49 308 32 233.42 32H34a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h31.87v288H34a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h209.32c70.8 0 134.14-51.75 141-122.4 4.74-48.45-16.39-92.06-50.83-119.6zM145.66 112h87.76a48 48 0 0 1 0 96h-87.76zm87.76 288h-87.76V288h87.76a56 56 0 0 1 0 112z"},child:[]}]})(i)}function yh(i){return zt({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z"},child:[]}]})(i)}function vm(i){return zt({attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"},child:[]}]})(i)}function Tm(i){return zt({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"},child:[]}]})(i)}function xm(i){return zt({attr:{viewBox:"0 0 320 512"},child:[{tag:"path",attr:{d:"M320 48v32a16 16 0 0 1-16 16h-62.76l-80 320H208a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H16a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h62.76l80-320H112a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h192a16 16 0 0 1 16 16z"},child:[]}]})(i)}function bm(i){return zt({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M290.74 93.24l128.02 128.02-277.99 277.99-114.14 12.6C11.35 513.54-1.56 500.62.14 485.34l12.7-114.22 277.9-277.88zm207.2-19.06l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.76 18.75-49.16 0-67.91z"},child:[]}]})(i)}function Qm(i){return zt({attr:{viewBox:"0 0 352 512"},child:[{tag:"path",attr:{d:"M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"},child:[]}]})(i)}const Fm={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},Ch=({bidPrice:i,askPrice:e,userAccountId:t})=>{const{theme:A,selectedSymbol:r,fetchOrders:n,baseUrl:s,endpoints:o}=Lt(),l=A==="light",[c,h]=Ae.useState("0.01"),[g,C]=Ae.useState(""),[x,b]=Ae.useState(!1),v=l?"bg-slate-100":"bg-[#12161d]",U=l?"text-slate-700":"text-white",F=l?"hover:bg-slate-200":"hover:bg-[#1e2635]",M=R=>{const L=parseFloat(c)||.01,z=Math.max(.01,L+R);h(z.toFixed(2))},N=async R=>{C("");const L=R,z=parseFloat(L==="BUY"?e:i),q=parseFloat(c);if(!q||q<=0||isNaN(q)){C("Please enter a valid volume (minimum 0.01)");return}if(q<.01){C("Volume must be at least 0.01");return}if(!z||z<=0||isNaN(z)){C("Invalid price. Please refresh and try again.");return}const $=localStorage.getItem("token");if(!$){C("Please login to place trades");return}b(!0);const V=typeof r=="object"?r?.symbol:r,j={accountId:t,symbol:V,type:L,volume:q,openPrice:z,takeProfit:null,stopLoss:null};try{const te=s||Fm?.VITE_BASE_URL||"http://localhost:8000",ce=o?.trades||"/api/trades",X=await ht.post(`${te}${ce}`,j,{headers:{Authorization:`Bearer ${$}`,"Content-Type":"application/json"}});if(X.status<200||X.status>=300){C(X.data?.message||`Failed to place trade (${X.status})`);return}n&&n()}catch(te){const ce=te?.response?.data?.message||te?.message||"Network error. Please try again.";C(ce)}finally{b(!1)}};return a.jsxs("div",{className:"flex flex-col",children:[a.jsxs("div",{className:"flex items-stretch h-[30px] text-xs font-semibold select-none",children:[a.jsxs("button",{onClick:()=>N("SELL"),disabled:x,className:"flex items-stretch overflow-hidden opacity-100 disabled:opacity-60",children:[a.jsx("span",{className:"flex items-center px-2.5 font-mono tabular-nums bg-[#BD3E3E] text-white",children:i?Number(i).toFixed(5):"—"}),a.jsx("span",{className:"flex items-center px-2.5 tracking-wide bg-[#DE4848] text-white",children:"SELL"})]}),a.jsxs("div",{className:`flex items-stretch ${v}`,children:[a.jsx("button",{type:"button",onClick:()=>M(-.01),className:`w-5 flex items-center justify-center ${U} ${F} transition-colors`,children:a.jsx(yh,{size:8})}),a.jsx("input",{type:"number",value:c,onChange:R=>{const L=R.target.value;(L===""||/^\d*\.?\d{0,2}$/.test(L))&&h(L)},onBlur:()=>{const R=parseFloat(c);h(isNaN(R)||R<.01?"0.01":R.toFixed(2))},className:`w-14 text-center focus:outline-none ${v} ${U}`,step:"0.01",min:"0.01",style:{MozAppearance:"textfield"}}),a.jsx("button",{type:"button",onClick:()=>M(.01),className:`w-5 flex items-center justify-center ${U} ${F} transition-colors`,children:a.jsx(vm,{size:8})})]}),a.jsxs("button",{onClick:()=>N("BUY"),disabled:x,className:"flex items-stretch overflow-hidden opacity-100 disabled:opacity-60",children:[a.jsx("span",{className:"flex items-center px-2.5 tracking-wide bg-[#2869CE] text-white",children:"BUY"}),a.jsx("span",{className:"flex items-center px-2.5 font-mono tabular-nums bg-[#2F7CF2] text-white",children:e?Number(e).toFixed(5):"—"})]})]}),g&&a.jsx("div",{className:"text-red-400 text-xs mt-0.5 px-1",children:g})]})},Um={},vh=({isOpen:i,onClose:e,orderType:t,bidPrice:A,askPrice:r,onExecuteTrade:n,userAccountId:s,initialVolume:o,disableOptimistic:l=!1,forceParentExecution:c=!1,tradingEngine:h})=>{const{selectedSymbol:g,selectedTimeframe:C,setOrders:x,symbols:b,fetchOrders:v,theme:U,baseUrl:F,endpoints:M}=Lt(),N=U==="light",R={getContractSpec:me=>{const ge=String(me||"").toUpperCase();return ge.includes("BTC")||ge.includes("ETH")||ge.includes("SOL")||ge.includes("XRP")||ge.includes("ADA")||ge.includes("DOGE")||ge.includes("BNB")||ge.includes("AVAX")||ge.includes("DOT")||ge.includes("LINK")||ge.endsWith("USDT")?{contractSize:1}:ge.includes("XAU")||ge.includes("XAG")?{contractSize:100}:{contractSize:1e5}},calculateVolumeUnits:({symbol:me,volume:ge})=>{const Me=R.getContractSpec(me);return(parseFloat(ge)||0)*(Me.contractSize||1)}},L=h||R,[z,q]=Ae.useState("0.01"),[$,V]=Ae.useState(""),[j,te]=Ae.useState(""),[ce,X]=Ae.useState(""),[ee,se]=Ae.useState(!1),[le,ne]=Ae.useState(null),[he,de]=Ae.useState(""),[we,xe]=Ae.useState(t||"BUY"),[Ue,ye]=Ae.useState(parseFloat(A)||0),[ve,be]=Ae.useState(parseFloat(r)||0),[Ee,Ie]=Ae.useState("text-white"),[Ze,ze]=Ae.useState("text-white"),Ce=Ae.useRef(parseFloat(A)||0),Ne=Ae.useRef(parseFloat(r)||0);Ae.useEffect(()=>{if(!i)return;const me=Bn.getSocket(),ge=_e=>{if(!(!_e||!_e.symbol)&&_e.symbol.toUpperCase()===g?.toUpperCase()){const Qe=parseFloat(_e.bid)||0,Ke=parseFloat(_e.ask)||0;Qe>0&&(Qe>Ce.current?(Ie("text-green-400"),setTimeout(()=>Ie("text-white"),500)):Qe<Ce.current&&Ce.current>0&&(Ie("text-red-400"),setTimeout(()=>Ie("text-white"),500)),ye(Qe),Ce.current=Qe),Ke>0&&(Ke>Ne.current?(ze("text-green-400"),setTimeout(()=>ze("text-white"),500)):Ke<Ne.current&&Ne.current>0&&(ze("text-red-400"),setTimeout(()=>ze("text-white"),500)),be(Ke),Ne.current=Ke)}};me.on("priceUpdate",ge);const Me=b.find(_e=>_e.symbol===g);if(Me){const _e=parseFloat(Me.bid)||0,Qe=parseFloat(Me.ask)||0;_e>0&&(ye(_e),Ce.current=_e),Qe>0&&(be(Qe),Ne.current=Qe)}return()=>{me.off("priceUpdate",ge)}},[i,g,b]),Ae.useEffect(()=>{if(i){q(o?String(o):"0.01"),V(""),te(""),X(""),de(""),xe(t||"BUY");const me=parseFloat(A)||0,ge=parseFloat(r)||0;me>0&&(ye(me),Ce.current=me),ge>0&&(be(ge),Ne.current=ge)}},[i,t,A,r,o]);const Se=Ue||0,fe=ve||0,Pe=me=>{const ge=parseFloat(z)||.01,Me=Math.max(.01,ge+me);q(Me.toFixed(2))},Je=me=>{const ge=parseFloat($)||0,Me=parseFloat(we==="BUY"?ve:Ue)||0;if(!Me){de("Current price not available. Please wait...");return}let _e=ge+me;we==="BUY"?_e=Math.max(1e-5,Math.min(_e,Me-1e-5)):_e=Math.max(Me+1e-5,_e),V(_e>0?_e.toFixed(5):""),de("")},it=me=>{const ge=parseFloat(j)||0,Me=parseFloat(we==="BUY"?ve:Ue)||0;if(!Me){de("Current price not available. Please wait...");return}let _e=ge+me;we==="BUY"?_e=Math.max(Me+1e-5,_e):_e=Math.max(1e-5,Math.min(_e,Me-1e-5)),te(_e>0?_e.toFixed(5):""),de("")},rt=async me=>{de("");const ge=me||we,Me=parseFloat(ge==="BUY"?ve:Ue),_e=parseFloat(z),Qe=$?parseFloat($):null,Ke=j?parseFloat(j):null;if(!_e||_e<=0||isNaN(_e)){de("Please enter a valid volume (minimum 0.01)");return}if(_e<.01){de("Volume must be at least 0.01");return}if(!Me||Me<=0||isNaN(Me)){de("Invalid price. Please refresh and try again.");return}if(Qe!==null&&Qe!==""){if(isNaN(Qe)||Qe<=0){de("Stop Loss must be a valid positive number");return}if(ge==="BUY"&&Qe>=Me){de("Stop Loss must be below the current price for BUY orders");return}if(ge==="SELL"&&Qe<=Me){de("Stop Loss must be above the current price for SELL orders");return}}if(Ke!==null&&Ke!==""){if(isNaN(Ke)||Ke<=0){de("Take Profit must be a valid positive number");return}if(ge==="BUY"){if(Ke<=Me){de(`Take Profit must be above the entry price (${Me.toFixed(5)}) for BUY orders`);return}}else if(ge==="SELL"&&Ke>=Me){de(`Take Profit must be below the entry price (${Me.toFixed(5)}) for SELL orders`);return}}xe(ge),ne(ge),se(!0);const Ve=new Date,dt=Ve.toLocaleTimeString(),wt=`temp_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,It=localStorage.getItem("token");if(!It){de("Please login to place trades"),se(!1),ne(null);return}const Ir={accountId:s,symbol:g,type:ge,volume:_e,price:Me,takeProfit:Ke,stopLoss:Qe,comment:ce.trim()||null},Bs={ticket:wt.substring(0,8),symbol:g,type:ge,volume:parseFloat(_e),price:parseFloat(Me),time:dt,stopLoss:Qe?parseFloat(Qe):null,takeProfit:Ke?parseFloat(Ke):null,swap:0,profit:0,profitCurrency:"USD",comment:ce.trim()||"",id:wt,status:"OPEN",openAt:Ve.toISOString()};if(!l&&x&&x(gi=>[...gi,Bs]),c&&!n){de("Execution handler is required in forceParentExecution mode"),se(!1),ne(null);return}if(n){se(!1),ne(null),e();const gi={symbol:g,type:ge,lotSize:_e,entryPrice:Me,stopLoss:Qe,takeProfit:Ke,comment:ce.trim()||null};Promise.resolve(n(gi)).then(()=>{console.log("✅ Trade executed successfully via parent handler"),v&&v()}).catch(ys=>{console.error("❌ Trade execution failed:",ys),!l&&x&&x(Dt=>Dt.filter(vt=>vt.id!==wt))})}else{if(c){de("Fallback API path disabled in forceParentExecution mode"),se(!1),ne(null);return}se(!1),ne(null),e();const gi=F||Um?.VITE_BASE_URL||"http://localhost:8000",ys=M?.trades||"/api/trades";ht.post(`${gi}${ys}`,Ir,{headers:{Authorization:`Bearer ${It}`,"Content-Type":"application/json"}}).then(Dt=>{if(Dt.data&&Dt.data.data){const vt=Dt.data.data.trade;!l&&x&&x(St=>St.map(jt=>jt.id===wt?{...jt,id:vt.id,ticket:vt.id.substring(0,8),time:dt,openAt:vt.openAt}:jt)),console.log("✅ Trade saved successfully:",vt),window.notify&&window.notify(`Trade placed successfully: ${vt.symbol} ${vt.type}`,"success")}else{!l&&x&&x(St=>St.filter(jt=>jt.id!==wt));const vt=Dt.data?.message||"Failed to place trade";window.notify&&window.notify(vt,"error")}}).catch(Dt=>{console.error("Error placing trade:",Dt),!l&&x&&x(St=>St.filter(jt=>jt.id!==wt));let vt="Failed to place trade";if(Dt.response){const St=Dt.response.status,jt=Dt.response.data;St===400?vt=jt?.message||"Invalid trade data. Please check your inputs.":St===401?vt="Authentication failed. Please login again.":St===404?vt=jt?.message||"Symbol not found. Please select a valid symbol.":St===500?vt="Server error. Please try again later.":vt=jt?.message||`Error: ${St}`}else Dt.request&&(vt="Network error. Please check your internet connection.");window.notify&&window.notify(vt,"error")})}},ke=(L?.calculateVolumeUnits?.({symbol:g,volume:parseFloat(z)||0})??0).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2});return i?a.jsxs("div",{className:`w-full flex flex-col pointer-events-auto z-30 h-full ${N?"bg-white border-r border-slate-300":"bg-[#12161d] border-r border-slate-700"}`,children:[a.jsxs("div",{className:`px-4 py-2.5 flex items-center justify-between border-b ${N?"border-slate-300 bg-white":"border-slate-700 bg-[#12161d]"}`,children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("h3",{className:`text-sm font-semibold ${N?"text-slate-800":"text-white"}`,children:"Market Execution"}),a.jsx("button",{className:`p-0.5 transition-colors ${N?"text-slate-600 hover:text-slate-800":"text-white hover:text-white"}`,children:a.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})})]}),a.jsx("button",{onClick:e,className:`p-1 rounded transition-colors ${N?"text-slate-600 hover:text-slate-800 hover:bg-slate-100":"text-white hover:text-white hover:bg-[#12161d]"}`,children:a.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),a.jsxs("div",{className:"overflow-y-auto p-4 space-y-4 flex-1",children:[he&&a.jsx("div",{className:"p-2 rounded-lg bg-rose-500/10 border border-rose-500/50 text-rose-400 text-xs",children:he}),a.jsxs("div",{children:[a.jsxs("div",{className:"flex items-center justify-between mb-4",children:[a.jsx("label",{className:`text-sm font-medium ${N?"text-slate-700":"text-white"}`,children:"Volume"}),a.jsxs("span",{className:`text-sm ${N?"text-slate-700":"text-white"}`,children:[ke," ",g]})]}),a.jsxs("div",{className:"relative flex items-center",children:[a.jsx("button",{type:"button",onClick:()=>Pe(-.01),className:`absolute left-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${N?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,children:"−"}),a.jsx("input",{type:"number",value:z,onChange:me=>{const ge=me.target.value;(ge===""||/^\d*\.?\d{0,2}$/.test(ge))&&(q(ge),de(""))},onBlur:()=>{const me=parseFloat(z);q(isNaN(me)||me<.01?"0.01":me.toFixed(2))},className:`w-full px-10 py-2 rounded text-sm focus:outline-none focus:border-secondary text-center ${N?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-white"}`,step:"0.01",min:"0.01",placeholder:"0.01"}),a.jsx("button",{type:"button",onClick:()=>Pe(.01),className:`absolute right-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${N?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,children:"+"})]})]}),a.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[a.jsxs("div",{children:[a.jsx("div",{className:"flex items-center justify-between mb-2",children:a.jsx("label",{className:`text-sm font-medium ${N?"text-slate-700":"text-white"}`,children:"Stop Loss"})}),a.jsxs("div",{className:"relative flex items-center",children:[a.jsx("button",{type:"button",onClick:()=>Je(-1e-4),className:`absolute left-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${N?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Decrease SL",children:"−"}),a.jsx("input",{type:"text",value:$,onChange:me=>{const ge=me.target.value;(ge===""||/^\d*\.?\d*$/.test(ge))&&(V(ge),de(""))},onBlur:me=>{const ge=parseFloat(me.target.value);!isNaN(ge)&&ge>0?V(ge.toFixed(5)):me.target.value===""&&V("")},placeholder:"0.00000",className:`w-full px-10 py-2 rounded text-sm focus:outline-none focus:border-secondary text-center ${N?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-slate-100"}`}),a.jsx("button",{type:"button",onClick:()=>Je(1e-4),className:`absolute right-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${N?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Increase SL",children:"+"})]})]}),a.jsxs("div",{children:[a.jsx("div",{className:"flex items-center justify-between mb-2",children:a.jsx("label",{className:`text-sm font-medium ${N?"text-slate-700":"text-white"}`,children:"Take Profit"})}),a.jsxs("div",{className:"relative flex items-center",children:[a.jsx("button",{type:"button",onClick:()=>it(-1e-4),className:`absolute left-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${N?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Decrease TP",children:"−"}),a.jsx("input",{type:"text",value:j,onChange:me=>{const ge=me.target.value;(ge===""||/^\d*\.?\d*$/.test(ge))&&(te(ge),de(""))},onBlur:me=>{const ge=parseFloat(me.target.value);!isNaN(ge)&&ge>0?te(ge.toFixed(5)):me.target.value===""&&te("")},placeholder:"0.00000",className:`w-full px-10 py-2 rounded text-sm focus:outline-none focus:border-secondary text-center ${N?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-slate-100"}`}),a.jsx("button",{type:"button",onClick:()=>it(1e-4),className:`absolute right-1 w-8 h-8 flex items-center justify-center rounded text-sm transition-colors z-10 ${N?"bg-slate-100 hover:bg-slate-400 text-slate-700":"bg-[#12161d] hover:bg-slate-600 text-white"}`,title:"Increase TP",children:"+"})]})]})]}),a.jsxs("div",{children:[a.jsx("label",{className:`block text-sm font-medium mb-2 ${N?"text-slate-700":"text-white"}`,children:"Comment"}),a.jsx("textarea",{value:ce,onChange:me=>X(me.target.value),placeholder:"Optional comment",rows:2,className:`w-full px-3 py-2 rounded text-sm focus:outline-none focus:border-secondary resize-none ${N?"bg-white border border-slate-400 text-slate-800":"bg-[#12161d] border border-slate-700 text-slate-100"}`})]}),a.jsxs("div",{className:`flex items-center justify-between py-2 border-t ${N?"border-slate-400":"border-slate-700"}`,children:[a.jsxs("div",{className:"text-sm",children:[a.jsx("span",{className:N?"text-slate-700":"text-white",children:"Bid: "}),a.jsx("span",{className:`${Ee} font-medium transition-colors duration-400`,children:Se>0?Se.toFixed(5):"---"})]}),a.jsxs("div",{className:"text-sm",children:[a.jsx("span",{className:N?"text-slate-700":"text-white",children:"Ask: "}),a.jsx("span",{className:`${Ze} font-medium transition-colors duration-400`,children:fe>0?fe.toFixed(5):"---"})]})]}),a.jsxs("div",{className:"grid grid-cols-2 gap-3 pt-2",children:[a.jsx("button",{onClick:()=>rt("SELL"),disabled:ee,className:"px-4 py-3 bg-rose-600 hover:bg-rose-700 text-white font-semibold rounded text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:ee&&le==="SELL"?a.jsxs("span",{className:"flex items-center justify-center gap-2",children:[a.jsxs("svg",{className:"animate-spin h-4 w-4",viewBox:"0 0 24 24",children:[a.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4",fill:"none"}),a.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),"Placing..."]}):"Sell by Market"}),a.jsx("button",{onClick:()=>rt("BUY"),disabled:ee,className:"px-4 py-3 bg-sky-600 hover:bg-sky-700 text-white font-semibold rounded text-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:ee&&le==="BUY"?a.jsxs("span",{className:"flex items-center justify-center gap-2",children:[a.jsxs("svg",{className:"animate-spin h-4 w-4",viewBox:"0 0 24 24",children:[a.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4",fill:"none"}),a.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),"Placing..."]}):"Buy by Market"})]})]})]}):null},Sm={text:"Text",trendline:"Trend Line",parallellines:"Parallel Channel",fibonacci:"Fibonacci Retracement",rectangle:"Rectangle",pricelevel:"Horizontal Line",horizontalray:"Horizontal Ray",verticalline:"Vertical Line",infoline:"Info Line",rulerline:"Ruler Line",arrowedline:"Arrowed Line",rayline:"Ray",extendedline:"Extended Line",crossline:"Cross Line",trendbyangle:"Trend By Angle",disjointchannel:"Disjoint Channel",flattopbottom:"Flat Top/Bottom",regressionchannel:"Regression Channel",stddevchannel:"StdDev Channel",andrewspitchfork:"Andrew's Pitchfork",gannline:"Gann Line",gannfan:"Gann Fan",ganngrid:"Gann Grid",circle:"Circle",triangle:"Triangle",ellipse:"Ellipse",equidistantchannel:"Equidistant Channel"},Em=[10,11,12,14,16,20,24,28,30,40],vn=[{key:"M1",label:"1 Minute"},{key:"M5",label:"5 Minutes"},{key:"M15",label:"15 Minutes"},{key:"M30",label:"30 Minutes"},{key:"H1",label:"1 Hour"},{key:"H4",label:"4 Hours"},{key:"D1",label:"Daily"},{key:"W1",label:"Weekly"},{key:"MN",label:"Monthly"}],KA={width:"78%",height:"78%",display:"block"},Th={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:0};function Lm(i){return i?{background:"#ffffff",text:"#1f2937",mutedText:"#6b7280",border:"#cfd6df",fieldBg:"#ffffff",fieldBorder:"#cfd6df",fieldDisabledBg:"#e5e7eb",fieldDisabledText:"#9ca3af",headerBlue:"#2f80ed",headerText:"#ffffff",activeFill:"#eaf3ff",activeText:"#2f80ed",green:"#22a447",greenHover:"#2bb151",greenActive:"#1f8f3d"}:{background:"#242d3d",text:"#e5e7eb",mutedText:"#a7b0c0",border:"#4a5568",fieldBg:"#2f3a4e",fieldBorder:"#5f6a80",fieldDisabledBg:"#4f5a70",fieldDisabledText:"#9aa3b2",headerBlue:"#2f80ed",headerText:"#ffffff",activeFill:"#dbeafe",activeText:"#1d4ed8",green:"#22a447",greenHover:"#2bb151",greenActive:"#1f8f3d"}}function xA(i,e="#5f8f96"){if(typeof i!="string")return e;const t=i.trim();if(!t)return e;const A=t.startsWith("#")?t:`#${t}`;return/^#[0-9A-Fa-f]{6}$/.test(A)?A.toLowerCase():e}const Mm=()=>a.jsx(bm,{style:KA}),Hm=()=>a.jsx(Qm,{style:KA}),Im=()=>a.jsx(Cm,{style:KA}),Dm=()=>a.jsx(xm,{style:KA}),_m=()=>a.jsx(Bm,{style:KA}),Pm=()=>a.jsx(wm,{style:KA}),km=()=>a.jsx(ym,{style:KA}),Nm=()=>a.jsx(yh,{style:KA}),Do=({size:i,children:e})=>a.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:i,height:i},children:e});function or({checked:i,onClick:e,hideLeftBorder:t,tokens:A,children:r,title:n}){return a.jsx("button",{type:"button",onClick:e,title:n,style:{display:"flex",width:30,height:30,alignItems:"center",justifyContent:"center",border:`1px solid ${A.border}`,borderLeftWidth:t?0:1,background:i?A.activeFill:"transparent",color:i?A.activeText:A.text,cursor:"pointer",padding:0},children:a.jsx(Do,{size:"18px",children:r})})}function Ye({checked:i,onChange:e,label:t,tokens:A,disabled:r=!1}){return a.jsxs("label",{style:{display:"inline-flex",alignItems:"center",userSelect:"none",opacity:r?.5:1,cursor:r?"default":"pointer"},children:[a.jsx("input",{type:"checkbox",checked:i,onChange:n=>e(n.target.checked),disabled:r,style:Th}),a.jsx("span",{style:{width:18,height:18,marginRight:8,display:"inline-flex",alignItems:"center",justifyContent:"center",border:`1px solid ${A.border}`,background:A.fieldBg},children:i&&a.jsx("span",{style:{width:10,height:10,background:A.headerBlue}})}),a.jsx("span",{style:{fontSize:12,color:A.text},children:t})]})}function Ft({value:i,onChange:e,onBlur:t,disabled:A=!1,tokens:r}){const n=xA(i,"#5f8f96"),s=(i||"").replace("#",""),o={display:"inline-flex",alignItems:"center",width:104,height:30,padding:4,opacity:A?.5:1,border:`1px solid ${r.fieldBorder}`,background:r.fieldBg,boxSizing:"border-box"},l={position:"relative",width:20,height:20,display:"block",flexShrink:0},c={width:"100%",minWidth:0,height:"100%",border:"none",marginLeft:"4px",padding:"0 8px 0 2px",fontFamily:"ui-sans-serif, system-ui, -apple-system, Segoe UI, sans-serif",fontSize:12,lineHeight:"30px",textTransform:"lowercase",outline:"none",boxSizing:"border-box",background:"transparent",color:A?r.fieldDisabledText:r.text};return a.jsxs("div",{style:o,children:[a.jsxs("label",{style:l,children:[a.jsx("input",{type:"color",value:n,onChange:h=>e(h.target.value),disabled:A,style:{...Th,position:"absolute"}}),a.jsx("span",{style:{display:"block",width:20,height:20,boxShadow:"inset 0 0 0 1px #c7cdd7",background:n}})]}),a.jsx("input",{type:"text",size:0,maxLength:6,value:s,onChange:h=>{const g=h.target.value.replace(/[^0-9a-fA-F]/g,"").slice(0,6);e(g?`#${g}`:"")},onBlur:t,disabled:A,style:c})]})}function oA({tokens:i,disabled:e=!1,style:t={},...A}){return a.jsx("input",{type:"number",disabled:e,style:{height:30,width:"100%",border:`1px solid ${e?i.fieldDisabledBg:i.fieldBorder}`,padding:"0 4px",fontSize:12,outline:"none",boxSizing:"border-box",background:e?i.fieldDisabledBg:i.fieldBg,color:e?i.fieldDisabledText:i.text,...t},...A})}function ai({value:i,onChange:e,tokens:t,disabled:A=!1,width:r,children:n}){return a.jsxs("div",{style:{position:"relative",width:r??"100%",height:30,flexShrink:0},children:[a.jsx("select",{value:i,onChange:e,disabled:A,style:{width:"100%",height:"100%",appearance:"none",border:`1px solid ${A?t.fieldDisabledBg:t.fieldBorder}`,padding:"0 26px 0 8px",fontSize:12,outline:"none",boxSizing:"border-box",background:A?t.fieldDisabledBg:t.fieldBg,color:A?t.fieldDisabledText:t.text,cursor:A?"default":"pointer",opacity:A?.5:1},children:n}),a.jsx("div",{style:{position:"absolute",right:8,top:"50%",transform:"translateY(-50%)",width:16,height:16,pointerEvents:"none",color:t.mutedText,display:"flex",alignItems:"center",justifyContent:"center"},children:a.jsx(Nm,{})})]})}function Om({draft:i,setDraft:e,tokens:t}){const A=i.visibleTimeframes?.length===vn.length,r=()=>{e(s=>({...s,visibleTimeframes:A?[]:vn.map(o=>o.key)}))},n=s=>{e(o=>{const l=o.visibleTimeframes||[];return{...o,visibleTimeframes:l.includes(s)?l.filter(c=>c!==s):[...l,s]}})};return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"8px 16px"},children:[a.jsx(Ye,{checked:A,onChange:r,label:"Show on all the timeframes",tokens:t}),a.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",columnGap:12,rowGap:8},children:vn.map(s=>a.jsx(Ye,{checked:(i.visibleTimeframes||[]).includes(s.key),onChange:()=>n(s.key),label:s.label,tokens:t,disabled:A},s.key))})]})}function Km({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>{A(n,xA(s,o))};return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"8px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.color||"#5f8f96",onChange:n=>A("color",n),onBlur:()=>r("color",i.color,"#5f8f96"),tokens:t}),a.jsx(ai,{value:i.fontSize||12,onChange:n=>A("fontSize",Number(n.target.value)),tokens:t,width:84,children:Em.map(n=>a.jsx("option",{value:n,children:n},n))}),a.jsxs("div",{style:{display:"flex"},children:[a.jsx(or,{checked:i.fontWeight==="bold",onClick:()=>A("fontWeight",i.fontWeight==="bold"?"normal":"bold"),tokens:t,title:"Bold",children:a.jsx(Im,{})}),a.jsx(or,{checked:i.fontStyle==="italic",onClick:()=>A("fontStyle",i.fontStyle==="italic"?"normal":"italic"),hideLeftBorder:!0,tokens:t,title:"Italic",children:a.jsx(Dm,{})})]}),a.jsxs("div",{style:{display:"flex"},children:[a.jsx(or,{checked:i.textAlign==="left",onClick:()=>A("textAlign","left"),tokens:t,title:"Align left",children:a.jsx(_m,{})}),a.jsx(or,{checked:i.textAlign==="center",onClick:()=>A("textAlign","center"),hideLeftBorder:!0,tokens:t,title:"Align center",children:a.jsx(Pm,{})}),a.jsx(or,{checked:i.textAlign==="right",onClick:()=>A("textAlign","right"),hideLeftBorder:!0,tokens:t,title:"Align right",children:a.jsx(km,{})})]})]}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"112px 104px 56px minmax(112px, 1fr)",gap:8,alignItems:"center"},children:[a.jsx(Ye,{checked:!!i.textWrap,onChange:n=>A("textWrap",n),label:"Text Wrap",tokens:t}),a.jsx("div",{}),a.jsx("div",{}),a.jsx("div",{}),a.jsx(Ye,{checked:!!i.borderEnabled,onChange:n=>A("borderEnabled",n),label:"Border",tokens:t}),a.jsx(Ft,{value:i.borderColor||"#5f8f96",onChange:n=>A("borderColor",n),onBlur:()=>r("borderColor",i.borderColor,"#5f8f96"),disabled:!i.borderEnabled,tokens:t}),a.jsx(oA,{tokens:t,min:"0",max:"1",step:"0.01",disabled:!i.borderEnabled,value:i.borderOpacity??.1,onChange:n=>A("borderOpacity",Number(n.target.value))}),a.jsxs("div",{style:{display:"flex",height:30,alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",disabled:!i.borderEnabled,value:i.borderWidth??1,onChange:n=>A("borderWidth",Number(n.target.value)),style:{width:"100%",accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text},children:i.borderWidth??1})]}),a.jsx(Ye,{checked:!!i.bgEnabled,onChange:n=>A("bgEnabled",n),label:"Background",tokens:t}),a.jsx(Ft,{value:i.bgColor||"#5f8f96",onChange:n=>A("bgColor",n),onBlur:()=>r("bgColor",i.bgColor,"#5f8f96"),disabled:!i.bgEnabled,tokens:t}),a.jsx(oA,{tokens:t,min:"0",max:"1",step:"0.01",disabled:!i.bgEnabled,value:i.bgOpacity??.1,onChange:n=>A("bgOpacity",Number(n.target.value))}),a.jsx("div",{})]}),a.jsx("textarea",{value:i.text||"",onChange:n=>A("text",n.target.value),placeholder:"Your text",rows:4,style:{width:"100%",resize:"none",border:`1px solid ${t.fieldBorder}`,padding:8,fontSize:12,lineHeight:"20px",outline:"none",boxSizing:"border-box",background:t.fieldBg,color:t.text}})]})}function Tn({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#22c55e",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#22c55e"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:n=>A("lineWidth",Number(n.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60},children:"Arrows"}),a.jsx(Ye,{checked:!!i.arrowLeft,onChange:n=>A("arrowLeft",n),label:"Left",tokens:t}),a.jsx(Ye,{checked:!!i.arrowRight,onChange:n=>A("arrowRight",n),label:"Right",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60},children:"Rays"}),a.jsx(Ye,{checked:!!i.rayLeft,onChange:n=>A("rayLeft",n),label:"Left",tokens:t}),a.jsx(Ye,{checked:!!i.rayRight,onChange:n=>A("rayRight",n),label:"Right",tokens:t})]}),a.jsxs("div",{children:[a.jsx("div",{style:{fontSize:13,fontWeight:600,color:t.text,marginBottom:10},children:"Statistics"}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"60px 104px minmax(80px, 1fr) auto",alignItems:"center",gap:8,marginBottom:10},children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"Style"}),a.jsx(Ft,{value:i.statsColor||"#5f8f96",onChange:n=>A("statsColor",n),onBlur:()=>r("statsColor",i.statsColor,"#5f8f96"),tokens:t}),a.jsxs(ai,{value:i.statsPosition??"right",onChange:n=>A("statsPosition",n.target.value),tokens:t,children:[a.jsx("option",{value:"left",children:"Left"}),a.jsx("option",{value:"center",children:"Center"}),a.jsx("option",{value:"right",children:"Right"})]}),a.jsx(Ye,{checked:!!i.statsShowAlways,onChange:n=>A("statsShowAlways",n),label:"Show always",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60,flexShrink:0},children:"Properties"}),a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[a.jsx(Ye,{checked:!!i.statsPriceRange,onChange:n=>A("statsPriceRange",n),label:"Price range",tokens:t}),a.jsx(Ye,{checked:!!i.statsBarsRange,onChange:n=>A("statsBarsRange",n),label:"Bars range",tokens:t}),a.jsx(Ye,{checked:!!i.statsDateRange,onChange:n=>A("statsDateRange",n),label:"Date range",tokens:t}),a.jsx(Ye,{checked:!!i.statsAngle,onChange:n=>A("statsAngle",n),label:"Angle",tokens:t}),a.jsx(Ye,{checked:!!i.statsDistance,onChange:n=>A("statsDistance",n),label:"Distance",tokens:t})]})]})]})]})}function Vm({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsx("div",{style:{display:"flex",alignItems:"center",gap:12},children:a.jsx(Ft,{value:i.lineColor||"#3b82f6",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#3b82f6"),tokens:t})}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[a.jsx("div",{style:{fontSize:13,fontWeight:600,color:t.text},children:"Properties"}),a.jsx(Ye,{checked:i.showArea!==!1,onChange:n=>A("showArea",n),label:"Show area",tokens:t})]}),a.jsxs("div",{children:[a.jsx("div",{style:{fontSize:13,fontWeight:600,color:t.text,marginBottom:10},children:"Statistics"}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"60px 104px minmax(80px, 1fr) auto",alignItems:"center",gap:8,marginBottom:10},children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"Style"}),a.jsx(Ft,{value:i.statsColor||"#5f8f96",onChange:n=>A("statsColor",n),onBlur:()=>r("statsColor",i.statsColor,"#5f8f96"),tokens:t}),a.jsxs(ai,{value:i.statsPosition??"right",onChange:n=>A("statsPosition",n.target.value),tokens:t,children:[a.jsx("option",{value:"left",children:"Left"}),a.jsx("option",{value:"center",children:"Center"}),a.jsx("option",{value:"right",children:"Right"})]}),a.jsx(Ye,{checked:!!i.statsShowAlways,onChange:n=>A("statsShowAlways",n),label:"Show always",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60,flexShrink:0},children:"Properties"}),a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[a.jsx(Ye,{checked:!!i.statsPriceRange,onChange:n=>A("statsPriceRange",n),label:"Price range",tokens:t}),a.jsx(Ye,{checked:!!i.statsBarsRange,onChange:n=>A("statsBarsRange",n),label:"Bars range",tokens:t}),a.jsx(Ye,{checked:!!i.statsDateRange,onChange:n=>A("statsDateRange",n),label:"Date range",tokens:t})]})]})]})]})}function zm({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#3b82f6",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#3b82f6"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:n=>A("lineWidth",Number(n.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{children:[a.jsx("div",{style:{fontSize:13,fontWeight:600,color:t.text,marginBottom:10},children:"Statistics"}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"60px 104px minmax(80px, 1fr) auto",alignItems:"center",gap:8,marginBottom:10},children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"Style"}),a.jsx(Ft,{value:i.statsColor||"#5f8f96",onChange:n=>A("statsColor",n),onBlur:()=>r("statsColor",i.statsColor,"#5f8f96"),tokens:t}),a.jsxs(ai,{value:i.statsPosition??"right",onChange:n=>A("statsPosition",n.target.value),tokens:t,children:[a.jsx("option",{value:"left",children:"Left"}),a.jsx("option",{value:"center",children:"Center"}),a.jsx("option",{value:"right",children:"Right"})]}),a.jsx(Ye,{checked:!!i.statsShowAlways,onChange:n=>A("statsShowAlways",n),label:"Show always",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60,flexShrink:0},children:"Properties"}),a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[a.jsx(Ye,{checked:!!i.statsPriceRange,onChange:n=>A("statsPriceRange",n),label:"Price range",tokens:t}),a.jsx(Ye,{checked:!!i.statsBarsRange,onChange:n=>A("statsBarsRange",n),label:"Bars range",tokens:t}),a.jsx(Ye,{checked:!!i.statsDateRange,onChange:n=>A("statsDateRange",n),label:"Date range",tokens:t}),a.jsx(Ye,{checked:!!i.statsAngle,onChange:n=>A("statsAngle",n),label:"Angle",tokens:t}),a.jsx(Ye,{checked:!!i.statsDistance,onChange:n=>A("statsDistance",n),label:"Distance",tokens:t})]})]})]})]})}function Wm({draft:i,setDraft:e,tokens:t}){return a.jsx("div",{style:{padding:"12px 16px"},children:a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx("span",{style:{fontSize:12,whiteSpace:"nowrap",color:t.text},children:"#1 (Bar, Price)"}),a.jsx(oA,{tokens:t,value:i.price??"",onChange:A=>{const r=Number(A.target.value);Number.isFinite(r)&&e(n=>({...n,price:r}))},style:{width:180}})]})})}function li(i){if(!i)return"";const e=new Date(i*1e3),t=A=>String(A).padStart(2,"0");return`${t(e.getUTCDate())}.${t(e.getUTCMonth()+1)}.${e.getUTCFullYear()} ${t(e.getUTCHours())}:${t(e.getUTCMinutes())}:${t(e.getUTCSeconds())}`}function ci({draft:i,setDraft:e,tokens:t}){const A=(s,o)=>{const l=Number(o);Number.isFinite(l)&&e(c=>({...c,[s]:l}))},r={display:"grid",gridTemplateColumns:"100px 1fr 110px",alignItems:"center",gap:8},n={height:30,width:"100%",border:`1px solid ${t.fieldBorder}`,padding:"0 8px",fontSize:12,outline:"none",boxSizing:"border-box",background:t.fieldDisabledBg,color:t.fieldDisabledText};return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"12px 16px"},children:[a.jsxs("div",{style:r,children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#1 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.point1Time),style:n}),a.jsx(oA,{tokens:t,value:i.point1Price??"",onChange:s=>A("point1Price",s.target.value)})]}),a.jsxs("div",{style:r,children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#2 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.point2Time),style:n}),a.jsx(oA,{tokens:t,value:i.point2Price??"",onChange:s=>A("point2Price",s.target.value)})]})]})}function xh({draft:i,setDraft:e,tokens:t}){const A=(s,o)=>e(l=>({...l,[s]:o})),r=(s,o,l)=>A(s,xA(o,l)),n=!i.showText;return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#3b82f6",onChange:s=>A("lineColor",s),onBlur:()=>r("lineColor",i.lineColor,"#3b82f6"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:s=>A("lineWidth",Number(s.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr 1fr",gap:8,alignItems:"center"},children:[a.jsx("div",{style:{fontSize:12,fontWeight:600,color:t.text},children:"Properties"}),a.jsx(Ye,{checked:i.showPrice!==!1,onChange:s=>A("showPrice",s),label:"Show price",tokens:t}),a.jsx("div",{}),a.jsx("div",{}),a.jsx(Ye,{checked:!!i.showText,onChange:s=>A("showText",s),label:"Show text",tokens:t}),a.jsx(Ft,{value:i.textColor||"#ffffff",onChange:s=>A("textColor",s),onBlur:()=>r("textColor",i.textColor,"#ffffff"),disabled:n,tokens:t}),a.jsxs(ai,{value:i.textHAlign??"center",onChange:s=>A("textHAlign",s.target.value),disabled:n,tokens:t,width:90,children:[a.jsx("option",{value:"left",children:"Left"}),a.jsx("option",{value:"center",children:"Center"}),a.jsx("option",{value:"right",children:"Right"})]}),a.jsxs(ai,{value:i.textVAlign??"top",onChange:s=>A("textVAlign",s.target.value),disabled:n,tokens:t,width:90,children:[a.jsx("option",{value:"top",children:"Top"}),a.jsx("option",{value:"middle",children:"Middle"}),a.jsx("option",{value:"bottom",children:"Bottom"})]})]}),a.jsx("textarea",{value:i.textContent||"",onChange:s=>A("textContent",s.target.value),placeholder:"Your text",rows:4,disabled:n,style:{width:"100%",resize:"none",border:`1px solid ${n?t.fieldDisabledBg:t.fieldBorder}`,padding:8,fontSize:12,lineHeight:"20px",outline:"none",boxSizing:"border-box",background:n?t.fieldDisabledBg:t.fieldBg,color:n?t.fieldDisabledText:t.text,opacity:n?.5:1}})]})}function Rm({draft:i,setDraft:e,tokens:t}){return a.jsx("div",{style:{padding:"12px 16px"},children:a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx("span",{style:{fontSize:12,whiteSpace:"nowrap",color:t.text},children:"Price"}),a.jsx(oA,{tokens:t,value:i.price??"",onChange:A=>{const r=Number(A.target.value);Number.isFinite(r)&&e(n=>({...n,price:r}))},style:{width:180}})]})})}function Gm({draft:i,setDraft:e,tokens:t}){const A={display:"grid",gridTemplateColumns:"100px 1fr 110px",alignItems:"center",gap:8},r={height:30,width:"100%",border:`1px solid ${t.fieldBorder}`,padding:"0 8px",fontSize:12,outline:"none",boxSizing:"border-box",background:t.fieldDisabledBg,color:t.fieldDisabledText};return a.jsx("div",{style:{padding:"12px 16px"},children:a.jsxs("div",{style:A,children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#1 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.originTime),style:r}),a.jsx(oA,{tokens:t,value:i.price??"",onChange:n=>{const s=Number(n.target.value);Number.isFinite(s)&&e(o=>({...o,price:s}))}})]})})}function $m({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#3b82f6",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#3b82f6"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:n=>A("lineWidth",Number(n.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr 1fr",gap:8,alignItems:"center"},children:[a.jsx("div",{style:{fontSize:12,fontWeight:600,color:t.text},children:"Properties"}),a.jsx(Ye,{checked:i.showDate!==!1,onChange:n=>A("showDate",n),label:"Show date",tokens:t}),a.jsx("div",{}),a.jsx("div",{})]})]})}function Xm({draft:i,tokens:e}){const t={height:30,flex:1,border:`1px solid ${e.fieldBorder}`,padding:"0 8px",fontSize:12,outline:"none",boxSizing:"border-box",background:e.fieldDisabledBg,color:e.fieldDisabledText};return a.jsx("div",{style:{padding:"12px 16px"},children:a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx("span",{style:{fontSize:12,whiteSpace:"nowrap",color:e.text},children:"#1 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.rawTime),style:t})]})})}function Zm({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#7aa6ae",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#7aa6ae"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:n=>A("lineWidth",Number(n.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60},children:"Arrows"}),a.jsx(Ye,{checked:!!i.arrowLeft,onChange:n=>A("arrowLeft",n),label:"Left",tokens:t}),a.jsx(Ye,{checked:!!i.arrowRight,onChange:n=>A("arrowRight",n),label:"Right",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60},children:"Rays"}),a.jsx(Ye,{checked:!!i.rayLeft,onChange:n=>A("rayLeft",n),label:"Left",tokens:t}),a.jsx(Ye,{checked:!!i.rayRight,onChange:n=>A("rayRight",n),label:"Right",tokens:t})]}),a.jsxs("div",{children:[a.jsx("div",{style:{fontSize:13,fontWeight:600,color:t.text,marginBottom:10},children:"Statistics"}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"60px 104px minmax(80px, 1fr) auto",alignItems:"center",gap:8,marginBottom:10},children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"Style"}),a.jsx(Ft,{value:i.statsColor||"#5f8f96",onChange:n=>A("statsColor",n),onBlur:()=>r("statsColor",i.statsColor,"#5f8f96"),tokens:t}),a.jsxs(ai,{value:i.statsPosition??"right",onChange:n=>A("statsPosition",n.target.value),tokens:t,children:[a.jsx("option",{value:"left",children:"Left"}),a.jsx("option",{value:"center",children:"Center"}),a.jsx("option",{value:"right",children:"Right"})]}),a.jsx(Ye,{checked:!!i.statsShowAlways,onChange:n=>A("statsShowAlways",n),label:"Show always",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60,flexShrink:0},children:"Properties"}),a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[a.jsx(Ye,{checked:!!i.statsPriceRange,onChange:n=>A("statsPriceRange",n),label:"Price range",tokens:t}),a.jsx(Ye,{checked:!!i.statsDistance,onChange:n=>A("statsDistance",n),label:"Distance",tokens:t})]})]})]})]})}function Jm({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#06a0e3",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#06a0e3"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:n=>A("lineWidth",Number(n.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr 1fr",gap:8,alignItems:"center"},children:[a.jsx("div",{style:{fontSize:12,fontWeight:600,color:t.text},children:"Properties"}),a.jsx(Ye,{checked:!!i.showTime,onChange:n=>A("showTime",n),label:"Show time",tokens:t}),a.jsx(Ye,{checked:!!i.showPrice,onChange:n=>A("showPrice",n),label:"Show price",tokens:t}),a.jsx("div",{})]})]})}function Ym({draft:i,setDraft:e,tokens:t}){const A={display:"grid",gridTemplateColumns:"100px 1fr 110px",alignItems:"center",gap:8},r={height:30,width:"100%",border:`1px solid ${t.fieldBorder}`,padding:"0 8px",fontSize:12,outline:"none",boxSizing:"border-box",background:t.fieldDisabledBg,color:t.fieldDisabledText};return a.jsx("div",{style:{padding:"12px 16px"},children:a.jsxs("div",{style:A,children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#1 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.rawTime),style:r}),a.jsx(oA,{tokens:t,value:i.price??"",onChange:n=>{const s=Number(n.target.value);Number.isFinite(s)&&e(o=>({...o,price:s}))}})]})})}function bh({draft:i,setDraft:e,tokens:t}){const A=(n,s)=>e(o=>({...o,[n]:s})),r=(n,s,o)=>A(n,xA(s,o));return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,padding:"12px 16px"},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[a.jsx(Ft,{value:i.lineColor||"#129f5c",onChange:n=>A("lineColor",n),onBlur:()=>r("lineColor",i.lineColor,"#129f5c"),tokens:t}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx("input",{type:"range",min:"1",max:"5",step:"1",value:i.lineWidth??2,onChange:n=>A("lineWidth",Number(n.target.value)),style:{flex:1,accentColor:t.headerBlue}}),a.jsx("span",{style:{width:16,fontSize:12,color:t.text,textAlign:"right"},children:i.lineWidth??2})]})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx(Ye,{checked:!!i.showBackground,onChange:n=>A("showBackground",n),label:"Background",tokens:t}),a.jsx(Ft,{value:i.fillColor||"#6aa84f",onChange:n=>A("fillColor",n),onBlur:()=>r("fillColor",i.fillColor,"#6aa84f"),tokens:t}),a.jsx(oA,{tokens:t,value:i.fillOpacity??.1,onChange:n=>{const s=parseFloat(n.target.value);Number.isFinite(s)&&A("fillOpacity",Math.max(0,Math.min(1,s)))},style:{width:52}})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[a.jsx(Ye,{checked:!!i.showPrices,onChange:n=>A("showPrices",n),label:"Prices",tokens:t}),a.jsx(Ft,{value:i.pricesColor||"#129f5c",onChange:n=>A("pricesColor",n),onBlur:()=>r("pricesColor",i.pricesColor,"#129f5c"),tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60},children:"Rays"}),a.jsx(Ye,{checked:!!i.rayLeft,onChange:n=>A("rayLeft",n),label:"Left",tokens:t}),a.jsx(Ye,{checked:!!i.rayRight,onChange:n=>A("rayRight",n),label:"Right",tokens:t})]}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:24},children:[a.jsx("span",{style:{fontSize:12,color:t.text,width:60},children:"Arrows"}),a.jsx(Ye,{checked:!!i.arrowLeft,onChange:n=>A("arrowLeft",n),label:"Left",tokens:t}),a.jsx(Ye,{checked:!!i.arrowRight,onChange:n=>A("arrowRight",n),label:"Right",tokens:t})]})]})}function Qh({draft:i,setDraft:e,tokens:t}){const A=(s,o)=>{const l=Number(o);Number.isFinite(l)&&e(c=>({...c,[s]:l}))},r={display:"grid",gridTemplateColumns:"100px 1fr 110px",alignItems:"center",gap:8},n={height:30,width:"100%",border:`1px solid ${t.fieldBorder}`,padding:"0 8px",fontSize:12,outline:"none",boxSizing:"border-box",background:t.fieldDisabledBg,color:t.fieldDisabledText};return a.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"12px 16px"},children:[a.jsxs("div",{style:r,children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#1 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.point1Time),style:n}),a.jsx(oA,{tokens:t,value:i.point1Price??"",onChange:s=>A("point1Price",s.target.value)})]}),a.jsxs("div",{style:r,children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#2 (Bar, Price)"}),a.jsx("input",{type:"text",readOnly:!0,value:li(i.point2Time),style:n}),a.jsx(oA,{tokens:t,value:i.point2Price??"",onChange:s=>A("point2Price",s.target.value)})]}),a.jsxs("div",{style:{display:"grid",gridTemplateColumns:"100px 110px",alignItems:"center",gap:8},children:[a.jsx("span",{style:{fontSize:12,color:t.text},children:"#3 (Bar, Price)"}),a.jsx(oA,{tokens:t,value:i.point3Price??"",onChange:s=>A("point3Price",s.target.value)})]})]})}function qm(i){if(!i)return{};const e={visibleTimeframes:i.visibleTimeframes||vn.map(t=>t.key)};if(i.type==="trendline"){const t=typeof i.series?.options=="function"?i.series.options():{};return{...e,lineColor:t.color??i.lineColor??"#22c55e",lineWidth:t.lineWidth??i.lineWidth??2,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight??!1,rayLeft:i.rayLeft??!1,rayRight:i.rayRight??!1,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways??!1,statsPriceRange:i.statsPriceRange??!1,statsBarsRange:i.statsBarsRange??!1,statsDateRange:i.statsDateRange??!1,statsAngle:i.statsAngle??!1,statsDistance:i.statsDistance??!1,point1Price:i.point1?.price??0,point1Time:i.point1?.rawTime??i.point1?.time??0,point2Price:i.point2?.price??0,point2Time:i.point2?.rawTime??i.point2?.time??0}}return i.type==="text"?{...e,text:i.primitive?.text??i.text??"Text",color:i.primitive?.color??"#5f8f96",fontSize:i.primitive?.fontSize??12,fontWeight:i.primitive?.fontWeight??"normal",fontStyle:i.primitive?.fontStyle??"normal",textAlign:i.primitive?.textAlign??"center",textWrap:i.primitive?.textWrap??!1,borderEnabled:i.primitive?.borderEnabled??!1,borderColor:i.primitive?.borderColor??"#5f8f96",borderOpacity:i.primitive?.borderOpacity??.1,borderWidth:i.primitive?.borderWidth??1,bgEnabled:i.primitive?.bgEnabled??!1,bgColor:i.primitive?.bgColor??"#5f8f96",bgOpacity:i.primitive?.bgOpacity??.1,price:i.price}:i.type==="pricelevel"?{...e,lineColor:i.lineColor??"#3b82f6",lineWidth:i.lineWidth??2,showPrice:i.showPrice??!0,showText:i.showText??!1,textContent:i.textContent??"",textColor:i.textColor??"#ffffff",textHAlign:i.textHAlign??"center",textVAlign:i.textVAlign??"top",price:i.price}:i.type==="horizontalray"?{...e,lineColor:i.lineColor??"#3b82f6",lineWidth:i.lineWidth??2,showPrice:i.showPrice??!0,showText:i.showText??!1,textContent:i.textContent??"",textColor:i.textColor??"#ffffff",textHAlign:i.textHAlign??"center",textVAlign:i.textVAlign??"top",price:i.price,originTime:i.rawOriginTime??i.originTime}:i.type==="verticalline"?{...e,lineColor:i.lineColor??"#3b82f6",lineWidth:i.lineWidth??2,showDate:i.showDate!==!1,rawTime:i.rawTime}:i.type==="infoline"?{...e,lineColor:i.lineColor??"#3b82f6",lineWidth:i.lineWidth??2,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways??!0,statsPriceRange:i.statsPriceRange??!0,statsBarsRange:i.statsBarsRange??!0,statsDateRange:i.statsDateRange??!0,statsAngle:i.statsAngle??!0,statsDistance:i.statsDistance??!0,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p2?.price??0,point2Time:i.p2?.rawTime??0}:i.type==="arrowedline"?{...e,lineColor:i.lineColor??"#f59e0b",lineWidth:i.lineWidth??2,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight!==!1,rayLeft:i.rayLeft??!1,rayRight:i.rayRight??!1,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways??!1,statsPriceRange:i.statsPriceRange??!1,statsBarsRange:i.statsBarsRange??!1,statsDateRange:i.statsDateRange??!1,statsAngle:i.statsAngle??!1,statsDistance:i.statsDistance??!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p2?.price??0,point2Time:i.p2?.rawTime??0}:i.type==="rayline"?{...e,lineColor:i.lineColor??"#7aa6ae",lineWidth:i.lineWidth??2,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight??!1,rayLeft:i.rayLeft??!1,rayRight:i.rayRight!==!1,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways??!1,statsPriceRange:i.statsPriceRange??!1,statsBarsRange:i.statsBarsRange??!1,statsDateRange:i.statsDateRange??!1,statsAngle:i.statsAngle??!1,statsDistance:i.statsDistance??!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p2?.price??0,point2Time:i.p2?.rawTime??0}:i.type==="extendedline"?{...e,lineColor:i.lineColor??"#7aa6ae",lineWidth:i.lineWidth??2,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight??!1,rayLeft:i.rayLeft!==!1,rayRight:i.rayRight!==!1,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways??!1,statsPriceRange:i.statsPriceRange??!1,statsBarsRange:i.statsBarsRange??!1,statsDateRange:i.statsDateRange??!1,statsAngle:i.statsAngle??!1,statsDistance:i.statsDistance??!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p2?.price??0,point2Time:i.p2?.rawTime??0}:i.type==="crossline"?{...e,lineColor:i.lineColor??"#06a0e3",lineWidth:i.lineWidth??2,showTime:i.showTime??!1,showPrice:i.showPrice??!1,rawTime:i.p?.rawTime??0,price:i.p?.price??0}:i.type==="trendbyangle"?{...e,lineColor:i.lineColor??"#7aa6ae",lineWidth:i.lineWidth??2,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight??!1,rayLeft:i.rayLeft??!1,rayRight:i.rayRight??!1,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways??!1,statsPriceRange:i.statsPriceRange??!1,statsDistance:i.statsDistance??!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p2?.price??0,point2Time:i.p2?.rawTime??0}:i.type==="disjointchannel"?{...e,lineColor:i.lineColor??"#129f5c",lineWidth:i.lineWidth??2,fillColor:i.fillColor??"#6aa84f",fillOpacity:i.fillOpacity??.1,showBackground:i.showBackground!==!1,showPrices:i.showPrices!==!1,pricesColor:i.pricesColor??"#129f5c",rayLeft:i.rayLeft??!1,rayRight:i.rayRight??!1,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight??!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p3?.price??0,point2Time:i.p3?.rawTime??0,point3Price:i.p2?.price??0}:i.type==="flattopbottom"?{...e,lineColor:i.lineColor??"#3b82f6",lineWidth:i.lineWidth??2,fillColor:i.fillColor??"#3b82f6",fillOpacity:i.fillOpacity??.12,showBackground:i.showBackground!==!1,showPrices:i.showPrices!==!1,pricesColor:i.pricesColor??"#3b82f6",rayLeft:i.rayLeft??!1,rayRight:i.rayRight??!1,arrowLeft:i.arrowLeft??!1,arrowRight:i.arrowRight??!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p3?.price??0,point2Time:i.p3?.rawTime??0,point3Price:i.p2?.price??0}:i.type==="rulerline"?{...e,lineColor:i.lineColor??"#3b82f6",showArea:i.showArea!==!1,statsColor:i.statsColor??"#5f8f96",statsPosition:i.statsPosition??"right",statsShowAlways:i.statsShowAlways!==!1,statsPriceRange:i.statsPriceRange!==!1,statsBarsRange:i.statsBarsRange!==!1,statsDateRange:i.statsDateRange!==!1,point1Price:i.p1?.price??0,point1Time:i.p1?.rawTime??0,point2Price:i.p2?.price??0,point2Time:i.p2?.rawTime??0}:e}const Fh=({isOpen:i,onClose:e,chartObject:t,onUpdate:A})=>{const{theme:r}=Lt(),s=Lm(r==="light"),[o,l]=Ae.useState("style"),[c,h]=Ae.useState({}),[g,C]=Ae.useState(null),x=Ae.useRef(null),b=Ae.useRef(null);Ae.useEffect(()=>{t&&(h(qm(t)),l("style"))},[t]),Ae.useEffect(()=>{i||C(null)},[i]);const v=L=>{if(L.button!==0)return;L.preventDefault();const z=x.current;if(!z)return;const q=z.offsetParent,$=q?q.getBoundingClientRect():{left:0,top:0},V=z.getBoundingClientRect(),j=V.left-$.left,te=V.top-$.top;b.current={startMX:L.clientX,startMY:L.clientY,startX:j,startY:te},C({x:j,y:te});const ce=ee=>{const{startMX:se,startMY:le,startX:ne,startY:he}=b.current;C({x:ne+ee.clientX-se,y:he+ee.clientY-le})},X=()=>{b.current=null,document.removeEventListener("mousemove",ce),document.removeEventListener("mouseup",X)};document.addEventListener("mousemove",ce),document.addEventListener("mouseup",X)};if(!i||!t)return null;const U=Sm[t.type]||t.type,F=["style","coordinates","visualization"],M=()=>{if(o==="visualization")return a.jsx(Om,{draft:c,setDraft:h,tokens:s});if(t.type==="text"){if(o==="style")return a.jsx(Km,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Wm,{draft:c,setDraft:h,tokens:s})}if(t.type==="trendline"){if(o==="style")return a.jsx(Tn,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="pricelevel"){if(o==="style")return a.jsx(xh,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Rm,{draft:c,setDraft:h,tokens:s})}if(t.type==="horizontalray"){if(o==="style")return a.jsx(xh,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Gm,{draft:c,setDraft:h,tokens:s})}if(t.type==="verticalline"){if(o==="style")return a.jsx($m,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Xm,{draft:c,tokens:s})}if(t.type==="infoline"){if(o==="style")return a.jsx(zm,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="rulerline"){if(o==="style")return a.jsx(Vm,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="arrowedline"){if(o==="style")return a.jsx(Tn,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="rayline"){if(o==="style")return a.jsx(Tn,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="extendedline"){if(o==="style")return a.jsx(Tn,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="crossline"){if(o==="style")return a.jsx(Jm,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Ym,{draft:c,setDraft:h,tokens:s})}if(t.type==="trendbyangle"){if(o==="style")return a.jsx(Zm,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(ci,{draft:c,setDraft:h,tokens:s})}if(t.type==="disjointchannel"){if(o==="style")return a.jsx(bh,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Qh,{draft:c,setDraft:h,tokens:s})}if(t.type==="flattopbottom"){if(o==="style")return a.jsx(bh,{draft:c,setDraft:h,tokens:s});if(o==="coordinates")return a.jsx(Qh,{draft:c,setDraft:h,tokens:s})}return a.jsx("div",{style:{padding:"24px 16px",fontSize:12,color:s.mutedText},children:"Customization for this tool is not yet available."})},N=()=>{A(c),e()};return a.jsxs("div",{ref:x,style:{pointerEvents:"auto",position:"absolute",zIndex:60,display:"flex",flexDirection:"column",overflow:"hidden",...g===null?{top:"50%",left:"50%",transform:"translate(-50%, -50%)"}:{top:g.y,left:g.x,transform:"none"},width:450,maxWidth:"calc(100vw - 24px)",maxHeight:"calc(100vh - 24px)",background:s.background,border:`1px solid ${s.border}`,borderTop:`2px solid ${s.headerBlue}`,boxShadow:"0 18px 40px rgba(0, 0, 0, 0.45)"},children:[a.jsxs("div",{style:{display:"flex",flexShrink:0},children:[a.jsx("div",{onMouseDown:v,style:{display:"flex",minHeight:40,flexGrow:1,alignItems:"center",justifyContent:"space-between",overflow:"hidden",padding:"0 16px",background:s.headerBlue,color:s.headerText,cursor:"grab"},children:a.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[a.jsx("span",{style:{maxWidth:320,overflow:"hidden",fontSize:14,textOverflow:"ellipsis",whiteSpace:"nowrap"},children:U}),a.jsx("button",{type:"button",style:{background:"transparent",border:"none",padding:0,color:"inherit",cursor:"pointer"},children:a.jsx(Do,{size:"18px",children:a.jsx(Mm,{})})})]})}),a.jsx("button",{type:"button",onClick:e,title:"Close",style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"0 4px",background:s.headerBlue,color:s.headerText,border:"none",cursor:"pointer"},children:a.jsx(Do,{size:"20px",children:a.jsx(Hm,{})})})]}),a.jsx("div",{style:{display:"flex",flexShrink:0,overflowX:"auto",borderBottom:`1px solid ${s.border}`},children:F.map(L=>{const z=o===L;return a.jsxs("button",{type:"button",onClick:()=>l(L),style:{position:"relative",height:40,padding:"0 16px",fontSize:13,whiteSpace:"nowrap",border:"none",background:"transparent",color:z?s.text:s.mutedText,cursor:"pointer"},children:[L.charAt(0).toUpperCase()+L.slice(1),z&&a.jsx("span",{style:{position:"absolute",bottom:0,left:0,height:3,width:"100%",background:s.headerBlue}})]},L)})}),a.jsx("div",{style:{flex:1,overflow:"auto"},children:M()}),a.jsxs("div",{style:{display:"flex",flexShrink:0,flexDirection:"row-reverse",gap:8,borderTop:`1px solid ${s.border}`,padding:"8px 16px"},children:[a.jsx("button",{type:"button",onClick:N,style:{display:"inline-flex",height:36,alignItems:"center",justifyContent:"center",padding:"0 12px",fontSize:12,border:"none",cursor:"pointer",background:s.greenHover,color:"#ffffff",boxShadow:`inset 0 0 0 1px ${s.greenActive}`},children:"Update"}),a.jsx("button",{type:"button",onClick:e,style:{display:"inline-flex",height:36,alignItems:"center",justifyContent:"center",padding:"0 12px",fontSize:12,cursor:"pointer",border:`1px solid ${s.green}`,background:"transparent",color:s.green},children:"Cancel"})]})]})};var _o=function(i,e){return _o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,A){t.__proto__=A}||function(t,A){for(var r in A)Object.prototype.hasOwnProperty.call(A,r)&&(t[r]=A[r])},_o(i,e)};function gA(i,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");_o(i,e);function t(){this.constructor=i}i.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}var Po=function(){return Po=Object.assign||function(e){for(var t,A=1,r=arguments.length;A<r;A++){t=arguments[A];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},Po.apply(this,arguments)};function Wt(i,e,t,A){function r(n){return n instanceof t?n:new t(function(s){s(n)})}return new(t||(t=Promise))(function(n,s){function o(h){try{c(A.next(h))}catch(g){s(g)}}function l(h){try{c(A.throw(h))}catch(g){s(g)}}function c(h){h.done?n(h.value):r(h.value).then(o,l)}c((A=A.apply(i,[])).next())})}function Nt(i,e){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},A,r,n,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(c){return function(h){return l([c,h])}}function l(c){if(A)throw new TypeError("Generator is already executing.");for(;t;)try{if(A=1,r&&(n=c[0]&2?r.return:c[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,c[1])).done)return n;switch(r=0,n&&(c=[c[0]&2,n.value]),c[0]){case 0:case 1:n=c;break;case 4:return t.label++,{value:c[1],done:!1};case 5:t.label++,r=c[1],c=[0];continue;case 7:c=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(c[0]===6||c[0]===2)){t=0;continue}if(c[0]===3&&(!n||c[1]>n[0]&&c[1]<n[3])){t.label=c[1];break}if(c[0]===6&&t.label<n[1]){t.label=n[1],n=c;break}if(n&&t.label<n[2]){t.label=n[2],t.ops.push(c);break}n[2]&&t.ops.pop(),t.trys.pop();continue}c=e.call(i,t)}catch(h){c=[6,h],r=0}finally{A=n=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}function xn(i,e,t){if(arguments.length===2)for(var A=0,r=e.length,n;A<r;A++)(n||!(A in e))&&(n||(n=Array.prototype.slice.call(e,0,A)),n[A]=e[A]);return i.concat(n||e)}for(var IA=(function(){function i(e,t,A,r){this.left=e,this.top=t,this.width=A,this.height=r}return i.prototype.add=function(e,t,A,r){return new i(this.left+e,this.top+t,this.width+A,this.height+r)},i.fromClientRect=function(e,t){return new i(t.left+e.windowBounds.left,t.top+e.windowBounds.top,t.width,t.height)},i.fromDOMRectList=function(e,t){var A=Array.from(t).find(function(r){return r.width!==0});return A?new i(A.left+e.windowBounds.left,A.top+e.windowBounds.top,A.width,A.height):i.EMPTY},i.EMPTY=new i(0,0,0,0),i})(),bn=function(i,e){return IA.fromClientRect(i,e.getBoundingClientRect())},jm=function(i){var e=i.body,t=i.documentElement;if(!e||!t)throw new Error("Unable to get document size");var A=Math.max(Math.max(e.scrollWidth,t.scrollWidth),Math.max(e.offsetWidth,t.offsetWidth),Math.max(e.clientWidth,t.clientWidth)),r=Math.max(Math.max(e.scrollHeight,t.scrollHeight),Math.max(e.offsetHeight,t.offsetHeight),Math.max(e.clientHeight,t.clientHeight));return new IA(0,0,A,r)},Qn=function(i){for(var e=[],t=0,A=i.length;t<A;){var r=i.charCodeAt(t++);if(r>=55296&&r<=56319&&t<A){var n=i.charCodeAt(t++);(n&64512)===56320?e.push(((r&1023)<<10)+(n&1023)+65536):(e.push(r),t--)}else e.push(r)}return e},yt=function(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,i);var t=i.length;if(!t)return"";for(var A=[],r=-1,n="";++r<t;){var s=i[r];s<=65535?A.push(s):(s-=65536,A.push((s>>10)+55296,s%1024+56320)),(r+1===t||A.length>16384)&&(n+=String.fromCharCode.apply(String,A),A.length=0)}return n},Uh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ew=typeof Uint8Array>"u"?[]:new Uint8Array(256),Fn=0;Fn<Uh.length;Fn++)ew[Uh.charCodeAt(Fn)]=Fn;for(var Sh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ar=typeof Uint8Array>"u"?[]:new Uint8Array(256),Un=0;Un<Sh.length;Un++)ar[Sh.charCodeAt(Un)]=Un;for(var tw=function(i){var e=i.length*.75,t=i.length,A,r=0,n,s,o,l;i[i.length-1]==="="&&(e--,i[i.length-2]==="="&&e--);var c=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(e):new Array(e),h=Array.isArray(c)?c:new Uint8Array(c);for(A=0;A<t;A+=4)n=ar[i.charCodeAt(A)],s=ar[i.charCodeAt(A+1)],o=ar[i.charCodeAt(A+2)],l=ar[i.charCodeAt(A+3)],h[r++]=n<<2|s>>4,h[r++]=(s&15)<<4|o>>2,h[r++]=(o&3)<<6|l&63;return c},Aw=function(i){for(var e=i.length,t=[],A=0;A<e;A+=2)t.push(i[A+1]<<8|i[A]);return t},iw=function(i){for(var e=i.length,t=[],A=0;A<e;A+=4)t.push(i[A+3]<<24|i[A+2]<<16|i[A+1]<<8|i[A]);return t},hi=5,ko=11,No=2,rw=ko-hi,Eh=65536>>hi,nw=1<<hi,Oo=nw-1,sw=1024>>hi,ow=Eh+sw,aw=ow,lw=32,cw=aw+lw,hw=65536>>ko,uw=1<<rw,dw=uw-1,Lh=function(i,e,t){return i.slice?i.slice(e,t):new Uint16Array(Array.prototype.slice.call(i,e,t))},pw=function(i,e,t){return i.slice?i.slice(e,t):new Uint32Array(Array.prototype.slice.call(i,e,t))},fw=function(i,e){var t=tw(i),A=Array.isArray(t)?iw(t):new Uint32Array(t),r=Array.isArray(t)?Aw(t):new Uint16Array(t),n=24,s=Lh(r,n/2,A[4]/2),o=A[5]===2?Lh(r,(n+A[4])/2):pw(A,Math.ceil((n+A[4])/4));return new gw(A[0],A[1],A[2],A[3],s,o)},gw=(function(){function i(e,t,A,r,n,s){this.initialValue=e,this.errorValue=t,this.highStart=A,this.highValueIndex=r,this.index=n,this.data=s}return i.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>hi],t=(t<<No)+(e&Oo),this.data[t];if(e<=65535)return t=this.index[Eh+(e-55296>>hi)],t=(t<<No)+(e&Oo),this.data[t];if(e<this.highStart)return t=cw-hw+(e>>ko),t=this.index[t],t+=e>>hi&dw,t=this.index[t],t=(t<<No)+(e&Oo),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},i})(),Mh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",mw=typeof Uint8Array>"u"?[]:new Uint8Array(256),Sn=0;Sn<Mh.length;Sn++)mw[Mh.charCodeAt(Sn)]=Sn;var ww="KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==",Hh=50,Bw=1,Ih=2,Dh=3,yw=4,Cw=5,_h=7,Ph=8,kh=9,VA=10,Ko=11,Nh=12,Vo=13,vw=14,lr=15,zo=16,En=17,cr=18,Tw=19,Oh=20,Wo=21,hr=22,Ro=23,Fi=24,iA=25,ur=26,dr=27,Ui=28,xw=29,ui=30,bw=31,Ln=32,Mn=33,Go=34,$o=35,Xo=36,pr=37,Zo=38,Hn=39,In=40,Jo=41,Kh=42,Qw=43,Fw=[9001,65288],Vh="!",tt="×",Dn="÷",Yo=fw(ww),DA=[ui,Xo],qo=[Bw,Ih,Dh,Cw],zh=[VA,Ph],Wh=[dr,ur],Uw=qo.concat(zh),Rh=[Zo,Hn,In,Go,$o],Sw=[lr,Vo],Ew=function(i,e){e===void 0&&(e="strict");var t=[],A=[],r=[];return i.forEach(function(n,s){var o=Yo.get(n);if(o>Hh?(r.push(!0),o-=Hh):r.push(!1),["normal","auto","loose"].indexOf(e)!==-1&&[8208,8211,12316,12448].indexOf(n)!==-1)return A.push(s),t.push(zo);if(o===yw||o===Ko){if(s===0)return A.push(s),t.push(ui);var l=t[s-1];return Uw.indexOf(l)===-1?(A.push(A[s-1]),t.push(l)):(A.push(s),t.push(ui))}if(A.push(s),o===bw)return t.push(e==="strict"?Wo:pr);if(o===Kh||o===xw)return t.push(ui);if(o===Qw)return n>=131072&&n<=196605||n>=196608&&n<=262141?t.push(pr):t.push(ui);t.push(o)}),[A,t,r]},jo=function(i,e,t,A){var r=A[t];if(Array.isArray(i)?i.indexOf(r)!==-1:i===r)for(var n=t;n<=A.length;){n++;var s=A[n];if(s===e)return!0;if(s!==VA)break}if(r===VA)for(var n=t;n>0;){n--;var o=A[n];if(Array.isArray(i)?i.indexOf(o)!==-1:i===o)for(var l=t;l<=A.length;){l++;var s=A[l];if(s===e)return!0;if(s!==VA)break}if(o!==VA)break}return!1},Gh=function(i,e){for(var t=i;t>=0;){var A=e[t];if(A===VA)t--;else return A}return 0},Lw=function(i,e,t,A,r){if(t[A]===0)return tt;var n=A-1;if(Array.isArray(r)&&r[n]===!0)return tt;var s=n-1,o=n+1,l=e[n],c=s>=0?e[s]:0,h=e[o];if(l===Ih&&h===Dh)return tt;if(qo.indexOf(l)!==-1)return Vh;if(qo.indexOf(h)!==-1||zh.indexOf(h)!==-1)return tt;if(Gh(n,e)===Ph)return Dn;if(Yo.get(i[n])===Ko||(l===Ln||l===Mn)&&Yo.get(i[o])===Ko||l===_h||h===_h||l===kh||[VA,Vo,lr].indexOf(l)===-1&&h===kh||[En,cr,Tw,Fi,Ui].indexOf(h)!==-1||Gh(n,e)===hr||jo(Ro,hr,n,e)||jo([En,cr],Wo,n,e)||jo(Nh,Nh,n,e))return tt;if(l===VA)return Dn;if(l===Ro||h===Ro)return tt;if(h===zo||l===zo)return Dn;if([Vo,lr,Wo].indexOf(h)!==-1||l===vw||c===Xo&&Sw.indexOf(l)!==-1||l===Ui&&h===Xo||h===Oh||DA.indexOf(h)!==-1&&l===iA||DA.indexOf(l)!==-1&&h===iA||l===dr&&[pr,Ln,Mn].indexOf(h)!==-1||[pr,Ln,Mn].indexOf(l)!==-1&&h===ur||DA.indexOf(l)!==-1&&Wh.indexOf(h)!==-1||Wh.indexOf(l)!==-1&&DA.indexOf(h)!==-1||[dr,ur].indexOf(l)!==-1&&(h===iA||[hr,lr].indexOf(h)!==-1&&e[o+1]===iA)||[hr,lr].indexOf(l)!==-1&&h===iA||l===iA&&[iA,Ui,Fi].indexOf(h)!==-1)return tt;if([iA,Ui,Fi,En,cr].indexOf(h)!==-1)for(var g=n;g>=0;){var C=e[g];if(C===iA)return tt;if([Ui,Fi].indexOf(C)!==-1)g--;else break}if([dr,ur].indexOf(h)!==-1)for(var g=[En,cr].indexOf(l)!==-1?s:n;g>=0;){var C=e[g];if(C===iA)return tt;if([Ui,Fi].indexOf(C)!==-1)g--;else break}if(Zo===l&&[Zo,Hn,Go,$o].indexOf(h)!==-1||[Hn,Go].indexOf(l)!==-1&&[Hn,In].indexOf(h)!==-1||[In,$o].indexOf(l)!==-1&&h===In||Rh.indexOf(l)!==-1&&[Oh,ur].indexOf(h)!==-1||Rh.indexOf(h)!==-1&&l===dr||DA.indexOf(l)!==-1&&DA.indexOf(h)!==-1||l===Fi&&DA.indexOf(h)!==-1||DA.concat(iA).indexOf(l)!==-1&&h===hr&&Fw.indexOf(i[o])===-1||DA.concat(iA).indexOf(h)!==-1&&l===cr)return tt;if(l===Jo&&h===Jo){for(var x=t[n],b=1;x>0&&(x--,e[x]===Jo);)b++;if(b%2!==0)return tt}return l===Ln&&h===Mn?tt:Dn},Mw=function(i,e){e||(e={lineBreak:"normal",wordBreak:"normal"});var t=Ew(i,e.lineBreak),A=t[0],r=t[1],n=t[2];(e.wordBreak==="break-all"||e.wordBreak==="break-word")&&(r=r.map(function(o){return[iA,ui,Kh].indexOf(o)!==-1?pr:o}));var s=e.wordBreak==="keep-all"?n.map(function(o,l){return o&&i[l]>=19968&&i[l]<=40959}):void 0;return[A,r,s]},Hw=(function(){function i(e,t,A,r){this.codePoints=e,this.required=t===Vh,this.start=A,this.end=r}return i.prototype.slice=function(){return yt.apply(void 0,this.codePoints.slice(this.start,this.end))},i})(),Iw=function(i,e){var t=Qn(i),A=Mw(t,e),r=A[0],n=A[1],s=A[2],o=t.length,l=0,c=0;return{next:function(){if(c>=o)return{done:!0,value:null};for(var h=tt;c<o&&(h=Lw(t,n,r,++c,s))===tt;);if(h!==tt||c===o){var g=new Hw(t,h,l,c);return l=c,{value:g,done:!1}}return{done:!0,value:null}}}},Dw=1,_w=2,fr=4,$h=8,_n=10,Xh=47,gr=92,Pw=9,kw=32,Pn=34,mr=61,Nw=35,Ow=36,Kw=37,kn=39,Nn=40,wr=41,Vw=95,Jt=45,zw=33,Ww=60,Rw=62,Gw=64,$w=91,Xw=93,Zw=61,Jw=123,On=63,Yw=125,Zh=124,qw=126,jw=128,Jh=65533,ea=42,di=43,eB=44,tB=58,AB=59,Br=46,iB=0,rB=8,nB=11,sB=14,oB=31,aB=127,bA=-1,Yh=48,qh=97,jh=101,lB=102,cB=117,hB=122,eu=65,tu=69,Au=70,uB=85,dB=90,Ot=function(i){return i>=Yh&&i<=57},pB=function(i){return i>=55296&&i<=57343},Si=function(i){return Ot(i)||i>=eu&&i<=Au||i>=qh&&i<=lB},fB=function(i){return i>=qh&&i<=hB},gB=function(i){return i>=eu&&i<=dB},mB=function(i){return fB(i)||gB(i)},wB=function(i){return i>=jw},Kn=function(i){return i===_n||i===Pw||i===kw},Vn=function(i){return mB(i)||wB(i)||i===Vw},iu=function(i){return Vn(i)||Ot(i)||i===Jt},BB=function(i){return i>=iB&&i<=rB||i===nB||i>=sB&&i<=oB||i===aB},zA=function(i,e){return i!==gr?!1:e!==_n},zn=function(i,e,t){return i===Jt?Vn(e)||zA(e,t):Vn(i)?!0:!!(i===gr&&zA(i,e))},ta=function(i,e,t){return i===di||i===Jt?Ot(e)?!0:e===Br&&Ot(t):Ot(i===Br?e:i)},yB=function(i){var e=0,t=1;(i[e]===di||i[e]===Jt)&&(i[e]===Jt&&(t=-1),e++);for(var A=[];Ot(i[e]);)A.push(i[e++]);var r=A.length?parseInt(yt.apply(void 0,A),10):0;i[e]===Br&&e++;for(var n=[];Ot(i[e]);)n.push(i[e++]);var s=n.length,o=s?parseInt(yt.apply(void 0,n),10):0;(i[e]===tu||i[e]===jh)&&e++;var l=1;(i[e]===di||i[e]===Jt)&&(i[e]===Jt&&(l=-1),e++);for(var c=[];Ot(i[e]);)c.push(i[e++]);var h=c.length?parseInt(yt.apply(void 0,c),10):0;return t*(r+o*Math.pow(10,-s))*Math.pow(10,l*h)},CB={type:2},vB={type:3},TB={type:4},xB={type:13},bB={type:8},QB={type:21},FB={type:9},UB={type:10},SB={type:11},EB={type:12},LB={type:14},Wn={type:23},MB={type:1},HB={type:25},IB={type:24},DB={type:26},_B={type:27},PB={type:28},kB={type:29},NB={type:31},Aa={type:32},ru=(function(){function i(){this._value=[]}return i.prototype.write=function(e){this._value=this._value.concat(Qn(e))},i.prototype.read=function(){for(var e=[],t=this.consumeToken();t!==Aa;)e.push(t),t=this.consumeToken();return e},i.prototype.consumeToken=function(){var e=this.consumeCodePoint();switch(e){case Pn:return this.consumeStringToken(Pn);case Nw:var t=this.peekCodePoint(0),A=this.peekCodePoint(1),r=this.peekCodePoint(2);if(iu(t)||zA(A,r)){var n=zn(t,A,r)?_w:Dw,s=this.consumeName();return{type:5,value:s,flags:n}}break;case Ow:if(this.peekCodePoint(0)===mr)return this.consumeCodePoint(),xB;break;case kn:return this.consumeStringToken(kn);case Nn:return CB;case wr:return vB;case ea:if(this.peekCodePoint(0)===mr)return this.consumeCodePoint(),LB;break;case di:if(ta(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case eB:return TB;case Jt:var o=e,l=this.peekCodePoint(0),c=this.peekCodePoint(1);if(ta(o,l,c))return this.reconsumeCodePoint(e),this.consumeNumericToken();if(zn(o,l,c))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();if(l===Jt&&c===Rw)return this.consumeCodePoint(),this.consumeCodePoint(),IB;break;case Br:if(ta(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case Xh:if(this.peekCodePoint(0)===ea)for(this.consumeCodePoint();;){var h=this.consumeCodePoint();if(h===ea&&(h=this.consumeCodePoint(),h===Xh))return this.consumeToken();if(h===bA)return this.consumeToken()}break;case tB:return DB;case AB:return _B;case Ww:if(this.peekCodePoint(0)===zw&&this.peekCodePoint(1)===Jt&&this.peekCodePoint(2)===Jt)return this.consumeCodePoint(),this.consumeCodePoint(),HB;break;case Gw:var g=this.peekCodePoint(0),C=this.peekCodePoint(1),x=this.peekCodePoint(2);if(zn(g,C,x)){var s=this.consumeName();return{type:7,value:s}}break;case $w:return PB;case gr:if(zA(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();break;case Xw:return kB;case Zw:if(this.peekCodePoint(0)===mr)return this.consumeCodePoint(),bB;break;case Jw:return SB;case Yw:return EB;case cB:case uB:var b=this.peekCodePoint(0),v=this.peekCodePoint(1);return b===di&&(Si(v)||v===On)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(e),this.consumeIdentLikeToken();case Zh:if(this.peekCodePoint(0)===mr)return this.consumeCodePoint(),FB;if(this.peekCodePoint(0)===Zh)return this.consumeCodePoint(),QB;break;case qw:if(this.peekCodePoint(0)===mr)return this.consumeCodePoint(),UB;break;case bA:return Aa}return Kn(e)?(this.consumeWhiteSpace(),NB):Ot(e)?(this.reconsumeCodePoint(e),this.consumeNumericToken()):Vn(e)?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):{type:6,value:yt(e)}},i.prototype.consumeCodePoint=function(){var e=this._value.shift();return typeof e>"u"?-1:e},i.prototype.reconsumeCodePoint=function(e){this._value.unshift(e)},i.prototype.peekCodePoint=function(e){return e>=this._value.length?-1:this._value[e]},i.prototype.consumeUnicodeRangeToken=function(){for(var e=[],t=this.consumeCodePoint();Si(t)&&e.length<6;)e.push(t),t=this.consumeCodePoint();for(var A=!1;t===On&&e.length<6;)e.push(t),t=this.consumeCodePoint(),A=!0;if(A){var r=parseInt(yt.apply(void 0,e.map(function(l){return l===On?Yh:l})),16),n=parseInt(yt.apply(void 0,e.map(function(l){return l===On?Au:l})),16);return{type:30,start:r,end:n}}var s=parseInt(yt.apply(void 0,e),16);if(this.peekCodePoint(0)===Jt&&Si(this.peekCodePoint(1))){this.consumeCodePoint(),t=this.consumeCodePoint();for(var o=[];Si(t)&&o.length<6;)o.push(t),t=this.consumeCodePoint();var n=parseInt(yt.apply(void 0,o),16);return{type:30,start:s,end:n}}else return{type:30,start:s,end:s}},i.prototype.consumeIdentLikeToken=function(){var e=this.consumeName();return e.toLowerCase()==="url"&&this.peekCodePoint(0)===Nn?(this.consumeCodePoint(),this.consumeUrlToken()):this.peekCodePoint(0)===Nn?(this.consumeCodePoint(),{type:19,value:e}):{type:20,value:e}},i.prototype.consumeUrlToken=function(){var e=[];if(this.consumeWhiteSpace(),this.peekCodePoint(0)===bA)return{type:22,value:""};var t=this.peekCodePoint(0);if(t===kn||t===Pn){var A=this.consumeStringToken(this.consumeCodePoint());return A.type===0&&(this.consumeWhiteSpace(),this.peekCodePoint(0)===bA||this.peekCodePoint(0)===wr)?(this.consumeCodePoint(),{type:22,value:A.value}):(this.consumeBadUrlRemnants(),Wn)}for(;;){var r=this.consumeCodePoint();if(r===bA||r===wr)return{type:22,value:yt.apply(void 0,e)};if(Kn(r))return this.consumeWhiteSpace(),this.peekCodePoint(0)===bA||this.peekCodePoint(0)===wr?(this.consumeCodePoint(),{type:22,value:yt.apply(void 0,e)}):(this.consumeBadUrlRemnants(),Wn);if(r===Pn||r===kn||r===Nn||BB(r))return this.consumeBadUrlRemnants(),Wn;if(r===gr)if(zA(r,this.peekCodePoint(0)))e.push(this.consumeEscapedCodePoint());else return this.consumeBadUrlRemnants(),Wn;else e.push(r)}},i.prototype.consumeWhiteSpace=function(){for(;Kn(this.peekCodePoint(0));)this.consumeCodePoint()},i.prototype.consumeBadUrlRemnants=function(){for(;;){var e=this.consumeCodePoint();if(e===wr||e===bA)return;zA(e,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},i.prototype.consumeStringSlice=function(e){for(var t=5e4,A="";e>0;){var r=Math.min(t,e);A+=yt.apply(void 0,this._value.splice(0,r)),e-=r}return this._value.shift(),A},i.prototype.consumeStringToken=function(e){var t="",A=0;do{var r=this._value[A];if(r===bA||r===void 0||r===e)return t+=this.consumeStringSlice(A),{type:0,value:t};if(r===_n)return this._value.splice(0,A),MB;if(r===gr){var n=this._value[A+1];n!==bA&&n!==void 0&&(n===_n?(t+=this.consumeStringSlice(A),A=-1,this._value.shift()):zA(r,n)&&(t+=this.consumeStringSlice(A),t+=yt(this.consumeEscapedCodePoint()),A=-1))}A++}while(!0)},i.prototype.consumeNumber=function(){var e=[],t=fr,A=this.peekCodePoint(0);for((A===di||A===Jt)&&e.push(this.consumeCodePoint());Ot(this.peekCodePoint(0));)e.push(this.consumeCodePoint());A=this.peekCodePoint(0);var r=this.peekCodePoint(1);if(A===Br&&Ot(r))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=$h;Ot(this.peekCodePoint(0));)e.push(this.consumeCodePoint());A=this.peekCodePoint(0),r=this.peekCodePoint(1);var n=this.peekCodePoint(2);if((A===tu||A===jh)&&((r===di||r===Jt)&&Ot(n)||Ot(r)))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=$h;Ot(this.peekCodePoint(0));)e.push(this.consumeCodePoint());return[yB(e),t]},i.prototype.consumeNumericToken=function(){var e=this.consumeNumber(),t=e[0],A=e[1],r=this.peekCodePoint(0),n=this.peekCodePoint(1),s=this.peekCodePoint(2);if(zn(r,n,s)){var o=this.consumeName();return{type:15,number:t,flags:A,unit:o}}return r===Kw?(this.consumeCodePoint(),{type:16,number:t,flags:A}):{type:17,number:t,flags:A}},i.prototype.consumeEscapedCodePoint=function(){var e=this.consumeCodePoint();if(Si(e)){for(var t=yt(e);Si(this.peekCodePoint(0))&&t.length<6;)t+=yt(this.consumeCodePoint());Kn(this.peekCodePoint(0))&&this.consumeCodePoint();var A=parseInt(t,16);return A===0||pB(A)||A>1114111?Jh:A}return e===bA?Jh:e},i.prototype.consumeName=function(){for(var e="";;){var t=this.consumeCodePoint();if(iu(t))e+=yt(t);else if(zA(t,this.peekCodePoint(0)))e+=yt(this.consumeEscapedCodePoint());else return this.reconsumeCodePoint(t),e}},i})(),nu=(function(){function i(e){this._tokens=e}return i.create=function(e){var t=new ru;return t.write(e),new i(t.read())},i.parseValue=function(e){return i.create(e).parseComponentValue()},i.parseValues=function(e){return i.create(e).parseComponentValues()},i.prototype.parseComponentValue=function(){for(var e=this.consumeToken();e.type===31;)e=this.consumeToken();if(e.type===32)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(e);var t=this.consumeComponentValue();do e=this.consumeToken();while(e.type===31);if(e.type===32)return t;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")},i.prototype.parseComponentValues=function(){for(var e=[];;){var t=this.consumeComponentValue();if(t.type===32)return e;e.push(t),e.push()}},i.prototype.consumeComponentValue=function(){var e=this.consumeToken();switch(e.type){case 11:case 28:case 2:return this.consumeSimpleBlock(e.type);case 19:return this.consumeFunction(e)}return e},i.prototype.consumeSimpleBlock=function(e){for(var t={type:e,values:[]},A=this.consumeToken();;){if(A.type===32||KB(A,e))return t;this.reconsumeToken(A),t.values.push(this.consumeComponentValue()),A=this.consumeToken()}},i.prototype.consumeFunction=function(e){for(var t={name:e.value,values:[],type:18};;){var A=this.consumeToken();if(A.type===32||A.type===3)return t;this.reconsumeToken(A),t.values.push(this.consumeComponentValue())}},i.prototype.consumeToken=function(){var e=this._tokens.shift();return typeof e>"u"?Aa:e},i.prototype.reconsumeToken=function(e){this._tokens.unshift(e)},i})(),yr=function(i){return i.type===15},Ei=function(i){return i.type===17},at=function(i){return i.type===20},OB=function(i){return i.type===0},ia=function(i,e){return at(i)&&i.value===e},su=function(i){return i.type!==31},Li=function(i){return i.type!==31&&i.type!==4},QA=function(i){var e=[],t=[];return i.forEach(function(A){if(A.type===4){if(t.length===0)throw new Error("Error parsing function args, zero tokens for arg");e.push(t),t=[];return}A.type!==31&&t.push(A)}),t.length&&e.push(t),e},KB=function(i,e){return e===11&&i.type===12||e===28&&i.type===29?!0:e===2&&i.type===3},WA=function(i){return i.type===17||i.type===15},bt=function(i){return i.type===16||WA(i)},ou=function(i){return i.length>1?[i[0],i[1]]:[i[0]]},Mt={type:17,number:0,flags:fr},ra={type:16,number:50,flags:fr},RA={type:16,number:100,flags:fr},Cr=function(i,e,t){var A=i[0],r=i[1];return[ut(A,e),ut(typeof r<"u"?r:A,t)]},ut=function(i,e){if(i.type===16)return i.number/100*e;if(yr(i))switch(i.unit){case"rem":case"em":return 16*i.number;default:return i.number}return i.number},au="deg",lu="grad",cu="rad",hu="turn",Rn={name:"angle",parse:function(i,e){if(e.type===15)switch(e.unit){case au:return Math.PI*e.number/180;case lu:return Math.PI/200*e.number;case cu:return e.number;case hu:return Math.PI*2*e.number}throw new Error("Unsupported angle type")}},uu=function(i){return i.type===15&&(i.unit===au||i.unit===lu||i.unit===cu||i.unit===hu)},du=function(i){var e=i.filter(at).map(function(t){return t.value}).join(" ");switch(e){case"to bottom right":case"to right bottom":case"left top":case"top left":return[Mt,Mt];case"to top":case"bottom":return aA(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[Mt,RA];case"to right":case"left":return aA(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[RA,RA];case"to bottom":case"top":return aA(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[RA,Mt];case"to left":case"right":return aA(270)}return 0},aA=function(i){return Math.PI*i/180},GA={name:"color",parse:function(i,e){if(e.type===18){var t=VB[e.name];if(typeof t>"u")throw new Error('Attempting to parse an unsupported color function "'+e.name+'"');return t(i,e.values)}if(e.type===5){if(e.value.length===3){var A=e.value.substring(0,1),r=e.value.substring(1,2),n=e.value.substring(2,3);return XA(parseInt(A+A,16),parseInt(r+r,16),parseInt(n+n,16),1)}if(e.value.length===4){var A=e.value.substring(0,1),r=e.value.substring(1,2),n=e.value.substring(2,3),s=e.value.substring(3,4);return XA(parseInt(A+A,16),parseInt(r+r,16),parseInt(n+n,16),parseInt(s+s,16)/255)}if(e.value.length===6){var A=e.value.substring(0,2),r=e.value.substring(2,4),n=e.value.substring(4,6);return XA(parseInt(A,16),parseInt(r,16),parseInt(n,16),1)}if(e.value.length===8){var A=e.value.substring(0,2),r=e.value.substring(2,4),n=e.value.substring(4,6),s=e.value.substring(6,8);return XA(parseInt(A,16),parseInt(r,16),parseInt(n,16),parseInt(s,16)/255)}}if(e.type===20){var o=_A[e.value.toUpperCase()];if(typeof o<"u")return o}return _A.TRANSPARENT}},$A=function(i){return(255&i)===0},Ut=function(i){var e=255&i,t=255&i>>8,A=255&i>>16,r=255&i>>24;return e<255?"rgba("+r+","+A+","+t+","+e/255+")":"rgb("+r+","+A+","+t+")"},XA=function(i,e,t,A){return(i<<24|e<<16|t<<8|Math.round(A*255)<<0)>>>0},pu=function(i,e){if(i.type===17)return i.number;if(i.type===16){var t=e===3?1:255;return e===3?i.number/100*t:Math.round(i.number/100*t)}return 0},fu=function(i,e){var t=e.filter(Li);if(t.length===3){var A=t.map(pu),r=A[0],n=A[1],s=A[2];return XA(r,n,s,1)}if(t.length===4){var o=t.map(pu),r=o[0],n=o[1],s=o[2],l=o[3];return XA(r,n,s,l)}return 0};function na(i,e,t){return t<0&&(t+=1),t>=1&&(t-=1),t<1/6?(e-i)*t*6+i:t<1/2?e:t<2/3?(e-i)*6*(2/3-t)+i:i}var gu=function(i,e){var t=e.filter(Li),A=t[0],r=t[1],n=t[2],s=t[3],o=(A.type===17?aA(A.number):Rn.parse(i,A))/(Math.PI*2),l=bt(r)?r.number/100:0,c=bt(n)?n.number/100:0,h=typeof s<"u"&&bt(s)?ut(s,1):1;if(l===0)return XA(c*255,c*255,c*255,1);var g=c<=.5?c*(l+1):c+l-c*l,C=c*2-g,x=na(C,g,o+1/3),b=na(C,g,o),v=na(C,g,o-1/3);return XA(x*255,b*255,v*255,h)},VB={hsl:gu,hsla:gu,rgb:fu,rgba:fu},vr=function(i,e){return GA.parse(i,nu.create(e).parseComponentValue())},_A={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},zB={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(i,e){return e.map(function(t){if(at(t))switch(t.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},WB={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},Gn=function(i,e){var t=GA.parse(i,e[0]),A=e[1];return A&&bt(A)?{color:t,stop:A}:{color:t,stop:null}},mu=function(i,e){var t=i[0],A=i[i.length-1];t.stop===null&&(t.stop=Mt),A.stop===null&&(A.stop=RA);for(var r=[],n=0,s=0;s<i.length;s++){var o=i[s].stop;if(o!==null){var l=ut(o,e);l>n?r.push(l):r.push(n),n=l}else r.push(null)}for(var c=null,s=0;s<r.length;s++){var h=r[s];if(h===null)c===null&&(c=s);else if(c!==null){for(var g=s-c,C=r[c-1],x=(h-C)/(g+1),b=1;b<=g;b++)r[c+b-1]=x*b;c=null}}return i.map(function(v,U){var F=v.color;return{color:F,stop:Math.max(Math.min(1,r[U]/e),0)}})},RB=function(i,e,t){var A=e/2,r=t/2,n=ut(i[0],e)-A,s=r-ut(i[1],t);return(Math.atan2(s,n)+Math.PI*2)%(Math.PI*2)},GB=function(i,e,t){var A=typeof i=="number"?i:RB(i,e,t),r=Math.abs(e*Math.sin(A))+Math.abs(t*Math.cos(A)),n=e/2,s=t/2,o=r/2,l=Math.sin(A-Math.PI/2)*o,c=Math.cos(A-Math.PI/2)*o;return[r,n-c,n+c,s-l,s+l]},mA=function(i,e){return Math.sqrt(i*i+e*e)},wu=function(i,e,t,A,r){var n=[[0,0],[0,e],[i,0],[i,e]];return n.reduce(function(s,o){var l=o[0],c=o[1],h=mA(t-l,A-c);return(r?h<s.optimumDistance:h>s.optimumDistance)?{optimumCorner:o,optimumDistance:h}:s},{optimumDistance:r?1/0:-1/0,optimumCorner:null}).optimumCorner},$B=function(i,e,t,A,r){var n=0,s=0;switch(i.size){case 0:i.shape===0?n=s=Math.min(Math.abs(e),Math.abs(e-A),Math.abs(t),Math.abs(t-r)):i.shape===1&&(n=Math.min(Math.abs(e),Math.abs(e-A)),s=Math.min(Math.abs(t),Math.abs(t-r)));break;case 2:if(i.shape===0)n=s=Math.min(mA(e,t),mA(e,t-r),mA(e-A,t),mA(e-A,t-r));else if(i.shape===1){var o=Math.min(Math.abs(t),Math.abs(t-r))/Math.min(Math.abs(e),Math.abs(e-A)),l=wu(A,r,e,t,!0),c=l[0],h=l[1];n=mA(c-e,(h-t)/o),s=o*n}break;case 1:i.shape===0?n=s=Math.max(Math.abs(e),Math.abs(e-A),Math.abs(t),Math.abs(t-r)):i.shape===1&&(n=Math.max(Math.abs(e),Math.abs(e-A)),s=Math.max(Math.abs(t),Math.abs(t-r)));break;case 3:if(i.shape===0)n=s=Math.max(mA(e,t),mA(e,t-r),mA(e-A,t),mA(e-A,t-r));else if(i.shape===1){var o=Math.max(Math.abs(t),Math.abs(t-r))/Math.max(Math.abs(e),Math.abs(e-A)),g=wu(A,r,e,t,!1),c=g[0],h=g[1];n=mA(c-e,(h-t)/o),s=o*n}break}return Array.isArray(i.size)&&(n=ut(i.size[0],A),s=i.size.length===2?ut(i.size[1],r):n),[n,s]},XB=function(i,e){var t=aA(180),A=[];return QA(e).forEach(function(r,n){if(n===0){var s=r[0];if(s.type===20&&s.value==="to"){t=du(r);return}else if(uu(s)){t=Rn.parse(i,s);return}}var o=Gn(i,r);A.push(o)}),{angle:t,stops:A,type:1}},$n=function(i,e){var t=aA(180),A=[];return QA(e).forEach(function(r,n){if(n===0){var s=r[0];if(s.type===20&&["top","left","right","bottom"].indexOf(s.value)!==-1){t=du(r);return}else if(uu(s)){t=(Rn.parse(i,s)+aA(270))%aA(360);return}}var o=Gn(i,r);A.push(o)}),{angle:t,stops:A,type:1}},ZB=function(i,e){var t=aA(180),A=[],r=1,n=0,s=3,o=[];return QA(e).forEach(function(l,c){var h=l[0];if(c===0){if(at(h)&&h.value==="linear"){r=1;return}else if(at(h)&&h.value==="radial"){r=2;return}}if(h.type===18){if(h.name==="from"){var g=GA.parse(i,h.values[0]);A.push({stop:Mt,color:g})}else if(h.name==="to"){var g=GA.parse(i,h.values[0]);A.push({stop:RA,color:g})}else if(h.name==="color-stop"){var C=h.values.filter(Li);if(C.length===2){var g=GA.parse(i,C[1]),x=C[0];Ei(x)&&A.push({stop:{type:16,number:x.number*100,flags:x.flags},color:g})}}}}),r===1?{angle:(t+aA(180))%aA(360),stops:A,type:r}:{size:s,shape:n,stops:A,position:o,type:r}},Bu="closest-side",yu="farthest-side",Cu="closest-corner",vu="farthest-corner",Tu="circle",xu="ellipse",bu="cover",Qu="contain",JB=function(i,e){var t=0,A=3,r=[],n=[];return QA(e).forEach(function(s,o){var l=!0;if(o===0){var c=!1;l=s.reduce(function(g,C){if(c)if(at(C))switch(C.value){case"center":return n.push(ra),g;case"top":case"left":return n.push(Mt),g;case"right":case"bottom":return n.push(RA),g}else(bt(C)||WA(C))&&n.push(C);else if(at(C))switch(C.value){case Tu:return t=0,!1;case xu:return t=1,!1;case"at":return c=!0,!1;case Bu:return A=0,!1;case bu:case yu:return A=1,!1;case Qu:case Cu:return A=2,!1;case vu:return A=3,!1}else if(WA(C)||bt(C))return Array.isArray(A)||(A=[]),A.push(C),!1;return g},l)}if(l){var h=Gn(i,s);r.push(h)}}),{size:A,shape:t,stops:r,position:n,type:2}},Xn=function(i,e){var t=0,A=3,r=[],n=[];return QA(e).forEach(function(s,o){var l=!0;if(o===0?l=s.reduce(function(h,g){if(at(g))switch(g.value){case"center":return n.push(ra),!1;case"top":case"left":return n.push(Mt),!1;case"right":case"bottom":return n.push(RA),!1}else if(bt(g)||WA(g))return n.push(g),!1;return h},l):o===1&&(l=s.reduce(function(h,g){if(at(g))switch(g.value){case Tu:return t=0,!1;case xu:return t=1,!1;case Qu:case Bu:return A=0,!1;case yu:return A=1,!1;case Cu:return A=2,!1;case bu:case vu:return A=3,!1}else if(WA(g)||bt(g))return Array.isArray(A)||(A=[]),A.push(g),!1;return h},l)),l){var c=Gn(i,s);r.push(c)}}),{size:A,shape:t,stops:r,position:n,type:2}},YB=function(i){return i.type===1},qB=function(i){return i.type===2},sa={name:"image",parse:function(i,e){if(e.type===22){var t={url:e.value,type:0};return i.cache.addImage(e.value),t}if(e.type===18){var A=Fu[e.name];if(typeof A>"u")throw new Error('Attempting to parse an unsupported image function "'+e.name+'"');return A(i,e.values)}throw new Error("Unsupported image type "+e.type)}};function jB(i){return!(i.type===20&&i.value==="none")&&(i.type!==18||!!Fu[i.name])}var Fu={"linear-gradient":XB,"-moz-linear-gradient":$n,"-ms-linear-gradient":$n,"-o-linear-gradient":$n,"-webkit-linear-gradient":$n,"radial-gradient":JB,"-moz-radial-gradient":Xn,"-ms-radial-gradient":Xn,"-o-radial-gradient":Xn,"-webkit-radial-gradient":Xn,"-webkit-gradient":ZB},e2={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(i,e){if(e.length===0)return[];var t=e[0];return t.type===20&&t.value==="none"?[]:e.filter(function(A){return Li(A)&&jB(A)}).map(function(A){return sa.parse(i,A)})}},t2={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(i,e){return e.map(function(t){if(at(t))switch(t.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},A2={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(i,e){return QA(e).map(function(t){return t.filter(bt)}).map(ou)}},i2={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(i,e){return QA(e).map(function(t){return t.filter(at).map(function(A){return A.value}).join(" ")}).map(r2)}},r2=function(i){switch(i){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}},Mi;(function(i){i.AUTO="auto",i.CONTAIN="contain",i.COVER="cover"})(Mi||(Mi={}));var n2={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:function(i,e){return QA(e).map(function(t){return t.filter(s2)})}},s2=function(i){return at(i)||bt(i)},Zn=function(i){return{name:"border-"+i+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},o2=Zn("top"),a2=Zn("right"),l2=Zn("bottom"),c2=Zn("left"),Jn=function(i){return{name:"border-radius-"+i,initialValue:"0 0",prefix:!1,type:1,parse:function(e,t){return ou(t.filter(bt))}}},h2=Jn("top-left"),u2=Jn("top-right"),d2=Jn("bottom-right"),p2=Jn("bottom-left"),Yn=function(i){return{name:"border-"+i+"-style",initialValue:"solid",prefix:!1,type:2,parse:function(e,t){switch(t){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}},f2=Yn("top"),g2=Yn("right"),m2=Yn("bottom"),w2=Yn("left"),qn=function(i){return{name:"border-"+i+"-width",initialValue:"0",type:0,prefix:!1,parse:function(e,t){return yr(t)?t.number:0}}},B2=qn("top"),y2=qn("right"),C2=qn("bottom"),v2=qn("left"),T2={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},x2={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(i,e){return e==="rtl"?1:0}},b2={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(i,e){return e.filter(at).reduce(function(t,A){return t|Q2(A.value)},0)}},Q2=function(i){switch(i){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},F2={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(i,e){switch(e){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},U2={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(i,e){return e.type===20&&e.value==="normal"?0:e.type===17||e.type===15?e.number:0}},jn;(function(i){i.NORMAL="normal",i.STRICT="strict"})(jn||(jn={}));var S2={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:function(i,e){return e==="strict"?jn.STRICT:jn.NORMAL}},E2={name:"line-height",initialValue:"normal",prefix:!1,type:4},Uu=function(i,e){return at(i)&&i.value==="normal"?1.2*e:i.type===17?e*i.number:bt(i)?ut(i,e):e},L2={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(i,e){return e.type===20&&e.value==="none"?null:sa.parse(i,e)}},M2={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(i,e){return e==="inside"?0:1}},oa={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(i,e){switch(e){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":return 22;case"hebrew":return 22;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},es=function(i){return{name:"margin-"+i,initialValue:"0",prefix:!1,type:4}},H2=es("top"),I2=es("right"),D2=es("bottom"),_2=es("left"),P2={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(i,e){return e.filter(at).map(function(t){switch(t.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})}},k2={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(i,e){return e==="break-word"?"break-word":"normal"}},ts=function(i){return{name:"padding-"+i,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},N2=ts("top"),O2=ts("right"),K2=ts("bottom"),V2=ts("left"),z2={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(i,e){switch(e){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},W2={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(i,e){switch(e){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},R2={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(i,e){return e.length===1&&ia(e[0],"none")?[]:QA(e).map(function(t){for(var A={color:_A.TRANSPARENT,offsetX:Mt,offsetY:Mt,blur:Mt},r=0,n=0;n<t.length;n++){var s=t[n];WA(s)?(r===0?A.offsetX=s:r===1?A.offsetY=s:A.blur=s,r++):A.color=GA.parse(i,s)}return A})}},G2={name:"text-transform",initialValue:"none",prefix:!1,type:2,parse:function(i,e){switch(e){case"uppercase":return 2;case"lowercase":return 1;case"capitalize":return 3}return 0}},$2={name:"transform",initialValue:"none",prefix:!0,type:0,parse:function(i,e){if(e.type===20&&e.value==="none")return null;if(e.type===18){var t=J2[e.name];if(typeof t>"u")throw new Error('Attempting to parse an unsupported transform function "'+e.name+'"');return t(e.values)}return null}},X2=function(i){var e=i.filter(function(t){return t.type===17}).map(function(t){return t.number});return e.length===6?e:null},Z2=function(i){var e=i.filter(function(l){return l.type===17}).map(function(l){return l.number}),t=e[0],A=e[1];e[2],e[3];var r=e[4],n=e[5];e[6],e[7],e[8],e[9],e[10],e[11];var s=e[12],o=e[13];return e[14],e[15],e.length===16?[t,A,r,n,s,o]:null},J2={matrix:X2,matrix3d:Z2},Su={type:16,number:50,flags:fr},Y2=[Su,Su],q2={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:function(i,e){var t=e.filter(bt);return t.length!==2?Y2:[t[0],t[1]]}},j2={name:"visible",initialValue:"none",prefix:!1,type:2,parse:function(i,e){switch(e){case"hidden":return 1;case"collapse":return 2;default:return 0}}},Tr;(function(i){i.NORMAL="normal",i.BREAK_ALL="break-all",i.KEEP_ALL="keep-all"})(Tr||(Tr={}));for(var ey={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:function(i,e){switch(e){case"break-all":return Tr.BREAK_ALL;case"keep-all":return Tr.KEEP_ALL;default:return Tr.NORMAL}}},ty={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:function(i,e){if(e.type===20)return{auto:!0,order:0};if(Ei(e))return{auto:!1,order:e.number};throw new Error("Invalid z-index number parsed")}},Eu={name:"time",parse:function(i,e){if(e.type===15)switch(e.unit.toLowerCase()){case"s":return 1e3*e.number;case"ms":return e.number}throw new Error("Unsupported time type")}},Ay={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:function(i,e){return Ei(e)?e.number:1}},iy={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},ry={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:function(i,e){return e.filter(at).map(function(t){switch(t.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(function(t){return t!==0})}},ny={name:"font-family",initialValue:"",prefix:!1,type:1,parse:function(i,e){var t=[],A=[];return e.forEach(function(r){switch(r.type){case 20:case 0:t.push(r.value);break;case 17:t.push(r.number.toString());break;case 4:A.push(t.join(" ")),t.length=0;break}}),t.length&&A.push(t.join(" ")),A.map(function(r){return r.indexOf(" ")===-1?r:"'"+r+"'"})}},sy={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},oy={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:function(i,e){return Ei(e)?e.number:at(e)&&e.value==="bold"?700:400}},ay={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:function(i,e){return e.filter(at).map(function(t){return t.value})}},ly={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:function(i,e){switch(e){case"oblique":return"oblique";case"italic":return"italic";default:return"normal"}}},Qt=function(i,e){return(i&e)!==0},cy={name:"content",initialValue:"none",type:1,prefix:!1,parse:function(i,e){if(e.length===0)return[];var t=e[0];return t.type===20&&t.value==="none"?[]:e}},hy={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:function(i,e){if(e.length===0)return null;var t=e[0];if(t.type===20&&t.value==="none")return null;for(var A=[],r=e.filter(su),n=0;n<r.length;n++){var s=r[n],o=r[n+1];if(s.type===20){var l=o&&Ei(o)?o.number:1;A.push({counter:s.value,increment:l})}}return A}},uy={name:"counter-reset",initialValue:"none",prefix:!0,type:1,parse:function(i,e){if(e.length===0)return[];for(var t=[],A=e.filter(su),r=0;r<A.length;r++){var n=A[r],s=A[r+1];if(at(n)&&n.value!=="none"){var o=s&&Ei(s)?s.number:0;t.push({counter:n.value,reset:o})}}return t}},dy={name:"duration",initialValue:"0s",prefix:!1,type:1,parse:function(i,e){return e.filter(yr).map(function(t){return Eu.parse(i,t)})}},py={name:"quotes",initialValue:"none",prefix:!0,type:1,parse:function(i,e){if(e.length===0)return null;var t=e[0];if(t.type===20&&t.value==="none")return null;var A=[],r=e.filter(OB);if(r.length%2!==0)return null;for(var n=0;n<r.length;n+=2){var s=r[n].value,o=r[n+1].value;A.push({open:s,close:o})}return A}},Lu=function(i,e,t){if(!i)return"";var A=i[Math.min(e,i.length-1)];return A?t?A.open:A.close:""},fy={name:"box-shadow",initialValue:"none",type:1,prefix:!1,parse:function(i,e){return e.length===1&&ia(e[0],"none")?[]:QA(e).map(function(t){for(var A={color:255,offsetX:Mt,offsetY:Mt,blur:Mt,spread:Mt,inset:!1},r=0,n=0;n<t.length;n++){var s=t[n];ia(s,"inset")?A.inset=!0:WA(s)?(r===0?A.offsetX=s:r===1?A.offsetY=s:r===2?A.blur=s:A.spread=s,r++):A.color=GA.parse(i,s)}return A})}},gy={name:"paint-order",initialValue:"normal",prefix:!1,type:1,parse:function(i,e){var t=[0,1,2],A=[];return e.filter(at).forEach(function(r){switch(r.value){case"stroke":A.push(1);break;case"fill":A.push(0);break;case"markers":A.push(2);break}}),t.forEach(function(r){A.indexOf(r)===-1&&A.push(r)}),A}},my={name:"-webkit-text-stroke-color",initialValue:"currentcolor",prefix:!1,type:3,format:"color"},wy={name:"-webkit-text-stroke-width",initialValue:"0",type:0,prefix:!1,parse:function(i,e){return yr(e)?e.number:0}},By=(function(){function i(e,t){var A,r;this.animationDuration=Oe(e,dy,t.animationDuration),this.backgroundClip=Oe(e,zB,t.backgroundClip),this.backgroundColor=Oe(e,WB,t.backgroundColor),this.backgroundImage=Oe(e,e2,t.backgroundImage),this.backgroundOrigin=Oe(e,t2,t.backgroundOrigin),this.backgroundPosition=Oe(e,A2,t.backgroundPosition),this.backgroundRepeat=Oe(e,i2,t.backgroundRepeat),this.backgroundSize=Oe(e,n2,t.backgroundSize),this.borderTopColor=Oe(e,o2,t.borderTopColor),this.borderRightColor=Oe(e,a2,t.borderRightColor),this.borderBottomColor=Oe(e,l2,t.borderBottomColor),this.borderLeftColor=Oe(e,c2,t.borderLeftColor),this.borderTopLeftRadius=Oe(e,h2,t.borderTopLeftRadius),this.borderTopRightRadius=Oe(e,u2,t.borderTopRightRadius),this.borderBottomRightRadius=Oe(e,d2,t.borderBottomRightRadius),this.borderBottomLeftRadius=Oe(e,p2,t.borderBottomLeftRadius),this.borderTopStyle=Oe(e,f2,t.borderTopStyle),this.borderRightStyle=Oe(e,g2,t.borderRightStyle),this.borderBottomStyle=Oe(e,m2,t.borderBottomStyle),this.borderLeftStyle=Oe(e,w2,t.borderLeftStyle),this.borderTopWidth=Oe(e,B2,t.borderTopWidth),this.borderRightWidth=Oe(e,y2,t.borderRightWidth),this.borderBottomWidth=Oe(e,C2,t.borderBottomWidth),this.borderLeftWidth=Oe(e,v2,t.borderLeftWidth),this.boxShadow=Oe(e,fy,t.boxShadow),this.color=Oe(e,T2,t.color),this.direction=Oe(e,x2,t.direction),this.display=Oe(e,b2,t.display),this.float=Oe(e,F2,t.cssFloat),this.fontFamily=Oe(e,ny,t.fontFamily),this.fontSize=Oe(e,sy,t.fontSize),this.fontStyle=Oe(e,ly,t.fontStyle),this.fontVariant=Oe(e,ay,t.fontVariant),this.fontWeight=Oe(e,oy,t.fontWeight),this.letterSpacing=Oe(e,U2,t.letterSpacing),this.lineBreak=Oe(e,S2,t.lineBreak),this.lineHeight=Oe(e,E2,t.lineHeight),this.listStyleImage=Oe(e,L2,t.listStyleImage),this.listStylePosition=Oe(e,M2,t.listStylePosition),this.listStyleType=Oe(e,oa,t.listStyleType),this.marginTop=Oe(e,H2,t.marginTop),this.marginRight=Oe(e,I2,t.marginRight),this.marginBottom=Oe(e,D2,t.marginBottom),this.marginLeft=Oe(e,_2,t.marginLeft),this.opacity=Oe(e,Ay,t.opacity);var n=Oe(e,P2,t.overflow);this.overflowX=n[0],this.overflowY=n[n.length>1?1:0],this.overflowWrap=Oe(e,k2,t.overflowWrap),this.paddingTop=Oe(e,N2,t.paddingTop),this.paddingRight=Oe(e,O2,t.paddingRight),this.paddingBottom=Oe(e,K2,t.paddingBottom),this.paddingLeft=Oe(e,V2,t.paddingLeft),this.paintOrder=Oe(e,gy,t.paintOrder),this.position=Oe(e,W2,t.position),this.textAlign=Oe(e,z2,t.textAlign),this.textDecorationColor=Oe(e,iy,(A=t.textDecorationColor)!==null&&A!==void 0?A:t.color),this.textDecorationLine=Oe(e,ry,(r=t.textDecorationLine)!==null&&r!==void 0?r:t.textDecoration),this.textShadow=Oe(e,R2,t.textShadow),this.textTransform=Oe(e,G2,t.textTransform),this.transform=Oe(e,$2,t.transform),this.transformOrigin=Oe(e,q2,t.transformOrigin),this.visibility=Oe(e,j2,t.visibility),this.webkitTextStrokeColor=Oe(e,my,t.webkitTextStrokeColor),this.webkitTextStrokeWidth=Oe(e,wy,t.webkitTextStrokeWidth),this.wordBreak=Oe(e,ey,t.wordBreak),this.zIndex=Oe(e,ty,t.zIndex)}return i.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&this.visibility===0},i.prototype.isTransparent=function(){return $A(this.backgroundColor)},i.prototype.isTransformed=function(){return this.transform!==null},i.prototype.isPositioned=function(){return this.position!==0},i.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},i.prototype.isFloating=function(){return this.float!==0},i.prototype.isInlineLevel=function(){return Qt(this.display,4)||Qt(this.display,33554432)||Qt(this.display,268435456)||Qt(this.display,536870912)||Qt(this.display,67108864)||Qt(this.display,134217728)},i})(),yy=(function(){function i(e,t){this.content=Oe(e,cy,t.content),this.quotes=Oe(e,py,t.quotes)}return i})(),Mu=(function(){function i(e,t){this.counterIncrement=Oe(e,hy,t.counterIncrement),this.counterReset=Oe(e,uy,t.counterReset)}return i})(),Oe=function(i,e,t){var A=new ru,r=t!==null&&typeof t<"u"?t.toString():e.initialValue;A.write(r);var n=new nu(A.read());switch(e.type){case 2:var s=n.parseComponentValue();return e.parse(i,at(s)?s.value:e.initialValue);case 0:return e.parse(i,n.parseComponentValue());case 1:return e.parse(i,n.parseComponentValues());case 4:return n.parseComponentValue();case 3:switch(e.format){case"angle":return Rn.parse(i,n.parseComponentValue());case"color":return GA.parse(i,n.parseComponentValue());case"image":return sa.parse(i,n.parseComponentValue());case"length":var o=n.parseComponentValue();return WA(o)?o:Mt;case"length-percentage":var l=n.parseComponentValue();return bt(l)?l:Mt;case"time":return Eu.parse(i,n.parseComponentValue())}break}},Cy="data-html2canvas-debug",vy=function(i){var e=i.getAttribute(Cy);switch(e){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}},aa=function(i,e){var t=vy(i);return t===1||e===t},FA=(function(){function i(e,t){if(this.context=e,this.textNodes=[],this.elements=[],this.flags=0,aa(t,3))debugger;this.styles=new By(e,window.getComputedStyle(t,null)),va(t)&&(this.styles.animationDuration.some(function(A){return A>0})&&(t.style.animationDuration="0s"),this.styles.transform!==null&&(t.style.transform="none")),this.bounds=bn(this.context,t),aa(t,4)&&(this.flags|=16)}return i})(),Ty="AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=",Hu="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xr=typeof Uint8Array>"u"?[]:new Uint8Array(256),As=0;As<Hu.length;As++)xr[Hu.charCodeAt(As)]=As;for(var xy=function(i){var e=i.length*.75,t=i.length,A,r=0,n,s,o,l;i[i.length-1]==="="&&(e--,i[i.length-2]==="="&&e--);var c=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(e):new Array(e),h=Array.isArray(c)?c:new Uint8Array(c);for(A=0;A<t;A+=4)n=xr[i.charCodeAt(A)],s=xr[i.charCodeAt(A+1)],o=xr[i.charCodeAt(A+2)],l=xr[i.charCodeAt(A+3)],h[r++]=n<<2|s>>4,h[r++]=(s&15)<<4|o>>2,h[r++]=(o&3)<<6|l&63;return c},by=function(i){for(var e=i.length,t=[],A=0;A<e;A+=2)t.push(i[A+1]<<8|i[A]);return t},Qy=function(i){for(var e=i.length,t=[],A=0;A<e;A+=4)t.push(i[A+3]<<24|i[A+2]<<16|i[A+1]<<8|i[A]);return t},pi=5,la=11,ca=2,Fy=la-pi,Iu=65536>>pi,Uy=1<<pi,ha=Uy-1,Sy=1024>>pi,Ey=Iu+Sy,Ly=Ey,My=32,Hy=Ly+My,Iy=65536>>la,Dy=1<<Fy,_y=Dy-1,Du=function(i,e,t){return i.slice?i.slice(e,t):new Uint16Array(Array.prototype.slice.call(i,e,t))},Py=function(i,e,t){return i.slice?i.slice(e,t):new Uint32Array(Array.prototype.slice.call(i,e,t))},ky=function(i,e){var t=xy(i),A=Array.isArray(t)?Qy(t):new Uint32Array(t),r=Array.isArray(t)?by(t):new Uint16Array(t),n=24,s=Du(r,n/2,A[4]/2),o=A[5]===2?Du(r,(n+A[4])/2):Py(A,Math.ceil((n+A[4])/4));return new Ny(A[0],A[1],A[2],A[3],s,o)},Ny=(function(){function i(e,t,A,r,n,s){this.initialValue=e,this.errorValue=t,this.highStart=A,this.highValueIndex=r,this.index=n,this.data=s}return i.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>pi],t=(t<<ca)+(e&ha),this.data[t];if(e<=65535)return t=this.index[Iu+(e-55296>>pi)],t=(t<<ca)+(e&ha),this.data[t];if(e<this.highStart)return t=Hy-Iy+(e>>la),t=this.index[t],t+=e>>pi&_y,t=this.index[t],t=(t<<ca)+(e&ha),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},i})(),_u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Oy=typeof Uint8Array>"u"?[]:new Uint8Array(256),is=0;is<_u.length;is++)Oy[_u.charCodeAt(is)]=is;var Ky=1,ua=2,da=3,Pu=4,ku=5,Vy=7,Nu=8,pa=9,fa=10,Ou=11,Ku=12,Vu=13,zu=14,ga=15,zy=function(i){for(var e=[],t=0,A=i.length;t<A;){var r=i.charCodeAt(t++);if(r>=55296&&r<=56319&&t<A){var n=i.charCodeAt(t++);(n&64512)===56320?e.push(((r&1023)<<10)+(n&1023)+65536):(e.push(r),t--)}else e.push(r)}return e},Wy=function(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,i);var t=i.length;if(!t)return"";for(var A=[],r=-1,n="";++r<t;){var s=i[r];s<=65535?A.push(s):(s-=65536,A.push((s>>10)+55296,s%1024+56320)),(r+1===t||A.length>16384)&&(n+=String.fromCharCode.apply(String,A),A.length=0)}return n},Ry=ky(Ty),lA="×",ma="÷",Gy=function(i){return Ry.get(i)},$y=function(i,e,t){var A=t-2,r=e[A],n=e[t-1],s=e[t];if(n===ua&&s===da)return lA;if(n===ua||n===da||n===Pu||s===ua||s===da||s===Pu)return ma;if(n===Nu&&[Nu,pa,Ou,Ku].indexOf(s)!==-1||(n===Ou||n===pa)&&(s===pa||s===fa)||(n===Ku||n===fa)&&s===fa||s===Vu||s===ku||s===Vy||n===Ky)return lA;if(n===Vu&&s===zu){for(;r===ku;)r=e[--A];if(r===zu)return lA}if(n===ga&&s===ga){for(var o=0;r===ga;)o++,r=e[--A];if(o%2===0)return lA}return ma},Xy=function(i){var e=zy(i),t=e.length,A=0,r=0,n=e.map(Gy);return{next:function(){if(A>=t)return{done:!0,value:null};for(var s=lA;A<t&&(s=$y(e,n,++A))===lA;);if(s!==lA||A===t){var o=Wy.apply(null,e.slice(r,A));return r=A,{value:o,done:!1}}return{done:!0,value:null}}}},Zy=function(i){for(var e=Xy(i),t=[],A;!(A=e.next()).done;)A.value&&t.push(A.value.slice());return t},Jy=function(i){var e=123;if(i.createRange){var t=i.createRange();if(t.getBoundingClientRect){var A=i.createElement("boundtest");A.style.height=e+"px",A.style.display="block",i.body.appendChild(A),t.selectNode(A);var r=t.getBoundingClientRect(),n=Math.round(r.height);if(i.body.removeChild(A),n===e)return!0}}return!1},Yy=function(i){var e=i.createElement("boundtest");e.style.width="50px",e.style.display="block",e.style.fontSize="12px",e.style.letterSpacing="0px",e.style.wordSpacing="0px",i.body.appendChild(e);var t=i.createRange();e.innerHTML=typeof"".repeat=="function"?"👨".repeat(10):"";var A=e.firstChild,r=Qn(A.data).map(function(l){return yt(l)}),n=0,s={},o=r.every(function(l,c){t.setStart(A,n),t.setEnd(A,n+l.length);var h=t.getBoundingClientRect();n+=l.length;var g=h.x>s.x||h.y>s.y;return s=h,c===0?!0:g});return i.body.removeChild(e),o},qy=function(){return typeof new Image().crossOrigin<"u"},jy=function(){return typeof new XMLHttpRequest().responseType=="string"},eC=function(i){var e=new Image,t=i.createElement("canvas"),A=t.getContext("2d");if(!A)return!1;e.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{A.drawImage(e,0,0),t.toDataURL()}catch{return!1}return!0},Wu=function(i){return i[0]===0&&i[1]===255&&i[2]===0&&i[3]===255},tC=function(i){var e=i.createElement("canvas"),t=100;e.width=t,e.height=t;var A=e.getContext("2d");if(!A)return Promise.reject(!1);A.fillStyle="rgb(0, 255, 0)",A.fillRect(0,0,t,t);var r=new Image,n=e.toDataURL();r.src=n;var s=wa(t,t,0,0,r);return A.fillStyle="red",A.fillRect(0,0,t,t),Ru(s).then(function(o){A.drawImage(o,0,0);var l=A.getImageData(0,0,t,t).data;A.fillStyle="red",A.fillRect(0,0,t,t);var c=i.createElement("div");return c.style.backgroundImage="url("+n+")",c.style.height=t+"px",Wu(l)?Ru(wa(t,t,0,0,c)):Promise.reject(!1)}).then(function(o){return A.drawImage(o,0,0),Wu(A.getImageData(0,0,t,t).data)}).catch(function(){return!1})},wa=function(i,e,t,A,r){var n="http://www.w3.org/2000/svg",s=document.createElementNS(n,"svg"),o=document.createElementNS(n,"foreignObject");return s.setAttributeNS(null,"width",i.toString()),s.setAttributeNS(null,"height",e.toString()),o.setAttributeNS(null,"width","100%"),o.setAttributeNS(null,"height","100%"),o.setAttributeNS(null,"x",t.toString()),o.setAttributeNS(null,"y",A.toString()),o.setAttributeNS(null,"externalResourcesRequired","true"),s.appendChild(o),o.appendChild(r),s},Ru=function(i){return new Promise(function(e,t){var A=new Image;A.onload=function(){return e(A)},A.onerror=t,A.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(i))})},Ht={get SUPPORT_RANGE_BOUNDS(){var i=Jy(document);return Object.defineProperty(Ht,"SUPPORT_RANGE_BOUNDS",{value:i}),i},get SUPPORT_WORD_BREAKING(){var i=Ht.SUPPORT_RANGE_BOUNDS&&Yy(document);return Object.defineProperty(Ht,"SUPPORT_WORD_BREAKING",{value:i}),i},get SUPPORT_SVG_DRAWING(){var i=eC(document);return Object.defineProperty(Ht,"SUPPORT_SVG_DRAWING",{value:i}),i},get SUPPORT_FOREIGNOBJECT_DRAWING(){var i=typeof Array.from=="function"&&typeof window.fetch=="function"?tC(document):Promise.resolve(!1);return Object.defineProperty(Ht,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:i}),i},get SUPPORT_CORS_IMAGES(){var i=qy();return Object.defineProperty(Ht,"SUPPORT_CORS_IMAGES",{value:i}),i},get SUPPORT_RESPONSE_TYPE(){var i=jy();return Object.defineProperty(Ht,"SUPPORT_RESPONSE_TYPE",{value:i}),i},get SUPPORT_CORS_XHR(){var i="withCredentials"in new XMLHttpRequest;return Object.defineProperty(Ht,"SUPPORT_CORS_XHR",{value:i}),i},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var i=!!(typeof Intl<"u"&&Intl.Segmenter);return Object.defineProperty(Ht,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:i}),i}},br=(function(){function i(e,t){this.text=e,this.bounds=t}return i})(),AC=function(i,e,t,A){var r=nC(e,t),n=[],s=0;return r.forEach(function(o){if(t.textDecorationLine.length||o.trim().length>0)if(Ht.SUPPORT_RANGE_BOUNDS){var l=Gu(A,s,o.length).getClientRects();if(l.length>1){var c=Ba(o),h=0;c.forEach(function(C){n.push(new br(C,IA.fromDOMRectList(i,Gu(A,h+s,C.length).getClientRects()))),h+=C.length})}else n.push(new br(o,IA.fromDOMRectList(i,l)))}else{var g=A.splitText(o.length);n.push(new br(o,iC(i,A))),A=g}else Ht.SUPPORT_RANGE_BOUNDS||(A=A.splitText(o.length));s+=o.length}),n},iC=function(i,e){var t=e.ownerDocument;if(t){var A=t.createElement("html2canvaswrapper");A.appendChild(e.cloneNode(!0));var r=e.parentNode;if(r){r.replaceChild(A,e);var n=bn(i,A);return A.firstChild&&r.replaceChild(A.firstChild,A),n}}return IA.EMPTY},Gu=function(i,e,t){var A=i.ownerDocument;if(!A)throw new Error("Node has no owner document");var r=A.createRange();return r.setStart(i,e),r.setEnd(i,e+t),r},Ba=function(i){if(Ht.SUPPORT_NATIVE_TEXT_SEGMENTATION){var e=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(e.segment(i)).map(function(t){return t.segment})}return Zy(i)},rC=function(i,e){if(Ht.SUPPORT_NATIVE_TEXT_SEGMENTATION){var t=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(t.segment(i)).map(function(A){return A.segment})}return oC(i,e)},nC=function(i,e){return e.letterSpacing!==0?Ba(i):rC(i,e)},sC=[32,160,4961,65792,65793,4153,4241],oC=function(i,e){for(var t=Iw(i,{lineBreak:e.lineBreak,wordBreak:e.overflowWrap==="break-word"?"break-word":e.wordBreak}),A=[],r,n=function(){if(r.value){var s=r.value.slice(),o=Qn(s),l="";o.forEach(function(c){sC.indexOf(c)===-1?l+=yt(c):(l.length&&A.push(l),A.push(yt(c)),l="")}),l.length&&A.push(l)}};!(r=t.next()).done;)n();return A},aC=(function(){function i(e,t,A){this.text=lC(t.data,A.textTransform),this.textBounds=AC(e,this.text,A,t)}return i})(),lC=function(i,e){switch(e){case 1:return i.toLowerCase();case 3:return i.replace(cC,hC);case 2:return i.toUpperCase();default:return i}},cC=/(^|\s|:|-|\(|\))([a-z])/g,hC=function(i,e,t){return i.length>0?e+t.toUpperCase():i},$u=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r.src=A.currentSrc||A.src,r.intrinsicWidth=A.naturalWidth,r.intrinsicHeight=A.naturalHeight,r.context.cache.addImage(r.src),r}return e})(FA),Xu=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r.canvas=A,r.intrinsicWidth=A.width,r.intrinsicHeight=A.height,r}return e})(FA),Zu=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this,n=new XMLSerializer,s=bn(t,A);return A.setAttribute("width",s.width+"px"),A.setAttribute("height",s.height+"px"),r.svg="data:image/svg+xml,"+encodeURIComponent(n.serializeToString(A)),r.intrinsicWidth=A.width.baseVal.value,r.intrinsicHeight=A.height.baseVal.value,r.context.cache.addImage(r.svg),r}return e})(FA),Ju=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r.value=A.value,r}return e})(FA),ya=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r.start=A.start,r.reversed=typeof A.reversed=="boolean"&&A.reversed===!0,r}return e})(FA),uC=[{type:15,flags:0,unit:"px",number:3}],dC=[{type:16,flags:0,number:50}],pC=function(i){return i.width>i.height?new IA(i.left+(i.width-i.height)/2,i.top,i.height,i.height):i.width<i.height?new IA(i.left,i.top+(i.height-i.width)/2,i.width,i.width):i},fC=function(i){var e=i.type===gC?new Array(i.value.length+1).join("•"):i.value;return e.length===0?i.placeholder||"":e},rs="checkbox",ns="radio",gC="password",Yu=707406591,Ca=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;switch(r.type=A.type.toLowerCase(),r.checked=A.checked,r.value=fC(A),(r.type===rs||r.type===ns)&&(r.styles.backgroundColor=3739148031,r.styles.borderTopColor=r.styles.borderRightColor=r.styles.borderBottomColor=r.styles.borderLeftColor=2779096575,r.styles.borderTopWidth=r.styles.borderRightWidth=r.styles.borderBottomWidth=r.styles.borderLeftWidth=1,r.styles.borderTopStyle=r.styles.borderRightStyle=r.styles.borderBottomStyle=r.styles.borderLeftStyle=1,r.styles.backgroundClip=[0],r.styles.backgroundOrigin=[0],r.bounds=pC(r.bounds)),r.type){case rs:r.styles.borderTopRightRadius=r.styles.borderTopLeftRadius=r.styles.borderBottomRightRadius=r.styles.borderBottomLeftRadius=uC;break;case ns:r.styles.borderTopRightRadius=r.styles.borderTopLeftRadius=r.styles.borderBottomRightRadius=r.styles.borderBottomLeftRadius=dC;break}return r}return e})(FA),qu=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this,n=A.options[A.selectedIndex||0];return r.value=n&&n.text||"",r}return e})(FA),ju=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r.value=A.value,r}return e})(FA),ed=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;r.src=A.src,r.width=parseInt(A.width,10)||0,r.height=parseInt(A.height,10)||0,r.backgroundColor=r.styles.backgroundColor;try{if(A.contentWindow&&A.contentWindow.document&&A.contentWindow.document.documentElement){r.tree=Ad(t,A.contentWindow.document.documentElement);var n=A.contentWindow.document.documentElement?vr(t,getComputedStyle(A.contentWindow.document.documentElement).backgroundColor):_A.TRANSPARENT,s=A.contentWindow.document.body?vr(t,getComputedStyle(A.contentWindow.document.body).backgroundColor):_A.TRANSPARENT;r.backgroundColor=$A(n)?$A(s)?r.styles.backgroundColor:s:n}}catch{}return r}return e})(FA),mC=["OL","UL","MENU"],ss=function(i,e,t,A){for(var r=e.firstChild,n=void 0;r;r=n)if(n=r.nextSibling,id(r)&&r.data.trim().length>0)t.textNodes.push(new aC(i,r,t.styles));else if(Hi(r))if(ld(r)&&r.assignedNodes)r.assignedNodes().forEach(function(o){return ss(i,o,t,A)});else{var s=td(i,r);s.styles.isVisible()&&(wC(r,s,A)?s.flags|=4:BC(s.styles)&&(s.flags|=2),mC.indexOf(r.tagName)!==-1&&(s.flags|=8),t.elements.push(s),r.slot,r.shadowRoot?ss(i,r.shadowRoot,s,A):!as(r)&&!rd(r)&&!ls(r)&&ss(i,r,s,A))}},td=function(i,e){return xa(e)?new $u(i,e):nd(e)?new Xu(i,e):rd(e)?new Zu(i,e):yC(e)?new Ju(i,e):CC(e)?new ya(i,e):vC(e)?new Ca(i,e):ls(e)?new qu(i,e):as(e)?new ju(i,e):od(e)?new ed(i,e):new FA(i,e)},Ad=function(i,e){var t=td(i,e);return t.flags|=4,ss(i,e,t,t),t},wC=function(i,e,t){return e.styles.isPositionedWithZIndex()||e.styles.opacity<1||e.styles.isTransformed()||Ta(i)&&t.styles.isTransparent()},BC=function(i){return i.isPositioned()||i.isFloating()},id=function(i){return i.nodeType===Node.TEXT_NODE},Hi=function(i){return i.nodeType===Node.ELEMENT_NODE},va=function(i){return Hi(i)&&typeof i.style<"u"&&!os(i)},os=function(i){return typeof i.className=="object"},yC=function(i){return i.tagName==="LI"},CC=function(i){return i.tagName==="OL"},vC=function(i){return i.tagName==="INPUT"},TC=function(i){return i.tagName==="HTML"},rd=function(i){return i.tagName==="svg"},Ta=function(i){return i.tagName==="BODY"},nd=function(i){return i.tagName==="CANVAS"},sd=function(i){return i.tagName==="VIDEO"},xa=function(i){return i.tagName==="IMG"},od=function(i){return i.tagName==="IFRAME"},ad=function(i){return i.tagName==="STYLE"},xC=function(i){return i.tagName==="SCRIPT"},as=function(i){return i.tagName==="TEXTAREA"},ls=function(i){return i.tagName==="SELECT"},ld=function(i){return i.tagName==="SLOT"},cd=function(i){return i.tagName.indexOf("-")>0},bC=(function(){function i(){this.counters={}}return i.prototype.getCounterValue=function(e){var t=this.counters[e];return t&&t.length?t[t.length-1]:1},i.prototype.getCounterValues=function(e){var t=this.counters[e];return t||[]},i.prototype.pop=function(e){var t=this;e.forEach(function(A){return t.counters[A].pop()})},i.prototype.parse=function(e){var t=this,A=e.counterIncrement,r=e.counterReset,n=!0;A!==null&&A.forEach(function(o){var l=t.counters[o.counter];l&&o.increment!==0&&(n=!1,l.length||l.push(1),l[Math.max(0,l.length-1)]+=o.increment)});var s=[];return n&&r.forEach(function(o){var l=t.counters[o.counter];s.push(o.counter),l||(l=t.counters[o.counter]=[]),l.push(o.reset)}),s},i})(),hd={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},ud={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["Ք","Փ","Ւ","Ց","Ր","Տ","Վ","Ս","Ռ","Ջ","Պ","Չ","Ո","Շ","Ն","Յ","Մ","Ճ","Ղ","Ձ","Հ","Կ","Ծ","Խ","Լ","Ի","Ժ","Թ","Ը","Է","Զ","Ե","Դ","Գ","Բ","Ա"]},QC={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["י׳","ט׳","ח׳","ז׳","ו׳","ה׳","ד׳","ג׳","ב׳","א׳","ת","ש","ר","ק","צ","פ","ע","ס","נ","מ","ל","כ","יט","יח","יז","טז","טו","י","ט","ח","ז","ו","ה","ד","ג","ב","א"]},FC={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["ჵ","ჰ","ჯ","ჴ","ხ","ჭ","წ","ძ","ც","ჩ","შ","ყ","ღ","ქ","ფ","ჳ","ტ","ს","რ","ჟ","პ","ო","ჲ","ნ","მ","ლ","კ","ი","თ","ჱ","ზ","ვ","ე","დ","გ","ბ","ა"]},Ii=function(i,e,t,A,r,n){return i<e||i>t?Fr(i,r,n.length>0):A.integers.reduce(function(s,o,l){for(;i>=o;)i-=o,s+=A.values[l];return s},"")+n},dd=function(i,e,t,A){var r="";do t||i--,r=A(i)+r,i/=e;while(i*e>=e);return r},Ct=function(i,e,t,A,r){var n=t-e+1;return(i<0?"-":"")+(dd(Math.abs(i),n,A,function(s){return yt(Math.floor(s%n)+e)})+r)},fi=function(i,e,t){t===void 0&&(t=". ");var A=e.length;return dd(Math.abs(i),A,!1,function(r){return e[Math.floor(r%A)]})+t},Di=1,ZA=2,JA=4,Qr=8,PA=function(i,e,t,A,r,n){if(i<-9999||i>9999)return Fr(i,4,r.length>0);var s=Math.abs(i),o=r;if(s===0)return e[0]+o;for(var l=0;s>0&&l<=4;l++){var c=s%10;c===0&&Qt(n,Di)&&o!==""?o=e[c]+o:c>1||c===1&&l===0||c===1&&l===1&&Qt(n,ZA)||c===1&&l===1&&Qt(n,JA)&&i>100||c===1&&l>1&&Qt(n,Qr)?o=e[c]+(l>0?t[l-1]:"")+o:c===1&&l>0&&(o=t[l-1]+o),s=Math.floor(s/10)}return(i<0?A:"")+o},pd="十百千萬",fd="拾佰仟萬",gd="マイナス",ba="마이너스",Fr=function(i,e,t){var A=t?". ":"",r=t?"、":"",n=t?", ":"",s=t?" ":"";switch(e){case 0:return"•"+s;case 1:return"◦"+s;case 2:return"◾"+s;case 5:var o=Ct(i,48,57,!0,A);return o.length<4?"0"+o:o;case 4:return fi(i,"〇一二三四五六七八九",r);case 6:return Ii(i,1,3999,hd,3,A).toLowerCase();case 7:return Ii(i,1,3999,hd,3,A);case 8:return Ct(i,945,969,!1,A);case 9:return Ct(i,97,122,!1,A);case 10:return Ct(i,65,90,!1,A);case 11:return Ct(i,1632,1641,!0,A);case 12:case 49:return Ii(i,1,9999,ud,3,A);case 35:return Ii(i,1,9999,ud,3,A).toLowerCase();case 13:return Ct(i,2534,2543,!0,A);case 14:case 30:return Ct(i,6112,6121,!0,A);case 15:return fi(i,"子丑寅卯辰巳午未申酉戌亥",r);case 16:return fi(i,"甲乙丙丁戊己庚辛壬癸",r);case 17:case 48:return PA(i,"零一二三四五六七八九",pd,"負",r,ZA|JA|Qr);case 47:return PA(i,"零壹貳參肆伍陸柒捌玖",fd,"負",r,Di|ZA|JA|Qr);case 42:return PA(i,"零一二三四五六七八九",pd,"负",r,ZA|JA|Qr);case 41:return PA(i,"零壹贰叁肆伍陆柒捌玖",fd,"负",r,Di|ZA|JA|Qr);case 26:return PA(i,"〇一二三四五六七八九","十百千万",gd,r,0);case 25:return PA(i,"零壱弐参四伍六七八九","拾百千万",gd,r,Di|ZA|JA);case 31:return PA(i,"영일이삼사오육칠팔구","십백천만",ba,n,Di|ZA|JA);case 33:return PA(i,"零一二三四五六七八九","十百千萬",ba,n,0);case 32:return PA(i,"零壹貳參四五六七八九","拾百千",ba,n,Di|ZA|JA);case 18:return Ct(i,2406,2415,!0,A);case 20:return Ii(i,1,19999,FC,3,A);case 21:return Ct(i,2790,2799,!0,A);case 22:return Ct(i,2662,2671,!0,A);case 22:return Ii(i,1,10999,QC,3,A);case 23:return fi(i,"あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん");case 24:return fi(i,"いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす");case 27:return Ct(i,3302,3311,!0,A);case 28:return fi(i,"アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン",r);case 29:return fi(i,"イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス",r);case 34:return Ct(i,3792,3801,!0,A);case 37:return Ct(i,6160,6169,!0,A);case 38:return Ct(i,4160,4169,!0,A);case 39:return Ct(i,2918,2927,!0,A);case 40:return Ct(i,1776,1785,!0,A);case 43:return Ct(i,3046,3055,!0,A);case 44:return Ct(i,3174,3183,!0,A);case 45:return Ct(i,3664,3673,!0,A);case 46:return Ct(i,3872,3881,!0,A);default:return Ct(i,48,57,!0,A)}},md="data-html2canvas-ignore",wd=(function(){function i(e,t,A){if(this.context=e,this.options=A,this.scrolledElements=[],this.referenceElement=t,this.counters=new bC,this.quoteDepth=0,!t.ownerDocument)throw new Error("Cloned element does not have an owner document");this.documentElement=this.cloneNode(t.ownerDocument.documentElement,!1)}return i.prototype.toIFrame=function(e,t){var A=this,r=UC(e,t);if(!r.contentWindow)return Promise.reject("Unable to find iframe window");var n=e.defaultView.pageXOffset,s=e.defaultView.pageYOffset,o=r.contentWindow,l=o.document,c=LC(r).then(function(){return Wt(A,void 0,void 0,function(){var h,g;return Nt(this,function(C){switch(C.label){case 0:return this.scrolledElements.forEach(DC),o&&(o.scrollTo(t.left,t.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(o.scrollY!==t.top||o.scrollX!==t.left)&&(this.context.logger.warn("Unable to restore scroll position for cloned document"),this.context.windowBounds=this.context.windowBounds.add(o.scrollX-t.left,o.scrollY-t.top,0,0))),h=this.options.onclone,g=this.clonedReferenceElement,typeof g>"u"?[2,Promise.reject("Error finding the "+this.referenceElement.nodeName+" in the cloned document")]:l.fonts&&l.fonts.ready?[4,l.fonts.ready]:[3,2];case 1:C.sent(),C.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,EC(l)]:[3,4];case 3:C.sent(),C.label=4;case 4:return typeof h=="function"?[2,Promise.resolve().then(function(){return h(l,g)}).then(function(){return r})]:[2,r]}})})});return l.open(),l.write(HC(document.doctype)+"<html></html>"),IC(this.referenceElement.ownerDocument,n,s),l.replaceChild(l.adoptNode(this.documentElement),l.documentElement),l.close(),c},i.prototype.createElementClone=function(e){if(aa(e,2))debugger;if(nd(e))return this.createCanvasClone(e);if(sd(e))return this.createVideoClone(e);if(ad(e))return this.createStyleClone(e);var t=e.cloneNode(!1);return xa(t)&&(xa(e)&&e.currentSrc&&e.currentSrc!==e.src&&(t.src=e.currentSrc,t.srcset=""),t.loading==="lazy"&&(t.loading="eager")),cd(t)?this.createCustomElementClone(t):t},i.prototype.createCustomElementClone=function(e){var t=document.createElement("html2canvascustomelement");return Qa(e.style,t),t},i.prototype.createStyleClone=function(e){try{var t=e.sheet;if(t&&t.cssRules){var A=[].slice.call(t.cssRules,0).reduce(function(n,s){return s&&typeof s.cssText=="string"?n+s.cssText:n},""),r=e.cloneNode(!1);return r.textContent=A,r}}catch(n){if(this.context.logger.error("Unable to access cssRules property",n),n.name!=="SecurityError")throw n}return e.cloneNode(!1)},i.prototype.createCanvasClone=function(e){var t;if(this.options.inlineImages&&e.ownerDocument){var A=e.ownerDocument.createElement("img");try{return A.src=e.toDataURL(),A}catch{this.context.logger.info("Unable to inline canvas contents, canvas is tainted",e)}}var r=e.cloneNode(!1);try{r.width=e.width,r.height=e.height;var n=e.getContext("2d"),s=r.getContext("2d");if(s)if(!this.options.allowTaint&&n)s.putImageData(n.getImageData(0,0,e.width,e.height),0,0);else{var o=(t=e.getContext("webgl2"))!==null&&t!==void 0?t:e.getContext("webgl");if(o){var l=o.getContextAttributes();l?.preserveDrawingBuffer===!1&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",e)}s.drawImage(e,0,0)}return r}catch{this.context.logger.info("Unable to clone canvas as it is tainted",e)}return r},i.prototype.createVideoClone=function(e){var t=e.ownerDocument.createElement("canvas");t.width=e.offsetWidth,t.height=e.offsetHeight;var A=t.getContext("2d");try{return A&&(A.drawImage(e,0,0,t.width,t.height),this.options.allowTaint||A.getImageData(0,0,t.width,t.height)),t}catch{this.context.logger.info("Unable to clone video as it is tainted",e)}var r=e.ownerDocument.createElement("canvas");return r.width=e.offsetWidth,r.height=e.offsetHeight,r},i.prototype.appendChildNode=function(e,t,A){(!Hi(t)||!xC(t)&&!t.hasAttribute(md)&&(typeof this.options.ignoreElements!="function"||!this.options.ignoreElements(t)))&&(!this.options.copyStyles||!Hi(t)||!ad(t))&&e.appendChild(this.cloneNode(t,A))},i.prototype.cloneChildNodes=function(e,t,A){for(var r=this,n=e.shadowRoot?e.shadowRoot.firstChild:e.firstChild;n;n=n.nextSibling)if(Hi(n)&&ld(n)&&typeof n.assignedNodes=="function"){var s=n.assignedNodes();s.length&&s.forEach(function(o){return r.appendChildNode(t,o,A)})}else this.appendChildNode(t,n,A)},i.prototype.cloneNode=function(e,t){if(id(e))return document.createTextNode(e.data);if(!e.ownerDocument)return e.cloneNode(!1);var A=e.ownerDocument.defaultView;if(A&&Hi(e)&&(va(e)||os(e))){var r=this.createElementClone(e);r.style.transitionProperty="none";var n=A.getComputedStyle(e),s=A.getComputedStyle(e,":before"),o=A.getComputedStyle(e,":after");this.referenceElement===e&&va(r)&&(this.clonedReferenceElement=r),Ta(r)&&kC(r);var l=this.counters.parse(new Mu(this.context,n)),c=this.resolvePseudoContent(e,r,s,Ur.BEFORE);cd(e)&&(t=!0),sd(e)||this.cloneChildNodes(e,r,t),c&&r.insertBefore(c,r.firstChild);var h=this.resolvePseudoContent(e,r,o,Ur.AFTER);return h&&r.appendChild(h),this.counters.pop(l),(n&&(this.options.copyStyles||os(e))&&!od(e)||t)&&Qa(n,r),(e.scrollTop!==0||e.scrollLeft!==0)&&this.scrolledElements.push([r,e.scrollLeft,e.scrollTop]),(as(e)||ls(e))&&(as(r)||ls(r))&&(r.value=e.value),r}return e.cloneNode(!1)},i.prototype.resolvePseudoContent=function(e,t,A,r){var n=this;if(A){var s=A.content,o=t.ownerDocument;if(!(!o||!s||s==="none"||s==="-moz-alt-content"||A.display==="none")){this.counters.parse(new Mu(this.context,A));var l=new yy(this.context,A),c=o.createElement("html2canvaspseudoelement");Qa(A,c),l.content.forEach(function(g){if(g.type===0)c.appendChild(o.createTextNode(g.value));else if(g.type===22){var C=o.createElement("img");C.src=g.value,C.style.opacity="1",c.appendChild(C)}else if(g.type===18){if(g.name==="attr"){var x=g.values.filter(at);x.length&&c.appendChild(o.createTextNode(e.getAttribute(x[0].value)||""))}else if(g.name==="counter"){var b=g.values.filter(Li),v=b[0],U=b[1];if(v&&at(v)){var F=n.counters.getCounterValue(v.value),M=U&&at(U)?oa.parse(n.context,U.value):3;c.appendChild(o.createTextNode(Fr(F,M,!1)))}}else if(g.name==="counters"){var N=g.values.filter(Li),v=N[0],R=N[1],U=N[2];if(v&&at(v)){var L=n.counters.getCounterValues(v.value),z=U&&at(U)?oa.parse(n.context,U.value):3,q=R&&R.type===0?R.value:"",$=L.map(function(te){return Fr(te,z,!1)}).join(q);c.appendChild(o.createTextNode($))}}}else if(g.type===20)switch(g.value){case"open-quote":c.appendChild(o.createTextNode(Lu(l.quotes,n.quoteDepth++,!0)));break;case"close-quote":c.appendChild(o.createTextNode(Lu(l.quotes,--n.quoteDepth,!1)));break;default:c.appendChild(o.createTextNode(g.value))}}),c.className=Fa+" "+Ua;var h=r===Ur.BEFORE?" "+Fa:" "+Ua;return os(t)?t.className.baseValue+=h:t.className+=h,c}}},i.destroy=function(e){return e.parentNode?(e.parentNode.removeChild(e),!0):!1},i})(),Ur;(function(i){i[i.BEFORE=0]="BEFORE",i[i.AFTER=1]="AFTER"})(Ur||(Ur={}));var UC=function(i,e){var t=i.createElement("iframe");return t.className="html2canvas-container",t.style.visibility="hidden",t.style.position="fixed",t.style.left="-10000px",t.style.top="0px",t.style.border="0",t.width=e.width.toString(),t.height=e.height.toString(),t.scrolling="no",t.setAttribute(md,"true"),i.body.appendChild(t),t},SC=function(i){return new Promise(function(e){if(i.complete){e();return}if(!i.src){e();return}i.onload=e,i.onerror=e})},EC=function(i){return Promise.all([].slice.call(i.images,0).map(SC))},LC=function(i){return new Promise(function(e,t){var A=i.contentWindow;if(!A)return t("No window assigned for iframe");var r=A.document;A.onload=i.onload=function(){A.onload=i.onload=null;var n=setInterval(function(){r.body.childNodes.length>0&&r.readyState==="complete"&&(clearInterval(n),e(i))},50)}})},MC=["all","d","content"],Qa=function(i,e){for(var t=i.length-1;t>=0;t--){var A=i.item(t);MC.indexOf(A)===-1&&e.style.setProperty(A,i.getPropertyValue(A))}return e},HC=function(i){var e="";return i&&(e+="<!DOCTYPE ",i.name&&(e+=i.name),i.internalSubset&&(e+=i.internalSubset),i.publicId&&(e+='"'+i.publicId+'"'),i.systemId&&(e+='"'+i.systemId+'"'),e+=">"),e},IC=function(i,e,t){i&&i.defaultView&&(e!==i.defaultView.pageXOffset||t!==i.defaultView.pageYOffset)&&i.defaultView.scrollTo(e,t)},DC=function(i){var e=i[0],t=i[1],A=i[2];e.scrollLeft=t,e.scrollTop=A},_C=":before",PC=":after",Fa="___html2canvas___pseudoelement_before",Ua="___html2canvas___pseudoelement_after",Bd=`{
|
|
7
7
|
content: "" !important;
|
|
8
8
|
display: none !important;
|
|
9
|
-
}`,
|
|
10
|
-
.`+la+E2+Zu)},H2=function(r,e){var A=r.ownerDocument;if(A){var t=A.createElement("style");t.textContent=e,r.appendChild(t)}},qu=(function(){function r(){}return r.getOrigin=function(e){var A=r._link;return A?(A.href=e,A.href=A.href,A.protocol+A.hostname+A.port):"about:blank"},r.isSameOrigin=function(e){return r.getOrigin(e)===r._origin},r.setContext=function(e){r._link=e.document.createElement("a"),r._origin=r.getOrigin(e.location.href)},r._origin="about:blank",r})(),L2=(function(){function r(e,A){this.context=e,this._options=A,this._cache={}}return r.prototype.addImage=function(e){var A=Promise.resolve();return this.has(e)||(ha(e)||D2(e))&&(this._cache[e]=this.loadImage(e)).catch(function(){}),A},r.prototype.match=function(e){return this._cache[e]},r.prototype.loadImage=function(e){return MA(this,void 0,void 0,function(){var A,t,i,n,s=this;return SA(this,function(o){switch(o.label){case 0:return A=qu.isSameOrigin(e),t=!ca(e)&&this._options.useCORS===!0&&TA.SUPPORT_CORS_IMAGES&&!A,i=!ca(e)&&!A&&!ha(e)&&typeof this._options.proxy=="string"&&TA.SUPPORT_CORS_XHR&&!t,!A&&this._options.allowTaint===!1&&!ca(e)&&!ha(e)&&!i&&!t?[2]:(n=e,i?[4,this.proxy(n)]:[3,2]);case 1:n=o.sent(),o.label=2;case 2:return this.context.logger.debug("Added image "+e.substring(0,256)),[4,new Promise(function(a,l){var c=new Image;c.onload=function(){return a(c)},c.onerror=l,(k2(n)||t)&&(c.crossOrigin="anonymous"),c.src=n,c.complete===!0&&setTimeout(function(){return a(c)},500),s._options.imageTimeout>0&&setTimeout(function(){return l("Timed out ("+s._options.imageTimeout+"ms) loading image")},s._options.imageTimeout)})];case 3:return[2,o.sent()]}})})},r.prototype.has=function(e){return typeof this._cache[e]<"u"},r.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},r.prototype.proxy=function(e){var A=this,t=this._options.proxy;if(!t)throw new Error("No proxy defined");var i=e.substring(0,256);return new Promise(function(n,s){var o=TA.SUPPORT_RESPONSE_TYPE?"blob":"text",a=new XMLHttpRequest;a.onload=function(){if(a.status===200)if(o==="text")n(a.response);else{var d=new FileReader;d.addEventListener("load",function(){return n(d.result)},!1),d.addEventListener("error",function(p){return s(p)},!1),d.readAsDataURL(a.response)}else s("Failed to proxy resource "+i+" with status code "+a.status)},a.onerror=s;var l=t.indexOf("?")>-1?"&":"?";if(a.open("GET",""+t+l+"url="+encodeURIComponent(e)+"&responseType="+o),o!=="text"&&a instanceof XMLHttpRequest&&(a.responseType=o),A._options.imageTimeout){var c=A._options.imageTimeout;a.timeout=c,a.ontimeout=function(){return s("Timed out ("+c+"ms) proxying "+i)}}a.send()})},r})(),M2=/^data:image\/svg\+xml/i,I2=/^data:image\/.*;base64,/i,_2=/^data:image\/.*/i,D2=function(r){return TA.SUPPORT_SVG_DRAWING||!O2(r)},ca=function(r){return _2.test(r)},k2=function(r){return I2.test(r)},ha=function(r){return r.substr(0,4)==="blob"},O2=function(r){return r.substr(-3).toLowerCase()==="svg"||M2.test(r)},be=(function(){function r(e,A){this.type=0,this.x=e,this.y=A}return r.prototype.add=function(e,A){return new r(this.x+e,this.y+A)},r})(),yr=function(r,e,A){return new be(r.x+(e.x-r.x)*A,r.y+(e.y-r.y)*A)},$n=(function(){function r(e,A,t,i){this.type=1,this.start=e,this.startControl=A,this.endControl=t,this.end=i}return r.prototype.subdivide=function(e,A){var t=yr(this.start,this.startControl,e),i=yr(this.startControl,this.endControl,e),n=yr(this.endControl,this.end,e),s=yr(t,i,e),o=yr(i,n,e),a=yr(s,o,e);return A?new r(this.start,t,s,a):new r(a,o,n,this.end)},r.prototype.add=function(e,A){return new r(this.start.add(e,A),this.startControl.add(e,A),this.endControl.add(e,A),this.end.add(e,A))},r.prototype.reverse=function(){return new r(this.end,this.endControl,this.startControl,this.start)},r})(),YA=function(r){return r.type===1},N2=(function(){function r(e){var A=e.styles,t=e.bounds,i=oi(A.borderTopLeftRadius,t.width,t.height),n=i[0],s=i[1],o=oi(A.borderTopRightRadius,t.width,t.height),a=o[0],l=o[1],c=oi(A.borderBottomRightRadius,t.width,t.height),d=c[0],p=c[1],y=oi(A.borderBottomLeftRadius,t.width,t.height),w=y[0],C=y[1],v=[];v.push((n+a)/t.width),v.push((w+d)/t.width),v.push((s+C)/t.height),v.push((l+p)/t.height);var S=Math.max.apply(Math,v);S>1&&(n/=S,s/=S,a/=S,l/=S,d/=S,p/=S,w/=S,C/=S);var F=t.width-a,k=t.height-p,x=t.width-d,V=t.height-C,N=A.borderTopWidth,Z=A.borderRightWidth,X=A.borderBottomWidth,W=A.borderLeftWidth,ae=rA(A.paddingTop,e.bounds.width),G=rA(A.paddingRight,e.bounds.width),ee=rA(A.paddingBottom,e.bounds.width),oe=rA(A.paddingLeft,e.bounds.width);this.topLeftBorderDoubleOuterBox=n>0||s>0?aA(t.left+W/3,t.top+N/3,n-W/3,s-N/3,AA.TOP_LEFT):new be(t.left+W/3,t.top+N/3),this.topRightBorderDoubleOuterBox=n>0||s>0?aA(t.left+F,t.top+N/3,a-Z/3,l-N/3,AA.TOP_RIGHT):new be(t.left+t.width-Z/3,t.top+N/3),this.bottomRightBorderDoubleOuterBox=d>0||p>0?aA(t.left+x,t.top+k,d-Z/3,p-X/3,AA.BOTTOM_RIGHT):new be(t.left+t.width-Z/3,t.top+t.height-X/3),this.bottomLeftBorderDoubleOuterBox=w>0||C>0?aA(t.left+W/3,t.top+V,w-W/3,C-X/3,AA.BOTTOM_LEFT):new be(t.left+W/3,t.top+t.height-X/3),this.topLeftBorderDoubleInnerBox=n>0||s>0?aA(t.left+W*2/3,t.top+N*2/3,n-W*2/3,s-N*2/3,AA.TOP_LEFT):new be(t.left+W*2/3,t.top+N*2/3),this.topRightBorderDoubleInnerBox=n>0||s>0?aA(t.left+F,t.top+N*2/3,a-Z*2/3,l-N*2/3,AA.TOP_RIGHT):new be(t.left+t.width-Z*2/3,t.top+N*2/3),this.bottomRightBorderDoubleInnerBox=d>0||p>0?aA(t.left+x,t.top+k,d-Z*2/3,p-X*2/3,AA.BOTTOM_RIGHT):new be(t.left+t.width-Z*2/3,t.top+t.height-X*2/3),this.bottomLeftBorderDoubleInnerBox=w>0||C>0?aA(t.left+W*2/3,t.top+V,w-W*2/3,C-X*2/3,AA.BOTTOM_LEFT):new be(t.left+W*2/3,t.top+t.height-X*2/3),this.topLeftBorderStroke=n>0||s>0?aA(t.left+W/2,t.top+N/2,n-W/2,s-N/2,AA.TOP_LEFT):new be(t.left+W/2,t.top+N/2),this.topRightBorderStroke=n>0||s>0?aA(t.left+F,t.top+N/2,a-Z/2,l-N/2,AA.TOP_RIGHT):new be(t.left+t.width-Z/2,t.top+N/2),this.bottomRightBorderStroke=d>0||p>0?aA(t.left+x,t.top+k,d-Z/2,p-X/2,AA.BOTTOM_RIGHT):new be(t.left+t.width-Z/2,t.top+t.height-X/2),this.bottomLeftBorderStroke=w>0||C>0?aA(t.left+W/2,t.top+V,w-W/2,C-X/2,AA.BOTTOM_LEFT):new be(t.left+W/2,t.top+t.height-X/2),this.topLeftBorderBox=n>0||s>0?aA(t.left,t.top,n,s,AA.TOP_LEFT):new be(t.left,t.top),this.topRightBorderBox=a>0||l>0?aA(t.left+F,t.top,a,l,AA.TOP_RIGHT):new be(t.left+t.width,t.top),this.bottomRightBorderBox=d>0||p>0?aA(t.left+x,t.top+k,d,p,AA.BOTTOM_RIGHT):new be(t.left+t.width,t.top+t.height),this.bottomLeftBorderBox=w>0||C>0?aA(t.left,t.top+V,w,C,AA.BOTTOM_LEFT):new be(t.left,t.top+t.height),this.topLeftPaddingBox=n>0||s>0?aA(t.left+W,t.top+N,Math.max(0,n-W),Math.max(0,s-N),AA.TOP_LEFT):new be(t.left+W,t.top+N),this.topRightPaddingBox=a>0||l>0?aA(t.left+Math.min(F,t.width-Z),t.top+N,F>t.width+Z?0:Math.max(0,a-Z),Math.max(0,l-N),AA.TOP_RIGHT):new be(t.left+t.width-Z,t.top+N),this.bottomRightPaddingBox=d>0||p>0?aA(t.left+Math.min(x,t.width-W),t.top+Math.min(k,t.height-X),Math.max(0,d-Z),Math.max(0,p-X),AA.BOTTOM_RIGHT):new be(t.left+t.width-Z,t.top+t.height-X),this.bottomLeftPaddingBox=w>0||C>0?aA(t.left+W,t.top+Math.min(V,t.height-X),Math.max(0,w-W),Math.max(0,C-X),AA.BOTTOM_LEFT):new be(t.left+W,t.top+t.height-X),this.topLeftContentBox=n>0||s>0?aA(t.left+W+oe,t.top+N+ae,Math.max(0,n-(W+oe)),Math.max(0,s-(N+ae)),AA.TOP_LEFT):new be(t.left+W+oe,t.top+N+ae),this.topRightContentBox=a>0||l>0?aA(t.left+Math.min(F,t.width+W+oe),t.top+N+ae,F>t.width+W+oe?0:a-W+oe,l-(N+ae),AA.TOP_RIGHT):new be(t.left+t.width-(Z+G),t.top+N+ae),this.bottomRightContentBox=d>0||p>0?aA(t.left+Math.min(x,t.width-(W+oe)),t.top+Math.min(k,t.height+N+ae),Math.max(0,d-(Z+G)),p-(X+ee),AA.BOTTOM_RIGHT):new be(t.left+t.width-(Z+G),t.top+t.height-(X+ee)),this.bottomLeftContentBox=w>0||C>0?aA(t.left+W+oe,t.top+V,Math.max(0,w-(W+oe)),C-(X+ee),AA.BOTTOM_LEFT):new be(t.left+W+oe,t.top+t.height-(X+ee))}return r})(),AA;(function(r){r[r.TOP_LEFT=0]="TOP_LEFT",r[r.TOP_RIGHT=1]="TOP_RIGHT",r[r.BOTTOM_RIGHT=2]="BOTTOM_RIGHT",r[r.BOTTOM_LEFT=3]="BOTTOM_LEFT"})(AA||(AA={}));var aA=function(r,e,A,t,i){var n=4*((Math.sqrt(2)-1)/3),s=A*n,o=t*n,a=r+A,l=e+t;switch(i){case AA.TOP_LEFT:return new $n(new be(r,l),new be(r,l-o),new be(a-s,e),new be(a,e));case AA.TOP_RIGHT:return new $n(new be(r,e),new be(r+s,e),new be(a,l-o),new be(a,l));case AA.BOTTOM_RIGHT:return new $n(new be(a,e),new be(a,e+o),new be(r+s,l),new be(r,l));case AA.BOTTOM_LEFT:default:return new $n(new be(a,l),new be(a-s,l),new be(r,e+o),new be(r,e))}},Xn=function(r){return[r.topLeftBorderBox,r.topRightBorderBox,r.bottomRightBorderBox,r.bottomLeftBorderBox]},K2=function(r){return[r.topLeftContentBox,r.topRightContentBox,r.bottomRightContentBox,r.bottomLeftContentBox]},Jn=function(r){return[r.topLeftPaddingBox,r.topRightPaddingBox,r.bottomRightPaddingBox,r.bottomLeftPaddingBox]},P2=(function(){function r(e,A,t){this.offsetX=e,this.offsetY=A,this.matrix=t,this.type=0,this.target=6}return r})(),Zn=(function(){function r(e,A){this.path=e,this.target=A,this.type=1}return r})(),V2=(function(){function r(e){this.opacity=e,this.type=2,this.target=6}return r})(),z2=function(r){return r.type===0},Yu=function(r){return r.type===1},G2=function(r){return r.type===2},ju=function(r,e){return r.length===e.length?r.some(function(A,t){return A===e[t]}):!1},R2=function(r,e,A,t,i){return r.map(function(n,s){switch(s){case 0:return n.add(e,A);case 1:return n.add(e+t,A);case 2:return n.add(e+t,A+i);case 3:return n.add(e,A+i)}return n})},ed=(function(){function r(e){this.element=e,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}return r})(),Ad=(function(){function r(e,A){if(this.container=e,this.parent=A,this.effects=[],this.curves=new N2(this.container),this.container.styles.opacity<1&&this.effects.push(new V2(this.container.styles.opacity)),this.container.styles.transform!==null){var t=this.container.bounds.left+this.container.styles.transformOrigin[0].number,i=this.container.bounds.top+this.container.styles.transformOrigin[1].number,n=this.container.styles.transform;this.effects.push(new P2(t,i,n))}if(this.container.styles.overflowX!==0){var s=Xn(this.curves),o=Jn(this.curves);ju(s,o)?this.effects.push(new Zn(s,6)):(this.effects.push(new Zn(s,2)),this.effects.push(new Zn(o,4)))}}return r.prototype.getEffects=function(e){for(var A=[2,3].indexOf(this.container.styles.position)===-1,t=this.parent,i=this.effects.slice(0);t;){var n=t.effects.filter(function(a){return!Yu(a)});if(A||t.container.styles.position!==0||!t.parent){if(i.unshift.apply(i,n),A=[2,3].indexOf(t.container.styles.position)===-1,t.container.styles.overflowX!==0){var s=Xn(t.curves),o=Jn(t.curves);ju(s,o)||i.unshift(new Zn(o,6))}}else i.unshift.apply(i,n);t=t.parent}return i.filter(function(a){return wA(a.target,e)})},r})(),ua=function(r,e,A,t){r.container.elements.forEach(function(i){var n=wA(i.flags,4),s=wA(i.flags,2),o=new Ad(i,r);wA(i.styles.display,2048)&&t.push(o);var a=wA(i.flags,8)?[]:t;if(n||s){var l=n||i.styles.isPositioned()?A:e,c=new ed(o);if(i.styles.isPositioned()||i.styles.opacity<1||i.styles.isTransformed()){var d=i.styles.zIndex.order;if(d<0){var p=0;l.negativeZIndex.some(function(w,C){return d>w.element.container.styles.zIndex.order?(p=C,!1):p>0}),l.negativeZIndex.splice(p,0,c)}else if(d>0){var y=0;l.positiveZIndex.some(function(w,C){return d>=w.element.container.styles.zIndex.order?(y=C+1,!1):y>0}),l.positiveZIndex.splice(y,0,c)}else l.zeroOrAutoZIndexOrTransformedOrOpacity.push(c)}else i.styles.isFloating()?l.nonPositionedFloats.push(c):l.nonPositionedInlineLevel.push(c);ua(o,c,n?c:A,a)}else i.styles.isInlineLevel()?e.inlineLevel.push(o):e.nonInlineLevel.push(o),ua(o,e,A,a);wA(i.flags,8)&&td(i,a)})},td=function(r,e){for(var A=r instanceof Aa?r.start:1,t=r instanceof Aa?r.reversed:!1,i=0;i<e.length;i++){var n=e[i];n.container instanceof Fu&&typeof n.container.value=="number"&&n.container.value!==0&&(A=n.container.value),n.listValue=di(A,n.container.styles.listStyleType,!0),A+=t?-1:1}},W2=function(r){var e=new Ad(r,null),A=new ed(e),t=[];return ua(e,A,A,t),td(e.container,t),A},rd=function(r,e){switch(e){case 0:return jA(r.topLeftBorderBox,r.topLeftPaddingBox,r.topRightBorderBox,r.topRightPaddingBox);case 1:return jA(r.topRightBorderBox,r.topRightPaddingBox,r.bottomRightBorderBox,r.bottomRightPaddingBox);case 2:return jA(r.bottomRightBorderBox,r.bottomRightPaddingBox,r.bottomLeftBorderBox,r.bottomLeftPaddingBox);default:return jA(r.bottomLeftBorderBox,r.bottomLeftPaddingBox,r.topLeftBorderBox,r.topLeftPaddingBox)}},$2=function(r,e){switch(e){case 0:return jA(r.topLeftBorderBox,r.topLeftBorderDoubleOuterBox,r.topRightBorderBox,r.topRightBorderDoubleOuterBox);case 1:return jA(r.topRightBorderBox,r.topRightBorderDoubleOuterBox,r.bottomRightBorderBox,r.bottomRightBorderDoubleOuterBox);case 2:return jA(r.bottomRightBorderBox,r.bottomRightBorderDoubleOuterBox,r.bottomLeftBorderBox,r.bottomLeftBorderDoubleOuterBox);default:return jA(r.bottomLeftBorderBox,r.bottomLeftBorderDoubleOuterBox,r.topLeftBorderBox,r.topLeftBorderDoubleOuterBox)}},X2=function(r,e){switch(e){case 0:return jA(r.topLeftBorderDoubleInnerBox,r.topLeftPaddingBox,r.topRightBorderDoubleInnerBox,r.topRightPaddingBox);case 1:return jA(r.topRightBorderDoubleInnerBox,r.topRightPaddingBox,r.bottomRightBorderDoubleInnerBox,r.bottomRightPaddingBox);case 2:return jA(r.bottomRightBorderDoubleInnerBox,r.bottomRightPaddingBox,r.bottomLeftBorderDoubleInnerBox,r.bottomLeftPaddingBox);default:return jA(r.bottomLeftBorderDoubleInnerBox,r.bottomLeftPaddingBox,r.topLeftBorderDoubleInnerBox,r.topLeftPaddingBox)}},J2=function(r,e){switch(e){case 0:return qn(r.topLeftBorderStroke,r.topRightBorderStroke);case 1:return qn(r.topRightBorderStroke,r.bottomRightBorderStroke);case 2:return qn(r.bottomRightBorderStroke,r.bottomLeftBorderStroke);default:return qn(r.bottomLeftBorderStroke,r.topLeftBorderStroke)}},qn=function(r,e){var A=[];return YA(r)?A.push(r.subdivide(.5,!1)):A.push(r),YA(e)?A.push(e.subdivide(.5,!0)):A.push(e),A},jA=function(r,e,A,t){var i=[];return YA(r)?i.push(r.subdivide(.5,!1)):i.push(r),YA(A)?i.push(A.subdivide(.5,!0)):i.push(A),YA(t)?i.push(t.subdivide(.5,!0).reverse()):i.push(t),YA(e)?i.push(e.subdivide(.5,!1).reverse()):i.push(e),i},id=function(r){var e=r.bounds,A=r.styles;return e.add(A.borderLeftWidth,A.borderTopWidth,-(A.borderRightWidth+A.borderLeftWidth),-(A.borderTopWidth+A.borderBottomWidth))},Yn=function(r){var e=r.styles,A=r.bounds,t=rA(e.paddingLeft,A.width),i=rA(e.paddingRight,A.width),n=rA(e.paddingTop,A.width),s=rA(e.paddingBottom,A.width);return A.add(t+e.borderLeftWidth,n+e.borderTopWidth,-(e.borderRightWidth+e.borderLeftWidth+t+i),-(e.borderTopWidth+e.borderBottomWidth+n+s))},Z2=function(r,e){return r===0?e.bounds:r===2?Yn(e):id(e)},q2=function(r,e){return r===0?e.bounds:r===2?Yn(e):id(e)},da=function(r,e,A){var t=Z2(Tr(r.styles.backgroundOrigin,e),r),i=q2(Tr(r.styles.backgroundClip,e),r),n=Y2(Tr(r.styles.backgroundSize,e),A,t),s=n[0],o=n[1],a=oi(Tr(r.styles.backgroundPosition,e),t.width-s,t.height-o),l=j2(Tr(r.styles.backgroundRepeat,e),a,n,t,i),c=Math.round(t.left+a[0]),d=Math.round(t.top+a[1]);return[l,c,d,s,o]},br=function(r){return tA(r)&&r.value===Br.AUTO},jn=function(r){return typeof r=="number"},Y2=function(r,e,A){var t=e[0],i=e[1],n=e[2],s=r[0],o=r[1];if(!s)return[0,0];if(mA(s)&&o&&mA(o))return[rA(s,A.width),rA(o,A.height)];var a=jn(n);if(tA(s)&&(s.value===Br.CONTAIN||s.value===Br.COVER)){if(jn(n)){var l=A.width/A.height;return l<n!=(s.value===Br.COVER)?[A.width,A.width/n]:[A.height*n,A.height]}return[A.width,A.height]}var c=jn(t),d=jn(i),p=c||d;if(br(s)&&(!o||br(o))){if(c&&d)return[t,i];if(!a&&!p)return[A.width,A.height];if(p&&a){var y=c?t:i*n,w=d?i:t/n;return[y,w]}var C=c?t:A.width,v=d?i:A.height;return[C,v]}if(a){var S=0,F=0;return mA(s)?S=rA(s,A.width):mA(o)&&(F=rA(o,A.height)),br(s)?S=F*n:(!o||br(o))&&(F=S/n),[S,F]}var k=null,x=null;if(mA(s)?k=rA(s,A.width):o&&mA(o)&&(x=rA(o,A.height)),k!==null&&(!o||br(o))&&(x=c&&d?k/t*i:A.height),x!==null&&br(s)&&(k=c&&d?x/i*t:A.width),k!==null&&x!==null)return[k,x];throw new Error("Unable to calculate background-size for element")},Tr=function(r,e){var A=r[e];return typeof A>"u"?r[0]:A},j2=function(r,e,A,t,i){var n=e[0],s=e[1],o=A[0],a=A[1];switch(r){case 2:return[new be(Math.round(t.left),Math.round(t.top+s)),new be(Math.round(t.left+t.width),Math.round(t.top+s)),new be(Math.round(t.left+t.width),Math.round(a+t.top+s)),new be(Math.round(t.left),Math.round(a+t.top+s))];case 3:return[new be(Math.round(t.left+n),Math.round(t.top)),new be(Math.round(t.left+n+o),Math.round(t.top)),new be(Math.round(t.left+n+o),Math.round(t.height+t.top)),new be(Math.round(t.left+n),Math.round(t.height+t.top))];case 1:return[new be(Math.round(t.left+n),Math.round(t.top+s)),new be(Math.round(t.left+n+o),Math.round(t.top+s)),new be(Math.round(t.left+n+o),Math.round(t.top+s+a)),new be(Math.round(t.left+n),Math.round(t.top+s+a))];default:return[new be(Math.round(i.left),Math.round(i.top)),new be(Math.round(i.left+i.width),Math.round(i.top)),new be(Math.round(i.left+i.width),Math.round(i.height+i.top)),new be(Math.round(i.left),Math.round(i.height+i.top))]}},ev="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",nd="Hidden Text",Av=(function(){function r(e){this._data={},this._document=e}return r.prototype.parseMetrics=function(e,A){var t=this._document.createElement("div"),i=this._document.createElement("img"),n=this._document.createElement("span"),s=this._document.body;t.style.visibility="hidden",t.style.fontFamily=e,t.style.fontSize=A,t.style.margin="0",t.style.padding="0",t.style.whiteSpace="nowrap",s.appendChild(t),i.src=ev,i.width=1,i.height=1,i.style.margin="0",i.style.padding="0",i.style.verticalAlign="baseline",n.style.fontFamily=e,n.style.fontSize=A,n.style.margin="0",n.style.padding="0",n.appendChild(this._document.createTextNode(nd)),t.appendChild(n),t.appendChild(i);var o=i.offsetTop-n.offsetTop+2;t.removeChild(n),t.appendChild(this._document.createTextNode(nd)),t.style.lineHeight="normal",i.style.verticalAlign="super";var a=i.offsetTop-t.offsetTop+2;return s.removeChild(t),{baseline:o,middle:a}},r.prototype.getMetrics=function(e,A){var t=e+" "+A;return typeof this._data[t]>"u"&&(this._data[t]=this.parseMetrics(e,A)),this._data[t]},r})(),sd=(function(){function r(e,A){this.context=e,this.options=A}return r})(),tv=1e4,rv=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i._activeEffects=[],i.canvas=t.canvas?t.canvas:document.createElement("canvas"),i.ctx=i.canvas.getContext("2d"),t.canvas||(i.canvas.width=Math.floor(t.width*t.scale),i.canvas.height=Math.floor(t.height*t.scale),i.canvas.style.width=t.width+"px",i.canvas.style.height=t.height+"px"),i.fontMetrics=new Av(document),i.ctx.scale(i.options.scale,i.options.scale),i.ctx.translate(-t.x,-t.y),i.ctx.textBaseline="bottom",i._activeEffects=[],i.context.logger.debug("Canvas renderer initialized ("+t.width+"x"+t.height+") with scale "+t.scale),i}return e.prototype.applyEffects=function(A){for(var t=this;this._activeEffects.length;)this.popEffect();A.forEach(function(i){return t.applyEffect(i)})},e.prototype.applyEffect=function(A){this.ctx.save(),G2(A)&&(this.ctx.globalAlpha=A.opacity),z2(A)&&(this.ctx.translate(A.offsetX,A.offsetY),this.ctx.transform(A.matrix[0],A.matrix[1],A.matrix[2],A.matrix[3],A.matrix[4],A.matrix[5]),this.ctx.translate(-A.offsetX,-A.offsetY)),Yu(A)&&(this.path(A.path),this.ctx.clip()),this._activeEffects.push(A)},e.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},e.prototype.renderStack=function(A){return MA(this,void 0,void 0,function(){var t;return SA(this,function(i){switch(i.label){case 0:return t=A.element.container.styles,t.isVisible()?[4,this.renderStackContent(A)]:[3,2];case 1:i.sent(),i.label=2;case 2:return[2]}})})},e.prototype.renderNode=function(A){return MA(this,void 0,void 0,function(){return SA(this,function(t){switch(t.label){case 0:if(wA(A.container.flags,16))debugger;return A.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(A)]:[3,3];case 1:return t.sent(),[4,this.renderNodeContent(A)];case 2:t.sent(),t.label=3;case 3:return[2]}})})},e.prototype.renderTextWithLetterSpacing=function(A,t,i){var n=this;if(t===0)this.ctx.fillText(A.text,A.bounds.left,A.bounds.top+i);else{var s=ea(A.text);s.reduce(function(o,a){return n.ctx.fillText(a,o,A.bounds.top+i),o+n.ctx.measureText(a).width},A.bounds.left)}},e.prototype.createFontStyle=function(A){var t=A.fontVariant.filter(function(s){return s==="normal"||s==="small-caps"}).join(""),i=av(A.fontFamily).join(", "),n=si(A.fontSize)?""+A.fontSize.number+A.fontSize.unit:A.fontSize.number+"px";return[[A.fontStyle,t,A.fontWeight,n,i].join(" "),i,n]},e.prototype.renderTextNode=function(A,t){return MA(this,void 0,void 0,function(){var i,n,s,o,a,l,c,d,p=this;return SA(this,function(y){return i=this.createFontStyle(t),n=i[0],s=i[1],o=i[2],this.ctx.font=n,this.ctx.direction=t.direction===1?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic",a=this.fontMetrics.getMetrics(s,o),l=a.baseline,c=a.middle,d=t.paintOrder,A.textBounds.forEach(function(w){d.forEach(function(C){switch(C){case 0:p.ctx.fillStyle=vA(t.color),p.renderTextWithLetterSpacing(w,t.letterSpacing,l);var v=t.textShadow;v.length&&w.text.trim().length&&(v.slice(0).reverse().forEach(function(S){p.ctx.shadowColor=vA(S.color),p.ctx.shadowOffsetX=S.offsetX.number*p.options.scale,p.ctx.shadowOffsetY=S.offsetY.number*p.options.scale,p.ctx.shadowBlur=S.blur.number,p.renderTextWithLetterSpacing(w,t.letterSpacing,l)}),p.ctx.shadowColor="",p.ctx.shadowOffsetX=0,p.ctx.shadowOffsetY=0,p.ctx.shadowBlur=0),t.textDecorationLine.length&&(p.ctx.fillStyle=vA(t.textDecorationColor||t.color),t.textDecorationLine.forEach(function(S){switch(S){case 1:p.ctx.fillRect(w.bounds.left,Math.round(w.bounds.top+l),w.bounds.width,1);break;case 2:p.ctx.fillRect(w.bounds.left,Math.round(w.bounds.top),w.bounds.width,1);break;case 3:p.ctx.fillRect(w.bounds.left,Math.ceil(w.bounds.top+c),w.bounds.width,1);break}}));break;case 1:t.webkitTextStrokeWidth&&w.text.trim().length&&(p.ctx.strokeStyle=vA(t.webkitTextStrokeColor),p.ctx.lineWidth=t.webkitTextStrokeWidth,p.ctx.lineJoin=window.chrome?"miter":"round",p.ctx.strokeText(w.text,w.bounds.left,w.bounds.top+l)),p.ctx.strokeStyle="",p.ctx.lineWidth=0,p.ctx.lineJoin="miter";break}})}),[2]})})},e.prototype.renderReplacedElement=function(A,t,i){if(i&&A.intrinsicWidth>0&&A.intrinsicHeight>0){var n=Yn(A),s=Jn(t);this.path(s),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(i,0,0,A.intrinsicWidth,A.intrinsicHeight,n.left,n.top,n.width,n.height),this.ctx.restore()}},e.prototype.renderNodeContent=function(A){return MA(this,void 0,void 0,function(){var t,i,n,s,o,a,F,F,l,c,d,p,x,y,w,V,C,v,S,F,k,x,V;return SA(this,function(N){switch(N.label){case 0:this.applyEffects(A.getEffects(4)),t=A.container,i=A.curves,n=t.styles,s=0,o=t.textNodes,N.label=1;case 1:return s<o.length?(a=o[s],[4,this.renderTextNode(a,n)]):[3,4];case 2:N.sent(),N.label=3;case 3:return s++,[3,1];case 4:if(!(t instanceof Tu))return[3,8];N.label=5;case 5:return N.trys.push([5,7,,8]),[4,this.context.cache.match(t.src)];case 6:return F=N.sent(),this.renderReplacedElement(t,i,F),[3,8];case 7:return N.sent(),this.context.logger.error("Error loading image "+t.src),[3,8];case 8:if(t instanceof Qu&&this.renderReplacedElement(t,i,t.canvas),!(t instanceof xu))return[3,12];N.label=9;case 9:return N.trys.push([9,11,,12]),[4,this.context.cache.match(t.svg)];case 10:return F=N.sent(),this.renderReplacedElement(t,i,F),[3,12];case 11:return N.sent(),this.context.logger.error("Error loading svg "+t.svg.substring(0,255)),[3,12];case 12:return t instanceof Hu&&t.tree?(l=new e(this.context,{scale:this.options.scale,backgroundColor:t.backgroundColor,x:0,y:0,width:t.width,height:t.height}),[4,l.render(t.tree)]):[3,14];case 13:c=N.sent(),t.width&&t.height&&this.ctx.drawImage(c,0,0,t.width,t.height,t.bounds.left,t.bounds.top,t.bounds.width,t.bounds.height),N.label=14;case 14:if(t instanceof ta&&(d=Math.min(t.bounds.width,t.bounds.height),t.type===Pn?t.checked&&(this.ctx.save(),this.path([new be(t.bounds.left+d*.39363,t.bounds.top+d*.79),new be(t.bounds.left+d*.16,t.bounds.top+d*.5549),new be(t.bounds.left+d*.27347,t.bounds.top+d*.44071),new be(t.bounds.left+d*.39694,t.bounds.top+d*.5649),new be(t.bounds.left+d*.72983,t.bounds.top+d*.23),new be(t.bounds.left+d*.84,t.bounds.top+d*.34085),new be(t.bounds.left+d*.39363,t.bounds.top+d*.79)]),this.ctx.fillStyle=vA(Uu),this.ctx.fill(),this.ctx.restore()):t.type===Vn&&t.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(t.bounds.left+d/2,t.bounds.top+d/2,d/4,0,Math.PI*2,!0),this.ctx.fillStyle=vA(Uu),this.ctx.fill(),this.ctx.restore())),iv(t)&&t.value.length){switch(p=this.createFontStyle(n),x=p[0],y=p[1],w=this.fontMetrics.getMetrics(x,y).baseline,this.ctx.font=x,this.ctx.fillStyle=vA(n.color),this.ctx.textBaseline="alphabetic",this.ctx.textAlign=sv(t.styles.textAlign),V=Yn(t),C=0,t.styles.textAlign){case 1:C+=V.width/2;break;case 2:C+=V.width;break}v=V.add(C,0,0,-V.height/2+1),this.ctx.save(),this.path([new be(V.left,V.top),new be(V.left+V.width,V.top),new be(V.left+V.width,V.top+V.height),new be(V.left,V.top+V.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new hi(t.value,v),n.letterSpacing,w),this.ctx.restore(),this.ctx.textBaseline="alphabetic",this.ctx.textAlign="left"}if(!wA(t.styles.display,2048))return[3,20];if(t.styles.listStyleImage===null)return[3,19];if(S=t.styles.listStyleImage,S.type!==0)return[3,18];F=void 0,k=S.url,N.label=15;case 15:return N.trys.push([15,17,,18]),[4,this.context.cache.match(k)];case 16:return F=N.sent(),this.ctx.drawImage(F,t.bounds.left-(F.width+10),t.bounds.top),[3,18];case 17:return N.sent(),this.context.logger.error("Error loading list-style-image "+k),[3,18];case 18:return[3,20];case 19:A.listValue&&t.styles.listStyleType!==-1&&(x=this.createFontStyle(n)[0],this.ctx.font=x,this.ctx.fillStyle=vA(n.color),this.ctx.textBaseline="middle",this.ctx.textAlign="right",V=new yt(t.bounds.left,t.bounds.top+rA(t.styles.paddingTop,t.bounds.width),t.bounds.width,nu(n.lineHeight,n.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new hi(A.listValue,V),n.letterSpacing,nu(n.lineHeight,n.fontSize.number)/2+2),this.ctx.textBaseline="bottom",this.ctx.textAlign="left"),N.label=20;case 20:return[2]}})})},e.prototype.renderStackContent=function(A){return MA(this,void 0,void 0,function(){var t,i,S,n,s,S,o,a,S,l,c,S,d,p,S,y,w,S,C,v,S;return SA(this,function(F){switch(F.label){case 0:if(wA(A.element.container.flags,16))debugger;return[4,this.renderNodeBackgroundAndBorders(A.element)];case 1:F.sent(),t=0,i=A.negativeZIndex,F.label=2;case 2:return t<i.length?(S=i[t],[4,this.renderStack(S)]):[3,5];case 3:F.sent(),F.label=4;case 4:return t++,[3,2];case 5:return[4,this.renderNodeContent(A.element)];case 6:F.sent(),n=0,s=A.nonInlineLevel,F.label=7;case 7:return n<s.length?(S=s[n],[4,this.renderNode(S)]):[3,10];case 8:F.sent(),F.label=9;case 9:return n++,[3,7];case 10:o=0,a=A.nonPositionedFloats,F.label=11;case 11:return o<a.length?(S=a[o],[4,this.renderStack(S)]):[3,14];case 12:F.sent(),F.label=13;case 13:return o++,[3,11];case 14:l=0,c=A.nonPositionedInlineLevel,F.label=15;case 15:return l<c.length?(S=c[l],[4,this.renderStack(S)]):[3,18];case 16:F.sent(),F.label=17;case 17:return l++,[3,15];case 18:d=0,p=A.inlineLevel,F.label=19;case 19:return d<p.length?(S=p[d],[4,this.renderNode(S)]):[3,22];case 20:F.sent(),F.label=21;case 21:return d++,[3,19];case 22:y=0,w=A.zeroOrAutoZIndexOrTransformedOrOpacity,F.label=23;case 23:return y<w.length?(S=w[y],[4,this.renderStack(S)]):[3,26];case 24:F.sent(),F.label=25;case 25:return y++,[3,23];case 26:C=0,v=A.positiveZIndex,F.label=27;case 27:return C<v.length?(S=v[C],[4,this.renderStack(S)]):[3,30];case 28:F.sent(),F.label=29;case 29:return C++,[3,27];case 30:return[2]}})})},e.prototype.mask=function(A){this.ctx.beginPath(),this.ctx.moveTo(0,0),this.ctx.lineTo(this.canvas.width,0),this.ctx.lineTo(this.canvas.width,this.canvas.height),this.ctx.lineTo(0,this.canvas.height),this.ctx.lineTo(0,0),this.formatPath(A.slice(0).reverse()),this.ctx.closePath()},e.prototype.path=function(A){this.ctx.beginPath(),this.formatPath(A),this.ctx.closePath()},e.prototype.formatPath=function(A){var t=this;A.forEach(function(i,n){var s=YA(i)?i.start:i;n===0?t.ctx.moveTo(s.x,s.y):t.ctx.lineTo(s.x,s.y),YA(i)&&t.ctx.bezierCurveTo(i.startControl.x,i.startControl.y,i.endControl.x,i.endControl.y,i.end.x,i.end.y)})},e.prototype.renderRepeat=function(A,t,i,n){this.path(A),this.ctx.fillStyle=t,this.ctx.translate(i,n),this.ctx.fill(),this.ctx.translate(-i,-n)},e.prototype.resizeImage=function(A,t,i){var n;if(A.width===t&&A.height===i)return A;var s=(n=this.canvas.ownerDocument)!==null&&n!==void 0?n:document,o=s.createElement("canvas");o.width=Math.max(1,t),o.height=Math.max(1,i);var a=o.getContext("2d");return a.drawImage(A,0,0,A.width,A.height,0,0,t,i),o},e.prototype.renderBackgroundImage=function(A){return MA(this,void 0,void 0,function(){var t,i,n,s,o,a;return SA(this,function(l){switch(l.label){case 0:t=A.styles.backgroundImage.length-1,i=function(c){var d,p,y,ae,Ue,Fe,oe,me,X,w,ae,Ue,Fe,oe,me,C,v,S,F,k,x,V,N,Z,X,W,ae,G,ee,oe,me,Le,Ue,Fe,ke,ye,ve,Ce,ge,Me,_e,Be;return SA(this,function(iA){switch(iA.label){case 0:if(c.type!==0)return[3,5];d=void 0,p=c.url,iA.label=1;case 1:return iA.trys.push([1,3,,4]),[4,n.context.cache.match(p)];case 2:return d=iA.sent(),[3,4];case 3:return iA.sent(),n.context.logger.error("Error loading background-image "+p),[3,4];case 4:return d&&(y=da(A,t,[d.width,d.height,d.width/d.height]),ae=y[0],Ue=y[1],Fe=y[2],oe=y[3],me=y[4],X=n.ctx.createPattern(n.resizeImage(d,oe,me),"repeat"),n.renderRepeat(ae,X,Ue,Fe)),[3,6];case 5:zB(c)?(w=da(A,t,[null,null,null]),ae=w[0],Ue=w[1],Fe=w[2],oe=w[3],me=w[4],C=OB(c.angle,oe,me),v=C[0],S=C[1],F=C[2],k=C[3],x=C[4],V=document.createElement("canvas"),V.width=oe,V.height=me,N=V.getContext("2d"),Z=N.createLinearGradient(S,k,F,x),Xh(c.stops,v).forEach(function(Ee){return Z.addColorStop(Ee.stop,vA(Ee.color))}),N.fillStyle=Z,N.fillRect(0,0,oe,me),oe>0&&me>0&&(X=n.ctx.createPattern(V,"repeat"),n.renderRepeat(ae,X,Ue,Fe))):GB(c)&&(W=da(A,t,[null,null,null]),ae=W[0],G=W[1],ee=W[2],oe=W[3],me=W[4],Le=c.position.length===0?[No]:c.position,Ue=rA(Le[0],oe),Fe=rA(Le[Le.length-1],me),ke=NB(c,Ue,Fe,oe,me),ye=ke[0],ve=ke[1],ye>0&&ve>0&&(Ce=n.ctx.createRadialGradient(G+Ue,ee+Fe,0,G+Ue,ee+Fe,ye),Xh(c.stops,ye*2).forEach(function(Ee){return Ce.addColorStop(Ee.stop,vA(Ee.color))}),n.path(ae),n.ctx.fillStyle=Ce,ye!==ve?(ge=A.bounds.left+.5*A.bounds.width,Me=A.bounds.top+.5*A.bounds.height,_e=ve/ye,Be=1/_e,n.ctx.save(),n.ctx.translate(ge,Me),n.ctx.transform(1,0,0,_e,0,0),n.ctx.translate(-ge,-Me),n.ctx.fillRect(G,Be*(ee-Me)+Me,oe,me*Be),n.ctx.restore()):n.ctx.fill())),iA.label=6;case 6:return t--,[2]}})},n=this,s=0,o=A.styles.backgroundImage.slice(0).reverse(),l.label=1;case 1:return s<o.length?(a=o[s],[5,i(a)]):[3,4];case 2:l.sent(),l.label=3;case 3:return s++,[3,1];case 4:return[2]}})})},e.prototype.renderSolidBorder=function(A,t,i){return MA(this,void 0,void 0,function(){return SA(this,function(n){return this.path(rd(i,t)),this.ctx.fillStyle=vA(A),this.ctx.fill(),[2]})})},e.prototype.renderDoubleBorder=function(A,t,i,n){return MA(this,void 0,void 0,function(){var s,o;return SA(this,function(a){switch(a.label){case 0:return t<3?[4,this.renderSolidBorder(A,i,n)]:[3,2];case 1:return a.sent(),[2];case 2:return s=$2(n,i),this.path(s),this.ctx.fillStyle=vA(A),this.ctx.fill(),o=X2(n,i),this.path(o),this.ctx.fill(),[2]}})})},e.prototype.renderNodeBackgroundAndBorders=function(A){return MA(this,void 0,void 0,function(){var t,i,n,s,o,a,l,c,d=this;return SA(this,function(p){switch(p.label){case 0:return this.applyEffects(A.getEffects(2)),t=A.container.styles,i=!_t(t.backgroundColor)||t.backgroundImage.length,n=[{style:t.borderTopStyle,color:t.borderTopColor,width:t.borderTopWidth},{style:t.borderRightStyle,color:t.borderRightColor,width:t.borderRightWidth},{style:t.borderBottomStyle,color:t.borderBottomColor,width:t.borderBottomWidth},{style:t.borderLeftStyle,color:t.borderLeftColor,width:t.borderLeftWidth}],s=nv(Tr(t.backgroundClip,0),A.curves),i||t.boxShadow.length?(this.ctx.save(),this.path(s),this.ctx.clip(),_t(t.backgroundColor)||(this.ctx.fillStyle=vA(t.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(A.container)]):[3,2];case 1:p.sent(),this.ctx.restore(),t.boxShadow.slice(0).reverse().forEach(function(y){d.ctx.save();var w=Xn(A.curves),C=y.inset?0:tv,v=R2(w,-C+(y.inset?1:-1)*y.spread.number,(y.inset?1:-1)*y.spread.number,y.spread.number*(y.inset?-2:2),y.spread.number*(y.inset?-2:2));y.inset?(d.path(w),d.ctx.clip(),d.mask(v)):(d.mask(w),d.ctx.clip(),d.path(v)),d.ctx.shadowOffsetX=y.offsetX.number+C,d.ctx.shadowOffsetY=y.offsetY.number,d.ctx.shadowColor=vA(y.color),d.ctx.shadowBlur=y.blur.number,d.ctx.fillStyle=y.inset?vA(y.color):"rgba(0,0,0,1)",d.ctx.fill(),d.ctx.restore()}),p.label=2;case 2:o=0,a=0,l=n,p.label=3;case 3:return a<l.length?(c=l[a],c.style!==0&&!_t(c.color)&&c.width>0?c.style!==2?[3,5]:[4,this.renderDashedDottedBorder(c.color,c.width,o,A.curves,2)]:[3,11]):[3,13];case 4:return p.sent(),[3,11];case 5:return c.style!==3?[3,7]:[4,this.renderDashedDottedBorder(c.color,c.width,o,A.curves,3)];case 6:return p.sent(),[3,11];case 7:return c.style!==4?[3,9]:[4,this.renderDoubleBorder(c.color,c.width,o,A.curves)];case 8:return p.sent(),[3,11];case 9:return[4,this.renderSolidBorder(c.color,o,A.curves)];case 10:p.sent(),p.label=11;case 11:o++,p.label=12;case 12:return a++,[3,3];case 13:return[2]}})})},e.prototype.renderDashedDottedBorder=function(A,t,i,n,s){return MA(this,void 0,void 0,function(){var o,a,l,c,d,p,y,w,C,v,S,F,k,x,V,N,V,N;return SA(this,function(Z){return this.ctx.save(),o=J2(n,i),a=rd(n,i),s===2&&(this.path(a),this.ctx.clip()),YA(a[0])?(l=a[0].start.x,c=a[0].start.y):(l=a[0].x,c=a[0].y),YA(a[1])?(d=a[1].end.x,p=a[1].end.y):(d=a[1].x,p=a[1].y),i===0||i===2?y=Math.abs(l-d):y=Math.abs(c-p),this.ctx.beginPath(),s===3?this.formatPath(o):this.formatPath(a.slice(0,2)),w=t<3?t*3:t*2,C=t<3?t*2:t,s===3&&(w=t,C=t),v=!0,y<=w*2?v=!1:y<=w*2+C?(S=y/(2*w+C),w*=S,C*=S):(F=Math.floor((y+C)/(w+C)),k=(y-F*w)/(F-1),x=(y-(F+1)*w)/F,C=x<=0||Math.abs(C-k)<Math.abs(C-x)?k:x),v&&(s===3?this.ctx.setLineDash([0,w+C]):this.ctx.setLineDash([w,C])),s===3?(this.ctx.lineCap="round",this.ctx.lineWidth=t):this.ctx.lineWidth=t*2+1.1,this.ctx.strokeStyle=vA(A),this.ctx.stroke(),this.ctx.setLineDash([]),s===2&&(YA(a[0])&&(V=a[3],N=a[0],this.ctx.beginPath(),this.formatPath([new be(V.end.x,V.end.y),new be(N.start.x,N.start.y)]),this.ctx.stroke()),YA(a[1])&&(V=a[1],N=a[2],this.ctx.beginPath(),this.formatPath([new be(V.end.x,V.end.y),new be(N.start.x,N.start.y)]),this.ctx.stroke())),this.ctx.restore(),[2]})})},e.prototype.render=function(A){return MA(this,void 0,void 0,function(){var t;return SA(this,function(i){switch(i.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=vA(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),t=W2(A),[4,this.renderStack(t)];case 1:return i.sent(),this.applyEffects([]),[2,this.canvas]}})})},e})(sd),iv=function(r){return r instanceof Su||r instanceof Eu?!0:r instanceof ta&&r.type!==Vn&&r.type!==Pn},nv=function(r,e){switch(r){case 0:return Xn(e);case 2:return K2(e);default:return Jn(e)}},sv=function(r){switch(r){case 1:return"center";case 2:return"right";default:return"left"}},ov=["-apple-system","system-ui"],av=function(r){return/iPhone OS 15_(0|1)/.test(window.navigator.userAgent)?r.filter(function(e){return ov.indexOf(e)===-1}):r},lv=(function(r){nt(e,r);function e(A,t){var i=r.call(this,A,t)||this;return i.canvas=t.canvas?t.canvas:document.createElement("canvas"),i.ctx=i.canvas.getContext("2d"),i.options=t,i.canvas.width=Math.floor(t.width*t.scale),i.canvas.height=Math.floor(t.height*t.scale),i.canvas.style.width=t.width+"px",i.canvas.style.height=t.height+"px",i.ctx.scale(i.options.scale,i.options.scale),i.ctx.translate(-t.x,-t.y),i.context.logger.debug("EXPERIMENTAL ForeignObject renderer initialized ("+t.width+"x"+t.height+" at "+t.x+","+t.y+") with scale "+t.scale),i}return e.prototype.render=function(A){return MA(this,void 0,void 0,function(){var t,i;return SA(this,function(n){switch(n.label){case 0:return t=jo(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,A),[4,cv(t)];case 1:return i=n.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=vA(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(i,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},e})(sd),cv=function(r){return new Promise(function(e,A){var t=new Image;t.onload=function(){e(t)},t.onerror=A,t.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(r))})},hv=(function(){function r(e){var A=e.id,t=e.enabled;this.id=A,this.enabled=t,this.start=Date.now()}return r.prototype.debug=function(){for(var e=[],A=0;A<arguments.length;A++)e[A]=arguments[A];this.enabled&&(typeof window<"u"&&window.console&&typeof console.debug=="function"?console.debug.apply(console,on([this.id,this.getTime()+"ms"],e)):this.info.apply(this,e))},r.prototype.getTime=function(){return Date.now()-this.start},r.prototype.info=function(){for(var e=[],A=0;A<arguments.length;A++)e[A]=arguments[A];this.enabled&&typeof window<"u"&&window.console&&typeof console.info=="function"&&console.info.apply(console,on([this.id,this.getTime()+"ms"],e))},r.prototype.warn=function(){for(var e=[],A=0;A<arguments.length;A++)e[A]=arguments[A];this.enabled&&(typeof window<"u"&&window.console&&typeof console.warn=="function"?console.warn.apply(console,on([this.id,this.getTime()+"ms"],e)):this.info.apply(this,e))},r.prototype.error=function(){for(var e=[],A=0;A<arguments.length;A++)e[A]=arguments[A];this.enabled&&(typeof window<"u"&&window.console&&typeof console.error=="function"?console.error.apply(console,on([this.id,this.getTime()+"ms"],e)):this.info.apply(this,e))},r.instances={},r})(),uv=(function(){function r(e,A){var t;this.windowBounds=A,this.instanceName="#"+r.instanceCount++,this.logger=new hv({id:this.instanceName,enabled:e.logging}),this.cache=(t=e.cache)!==null&&t!==void 0?t:new L2(this,e)}return r.instanceCount=1,r})(),dv=function(r,e){return e===void 0&&(e={}),fv(r,e)};typeof window<"u"&&qu.setContext(window);var fv=function(r,e){return MA(void 0,void 0,void 0,function(){var A,t,i,n,s,o,a,l,c,d,p,y,w,C,v,S,F,k,x,V,Z,N,Z,X,W,ae,G,ee,oe,me,Le,Ue,Fe,ke,ye,ve,Ce,ge,Me,_e;return SA(this,function(Be){switch(Be.label){case 0:if(!r||typeof r!="object")return[2,Promise.reject("Invalid element provided as first argument")];if(A=r.ownerDocument,!A)throw new Error("Element is not attached to a Document");if(t=A.defaultView,!t)throw new Error("Document is not attached to a Window");return i={allowTaint:(X=e.allowTaint)!==null&&X!==void 0?X:!1,imageTimeout:(W=e.imageTimeout)!==null&&W!==void 0?W:15e3,proxy:e.proxy,useCORS:(ae=e.useCORS)!==null&&ae!==void 0?ae:!1},n=Bo({logging:(G=e.logging)!==null&&G!==void 0?G:!0,cache:e.cache},i),s={windowWidth:(ee=e.windowWidth)!==null&&ee!==void 0?ee:t.innerWidth,windowHeight:(oe=e.windowHeight)!==null&&oe!==void 0?oe:t.innerHeight,scrollX:(me=e.scrollX)!==null&&me!==void 0?me:t.pageXOffset,scrollY:(Le=e.scrollY)!==null&&Le!==void 0?Le:t.pageYOffset},o=new yt(s.scrollX,s.scrollY,s.windowWidth,s.windowHeight),a=new uv(n,o),l=(Ue=e.foreignObjectRendering)!==null&&Ue!==void 0?Ue:!1,c={allowTaint:(Fe=e.allowTaint)!==null&&Fe!==void 0?Fe:!1,onclone:e.onclone,ignoreElements:e.ignoreElements,inlineImages:l,copyStyles:l},a.logger.debug("Starting document clone with size "+o.width+"x"+o.height+" scrolled to "+-o.left+","+-o.top),d=new Ju(a,r,c),p=d.clonedReferenceElement,p?[4,d.toIFrame(A,o)]:[2,Promise.reject("Unable to find element in cloned iframe")];case 1:return y=Be.sent(),w=ia(p)||p2(p)?Rg(p.ownerDocument):an(a,p),C=w.width,v=w.height,S=w.left,F=w.top,k=pv(a,p,e.backgroundColor),x={canvas:e.canvas,backgroundColor:k,scale:(ye=(ke=e.scale)!==null&&ke!==void 0?ke:t.devicePixelRatio)!==null&&ye!==void 0?ye:1,x:((ve=e.x)!==null&&ve!==void 0?ve:0)+S,y:((Ce=e.y)!==null&&Ce!==void 0?Ce:0)+F,width:(ge=e.width)!==null&&ge!==void 0?ge:Math.ceil(C),height:(Me=e.height)!==null&&Me!==void 0?Me:Math.ceil(v)},l?(a.logger.debug("Document cloned, using foreign object rendering"),Z=new lv(a,x),[4,Z.render(p)]):[3,3];case 2:return V=Be.sent(),[3,5];case 3:return a.logger.debug("Document cloned, element located at "+S+","+F+" with size "+C+"x"+v+" using computed rendering"),a.logger.debug("Starting DOM parsing"),N=Mu(a,p),k===N.styles.backgroundColor&&(N.styles.backgroundColor=Tt.TRANSPARENT),a.logger.debug("Starting renderer for element at "+x.x+","+x.y+" with size "+x.width+"x"+x.height),Z=new rv(a,x),[4,Z.render(N)];case 4:V=Be.sent(),Be.label=5;case 5:return(!((_e=e.removeContainer)!==null&&_e!==void 0)||_e)&&(Ju.destroy(y)||a.logger.error("Cannot detach cloned iframe as it is not in the DOM anymore")),a.logger.debug("Finished rendering"),[2,V]}})})},pv=function(r,e,A){var t=e.ownerDocument,i=t.documentElement?ai(r,getComputedStyle(t.documentElement).backgroundColor):Tt.TRANSPARENT,n=t.body?ai(r,getComputedStyle(t.body).backgroundColor):Tt.TRANSPARENT,s=typeof A=="string"?ai(r,A):A===null?Tt.TRANSPARENT:4294967295;return e===t.documentElement?_t(i)?_t(n)?s:n:i:s};const gv={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};class mv{constructor(e,A,t="#3b82f6",i=2){this.price=e,this.originTime=A,this.color=t,this.lineWidth=i,this.visible=!0,this._chart=null,this._series=null,this._paneView=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=o.context,l=n._chart,c=n._series;if(!l||!c)return;const d=c.priceToCoordinate(n.price);if(d==null)return;const p=Math.round(d*o.verticalPixelRatio),y=l.timeScale().timeToCoordinate(n.originTime),w=y==null?0:Math.max(0,Math.round(y*o.horizontalPixelRatio)),C=o.bitmapSize.width;if(w>=C)return;a.save(),a.beginPath(),a.strokeStyle=n.color,a.lineWidth=n.lineWidth*o.verticalPixelRatio,a.setLineDash([]),a.moveTo(w,p),a.lineTo(C,p),a.stroke(),a.beginPath(),a.fillStyle=n.color;const v=3*o.verticalPixelRatio;a.arc(w,p,v,0,Math.PI*2),a.fill(),a.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Bv{constructor(e,A,t,i="#3b82f6",n=2){this.p1=e,this.p2=A,this.info=t,this.color=i,this.lineWidth=n,this.visible=!0,this._chart=null,this._series=null;const s=this;this._paneView={renderer(){return{draw(o){o.useBitmapCoordinateSpace(a=>{if(!s.visible)return;const l=s._chart,c=s._series;if(!l||!c)return;const d=a.horizontalPixelRatio,p=a.verticalPixelRatio,y=l.timeScale().timeToCoordinate(s.p1.rawTime),w=l.timeScale().timeToCoordinate(s.p2.rawTime),C=c.priceToCoordinate(s.p1.price),v=c.priceToCoordinate(s.p2.price);if(y==null||w==null||C==null||v==null)return;const S=Math.round(y*d),F=Math.round(C*p),k=Math.round(w*d),x=Math.round(v*p),V=a.context;V.save(),V.beginPath(),V.strokeStyle=s.color,V.lineWidth=s.lineWidth*p,V.setLineDash([]),V.moveTo(S,F),V.lineTo(k,x),V.stroke(),V.beginPath(),V.fillStyle=s.color,V.arc(S,F,3*p,0,Math.PI*2),V.fill(),V.beginPath(),V.arc(k,x,3*p,0,Math.PI*2),V.fill();const{priceDiff:N,pricePct:Z,bars:X,days:W,angle:ae}=s.info,G=N>=0?"+":"",ee=[`${G}${N.toFixed(5)} (${G}${Z.toFixed(2)}%)`,`${X} bars (${W} days)`,`∠ ${ae.toFixed(1)}°`],oe=Math.round(11*p);V.font=`${oe}px sans-serif`;const me=oe*1.6,Le=8*p,Ue=Math.max(...ee.map(Be=>V.measureText(Be).width))+Le*2,Fe=ee.length*me+Le*2,ke=k+10*d,ye=x-Fe-4*p,ve=a.bitmapSize.width,Ce=a.bitmapSize.height,ge=Math.min(Math.max(0,ke),ve-Ue-4*d),Me=Math.min(Math.max(4*p,ye),Ce-Fe-4*p),_e=4*p;V.beginPath(),V.moveTo(ge+_e,Me),V.lineTo(ge+Ue-_e,Me),V.quadraticCurveTo(ge+Ue,Me,ge+Ue,Me+_e),V.lineTo(ge+Ue,Me+Fe-_e),V.quadraticCurveTo(ge+Ue,Me+Fe,ge+Ue-_e,Me+Fe),V.lineTo(ge+_e,Me+Fe),V.quadraticCurveTo(ge,Me+Fe,ge,Me+Fe-_e),V.lineTo(ge,Me+_e),V.quadraticCurveTo(ge,Me,ge+_e,Me),V.closePath(),V.fillStyle="rgba(30, 41, 59, 0.92)",V.fill(),V.strokeStyle=s.color,V.lineWidth=1*p,V.stroke(),V.fillStyle="#e2e8f0",V.textAlign="left",ee.forEach((Be,iA)=>{V.fillText(Be,ge+Le,Me+Le+oe+iA*me)}),V.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class od{constructor(e,A,t){this.p1=e,this.p2=A,this.info=t,this.visible=!0,this._chart=null,this._series=null;const i=A.price>=e.price;this.color=i?"#3b82f6":"#ef5350",this.fillColor=i?"rgba(59,130,246,0.1)":"rgba(239,83,80,0.1)";const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=n._chart,l=n._series;if(!a||!l)return;const c=o.horizontalPixelRatio,d=o.verticalPixelRatio,p=a.timeScale().timeToCoordinate(n.p1.rawTime),y=a.timeScale().timeToCoordinate(n.p2.rawTime),w=l.priceToCoordinate(n.p1.price),C=l.priceToCoordinate(n.p2.price);if(p==null||y==null||w==null||C==null)return;const v=Math.round(p*c),S=Math.round(w*d),F=Math.round(y*c),k=Math.round(C*d),x=o.context;x.save(),x.fillStyle=n.fillColor,x.fillRect(Math.min(v,F),Math.min(S,k),Math.abs(F-v),Math.abs(k-S)),x.strokeStyle=n.color,x.lineWidth=1*d,x.setLineDash([]),x.strokeRect(Math.min(v,F),Math.min(S,k),Math.abs(F-v),Math.abs(k-S)),x.beginPath(),x.strokeStyle=n.color,x.lineWidth=2*d,x.moveTo(v,S),x.lineTo(F,k),x.stroke(),x.fillStyle=n.color,x.beginPath(),x.arc(v,S,3*d,0,Math.PI*2),x.fill(),x.beginPath(),x.arc(F,k,3*d,0,Math.PI*2),x.fill();const{priceDiff:V,pricePct:N,bars:Z,days:X}=n.info,W=V>=0?"+":"",ae=[`${W}${V.toFixed(5)} (${W}${N.toFixed(2)}%)`,`${Z} bars (${X} days)`],G=Math.round(11*d);x.font=`${G}px sans-serif`;const ee=G*1.6,oe=8*d,me=Math.max(...ae.map(Me=>x.measureText(Me).width))+oe*2,Le=ae.length*ee+oe*2,Ue=o.bitmapSize.width,Fe=o.bitmapSize.height,ke=F+10*c,ye=k-Le-4*d,ve=Math.min(Math.max(0,ke),Ue-me-4*c),Ce=Math.min(Math.max(4*d,ye),Fe-Le-4*d),ge=4*d;x.beginPath(),x.moveTo(ve+ge,Ce),x.lineTo(ve+me-ge,Ce),x.quadraticCurveTo(ve+me,Ce,ve+me,Ce+ge),x.lineTo(ve+me,Ce+Le-ge),x.quadraticCurveTo(ve+me,Ce+Le,ve+me-ge,Ce+Le),x.lineTo(ve+ge,Ce+Le),x.quadraticCurveTo(ve,Ce+Le,ve,Ce+Le-ge),x.lineTo(ve,Ce+ge),x.quadraticCurveTo(ve,Ce,ve+ge,Ce),x.closePath(),x.fillStyle="rgba(30, 41, 59, 0.92)",x.fill(),x.strokeStyle=n.color,x.lineWidth=1*d,x.stroke(),x.fillStyle="#e2e8f0",x.textAlign="left",ae.forEach((Me,_e)=>{x.fillText(Me,ve+oe,Ce+oe+G+_e*ee)}),x.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class wv{constructor(e,A,t={}){this.p1=e,this.p2=A,this.visible=!0,this.strokeColor=t.strokeColor??"#7aa6ae",this.fillColor=t.fillColor??"rgba(148, 163, 184, 0.18)",this.lineWidth=t.lineWidth??1,this._chart=null,this._series=null;const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart,a=i._series;if(!o||!a)return;const l=s.horizontalPixelRatio,c=s.verticalPixelRatio,d=o.timeScale().timeToCoordinate(i.p1.rawTime),p=o.timeScale().timeToCoordinate(i.p2.rawTime),y=a.priceToCoordinate(i.p1.price),w=a.priceToCoordinate(i.p2.price);if(d==null||p==null||y==null||w==null)return;const C=Math.min(d,p)*l,v=Math.max(d,p)*l,S=Math.min(y,w)*c,F=Math.max(y,w)*c,k=v-C,x=F-S;if(k<.5||x<.5)return;const V=s.context;V.save(),V.fillStyle=i.fillColor,V.fillRect(C,S,k,x),V.strokeStyle=i.strokeColor,V.lineWidth=i.lineWidth*c,V.setLineDash([]),V.strokeRect(C,S,k,x),V.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Cv{constructor(e,A,t={}){this.p1=e,this.p2=A,this.visible=!0,this.strokeColor=t.strokeColor??"#7aa6ae",this.lineWidth=t.lineWidth??1,this._chart=null,this._series=null;const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart,a=i._series;if(!o||!a)return;const l=s.horizontalPixelRatio,c=s.verticalPixelRatio,d=o.timeScale().timeToCoordinate(i.p1.rawTime),p=a.priceToCoordinate(i.p1.price),y=o.timeScale().timeToCoordinate(i.p2.rawTime),w=a.priceToCoordinate(i.p2.price);if(d==null||p==null||y==null||w==null)return;const C=d*l,v=p*c,S=y*l,F=w*c,k=Math.hypot(S-C,F-v);if(k<.5)return;const x=s.context;x.save(),x.strokeStyle=i.strokeColor,x.lineWidth=i.lineWidth*c,x.setLineDash([]),x.beginPath(),x.arc(C,v,k,0,Math.PI*2),x.stroke(),x.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class vv{constructor(e,A,t,i={}){this.p1=e,this.p2=A,this.p3=t,this.visible=!0,this.strokeColor=i.strokeColor??"#7aa6ae",this.fillColor=i.fillColor??"rgba(148, 163, 184, 0.18)",this.lineWidth=i.lineWidth??1,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=n._chart,l=n._series;if(!a||!l)return;const c=o.horizontalPixelRatio,d=o.verticalPixelRatio,p=a.timeScale().timeToCoordinate(n.p1.rawTime),y=l.priceToCoordinate(n.p1.price),w=a.timeScale().timeToCoordinate(n.p2.rawTime),C=l.priceToCoordinate(n.p2.price),v=a.timeScale().timeToCoordinate(n.p3.rawTime),S=l.priceToCoordinate(n.p3.price);if(p==null||y==null||w==null||C==null||v==null||S==null)return;const F=p*c,k=y*d,x=w*c,V=C*d,N=v*c,Z=S*d,X=o.context;X.save(),X.beginPath(),X.moveTo(F,k),X.lineTo(x,V),X.lineTo(N,Z),X.closePath(),X.fillStyle=n.fillColor,X.fill(),X.strokeStyle=n.strokeColor,X.lineWidth=n.lineWidth*d,X.setLineDash([]),X.stroke(),X.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class yv{constructor(e,A,t={}){this.p1=e,this.p2=A,this.minorRatio=t.minorRatio??.45,this.previewAsLine=t.previewAsLine??!1,this.visible=!0,this.strokeColor=t.strokeColor??"#7aa6ae",this.lineWidth=t.lineWidth??1,this._chart=null,this._series=null;const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart,a=i._series;if(!o||!a)return;const l=s.horizontalPixelRatio,c=s.verticalPixelRatio,d=o.timeScale().timeToCoordinate(i.p1.rawTime),p=a.priceToCoordinate(i.p1.price),y=o.timeScale().timeToCoordinate(i.p2.rawTime),w=a.priceToCoordinate(i.p2.price);if(d==null||p==null||y==null||w==null)return;const C=d*l,v=p*c,S=y*l,F=w*c,k=S-C,x=F-v,V=Math.hypot(k,x);if(V<.5)return;const N=s.context;if(N.save(),N.strokeStyle=i.strokeColor,N.lineWidth=i.lineWidth*c,N.setLineDash([]),i.previewAsLine)N.beginPath(),N.moveTo(C,v),N.lineTo(S,F),N.stroke();else{const Z=(C+S)/2,X=(v+F)/2,W=Math.atan2(x,k),ae=V/2,G=Math.max(1,ae*Math.max(.05,i.minorRatio));N.beginPath(),N.ellipse(Z,X,ae,G,W,0,Math.PI*2),N.stroke()}N.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class ad{constructor(e,A,t="#f59e0b",i=2){this.p1=e,this.p2=A,this.color=t,this.lineWidth=i,this.visible=!0,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=n._chart,l=n._series;if(!a||!l)return;const c=o.horizontalPixelRatio,d=o.verticalPixelRatio,p=a.timeScale().timeToCoordinate(n.p1.rawTime),y=a.timeScale().timeToCoordinate(n.p2.rawTime),w=l.priceToCoordinate(n.p1.price),C=l.priceToCoordinate(n.p2.price);if(p==null||y==null||w==null||C==null)return;const v=Math.round(p*c),S=Math.round(w*d),F=Math.round(y*c),k=Math.round(C*d),x=o.context;x.save(),x.beginPath(),x.strokeStyle=n.color,x.lineWidth=n.lineWidth*d,x.setLineDash([]),x.moveTo(v,S),x.lineTo(F,k),x.stroke();const V=Math.atan2(k-S,F-v),N=11*d,Z=Math.PI/7,X=F-N*Math.cos(V-Z),W=k-N*Math.sin(V-Z),ae=F-N*Math.cos(V+Z),G=k-N*Math.sin(V+Z);x.beginPath(),x.fillStyle=n.color,x.moveTo(F,k),x.lineTo(X,W),x.lineTo(ae,G),x.closePath(),x.fill(),x.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class bv{constructor(e,A,t="#7aa6ae",i=2){this.p1=e,this.p2=A,this.color=t,this.lineWidth=i,this.visible=!0,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=n._chart,l=n._series;if(!a||!l)return;const c=o.horizontalPixelRatio,d=o.verticalPixelRatio,p=a.timeScale().timeToCoordinate(n.p1.rawTime),y=a.timeScale().timeToCoordinate(n.p2.rawTime),w=l.priceToCoordinate(n.p1.price),C=l.priceToCoordinate(n.p2.price);if(p==null||y==null||w==null||C==null)return;const v=p*c,S=w*d;let F=y-p,k=C-w;F<0&&(F=-F,k=-k),Math.abs(F)<1e-4&&(F=1e-4);const x=k*d/(F*c),V=Math.max(0,v),N=S+x*(V-v),Z=o.bitmapSize.width,X=S+x*(Z-v),W=o.context;W.save(),W.beginPath(),W.strokeStyle=n.color,W.lineWidth=n.lineWidth*d,W.setLineDash([]),W.moveTo(V,N),W.lineTo(Z,X),W.stroke(),W.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Tv{constructor(e,A,t="#7aa6ae",i=2){this.p1=e,this.p2=A,this.color=t,this.lineWidth=i,this.visible=!0,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=n._chart,l=n._series;if(!a||!l)return;const c=o.horizontalPixelRatio,d=o.verticalPixelRatio,p=a.timeScale().timeToCoordinate(n.p1.rawTime),y=a.timeScale().timeToCoordinate(n.p2.rawTime),w=l.priceToCoordinate(n.p1.price),C=l.priceToCoordinate(n.p2.price);if(p==null||y==null||w==null||C==null)return;const v=p*c,S=w*d;let F=y-p,k=C-w;Math.abs(F)<1e-4&&(F=1e-4);const x=k*d/(F*c),V=0,N=S+x*(V-v),Z=o.bitmapSize.width,X=S+x*(Z-v),W=o.context;W.save(),W.beginPath(),W.strokeStyle=n.color,W.lineWidth=n.lineWidth*d,W.setLineDash([]),W.moveTo(V,N),W.lineTo(Z,X),W.stroke(),W.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Qv{constructor(e,A="#7aa6ae",t=2){this.center=e,this.color=A,this.lineWidth=t,this.visible=!0,this._chart=null,this._series=null;const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart,a=i._series;if(!o||!a)return;const l=s.horizontalPixelRatio,c=s.verticalPixelRatio,d=o.timeScale().timeToCoordinate(i.center.rawTime),p=a.priceToCoordinate(i.center.price);if(d==null||p==null)return;const y=Math.round(d*l),w=Math.round(p*c),C=s.bitmapSize.width,v=s.bitmapSize.height,S=s.context;S.save(),S.strokeStyle=i.color,S.lineWidth=i.lineWidth*c,S.setLineDash([]),S.beginPath(),S.moveTo(0,w),S.lineTo(C,w),S.stroke(),S.beginPath(),S.moveTo(y,0),S.lineTo(y,v),S.stroke(),S.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class xv{constructor(e,A,t="#7aa6ae",i=2){this.p1=e,this.p2=A,this.color=t,this.lineWidth=i,this.visible=!0,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const a=n._chart,l=n._series;if(!a||!l)return;const c=o.horizontalPixelRatio,d=o.verticalPixelRatio,p=a.timeScale().timeToCoordinate(n.p1.rawTime),y=a.timeScale().timeToCoordinate(n.p2.rawTime),w=l.priceToCoordinate(n.p1.price),C=l.priceToCoordinate(n.p2.price);if(p==null||y==null||w==null||C==null)return;const v=p*c,S=w*d,F=y*c,k=C*d,x=v-F,V=S-k;if(Math.hypot(x,V)<1e-4)return;const Z=Math.atan2(V,x),X=Math.round(Math.abs(Z*180/Math.PI)),W=o.context;W.save(),W.strokeStyle=n.color,W.lineWidth=n.lineWidth*d,W.setLineDash([]),W.beginPath(),W.moveTo(v,S),W.lineTo(F,k),W.stroke();const ae=28*d;W.beginPath(),W.lineWidth=1*d,W.strokeStyle="rgba(122,166,174,0.55)",W.moveTo(F,k),W.lineTo(F+ae,k),W.stroke(),W.beginPath(),W.strokeStyle="rgba(122,166,174,0.45)",W.arc(F,k,ae,0,Z,Z<0),W.stroke(),W.fillStyle="#4b7c86",W.font=`${Math.round(10*d)}px sans-serif`,W.textAlign="left",W.textBaseline="middle";const G=F+(ae+10*d)*Math.cos(Z/2),ee=k+(ae+10*d)*Math.sin(Z/2);W.fillText(`${X}°`,G,ee),W.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Fv{constructor(e,A,t){this.p1=e,this.p2=A,this.p3=t,this.visible=!0,this._chart=null,this._series=null,this._levels=[{k:-2,color:"rgba(239, 68, 68, 0.9)",width:1},{k:-1.5,color:"rgba(168, 85, 247, 0.9)",width:1},{k:-1,color:"rgba(59, 130, 246, 0.9)",width:1.1},{k:-.75,color:"rgba(14, 165, 233, 0.9)",width:1},{k:-.5,color:"rgba(34, 197, 94, 0.9)",width:1},{k:-.25,color:"rgba(132, 204, 22, 0.9)",width:1},{k:0,color:"rgba(161, 98, 7, 0.75)",width:1.1},{k:.25,color:"rgba(132, 204, 22, 0.9)",width:1},{k:.5,color:"rgba(34, 197, 94, 0.9)",width:1},{k:.75,color:"rgba(14, 165, 233, 0.9)",width:1},{k:1,color:"rgba(59, 130, 246, 0.9)",width:1.1},{k:1.5,color:"rgba(168, 85, 247, 0.9)",width:1},{k:2,color:"rgba(239, 68, 68, 0.9)",width:1}];const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart,a=i._series;if(!o||!a)return;const l=s.horizontalPixelRatio,c=s.verticalPixelRatio,d=s.context,p=o.timeScale().timeToCoordinate(i.p1.rawTime),y=a.priceToCoordinate(i.p1.price),w=o.timeScale().timeToCoordinate(i.p2.rawTime),C=a.priceToCoordinate(i.p2.price),v=o.timeScale().timeToCoordinate(i.p3.rawTime),S=a.priceToCoordinate(i.p3.price);if(p==null||y==null||w==null||C==null||v==null||S==null)return;const F=p*l,k=y*c,x=w*l,V=C*c,N=v*l,Z=S*c,X=(x+N)/2,W=(V+Z)/2;let ae=X-F,G=W-k;Math.abs(ae)<1e-4&&(ae=1e-4);const ee=G/ae,oe=s.bitmapSize.width,me=(x-N)/2,Le=(V-Z)/2,Ue=Me=>({x:X+me*Me,y:W+Le*Me}),Fe=(Me,_e)=>({x:oe,y:_e+ee*(oe-Me)}),ke=Ue(1),ye=Ue(-1),ve=Fe(ke.x,ke.y),Ce=Fe(ye.x,ye.y);d.save(),d.beginPath(),d.moveTo(ke.x,ke.y),d.lineTo(ve.x,ve.y),d.lineTo(Ce.x,Ce.y),d.lineTo(ye.x,ye.y),d.closePath(),d.fillStyle="rgba(148, 163, 184, 0.2)",d.fill(),d.beginPath(),d.strokeStyle="rgba(148, 163, 184, 0.9)",d.lineWidth=1*c,d.moveTo(x,V),d.lineTo(N,Z),d.stroke(),i._levels.forEach(Me=>{const _e=Ue(Me.k),Be=Fe(_e.x,_e.y);d.beginPath(),d.strokeStyle=Me.color,d.lineWidth=Me.width*c,d.moveTo(_e.x,_e.y),d.lineTo(Be.x,Be.y),d.stroke()});const ge=Fe(F,k);d.beginPath(),d.strokeStyle="rgba(161, 98, 7, 0.9)",d.lineWidth=1.1*c,d.moveTo(F,k),d.lineTo(ge.x,ge.y),d.stroke(),d.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Uv{constructor(e,A){this.p1=e,this.p2=A,this.visible=!0,this._chart=null,this._series=null,this._rays=[{ratio:.125,color:"rgba(161, 98, 7, 0.9)",label:"0.13"},{ratio:.25,color:"rgba(132, 204, 22, 0.9)",label:"0.25"},{ratio:.333333,color:"rgba(34, 197, 94, 0.9)",label:"0.30"},{ratio:.5,color:"rgba(5, 150, 105, 0.9)",label:"0.50"},{ratio:1,color:"rgba(107, 114, 128, 0.9)",label:"1.00"},{ratio:2,color:"rgba(37, 99, 235, 0.9)",label:"2.00"},{ratio:3,color:"rgba(67, 56, 202, 0.9)",label:"3.00"},{ratio:4,color:"rgba(124, 58, 237, 0.9)",label:"4.00"},{ratio:8,color:"rgba(220, 38, 38, 0.9)",label:"8.00"}];const t=this;this._paneView={renderer(){return{draw(i){i.useBitmapCoordinateSpace(n=>{if(!t.visible)return;const s=t._chart,o=t._series;if(!s||!o)return;const a=n.horizontalPixelRatio,l=n.verticalPixelRatio,c=n.context,d=s.timeScale().timeToCoordinate(t.p1.rawTime),p=o.priceToCoordinate(t.p1.price),y=s.timeScale().timeToCoordinate(t.p2.rawTime),w=o.priceToCoordinate(t.p2.price);if(d==null||p==null||y==null||w==null)return;const C=d*a,v=p*l,S=y*a,F=w*l,k=n.bitmapSize.width,x=Math.abs(S-C)<1e-4?1:S-C,V=(F-v)/x,N=S>=C?1:-1,Z=N>0?k:0,X=C+N*Math.min(220*a,Math.max(80*a,k*.35)),W=t._rays.map(G=>{const ee=V*G.ratio;return{...G,yEnd:v+ee*(Z-C),yLabel:v+ee*(X-C)}});c.save();const ae=(G,ee,oe)=>{!G||!ee||(c.beginPath(),c.moveTo(C,v),c.lineTo(Z,G.yEnd),c.lineTo(Z,ee.yEnd),c.closePath(),c.fillStyle=oe,c.fill())};ae(W[0],W[3],"rgba(161, 98, 7, 0.10)"),ae(W[3],W[4],"rgba(5, 150, 105, 0.10)"),ae(W[4],W[5],"rgba(107, 114, 128, 0.12)"),W.forEach(G=>{c.beginPath(),c.strokeStyle=G.color,c.lineWidth=1*l,c.moveTo(C,v),c.lineTo(Z,G.yEnd),c.stroke()}),c.font=`${Math.max(10,Math.round(10*l))}px sans-serif`,c.textAlign=N>0?"left":"right",c.textBaseline="middle",W.forEach(G=>{c.fillStyle=G.color;const ee=X+(N>0?4*a:-4*a),oe=G.yLabel;oe<-20||oe>n.bitmapSize.height+20||c.fillText(G.label,ee,oe)}),c.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Ev{constructor(e,A,t=8){this.p1=e,this.p2=A,this.divisions=Math.max(2,t),this.visible=!0,this._chart=null,this._series=null;const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart,a=i._series;if(!o||!a)return;const l=s.horizontalPixelRatio,c=s.verticalPixelRatio,d=s.context,p=o.timeScale().timeToCoordinate(i.p1.rawTime),y=a.priceToCoordinate(i.p1.price),w=o.timeScale().timeToCoordinate(i.p2.rawTime),C=a.priceToCoordinate(i.p2.price);if(p==null||y==null||w==null||C==null)return;const v=p*l,S=y*c,F=w*l,k=C*c,x=F-v,V=k-S,N=Math.hypot(x,V);if(N<1e-4)return;const Z=x/N,X=V/N,W=-X,ae=Z,G=F+W*N,ee=k+ae*N,oe=v+W*N,me=S+ae*N,Le=(Fe,ke)=>({x:v+Z*N*Fe+W*N*ke,y:S+X*N*Fe+ae*N*ke});d.save();const Ue=["rgba(161, 98, 7, 0.08)","rgba(132, 204, 22, 0.08)","rgba(5, 150, 105, 0.08)","rgba(37, 99, 235, 0.08)"];for(let Fe=0;Fe<i.divisions;Fe++){const ke=Fe/i.divisions,ye=(Fe+1)/i.divisions,ve=Le(0,ke),Ce=Le(1,ke),ge=Le(1,ye),Me=Le(0,ye);d.beginPath(),d.moveTo(ve.x,ve.y),d.lineTo(Ce.x,Ce.y),d.lineTo(ge.x,ge.y),d.lineTo(Me.x,Me.y),d.closePath(),d.fillStyle=Ue[Fe%Ue.length],d.fill()}d.lineWidth=1*c,d.strokeStyle="rgba(148, 163, 184, 0.55)";for(let Fe=0;Fe<=i.divisions;Fe++){const ke=Fe/i.divisions,ye=Le(0,ke),ve=Le(1,ke),Ce=Le(ke,0),ge=Le(ke,1);d.beginPath(),d.moveTo(ye.x,ye.y),d.lineTo(ve.x,ve.y),d.stroke(),d.beginPath(),d.moveTo(Ce.x,Ce.y),d.lineTo(ge.x,ge.y),d.stroke()}d.strokeStyle="rgba(100, 116, 139, 0.85)",d.lineWidth=1*c,d.beginPath(),d.moveTo(v,S),d.lineTo(G,ee),d.stroke(),d.beginPath(),d.moveTo(F,k),d.lineTo(oe,me),d.stroke(),d.strokeStyle="rgba(122, 166, 174, 0.95)",d.lineWidth=1.2*c,d.beginPath(),d.moveTo(v,S),d.lineTo(F,k),d.lineTo(G,ee),d.lineTo(oe,me),d.closePath(),d.stroke(),d.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class fa{constructor(e,A,t,i,n="#16a34a",s=2,o="rgba(22, 163, 74, 0.12)"){this.p1=e,this.p2=A,this.p3=t,this.p4=i,this.color=n,this.lineWidth=s,this.fillColor=o,this.visible=!0,this._chart=null,this._series=null;const a=this;this._paneView={renderer(){return{draw(l){l.useBitmapCoordinateSpace(c=>{if(!a.visible)return;const d=a._chart,p=a._series;if(!d||!p)return;const y=c.horizontalPixelRatio,w=c.verticalPixelRatio,C=[a.p1,a.p3,a.p4,a.p2].map(Z=>{const X=d.timeScale().timeToCoordinate(Z.rawTime),W=p.priceToCoordinate(Z.price);return X==null||W==null?null:{x:X*y,y:W*w}}).filter(Boolean);if(C.length!==4)return;const[v,S,F,k]=C,x=c.context;x.save(),x.beginPath(),x.moveTo(v.x,v.y),x.lineTo(S.x,S.y),x.lineTo(F.x,F.y),x.lineTo(k.x,k.y),x.closePath(),x.fillStyle=a.fillColor,x.fill(),x.strokeStyle=a.color,x.lineWidth=a.lineWidth*w,x.setLineDash([]),x.beginPath(),x.moveTo(v.x,v.y),x.lineTo(S.x,S.y),x.moveTo(k.x,k.y),x.lineTo(F.x,F.y),x.moveTo(v.x,v.y),x.lineTo(k.x,k.y),x.moveTo(S.x,S.y),x.lineTo(F.x,F.y),x.stroke(),x.fillStyle="#ffffff",x.strokeStyle="#3b82f6",x.lineWidth=2*w,[v,S,F,k].forEach(Z=>{x.beginPath(),x.arc(Z.x,Z.y,6*w,0,Math.PI*2),x.fill(),x.stroke()});const V=[a.p1,a.p3,a.p2,a.p4],N=[v,S,k,F];x.fillStyle=a.color,x.font=`${Math.round(10*w)}px sans-serif`,x.textAlign="left",x.textBaseline="middle",N.forEach((Z,X)=>{const W=V[X]?.price;typeof W=="number"&&x.fillText(W.toFixed(5),Z.x+8*y,Z.y)}),x.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class ld extends fa{constructor(e,A,t,i,n="#3b82f6",s=2){super(e,A,t,i,n,s,"rgba(59, 130, 246, 0.12)")}}class cd{constructor(e,A,t,i,n,s={}){this.p1=e,this.p2=A,this.b1=t,this.b2=i,this.p3=n,this.visible=!0,this.strokeColor=s.strokeColor??"#8b5cf6",this.fillColor=s.fillColor??"rgba(148, 163, 184, 0.14)",this.lineWidth=s.lineWidth??1.25,this._chart=null,this._series=null;const o=this;this._paneView={renderer(){return{draw(a){a.useBitmapCoordinateSpace(l=>{if(!o.visible)return;const c=o._chart,d=o._series;if(!c||!d)return;const p=l.horizontalPixelRatio,y=l.verticalPixelRatio,w=l.context,C=x=>{const V=c.timeScale().timeToCoordinate(x.rawTime),N=d.priceToCoordinate(x.price);return V==null||N==null?null:{x:V*p,y:N*y}},v=C(o.p1),S=C(o.p2),F=C(o.b2),k=C(o.b1);!v||!S||!F||!k||(w.save(),w.beginPath(),w.moveTo(v.x,v.y),w.lineTo(S.x,S.y),w.lineTo(F.x,F.y),w.lineTo(k.x,k.y),w.closePath(),w.fillStyle=o.fillColor,w.fill(),w.strokeStyle=o.strokeColor,w.lineWidth=o.lineWidth*y,w.setLineDash([]),w.beginPath(),w.moveTo(v.x,v.y),w.lineTo(S.x,S.y),w.stroke(),w.beginPath(),w.moveTo(k.x,k.y),w.lineTo(F.x,F.y),w.stroke(),w.restore())})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class pa{constructor(e,A,t,i,n,s,o={}){this.mid1=e,this.mid2=A,this.top1=t,this.top2=i,this.bot1=n,this.bot2=s,this.visible=!0,this.upperStrokeColor=o.upperStrokeColor??"rgba(99, 102, 241, 0.8)",this.centerStrokeColor=o.centerStrokeColor??"rgba(239, 68, 68, 0.65)",this.lowerStrokeColor=o.lowerStrokeColor??"rgba(99, 102, 241, 0.8)",this.upperFillColor=o.upperFillColor??"rgba(99, 102, 241, 0.18)",this.lowerFillColor=o.lowerFillColor??"rgba(239, 68, 68, 0.16)",this.lineWidth=o.lineWidth??1,this.labelColor=o.labelColor??"#1d4ed8",this.showDeviationLabel=o.showDeviationLabel??!0,this._chart=null,this._series=null;const a=this;this._paneView={renderer(){return{draw(l){l.useBitmapCoordinateSpace(c=>{if(!a.visible)return;const d=a._chart,p=a._series;if(!d||!p)return;const y=c.horizontalPixelRatio,w=c.verticalPixelRatio,C=c.context,v=X=>{const W=d.timeScale().timeToCoordinate(X.rawTime),ae=p.priceToCoordinate(X.price);return W==null||ae==null?null:{x:W*y,y:ae*w}},S=v(a.mid1),F=v(a.mid2),k=v(a.top1),x=v(a.top2),V=v(a.bot1),N=v(a.bot2);if(!S||!F||!k||!x||!V||!N)return;C.save(),C.beginPath(),C.moveTo(S.x,S.y),C.lineTo(F.x,F.y),C.lineTo(x.x,x.y),C.lineTo(k.x,k.y),C.closePath(),C.fillStyle=a.upperFillColor,C.fill(),C.beginPath(),C.moveTo(V.x,V.y),C.lineTo(N.x,N.y),C.lineTo(F.x,F.y),C.lineTo(S.x,S.y),C.closePath(),C.fillStyle=a.lowerFillColor,C.fill();const Z=(X,W,ae)=>{C.beginPath(),C.strokeStyle=ae,C.lineWidth=a.lineWidth*w,C.setLineDash([]),C.moveTo(X.x,X.y),C.lineTo(W.x,W.y),C.stroke()};if(Z(k,x,a.upperStrokeColor),Z(S,F,a.centerStrokeColor),Z(V,N,a.lowerStrokeColor),a.showDeviationLabel){const X=Math.abs(a.top1.price-a.mid1.price),W=Number.isFinite(X)?X.toFixed(5):null;if(W){const ae=Math.max(10,Math.round(10*w));C.fillStyle=a.labelColor,C.font=`${ae}px sans-serif`,C.textAlign="left",C.textBaseline="top",C.fillText(W,V.x+2*y,V.y+10*w)}}C.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class hd extends pa{}class ud{constructor(e,A){this.p1=e,this.p2=A,this.visible=!0,this._chart=null,this._series=null,this._levels=[{ratio:0,label:"0.000"},{ratio:.236,label:"0.236"},{ratio:.382,label:"0.382"},{ratio:.5,label:"0.500"},{ratio:.618,label:"0.618"},{ratio:.786,label:"0.786"},{ratio:1,label:"1.000"},{ratio:1.618,label:"1.618"},{ratio:2.618,label:"2.618"},{ratio:3.618,label:"3.618"},{ratio:4.236,label:"4.236"}],this._levelColors={0:"#ff0000",.236:"#ff0000",.382:"#00c853",.5:"#00c853",.618:"#00bcd4",.786:"#00bcd4",1:"#2962ff",1.618:"#2962ff",2.618:"#ff0000",3.618:"#ff0000",4.236:"#e040fb"},this._zoneFills=[{from:0,to:.236,color:"rgba(255, 0, 0, 0.06)"},{from:.236,to:.382,color:"rgba(0, 200, 83, 0.06)"},{from:.382,to:.5,color:"rgba(0, 200, 83, 0.06)"},{from:.5,to:.618,color:"rgba(0, 200, 83, 0.06)"},{from:.618,to:.786,color:"rgba(0, 188, 212, 0.06)"},{from:.786,to:1,color:"rgba(41, 98, 255, 0.08)"},{from:1,to:1.618,color:"rgba(255, 138, 128, 0.10)"},{from:1.618,to:2.618,color:"rgba(255, 138, 128, 0.10)"},{from:2.618,to:3.618,color:"rgba(224, 64, 251, 0.08)"},{from:3.618,to:4.236,color:"rgba(224, 64, 251, 0.08)"}];const t=this;this._paneView={renderer(){return{draw(i){i.useBitmapCoordinateSpace(n=>{if(!t.visible)return;const s=t._chart,o=t._series;if(!s||!o)return;const a=n.horizontalPixelRatio,l=n.verticalPixelRatio,c=n.context,d=n.bitmapSize.width;n.bitmapSize.height;const p=t.p1.price,y=t.p2.price,w=p-y,C=X=>y+w*X,v=s.timeScale().timeToCoordinate(t.p1.rawTime),S=s.timeScale().timeToCoordinate(t.p2.rawTime),F=o.priceToCoordinate(p),k=o.priceToCoordinate(y),x=v!=null&&S!=null?Math.round(Math.min(v,S)*a):0,V=v!=null&&S!=null?Math.round(Math.max(v,S)*a):d,N=V-x;c.save(),t._zoneFills.forEach(({from:X,to:W,color:ae})=>{const G=C(X),ee=C(W),oe=o.priceToCoordinate(G),me=o.priceToCoordinate(ee);if(oe==null||me==null)return;const Le=Math.round(oe*l),Ue=Math.round(me*l);c.fillStyle=ae,c.fillRect(x,Math.min(Le,Ue),N,Math.abs(Ue-Le))}),t._levels.forEach(({ratio:X,label:W})=>{const ae=C(X),G=o.priceToCoordinate(ae);if(G==null)return;const ee=Math.round(G*l),oe=t._levelColors[X]||"#888888";c.beginPath(),c.strokeStyle=oe,c.lineWidth=X===0||X===1?1.5*l:1*l,X!==0&&X!==1&&X<1?c.setLineDash([4*a,4*a]):c.setLineDash([]),c.moveTo(x,ee),c.lineTo(V,ee),c.stroke(),c.setLineDash([])});const Z=Math.round(11*l);if(c.font=`${Z}px sans-serif`,c.textAlign="left",t._levels.forEach(({ratio:X,label:W})=>{const ae=C(X),G=o.priceToCoordinate(ae);if(G==null)return;const ee=Math.round(G*l),oe=t._levelColors[X]||"#888888",me=`${W} (${ae.toFixed(5)})`;c.fillStyle=oe,c.textAlign="right",c.fillText(me,x-4*a,ee-4*l)}),v!=null&&S!=null&&F!=null&&k!=null){const X=Math.round(v*a),W=Math.round(F*l),ae=Math.round(S*a),G=Math.round(k*l);c.beginPath(),c.strokeStyle="rgba(128, 128, 128, 0.6)",c.lineWidth=1*l,c.setLineDash([]),c.moveTo(X,W),c.lineTo(ae,G),c.stroke(),c.beginPath(),c.fillStyle="#2962ff",c.arc(X,W,4*l,0,Math.PI*2),c.fill(),c.strokeStyle="#ffffff",c.lineWidth=1*l,c.stroke(),c.beginPath(),c.fillStyle="#2962ff",c.arc(ae,G,4*l,0,Math.PI*2),c.fill(),c.strokeStyle="#ffffff",c.lineWidth=1*l,c.stroke()}c.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Sv{constructor(e,A="#3b82f6",t=2){this.time=e,this.color=A,this.lineWidth=t,this.visible=!0,this._chart=null,this._series=null;const i=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!i.visible)return;const o=i._chart;if(!o)return;const a=o.timeScale().timeToCoordinate(i.time);if(a==null)return;const l=Math.round(a*s.horizontalPixelRatio),c=s.bitmapSize.height,d=s.context;d.save(),d.beginPath(),d.strokeStyle=i.color,d.lineWidth=i.lineWidth*s.horizontalPixelRatio,d.setLineDash([]),d.moveTo(l,0),d.lineTo(l,c),d.stroke(),d.restore()})}}}}}attached({chart:e,series:A}){this._chart=e,this._series=A}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}const Hv={M1:3,M5:7,M15:14,M30:30,H1:90,H4:180,D1:1095,W1:1825,MN:3650};function dd(r){if(!r)return 7;const e=String(r).toUpperCase();return Hv[e]??7}function Lv(r,e){const A=String(r||"").toUpperCase(),t=e||dd(r),i={M1:1440,M5:288,M15:96,M30:48,H1:24,H4:6,D1:1,W1:1/7,MN:1/30}[A]||96,n=Math.ceil(t*(typeof i=="number"?i:96));return Math.min(Math.max(n,500),5e3)}const Ar=r=>{if(!Array.isArray(r)||r.length===0)return[];const e=r.map(t=>({...t,time:Y(t.time)})).filter(t=>t.time!=null);e.sort((t,i)=>t.time-i.time);const A=new Map;for(const t of e)A.set(t.time,t);return Array.from(A.values()).sort((t,i)=>t.time-i.time)};function qe(r,e,A,t,i,n){const s=i-A,o=n-t,a=Math.sqrt(s*s+o*o);if(a===0)return Math.hypot(r-A,e-t);let l=((r-A)*s+(e-t)*o)/(a*a);l=Math.max(0,Math.min(1,l));const c=A+l*s,d=t+l*o;return Math.hypot(r-c,e-d)}function Mv(r,e,A,t,i,n){const s=i-A,o=n-t,a=s*s+o*o;if(a===0)return Math.hypot(r-A,e-t);let l=((r-A)*s+(e-t)*o)/a;l<0&&(l=0);const c=A+l*s,d=t+l*o;return Math.hypot(r-c,e-d)}function Iv(r,e,A,t,i,n){const s=i-A,o=n-t,a=s*s+o*o;if(a===0)return Math.hypot(r-A,e-t);const l=((r-A)*s+(e-t)*o)/a,c=A+l*s,d=t+l*o;return Math.hypot(r-c,e-d)}function Nt(r,e,A){let t=!1;for(let i=0,n=A.length-1;i<A.length;n=i++){const s=A[i].x,o=A[i].y,a=A[n].x,l=A[n].y;o>e!=l>e&&r<(a-s)*(e-o)/(l-o+1e-7)+s&&(t=!t)}return t}function fd(r,e,A){if(!r||!e||!A)return null;const t=r.normalizedTime??Y(r.rawTime),i=e.normalizedTime??Y(e.rawTime),n=A.normalizedTime??Y(A.rawTime);if(t==null||i==null||n==null)return null;const s=i-t;if(Math.abs(s)<1e-9)return null;const o=(e.price-r.price)/s,a=A.price+o*(t-n),l=A.price+o*(i-n),c=Y((t+i)/2),d=(a+l)/2;return c==null?null:{b1:{rawTime:r.rawTime,normalizedTime:t,price:a},b2:{rawTime:e.rawTime,normalizedTime:i,price:l},p3:{rawTime:A.rawTime,normalizedTime:n,price:A.price},bottomMid:{rawTime:c,normalizedTime:c,price:d}}}function es(r,e,A,t=1){if(!Array.isArray(r)||r.length<2||!e||!A)return null;const i=e.normalizedTime??Y(e.rawTime),n=A.normalizedTime??Y(A.rawTime);if(i==null||n==null)return null;const s=Math.min(i,n),o=Math.max(i,n),a=r.map(X=>({time:Y(X.time),close:typeof X.close=="number"?X.close:parseFloat(X.close)})).filter(X=>X.time!=null&&Number.isFinite(X.close)&&X.time>=s&&X.time<=o).sort((X,W)=>X.time-W.time);if(a.length<2)return null;const l=a.length;let c=0,d=0,p=0,y=0;for(let X=0;X<l;X++){const W=X,ae=a[X].close;c+=W,d+=ae,p+=W*ae,y+=W*W}const w=l*y-c*c,C=Math.abs(w)<1e-12?0:(l*p-c*d)/w,v=(d-C*c)/l;let S=0;for(let X=0;X<l;X++){const W=v+C*X,ae=a[X].close-W;S+=ae*ae}const F=Math.sqrt(S/l),k=Math.max(F*t,1e-8),x=a[0].time,V=a[l-1].time,N=v,Z=v+C*(l-1);return{slope:C,intercept:v,stdDev:F,offset:k,barCount:l,p1:{rawTime:x,normalizedTime:x,price:N},p2:{rawTime:V,normalizedTime:V,price:Z},top1:{rawTime:x,normalizedTime:x,price:N+k},top2:{rawTime:V,normalizedTime:V,price:Z+k},bot1:{rawTime:x,normalizedTime:x,price:N-k},bot2:{rawTime:V,normalizedTime:V,price:Z-k}}}function ga(r,e,A,t=1){return es(r,e,A,t)}const _v={trendline:{requiredKeys:["point1","point2"],handleCount:2},gannline:{requiredKeys:["point1","point2"],handleCount:3},rectangle:{requiredKeys:["p1","p2"],handleCount:8},circle:{requiredKeys:["p1","p2"],handleCount:2},triangle:{requiredKeys:["p1","p2","p3"],handleCount:3},ellipse:{requiredKeys:["p1","p2"],handleCount:4},infoline:{requiredKeys:["p1","p2"],handleCount:2},arrowedline:{requiredKeys:["p1","p2"],handleCount:2},rayline:{requiredKeys:["p1","p2"],handleCount:2},extendedline:{requiredKeys:["p1","p2"],handleCount:2},crossline:{requiredKeys:["p"],handleCount:1},trendbyangle:{requiredKeys:["p1","p2"],handleCount:2},equidistantchannel:{requiredKeys:["p1","p2","p3"],handleCount:3},regressionchannel:{requiredKeys:["p1","p2"],handleCount:2},stddevchannel:{requiredKeys:["p1","p2"],handleCount:2},gannfan:{requiredKeys:["p1","p2"],handleCount:2},ganngrid:{requiredKeys:["p1","p2"],handleCount:2},andrewspitchfork:{requiredKeys:["p1","p2","p3"],handleCount:3},disjointchannel:{requiredKeys:["p1","p2","p3","p4"],handleCount:4},flattopbottom:{requiredKeys:["p1","p2","p3","p4"],handleCount:4},rulerline:{requiredKeys:["p1","p2"],handleCount:3}},Dv={gannline:"#7aa6ae",rectangle:"#3b82f6",circle:"#3b82f6",triangle:"#3b82f6",ellipse:"#3b82f6",infoline:"#3b82f6",rulerline:"#3b82f6",arrowedline:"#f59e0b",rayline:"#7aa6ae",extendedline:"#7aa6ae",crossline:"#7aa6ae",trendbyangle:"#7aa6ae",equidistantchannel:"#8b5cf6",regressionchannel:"#6366f1",stddevchannel:"#6366f1",gannfan:"#7aa6ae",ganngrid:"#7aa6ae",andrewspitchfork:"#7c3aed",disjointchannel:"#16a34a",flattopbottom:"#3b82f6"};function kv(r,e){if(!r||!r.type)return!1;const A=_v[r.type];return!A||e.length!==A.handleCount?!1:A.requiredKeys.every(t=>!!r[t])}function Ov(r){return r?Dv[r]??"#22c55e":"#22c55e"}const Nv=300,pd=24,Kv=150,gd=150;function ma(r,e,A=Nv){if(!Array.isArray(r)||r.length===0)return[];const t=it(e),i=Number.isFinite(t)&&t>0?t:60;let n=null;for(const o of r){const a=Y(o?.time);a!=null&&(n==null||a>n)&&(n=a)}if(n==null)return[];const s=[];for(let o=1;o<=A;o++)s.push({time:n+i*o});return s}function Pv(r){if(!Array.isArray(r)||r.length===0)return null;let e=null;for(const A of r){const t=Y(A?.time);t!=null&&(e==null||t>e)&&(e=t)}return e}function Vv(r,e,A){if(!r)return!1;const t=r.timeScale();if(!t)return!1;const i=Pv(e);if(i==null)return!1;const n=t.timeToCoordinate(i);if(Number.isFinite(n)){const l=t.coordinateToLogical(n);if(Number.isFinite(l)){const c=t.getVisibleLogicalRange(),d=Number.isFinite(c?.from)&&Number.isFinite(c?.to)?c.to-c.from:null,p=Number.isFinite(d)&&d>20?d:120,y=Math.min(gd,p/2),w=Math.max(20,p-y),C={from:l-w,to:l+y};try{return t.setVisibleLogicalRange(C),!0}catch{}}}const s=it(A),o=Number.isFinite(s)&&s>0?s:60,a={from:i-Kv*o,to:i+gd*o};try{return t.setVisibleRange(a),!0}catch{return!1}}const zv=J.forwardRef(function({bidPrice:e="113.638",askPrice:A="113.649",showBuySellPanel:t=!0,onBuyClick:i,onSellClick:n},s){const o=J.useRef(null),a=J.useRef(null),l=J.useRef(null),c=J.useRef(null),d=J.useRef(null),p=J.useRef([]),y=J.useRef(!1),w=J.useRef(null),C=J.useRef(null),v=J.useRef(null),S=J.useRef(null),F=J.useRef([]),[k,x]=J.useState(null),[V,N]=J.useState([]),[Z,X]=J.useState(null),[W,ae]=J.useState([]),G=J.useRef(null),ee=J.useRef(null),oe=J.useRef(null),me=J.useRef(!1);J.useEffect(()=>{oe.current=k},[k]);const Le=J.useRef(new Map),Ue=J.useRef(null),Fe=(b,m)=>`${b}_${m}`,ke=()=>{const b=Fe(Ee,Te);return Le.current.get(b)||null},ye=b=>{if(!b)return;const m=Fe(Ee,Te);Le.current.set(m,b)},{activeTool:ve,setActiveTool:Ce,showGrid:ge,snapToGrid:Me,chartObjects:_e,setChartObjects:Be,orders:iA,selectedSymbol:Ee,selectedTimeframe:Te,drawingsVisible:de,chartType:Qe,chartLocked:cA,theme:Re,baseUrl:Ke,endpoints:Xe,endpointParams:We}=FA(),je=J.useRef([]),[we,le]=J.useState(!1),[Ie,fe]=J.useState(null),[ne,Oe]=J.useState([]),[De,Ye]=J.useState(!0),CA=J.useRef(null),xt=J.useRef(new Map);J.useRef(null);const wi=J.useRef(0);J.useEffect(()=>{const b=c.current;b&&b.setData(ma(ne,Te))},[ne,Te]),J.useImperativeHandle(s,()=>({zoomIn:()=>{const b=a.current?.timeScale();if(!b)return;const m=b.getVisibleRange();if(!m||!m.from||!m.to)return;const R=m.to-m.from,Se=(m.from+m.to)/2,Q=R*.8;try{b.setVisibleRange({from:Se-Q/2,to:Se+Q/2}),ye(b.getVisibleRange())}catch{}},zoomOut:()=>{const b=a.current?.timeScale();if(!b)return;const m=b.getVisibleRange();if(!m||!m.from||!m.to)return;const R=m.to-m.from,Se=(m.from+m.to)/2,Q=R*1.25;try{b.setVisibleRange({from:Se-Q/2,to:Se+Q/2}),ye(b.getVisibleRange())}catch{}},downloadChartAsPNG:()=>{const b=o.current;if(!b){typeof window.notify=="function"&&window.notify("Chart not ready","error");return}const m=b.querySelectorAll("canvas"),R=Re==="light"?"#ffffff":"#12161d";let Se=null,Q=0;if(m.forEach(q=>{if(q.width>0&&q.height>0){const se=q.width*q.height;se>Q&&(Q=se,Se=q)}}),Se)try{const q=document.createElement("canvas");q.width=Se.width,q.height=Se.height;const se=q.getContext("2d");se.fillStyle=R,se.fillRect(0,0,q.width,q.height),se.drawImage(Se,0,0);const ie=document.createElement("a");ie.download=`chart-${Ee}-${Te}-${Date.now()}.png`,ie.href=q.toDataURL("image/png"),ie.click(),typeof window.notify=="function"&&window.notify("Chart saved as PNG","success");return}catch(q){console.warn("Canvas export failed, trying html2canvas",q)}dv(b,{useCORS:!0,allowTaint:!0,backgroundColor:R,scale:2,logging:!1}).then(q=>{const se=document.createElement("a");se.download=`chart-${Ee}-${Te}-${Date.now()}.png`,se.href=q.toDataURL("image/png"),se.click(),typeof window.notify=="function"&&window.notify("Chart saved as PNG","success")}).catch(q=>{console.error("Chart screenshot failed",q),typeof window.notify=="function"&&window.notify("Screenshot failed. Try again.","error")})}}),[Ee,Te,Re]);const Bt=J.useMemo(()=>ne.length===0?[]:Qe==="line"||Qe==="area"?ne.map(b=>({time:b.time,value:b.close})):ne,[ne,Qe]),ts=b=>{i?i(b):(fe("BUY"),le(!0))},Ca=b=>{n?n(b):(fe("SELL"),le(!0))},va=()=>{le(!1),fe(null)};J.useEffect(()=>{const b=o.current;if(!b)return;const m=b.getBoundingClientRect(),R=P=>{const re=Math.abs(Number(P));return Number.isFinite(re)?re>=1e3?re.toFixed(2):re>=1?re.toFixed(4):re.toFixed(5):"0"},Se=Re==="light",Q=i0(b,{width:m.width||b.clientWidth,height:m.height||b.clientHeight,autoSize:!0,localization:{priceFormatter:R},layout:{background:{color:Se?"#FFFFFF":"#0d1117",type:"solid"},textColor:Se?"#020617":"#e6edf3",fontSize:12,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'},grid:{vertLines:{visible:ge,color:ge?Se?"rgba(100, 116, 139, 0.15)":"rgba(110, 118, 129, 0.15)":"transparent",style:ge?2:0},horzLines:{visible:ge,color:ge?Se?"rgba(100, 116, 139, 0.15)":"rgba(110, 118, 129, 0.15)":"transparent",style:ge?2:0}},rightPriceScale:{borderColor:Se?"#e5e7eb":"#21262d",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0,entireTextOnly:!1,textColor:Se?"#64748b":"#8b949e"},leftPriceScale:{visible:!1},timeScale:{borderColor:Se?"#e5e7eb":"#21262d",timeVisible:!0,secondsVisible:!1,rightOffset:12,barSpacing:6,minBarSpacing:4,shiftVisibleRangeOnNewBar:!1,fixLeftEdge:!1,fixRightEdge:!1,rightBarStaysOnScroll:!0,allowShiftVisibleRangeOnWhitespaceClick:!0},crosshair:{mode:ve===1?1:0,vertLine:{width:1,color:Se?"#3b82f6":"#58a6ff",style:0,labelBackgroundColor:Se?"#eff6ff":"#161b22",labelVisible:!0},horzLine:{width:1,color:Se?"#3b82f6":"#58a6ff",style:0,labelBackgroundColor:Se?"#eff6ff":"#161b22",labelVisible:!0},vertLineVisible:ve===1,horzLineVisible:ve===1},handleScroll:{mouseWheel:!0,pressedMouseMove:ve===null||ve===1,horzTouchDrag:!0,vertTouchDrag:!0},handleScale:{axisPressedMouseMove:{time:!0,price:!0},axisDoubleClickReset:{time:!1,price:!0},axisTouch:{time:!0,price:!0},mouseWheel:!0,pinch:!0}}),q=Q.addCandlestickSeries({upColor:Se?"#089981":"#26a69a",downColor:Se?"#f23645":"#ef5350",wickUpColor:Se?"#089981":"#26a69a",wickDownColor:Se?"#f23645":"#ef5350",borderUpColor:Se?"#089981":"#26a69a",borderDownColor:Se?"#f23645":"#ef5350",borderVisible:!0}),se=Q.addLineSeries({lineVisible:!1,pointMarkersVisible:!1,crosshairMarkerVisible:!1,priceLineVisible:!1,lastValueVisible:!1,color:"rgba(0,0,0,0)"});a.current=Q,l.current=q,c.current=se,se.setData(ma(ne,Te)),requestAnimationFrame(()=>{if(b&&Q){const P=b.getBoundingClientRect();P.width>0&&P.height>0&&Q.resize(P.width,P.height)}});const ie=Q.timeScale(),ce=()=>{if(me.current&&xt.current.size>0){const P=ie.getVisibleRange();P&&ye(P)}};ie.subscribeVisibleTimeRangeChange(ce);const M=new ResizeObserver(P=>{for(const re of P){const{width:Ae,height:B}=re.contentRect;if(Ae>0&&B>0&&Q){const T=ie.getVisibleRange();Q.resize(Ae,B),T&&setTimeout(()=>{try{ie.setVisibleRange(T)}catch{}},0)}}});return M.observe(b),()=>{ie.unsubscribeVisibleTimeRangeChange(ce),M.disconnect(),Q.remove(),a.current=null,l.current=null,c.current=null,d.current=null,p.current=[]}},[]),J.useEffect(()=>{a.current&&a.current.applyOptions({grid:{vertLines:{visible:ge,color:ge?"rgba(110, 118, 129, 0.15)":"transparent",style:ge?2:0},horzLines:{visible:ge,color:ge?"rgba(110, 118, 129, 0.15)":"transparent",style:ge?2:0}}})},[ge]),J.useEffect(()=>{const b=a.current;if(!b)return;const m=Re==="light";b.applyOptions({layout:{background:{color:m?"#FFFFFF":"#12161d"},textColor:m?"#020617":"#fff"},grid:{vertLines:{color:ge?m?"rgba(100, 116, 139, 0.25)":"rgba(148, 163, 184, 0.2)":"transparent"},horzLines:{color:ge?m?"rgba(100, 116, 139, 0.25)":"rgba(148, 163, 184, 0.2)":"transparent"}},rightPriceScale:{borderColor:m?"#e5e7eb":"#1e293b"},timeScale:{borderColor:m?"#e5e7eb":"#1e293b"},crosshair:{vertLine:{color:m?"#3b82f6":"#58a6ff",labelBackgroundColor:m?"#eff6ff":"#161b22",width:1},horzLine:{color:m?"#3b82f6":"#58a6ff",labelBackgroundColor:m?"#eff6ff":"#161b22",width:1}}})},[Re,ge]),J.useEffect(()=>{if(!a.current)return;const m=!cA&&!(ve!==null&&ve!==1&&ve!==0),R=!cA;a.current.applyOptions({crosshair:{mode:ve===1?1:0,vertLine:{visible:ve===1,width:1,color:Re==="light"?"#94a3b8":"#64748b",style:0,labelBackgroundColor:Re==="light"?"#e5e7eb":"#1e293b"},horzLine:{visible:ve===1,width:1,color:Re==="light"?"#94a3b8":"#64748b",style:0,labelBackgroundColor:Re==="light"?"#e5e7eb":"#1e293b"}},handleScroll:{mouseWheel:R,pressedMouseMove:m,horzTouchDrag:m,vertTouchDrag:m},handleScale:{axisPressedMouseMove:{time:m,price:m},axisDoubleClickReset:{time:!1,price:R},axisTouch:{time:m,price:m},mouseWheel:R,pinch:R}})},[ve,cA]),J.useEffect(()=>{(async()=>{if(!Ee||!Te){Oe([]),me.current=!1;return}try{if(Ye(!0),Oe([]),me.current=!1,l.current)try{l.current.setData([])}catch{}const m=dd(Te),R=Lv(Te,m),Se=Ke||gv?.VITE_BASE_URL||"ws://localhost:8000",Q=Xe?.candles||"/api/chart/candles",q=We?.candles||{},se={symbol:q.symbol||"symbol",timeframe:q.timeframe||"timeframe",limit:q.limit||"limit",daysBack:q.daysBack||"daysBack"},ie={};ie[se.symbol]=Ee,ie[se.timeframe]=Te,ie[se.limit]=R,q.daysBack!==!1&&(ie[se.daysBack]=m);const ce=await oA.get(`${Se}${Q}`,{params:ie,timeout:1e4});let M=[];if(Array.isArray(ce.data)?M=ce.data:ce.data&&ce.data.data&&Array.isArray(ce.data.data)?M=ce.data.data:ce.data&&Array.isArray(ce.data)&&(M=ce.data),M&&M.length>0){const{candles:P,stats:re}=rh(M,Ee,Te);P.length>0?(Oe(P),xt.current=new Map,P.forEach(Ae=>{xt.current.set(Ae.time,Ae)})):(console.warn(`⚠️ No valid candles after processing for ${Ee}`),Oe([]))}else console.warn(`⚠️ No candle data returned for ${Ee}`),Oe([])}catch(m){console.error(`❌ Error fetching ${Ee}:`,m.message),Oe([])}finally{Ye(!1)}})()},[Ee,Te]),J.useEffect(()=>{CA.current=rn.getSocket();const b=CA.current,m=()=>{if(Ee&&Te&&b.connected){const ie={symbol:Ee,timeframe:Te};b.emit("subscribeCandles",ie)}},R=()=>{setTimeout(()=>{Ee&&Te&&m()},200)},Se=ie=>{},Q=ie=>{};b.on("connect",R),b.on("disconnect",Se),b.on("connect_error",Q),b.on("subscription:confirmed",ie=>{ie.type});const q=ie=>{if(!ie||!ie.candle||!ie.symbol||ie.symbol.toUpperCase()!==Ee?.toUpperCase())return;const{candle:ce}=ie,M=ih(ce,Ee,Te);if(!M)return;const P=Date.now();if(P-wi.current<200)return;wi.current=P;const re=a.current?.timeScale(),Ae=re?.getVisibleRange(),B=l.current,T=a.current;if(!(!B||!T||!me.current||B?.seriesType?.()!==(Qe==="line"?"Line":Qe==="area"?"Area":Qe==="bars"?"Bar":"Candlestick")))try{const u=xt.current.get(M.time),I=!u,E=u?{time:M.time,open:u.open,high:Math.max(u.high,M.close),low:Math.min(u.low,M.close),close:M.close}:M;xt.current.set(M.time,E),I&&c.current&&c.current.setData(ma(Array.from(xt.current.values()),Te));try{Qe==="line"||Qe==="area"?B.update({time:E.time,value:E.close}):B.update(E),re&&Ae&&ye(Ae)}catch(_){throw _}}catch{}};b.on("candleUpdate",q);const se=()=>{b.connected&&Ee&&Te&&m()};if(b.connected)se();else{const ie=()=>{setTimeout(se,200)};b.once("connect",ie),setTimeout(()=>{b.connected&&se()},500)}return()=>{b.off("candleUpdate",q),b.off("connect",R),b.off("disconnect",Se),b.off("connect_error",Q),b.off("subscription:confirmed"),Ee&&Te&&b.connected&&b.emit("unsubscribeCandles",{symbol:Ee,timeframe:Te})}},[Ee,Te,Ke]),J.useEffect(()=>{const b=l.current,m=a.current;if(!(!b||!m)&&!(ne.length===0&&me.current)){if(ne.length===0&&!me.current){if(De)return;const R=m.timeScale();b.setData([]),R.fitContent();return}if(!me.current){const R=m.timeScale(),Se=Fe(Ee,Te);Ue.current,Ue.current=Se;const Q=[...ne].sort((se,ie)=>se.time-ie.time);if(Qe==="line"||Qe==="area"){const se=Q?.map(ie=>({time:ie.time,value:ie.close})).filter(ie=>ie.time!=null);se.length>0&&b.setData(se)}else Q?.length>0&&b.setData(Q);if(Q?.length>0){const se=Q[Q?.length-1].time,ie=it(Te)||60,M=se-(Te==="M1"?150:Te==="M5"?120:100)*ie;try{R.setVisibleRange({from:M,to:se+ie*pd})}catch{R.fitContent()}}else R.fitContent();try{m.priceScale("right").applyOptions({borderColor:"#1e293b",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0})}catch{}me.current=!0;const q=R.getVisibleRange();ye(q)}}},[ne.length,Qe,Ee,Te]),J.useEffect(()=>{const b=a.current;if(!b||!me.current||ne.length===0)return;const m=b.timeScale(),R=m.getVisibleRange()||ke();if(l.current)try{b.removeSeries(l.current)}catch{}if(d.current)try{b.removeSeries(d.current),d.current=null}catch{}let Se;if(Qe==="bars"){const Q=Re==="light";Se=b.addBarSeries({upColor:Q?"#089981":"#26A69A",downColor:Q?"#f23645":"#EF5350",borderUpColor:Q?"#089981":"#26A69A",borderDownColor:Q?"#f23645":"#EF5350",scaleMargins:{top:.1,bottom:.1}});const q=[...ne].sort((se,ie)=>se.time-ie.time);q?.length>0&&Se.setData(q)}else if(Qe==="line"){Se=b.addLineSeries({color:"#38bdf8",lineWidth:2,priceLineVisible:!1,lastValueVisible:!0,scaleMargins:{top:.1,bottom:.1}});const Q=Ar(Bt);Q.length>0&&Se.setData(Q)}else if(Qe==="area"){Se=b.addAreaSeries({lineColor:"#38bdf8",topColor:"rgba(56,189,248,0.4)",bottomColor:"rgba(56,189,248,0.0)",lineWidth:2,priceLineVisible:!1,lastValueVisible:!0,scaleMargins:{top:.1,bottom:.1}});const Q=Ar(Bt);Q.length>0&&Se.setData(Q)}else if(Qe==="volume ticks"||Qe==="volume"){const Q=Re==="light";Se=b.addCandlestickSeries({upColor:Q?"#089981":"#26A69A",downColor:Q?"#f23645":"#EF5350",wickUpColor:Q?"#089981":"#26A69A",wickDownColor:Q?"#f23645":"#EF5350",borderUpColor:Q?"#089981":"#26A69A",borderDownColor:Q?"#f23645":"#EF5350",borderVisible:!0,priceScaleId:"right"});const q=[...ne].sort((ce,M)=>ce.time-M.time);q?.length>0&&Se.setData(q);const se=b.addHistogramSeries({priceFormat:{type:"volume"},priceScaleId:"vol",base:0,priceLineVisible:!1,lastValueVisible:!1,color:"rgba(38,166,154,0.15)"});b.priceScale("right").applyOptions({scaleMargins:{top:.05,bottom:.3}}),b.priceScale("vol").applyOptions({scaleMargins:{top:.75,bottom:0},visible:!1});const ie=q?.map(ce=>({time:ce.time,value:ce.volume||0,color:ce.close>=ce.open?"rgba(38,166,154,0.25)":"rgba(239,83,80,0.25)"}));ie.length>0&&se.setData(ie),d.current=se}else{const Q=Re==="light";Se=b.addCandlestickSeries({upColor:Q?"#089981":"#26A69A",downColor:Q?"#f23645":"#EF5350",wickUpColor:Q?"#089981":"#26A69A",wickDownColor:Q?"#f23645":"#EF5350",borderUpColor:Q?"#089981":"#26A69A",borderDownColor:Q?"#f23645":"#EF5350",borderVisible:!0,scaleMargins:{top:.1,bottom:.1}});const q=[...ne].sort((se,ie)=>se.time-ie.time);q?.length>0&&Se.setData(q)}if(l.current=Se,R&&me.current)setTimeout(()=>{try{m.setVisibleRange(R),ye(R)}catch{if(ne.length>0)try{const q=ne[ne.length-1].time,se=it(Te)||60,ie=q-100*se;m.setVisibleRange({from:ie,to:q+se*pd}),ye(m.getVisibleRange())}catch{m.fitContent(),ye(m.getVisibleRange())}}try{b.priceScale("right").applyOptions({borderColor:"#1e293b",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0})}catch{}},0);else if(!me.current){m.fitContent();try{b.priceScale("right").applyOptions({borderColor:"#1e293b",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0})}catch{}me.current=!0,ye(m.getVisibleRange())}},[Qe,ne.length,Bt.length]),J.useEffect(()=>{const b=a.current,m=d.current;if(!b||!m||!me.current||ne.length===0||Qe!=="volume"&&Qe!=="volume ticks")return;const Se=[...ne].sort((Q,q)=>Q.time-q.time)?.map(Q=>({time:Q.time,value:Q.volume||0,color:Q.close>=Q.open?"rgba(38,166,154,0.25)":"rgba(239,83,80,0.25)"}));Se.length>0&&m.setData(Se)},[ne,Qe]),J.useEffect(()=>{const b=a.current,m=l.current,R=o.current;if(!b||!m||!R)return;const Q=ve!==null?[null,null,"trendline","parallellines","fibonacci","rectangle",null,"text",null,null,null,null,null,null,null,null,null,null,null,null,"pricelevel","horizontalray","verticalline","infoline","rulerline","arrowedline","rayline","extendedline","crossline","trendbyangle","disjointchannel","flattopbottom",null,null,null,null,null,null,null,null,"regressionchannel","stddevchannel","andrewspitchfork","gannline","gannfan","ganngrid","circle","triangle","ellipse"][ve]:null,q=(M,P)=>{const re=Math.min(M.time,P.time),Ae=Math.max(M.time,P.time),B=M.time<=P.time?M.rawTime:P.rawTime,T=M.time<=P.time?P.rawTime:M.rawTime,U=Math.max(M.price,P.price),g=Math.min(M.price,P.price),u=Y(Math.round((re+Ae)/2));return u==null?null:{p1:{rawTime:u,normalizedTime:u,price:U},p2:{rawTime:B,normalizedTime:re,price:g},p3:{rawTime:T,normalizedTime:Ae,price:g}}};if(!Q){if(y.current=!1,w.current=null,C.current=null,S.current=null,v.current?.series)try{b.removeSeries(v.current.series)}catch{}if(v.current?.primitive)try{m.detachPrimitive(v.current.primitive)}catch{}v.current=null;return}if(Q==="pricelevel"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const u={type:"pricelevel",priceLine:m.createPriceLine({price:U,color:"#3b82f6",lineWidth:2,lineStyle:2,axisLabelVisible:!0,title:U.toFixed(5)}),price:U};Be(I=>[...I,u]),p.current.push(u)};return R.addEventListener("click",M),()=>{R.removeEventListener("click",M)}}if(Q==="horizontalray"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=new mv(U,T);m.attachPrimitive(g);const u=Y(T),I={type:"horizontalray",primitive:g,price:U,originTime:u};Be(E=>[...E,I]),p.current.push(I)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="verticalline"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=b.timeScale().coordinateToTime(Ae);if(B==null)return;const T=new Sv(B);m.attachPrimitive(T);const U=Y(B),g={type:"verticalline",primitive:T,time:U};Be(u=>[...u,g]),p.current.push(g)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="infoline"){let M=null,P=null;const re=B=>{if(!M)return;const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=b.timeScale().coordinateToTime(U),I=m.coordinateToPrice(g);if(u==null||I==null)return;P||(P=b.addLineSeries({color:"#3b82f6",lineWidth:2,crosshairMarkerVisible:!1,priceLineVisible:!1,lastValueVisible:!1}));const E=M.normalizedTime,_=Y(u);if(E==null||_==null||E===_)return;const H=E<=_?[{time:E,value:M.price},{time:_,value:I}]:[{time:_,value:I},{time:E,value:M.price}];try{P.setData(H)}catch{}},Ae=B=>{const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=b.timeScale().coordinateToTime(U),I=m.coordinateToPrice(g);if(u==null||I==null)return;if(!M){M={rawTime:u,price:I,normalizedTime:Y(u),x:U,y:g};return}if(P){try{b.removeSeries(P)}catch{}P=null}const E=M.normalizedTime,_=Y(u);if(E==null||_==null)return;const H=I-M.price,f=H/Math.abs(M.price)*100,L=it(Te)||3600,D=Math.abs(_-E),O=Math.max(1,Math.round(D/L)),K=Math.max(1,Math.round(D/86400)),z=M.x,$=M.y,te=U,pe=Math.atan2(-(g-$),te-z)*(180/Math.PI),He={priceDiff:H,pricePct:f,bars:O,days:K,angle:pe},Ne=new Bv({rawTime:M.rawTime,price:M.price},{rawTime:u,price:I},He);m.attachPrimitive(Ne);const Ge={type:"infoline",primitive:Ne,p1:{rawTime:M.rawTime,normalizedTime:E,price:M.price},p2:{rawTime:u,normalizedTime:_,price:I}};Be(Ve=>[...Ve,Ge]),p.current.push(Ge),M=null,Ce(null)};return R.addEventListener("mousemove",re),R.addEventListener("click",Ae),()=>{if(R.removeEventListener("mousemove",re),R.removeEventListener("click",Ae),P)try{b.removeSeries(P)}catch{}}}if(Q==="rulerline"){let M=null,P=null;const re=(T,U,g,u)=>{const I=Y(T),E=Y(g),_=u-U,H=_/Math.abs(U)*100,f=it(Te)||3600,L=Math.abs((E??0)-(I??0)),D=Math.max(1,Math.round(L/f)),O=Math.max(1,Math.round(L/86400));return{priceDiff:_,pricePct:H,bars:D,days:O}},Ae=T=>{if(!M)return;const U=R.getBoundingClientRect(),g=T.clientX-U.left,u=T.clientY-U.top,I=b.timeScale().coordinateToTime(g),E=m.coordinateToPrice(u);if(I==null||E==null)return;const _=Y(I);if(_==null||_===M.normalizedTime)return;const H=re(M.rawTime,M.price,I,E);if(!P)P=new od({rawTime:M.rawTime,price:M.price},{rawTime:I,price:E},H),m.attachPrimitive(P);else{P.p2={rawTime:I,price:E},P.info=H;const f=E>=M.price;P.color=f?"#3b82f6":"#ef5350",P.fillColor=f?"rgba(59,130,246,0.1)":"rgba(239,83,80,0.1)";try{a.current?.applyOptions({})}catch{}}},B=T=>{const U=R.getBoundingClientRect(),g=T.clientX-U.left,u=T.clientY-U.top,I=b.timeScale().coordinateToTime(g),E=m.coordinateToPrice(u);if(I==null||E==null)return;if(!M){M={rawTime:I,price:E,normalizedTime:Y(I)};return}if(P){try{m.detachPrimitive(P)}catch{}P=null}const _=M.normalizedTime,H=Y(I);if(_==null||H==null)return;const f=re(M.rawTime,M.price,I,E),L=new od({rawTime:M.rawTime,price:M.price},{rawTime:I,price:E},f);m.attachPrimitive(L);const D={type:"rulerline",primitive:L,p1:{rawTime:M.rawTime,normalizedTime:_,price:M.price},p2:{rawTime:I,normalizedTime:H,price:E}};Be(O=>[...O,D]),p.current.push(D),M=null,Ce(null)};return R.addEventListener("mousemove",Ae),R.addEventListener("click",B),()=>{if(R.removeEventListener("mousemove",Ae),R.removeEventListener("click",B),P)try{m.detachPrimitive(P)}catch{}}}if(Q==="arrowedline"){let M=null,P=null;const re=B=>{if(!M)return;const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=b.timeScale().coordinateToTime(U),I=m.coordinateToPrice(g);if(u==null||I==null)return;const E=Y(u);if(!(E==null||E===M.normalizedTime))if(!P)P=new ad({rawTime:M.rawTime,price:M.price},{rawTime:u,price:I}),m.attachPrimitive(P);else{P.p2={rawTime:u,price:I};try{a.current?.applyOptions({})}catch{}}},Ae=B=>{const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=b.timeScale().coordinateToTime(U),I=m.coordinateToPrice(g);if(u==null||I==null)return;if(!M){M={rawTime:u,price:I,normalizedTime:Y(u)};return}if(P){try{m.detachPrimitive(P)}catch{}P=null}const E=M.normalizedTime,_=Y(u);if(E==null||_==null||E===_)return;const H=new ad({rawTime:M.rawTime,price:M.price},{rawTime:u,price:I});m.attachPrimitive(H);const f={type:"arrowedline",primitive:H,p1:{rawTime:M.rawTime,normalizedTime:E,price:M.price},p2:{rawTime:u,normalizedTime:_,price:I}};Be(L=>[...L,f]),p.current.push(f),M=null,Ce(null)};return R.addEventListener("mousemove",re),R.addEventListener("click",Ae),()=>{if(R.removeEventListener("mousemove",re),R.removeEventListener("click",Ae),P)try{m.detachPrimitive(P)}catch{}}}if(Q==="rayline"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Ae+140,u=b.timeScale().coordinateToTime(g);if(u==null)return;const I=Y(T),E=Y(u);if(I==null||E==null)return;const _=new bv({rawTime:T,price:U},{rawTime:u,price:U});m.attachPrimitive(_);const H={type:"rayline",primitive:_,p1:{rawTime:T,normalizedTime:I,price:U},p2:{rawTime:u,normalizedTime:E,price:U}};Be(f=>[...f,H]),p.current.push(H),Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="extendedline"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Ae+140,u=b.timeScale().coordinateToTime(g);if(u==null)return;const I=Y(T),E=Y(u);if(I==null||E==null)return;const _=new Tv({rawTime:T,price:U},{rawTime:u,price:U});m.attachPrimitive(_);const H={type:"extendedline",primitive:_,p1:{rawTime:T,normalizedTime:I,price:U},p2:{rawTime:u,normalizedTime:E,price:U}};Be(f=>[...f,H]),p.current.push(H),Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="crossline"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Y(T);if(g==null)return;const u=new Qv({rawTime:T,price:U});m.attachPrimitive(u);const I={type:"crossline",primitive:u,p:{rawTime:T,normalizedTime:g,price:U}};Be(E=>[...E,I]),p.current.push(I),Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="trendbyangle"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Ae+140,u=b.timeScale().coordinateToTime(g);if(u==null)return;const I=Y(T),E=Y(u);if(I==null||E==null)return;const _=new xv({rawTime:T,price:U},{rawTime:u,price:U});m.attachPrimitive(_);const H={type:"trendbyangle",primitive:_,p1:{rawTime:T,normalizedTime:I,price:U},p2:{rawTime:u,normalizedTime:E,price:U}};Be(f=>[...f,H]),p.current.push(H),Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="disjointchannel"){let M=null,P=null,re=null,Ae=null,B=0,T=null;const U=(I,E,_,H)=>{if(!T)T=new fa(I,E,_,H),m.attachPrimitive(T);else{T.p1=I,T.p2=E,T.p3=_,T.p4=H;try{a.current?.applyOptions({})}catch{}}},g=I=>{if(B===0||!M)return;const E=R.getBoundingClientRect(),_=I.clientX-E.left,H=I.clientY-E.top;if(B===1){const f=m.coordinateToPrice(H);if(f==null)return;P={rawTime:M.rawTime,normalizedTime:M.normalizedTime,price:f},U({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price});return}if(B===2&&P){const f=b.timeScale().coordinateToTime(_),L=m.coordinateToPrice(H);if(f==null||L==null)return;const D=Y(f);if(D==null)return;const O=(M.price+P.price)/2;L>=O?(re={rawTime:f,normalizedTime:D,price:L},Ae={rawTime:f,normalizedTime:D,price:2*O-L}):(Ae={rawTime:f,normalizedTime:D,price:L},re={rawTime:f,normalizedTime:D,price:2*O-L}),U({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:re.rawTime,price:re.price},{rawTime:Ae.rawTime,price:Ae.price})}},u=I=>{const E=R.getBoundingClientRect(),_=I.clientX-E.left,H=I.clientY-E.top,f=b.timeScale().coordinateToTime(_),L=m.coordinateToPrice(H);if(f==null||L==null)return;const D=Y(f);if(D!=null){if(B===0){M={rawTime:f,normalizedTime:D,price:L},P={rawTime:f,normalizedTime:D,price:L},B=1,U({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price});return}if(B===1){const O=m.coordinateToPrice(H);if(O==null||Math.abs(O-M.price)<1e-7)return;P={rawTime:M.rawTime,normalizedTime:M.normalizedTime,price:O},B=2;return}if(B===2&&T){try{m.detachPrimitive(T)}catch{}const O=new fa(T.p1,T.p2,T.p3,T.p4);m.attachPrimitive(O);const K={type:"disjointchannel",primitive:O,p1:M,p2:P,p3:{rawTime:T.p3.rawTime,normalizedTime:Y(T.p3.rawTime),price:T.p3.price},p4:{rawTime:T.p4.rawTime,normalizedTime:Y(T.p4.rawTime),price:T.p4.price}};Be(z=>[...z,K]),p.current.push(K),Ce(null)}}};return R.addEventListener("mousemove",g),R.addEventListener("click",u),()=>{if(R.removeEventListener("mousemove",g),R.removeEventListener("click",u),T)try{m.detachPrimitive(T)}catch{}}}if(Q==="flattopbottom"){let M=null,P=null,re=null,Ae=null,B=0,T=null;const U=(I,E,_,H)=>{if(!T)T=new ld(I,E,_,H),m.attachPrimitive(T);else{T.p1=I,T.p2=E,T.p3=_,T.p4=H;try{a.current?.applyOptions({})}catch{}}},g=I=>{if(B===0||!M)return;const E=R.getBoundingClientRect(),_=I.clientX-E.left,H=I.clientY-E.top;if(B===1){const f=m.coordinateToPrice(H);if(f==null)return;P={rawTime:M.rawTime,normalizedTime:M.normalizedTime,price:f},U({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price});return}if(B===2&&P){const f=b.timeScale().coordinateToTime(_),L=m.coordinateToPrice(H);if(f==null||L==null)return;const D=Y(f);if(D==null)return;re={rawTime:f,normalizedTime:D,price:L},Ae={rawTime:f,normalizedTime:D,price:P.price},U({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:re.rawTime,price:re.price},{rawTime:Ae.rawTime,price:Ae.price})}},u=I=>{const E=R.getBoundingClientRect(),_=I.clientX-E.left,H=I.clientY-E.top,f=b.timeScale().coordinateToTime(_),L=m.coordinateToPrice(H);if(f==null||L==null)return;const D=Y(f);if(D!=null){if(B===0){M={rawTime:f,normalizedTime:D,price:L},P={rawTime:f,normalizedTime:D,price:L},B=1,U({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price});return}if(B===1){const O=m.coordinateToPrice(H);if(O==null||Math.abs(O-M.price)<1e-7)return;P={rawTime:M.rawTime,normalizedTime:M.normalizedTime,price:O},B=2;return}if(B===2&&T){try{m.detachPrimitive(T)}catch{}const O=new ld(T.p1,T.p2,T.p3,T.p4);m.attachPrimitive(O);const K={type:"flattopbottom",primitive:O,p1:M,p2:P,p3:{rawTime:T.p3.rawTime,normalizedTime:Y(T.p3.rawTime),price:T.p3.price},p4:{rawTime:T.p4.rawTime,normalizedTime:Y(T.p4.rawTime),price:T.p4.price}};Be(z=>[...z,K]),p.current.push(K),Ce(null)}}};return R.addEventListener("mousemove",g),R.addEventListener("click",u),()=>{if(R.removeEventListener("mousemove",g),R.removeEventListener("click",u),T)try{m.detachPrimitive(T)}catch{}}}if(Q==="regressionchannel"){let M=null,P=null;const re=(T,U)=>{T.mid1={rawTime:U.p1.rawTime,price:U.p1.price},T.mid2={rawTime:U.p2.rawTime,price:U.p2.price},T.top1={rawTime:U.top1.rawTime,price:U.top1.price},T.top2={rawTime:U.top2.rawTime,price:U.top2.price},T.bot1={rawTime:U.bot1.rawTime,price:U.bot1.price},T.bot2={rawTime:U.bot2.rawTime,price:U.bot2.price}},Ae=T=>{if(!M)return;const U=R.getBoundingClientRect(),g=T.clientX-U.left,u=T.clientY-U.top,I=b.timeScale().coordinateToTime(g),E=m.coordinateToPrice(u);if(I==null||E==null)return;const _=Y(I);if(_==null)return;const f=es(ne,M,{rawTime:I,normalizedTime:_},1);if(f)if(!P)P=new pa({rawTime:f.p1.rawTime,price:f.p1.price},{rawTime:f.p2.rawTime,price:f.p2.price},{rawTime:f.top1.rawTime,price:f.top1.price},{rawTime:f.top2.rawTime,price:f.top2.price},{rawTime:f.bot1.rawTime,price:f.bot1.price},{rawTime:f.bot2.rawTime,price:f.bot2.price}),m.attachPrimitive(P);else{re(P,f);try{b.applyOptions({})}catch{}}},B=T=>{const U=R.getBoundingClientRect(),g=T.clientX-U.left,u=T.clientY-U.top,I=b.timeScale().coordinateToTime(g),E=m.coordinateToPrice(u);if(I==null||E==null)return;const _=Y(I);if(_==null)return;if(!M){M={rawTime:I,normalizedTime:_,price:E};return}const f=es(ne,M,{rawTime:I,normalizedTime:_},1);if(!f)return;if(P){try{m.detachPrimitive(P)}catch{}P=null}const L=new pa({rawTime:f.p1.rawTime,price:f.p1.price},{rawTime:f.p2.rawTime,price:f.p2.price},{rawTime:f.top1.rawTime,price:f.top1.price},{rawTime:f.top2.rawTime,price:f.top2.price},{rawTime:f.bot1.rawTime,price:f.bot1.price},{rawTime:f.bot2.rawTime,price:f.bot2.price});m.attachPrimitive(L);const D={type:"regressionchannel",primitive:L,p1:f.p1,p2:f.p2,top1:f.top1,top2:f.top2,bot1:f.bot1,bot2:f.bot2,slope:f.slope,intercept:f.intercept,stdDev:f.stdDev,offset:f.offset,barCount:f.barCount,stdMultiplier:1};Be(O=>[...O,D]),p.current.push(D),M=null,Ce(null)};return R.addEventListener("mousemove",Ae),R.addEventListener("click",B),()=>{if(R.removeEventListener("mousemove",Ae),R.removeEventListener("click",B),P)try{m.detachPrimitive(P)}catch{}}}if(Q==="stddevchannel"){let M=null,P=null;const re=(T,U)=>{T.mid1={rawTime:U.p1.rawTime,price:U.p1.price},T.mid2={rawTime:U.p2.rawTime,price:U.p2.price},T.top1={rawTime:U.top1.rawTime,price:U.top1.price},T.top2={rawTime:U.top2.rawTime,price:U.top2.price},T.bot1={rawTime:U.bot1.rawTime,price:U.bot1.price},T.bot2={rawTime:U.bot2.rawTime,price:U.bot2.price}},Ae=T=>{if(!M)return;const U=R.getBoundingClientRect(),g=T.clientX-U.left,u=T.clientY-U.top,I=b.timeScale().coordinateToTime(g),E=m.coordinateToPrice(u);if(I==null||E==null)return;const _=Y(I);if(_==null)return;const f=ga(ne,M,{rawTime:I,normalizedTime:_},1);if(f)if(!P)P=new hd({rawTime:f.p1.rawTime,price:f.p1.price},{rawTime:f.p2.rawTime,price:f.p2.price},{rawTime:f.top1.rawTime,price:f.top1.price},{rawTime:f.top2.rawTime,price:f.top2.price},{rawTime:f.bot1.rawTime,price:f.bot1.price},{rawTime:f.bot2.rawTime,price:f.bot2.price}),m.attachPrimitive(P);else{re(P,f);try{b.applyOptions({})}catch{}}},B=T=>{const U=R.getBoundingClientRect(),g=T.clientX-U.left,u=T.clientY-U.top,I=b.timeScale().coordinateToTime(g),E=m.coordinateToPrice(u);if(I==null||E==null)return;const _=Y(I);if(_==null)return;if(!M){M={rawTime:I,normalizedTime:_,price:E};return}const f=ga(ne,M,{rawTime:I,normalizedTime:_},1);if(!f)return;if(P){try{m.detachPrimitive(P)}catch{}P=null}const L=new hd({rawTime:f.p1.rawTime,price:f.p1.price},{rawTime:f.p2.rawTime,price:f.p2.price},{rawTime:f.top1.rawTime,price:f.top1.price},{rawTime:f.top2.rawTime,price:f.top2.price},{rawTime:f.bot1.rawTime,price:f.bot1.price},{rawTime:f.bot2.rawTime,price:f.bot2.price});m.attachPrimitive(L);const D={type:"stddevchannel",primitive:L,p1:f.p1,p2:f.p2,top1:f.top1,top2:f.top2,bot1:f.bot1,bot2:f.bot2,slope:f.slope,stdDev:f.stdDev,offset:f.offset,barCount:f.barCount,stdMultiplier:1};Be(O=>[...O,D]),p.current.push(D),M=null,Ce(null)};return R.addEventListener("mousemove",Ae),R.addEventListener("click",B),()=>{if(R.removeEventListener("mousemove",Ae),R.removeEventListener("click",B),P)try{m.detachPrimitive(P)}catch{}}}if(Q==="andrewspitchfork"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Y(T);if(g==null)return;const u=Ae+140,I=b.timeScale().coordinateToTime(u);if(I==null)return;const E=Y(I);if(E==null)return;const _={rawTime:T,normalizedTime:g,price:U},H={rawTime:I,normalizedTime:E,price:U},f={rawTime:T,normalizedTime:g,price:U},L=new Fv({rawTime:_.rawTime,price:_.price},{rawTime:H.rawTime,price:H.price},{rawTime:f.rawTime,price:f.price});m.attachPrimitive(L);const D={type:"andrewspitchfork",primitive:L,p1:_,p2:H,p3:f};Be(O=>[...O,D]),p.current.push(D),x(D),oe.current=D,Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="gannfan"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Y(T);if(g==null)return;const u={rawTime:T,normalizedTime:g,price:U},I={rawTime:T,normalizedTime:g,price:U},E=new Uv({rawTime:u.rawTime,price:u.price},{rawTime:I.rawTime,price:I.price});m.attachPrimitive(E);const _={type:"gannfan",primitive:E,p1:u,p2:I};Be(H=>[...H,_]),p.current.push(_),x(_),oe.current=_,Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="ganngrid"){const M=P=>{const re=R.getBoundingClientRect(),Ae=P.clientX-re.left,B=P.clientY-re.top,T=b.timeScale().coordinateToTime(Ae),U=m.coordinateToPrice(B);if(T==null||U==null)return;const g=Y(T);if(g==null)return;const u={rawTime:T,normalizedTime:g,price:U},I={rawTime:T,normalizedTime:g,price:U},E=new Ev({rawTime:u.rawTime,price:u.price},{rawTime:I.rawTime,price:I.price});m.attachPrimitive(E);const _={type:"ganngrid",primitive:E,p1:u,p2:I};Be(H=>[...H,_]),p.current.push(_),x(_),oe.current=_,Ce(null)};return R.addEventListener("click",M),()=>R.removeEventListener("click",M)}if(Q==="trendline"||Q==="gannline"){const M=Q,P=M==="gannline"?"#7aa6ae":"#22c55e",re=U=>{U.preventDefault(),U.stopPropagation(),U.stopImmediatePropagation();const g=R.getBoundingClientRect(),u=U.clientX-g.left,I=U.clientY-g.top;let E=b.timeScale().coordinateToTime(u);const _=m.coordinateToPrice(I);if(!(E==null||_==null)&&(E=Y(E),E!=null))if(S.current===null){S.current={time:E,price:_};const H=b.addLineSeries({color:P,lineWidth:2,priceLineVisible:!1,lastValueVisible:!1});v.current={type:M,series:H},H.setData([{time:E,value:_}])}else{const H=S.current,f={time:E,price:_},L=1,D=1e-5,O=Math.abs(f.time-H.time),K=Math.abs(f.price-H.price);if(O<L&&K<D){try{b.removeSeries(v.current.series)}catch{}S.current=null,v.current=null;return}const z={time:H.time,price:H.price},$={time:f.time,price:f.price},te=Ar([{time:z.time,value:z.price},{time:$.time,value:$.price}]);if(te.length>0){v.current.series.setData(te);const he={type:M,series:v.current.series,point1:z,point2:$};Be(pe=>[...pe,he]),p.current.push(he)}Ce(null),S.current=null,v.current=null}},Ae=U=>{if(S.current===null||v.current?.type!=="trendline"&&v.current?.type!=="gannline")return;U.preventDefault(),U.stopPropagation();const g=R.getBoundingClientRect(),u=U.clientX-g.left,I=U.clientY-g.top;let E=b.timeScale().coordinateToTime(u);const _=m.coordinateToPrice(I);if(E==null||_==null||(E=Y(E),E==null))return;const H=S.current,f=Ar([{time:H.time,value:H.price},{time:E,value:_}]);f.length>0&&v.current.series.setData(f)},B=U=>{U.stopPropagation()},T={capture:!0,passive:!1};return R.addEventListener("click",re,T),R.addEventListener("mousemove",Ae,T),R.addEventListener("mousemove",B,T),()=>{if(S.current=null,(v.current?.type==="trendline"||v.current?.type==="gannline")&&v.current?.series){try{b.removeSeries(v.current.series)}catch{}v.current=null}R.removeEventListener("click",re,T),R.removeEventListener("mousemove",Ae,T),R.removeEventListener("mousemove",B,T)}}if(Q==="parallellines"){let M=null,P=null,re=null,Ae=0,B=null;const T=(_,H,f,L)=>{_.p1={rawTime:H.rawTime,price:H.price},_.p2={rawTime:f.rawTime,price:f.price},_.b1={rawTime:L.b1.rawTime,price:L.b1.price},_.b2={rawTime:L.b2.rawTime,price:L.b2.price},_.p3={rawTime:L.bottomMid.rawTime,price:L.bottomMid.price}},U=(_,H,f)=>{const L=fd(_,H,f);if(!L)return null;if(!B)B=new cd({rawTime:_.rawTime,price:_.price},{rawTime:H.rawTime,price:H.price},{rawTime:L.b1.rawTime,price:L.b1.price},{rawTime:L.b2.rawTime,price:L.b2.price},{rawTime:L.bottomMid.rawTime,price:L.bottomMid.price}),m.attachPrimitive(B);else{T(B,_,H,L);try{b.applyOptions({})}catch{}}return L},g=_=>{_.preventDefault(),_.stopPropagation(),_.stopImmediatePropagation();const H=R.getBoundingClientRect(),f=_.clientX-H.left,L=_.clientY-H.top,D=b.timeScale().coordinateToTime(f),O=m.coordinateToPrice(L);if(D==null||O==null)return;const K=Y(D);if(K!=null){if(Ae===0){M={rawTime:D,normalizedTime:K,price:O},Ae=1;return}if(Ae===1){if(P={rawTime:D,normalizedTime:K,price:O},Math.abs(P.normalizedTime-M.normalizedTime)<1)return;const z=Y((M.normalizedTime+P.normalizedTime)/2);if(z==null)return;const $=(M.price+P.price)/2;re={rawTime:z,normalizedTime:z,price:$},U(M,P,re),Ae=2;return}if(Ae===2&&M&&P){re={rawTime:D,normalizedTime:K,price:O};const z=U(M,P,re);if(!z||!B)return;try{m.detachPrimitive(B)}catch{}const $=new cd({rawTime:M.rawTime,price:M.price},{rawTime:P.rawTime,price:P.price},{rawTime:z.b1.rawTime,price:z.b1.price},{rawTime:z.b2.rawTime,price:z.b2.price},{rawTime:z.bottomMid.rawTime,price:z.bottomMid.price});m.attachPrimitive($);const te={type:"equidistantchannel",primitive:$,p1:M,p2:P,p3:z.bottomMid,b1:z.b1,b2:z.b2,bottomMid:z.bottomMid};Be(he=>[...he,te]),p.current.push(te),Ce(null),Ae=0,M=null,P=null,re=null,B=null}}},u=_=>{if(Ae===0||!M)return;const H=R.getBoundingClientRect(),f=_.clientX-H.left,L=_.clientY-H.top,D=b.timeScale().coordinateToTime(f),O=m.coordinateToPrice(L);if(D==null||O==null)return;const K=Y(D);if(K!=null){if(Ae===1){const z={rawTime:D,normalizedTime:K,price:O},$=Y((M.normalizedTime+z.normalizedTime)/2);if($==null)return;const te=(M.price+z.price)/2;U(M,z,{rawTime:$,normalizedTime:$,price:te});return}Ae===2&&P&&U(M,P,{rawTime:D,normalizedTime:K,price:O})}},I=_=>{_.stopPropagation()},E={capture:!0,passive:!1};return R.addEventListener("click",g,E),R.addEventListener("mousemove",u,E),R.addEventListener("mousemove",I,E),()=>{if(Ae=0,M=null,P=null,re=null,F.current=[],B)try{m.detachPrimitive(B)}catch{}B=null,R.removeEventListener("click",g,E),R.removeEventListener("mousemove",u,E),R.removeEventListener("mousemove",I,E)}}if(Q==="fibonacci"){let M=null,P=null;const re=B=>{if(!M)return;const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=b.timeScale().coordinateToTime(U),I=m.coordinateToPrice(g);if(!(u==null||I==null))if(!P)P=new ud({rawTime:M.rawTime,price:M.price},{rawTime:u,price:I}),m.attachPrimitive(P);else{P.p2={rawTime:u,price:I};try{b.applyOptions({})}catch{}}},Ae=B=>{const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=b.timeScale().coordinateToTime(U),I=m.coordinateToPrice(g);if(u==null||I==null)return;if(!M){M={rawTime:u,price:I,normalizedTime:Y(u)};return}if(P){try{m.detachPrimitive(P)}catch{}P=null}const E=M.normalizedTime,_=Y(u);if(E==null||_==null)return;if(Math.abs(I-M.price)<1e-5){M=null;return}const H=new ud({rawTime:M.rawTime,price:M.price},{rawTime:u,price:I});m.attachPrimitive(H);const f={type:"fibonacci",primitive:H,p1:{rawTime:M.rawTime,normalizedTime:E,price:M.price},p2:{rawTime:u,normalizedTime:_,price:I}};Be(L=>[...L,f]),p.current.push(f),M=null,Ce(null)};return R.addEventListener("mousemove",re),R.addEventListener("click",Ae),()=>{if(R.removeEventListener("mousemove",re),R.removeEventListener("click",Ae),P)try{m.detachPrimitive(P)}catch{}}}if(S.current=null,(v.current?.type==="trendline"||v.current?.type==="gannline")&&v.current?.series){try{b.removeSeries(v.current.series)}catch{}v.current=null}const se=M=>{if(M.preventDefault(),M.stopPropagation(),M.stopImmediatePropagation(),Q==="trendline"||Q==="gannline"||Q==="parallellines"||Q==="fibonacci"||Q!=="rectangle"&&Q!=="circle"&&Q!=="triangle"&&Q!=="ellipse")return;const P=R.getBoundingClientRect(),re=M.clientX-P.left,Ae=M.clientY-P.top;let B=b.timeScale().coordinateToTime(re);const T=m.coordinateToPrice(Ae);if(B==null||T==null)return;const U=B;if(B=Y(B),B!=null){if(y.current=!0,w.current={time:B,normalizedTime:B,rawTime:U,price:T},C.current=null,Q==="rectangle"){const g=new wv({rawTime:U,price:T},{rawTime:U,price:T},{strokeColor:"#7aa6ae",fillColor:"rgba(148, 163, 184, 0.18)",lineWidth:1});m.attachPrimitive(g),v.current={type:"rectangle",primitive:g}}if(Q==="circle"){const g=new Cv({rawTime:U,price:T},{rawTime:U,price:T},{strokeColor:"#7aa6ae",lineWidth:1});m.attachPrimitive(g),v.current={type:"circle",primitive:g}}if(Q==="triangle"){const g=new vv({rawTime:U,price:T},{rawTime:U,price:T},{rawTime:U,price:T},{strokeColor:"#7aa6ae",fillColor:"rgba(148, 163, 184, 0.18)",lineWidth:1});m.attachPrimitive(g),v.current={type:"triangle",primitive:g}}if(Q==="ellipse"){const g=new yv({rawTime:U,price:T},{rawTime:U,price:T},{strokeColor:"#7aa6ae",lineWidth:1,minorRatio:.45,previewAsLine:!0});m.attachPrimitive(g),v.current={type:"ellipse",primitive:g}}if(Q==="parallellines"){const g=b.addLineSeries({color:"#8b5cf6",lineWidth:2,priceLineVisible:!1,lastValueVisible:!1});v.current={type:"parallellines",series:g,firstLine:null,secondLine:null}}}},ie=M=>{if(!y.current||!w.current||!v.current)return;M.preventDefault(),M.stopPropagation(),M.stopImmediatePropagation();const P=R.getBoundingClientRect(),re=M.clientX-P.left,Ae=M.clientY-P.top;let B=b.timeScale().coordinateToTime(re);const T=m.coordinateToPrice(Ae);if(B==null||T==null)return;const U=B;if(B=Y(B),B==null)return;C.current={time:B,normalizedTime:B,rawTime:U,price:T};const g=w.current;if(v.current.type==="rectangle"){const u=v.current.primitive;u.p1={rawTime:g.rawTime,price:g.price},u.p2={rawTime:U,price:T};try{a.current?.applyOptions({})}catch{}}if(v.current.type==="circle"){const u=v.current.primitive;u.p1={rawTime:g.rawTime,price:g.price},u.p2={rawTime:U,price:T};try{a.current?.applyOptions({})}catch{}}if(v.current.type==="triangle"){const u=v.current.primitive,I=q(g,{time:B,rawTime:U,price:T});if(!I)return;u.p1={rawTime:I.p1.rawTime,price:I.p1.price},u.p2={rawTime:I.p2.rawTime,price:I.p2.price},u.p3={rawTime:I.p3.rawTime,price:I.p3.price};try{a.current?.applyOptions({})}catch{}}if(v.current.type==="ellipse"){const u=v.current.primitive;u.p1={rawTime:g.rawTime,price:g.price},u.p2={rawTime:U,price:T};try{a.current?.applyOptions({})}catch{}}if(v.current.type==="parallellines")if(v.current.firstLine){const u=v.current.firstLine;u.endTime-u.startTime;const I=u.endPrice-u.startPrice,E=T,_=E+I;if(v.current.secondLine)v.current.secondLine.setData([{time:g.time,value:E},{time:B,value:_}]);else{const H=b.addLineSeries({color:"#8b5cf6",lineWidth:2,priceLineVisible:!1,lastValueVisible:!1});H.setData([{time:g.time,value:E},{time:B,value:_}]),v.current.secondLine=H}}else v.current.series.setData([{time:g.time,value:g.price},{time:B,value:T}])},ce=M=>{if(M&&(M.preventDefault(),M.stopPropagation()),!y.current||!v.current||!w.current)return;const P=w.current,re=C.current||P;if(v.current.type==="parallellines")if(v.current.firstLine){const Ae={type:"parallellines",firstLine:v.current.series,secondLine:v.current.secondLine,firstLineData:v.current.firstLine};Be(B=>[...B,Ae]),p.current.push(Ae),Ce(null),v.current=null,y.current=!1,w.current=null,C.current=null;return}else{v.current.firstLine={startTime:P.time,startPrice:P.price,endTime:re.time,endPrice:re.price},y.current=!1,w.current=null,C.current=null;return}if(v.current.type==="rectangle"){const Ae=w.current,B=C.current||Ae,T=Math.max(Ae.price,B.price),U=Math.min(Ae.price,B.price),g=Y(Math.min(Ae.time,B.time)),u=Y(Math.max(Ae.time,B.time));if(g!=null&&u!=null&&Math.abs(u-g)>=1&&Math.abs(T-U)>=1e-5){const I=v.current.primitive,E=Ae.time<=B.time?Ae.rawTime:B.rawTime,_=Ae.time<=B.time?B.rawTime:Ae.rawTime,H={rawTime:E,normalizedTime:g,price:T},f={rawTime:_,normalizedTime:u,price:U};I.p1={rawTime:H.rawTime,price:H.price},I.p2={rawTime:f.rawTime,price:f.price};const L={type:"rectangle",primitive:I,p1:H,p2:f};Be(D=>[...D,L]),p.current.push(L),Ce(null)}else try{m.detachPrimitive(v.current.primitive)}catch{}}if(v.current.type==="circle"){const Ae=v.current.primitive,B={rawTime:P.rawTime,normalizedTime:P.time,price:P.price},T={rawTime:re.rawTime,normalizedTime:re.time,price:re.price},U=b.timeScale().timeToCoordinate(B.rawTime),g=m.priceToCoordinate(B.price),u=b.timeScale().timeToCoordinate(T.rawTime),I=m.priceToCoordinate(T.price);if((U!=null&&g!=null&&u!=null&&I!=null?Math.hypot(u-U,I-g):0)>=3){Ae.p1={rawTime:B.rawTime,price:B.price},Ae.p2={rawTime:T.rawTime,price:T.price};const _={type:"circle",primitive:Ae,p1:B,p2:T};Be(H=>[...H,_]),p.current.push(_),Ce(null)}else try{m.detachPrimitive(v.current.primitive)}catch{}}if(v.current.type==="triangle"){const Ae=v.current.primitive,B=q(P,re);if(B){const T=Math.abs(B.p3.normalizedTime-B.p2.normalizedTime),U=Math.abs(B.p1.price-B.p2.price);if(T>=1&&U>=1e-5){Ae.p1={rawTime:B.p1.rawTime,price:B.p1.price},Ae.p2={rawTime:B.p2.rawTime,price:B.p2.price},Ae.p3={rawTime:B.p3.rawTime,price:B.p3.price};const g={type:"triangle",primitive:Ae,p1:B.p1,p2:B.p2,p3:B.p3};Be(u=>[...u,g]),p.current.push(g),Ce(null)}else try{m.detachPrimitive(v.current.primitive)}catch{}}else try{m.detachPrimitive(v.current.primitive)}catch{}}if(v.current.type==="ellipse"){const Ae=v.current.primitive,B={rawTime:P.rawTime,normalizedTime:P.time,price:P.price},T={rawTime:re.rawTime,normalizedTime:re.time,price:re.price},U=b.timeScale().timeToCoordinate(B.rawTime),g=m.priceToCoordinate(B.price),u=b.timeScale().timeToCoordinate(T.rawTime),I=m.priceToCoordinate(T.price);if((U!=null&&g!=null&&u!=null&&I!=null?Math.hypot(u-U,I-g):0)>=4){Ae.p1={rawTime:B.rawTime,price:B.price},Ae.p2={rawTime:T.rawTime,price:T.price},Ae.previewAsLine=!1,Ae.minorRatio=.45;const _={type:"ellipse",primitive:Ae,p1:B,p2:T,minorRatio:.45};Be(H=>[...H,_]),p.current.push(_),Ce(null)}else try{m.detachPrimitive(v.current.primitive)}catch{}}y.current=!1,w.current=null,C.current=null,v.current=null};if(Q==="rectangle"||Q==="circle"||Q==="triangle"||Q==="ellipse"){const M={capture:!0,passive:!1},P=re=>{y.current||re.stopPropagation()};return R.addEventListener("mousedown",se,M),R.addEventListener("mousemove",ie,M),R.addEventListener("mousemove",P,M),R.addEventListener("mouseup",ce,M),()=>{if((v.current?.type==="rectangle"||v.current?.type==="circle"||v.current?.type==="triangle"||v.current?.type==="ellipse")&&v.current?.primitive)try{m.detachPrimitive(v.current.primitive)}catch{}v.current=null,y.current=!1,w.current=null,C.current=null,R.removeEventListener("mousedown",se,M),R.removeEventListener("mousemove",ie,M),R.removeEventListener("mousemove",P,M),R.removeEventListener("mouseup",ce,M)}}},[ve,ne,Be,Ce]),J.useEffect(()=>{const b=a.current,m=l.current,R=o.current,Se=ve===null||ve===1;if(!Se||!b||!m||!R){Se||(x(null),N([]),X(null),ae([]));return}const Q=10,q=8;function se(B){if(!B)return[];if(B.type==="trendline"&&B.point1&&B.point2){const T=b.timeScale().timeToCoordinate(B.point1.time),U=m.priceToCoordinate(B.point1.price),g=b.timeScale().timeToCoordinate(B.point2.time),u=m.priceToCoordinate(B.point2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="gannline"&&B.point1&&B.point2){const T=b.timeScale().timeToCoordinate(B.point1.time),U=m.priceToCoordinate(B.point1.price),g=b.timeScale().timeToCoordinate(B.point2.time),u=m.priceToCoordinate(B.point2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:(T+g)/2,y:(U+u)/2},{x:g,y:u}]}if(B.type==="rectangle"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);if(T==null||U==null||g==null||u==null)return[];const I=Math.min(T,g),E=Math.max(T,g),_=Math.min(U,u),H=Math.max(U,u),f=(I+E)/2,L=(_+H)/2;return[{x:I,y:_},{x:f,y:_},{x:E,y:_},{x:I,y:L},{x:E,y:L},{x:I,y:H},{x:f,y:H},{x:E,y:H}]}if(B.type==="circle"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="triangle"&&B.p1&&B.p2&&B.p3){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price),I=b.timeScale().timeToCoordinate(B.p3.rawTime),E=m.priceToCoordinate(B.p3.price);return T==null||U==null||g==null||u==null||I==null||E==null?[]:[{x:T,y:U},{x:g,y:u},{x:I,y:E}]}if(B.type==="ellipse"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);if(T==null||U==null||g==null||u==null)return[];const I=(T+g)/2,E=(U+u)/2,_=g-T,H=u-U,f=Math.hypot(_,H);if(f<.001)return[];const L=_/f,D=H/f,O=-D,K=L,z=f/2,$=z*Math.max(.05,B.minorRatio??.45);return[{x:I-L*z,y:E-D*z},{x:I+O*$,y:E+K*$},{x:I+L*z,y:E+D*z},{x:I-O*$,y:E-K*$}]}if(B.type==="gannfan"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="ganngrid"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="arrowedline"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="rayline"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="extendedline"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="crossline"&&B.p){const T=b.timeScale().timeToCoordinate(B.p.rawTime),U=m.priceToCoordinate(B.p.price);return T==null||U==null?[]:[{x:T,y:U}]}if(B.type==="trendbyangle"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="andrewspitchfork"&&B.p1&&B.p2&&B.p3){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price),I=b.timeScale().timeToCoordinate(B.p3.rawTime),E=m.priceToCoordinate(B.p3.price);return T==null||U==null||g==null||u==null||I==null||E==null?[]:[{x:T,y:U},{x:g,y:u},{x:I,y:E}]}if(B.type==="equidistantchannel"&&B.p1&&B.p2&&B.b1&&B.b2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price),I=b.timeScale().timeToCoordinate(B.b1.rawTime),E=m.priceToCoordinate(B.b1.price),_=b.timeScale().timeToCoordinate(B.b2.rawTime),H=m.priceToCoordinate(B.b2.price);return T==null||U==null||g==null||u==null||I==null||E==null||_==null||H==null?[]:[{x:T,y:U},{x:g,y:u},{x:(I+_)/2,y:(E+H)/2}]}if(B.type==="regressionchannel"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="stddevchannel"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}if(B.type==="disjointchannel"&&B.p1&&B.p2&&B.p3&&B.p4){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price),I=b.timeScale().timeToCoordinate(B.p3.rawTime),E=m.priceToCoordinate(B.p3.price),_=b.timeScale().timeToCoordinate(B.p4.rawTime),H=m.priceToCoordinate(B.p4.price);return T==null||U==null||g==null||u==null||I==null||E==null||_==null||H==null?[]:[{x:T,y:U},{x:g,y:u},{x:I,y:E},{x:_,y:H}]}if(B.type==="flattopbottom"&&B.p1&&B.p2&&B.p3&&B.p4){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price),I=b.timeScale().timeToCoordinate(B.p3.rawTime),E=m.priceToCoordinate(B.p3.price),_=b.timeScale().timeToCoordinate(B.p4.rawTime),H=m.priceToCoordinate(B.p4.price);return T==null||U==null||g==null||u==null||I==null||E==null||_==null||H==null?[]:[{x:T,y:U},{x:g,y:u},{x:I,y:E},{x:_,y:H}]}if(B.type==="infoline"&&B.p1&&B.p2){const T=B.p1.rawTime??B.p1.time,U=B.p2.rawTime??B.p2.time,g=b.timeScale().timeToCoordinate(T),u=m.priceToCoordinate(B.p1.price),I=b.timeScale().timeToCoordinate(U),E=m.priceToCoordinate(B.p2.price);return g==null||u==null||I==null||E==null?[]:[{x:g,y:u},{x:I,y:E}]}if(B.type==="rulerline"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:(T+g)/2,y:(U+u)/2},{x:g,y:u}]}if(B.type==="fibonacci"&&B.p1&&B.p2){const T=b.timeScale().timeToCoordinate(B.p1.rawTime),U=m.priceToCoordinate(B.p1.price),g=b.timeScale().timeToCoordinate(B.p2.rawTime),u=m.priceToCoordinate(B.p2.price);return T==null||U==null||g==null||u==null?[]:[{x:T,y:U},{x:g,y:u}]}return[]}function ie(B,T){for(let U=_e.length-1;U>=0;U--){const g=_e[U];if(g.type==="trendline"&&g.point1&&g.point2){const u=b.timeScale().timeToCoordinate(g.point1.time),I=m.priceToCoordinate(g.point1.price),E=b.timeScale().timeToCoordinate(g.point2.time),_=m.priceToCoordinate(g.point2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-u,T-I),f=Math.hypot(B-E,T-_);if(H<Q)return{object:g,mode:"handle1"};if(f<Q)return{object:g,mode:"handle2"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="gannline"&&g.point1&&g.point2){const u=b.timeScale().timeToCoordinate(g.point1.time),I=m.priceToCoordinate(g.point1.price),E=b.timeScale().timeToCoordinate(g.point2.time),_=m.priceToCoordinate(g.point2.price);if(u==null||I==null||E==null||_==null)continue;const H=(u+E)/2,f=(I+_)/2,L=Math.hypot(B-u,T-I),D=Math.hypot(B-E,T-_),O=Math.hypot(B-H,T-f);if(L<Q)return{object:g,mode:"handle1"};if(D<Q)return{object:g,mode:"handle2"};if(O<Q)return{object:g,mode:"line"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="rectangle"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.min(u,E),f=Math.max(u,E),L=Math.min(I,_),D=Math.max(I,_),O=(H+f)/2,K=(L+D)/2,z=[{x:H,y:L,mode:"handle1"},{x:O,y:L,mode:"handle2"},{x:f,y:L,mode:"handle3"},{x:H,y:K,mode:"handle4"},{x:f,y:K,mode:"handle5"},{x:H,y:D,mode:"handle6"},{x:O,y:D,mode:"handle7"},{x:f,y:D,mode:"handle8"}];for(const He of z)if(Math.hypot(B-He.x,T-He.y)<Q)return{object:g,mode:He.mode};const $=qe(B,T,H,L,f,L),te=qe(B,T,H,D,f,D),he=qe(B,T,H,L,H,D),pe=qe(B,T,f,L,f,D);if($<q||te<q||he<q||pe<q||Nt(B,T,[{x:H,y:L},{x:f,y:L},{x:f,y:D},{x:H,y:D}]))return{object:g,mode:"line"}}if(g.type==="circle"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(E-u,_-I);if(H<2)continue;const f=Math.hypot(B-u,T-I),L=Math.hypot(B-E,T-_);if(f<Q)return{object:g,mode:"handle1"};if(L<Q)return{object:g,mode:"handle2"};if(Math.abs(f-H)<q||f<H)return{object:g,mode:"line"}}if(g.type==="triangle"&&g.p1&&g.p2&&g.p3){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.p3.rawTime),f=m.priceToCoordinate(g.p3.price);if(u==null||I==null||E==null||_==null||H==null||f==null)continue;const L=Math.hypot(B-u,T-I),D=Math.hypot(B-E,T-_),O=Math.hypot(B-H,T-f);if(L<Q)return{object:g,mode:"handle1"};if(D<Q)return{object:g,mode:"handle2"};if(O<Q)return{object:g,mode:"handle3"};const K=qe(B,T,u,I,E,_),z=qe(B,T,E,_,H,f),$=qe(B,T,H,f,u,I);if(K<q||z<q||$<q||Nt(B,T,[{x:u,y:I},{x:E,y:_},{x:H,y:f}]))return{object:g,mode:"line"}}if(g.type==="ellipse"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=(u+E)/2,f=(I+_)/2,L=E-u,D=_-I,O=Math.hypot(L,D);if(O<2)continue;const K=L/O,z=D/O,$=-z,te=K,he=O/2,pe=he*Math.max(.05,g.minorRatio??.45);if(he<2||pe<2)continue;const He=H-K*he,Ne=f-z*he,Ge=H+$*pe,Ve=f+te*pe,nA=H+K*he,eA=f+z*he,pA=H-$*pe,QA=f-te*pe,WA=Math.hypot(B-He,T-Ne),_A=Math.hypot(B-Ge,T-Ve),zA=Math.hypot(B-nA,T-eA),wt=Math.hypot(B-pA,T-QA);if(WA<Q)return{object:g,mode:"handle1"};if(_A<Q)return{object:g,mode:"handle2"};if(zA<Q)return{object:g,mode:"handle3"};if(wt<Q)return{object:g,mode:"handle4"};const tr=(B-H)*K+(T-f)*z,rs=(B-H)*$+(T-f)*te,bd=tr/he,Td=rs/pe,Qd=bd*bd+Td*Td;if(Math.abs(Qd-1)<.2||Qd<1)return{object:g,mode:"line"}}if(g.type==="gannfan"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-E,T-_),f=Math.hypot(B-u,T-I);if(H<Q)return{object:g,mode:"handle2"};if(f<Q)return{object:g,mode:"handle1"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="ganngrid"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-E,T-_),f=Math.hypot(B-u,T-I);if(H<Q)return{object:g,mode:"handle2"};if(f<Q)return{object:g,mode:"handle1"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="arrowedline"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-u,T-I),f=Math.hypot(B-E,T-_);if(H<Q)return{object:g,mode:"handle1"};if(f<Q)return{object:g,mode:"handle2"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="rayline"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-u,T-I),f=Math.hypot(B-E,T-_);if(H<Q)return{object:g,mode:"handle1"};if(f<Q)return{object:g,mode:"handle2"};if(Mv(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="extendedline"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-u,T-I),f=Math.hypot(B-E,T-_);if(H<Q)return{object:g,mode:"handle1"};if(f<Q)return{object:g,mode:"handle2"};if(Iv(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="crossline"&&g.p){const u=b.timeScale().timeToCoordinate(g.p.rawTime),I=m.priceToCoordinate(g.p.price);if(u==null||I==null)continue;if(Math.hypot(B-u,T-I)<Q)return{object:g,mode:"handle1"};const _=Math.abs(T-I),H=Math.abs(B-u);if(_<q||H<q)return{object:g,mode:"line"}}if(g.type==="trendbyangle"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-u,T-I),f=Math.hypot(B-E,T-_);if(H<Q)return{object:g,mode:"handle1"};if(f<Q)return{object:g,mode:"handle2"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="equidistantchannel"&&g.p1&&g.p2&&g.b1&&g.b2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.b1.rawTime),f=m.priceToCoordinate(g.b1.price),L=b.timeScale().timeToCoordinate(g.b2.rawTime),D=m.priceToCoordinate(g.b2.price),O=H!=null&&L!=null?(H+L)/2:null,K=f!=null&&D!=null?(f+D)/2:null;if(u==null||I==null||E==null||_==null||O==null||K==null||H==null||f==null||L==null||D==null)continue;const z=Math.hypot(B-u,T-I),$=Math.hypot(B-E,T-_),te=Math.hypot(B-O,T-K),he=Math.hypot(u-O,I-K)<Q*1.5;if(he&&Math.min(z,te)<Q*1.5)return{object:g,mode:"handle3"};if(te<Q)return{object:g,mode:"handle3"};if($<Q)return{object:g,mode:"handle2"};if(he)continue;if(z<Q)return{object:g,mode:"handle1"};const pe=qe(B,T,u,I,E,_),He=qe(B,T,H,f,L,D);if(pe<q||He<q||Nt(B,T,[{x:u,y:I},{x:E,y:_},{x:L,y:D},{x:H,y:f}]))return{object:g,mode:"line"}}if(g.type==="regressionchannel"&&g.p1&&g.p2&&g.top1&&g.top2&&g.bot1&&g.bot2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.top1.rawTime),f=m.priceToCoordinate(g.top1.price),L=b.timeScale().timeToCoordinate(g.top2.rawTime),D=m.priceToCoordinate(g.top2.price),O=b.timeScale().timeToCoordinate(g.bot1.rawTime),K=m.priceToCoordinate(g.bot1.price),z=b.timeScale().timeToCoordinate(g.bot2.rawTime),$=m.priceToCoordinate(g.bot2.price);if(u==null||I==null||E==null||_==null||H==null||f==null||L==null||D==null||O==null||K==null||z==null||$==null)continue;const te=Math.hypot(B-u,T-I),he=Math.hypot(B-E,T-_);if(te<Q)return{object:g,mode:"handle1"};if(he<Q)return{object:g,mode:"handle2"};const pe=qe(B,T,u,I,E,_),He=qe(B,T,H,f,L,D),Ne=qe(B,T,O,K,z,$);if(pe<q||He<q||Ne<q||Nt(B,T,[{x:H,y:f},{x:L,y:D},{x:z,y:$},{x:O,y:K}]))return{object:g,mode:"line"}}if(g.type==="stddevchannel"&&g.p1&&g.p2&&g.top1&&g.top2&&g.bot1&&g.bot2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.top1.rawTime),f=m.priceToCoordinate(g.top1.price),L=b.timeScale().timeToCoordinate(g.top2.rawTime),D=m.priceToCoordinate(g.top2.price),O=b.timeScale().timeToCoordinate(g.bot1.rawTime),K=m.priceToCoordinate(g.bot1.price),z=b.timeScale().timeToCoordinate(g.bot2.rawTime),$=m.priceToCoordinate(g.bot2.price);if(u==null||I==null||E==null||_==null||H==null||f==null||L==null||D==null||O==null||K==null||z==null||$==null)continue;const te=Math.hypot(B-u,T-I),he=Math.hypot(B-E,T-_);if(te<Q)return{object:g,mode:"handle1"};if(he<Q)return{object:g,mode:"handle2"};const pe=qe(B,T,u,I,E,_),He=qe(B,T,H,f,L,D),Ne=qe(B,T,O,K,z,$);if(pe<q||He<q||Ne<q||Nt(B,T,[{x:H,y:f},{x:L,y:D},{x:z,y:$},{x:O,y:K}]))return{object:g,mode:"line"}}if(g.type==="andrewspitchfork"&&g.p1&&g.p2&&g.p3){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.p3.rawTime),f=m.priceToCoordinate(g.p3.price);if(u==null||I==null||E==null||_==null||H==null||f==null)continue;const L=Math.hypot(B-u,T-I),D=Math.hypot(B-E,T-_),O=Math.hypot(B-H,T-f);if(L<Q)return{object:g,mode:"handle1"};if(D<Q)return{object:g,mode:"handle2"};if(O<Q)return{object:g,mode:"handle3"};const K=(E+H)/2,z=(_+f)/2;let $=K-u,te=z-I;Math.abs($)<1e-4&&($=1e-4);const he=te/$,pe=R.clientWidth,He=_+he*(pe-E),Ne=f+he*(pe-H),Ge=qe(B,T,E,_,pe,He),Ve=qe(B,T,H,f,pe,Ne);if(Ge<q||Ve<q||Nt(B,T,[{x:E,y:_},{x:pe,y:He},{x:pe,y:Ne},{x:H,y:f}]))return{object:g,mode:"line"}}if(g.type==="disjointchannel"&&g.p1&&g.p2&&g.p3&&g.p4){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.p3.rawTime),f=m.priceToCoordinate(g.p3.price),L=b.timeScale().timeToCoordinate(g.p4.rawTime),D=m.priceToCoordinate(g.p4.price);if(u==null||I==null||E==null||_==null||H==null||f==null||L==null||D==null)continue;const O=Math.hypot(B-u,T-I),K=Math.hypot(B-E,T-_),z=Math.hypot(B-H,T-f),$=Math.hypot(B-L,T-D);if(O<Q)return{object:g,mode:"handle1"};if(K<Q)return{object:g,mode:"handle2"};if(z<Q)return{object:g,mode:"handle3"};if($<Q)return{object:g,mode:"handle4"};const te=qe(B,T,u,I,H,f),he=qe(B,T,E,_,L,D),pe=qe(B,T,u,I,E,_),He=qe(B,T,H,f,L,D);if(te<q||he<q||pe<q||He<q||Nt(B,T,[{x:u,y:I},{x:H,y:f},{x:L,y:D},{x:E,y:_}]))return{object:g,mode:"line"}}if(g.type==="flattopbottom"&&g.p1&&g.p2&&g.p3&&g.p4){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price),H=b.timeScale().timeToCoordinate(g.p3.rawTime),f=m.priceToCoordinate(g.p3.price),L=b.timeScale().timeToCoordinate(g.p4.rawTime),D=m.priceToCoordinate(g.p4.price);if(u==null||I==null||E==null||_==null||H==null||f==null||L==null||D==null)continue;const O=Math.hypot(B-u,T-I),K=Math.hypot(B-E,T-_),z=Math.hypot(B-H,T-f),$=Math.hypot(B-L,T-D);if(O<Q)return{object:g,mode:"handle1"};if(K<Q)return{object:g,mode:"handle2"};if(z<Q)return{object:g,mode:"handle3"};if($<Q)return{object:g,mode:"handle4"};const te=qe(B,T,u,I,H,f),he=qe(B,T,E,_,L,D),pe=qe(B,T,u,I,E,_),He=qe(B,T,H,f,L,D);if(te<q||he<q||pe<q||He<q||Nt(B,T,[{x:u,y:I},{x:H,y:f},{x:L,y:D},{x:E,y:_}]))return{object:g,mode:"line"}}if(g.type==="rulerline"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=(u+E)/2,f=(I+_)/2,L=Math.hypot(B-u,T-I),D=Math.hypot(B-E,T-_),O=Math.hypot(B-H,T-f);if(L<Q)return{object:g,mode:"handle1"};if(D<Q)return{object:g,mode:"handle2"};if(O<Q)return{object:g,mode:"line"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}if(g.type==="infoline"&&g.p1&&g.p2){const u=g.p1.rawTime??g.p1.time,I=g.p2.rawTime??g.p2.time,E=b.timeScale().timeToCoordinate(u),_=m.priceToCoordinate(g.p1.price),H=b.timeScale().timeToCoordinate(I),f=m.priceToCoordinate(g.p2.price);if(E==null||_==null||H==null||f==null)continue;const L=Math.hypot(B-E,T-_),D=Math.hypot(B-H,T-f);if(L<Q)return{object:g,mode:"handle1"};if(D<Q)return{object:g,mode:"handle2"};if(qe(B,T,E,_,H,f)<q)return{object:g,mode:"line"}}if(g.type==="fibonacci"&&g.p1&&g.p2){const u=b.timeScale().timeToCoordinate(g.p1.rawTime),I=m.priceToCoordinate(g.p1.price),E=b.timeScale().timeToCoordinate(g.p2.rawTime),_=m.priceToCoordinate(g.p2.price);if(u==null||I==null||E==null||_==null)continue;const H=Math.hypot(B-u,T-I),f=Math.hypot(B-E,T-_);if(H<Q)return{object:g,mode:"handle1"};if(f<Q)return{object:g,mode:"handle2"};if(qe(B,T,u,I,E,_)<q)return{object:g,mode:"line"}}}return null}const ce=B=>{const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top,u=ie(U,g);u?(B.preventDefault(),B.stopPropagation(),x(u.object),X(null),ae([]),G.current=u.mode,u.object.type==="rayline"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="extendedline"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="crossline"&&(u.mode==="handle1"||u.mode==="line")&&(ee.current={x:U,y:g,p:{...u.object.p}}),u.object.type==="trendbyangle"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="equidistantchannel"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}),u.object.type==="andrewspitchfork"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}),u.object.type==="regressionchannel"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="stddevchannel"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="disjointchannel"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}),u.object.type==="flattopbottom"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}),u.object.type==="fibonacci"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="gannfan"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="ganngrid"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="rectangle"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4"||u.mode==="handle5"||u.mode==="handle6"||u.mode==="handle7"||u.mode==="handle8")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="circle"&&(u.mode==="handle1"||u.mode==="handle2")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="triangle"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}),u.object.type==="ellipse"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4")&&(ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},minorRatio:u.object.minorRatio??.45}),u.mode==="line"&&(u.object.type==="rulerline"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="infoline"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="arrowedline"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="rayline"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="extendedline"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="crossline"?ee.current={x:U,y:g,p:{...u.object.p}}:u.object.type==="trendbyangle"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="equidistantchannel"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}:u.object.type==="andrewspitchfork"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}:u.object.type==="regressionchannel"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="stddevchannel"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="disjointchannel"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}:u.object.type==="flattopbottom"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}:u.object.type==="fibonacci"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="gannfan"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="rectangle"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="circle"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="triangle"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}:u.object.type==="ellipse"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2},minorRatio:u.object.minorRatio??.45}:u.object.type==="ganngrid"?ee.current={x:U,y:g,p1:{...u.object.p1},p2:{...u.object.p2}}:ee.current={x:U,y:g,point1:{...u.object.point1},point2:{...u.object.point2}})):(x(null),G.current=null,N([]),X(null),ae([]))},M=B=>{const T=R.getBoundingClientRect(),U=B.clientX-T.left,g=B.clientY-T.top;if(!G.current){const H=ie(U,g);if(H?.object&&!oe.current){const f=se(H.object);X(L=>L===H.object?L:H.object),ae(L=>L.length===f.length&&L.every((D,O)=>D.x===f[O].x&&D.y===f[O].y)?L:f)}else X(f=>f==null?f:null),ae(f=>f.length===0?f:[]);return}const u=oe.current;if(!u)return;const I=b.timeScale().coordinateToTime(U),E=m.coordinateToPrice(g);if(I==null||E==null)return;let _=Y(I);if(_!=null){if(u.type==="infoline"&&u.p1&&u.p2){const H=O=>{const K=O.rawTime??O.time,z=O.normalizedTime??Y(K);return{rawTime:K,normalizedTime:z,price:O.price}},f=(O,K)=>{const z=O.normalizedTime??Y(O.rawTime),$=K.normalizedTime??Y(K.rawTime);if(z==null||$==null)return;const te=K.price-O.price,he=te/Math.abs(O.price)*100,pe=it(Te)||3600,He=Math.abs($-z),Ne=Math.max(1,Math.round(He/pe)),Ge=Math.max(1,Math.round(He/86400)),Ve=b.timeScale().timeToCoordinate(O.rawTime),nA=m.priceToCoordinate(O.price),eA=b.timeScale().timeToCoordinate(K.rawTime),pA=m.priceToCoordinate(K.price),QA=Ve!=null&&nA!=null&&eA!=null&&pA!=null?Math.atan2(-(pA-nA),eA-Ve)*(180/Math.PI):u.primitive?.info?.angle??0,WA={priceDiff:te,pricePct:he,bars:Ne,days:Ge,angle:QA},_A=u.primitive;if(_A){_A.p1={rawTime:O.rawTime,price:O.price},_A.p2={rawTime:K.rawTime,price:K.price},_A.info=WA;try{a.current?.applyOptions({})}catch{}}const zA={...u,p1:{rawTime:O.rawTime,normalizedTime:z,price:O.price},p2:{rawTime:K.rawTime,normalizedTime:$,price:K.price}};Be(wt=>{const tr=wt.map(rs=>rs===u?zA:rs);return p.current=tr,tr}),x(zA),oe.current=zA},L=H(u.p1),D=H(u.p2);if(L.rawTime==null||L.normalizedTime==null||D.rawTime==null||D.normalizedTime==null)return;if(G.current==="handle1"){const O=b.timeScale().coordinateToTime(U);if(O==null)return;f({rawTime:O,normalizedTime:_,price:E},D)}else if(G.current==="handle2"){const O=b.timeScale().coordinateToTime(U);if(O==null)return;f(L,{rawTime:O,normalizedTime:_,price:E})}else if(G.current==="line"){const O=ee.current;if(!O)return;const K=H(O.p1),z=H(O.p2);if(K.rawTime==null||K.normalizedTime==null||z.rawTime==null||z.normalizedTime==null)return;const $=b.timeScale().coordinateToTime(O.x),te=m.coordinateToPrice(O.y);if($==null||te==null)return;const he=Y($);if(he==null)return;const pe=_-he,He=E-te,Ne=Y(K.normalizedTime+pe),Ge=Y(z.normalizedTime+pe);if(Ne==null||Ge==null)return;const Ve=I-$;f({rawTime:K.rawTime+Ve,normalizedTime:Ne,price:K.price+He},{rawTime:z.rawTime+Ve,normalizedTime:Ge,price:z.price+He})}return}if(u.type==="rulerline"&&u.p1&&u.p2){const H=(f,L)=>{const D=f.normalizedTime??f.rawTime,O=L.normalizedTime??L.rawTime,K=L.price-f.price,z=K/Math.abs(f.price)*100,$=it(Te)||3600,te=Math.abs(O-D),he=Math.max(1,Math.round(te/$)),pe=Math.max(1,Math.round(te/86400)),He={priceDiff:K,pricePct:z,bars:he,days:pe},Ne=u.primitive;if(Ne){Ne.p1={rawTime:f.rawTime,price:f.price},Ne.p2={rawTime:L.rawTime,price:L.price},Ne.info=He;const Ve=L.price>=f.price;Ne.color=Ve?"#3b82f6":"#ef5350",Ne.fillColor=Ve?"rgba(59,130,246,0.1)":"rgba(239,83,80,0.1)";try{a.current?.applyOptions({})}catch{}}const Ge={...u,p1:f,p2:L};Be(Ve=>{const nA=Ve.map(eA=>eA===u?Ge:eA);return p.current=nA,nA}),x(Ge),oe.current=Ge};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="arrowedline"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="rayline"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;const L=Y(f);if(L==null)return;H(u.p1,{rawTime:f,normalizedTime:L,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="extendedline"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="crossline"&&u.p){const H=L=>{const D=u.primitive;if(D){D.center={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O},f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E});return}if(u.type==="trendbyangle"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"||G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="equidistantchannel"&&u.p1&&u.p2&&u.p3){const H=(f,L,D)=>{const O=fd(f,L,D);if(!O)return;const K=u.primitive;if(K){K.p1={rawTime:f.rawTime,price:f.price},K.p2={rawTime:L.rawTime,price:L.price},K.b1={rawTime:O.b1.rawTime,price:O.b1.price},K.b2={rawTime:O.b2.rawTime,price:O.b2.price},K.p3={rawTime:O.bottomMid.rawTime,price:O.bottomMid.price};try{a.current?.applyOptions({})}catch{}}const z={...u,p1:f,p2:L,p3:O.bottomMid,b1:O.b1,b2:O.b2,bottomMid:O.bottomMid};Be($=>{const te=$.map(he=>he===u?z:he);return p.current=te,te}),x(z),oe.current=z};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2,u.p3);return}if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E},u.p3);return}if(G.current==="handle3"){H(u.p1,u.p2,{rawTime:u.p3.rawTime,normalizedTime:u.p3.normalizedTime??Y(u.p3.rawTime),price:E});return}if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O),te=Y(f.p3.normalizedTime+O);if(z==null||$==null||te==null)return;const he=I-L;H({rawTime:f.p1.rawTime+he,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+he,normalizedTime:$,price:f.p2.price+K},{rawTime:f.p3.rawTime+he,normalizedTime:te,price:f.p3.price+K});return}}if(u.type==="regressionchannel"&&u.p1&&u.p2){const H=(f,L)=>{const D=es(ne,f,L,u.stdMultiplier??1);if(!D)return;const O=u.primitive;if(O){O.mid1={rawTime:D.p1.rawTime,price:D.p1.price},O.mid2={rawTime:D.p2.rawTime,price:D.p2.price},O.top1={rawTime:D.top1.rawTime,price:D.top1.price},O.top2={rawTime:D.top2.rawTime,price:D.top2.price},O.bot1={rawTime:D.bot1.rawTime,price:D.bot1.price},O.bot2={rawTime:D.bot2.rawTime,price:D.bot2.price};try{a.current?.applyOptions({})}catch{}}const K={...u,p1:D.p1,p2:D.p2,top1:D.top1,top2:D.top2,bot1:D.bot1,bot2:D.bot2,slope:D.slope,intercept:D.intercept,stdDev:D.stdDev,offset:D.offset,barCount:D.barCount};Be(z=>{const $=z.map(te=>te===u?K:te);return p.current=$,$}),x(K),oe.current=K};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_},u.p2);return}if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_});return}if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K});return}}if(u.type==="stddevchannel"&&u.p1&&u.p2){const H=(f,L)=>{const D=ga(ne,f,L,u.stdMultiplier??1);if(!D)return;const O=u.primitive;if(O){O.mid1={rawTime:D.p1.rawTime,price:D.p1.price},O.mid2={rawTime:D.p2.rawTime,price:D.p2.price},O.top1={rawTime:D.top1.rawTime,price:D.top1.price},O.top2={rawTime:D.top2.rawTime,price:D.top2.price},O.bot1={rawTime:D.bot1.rawTime,price:D.bot1.price},O.bot2={rawTime:D.bot2.rawTime,price:D.bot2.price};try{a.current?.applyOptions({})}catch{}}const K={...u,p1:D.p1,p2:D.p2,top1:D.top1,top2:D.top2,bot1:D.bot1,bot2:D.bot2,slope:D.slope,stdDev:D.stdDev,offset:D.offset,barCount:D.barCount};Be(z=>{const $=z.map(te=>te===u?K:te);return p.current=$,$}),x(K),oe.current=K};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_},u.p2);return}if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_});return}if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K});return}}if(u.type==="andrewspitchfork"&&u.p1&&u.p2&&u.p3){const H=(f,L,D)=>{const O=u.primitive;if(O){O.p1={rawTime:f.rawTime,price:f.price},O.p2={rawTime:L.rawTime,price:L.price},O.p3={rawTime:D.rawTime,price:D.price};try{a.current?.applyOptions({})}catch{}}const K={...u,p1:f,p2:L,p3:D};Be(z=>{const $=z.map(te=>te===u?K:te);return p.current=$,$}),x(K),oe.current=K};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2,u.p3);return}if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E},u.p3);return}if(G.current==="handle3"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,u.p2,{rawTime:f,normalizedTime:_,price:E});return}if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O),te=Y(f.p3.normalizedTime+O);if(z==null||$==null||te==null)return;const he=I-L;H({rawTime:f.p1.rawTime+he,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+he,normalizedTime:$,price:f.p2.price+K},{rawTime:f.p3.rawTime+he,normalizedTime:te,price:f.p3.price+K});return}}if(u.type==="disjointchannel"&&u.p1&&u.p2&&u.p3&&u.p4){const H=(K,z,$,te)=>{const he=u.primitive;if(he){he.p1={rawTime:K.rawTime,price:K.price},he.p2={rawTime:z.rawTime,price:z.price},he.p3={rawTime:$.rawTime,price:$.price},he.p4={rawTime:te.rawTime,price:te.price};try{a.current?.applyOptions({})}catch{}}const pe={...u,p1:K,p2:z,p3:$,p4:te};Be(He=>{const Ne=He.map(Ge=>Ge===u?pe:Ge);return p.current=Ne,Ne}),x(pe),oe.current=pe},f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(U);if(L==null)return;const D=Y(L);if(D==null)return;const O=(K,z,$,te)=>{const he=K.normalizedTime??Y(K.rawTime);if(he==null)return null;const pe=Y(he+$);return pe==null?null:{rawTime:K.rawTime+z,normalizedTime:pe,price:K.price+te}};if(G.current==="line"){const K=b.timeScale().coordinateToTime(f.x),z=m.coordinateToPrice(f.y);if(K==null||z==null)return;const $=Y(K);if($==null)return;const te=L-K,he=D-$,pe=E-z,He=O(f.p1,te,he,pe),Ne=O(f.p2,te,he,pe),Ge=O(f.p3,te,he,pe),Ve=O(f.p4,te,he,pe);if(!He||!Ne||!Ge||!Ve)return;H(He,Ne,Ge,Ve);return}if(G.current==="handle1"){const K=(f.p1.price+f.p2.price)/2,z={rawTime:L,normalizedTime:D,price:E},$={rawTime:L,normalizedTime:D,price:2*K-E};H(z,$,f.p3,f.p4);return}if(G.current==="handle3"){const K=(f.p3.price+f.p4.price)/2,z={rawTime:L,normalizedTime:D,price:E},$={rawTime:L,normalizedTime:D,price:2*K-E};H(f.p1,f.p2,z,$);return}if(G.current==="handle2"){const K=(f.p1.price+f.p2.price)/2,z={rawTime:f.p1.rawTime,normalizedTime:f.p1.normalizedTime??Y(f.p1.rawTime),price:E};if(z.normalizedTime==null)return;const $={rawTime:f.p1.rawTime,normalizedTime:f.p1.normalizedTime??Y(f.p1.rawTime),price:2*K-E};if($.normalizedTime==null)return;H($,z,f.p3,f.p4);return}if(G.current==="handle4"){const K=E-f.p4.price,z={rawTime:f.p3.rawTime,normalizedTime:f.p3.normalizedTime??Y(f.p3.rawTime),price:f.p4.price+K};if(z.normalizedTime==null)return;const $={rawTime:f.p1.rawTime,normalizedTime:f.p1.normalizedTime??Y(f.p1.rawTime),price:f.p2.price+K};if($.normalizedTime==null)return;H(f.p1,$,f.p3,z);return}}if(u.type==="flattopbottom"&&u.p1&&u.p2&&u.p3&&u.p4){const H=(K,z,$,te)=>{const he=u.primitive;if(he){he.p1={rawTime:K.rawTime,price:K.price},he.p2={rawTime:z.rawTime,price:z.price},he.p3={rawTime:$.rawTime,price:$.price},he.p4={rawTime:te.rawTime,price:te.price};try{a.current?.applyOptions({})}catch{}}const pe={...u,p1:K,p2:z,p3:$,p4:te};Be(He=>{const Ne=He.map(Ge=>Ge===u?pe:Ge);return p.current=Ne,Ne}),x(pe),oe.current=pe},f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(U);if(L==null)return;const D=Y(L);if(D==null)return;const O=(K,z,$,te)=>{const he=K.normalizedTime??Y(K.rawTime);if(he==null)return null;const pe=Y(he+$);return pe==null?null:{rawTime:K.rawTime+z,normalizedTime:pe,price:K.price+te}};if(G.current==="line"){const K=b.timeScale().coordinateToTime(f.x),z=m.coordinateToPrice(f.y);if(K==null||z==null)return;const $=Y(K);if($==null)return;const te=L-K,he=D-$,pe=E-z,He=O(f.p1,te,he,pe),Ne=O(f.p2,te,he,pe),Ge=O(f.p3,te,he,pe),Ve=O(f.p4,te,he,pe);if(!He||!Ne||!Ge||!Ve)return;H(He,Ne,Ge,Ve);return}if(G.current==="handle1"){const K={rawTime:L,normalizedTime:D,price:E},z={rawTime:L,normalizedTime:D,price:f.p2.price};H(K,z,f.p3,f.p4);return}if(G.current==="handle3"){const K={rawTime:L,normalizedTime:D,price:E},z={rawTime:L,normalizedTime:D,price:f.p4.price};H(f.p1,f.p2,K,z);return}if(G.current==="handle2"||G.current==="handle4"){const K=G.current==="handle2"?f.p2:f.p4,z=E-K.price,$={rawTime:f.p1.rawTime,normalizedTime:f.p1.normalizedTime??Y(f.p1.rawTime),price:f.p2.price+z},te={rawTime:f.p3.rawTime,normalizedTime:f.p3.normalizedTime??Y(f.p3.rawTime),price:f.p4.price+z};if($.normalizedTime==null||te.normalizedTime==null)return;H(f.p1,$,f.p3,te);return}}if(u.type==="fibonacci"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="rectangle"&&u.p1&&u.p2){const H=(eA,pA)=>{const QA=u.primitive;if(QA){QA.p1={rawTime:eA.rawTime,price:eA.price},QA.p2={rawTime:pA.rawTime,price:pA.price};try{a.current?.applyOptions({})}catch{}}const WA={...u,p1:eA,p2:pA};Be(_A=>{const zA=_A.map(wt=>wt===u?WA:wt);return p.current=zA,zA}),x(WA),oe.current=WA},f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(U);if(L==null)return;const D=Y(L);if(D==null)return;if(G.current==="line"){const eA=b.timeScale().coordinateToTime(f.x),pA=m.coordinateToPrice(f.y);if(eA==null||pA==null)return;const QA=Y(eA);if(QA==null)return;const WA=D-QA,_A=E-pA,zA=Y(f.p1.normalizedTime+WA),wt=Y(f.p2.normalizedTime+WA);if(zA==null||wt==null)return;const tr=I-eA;H({rawTime:f.p1.rawTime+tr,normalizedTime:zA,price:f.p1.price+_A},{rawTime:f.p2.rawTime+tr,normalizedTime:wt,price:f.p2.price+_A});return}const O=Math.min(f.p1.normalizedTime,f.p2.normalizedTime),K=Math.max(f.p1.normalizedTime,f.p2.normalizedTime),z=Math.max(f.p1.price,f.p2.price),$=Math.min(f.p1.price,f.p2.price),te=f.p1.normalizedTime<=f.p2.normalizedTime?f.p1.rawTime:f.p2.rawTime,he=f.p1.normalizedTime<=f.p2.normalizedTime?f.p2.rawTime:f.p1.rawTime;let pe=O,He=K,Ne=z,Ge=$,Ve=te,nA=he;if((G.current==="handle1"||G.current==="handle4"||G.current==="handle6")&&(pe=D,Ve=L),(G.current==="handle3"||G.current==="handle5"||G.current==="handle8")&&(He=D,nA=L),(G.current==="handle1"||G.current==="handle2"||G.current==="handle3")&&(Ne=E),(G.current==="handle6"||G.current==="handle7"||G.current==="handle8")&&(Ge=E),pe>He){const eA=pe,pA=Ve;pe=He,Ve=nA,He=eA,nA=pA}if(Ne<Ge){const eA=Ne;Ne=Ge,Ge=eA}H({rawTime:Ve,normalizedTime:pe,price:Ne},{rawTime:nA,normalizedTime:He,price:Ge});return}if(u.type==="circle"&&u.p1&&u.p2){const H=(Ne,Ge)=>{const Ve=u.primitive;if(Ve){Ve.p1={rawTime:Ne.rawTime,price:Ne.price},Ve.p2={rawTime:Ge.rawTime,price:Ge.price};try{a.current?.applyOptions({})}catch{}}const nA={...u,p1:Ne,p2:Ge};Be(eA=>{const pA=eA.map(QA=>QA===u?nA:QA);return p.current=pA,pA}),x(nA),oe.current=nA},f=b.timeScale().coordinateToTime(U);if(f==null)return;const L=Y(f);if(L==null)return;if(G.current==="handle2"){H(u.p1,{rawTime:f,normalizedTime:L,price:E});return}const D=ee.current;if(!D)return;const O=b.timeScale().coordinateToTime(D.x),K=m.coordinateToPrice(D.y);if(O==null||K==null)return;const z=Y(O);if(z==null)return;const $=L-z,te=E-K,he=Y(D.p1.normalizedTime+$),pe=Y(D.p2.normalizedTime+$);if(he==null||pe==null)return;const He=I-O;H({rawTime:D.p1.rawTime+He,normalizedTime:he,price:D.p1.price+te},{rawTime:D.p2.rawTime+He,normalizedTime:pe,price:D.p2.price+te});return}if(u.type==="triangle"&&u.p1&&u.p2&&u.p3){const H=(Ve,nA,eA)=>{const pA=u.primitive;if(pA){pA.p1={rawTime:Ve.rawTime,price:Ve.price},pA.p2={rawTime:nA.rawTime,price:nA.price},pA.p3={rawTime:eA.rawTime,price:eA.price};try{a.current?.applyOptions({})}catch{}}const QA={...u,p1:Ve,p2:nA,p3:eA};Be(WA=>{const _A=WA.map(zA=>zA===u?QA:zA);return p.current=_A,_A}),x(QA),oe.current=QA},f=b.timeScale().coordinateToTime(U);if(f==null)return;const L=Y(f);if(L==null)return;if(G.current==="handle1"){H({rawTime:f,normalizedTime:L,price:E},u.p2,u.p3);return}if(G.current==="handle2"){H(u.p1,{rawTime:f,normalizedTime:L,price:E},u.p3);return}if(G.current==="handle3"){H(u.p1,u.p2,{rawTime:f,normalizedTime:L,price:E});return}const D=ee.current;if(!D)return;const O=b.timeScale().coordinateToTime(D.x),K=m.coordinateToPrice(D.y);if(O==null||K==null)return;const z=Y(O);if(z==null)return;const $=L-z,te=E-K,he=I-O,pe=Ve=>{const nA=Ve.normalizedTime??Y(Ve.rawTime);if(nA==null)return null;const eA=Y(nA+$);return eA==null?null:{rawTime:Ve.rawTime+he,normalizedTime:eA,price:Ve.price+te}},He=pe(D.p1),Ne=pe(D.p2),Ge=pe(D.p3);if(!He||!Ne||!Ge)return;H(He,Ne,Ge);return}if(u.type==="ellipse"&&u.p1&&u.p2){const H=(O,K,z=u.minorRatio??.45)=>{const $=u.primitive;if($){$.p1={rawTime:O.rawTime,price:O.price},$.p2={rawTime:K.rawTime,price:K.price},$.minorRatio=Math.max(.05,z);try{a.current?.applyOptions({})}catch{}}const te={...u,p1:O,p2:K,minorRatio:Math.max(.05,z)};Be(he=>{const pe=he.map(He=>He===u?te:He);return p.current=pe,pe}),x(te),oe.current=te},f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(U);if(L==null)return;const D=Y(L);if(D==null)return;if(G.current==="line"){const O=b.timeScale().coordinateToTime(f.x),K=m.coordinateToPrice(f.y);if(O==null||K==null)return;const z=Y(O);if(z==null)return;const $=D-z,te=E-K,he=Y(f.p1.normalizedTime+$),pe=Y(f.p2.normalizedTime+$);if(he==null||pe==null)return;const He=I-O;H({rawTime:f.p1.rawTime+He,normalizedTime:he,price:f.p1.price+te},{rawTime:f.p2.rawTime+He,normalizedTime:pe,price:f.p2.price+te},f.minorRatio??u.minorRatio??.45);return}if(G.current==="handle1"){H({rawTime:L,normalizedTime:D,price:E},u.p2,u.minorRatio??.45);return}if(G.current==="handle3"){H(u.p1,{rawTime:L,normalizedTime:D,price:E},u.minorRatio??.45);return}if(G.current==="handle2"||G.current==="handle4"){const O=b.timeScale().timeToCoordinate(u.p1.rawTime),K=m.priceToCoordinate(u.p1.price),z=b.timeScale().timeToCoordinate(u.p2.rawTime),$=m.priceToCoordinate(u.p2.price);if(O==null||K==null||z==null||$==null)return;const te=(O+z)/2,he=(K+$)/2,pe=z-O,He=$-K,Ne=Math.hypot(pe,He);if(Ne<.001)return;const Ge=-He/Ne,Ve=pe/Ne,nA=Math.abs((U-te)*Ge+(g-he)*Ve),eA=Math.max(.05,nA*2/Ne);H(u.p1,u.p2,eA);return}return}if(u.type==="gannfan"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(u.type==="ganngrid"&&u.p1&&u.p2){const H=(f,L)=>{const D=u.primitive;if(D){D.p1={rawTime:f.rawTime,price:f.price},D.p2={rawTime:L.rawTime,price:L.price};try{a.current?.applyOptions({})}catch{}}const O={...u,p1:f,p2:L};Be(K=>{const z=K.map($=>$===u?O:$);return p.current=z,z}),x(O),oe.current=O};if(G.current==="handle1"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H({rawTime:f,normalizedTime:_,price:E},u.p2)}else if(G.current==="handle2"){const f=b.timeScale().coordinateToTime(U);if(f==null)return;H(u.p1,{rawTime:f,normalizedTime:_,price:E})}else if(G.current==="line"){const f=ee.current;if(!f)return;const L=b.timeScale().coordinateToTime(f.x),D=m.coordinateToPrice(f.y);if(L==null||D==null)return;const O=_-Y(L),K=E-D,z=Y(f.p1.normalizedTime+O),$=Y(f.p2.normalizedTime+O);if(z==null||$==null)return;const te=I-L;H({rawTime:f.p1.rawTime+te,normalizedTime:z,price:f.p1.price+K},{rawTime:f.p2.rawTime+te,normalizedTime:$,price:f.p2.price+K})}return}if(!(u.type!=="trendline"&&u.type!=="gannline")&&!(!u.point1||!u.point2)){if(G.current==="handle1"){const H={time:_,price:E},f=Ar([{time:H.time,value:H.price},{time:u.point2.time,value:u.point2.price}]);f.length>0&&u.series.setData(f);const L={...u,point1:H};Be(D=>{const O=D.map(K=>K===u?L:K);return p.current=O,O}),x(L),oe.current=L}else if(G.current==="handle2"){const H={time:_,price:E},f=Ar([{time:u.point1.time,value:u.point1.price},{time:H.time,value:H.price}]);f.length>0&&u.series.setData(f);const L={...u,point2:H};Be(D=>{const O=D.map(K=>K===u?L:K);return p.current=O,O}),x(L),oe.current=L}else if(G.current==="line"){const H=ee.current;if(!H)return;const f=b.timeScale().coordinateToTime(H.x),L=m.coordinateToPrice(H.y);if(f==null||L==null)return;const D=_-f,O=E-L,K={time:Y(H.point1.time+D),price:H.point1.price+O},z={time:Y(H.point2.time+D),price:H.point2.price+O},$=Ar([{time:K.time,value:K.price},{time:z.time,value:z.price}]);$.length>0&&u.series.setData($);const te={...u,point1:K,point2:z};Be(he=>{const pe=he.map(He=>He===u?te:He);return p.current=pe,pe}),x(te),oe.current=te}}}},P=()=>{G.current=null,ee.current=null},re=()=>{G.current||oe.current||(X(null),ae([]))},Ae={capture:!0,passive:!1};return R.addEventListener("mousedown",ce,Ae),R.addEventListener("mousemove",M,Ae),R.addEventListener("mouseup",P,Ae),R.addEventListener("mouseleave",re,Ae),()=>{R.removeEventListener("mousedown",ce,Ae),R.removeEventListener("mousemove",M,Ae),R.removeEventListener("mouseup",P,Ae),R.removeEventListener("mouseleave",re,Ae)}},[ve,ne,_e,Be]),J.useEffect(()=>{const b=a.current,m=l.current;if(!b||!m)return;const R=()=>{const Q=k;if(!Q){N([]);return}const q=b.timeScale();if(Q.type==="infoline"&&Q.p1&&Q.p2){const se=Q.p1.rawTime??Q.p1.time,ie=Q.p2.rawTime??Q.p2.time,ce=q.timeToCoordinate(se),M=m.priceToCoordinate(Q.p1.price),P=q.timeToCoordinate(ie),re=m.priceToCoordinate(Q.p2.price);ce!=null&&M!=null&&P!=null&&re!=null?N([{x:ce,y:M},{x:P,y:re}]):N([]);return}if(Q.type==="rulerline"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:(se+ce)/2,y:(ie+M)/2},{x:ce,y:M}]):N([]);return}if(Q.type==="arrowedline"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="rayline"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="extendedline"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="crossline"&&Q.p){const se=q.timeToCoordinate(Q.p.rawTime),ie=m.priceToCoordinate(Q.p.price);se!=null&&ie!=null?N([{x:se,y:ie}]):N([]);return}if(Q.type==="trendbyangle"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="equidistantchannel"&&Q.p1&&Q.p2&&Q.b1&&Q.b2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price),P=q.timeToCoordinate(Q.b1.rawTime),re=m.priceToCoordinate(Q.b1.price),Ae=q.timeToCoordinate(Q.b2.rawTime),B=m.priceToCoordinate(Q.b2.price);se!=null&&ie!=null&&ce!=null&&M!=null&&P!=null&&re!=null&&Ae!=null&&B!=null?N([{x:se,y:ie},{x:ce,y:M},{x:(P+Ae)/2,y:(re+B)/2}]):N([]);return}if(Q.type==="regressionchannel"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="stddevchannel"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="andrewspitchfork"&&Q.p1&&Q.p2&&Q.p3){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price),P=q.timeToCoordinate(Q.p3.rawTime),re=m.priceToCoordinate(Q.p3.price);se!=null&&ie!=null&&ce!=null&&M!=null&&P!=null&&re!=null?N([{x:se,y:ie},{x:ce,y:M},{x:P,y:re}]):N([]);return}if(Q.type==="disjointchannel"&&Q.p1&&Q.p2&&Q.p3&&Q.p4){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price),P=q.timeToCoordinate(Q.p3.rawTime),re=m.priceToCoordinate(Q.p3.price),Ae=q.timeToCoordinate(Q.p4.rawTime),B=m.priceToCoordinate(Q.p4.price);se!=null&&ie!=null&&ce!=null&&M!=null&&P!=null&&re!=null&&Ae!=null&&B!=null?N([{x:se,y:ie},{x:ce,y:M},{x:P,y:re},{x:Ae,y:B}]):N([]);return}if(Q.type==="flattopbottom"&&Q.p1&&Q.p2&&Q.p3&&Q.p4){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price),P=q.timeToCoordinate(Q.p3.rawTime),re=m.priceToCoordinate(Q.p3.price),Ae=q.timeToCoordinate(Q.p4.rawTime),B=m.priceToCoordinate(Q.p4.price);se!=null&&ie!=null&&ce!=null&&M!=null&&P!=null&&re!=null&&Ae!=null&&B!=null?N([{x:se,y:ie},{x:ce,y:M},{x:P,y:re},{x:Ae,y:B}]):N([]);return}if(Q.type==="fibonacci"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="trendline"&&Q.point1&&Q.point2){const se=q.timeToCoordinate(Q.point1.time),ie=m.priceToCoordinate(Q.point1.price),ce=q.timeToCoordinate(Q.point2.time),M=m.priceToCoordinate(Q.point2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="gannline"&&Q.point1&&Q.point2){const se=q.timeToCoordinate(Q.point1.time),ie=m.priceToCoordinate(Q.point1.price),ce=q.timeToCoordinate(Q.point2.time),M=m.priceToCoordinate(Q.point2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:(se+ce)/2,y:(ie+M)/2},{x:ce,y:M}]):N([]);return}if(Q.type==="rectangle"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);if(se!=null&&ie!=null&&ce!=null&&M!=null){const P=Math.min(se,ce),re=Math.max(se,ce),Ae=Math.min(ie,M),B=Math.max(ie,M),T=(P+re)/2,U=(Ae+B)/2;N([{x:P,y:Ae},{x:T,y:Ae},{x:re,y:Ae},{x:P,y:U},{x:re,y:U},{x:P,y:B},{x:T,y:B},{x:re,y:B}])}else N([]);return}if(Q.type==="circle"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="triangle"&&Q.p1&&Q.p2&&Q.p3){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price),P=q.timeToCoordinate(Q.p3.rawTime),re=m.priceToCoordinate(Q.p3.price);se!=null&&ie!=null&&ce!=null&&M!=null&&P!=null&&re!=null?N([{x:se,y:ie},{x:ce,y:M},{x:P,y:re}]):N([]);return}if(Q.type==="ellipse"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);if(se!=null&&ie!=null&&ce!=null&&M!=null){const P=(se+ce)/2,re=(ie+M)/2,Ae=ce-se,B=M-ie,T=Math.hypot(Ae,B);if(T<.001){N([]);return}const U=Ae/T,g=B/T,u=-g,I=U,E=T/2,_=E*Math.max(.05,Q.minorRatio??.45);N([{x:P-U*E,y:re-g*E},{x:P+u*_,y:re+I*_},{x:P+U*E,y:re+g*E},{x:P-u*_,y:re-I*_}])}else N([]);return}if(Q.type==="gannfan"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}if(Q.type==="ganngrid"&&Q.p1&&Q.p2){const se=q.timeToCoordinate(Q.p1.rawTime),ie=m.priceToCoordinate(Q.p1.price),ce=q.timeToCoordinate(Q.p2.rawTime),M=m.priceToCoordinate(Q.p2.price);se!=null&&ie!=null&&ce!=null&&M!=null?N([{x:se,y:ie},{x:ce,y:M}]):N([]);return}N([])};R();const Se=b.timeScale();return Se.subscribeVisibleTimeRangeChange(R),()=>{Se.unsubscribeVisibleTimeRangeChange(R)}},[k]),J.useEffect(()=>{!a.current||!l.current||p.current.forEach(b=>{if(b.series&&b.series.applyOptions({visible:de}),b.priceLine&&b.priceLine.applyOptions(de?{color:"#3b82f6",axisLabelVisible:!0,title:typeof b.price=="number"?b.price.toFixed(5):""}:{color:"rgba(0,0,0,0)",axisLabelVisible:!1,title:""}),b.type==="fibonacci"&&b.primitive){b.primitive.visible=de;try{a.current?.applyOptions({})}catch{}}if(b.type==="rectangle"&&b.primitive){b.primitive.visible=de;try{a.current?.applyOptions({})}catch{}}if(b.type==="parallellines"&&(b.baseLine&&b.baseLine.applyOptions({visible:de}),b.parallelLine&&b.parallelLine.applyOptions({visible:de}),b.firstLine&&b.firstLine.applyOptions({visible:de}),b.secondLine&&b.secondLine.applyOptions({visible:de})),(b.type==="horizontalray"||b.type==="verticalline"||b.type==="infoline"||b.type==="rulerline"||b.type==="arrowedline"||b.type==="rayline"||b.type==="extendedline"||b.type==="crossline"||b.type==="trendbyangle"||b.type==="equidistantchannel"||b.type==="regressionchannel"||b.type==="stddevchannel"||b.type==="gannfan"||b.type==="ganngrid"||b.type==="andrewspitchfork"||b.type==="disjointchannel"||b.type==="flattopbottom"||b.type==="circle"||b.type==="triangle"||b.type==="ellipse")&&b.primitive){b.primitive.visible=de;try{a.current?.applyOptions({})}catch{}}})},[de,_e]),J.useEffect(()=>{!de&&k&&(x(null),N([]))},[de,k]),J.useEffect(()=>{if(p.current.length>_e.length){const b=p.current.filter((m,R)=>!_e.includes(m));k&&b.some(m=>m===k)&&(x(null),N([])),b.forEach(m=>{if(m.series&&a.current?.removeSeries(m.series),m.priceLine&&l.current?.removePriceLine(m.priceLine),m.type==="horizontalray"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="verticalline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="infoline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="rulerline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="arrowedline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="rayline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="extendedline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="crossline"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="trendbyangle"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="equidistantchannel"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="regressionchannel"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="stddevchannel"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="gannfan"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="ganngrid"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="andrewspitchfork"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="disjointchannel"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="flattopbottom"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="fibonacci"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="rectangle"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="circle"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="triangle"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="ellipse"&&m.primitive)try{l.current?.detachPrimitive(m.primitive)}catch{}if(m.type==="parallellines")try{m.baseLine&&a.current?.removeSeries(m.baseLine),m.parallelLine&&a.current?.removeSeries(m.parallelLine),m.firstLine&&a.current?.removeSeries(m.firstLine),m.secondLine&&a.current?.removeSeries(m.secondLine)}catch{}}),p.current=_e}},[_e,k]),J.useEffect(()=>{const b=l.current;return b?(je.current.forEach(R=>{try{b.removePriceLine(R)}catch{}}),je.current=[],iA.filter(R=>R.symbol===Ee).forEach(R=>{const Se=parseFloat(R.price);if(isNaN(Se))return;const q=R.type==="BUY"?"#26A69A":"#EF5350",se=b.createPriceLine({price:Se,color:q,lineWidth:2,lineStyle:0,axisLabelVisible:!0,title:`${R.type} ${R.volume} @ ${R.price}`,textColor:q});je.current.push(se)}),()=>{je.current.forEach(R=>{try{b.removePriceLine(R)}catch{}}),je.current=[]}):void 0},[iA,Ee]),J.useEffect(()=>{const b=o.current;if(!b)return;const m=R=>{y.current||!a.current||(R.preventDefault(),R.stopPropagation(),typeof R.stopImmediatePropagation=="function"&&R.stopImmediatePropagation(),setTimeout(()=>{if(!a.current)return;Vv(a.current,ne,Te)||a.current.timeScale().fitContent();const Q=a.current.timeScale().getVisibleRange();ye(Q)},80))};return b.addEventListener("dblclick",m,!0),()=>{b.removeEventListener("dblclick",m,!0)}},[ne,Te]);const Kt=k??Z,Qr=k?V:W,VA=de&&kv(Kt,Qr),BA=Ov(Kt?.type);return h.jsx("div",{className:`flex-1 flex flex-col min-w-0 overflow-hidden ${Re==="light"?"bg-white":"bg-[#12161d]"}`,children:h.jsxs("div",{ref:o,className:"flex-1 w-full h-full relative",style:{cursor:ve===1||ve!==null?"crosshair":"default",minHeight:0,minWidth:0},children:[t&&h.jsx("div",{className:"absolute top-3 left-3 z-50",children:h.jsx(Jc,{bidPrice:e,askPrice:A,onBuyClick:ts,onSellClick:Ca})}),h.jsx(Zc,{isOpen:we,onClose:va,orderType:Ie,bidPrice:e,askPrice:A}),VA&&h.jsx("div",{className:"absolute inset-0 z-20 pointer-events-none","aria-hidden":!0,children:Qr.map((b,m)=>h.jsx("div",{className:"absolute w-[10px] h-[10px] rounded-full border-2 border-white shadow",style:{left:b.x-5,top:b.y-5,backgroundColor:BA}},m))})]})})}),lA={container:{position:"relative",display:"inline-block",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},button:{display:"flex",alignItems:"center",gap:"6px",padding:"6px 12px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"6px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,cursor:"pointer",minWidth:"120px",justifyContent:"space-between",transition:"all 0.15s ease"},buttonHover:{borderColor:"#3b82f6",backgroundColor:"#1e3a5f"},arrow:{fontSize:"10px",color:"#94a3b8",transition:"transform 0.2s ease"},arrowOpen:{transform:"rotate(180deg)"},dropdown:{position:"absolute",top:"100%",left:0,marginTop:"4px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"8px",boxShadow:"0 8px 24px rgba(0,0,0,0.4)",zIndex:1e3,minWidth:"220px",maxHeight:"320px",overflow:"hidden",display:"flex",flexDirection:"column"},searchContainer:{padding:"8px",borderBottom:"1px solid #334155"},searchInput:{width:"100%",padding:"6px 10px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"12px",outline:"none",boxSizing:"border-box"},list:{overflowY:"auto",maxHeight:"260px",padding:"4px 0"},item:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"8px 12px",cursor:"pointer",fontSize:"13px",color:"#cbd5e1",transition:"background-color 0.1s ease"},itemSelected:{backgroundColor:"#1e3a5f",color:"#60a5fa"},symbolName:{fontWeight:600},symbolPrice:{fontSize:"11px",color:"#94a3b8"},priceUp:{color:"#26A69A"},priceDown:{color:"#EF5350"},categoryLabel:{padding:"6px 12px 4px",fontSize:"10px",fontWeight:700,color:"#64748b",textTransform:"uppercase",letterSpacing:"0.05em"},empty:{padding:"16px",textAlign:"center",color:"#64748b",fontSize:"12px"}};function md({style:r,className:e}){const{selectedSymbol:A,setSelectedSymbol:t,symbols:i,symbolsLoading:n}=FA(),[s,o]=J.useState(!1),[a,l]=J.useState(""),[c,d]=J.useState(-1),p=J.useRef(null),y=J.useRef(null);J.useEffect(()=>{const F=k=>{p.current&&!p.current.contains(k.target)&&(o(!1),l(""))};return document.addEventListener("mousedown",F),()=>document.removeEventListener("mousedown",F)},[]),J.useEffect(()=>{s&&y.current&&y.current.focus()},[s]);const w=i.filter(F=>F.symbol.toLowerCase().includes(a.toLowerCase())),C=w.filter(F=>!F.symbol.endsWith("USDT")),v=w.filter(F=>F.symbol.endsWith("USDT")),S=F=>{t(F),o(!1),l("")};return i.find(F=>F.symbol===A),h.jsxs("div",{ref:p,style:{...lA.container,...r},className:e,children:[h.jsxs("button",{style:lA.button,onClick:()=>o(!s),onMouseEnter:F=>Object.assign(F.currentTarget.style,lA.buttonHover),onMouseLeave:F=>{F.currentTarget.style.borderColor="#334155",F.currentTarget.style.backgroundColor="#1e293b"},children:[h.jsx("span",{children:n?"Loading...":A||"Select Coin"}),h.jsx("span",{style:{...lA.arrow,...s?lA.arrowOpen:{}},children:"▼"})]}),s&&h.jsxs("div",{style:lA.dropdown,children:[h.jsx("div",{style:lA.searchContainer,children:h.jsx("input",{ref:y,style:lA.searchInput,type:"text",placeholder:"Search symbol...",value:a,onChange:F=>l(F.target.value)})}),h.jsx("div",{style:lA.list,children:w.length===0?h.jsx("div",{style:lA.empty,children:"No symbols found"}):h.jsxs(h.Fragment,{children:[C.length>0&&h.jsxs(h.Fragment,{children:[h.jsx("div",{style:lA.categoryLabel,children:"Forex & Metals"}),C.map(F=>h.jsxs("div",{style:{...lA.item,...F.symbol===A?lA.itemSelected:{}},onClick:()=>S(F.symbol),onMouseEnter:k=>{F.symbol!==A&&(k.currentTarget.style.backgroundColor="#334155")},onMouseLeave:k=>{F.symbol!==A&&(k.currentTarget.style.backgroundColor="transparent")},children:[h.jsx("span",{style:lA.symbolName,children:F.symbol}),F.bid&&h.jsx("span",{style:{...lA.symbolPrice,...parseFloat(F.change)>=0?lA.priceUp:lA.priceDown},children:parseFloat(F.bid).toFixed(5)})]},F.symbol))]}),v.length>0&&h.jsxs(h.Fragment,{children:[h.jsx("div",{style:lA.categoryLabel,children:"Crypto"}),v.map(F=>h.jsxs("div",{style:{...lA.item,...F.symbol===A?lA.itemSelected:{}},onClick:()=>S(F.symbol),onMouseEnter:k=>{F.symbol!==A&&(k.currentTarget.style.backgroundColor="#334155")},onMouseLeave:k=>{F.symbol!==A&&(k.currentTarget.style.backgroundColor="transparent")},children:[h.jsx("span",{style:lA.symbolName,children:F.symbol}),F.bid&&h.jsx("span",{style:{...lA.symbolPrice,...parseFloat(F.change)>=0?lA.priceUp:lA.priceDown},children:parseFloat(F.bid).toFixed(2)})]},F.symbol))]})]})})]})]})}const gt={container:{display:"inline-flex",alignItems:"center",gap:"4px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",color:"#94a3b8",fontWeight:600,textTransform:"uppercase",letterSpacing:"0.03em",marginRight:"4px",whiteSpace:"nowrap"},btn:{display:"flex",alignItems:"center",justifyContent:"center",width:"26px",height:"26px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"14px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease",padding:0,lineHeight:1,userSelect:"none"},btnHover:{borderColor:"#3b82f6",backgroundColor:"#1e3a5f"},input:{width:"70px",padding:"4px 6px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,textAlign:"center",outline:"none",boxSizing:"border-box"},presets:{display:"inline-flex",gap:"2px",marginLeft:"4px"},preset:{padding:"3px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"11px",cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},presetActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"}},Gv=[.01,.05,.1,.5,1];function Bd({value:r,onChange:e,min:A=.01,max:t=100,step:i=.01,presets:n=Gv,showPresets:s=!0,showLabel:o=!0,label:a="Vol",style:l,className:c}){const[d,p]=J.useState(.1),y=r!==void 0?r:d,w=J.useCallback(F=>{const k=Math.max(A,Math.min(t,parseFloat(F)||A)),x=Math.round(k/i)*i,V=parseFloat(x.toFixed(8));r!==void 0||p(V),e?.(V)},[A,t,i,r,e]),C=()=>w(y+i),v=()=>w(y-i),S=(y>=1,y.toFixed(2));return h.jsxs("div",{style:{...gt.container,...l},className:c,children:[o&&h.jsx("span",{style:gt.label,children:a}),h.jsx("button",{style:gt.btn,onClick:v,onMouseEnter:F=>Object.assign(F.currentTarget.style,gt.btnHover),onMouseLeave:F=>{F.currentTarget.style.borderColor="#334155",F.currentTarget.style.backgroundColor="#1e293b"},children:"−"}),h.jsx("input",{style:gt.input,type:"text",value:S,onChange:F=>{const k=F.target.value;if(k===""||k==="."||k==="0.")return;const x=parseFloat(k);isNaN(x)||w(x)},onBlur:()=>w(y)}),h.jsx("button",{style:gt.btn,onClick:C,onMouseEnter:F=>Object.assign(F.currentTarget.style,gt.btnHover),onMouseLeave:F=>{F.currentTarget.style.borderColor="#334155",F.currentTarget.style.backgroundColor="#1e293b"},children:"+"}),s&&n&&n.length>0&&h.jsx("div",{style:gt.presets,children:n.map(F=>h.jsx("button",{style:{...gt.preset,...Math.abs(y-F)<1e-4?gt.presetActive:{}},onClick:()=>w(F),onMouseEnter:k=>{Math.abs(y-F)>=1e-4&&Object.assign(k.currentTarget.style,{borderColor:"#3b82f6"})},onMouseLeave:k=>{Math.abs(y-F)>=1e-4&&(k.currentTarget.style.borderColor="#334155")},children:F},F))})]})}const KA={container:{display:"inline-flex",alignItems:"center",gap:"6px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",fontWeight:700,color:"#EF5350",textTransform:"uppercase",letterSpacing:"0.03em",whiteSpace:"nowrap"},toggle:{position:"relative",width:"32px",height:"18px",borderRadius:"9px",cursor:"pointer",transition:"background-color 0.2s ease",border:"none",padding:0},toggleOff:{backgroundColor:"#334155"},toggleOn:{backgroundColor:"#EF5350"},toggleKnob:{position:"absolute",top:"2px",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:"#fff",transition:"left 0.2s ease"},knobOff:{left:"2px"},knobOn:{left:"16px"},inputGroup:{display:"inline-flex",alignItems:"center",gap:"4px"},input:{width:"90px",padding:"4px 8px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,textAlign:"right",outline:"none",boxSizing:"border-box",transition:"border-color 0.15s ease"},modeBtn:{padding:"3px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"10px",cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},modeBtnActive:{backgroundColor:"#3b1515",borderColor:"#EF5350",color:"#EF5350"}};function wd({value:r,onChange:e,enabled:A,onEnabledChange:t,mode:i,onModeChange:n,showToggle:s=!0,showModeSwitch:o=!0,showLabel:a=!0,label:l="SL",style:c,className:d}){const{currentSymbolData:p}=FA(),[y,w]=J.useState(""),[C,v]=J.useState(!1),[S,F]=J.useState("price"),k=r!==void 0?r:y,x=A!==void 0?A:C,V=i!==void 0?i:S,N=J.useCallback(G=>{A!==void 0||v(G),t?.(G)},[A,t]),Z=J.useCallback(G=>{i!==void 0||F(G),n?.(G)},[i,n]),X=J.useCallback(G=>{r!==void 0||w(G),e?.(G)},[r,e]),W=G=>{const ee=G.target.value;if(ee===""||ee==="."||ee==="0."){X(ee);return}const oe=parseFloat(ee);isNaN(oe)||X(ee)},ae=V==="price"?p?.bid?parseFloat(p.bid).toFixed(5):"0.00000":"50";return h.jsxs("div",{style:{...KA.container,...c},className:d,children:[a&&h.jsx("span",{style:KA.label,children:l}),s&&h.jsx("button",{style:{...KA.toggle,...x?KA.toggleOn:KA.toggleOff},onClick:()=>N(!x),children:h.jsx("div",{style:{...KA.toggleKnob,...x?KA.knobOn:KA.knobOff}})}),(x||!s)&&h.jsxs("div",{style:KA.inputGroup,children:[h.jsx("input",{style:KA.input,type:"text",value:k,onChange:W,placeholder:ae,onFocus:G=>G.currentTarget.style.borderColor="#EF5350",onBlur:G=>G.currentTarget.style.borderColor="#334155"}),o&&h.jsxs(h.Fragment,{children:[h.jsx("button",{style:{...KA.modeBtn,...V==="price"?KA.modeBtnActive:{}},onClick:()=>Z("price"),children:"Price"}),h.jsx("button",{style:{...KA.modeBtn,...V==="pips"?KA.modeBtnActive:{}},onClick:()=>Z("pips"),children:"Pips"})]})]})]})}const PA={container:{display:"inline-flex",alignItems:"center",gap:"6px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",fontWeight:700,color:"#26A69A",textTransform:"uppercase",letterSpacing:"0.03em",whiteSpace:"nowrap"},toggle:{position:"relative",width:"32px",height:"18px",borderRadius:"9px",cursor:"pointer",transition:"background-color 0.2s ease",border:"none",padding:0},toggleOff:{backgroundColor:"#334155"},toggleOn:{backgroundColor:"#26A69A"},toggleKnob:{position:"absolute",top:"2px",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:"#fff",transition:"left 0.2s ease"},knobOff:{left:"2px"},knobOn:{left:"16px"},inputGroup:{display:"inline-flex",alignItems:"center",gap:"4px"},input:{width:"90px",padding:"4px 8px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,textAlign:"right",outline:"none",boxSizing:"border-box",transition:"border-color 0.15s ease"},modeBtn:{padding:"3px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"10px",cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},modeBtnActive:{backgroundColor:"#0d2e2a",borderColor:"#26A69A",color:"#26A69A"}};function Cd({value:r,onChange:e,enabled:A,onEnabledChange:t,mode:i,onModeChange:n,showToggle:s=!0,showModeSwitch:o=!0,showLabel:a=!0,label:l="TP",style:c,className:d}){const{currentSymbolData:p}=FA(),[y,w]=J.useState(""),[C,v]=J.useState(!1),[S,F]=J.useState("price"),k=r!==void 0?r:y,x=A!==void 0?A:C,V=i!==void 0?i:S,N=J.useCallback(G=>{A!==void 0||v(G),t?.(G)},[A,t]),Z=J.useCallback(G=>{i!==void 0||F(G),n?.(G)},[i,n]),X=J.useCallback(G=>{r!==void 0||w(G),e?.(G)},[r,e]),W=G=>{const ee=G.target.value;if(ee===""||ee==="."||ee==="0."){X(ee);return}const oe=parseFloat(ee);isNaN(oe)||X(ee)},ae=V==="price"?p?.ask?parseFloat(p.ask).toFixed(5):"0.00000":"50";return h.jsxs("div",{style:{...PA.container,...c},className:d,children:[a&&h.jsx("span",{style:PA.label,children:l}),s&&h.jsx("button",{style:{...PA.toggle,...x?PA.toggleOn:PA.toggleOff},onClick:()=>N(!x),children:h.jsx("div",{style:{...PA.toggleKnob,...x?PA.knobOn:PA.knobOff}})}),(x||!s)&&h.jsxs("div",{style:PA.inputGroup,children:[h.jsx("input",{style:PA.input,type:"text",value:k,onChange:W,placeholder:ae,onFocus:G=>G.currentTarget.style.borderColor="#26A69A",onBlur:G=>G.currentTarget.style.borderColor="#334155"}),o&&h.jsxs(h.Fragment,{children:[h.jsx("button",{style:{...PA.modeBtn,...V==="price"?PA.modeBtnActive:{}},onClick:()=>Z("price"),children:"Price"}),h.jsx("button",{style:{...PA.modeBtn,...V==="pips"?PA.modeBtnActive:{}},onClick:()=>Z("pips"),children:"Pips"})]})]})]})}const Rv=[{id:1,name:"Crosshair",icon:"+"},{id:2,name:"Trend Line",icon:"╱"},{id:3,name:"Parallel Channel",icon:"═"},{id:4,name:"Fibonacci",icon:"≡"},{id:5,name:"Rectangle",icon:"▭"},{id:6,name:"Price Level",icon:"─"}],mt={container:{display:"inline-flex",alignItems:"center",gap:"2px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",color:"#94a3b8",fontWeight:600,textTransform:"uppercase",letterSpacing:"0.03em",marginRight:"4px",whiteSpace:"nowrap"},btn:{display:"flex",alignItems:"center",justifyContent:"center",width:"30px",height:"30px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"14px",cursor:"pointer",transition:"all 0.15s ease",padding:0,position:"relative"},btnActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"},btnHover:{borderColor:"#3b82f6",backgroundColor:"#1e3a5f"},tooltip:{position:"absolute",bottom:"calc(100% + 6px)",left:"50%",transform:"translateX(-50%)",padding:"4px 8px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"11px",whiteSpace:"nowrap",pointerEvents:"none",zIndex:100},divider:{width:"1px",height:"20px",backgroundColor:"#334155",margin:"0 4px"},deleteBtn:{display:"flex",alignItems:"center",justifyContent:"center",width:"30px",height:"30px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"13px",cursor:"pointer",transition:"all 0.15s ease",padding:0},deleteBtnHover:{borderColor:"#EF5350",backgroundColor:"#3b1515",color:"#EF5350"},visibilityBtn:{display:"flex",alignItems:"center",justifyContent:"center",width:"30px",height:"30px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"13px",cursor:"pointer",transition:"all 0.15s ease",padding:0}};function vd({showLabel:r=!0,showDelete:e=!0,showVisibility:A=!0,tools:t,label:i="Draw",style:n,className:s}){const{activeTool:o,setActiveTool:a,drawingsVisible:l,setDrawingsVisible:c,chartObjects:d,setChartObjects:p}=FA(),[y,w]=J.useState(null),C=t||Rv,v=k=>{a(o===k?null:k)},S=()=>{p([]),a(null)},F=()=>{c(!l)};return h.jsxs("div",{style:{...mt.container,...n},className:s,children:[r&&h.jsx("span",{style:mt.label,children:i}),C.map(k=>h.jsxs("button",{style:{...mt.btn,...o===k.id?mt.btnActive:{}},onClick:()=>v(k.id),onMouseEnter:x=>{w(k.id),o!==k.id&&Object.assign(x.currentTarget.style,mt.btnHover)},onMouseLeave:x=>{w(null),o!==k.id&&(x.currentTarget.style.borderColor="#334155",x.currentTarget.style.backgroundColor="#1e293b",x.currentTarget.style.color="#94a3b8")},title:k.name,children:[k.icon,y===k.id&&h.jsx("div",{style:mt.tooltip,children:k.name})]},k.id)),(e||A)&&h.jsx("div",{style:mt.divider}),A&&h.jsx("button",{style:{...mt.visibilityBtn,...l?{}:{color:"#64748b",backgroundColor:"#0f172a"}},onClick:F,onMouseEnter:k=>{k.currentTarget.style.borderColor="#3b82f6"},onMouseLeave:k=>{k.currentTarget.style.borderColor="#334155"},title:l?"Hide Drawings":"Show Drawings",children:l?"👁":"○"}),e&&h.jsx("button",{style:mt.deleteBtn,onClick:S,onMouseEnter:k=>Object.assign(k.currentTarget.style,mt.deleteBtnHover),onMouseLeave:k=>{k.currentTarget.style.borderColor="#334155",k.currentTarget.style.backgroundColor="#1e293b",k.currentTarget.style.color="#94a3b8"},title:"Delete All Drawings",children:"🗑"})]})}const yd={toolbar:{display:"flex",alignItems:"center",gap:"12px",padding:"6px 12px",backgroundColor:"#0f172a",borderBottom:"1px solid #1e293b",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",flexWrap:"wrap",minHeight:"42px"},divider:{width:"1px",height:"24px",backgroundColor:"#1e293b",flexShrink:0}};function Wv({showCoinSelector:r=!0,showVolumeControl:e=!0,showStopLoss:A=!0,showTakeProfit:t=!0,showDrawingTools:i=!0,showDividers:n=!0,volume:s,onVolumeChange:o,stopLoss:a,onStopLossChange:l,stopLossEnabled:c,onStopLossEnabledChange:d,takeProfit:p,onTakeProfitChange:y,takeProfitEnabled:w,onTakeProfitEnabledChange:C,coinSelectorProps:v={},volumeControlProps:S={},stopLossProps:F={},takeProfitProps:k={},drawingToolsProps:x={},style:V,className:N}){const Z=[];r&&Z.push(h.jsx(md,{...v},"coin")),e&&Z.push(h.jsx(Bd,{value:s,onChange:o,...S},"volume")),A&&Z.push(h.jsx(wd,{value:a,onChange:l,enabled:c,onEnabledChange:d,...F},"sl")),t&&Z.push(h.jsx(Cd,{value:p,onChange:y,enabled:w,onEnabledChange:C,...k},"tp")),i&&Z.push(h.jsx(vd,{...x},"draw"));const X=[];return Z.forEach((W,ae)=>{X.push(W),n&&ae<Z.length-1&&X.push(h.jsx("div",{style:yd.divider},`div-${ae}`))}),h.jsx("div",{style:{...yd.toolbar,...V},className:N,children:X})}const $v=[{label:"M1",value:"M1"},{label:"M5",value:"M5"},{label:"M15",value:"M15"},{label:"M30",value:"M30"},{label:"H1",value:"H1"},{label:"H4",value:"H4"},{label:"D1",value:"D1"},{label:"W1",value:"W1"}],Ba={container:{display:"inline-flex",alignItems:"center",gap:"2px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},btn:{padding:"4px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"11px",fontWeight:600,cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},btnActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"}};function Xv({style:r,className:e}){const{selectedTimeframe:A,setSelectedTimeframe:t}=FA();return h.jsx("div",{style:{...Ba.container,...r},className:e,children:$v.map(i=>h.jsx("button",{style:{...Ba.btn,...A===i.value?Ba.btnActive:{}},onClick:()=>t(i.value),onMouseEnter:n=>{A!==i.value&&(n.currentTarget.style.borderColor="#3b82f6")},onMouseLeave:n=>{A!==i.value&&(n.currentTarget.style.borderColor="#334155")},children:i.label},i.value))})}const Jv=[{label:"Candles",value:"candles",icon:"📊"},{label:"Line",value:"line",icon:"📈"},{label:"Area",value:"area",icon:"▤"},{label:"Bars",value:"bars",icon:"▥"}],wa={container:{display:"inline-flex",alignItems:"center",gap:"2px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},btn:{padding:"4px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"11px",fontWeight:600,cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap",display:"flex",alignItems:"center",gap:"3px"},btnActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"}};function Zv({style:r,className:e}){const{chartType:A,setChartType:t}=FA();return h.jsx("div",{style:{...wa.container,...r},className:e,children:Jv.map(i=>h.jsxs("button",{style:{...wa.btn,...A===i.value?wa.btnActive:{}},onClick:()=>t(i.value),onMouseEnter:n=>{A!==i.value&&(n.currentTarget.style.borderColor="#3b82f6")},onMouseLeave:n=>{A!==i.value&&(n.currentTarget.style.borderColor="#334155")},title:i.label,children:[h.jsx("span",{children:i.icon}),h.jsx("span",{children:i.label})]},i.value))})}const IA={container:{display:"inline-flex",alignItems:"center",gap:"6px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},priceBox:{display:"flex",flexDirection:"column",alignItems:"center",padding:"4px 10px",backgroundColor:"#0f172a",borderRadius:"4px",minWidth:"80px"},priceLabel:{fontSize:"9px",color:"#64748b",textTransform:"uppercase",fontWeight:600,letterSpacing:"0.05em"},priceValue:{fontSize:"13px",fontWeight:700,fontFamily:"monospace"},spread:{fontSize:"9px",color:"#64748b",padding:"0 4px",display:"flex",flexDirection:"column",alignItems:"center",gap:"1px"},spreadLabel:{fontSize:"8px",textTransform:"uppercase",letterSpacing:"0.05em"},spreadValue:{fontSize:"10px",fontWeight:700,color:"#94a3b8"},sellBtn:{padding:"6px 16px",backgroundColor:"#7f1d1d",border:"1px solid #991b1b",borderRadius:"4px",color:"#fca5a5",fontSize:"12px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease",textTransform:"uppercase",letterSpacing:"0.03em",minWidth:"70px"},sellBtnHover:{backgroundColor:"#991b1b",borderColor:"#EF5350"},buyBtn:{padding:"6px 16px",backgroundColor:"#14532d",border:"1px solid #166534",borderRadius:"4px",color:"#86efac",fontSize:"12px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease",textTransform:"uppercase",letterSpacing:"0.03em",minWidth:"70px"},buyBtnHover:{backgroundColor:"#166534",borderColor:"#26A69A"},status:{fontSize:"10px",padding:"2px 8px",borderRadius:"3px",fontWeight:600,whiteSpace:"nowrap"}};function qv({volume:r=.1,stopLoss:e,takeProfit:A,onTradeExecuted:t,style:i,className:n}){const{selectedSymbol:s,currentSymbolData:o,setOrders:a,setUserBalance:l}=FA(),[c,d]=J.useState(null),p=parseFloat(o?.bid||0),y=parseFloat(o?.ask||0),w=y>0&&p>0?Math.abs(y-p):0,C=F=>!F||F===0?"-.-----":F>=1e3?F.toFixed(2):F>=1?F.toFixed(4):F.toFixed(5),v=F=>F===0?"-":F>=1?F.toFixed(1):F>=.01?F.toFixed(3):(F*1e4).toFixed(1)+"p",S=J.useCallback(F=>{if(!s)return;const k=F==="BUY"?y:p;if(!k||k<=0){d({type:"error",message:"No price available"});return}const x={id:Date.now().toString(),ticket:Math.floor(Math.random()*9e5)+1e5,symbol:s,type:F,volume:r,price:k,stopLoss:e?parseFloat(e):null,takeProfit:A?parseFloat(A):null,status:"OPEN",profit:0,swap:0,openAt:new Date().toISOString(),time:new Date().toLocaleTimeString()};a(N=>[...N,x]);const V=r*k*.01;l(N=>N-V),d({type:"success",message:`${F} executed`}),t?.(x),setTimeout(()=>d(null),3e3)},[s,y,p,r,e,A,a,l,t]);return h.jsxs("div",{style:{...IA.container,...i},className:n,children:[h.jsx("button",{style:IA.sellBtn,onClick:()=>S("SELL"),onMouseEnter:F=>{Object.assign(F.currentTarget.style,IA.sellBtnHover)},onMouseLeave:F=>{F.currentTarget.style.backgroundColor="#7f1d1d",F.currentTarget.style.borderColor="#991b1b"},children:"Sell"}),h.jsxs("div",{style:IA.priceBox,children:[h.jsx("span",{style:IA.priceLabel,children:"Bid"}),h.jsx("span",{style:{...IA.priceValue,color:"#EF5350"},children:C(p)})]}),h.jsxs("div",{style:IA.spread,children:[h.jsx("span",{style:IA.spreadLabel,children:"Spread"}),h.jsx("span",{style:IA.spreadValue,children:v(w)})]}),h.jsxs("div",{style:IA.priceBox,children:[h.jsx("span",{style:IA.priceLabel,children:"Ask"}),h.jsx("span",{style:{...IA.priceValue,color:"#26A69A"},children:C(y)})]}),h.jsx("button",{style:IA.buyBtn,onClick:()=>S("BUY"),onMouseEnter:F=>{Object.assign(F.currentTarget.style,IA.buyBtnHover)},onMouseLeave:F=>{F.currentTarget.style.backgroundColor="#14532d",F.currentTarget.style.borderColor="#166534"},children:"Buy"}),c&&h.jsx("span",{style:{...IA.status,backgroundColor:c.type==="success"?"#14532d":"#7f1d1d",color:c.type==="success"?"#86efac":"#fca5a5",border:`1px solid ${c.type==="success"?"#166534":"#991b1b"}`},children:c.message})]})}const $e={container:{fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",backgroundColor:"#0f172a",borderTop:"1px solid #1e293b",fontSize:"11px",overflow:"hidden",display:"flex",flexDirection:"column"},header:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"6px 12px",backgroundColor:"#0f172a",borderBottom:"1px solid #1e293b"},headerTitle:{color:"#94a3b8",fontSize:"11px",fontWeight:700,textTransform:"uppercase",letterSpacing:"0.05em"},summary:{display:"flex",gap:"16px",fontSize:"11px"},summaryItem:{display:"flex",gap:"4px",alignItems:"center"},summaryLabel:{color:"#64748b",fontWeight:600},summaryValue:{fontWeight:700,fontFamily:"monospace"},table:{width:"100%",borderCollapse:"collapse"},th:{padding:"4px 8px",textAlign:"left",color:"#64748b",fontWeight:700,fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.05em",borderBottom:"1px solid #1e293b",whiteSpace:"nowrap"},td:{padding:"4px 8px",color:"#cbd5e1",borderBottom:"1px solid #1e293b",whiteSpace:"nowrap",fontFamily:"monospace",fontSize:"11px"},closeBtn:{padding:"2px 8px",backgroundColor:"#7f1d1d",border:"1px solid #991b1b",borderRadius:"3px",color:"#fca5a5",fontSize:"10px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease"},emptyRow:{padding:"16px",textAlign:"center",color:"#475569",fontSize:"12px"},scrollArea:{overflowY:"auto",maxHeight:"200px"},typeBuy:{color:"#26A69A",fontWeight:700},typeSell:{color:"#EF5350",fontWeight:700}};function Yv({style:r,className:e,maxHeight:A=200}){const{orders:t,setOrders:i,symbols:n,accountSummary:s,setUserBalance:o}=FA(),[a,l]=J.useState(null),c=t.filter(C=>C.status==="OPEN"||!C.closeAt),d=J.useCallback((C,v)=>{const S=n.find(F=>F.symbol===C);return S?parseFloat(v==="BUY"?S.bid||0:S.ask||0):0},[n]),p=J.useCallback(C=>{if(a)return;l(C.id);const v=d(C.symbol,C.type),F=(C.type==="BUY"?v-C.price:C.price-v)*C.volume,k=C.volume*C.price*.01;i(x=>x.filter(V=>V.id!==C.id)),o(x=>x+k+F),l(null)},[a,d,i,o]),y=C=>{const v=parseFloat(C);return!v||isNaN(v)?"-":v>=1e3?v.toFixed(2):v>=1?v.toFixed(4):v.toFixed(5)},w=C=>{const v=parseFloat(C);return isNaN(v)?"-":(v>=0?"+":"")+v.toFixed(2)};return h.jsxs("div",{style:{...$e.container,...r},className:e,children:[h.jsxs("div",{style:$e.header,children:[h.jsxs("span",{style:$e.headerTitle,children:["Positions (",c.length,")"]}),h.jsxs("div",{style:$e.summary,children:[h.jsxs("div",{style:$e.summaryItem,children:[h.jsx("span",{style:$e.summaryLabel,children:"Balance:"}),h.jsxs("span",{style:{...$e.summaryValue,color:"#e2e8f0"},children:["$",s?.balance?.toFixed(2)||"0.00"]})]}),h.jsxs("div",{style:$e.summaryItem,children:[h.jsx("span",{style:$e.summaryLabel,children:"Equity:"}),h.jsxs("span",{style:{...$e.summaryValue,color:(s?.equity||0)>=(s?.balance||0)?"#26A69A":"#EF5350"},children:["$",s?.equity?.toFixed(2)||"0.00"]})]}),h.jsxs("div",{style:$e.summaryItem,children:[h.jsx("span",{style:$e.summaryLabel,children:"Free:"}),h.jsxs("span",{style:{...$e.summaryValue,color:"#94a3b8"},children:["$",s?.freeMargin?.toFixed(2)||"0.00"]})]})]})]}),h.jsx("div",{style:{...$e.scrollArea,maxHeight:A},children:h.jsxs("table",{style:$e.table,children:[h.jsx("thead",{children:h.jsxs("tr",{children:[h.jsx("th",{style:$e.th,children:"Symbol"}),h.jsx("th",{style:$e.th,children:"Type"}),h.jsx("th",{style:$e.th,children:"Volume"}),h.jsx("th",{style:$e.th,children:"Open Price"}),h.jsx("th",{style:$e.th,children:"Current"}),h.jsx("th",{style:$e.th,children:"SL"}),h.jsx("th",{style:$e.th,children:"TP"}),h.jsx("th",{style:$e.th,children:"Profit"}),h.jsx("th",{style:$e.th,children:"Action"})]})}),h.jsx("tbody",{children:c.length===0?h.jsx("tr",{children:h.jsx("td",{colSpan:9,style:$e.emptyRow,children:"No open positions"})}):c.map(C=>{const v=d(C.symbol,C.type),S=C.profit||0;return h.jsxs("tr",{children:[h.jsx("td",{style:{...$e.td,fontWeight:700,color:"#e2e8f0"},children:C.symbol}),h.jsx("td",{style:{...$e.td,...C.type==="BUY"?$e.typeBuy:$e.typeSell},children:C.type}),h.jsx("td",{style:$e.td,children:C.volume}),h.jsx("td",{style:$e.td,children:y(C.price)}),h.jsx("td",{style:$e.td,children:y(v)}),h.jsx("td",{style:$e.td,children:C.stopLoss?y(C.stopLoss):"-"}),h.jsx("td",{style:$e.td,children:C.takeProfit?y(C.takeProfit):"-"}),h.jsx("td",{style:{...$e.td,color:S>=0?"#26A69A":"#EF5350",fontWeight:700},children:w(S)}),h.jsx("td",{style:$e.td,children:h.jsx("button",{style:{...$e.closeBtn,...a===C.id?{opacity:.5,cursor:"not-allowed"}:{}},onClick:()=>p(C),disabled:a===C.id,onMouseEnter:F=>{a!==C.id&&(F.currentTarget.style.backgroundColor="#991b1b")},onMouseLeave:F=>{F.currentTarget.style.backgroundColor="#7f1d1d"},children:a===C.id?"...":"Close"})})]},C.id)})})]})})]})}function jv(r){return Wr({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"},child:[]}]})(r)}function ey(r){return Wr({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M19 13H5v-2h14v2z"},child:[]}]})(r)}const Ay=({selectedSymbol:r,selectedTimeframe:e,onTimeframeChange:A,chartType:t="candles",onChartTypeChange:i,onNewOrder:n,onZoomIn:s,onZoomOut:o,onToggleBuySell:a,onDownloadChartPNG:l,onToggleFullscreen:c,marketWatchOpen:d=!0,onToggleMarketWatch:p,buySellPanelOpen:y,onMove:w})=>{const{theme:C}=FA(),v=C==="light",S=["M1","M5","M15","M30","H1","H4","D1","W1","MN"],F={bars:h.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),h.jsx("path",{fillRule:"evenodd",d:"M20.999 15.002H19v3a1 1 0 0 1-2.001 0V8H15a1 1 0 1 1 0-2h1.999v-3A1 1 0 1 1 19 3v10h1.999a1 1 0 0 1 0 2Zm-10.999-4H6.999v10a1 1 0 1 1-1.999 0v-3H3a1 1 0 0 1 0-2h2v-11a1 1 0 1 1 1.999 0V9H10a1 1 0 0 1 0 2Z",clipRule:"evenodd",fill:"currentColor"})]}),candles:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M9 3V9H11V18H9V21H7V18H5V9H7V3H9ZM17 3V6H19V16H17V19H15V16H13V6H15V3H17ZM17 8H15V14H17V8Z",fill:"currentColor"})}),area:h.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),h.jsx("path",{d:"m2.166 16.571 7.013-7.194c.38-.583 1.116-.273 1.707.256l4.14 2.31 5.136-6.692c.277-.425 1.853-.182 1.853-.182v13.952H2.047a7.772 7.772 0 0 1 .119-2.45Z",opacity:".2",fill:"currentColor"}),h.jsx("path",{d:"M3.027 18.011a1 1 0 0 1-.81-1.58c.81-1.128 1.5-2.154 2.113-3.065 1.938-2.887 3.22-4.795 5.234-5.042 1.607-.195 3.364.683 6.28 3.212l4.35-6.086a1 1 0 0 1 1.626 1.16l-4.994 6.99a1 1 0 0 1-1.483.16c-2.824-2.552-4.481-3.587-5.536-3.454-1.108.136-2.186 1.742-3.82 4.173-.621.927-1.323 1.971-2.148 3.117a1.001 1.001 0 0 1-.812.415Z",fill:"currentColor"})]}),line:h.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),h.jsx("path",{d:"M3.027 18.011a1 1 0 0 1-.81-1.58c.81-1.128 1.5-2.154 2.113-3.065 1.938-2.887 3.22-4.795 5.234-5.042 1.607-.195 3.364.683 6.28 3.212l4.35-6.086a1 1 0 0 1 1.626 1.16l-4.994 6.99a1 1 0 0 1-1.483.16c-2.824-2.552-4.481-3.587-5.536-3.454-1.108.136-2.186 1.742-3.82 4.173-.621.927-1.323 1.971-2.148 3.117a1.001 1.001 0 0 1-.812.415Z",fill:"currentColor"})]}),volume:h.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),h.jsx("path",{fillRule:"evenodd",d:"M19.024 17.844H19a1 1 0 0 1-1-1V13a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v3.844a1 1 0 0 1-1 1Zm-3 0H16a1 1 0 0 1-1-1v-5.845A1 1 0 0 1 16 10h.024a1 1 0 0 1 1 .999v5.845a1 1 0 0 1-1 1Zm-3 0H13a1 1 0 0 1-1-1V6.999A1 1 0 0 1 13 6h.024a1 1 0 0 1 1 .999v9.845a1 1 0 0 1-1 1Zm-3 0H10a1 1 0 0 1-1-1V12a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v4.844a1 1 0 0 1-1 1Zm-3 0H7a1 1 0 0 1-1-1V9.999A.999.999 0 0 1 7 9h.024a1 1 0 0 1 1 .999v6.845a1 1 0 0 1-1 1Zm-3 0H4a1 1 0 0 1-1-1v-2.845a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v2.845a1 1 0 0 1-1 1Z",clipRule:"evenodd",fill:"currentColor"})]}),"volume ticks":h.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M0 0h24v24H0z",fill:"none"}),h.jsx("path",{fillRule:"evenodd",d:"M20.009 6.993h-.985v3.985a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1V6.993h-.946c-.565 0-1.023-.441-1.023-.985v-.024c0-.543.458-.984 1.023-.984h3.955c.565 0 1.023.441 1.023.984v.024c0 .544-.458.985-1.023.985Zm-3.985 6.14v5.845a1 1 0 0 1-1 1H15a1 1 0 0 1-1-1v-5.845a1 1 0 0 1 1-.999h.024a1 1 0 0 1 1 .999Zm-4 6.845H12a1 1 0 0 1-1-1V9.133a1 1 0 0 1 1-.999h.024a1 1 0 0 1 1 .999v9.845a1 1 0 0 1-1 1Zm-3 0H9a1 1 0 0 1-1-1v-4.844a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v4.844a1 1 0 0 1-1 1Zm-3 0H6a1 1 0 0 1-1-1v-6.845a.998.998 0 0 1 1-.999h.024a1 1 0 0 1 1 .999v6.845a1 1 0 0 1-1 1Zm-3 0H3a1 1 0 0 1-1-1v-2.845a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v2.845a1 1 0 0 1-1 1ZM18 14.134h.024a1 1 0 0 1 1 1v3.844a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-3.844a1 1 0 0 1 1-1Z",clipRule:"evenodd",fill:"currentColor"})]})};return h.jsxs("div",{className:`flex items-center justify-between px-4 py-1 border-b ${v?"bg-white border-slate-200":"bg-[#12161d] border-slate-700"}`,children:[h.jsxs("div",{className:"flex items-center gap-4",children:[h.jsx("div",{className:`flex items-center gap-1 border-r pr-3 ${v?"border-slate-200":"border-slate-700"}`,children:["bars","candles","line","area"].map(k=>h.jsx("button",{onClick:()=>i(k),className:`px-1 py-1.5 text-[11px] font-medium rounded transition-colors capitalize flex items-center gap-1.5
|
|
11
|
-
|
|
12
|
-
`,title:k,children:F[k]},k))}),h.jsx("div",{className:`flex items-center gap-1 border-r ${v?"border-slate-200":"border-slate-700"} pr-1`,children:["volume ticks","volume"].map(k=>h.jsx("button",{onClick:()=>i(k),className:`px-1 py-1.5 text-[11px] font-medium rounded transition-colors capitalize flex items-center gap-1.5
|
|
13
|
-
${
|
|
14
|
-
`,title:k,children:F[k]},k))}),h.jsxs("div",{className:"flex items-center gap-2",children:[S.map(k=>h.jsx("button",{onClick:()=>A(k),className:`px-1.5 py-2 text-sm font-medium rounded transition-colors ${e===k?v?"text-sky-600":"text-sky-400":v?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-white hover:text-slate-200 hover:bg-slate-800"}`,children:k},k)),h.jsx("div",{className:`border-r h-6 mx-1 ${v?"border-slate-200":"border-slate-700"}`}),h.jsx("button",{onClick:()=>a?.(),title:y?"Hide Buy/Sell on Chart":"Show Buy/Sell on Chart",className:`px-2 py-2 flex justify-center items-center rounded transition-colors ${y?v?"text-sky-600 bg-sky-50 hover:bg-[#E5F4FF]":"text-sky-400 bg-slate-700 hover:bg-[#25303C]":v?"text-slate-600 hover:text-sky-600 hover:bg-[#E5F4FF]":"text-slate-200 hover:bg-[#25303C]"}`,children:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",children:h.jsxs("g",{fill:"none",fillRule:"evenodd",children:[h.jsx("path",{fill:"#DA5244",d:"M11.5 5v4H9c-1.054 0-1.918.816-1.995 1.85L7 11v2c0 1.105.895 2 2 2h2.5v4H4c-1.105 0-2-.895-2-2V7c0-1.105.895-2 2-2h7.5z"}),h.jsx("path",{fill:"#3687ED",d:"M20 5c1.105 0 2 .895 2 2v10c0 1.105-.895 2-2 2h-7.5v-4H15c1.054 0 1.918-.816 1.995-1.85L17 13v-2c0-1.105-.895-2-2-2h-2.5V5H20z"}),h.jsx("path",{fill:"#B0BEC5",d:"M10 10h4c1.105 0 2 .895 2 2s-.895 2-2 2h-4c-1.105 0-2-.895-2-2s.895-2 2-2z"})]})})}),h.jsxs("button",{onClick:n,className:`px-2 py-2 flex justify-center items-center gap-1 cursor-pointer text-xs font-medium rounded transition-colors ${v?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-white hover:bg-[#25303C]"}`,children:[h.jsx("svg",{width:24,height:24,viewBox:"0 0 24 24 ",xmlns:"http://www.w3.org/2000/svg",children:h.jsxs("g",{fill:"none",fillRule:"evenodd",children:[h.jsx("path",{fill:"#DA5244",d:"M11.5 4v2.02C8.42 6.276 6 8.856 6 12c0 3.145 2.42 5.725 5.5 5.98V20H10c-4.418 0-8-3.582-8-8s3.582-8 8-8h1.5z"}),h.jsx("path",{fill:"#3687ED",d:"M14 4c4.418 0 8 3.582 8 8s-3.582 8-8 8h-1.5v-2.02c3.08-.256 5.5-2.836 5.5-5.98 0-3.145-2.42-5.725-5.5-5.98V4H14z"}),h.jsx("path",{fill:"#B0BEC5",d:"M13 8v4.186l2.657 2.657-1.414 1.414L11 13V8z"})]})}),h.jsx("span",{className:"button-text svelte-1iwf8ix",children:"New Order"})]}),h.jsx("div",{className:`border-r ${v?"border-slate-200":"border-slate-700"} h-6 mx-1`}),h.jsxs("div",{className:"flex items-center gap-1",children:[h.jsx("button",{onClick:s,className:`p-1 ${v?"text-slate-700 hover:bg-[#E5F4FF]":"text-white hover:bg-slate-800"} rounded transition-colors`,title:"Zoom In",children:h.jsx(jv,{className:"w-5 h-5"})}),h.jsx("button",{onClick:o,className:`p-2 ${v?"text-slate-700 hover:bg-[#E5F4FF]":"text-white hover:bg-slate-800"} rounded transition-colors`,title:"Zoom Out",children:h.jsx(ey,{className:"w-5 h-5"})}),h.jsx("div",{className:`border-r ${v?"border-slate-200":"border-slate-700"} h-6 mx-1`}),h.jsx("button",{onClick:w,className:`px-2 py-2 flex justify-center items-center gap-1 cursor-pointer text-xs font-medium rounded transition-colors ${v?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-slate-200 hover:bg-[#25303C]"}`,children:h.jsx("svg",{width:24,height:24,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:h.jsx("path",{fillRule:"evenodd",d:"M9 4V5H15V4H17V5H19C20.1046 5 21 5.89543 21 7V18C21 19.1046 20.1046 20 19 20H5C3.89543 20 3 19.1046 3 18V7C3 5.89543 3.89543 5 5 5H7V4H9ZM7 7H6C5.44772 7 5 7.44772 5 8V17C5 17.5523 5.44772 18 6 18H18C18.5523 18 19 17.5523 19 17V8C19 7.44772 18.5523 7 18 7H17V8H15V7H9V8H7V7ZM13 14V16H11V14H13ZM9 14V16H7V14H9ZM17 14V16H15V14H17ZM13 10V12H11V10H13ZM17 10V12H15V10H17Z",clipRule:"evenodd"})})}),h.jsx("div",{className:`border-r ${v?"border-slate-200":"border-slate-700"} h-6 mx-1`}),h.jsx("button",{type:"button",onClick:()=>p?.(),title:d?"Close Market Watch":"Open Market Watch",className:`px-2 py-2 flex justify-center items-center gap-1 cursor-pointer text-xs font-medium rounded transition-colors ${d?v?"text-sky-600 bg-sky-50 hover:bg-[#E5F4FF]":"text-sky-400 bg-slate-700 hover:bg-[#25303C]":v?"text-slate-600 hover:text-sky-600 hover:bg-[#E5F4FF]":"text-slate-200 hover:bg-[#25303C]"}`,children:h.jsxs("svg",{width:24,height:24,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[h.jsx("path",{d:"M15 7H7v2h8V7ZM7 15h5v2H7v-2ZM17 11H7v2h10v-2Z"}),h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14Zm-1 2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h12Z"})]})})]})]})]}),h.jsxs("div",{className:"flex items-center gap-3",children:[h.jsx("button",{type:"button",onClick:()=>l?.(),title:"Download chart as PNG",className:`p-2 rounded transition-colors ${v?"text-slate-500 hover:text-slate-800 hover:bg-slate-100":"text-slate-300 hover:text-white hover:bg-slate-800"}`,children:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",className:"inline-block",fill:"currentColor",children:h.jsx("path",{d:"M22 10a1 1 0 1 1 0-2 1 1 0 0 1 0 2Zm0-4a1 1 0 0 1-1-1V4h-1a1 1 0 1 1 0-2h1a2 2 0 0 1 2 2v1a1 1 0 0 1-1 1Zm1 7v8a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-8l3.764-1s.45-.428.789-1.105l.171-.342a.998.998 0 0 1 .894-.553h4.764a1 1 0 0 1 .894.552l.171.342c.339.678.789 1.106.789 1.106L23 13Zm-8 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6Zm0 4.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3ZM16 4h-2a1 1 0 1 1 0-2h2a1 1 0 1 1 0 2Zm-6 0H8a1 1 0 0 1 0-2h2a1 1 0 1 1 0 2ZM4 22H3a2 2 0 0 1-2-2v-1a1 1 0 1 1 2 0v1h1a1 1 0 1 1 0 2ZM4 4H3v1a1 1 0 0 1-2 0V4a2 2 0 0 1 2-2h1a1 1 0 0 1 0 2ZM2 8a1 1 0 0 1 1 1v1a1 1 0 1 1-2 0V9a1 1 0 0 1 1-1Zm0 5a1 1 0 0 1 1 1v1a1 1 0 1 1-2 0v-1a1 1 0 0 1 1-1Z"})})}),h.jsx("button",{type:"button",onClick:()=>c?.(),title:"Full screen (F11)",className:`p-2 rounded transition-colors ${v?"text-slate-600 hover:text-slate-800 hover:bg-slate-100":"text-slate-300 hover:text-white hover:bg-slate-800"}`,children:h.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"})})})]})]})},pi=[{label:"Trendline",toolId:2,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),h.jsx("path",{fillRule:"evenodd",d:"M19.054 7.988a2.988 2.988 0 0 1-1.31-.312l-10 10a3.027 3.027 0 1 1-1.38-1.381l10-10a2.994 2.994 0 1 1 2.69 1.693Zm-14 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm14-14a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})]})},{label:"Horizontal Line",toolId:20,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M4 12h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("circle",{cx:"4",cy:"12",r:"1.5",fill:"currentColor"}),h.jsx("circle",{cx:"20",cy:"12",r:"1.5",fill:"currentColor"})]})},{label:"Horizontal Ray",toolId:21,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M4 12h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("circle",{cx:"4",cy:"12",r:"1.5",fill:"currentColor"}),h.jsx("path",{d:"M19 9l3 3-3 3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})]})},{label:"Vertical Line",toolId:22,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M12 4v16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("circle",{cx:"12",cy:"4",r:"1.5",fill:"currentColor"}),h.jsx("circle",{cx:"12",cy:"20",r:"1.5",fill:"currentColor"})]})},{label:"Info Line",toolId:23,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{fillRule:"evenodd",d:"M19.054 7.988a2.988 2.988 0 0 1-1.31-.312l-10 10a3.027 3.027 0 1 1-1.38-1.381l10-10a2.994 2.994 0 1 1 2.69 1.693Zm-14 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm14-14a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"}),h.jsx("rect",{x:"10",y:"5",width:"7",height:"5",rx:"1",fill:"currentColor",opacity:"0.5"}),h.jsx("text",{x:"11",y:"9",fontSize:"4",fill:"white",fontWeight:"bold",children:"i"})]})},{label:"Ruler Line",toolId:24,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",children:[h.jsx("line",{x1:"4",y1:"20",x2:"20",y2:"4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),h.jsx("rect",{x:"7",y:"7",width:"10",height:"5",rx:"1",transform:"rotate(-45 12 12)",stroke:"currentColor",strokeWidth:"1.3",fill:"none"}),h.jsx("line",{x1:"10.5",y1:"13.5",x2:"12",y2:"12",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"}),h.jsx("line",{x1:"12.5",y1:"11.5",x2:"14",y2:"10",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"}),h.jsx("circle",{cx:"4.5",cy:"19.5",r:"1.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),h.jsx("circle",{cx:"19.5",cy:"4.5",r:"1.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"})]})},{label:"Arrowed Line",toolId:25,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{fillRule:"evenodd",d:"M5.054 17.988a2.988 2.988 0 0 1-1.31-.312 2.994 2.994 0 1 1 2.69 1.693 2.988 2.988 0 0 1-1.38-.381Zm-1 2a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"}),h.jsx("path",{d:"M6 18L18 6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M14 6h4v4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})]})},{label:"Ray",toolId:26,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("circle",{cx:"5",cy:"19",r:"2",fill:"currentColor"}),h.jsx("path",{d:"M6.4 17.6L19 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M16 5h3v3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})]})},{label:"Extended Line",toolId:27,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M2 19L22 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"3 0 3"}),h.jsx("circle",{cx:"8",cy:"15",r:"1.5",fill:"currentColor"}),h.jsx("circle",{cx:"16",cy:"9",r:"1.5",fill:"currentColor"})]})},{label:"Cross Line",toolId:28,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M12 4v16M4 12h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("circle",{cx:"12",cy:"12",r:"2",fill:"currentColor"})]})},{label:"Trend By Angle",toolId:29,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M5 19L19 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M5 19h6",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),h.jsx("path",{d:"M5 13a6 6 0 0 1 0 6",stroke:"currentColor",strokeWidth:"1.5",fill:"none"})]})},{label:"Disjoint Channel",toolId:30,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M3 17L9 11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M9 17L15 11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M15 17L21 11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M3 14L21 14",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round",strokeDasharray:"2 2"})]})},{label:"Flat Top/Bottom",toolId:31,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{d:"M4 8h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M4 16h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M8 8v8M16 8v8",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeDasharray:"2 2"})]})}],gi=[{label:"Regression Channel",toolId:40,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"m2.285 10.333 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382Zm10 10 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382ZM19 8a2.966 2.966 0 0 1-1.308-.312l-10 10c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l10-10A2.993 2.993 0 1 1 19 8ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM19 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Equidistant Channel",toolId:3,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"M15 8a2.966 2.966 0 0 1-1.308-.312l-6 6c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l6-6A2.992 2.992 0 1 1 15 8ZM5 14a1 1 0 1 0 0 2.001A1 1 0 0 0 5 14ZM15 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm6.714 6.666-7.026 7.026a3.03 3.03 0 1 1-1.381-1.381l7.026-7.026a.977.977 0 1 1 1.381 1.381ZM12 18a1 1 0 1 0 0 2.001A1 1 0 0 0 12 18Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"StdDev Channel",toolId:41,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"m2.285 10.333 8.048-8.048a.977.977 0 0 1 1.382 1.381l-8.049 8.049a.977.977 0 0 1-1.381-1.382ZM10 15H9v4a1 1 0 1 1-2 0v-1H6a1 1 0 0 1 0-2h1v-4a1 1 0 1 1 2 0v1h1a1 1 0 0 1 0 2Zm7-7h-1v4a1 1 0 0 1-2 0v-1h-1a1 1 0 0 1 0-2h1V5a1 1 0 1 1 2 0v1h1a1 1 0 0 1 0 2Zm-4.714 12.333 8.048-8.048a.977.977 0 0 1 1.382 1.381l-8.049 8.049a.977.977 0 0 1-1.382-1.382h.001Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Andrews Pitchfork",toolId:42,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"m21.714 13.666-4.026 4.026c.203.406.31.854.312 1.308a3 3 0 0 1-6 0c.002-.454.11-.902.312-1.308L10 15.381l-2.312 2.311a3.03 3.03 0 1 1-1.381-1.381L8.619 14l-2.311-2.312a3 3 0 1 1-.001-5.377l4.026-4.026a.976.976 0 1 1 1.381 1.381L7.688 7.692a2.9 2.9 0 0 1 0 2.615L10 12.619l8.333-8.334a.976.976 0 1 1 1.381 1.381L11.381 14l2.312 2.312a2.9 2.9 0 0 1 2.614 0l4.026-4.026a.977.977 0 1 1 1.381 1.38ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM5 8a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm10 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})}],mi=[{label:"Gann Line",toolId:43,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"M19 8a2.966 2.966 0 0 1-1.308-.312l-3 3c.202.408.307.857.308 1.312a3 3 0 0 1-3 3 2.965 2.965 0 0 1-1.308-.312l-3 3c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l3-3a2.98 2.98 0 0 1 4-4l3-3A2.992 2.992 0 1 1 19 8ZM5 18a1 1 0 1 0 0 2.001A1 1 0 0 0 5 18Zm7-7a1 1 0 1 0 0 2.001A1 1 0 0 0 12 11Zm7-7a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Gann Fan",toolId:44,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"M21.72 3.584 17.694 7.61c.202.407.31.854.312 1.308a3 3 0 0 1-3 3 2.967 2.967 0 0 1-1.308-.312l-4.45 4.45 10.109-4.042a.987.987 0 0 1 .834 1.79L8.167 18.61l7.75-.7a1.004 1.004 0 1 1 .18 2l-8.684.79a2.992 2.992 0 1 1-4.2-4.164l.794-8.7a1.004 1.004 0 1 1 2 .181L5.3 15.765 9.673 4.591a.969.969 0 0 1 1.3-.48 1 1 0 0 1 .47 1.32L7.79 14.77l4.538-4.538a2.98 2.98 0 0 1 4-4l4.026-4.026a.977.977 0 0 1 1.367 1.377ZM5.006 19.918a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm10-12a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Gann Grid",toolId:45,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",d:"M19 8a2.966 2.966 0 0 1-1.308-.312l-.5.5L21 12l-3.809 3.809.5.5a3.034 3.034 0 1 1-1.381 1.381l-.5-.5L12 21l-3.809-3.809-.5.5c.202.407.308.855.309 1.309a3.03 3.03 0 1 1-1.693-2.689l.5-.5L3 12l3.81-3.81-.5-.5A2.966 2.966 0 0 1 5 8a3.031 3.031 0 1 1 2.689-1.693l.5.5L12 3l3.809 3.81.5-.5A2.993 2.993 0 1 1 19 8Zm0 12a1 1 0 1 0 0-2.002A1 1 0 0 0 19 20ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM5 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm7 14.452 2.536-2.536L12 13.381l-2.536 2.535L12 18.452ZM5.547 12l2.536 2.535L10.619 12 8.083 9.464 5.547 12ZM12 5.547 9.464 8.083 12 10.619l2.535-2.536L12 5.547Zm3.916 3.917L13.381 12l2.536 2.535L18.452 12l-2.536-2.536ZM19 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})}],Bi=[{label:"Rectangle",toolId:5,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{d:"M3 6C3 7.30622 3.83481 8.41746 5 8.82929V15.1707C3.83481 15.5825 3 16.6938 3 18C3 19.6569 4.34315 21 6 21C7.30622 21 8.41746 20.1652 8.82929 19H15.1707C15.5825 20.1652 16.6938 21 18 21C19.6569 21 21 19.6569 21 18C21 16.6938 20.1652 15.5825 19 15.1707V8.82929C20.1652 8.41746 21 7.30622 21 6C21 4.34315 19.6569 3 18 3C16.6938 3 15.5825 3.83481 15.1707 5H8.82929C8.41746 3.83481 7.30622 3 6 3C4.34315 3 3 4.34315 3 6ZM6 7C6.55228 7 7 6.55228 7 6C7 5.44772 6.55228 5 6 5C5.44772 5 5 5.44772 5 6C5 6.55228 5.44772 7 6 7ZM17 15.1707V8.82929C16.1476 8.52801 15.472 7.85242 15.1707 7H8.82929C8.52801 7.85241 7.85241 8.52801 7 8.82929V15.1707C7.85241 15.472 8.52801 16.1476 8.82929 17H15.1707C15.472 16.1476 16.1476 15.472 17 15.1707ZM18 7C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5C17.4477 5 17 5.44772 17 6C17 6.55228 17.4477 7 18 7ZM7 18C7 18.5523 6.55228 19 6 19C5.44772 19 5 18.5523 5 18C5 17.4477 5.44772 17 6 17C6.55228 17 7 17.4477 7 18ZM19 18C19 18.5523 18.5523 19 18 19C17.4477 19 17 18.5523 17 18C17 17.4477 17.4477 17 18 17C18.5523 17 19 17.4477 19 18Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})},{label:"Circle",toolId:46,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M22 12C22 10.2504 21.5507 8.60571 20.7611 7.17509C20.9149 6.81421 21 6.41704 21 6C21 4.34315 19.6569 3 18 3C17.583 3 17.1858 3.0851 16.8249 3.23888C15.3943 2.44933 13.7496 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12ZM12 20C16.4183 20 20 16.4183 20 12C20 10.8264 19.7473 9.7118 19.2933 8.70768C18.9017 8.89507 18.4631 9 18 9C17.5369 9 17.0983 8.89506 16.7066 8.70766L14.7077 10.7066C14.8951 11.0983 15 11.5369 15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C12.4632 9 12.9018 9.10496 13.2935 9.2924L15.2924 7.29348C15.105 6.90183 15 6.46317 15 6C15 5.5369 15.1049 5.09831 15.2923 4.7067C14.2882 4.25272 13.1736 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM13 12C13 12.5523 12.5523 13 12 13C11.4477 13 11 12.5523 11 12C11 11.4477 11.4477 11 12 11C12.5523 11 13 11.4477 13 12ZM18 7C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5C17.4477 5 17 5.44772 17 6C17 6.55228 17.4477 7 18 7Z",fill:"currentColor"})})},{label:"Triangle",toolId:47,icon:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15 6C15 7.65685 13.6569 9 12 9C11.763 9 11.5324 8.97252 11.3113 8.92057L7.37081 16.1613C6.95686 15.6284 6.36717 15.2388 5.68872 15.0794L9.62925 7.83858C9.23484 7.33074 9 6.6928 9 6C9 4.34315 10.3431 3 12 3C13.6569 3 15 4.34315 15 6ZM13 6C13 6.55228 12.5523 7 12 7C11.4477 7 11 6.55228 11 6C11 5.44772 11.4477 5 12 5C12.5523 5 13 5.44772 13 6Z",fill:"currentColor"}),h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.3708 7.83867C13.9569 8.37162 13.3672 8.76126 12.6887 8.9206L16.6292 16.1614C16.4344 16.4122 16.2786 16.6948 16.1707 17H7.82941C7.93996 17.3128 8.00012 17.6494 8.00012 18C8.00012 18.3506 7.93996 18.6872 7.8294 19H16.1707C16.5826 20.1652 17.6938 21 19 21C20.6569 21 22 19.6569 22 18C22 16.3431 20.6569 15 19 15C18.763 15 18.5324 15.0275 18.3113 15.0794L14.3708 7.83867ZM19 19C19.5523 19 20 18.5523 20 18C20 17.4477 19.5523 17 19 17C18.4477 17 18 17.4477 18 18C18 18.5523 18.4477 19 19 19Z",fill:"currentColor"}),h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.00012 18C8.00012 19.6569 6.65685 21 5 21C3.34315 21 2 19.6569 2 18C2 16.3431 3.34315 15 5 15C6.65685 15 8.00012 16.3431 8.00012 18ZM6 18C6 18.5523 5.55228 19 5 19C4.44772 19 4 18.5523 4 18C4 17.4477 4.44772 17 5 17C5.55228 17 6 17.4477 6 18Z",fill:"currentColor"})]})},{label:"Ellipse",toolId:48,icon:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3a3.001 3.001 0 0 0-2.935 2.378c-1.25.333-2.381.874-3.322 1.58a7.344 7.344 0 0 0-1.886 2.045 3 3 0 0 0 0 5.994 7.343 7.343 0 0 0 1.886 2.046C7.38 18.27 9.595 19 12 19s4.62-.73 6.257-1.957a7.343 7.343 0 0 0 1.886-2.046 3 3 0 0 0 0-5.994 7.344 7.344 0 0 0-1.886-2.046c-.94-.705-2.073-1.246-3.322-1.579A3.001 3.001 0 0 0 12 3Zm-1 3a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm7.156 3.634a5.584 5.584 0 0 0-1.1-1.077 7.61 7.61 0 0 0-2.391-1.177 3 3 0 0 1-5.33 0 7.61 7.61 0 0 0-2.392 1.177c-.437.328-.805.69-1.099 1.076A2.995 2.995 0 0 1 7 12c0 .962-.452 1.818-1.156 2.367.294.386.662.748 1.1 1.076C8.201 16.387 9.985 17 12 17c2.014 0 3.798-.613 5.057-1.557.437-.328.805-.69 1.099-1.077A2.995 2.995 0 0 1 17 12c0-.961.452-1.817 1.156-2.366ZM3 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm16 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z",fill:"currentColor"})})}],As=({children:r,top:e,panelRef:A,isLight:t})=>h.jsx("div",{ref:A,className:`absolute left-12 z-50 w-56 border shadow-2xl overflow-visible ${t?"bg-white border-slate-200":"bg-[#262F3F] border-white/10"}`,style:{top:e},children:h.jsx("div",{className:"py-1",children:r})}),ty=({AccountId:r,UserName:e,UserId:A})=>{const{activeTool:t,setActiveTool:i,showGrid:n,setShowGrid:s,snapToGrid:o,setSnapToGrid:a,chartObjects:l,setChartObjects:c,drawingsVisible:d,setDrawingsVisible:p,chartLocked:y,setChartLocked:w,theme:C,setTheme:v}=FA(),[S,F]=J.useState(!1),[k,x]=J.useState(null),[V,N]=J.useState(null),[Z,X]=J.useState(0),[W,ae]=J.useState(!1),[G,ee]=J.useState(0),[oe,me]=J.useState(!1),[Le,Ue]=J.useState(0),[Fe,ke]=J.useState(!1),[ye,ve]=J.useState(0),[Ce,ge]=J.useState(!1),[Me,_e]=J.useState({chart:"Grid",colors:"Green & Red",lang:"English"}),Be=J.useRef(null),iA=J.useRef(null),Ee=J.useRef(null),Te=J.useRef(null),de=J.useRef(null),Qe=J.useRef(null);J.useEffect(()=>{const le=Ie=>{const fe=Be.current;S&&fe&&!fe.contains(Ie.target)&&(F(!1),x(null));const ne=iA.current;V==="line"&&ne&&!ne.contains(Ie.target)&&N(null);const Oe=Ee.current;V==="channel"&&Oe&&!Oe.contains(Ie.target)&&N(null);const De=Te.current;V==="gann"&&De&&!De.contains(Ie.target)&&N(null);const Ye=de.current;V==="shape"&&Ye&&!Ye.contains(Ie.target)&&N(null)};return window.addEventListener("mousedown",le),()=>window.removeEventListener("mousedown",le)},[S,V]),J.useEffect(()=>{const le=Ie=>{Ie.key==="Escape"&&(F(!1),x(null),N(null))};return window.addEventListener("keydown",le),()=>window.removeEventListener("keydown",le)},[]);const cA=J.useMemo(()=>[{icon:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M0 0h24v24H0z",fill:"none"}),h.jsx("path",{d:"M3 18H21V16H3V18ZM3 13H21V11H3V13ZM3 6V8H21V6H3Z",fill:"currentColor"})]})}),label:"Menu",description:"Opens/closes navigation menu"},{icon:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z",fill:"currentColor"}),h.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M20 13H15.874C15.5122 14.4056 14.4056 15.5122 13 15.874V20C13 20.2652 12.8946 20.5196 12.7071 20.7071C12.5196 20.8946 12.2652 21 12 21C11.7348 21 11.4804 20.8946 11.2929 20.7071C11.1054 20.5196 11 20.2652 11 20V15.874C9.59439 15.5122 8.4878 14.4056 8.12602 13H4C3.73478 13 3.48043 12.8946 3.29289 12.7071C3.10536 12.5196 3 12.2652 3 12C3 11.7348 3.10536 11.4804 3.29289 11.2929C3.48043 11.1054 3.73478 11 4 11H8.12602C8.4878 9.59439 9.59439 8.4878 11 8.12602V4C11 3.73478 11.1054 3.48043 11.2929 3.29289C11.4804 3.10536 11.7348 3 12 3C12.2652 3 12.5196 3.10536 12.7071 3.29289C12.8946 3.48043 13 3.73478 13 4V8.12602C14.4056 8.4878 15.5122 9.59439 15.874 11H20C20.2652 11 20.5196 11.1054 20.7071 11.2929C20.8946 11.4804 21 11.7348 21 12C21 12.2652 20.8946 12.5196 20.7071 12.7071C20.5196 12.8946 20.2652 13 20 13ZM12 10C10.8954 10 10 10.8954 10 12C10 13.1046 10.8954 14 12 14C13.1046 14 14 13.1046 14 12C14 10.8954 13.1046 10 12 10Z",fill:"currentColor"})]})}),label:"Crosshair",description:"Precise cursor positioning for measurement on chart"},{icon:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",children:[h.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),h.jsx("path",{fillRule:"evenodd",d:"M19.054 7.988a2.988 2.988 0 0 1-1.31-.312l-10 10a3.027 3.027 0 1 1-1.38-1.381l10-10a2.994 2.994 0 1 1 2.69 1.693Zm-14 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm14-14a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})]})}),label:"Trend Line",description:"Draw trend line (drag from first point to second point)"},{icon:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsx("svg",{width:"20",height:"20",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"m2.285 10.333 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382Zm10 10 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382ZM19 8a2.966 2.966 0 0 1-1.308-.312l-10 10c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l10-10A2.993 2.993 0 1 1 19 8ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM19 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})}),label:"Parallel Lines",description:"Draw two parallel trend lines (draw first line, then second)"},{icon:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"22",height:"22",children:h.jsx("path",{d:"M21 15H3a1 1 0 0 1 0-2h18a1 1 0 0 1 0 2Zm-2-3a2.99 2.99 0 0 1-2.816-2H3a1 1 0 0 1 0-2h13.184A2.995 2.995 0 1 1 19 12Zm0-4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm2-3H3a1 1 0 0 1 0-2h18a1 1 0 1 1 0 2ZM5 16a2.99 2.99 0 0 1 2.816 2H21a1 1 0 0 1 0 2H7.816A2.995 2.995 0 1 1 5 16Zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})}),label:"Fibonacci",description:"Draw Fibonacci retracement levels"},{icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsx("svg",{width:"20",height:"20",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M3 6C3 7.30622 3.83481 8.41746 5 8.82929V15.1707C3.83481 15.5825 3 16.6938 3 18C3 19.6569 4.34315 21 6 21C7.30622 21 8.41746 20.1652 8.82929 19H15.1707C15.5825 20.1652 16.6938 21 18 21C19.6569 21 21 19.6569 21 18C21 16.6938 20.1652 15.5825 19 15.1707V8.82929C20.1652 8.41746 21 7.30622 21 6C21 4.34315 19.6569 3 18 3C16.6938 3 15.5825 3.83481 15.1707 5H8.82929C8.41746 3.83481 7.30622 3 6 3C4.34315 3 3 4.34315 3 6ZM6 7C6.55228 7 7 6.55228 7 6C7 5.44772 6.55228 5 6 5C5.44772 5 5 5.44772 5 6C5 6.55228 5.44772 7 6 7ZM17 15.1707V8.82929C16.1476 8.52801 15.472 7.85242 15.1707 7H8.82929C8.52801 7.85241 7.85241 8.52801 7 8.82929V15.1707C7.85241 15.472 8.52801 16.1476 8.82929 17H15.1707C15.472 16.1476 16.1476 15.472 17 15.1707ZM18 7C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5C17.4477 5 17 5.44772 17 6C17 6.55228 17.4477 7 18 7ZM7 18C7 18.5523 6.55228 19 6 19C5.44772 19 5 18.5523 5 18C5 17.4477 5.44772 17 6 17C6.55228 17 7 17.4477 7 18ZM19 18C19 18.5523 18.5523 19 18 19C17.4477 19 17 18.5523 17 18C17 17.4477 17.4477 17 18 17C18.5523 17 19 17.4477 19 18Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})})}),label:"Rectangle",description:"Draw support/resistance zone (drag from corner to corner)"},{icon:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M20 4V8H18V6H13V18H16V20H8V18H11V6H6V8H4V4H20Z",fill:"currentColor"})})}),label:"Text",description:"Add text label on chart (coming soon)"},{icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsx("svg",{width:"20",height:"20",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M12.76 17.958c-.504.07-1.016.07-1.52 0C6.07 17.532 2 12.932 2 12c0-.977 4.48-6 10-6s10 5.043 10 6c0 .912-4.07 5.529-9.24 5.958ZM3.63 12a11.724 11.724 0 0 0 3.03 2.741 5.963 5.963 0 0 1 .02-5.492A11.7 11.7 0 0 0 3.63 12ZM12 7.57a4.443 4.443 0 1 0-.006 8.886A4.443 4.443 0 0 0 12 7.57Zm5.31 1.652a5.954 5.954 0 0 1 .01 5.546A11.45 11.45 0 0 0 20.37 12a11.525 11.525 0 0 0-3.06-2.778ZM12 14a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})})}),label:"Eye",description:"Show or hide all drawing objects on chart"},{icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:h.jsx("svg",{width:"20",height:"20",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M16 20H8a2 2 0 0 1-2-2v-7a2 2 0 0 1 1.05-1.749A1.044 1.044 0 0 1 7 9a5 5 0 0 1 8.75-3.3 1.008 1.008 0 0 1-.09 1.411 1 1 0 0 1-1.41-.09A3 3 0 0 0 9 9h7a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2Zm0-9H8v7h8v-7Zm-4 2a1 1 0 0 1 1 1v1a1 1 0 0 1-2 0v-1a1 1 0 0 1 1-1Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})})}),label:"Lock",description:"Lock chart (disable pan and zoom)"},{icon:h.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})}),label:"Delete",description:"Remove last drawn object from chart"},{icon:h.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16M6 4v16M12 4v16M18 4v16"})}),label:"Grid",description:"Toggle grid display on/off for chart alignment"},{icon:h.jsxs("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[h.jsx("circle",{cx:"12",cy:"12",r:"8",strokeWidth:2}),h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4l-3 3m6-3l-3-3"})]}),label:"History",description:"Undo/redo actions and view action history"},{icon:h.jsxs("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[h.jsx("rect",{x:"3",y:"3",width:"8",height:"8",strokeWidth:2}),h.jsx("rect",{x:"13",y:"3",width:"8",height:"8",strokeWidth:2}),h.jsx("rect",{x:"3",y:"13",width:"8",height:"8",strokeWidth:2}),h.jsx("rect",{x:"13",y:"13",width:"8",height:"8",strokeWidth:2})]}),label:"Layout",description:"Manage chart layouts and panel arrangements"}],[]),Re=le=>{const Ie=cA[le].label;if(Ie==="Menu"){F(fe=>!fe),x(null);return}if(Ie==="Grid"){s(!n);return}if(Ie==="Magnet"){a(!o),i(o?null:le);return}if(Ie==="Delete"){if(l.length>0){const fe=[...l];fe.pop(),c(fe)}return}if(Ie==="Eye"){p(!d);return}if(Ie==="Lock"){w(!y);return}if(Ie==="Light Theme"||Ie==="Dark Theme"){v(C==="light"?"dark":"light"),F(!1),x(null);return}i(t===le?null:le)};cA.slice(0,12);const Ke=cA.slice(12),Xe=[0,1,2,3,"gann",5,4,6,7,8,9,10,11],We=[{key:"accounts",label:"Trading accounts",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",children:h.jsx("path",{d:"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 14a6 6 0 0 0-5 2 8 8 0 0 0 5 2l5-2a6 6 0 0 0-5-2zm0-12a8 8 0 0 0-6 13 8 8 0 0 1 6-3 8 8 0 0 1 6 3 8 8 0 0 0-6-13zm0 2a4 4 0 1 1 0 8 4 4 0 0 1 0-8zm0 2a2 2 0 1 0 0 4 2 2 0 0 0 0-4z",fill:"currentColor"})})})}),submenu:[{label:"Connect to account",icon:h.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Open Demo account",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{fill:"#CDFDDA",fillRule:"evenodd",d:"M14.5 13.103c1.836 0 3.667.723 5.5 2.14V19l-10.5.5-.5-4.257c1.833-1.417 3.664-2.14 5.5-2.14Z","clip-rule":"evenodd"}),h.jsx("path",{fill:"#00AC00",fillRule:"evenodd",d:"M9.53 15.469 9.5 19l10-.477v-3.032c-1.703-1.27-3.365-1.888-5-1.888-1.626 0-3.277.611-4.97 1.866Zm-.836-.622c1.895-1.465 3.83-2.244 5.806-2.244 1.975 0 3.91.78 5.806 2.244l.194.15v4.48l-12.03.545V15.02l.224-.173Z","clip-rule":"evenodd"}),h.jsx("path",{fill:"#CDFDDA",fillRule:"evenodd",d:"m7.736 13.701-.734 2.345L7.001 20H4.5a1 1 0 0 1-1-1v-4c1.412-.669 2.824-1.102 4.236-1.299Z","clip-rule":"evenodd"}),h.jsx("path",{fill:"#00AC00",fillRule:"evenodd",d:"m7.913 13.678-.475 1.086c-.988.111-1.87.308-2.646.59l-.29.11v3.529H7L7.002 20H4.5a1 1 0 0 1-1-1v-4c1.471-.697 2.942-1.138 4.413-1.322Z","clip-rule":"evenodd"}),h.jsx("path",{fill:"#CDFDDA",d:"M14.5 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z"}),h.jsx("path",{fill:"#00AC00",fillRule:"evenodd",d:"M14.5 4a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z","clip-rule":"evenodd"}),h.jsx("path",{fill:"#00AC00",d:"M11.471 11.979A4.992 4.992 0 0 1 9.5 8c0-.67.131-1.308.37-1.891a3.5 3.5 0 1 0 1.601 5.87Z"}),h.jsx("path",{fill:"#CDFDDA",d:"M9.586 7.07a2.5 2.5 0 1 0 1.153 4.226A4.981 4.981 0 0 1 9.5 8c0-.318.03-.63.086-.93Z"})]})})})}]},{key:"chart",label:"Chart settings",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M9 3V9H11V18H9V21H7V18H5V9H7V3H9ZM17 3V6H19V16H17V19H15V16H13V6H15V3H17ZM17 8H15V14H17V8Z",stroke:"currentColor"})})})}),submenu:[{label:"Grid",icon:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("g",{clipPath:"url(#a)",children:h.jsx("path",{fillRule:"evenodd","clip-rule":"evenodd",d:"M20 6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6zm-2 3V6h-3v3h3zm-4-3h-4v2.999h4V6zM9 6H6v3l3-.001V6zm-3 4v4l3-.001v-4H6zm0 5v3h3v-3.001H6zm4 3h4v-3.001h-4V18zm5 0h3v-3h-3v3zm3-4v-4h-3v4h3zm-8-.001v-4h4v4h-4z",fill:"currentColor"})})})},{label:"Trade Orders",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M4 9H20V10H4V9Z",fill:"#3183FF"}),h.jsx("path",{d:"M4 17H20V18H4V17Z",fill:"#EA4C4C"}),h.jsx("react",{x:"4",y:"14",width:"5",height:"2",fill:"#EA4C4C"}),h.jsx("react",{x:"4",y:"6",width:"5",height:"2",fill:"#3183FF"})]})})})},{label:"Trade Position",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M16 10L12 5H20L16 10Z",fill:"#D95852"}),h.jsx("path",{d:"M16 10H20V11H4V10H16Z",fill:"#D95852"}),h.jsx("path",{d:"M20 13H4V14H8L4 19H12L8 14H20V13Z",fill:"#4682F7"})]})})})},{label:"Trade History",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M4 19L8 14L12 19H4Z",fill:"#3183FF"}),h.jsx("path",{d:"M7 16L17.5 8",stroke:"#3183FF",strokeDasharray:"2 2"}),h.jsx("path",{d:"M13 5L17 10L21 5H13Z",fill:"#EA4C4C"})]})})})},{label:"SL/TP Levels",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"m4.688 17.773-.375.91c.43.277.911.415 1.445.415.614 0 1.104-.15 1.469-.45.367-.299.55-.68.55-1.144 0-.258-.044-.491-.132-.7a1.568 1.568 0 0 0-.387-.55c-.17-.159-.446-.332-.828-.52-.727-.354-1.09-.695-1.09-1.023 0-.198.064-.358.191-.48.13-.126.313-.188.547-.188.396 0 .772.128 1.129.383l.309-.875c-.31-.248-.796-.371-1.457-.371-.508 0-.925.146-1.25.437a1.421 1.421 0 0 0-.485 1.102c0 .237.04.453.121.648.084.195.2.365.352.508.154.14.45.322.887.543.44.219.73.417.87.594.141.177.212.363.212.558 0 .417-.299.625-.895.625-.388 0-.782-.14-1.184-.422ZM8.68 13.277V19h3.601v-.902H9.695v-4.82H8.68ZM20 20H4v1h16v-1Z",fill:"#EA4C4C"}),h.jsx("path",{d:"M10.5 10V7.895c.193.018.346.027.46.027 1.548 0 2.321-.656 2.321-1.969 0-.588-.21-1.02-.629-1.297-.416-.278-1.076-.418-1.98-.418-.115 0-.51.015-1.188.043V10H10.5Zm0-3.008V5.16c.099-.013.202-.02.309-.02.955 0 1.433.298 1.433.891 0 .35-.107.602-.32.758-.214.154-.552.23-1.016.23-.099 0-.234-.009-.406-.027Z",fill:"#3183FF",fillRule:"evenodd","clip-rule":"evenodd"}),h.jsx("path",{d:"M6.914 10V5.18h1.902v-.903H4.078v.903h1.82V10h1.016ZM20 11H4v1h16v-1Z",fill:"#3183FF"})]})})})},{label:"Ask Price",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"m6.926 14-.418-1.16H4.547L4.148 14H3.02L5.3 8.2h.446l2.3 5.8h-1.12ZM5.523 9.95l-.687 2.113H6.21l-.688-2.114Zm2.86 3.734.375-.91c.4.28.795.421 1.183.421.597 0 .895-.208.895-.625a.886.886 0 0 0-.211-.558c-.14-.177-.431-.375-.871-.594-.438-.221-.733-.402-.887-.543a1.506 1.506 0 0 1-.351-.508 1.682 1.682 0 0 1-.121-.648c0-.443.161-.81.484-1.102.325-.291.742-.437 1.25-.437.661 0 1.147.123 1.457.37l-.309.876a1.909 1.909 0 0 0-1.129-.383c-.234 0-.416.062-.546.187a.635.635 0 0 0-.192.48c0 .33.363.67 1.09 1.024.383.188.659.361.828.52.17.156.298.34.387.55.088.209.133.442.133.7 0 .463-.184.845-.551 1.144-.365.3-.854.45-1.469.45a2.617 2.617 0 0 1-1.445-.414Zm7.613.316-1.594-2.438-.636.872V14H12.75V8.277h1.016v2.739l1.945-2.739h1.156l-1.793 2.5L17.211 14h-1.215ZM3 15h18v1H3z",fill:"#C96057"})})})})},{label:"Chart Controls",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M0 0h24v24H0z",fill:"none"}),h.jsx("path",{d:"M10 10L20 14L18 16L20 18L18 20L16 18L14 20L10 10Z",fill:"currentColor"}),h.jsx("path",{d:"M11.2574 18.9959C11.1719 18.9986 11.0861 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11C19 11.0599 18.9993 11.1196 18.998 11.1791L16.9574 10.2813C16.6023 7.3064 14.0705 5 11 5C7.68629 5 5 7.68629 5 11C5 14.191 7.49101 16.8002 10.6345 16.9891L11.2574 18.9959Z",fill:"currentColor"})]})})})},{label:"Trade Notification",icon:h.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),h.jsx("path",{d:"M13.73 21a2 2 0 0 1-3.46 0",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Crosshair cursor",icon:h.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M12 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0-6 0",stroke:"currentColor",strokeWidth:"2"}),h.jsx("path",{d:"M12 2v4M12 18v4M2 12h4M18 12h4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Show OHLC",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M7 17V7M12 17v-6M17 17v-4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}]},{key:"oneclick",label:"One Click Trading",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M20.9914 12.3966L18.9885 11.5954C18.7789 7.91769 15.7302 5 12 5C8.13401 5 5 8.13401 5 12C5 15.7302 7.91769 18.7789 11.5954 18.9885L12.3966 20.9914C12.2651 20.9971 12.1329 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12C21 12.1329 20.9971 12.2651 20.9914 12.3966ZM11 11L21 15L19 17L22 20L20 22L17 19L15 21L11 11Z",fill:"currentColor"})})})})},{key:"theme",label:C==="light"?"Dark Theme":"Light Theme",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"m4.408 12.954-2.265-.756a.209.209 0 0 1 0-.396l2.265-.755a.209.209 0 0 1 .276.198v1.51c0 .143-.14.244-.276.198ZM5.959 7.306 4.89 5.17c-.09-.18.1-.37.28-.28l2.136 1.068a.209.209 0 0 1 .054.334L6.293 7.36c-.1.101-.27.074-.334-.054ZM11.802 21.857l-.755-2.265a.209.209 0 0 1 .198-.276h1.51c.143 0 .244.14.198.276l-.755 2.265a.21.21 0 0 1-.396 0ZM11.802 2.143l-.755 2.265a.209.209 0 0 0 .198.276h1.51c.143 0 .244-.14.198-.276l-.755-2.265a.209.209 0 0 0-.396 0ZM18.83 19.11l-2.137-1.068a.209.209 0 0 1-.054-.335l1.068-1.068c.1-.1.27-.073.334.055l1.069 2.136c.09.18-.101.37-.28.28ZM16.693 5.958 18.83 4.89c.18-.09.37.1.28.28l-1.068 2.136a.209.209 0 0 1-.334.054l-1.068-1.068a.209.209 0 0 1 .054-.334ZM4.89 18.83l1.069-2.136a.209.209 0 0 1 .334-.055l1.068 1.068c.101.101.074.271-.054.335L5.171 19.11c-.18.09-.37-.1-.28-.28ZM21.857 12.198l-2.265.755a.209.209 0 0 1-.276-.198v-1.51c0-.143.14-.244.276-.198l2.265.755a.21.21 0 0 1 0 .396Z",fill:"#FEBC5A"}),h.jsx("circle",{cx:"12",cy:"12",r:"5",fill:"#FED05A"})]})})})},{key:"colors",label:"Color Templates",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{fillRule:"evenodd",d:"M20.775 8.992C20.922 9.638 21 10.31 21 11a8.354 8.354 0 0 0-.787 0c-1.467.072-2.422.564-3.082 1.283l-1.18-1.65c.761-.718 1.697-1.205 2.81-1.452A7 7 0 1 0 12 18c.396-.001.565-.082.63-.12.07-.042.17-.124.295-.34.218-.375.36-.835.534-1.49l1.518 1.822C14.485 19.102 13.705 20 12 20a9 9 0 1 1 8.775-11.008Z","clip-rule":"evenodd",fill:"currentColor"}),h.jsx("circle",{cx:"8.5",cy:"12.5",r:"1.5",fill:"currentColor"}),h.jsx("circle",{cx:"9.5",cy:"8.5",r:"1.5",fill:"currentColor"}),h.jsx("circle",{cx:"13.5",cy:"7.5",r:"1.5",fill:"currentColor"}),h.jsx("path",{d:"M13.892 14.693c-2.034.46-2.59-1.07-2.892-4.693 3.85.352 5.232 1.05 4.697 3.012L20 17.192s.038 1.023-.361 1.447c-.463.49-1.687.361-1.687.361l-4.06-4.307Z",fill:"currentColor"})]})})}),submenu:[{label:"Green & Red",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#ef5350"}),h.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#26a69a"})]})})})},{label:"Blue & Red",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#ff574d"}),h.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#578cf2"})]})})})},{label:"Black & White",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#7a7a7a"}),h.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#ffffff"})]})})})},{label:"Neutral",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#c86a6a"}),h.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#76ac85"})]})})})}]},{key:"lang",label:"Language",rightText:"EN",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M17.9 17.39C17.64 16.59 16.89 16 16 16H15V13C15 12.4477 14.5523 12 14 12H8V10H10C10.5523 10 11 9.55228 11 9V7H13C14.1046 7 15 6.10457 15 5V4.59C17.93 5.77 20 8.64 20 12C20 14.08 19.2 15.97 17.9 17.39ZM11 19.93C7.05 19.44 4 16.08 4 12C4 11.38 4.08 10.78 4.21 10.21L9 15V16C9 17.1046 9.89543 18 11 18V19.93ZM12 2C6.47715 2 2 6.47715 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C6.8043 20.9464 9.34784 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 9.34784 20.9464 6.8043 19.0711 4.92893C17.1957 3.05357 14.6522 2 12 2Z",fill:"currentColor"})})})}),submenu:[{label:"English",icon:h.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"}),h.jsx("path",{d:"M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Arabic",icon:h.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"}),h.jsx("path",{d:"M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Bulgarian",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Chinese Simplified",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Chinese Traditional",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Czech",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Dutch",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Urdu",icon:h.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})}]},{key:"shortcuts",label:"Shortcuts",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM11 18H13V16H11V18ZM12 6C9.79 6 8 7.79 8 10H10C10 8.9 10.9 8 12 8C13.1 8 14 8.9 14 10C14 12 11 11.75 11 15H13C13 12.75 16 12.5 16 10C16 7.79 14.21 6 12 6Z",fill:"currentColor"})})})})},{key:"contact",label:"Contact us",icon:h.jsx(h.Fragment,{children:h.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:h.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M5 4C3.89543 4 3 4.89543 3 6V15C3 16.1046 3.89543 17 5 17H5.98719L6 21L13 17H19C20.1046 17 21 16.1046 21 15V6C21 4.89543 20.1046 4 19 4H5ZM6 6H18C18.5128 6 18.9355 6.38604 18.9933 6.88338L19 7V14C19 14.5128 18.614 14.9355 18.1166 14.9933L18 15H12.5339C12.4234 15 12.314 15.0183 12.21 15.0539L12.108 15.0952L8 17.0289V16C8 15.4872 7.61396 15.0645 7.11662 15.0067L7 15H6C5.48716 15 5.06449 14.614 5.00673 14.1166L5 14V7C5 6.48716 5.38604 6.06449 5.88338 6.00673L6 6Z",fillRule:"evenodd","clip-rule":"evenodd",fill:"currentColor"})})})})},{key:"about",label:"About program",icon:h.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[h.jsx("path",{d:"M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20Z",stroke:"currentColor",strokeWidth:"2"}),h.jsx("path",{d:"M12 10v7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),h.jsx("path",{d:"M12 7h.01",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round"})]})}],je=({item:le})=>{const Ie=!!le.submenu?.length;return h.jsxs("div",{className:"relative",onMouseEnter:()=>{Qe.current&&(clearTimeout(Qe.current),Qe.current=null),Ie&&x(le.key)},onMouseLeave:()=>{Ie&&(Qe.current=setTimeout(()=>x(null),120))},children:[h.jsxs("button",{type:"button",onClick:()=>{Ie?x(fe=>fe===le.key?null:le.key):(le.key==="theme"&&v(fe=>fe==="light"?"dark":"light"),F(!1),x(null))},className:`w-full flex items-center gap-3 px-4 py-2.5 text-left text-[13px] ${we?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[h.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${we?"text-slate-500":"text-slate-400"}`,children:le.icon}),h.jsx("span",{className:"flex-1 text-[15px]",children:le.label}),le.rightText&&h.jsx("span",{className:`text-xs ${we?"text-slate-500":"text-slate-400"}`,children:le.rightText}),Ie&&h.jsx("svg",{className:`w-4 h-4 ${we?"text-slate-500":"text-slate-400"}`,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M9 6l6 6-6 6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),Ie&&k===le.key&&h.jsx("div",{className:`absolute top-0 left-full ml-0 w-52 min-w-44 rounded-md shadow-2xl overflow-hidden z-100 border ${we?"bg-white border-slate-200":"bg-[#262F3F] border-white/10"}`,children:h.jsx("div",{className:"py-1",children:le.submenu.map((fe,ne)=>{const Oe=Me[le.key]===fe.label||fe.selected&&Me[le.key]==null;return h.jsxs("button",{type:"button",onClick:()=>{_e(De=>({...De,[le.key]:fe.label}))},className:`w-full flex items-center gap-3 pl-3 pr-3 py-2 text-[13px] text-left ${we?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[h.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${we?"text-slate-500":"text-slate-400"}`,children:fe.icon||null}),h.jsx("span",{className:"flex-1 min-w-0",children:fe.label}),Oe&&h.jsx("span",{className:"w-5 h-5 flex shrink-0 items-center justify-center text-emerald-400",children:h.jsx("svg",{className:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("path",{d:"M20 6L9 17l-5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]},ne)})})})]})},we=C==="light";return h.jsxs("div",{className:"relative h-full",children:[h.jsxs("div",{className:`w-12 flex flex-col items-center py-3 h-full border-r ${we?"bg-white border-slate-200":"bg-[#12161d] border-slate-700"}`,children:[h.jsx("div",{className:"flex flex-col items-center gap-2",children:Xe.map((le,Ie)=>{const fe=le==="gann",ne=fe?null:cA[le],Oe=fe?-1:le;return h.jsxs(J.Fragment,{children:[Oe===2?h.jsxs("div",{className:"relative",children:[h.jsx("button",{onClick:()=>{const De=pi[Z].toolId;i(t===De?null:De)},className:`relative w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
15
|
-
|
|
16
|
-
${t===gi[G].toolId?we?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":we?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:gi[G].label,children:gi[G].icon}),h.jsx("span",{onMouseEnter:()=>me(!0),onMouseLeave:()=>me(!1),onMouseDown:De=>{De.stopPropagation(),N(Ye=>Ye==="channel"?null:"channel")},style:{position:"absolute",bottom:1,right:1,width:oe?10:7,height:oe?10:7,cursor:"pointer",transition:"width 0.12s, height 0.12s",display:"flex",alignItems:"center",justifyContent:"center"},title:"More channel tools",children:h.jsx("svg",{viewBox:"0 0 10 10",width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",children:h.jsx("polygon",{points:"10,10 0,10 10,0",fill:we?"#64748b":"#94a3b8"})})})]}):fe?h.jsxs("div",{className:"relative",children:[h.jsx("button",{onClick:()=>{const De=mi[Le].toolId;i(t===De?null:De)},className:`relative w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
17
|
-
${
|
|
18
|
-
${
|
|
19
|
-
|
|
20
|
-
|
|
9
|
+
}`,kC=function(i){NC(i,"."+Fa+_C+Bd+`
|
|
10
|
+
.`+Ua+PC+Bd)},NC=function(i,e){var t=i.ownerDocument;if(t){var A=t.createElement("style");A.textContent=e,i.appendChild(A)}},yd=(function(){function i(){}return i.getOrigin=function(e){var t=i._link;return t?(t.href=e,t.href=t.href,t.protocol+t.hostname+t.port):"about:blank"},i.isSameOrigin=function(e){return i.getOrigin(e)===i._origin},i.setContext=function(e){i._link=e.document.createElement("a"),i._origin=i.getOrigin(e.location.href)},i._origin="about:blank",i})(),OC=(function(){function i(e,t){this.context=e,this._options=t,this._cache={}}return i.prototype.addImage=function(e){var t=Promise.resolve();return this.has(e)||(Ea(e)||WC(e))&&(this._cache[e]=this.loadImage(e)).catch(function(){}),t},i.prototype.match=function(e){return this._cache[e]},i.prototype.loadImage=function(e){return Wt(this,void 0,void 0,function(){var t,A,r,n,s=this;return Nt(this,function(o){switch(o.label){case 0:return t=yd.isSameOrigin(e),A=!Sa(e)&&this._options.useCORS===!0&&Ht.SUPPORT_CORS_IMAGES&&!t,r=!Sa(e)&&!t&&!Ea(e)&&typeof this._options.proxy=="string"&&Ht.SUPPORT_CORS_XHR&&!A,!t&&this._options.allowTaint===!1&&!Sa(e)&&!Ea(e)&&!r&&!A?[2]:(n=e,r?[4,this.proxy(n)]:[3,2]);case 1:n=o.sent(),o.label=2;case 2:return this.context.logger.debug("Added image "+e.substring(0,256)),[4,new Promise(function(l,c){var h=new Image;h.onload=function(){return l(h)},h.onerror=c,(RC(n)||A)&&(h.crossOrigin="anonymous"),h.src=n,h.complete===!0&&setTimeout(function(){return l(h)},500),s._options.imageTimeout>0&&setTimeout(function(){return c("Timed out ("+s._options.imageTimeout+"ms) loading image")},s._options.imageTimeout)})];case 3:return[2,o.sent()]}})})},i.prototype.has=function(e){return typeof this._cache[e]<"u"},i.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},i.prototype.proxy=function(e){var t=this,A=this._options.proxy;if(!A)throw new Error("No proxy defined");var r=e.substring(0,256);return new Promise(function(n,s){var o=Ht.SUPPORT_RESPONSE_TYPE?"blob":"text",l=new XMLHttpRequest;l.onload=function(){if(l.status===200)if(o==="text")n(l.response);else{var g=new FileReader;g.addEventListener("load",function(){return n(g.result)},!1),g.addEventListener("error",function(C){return s(C)},!1),g.readAsDataURL(l.response)}else s("Failed to proxy resource "+r+" with status code "+l.status)},l.onerror=s;var c=A.indexOf("?")>-1?"&":"?";if(l.open("GET",""+A+c+"url="+encodeURIComponent(e)+"&responseType="+o),o!=="text"&&l instanceof XMLHttpRequest&&(l.responseType=o),t._options.imageTimeout){var h=t._options.imageTimeout;l.timeout=h,l.ontimeout=function(){return s("Timed out ("+h+"ms) proxying "+r)}}l.send()})},i})(),KC=/^data:image\/svg\+xml/i,VC=/^data:image\/.*;base64,/i,zC=/^data:image\/.*/i,WC=function(i){return Ht.SUPPORT_SVG_DRAWING||!GC(i)},Sa=function(i){return zC.test(i)},RC=function(i){return VC.test(i)},Ea=function(i){return i.substr(0,4)==="blob"},GC=function(i){return i.substr(-3).toLowerCase()==="svg"||KC.test(i)},De=(function(){function i(e,t){this.type=0,this.x=e,this.y=t}return i.prototype.add=function(e,t){return new i(this.x+e,this.y+t)},i})(),_i=function(i,e,t){return new De(i.x+(e.x-i.x)*t,i.y+(e.y-i.y)*t)},cs=(function(){function i(e,t,A,r){this.type=1,this.start=e,this.startControl=t,this.endControl=A,this.end=r}return i.prototype.subdivide=function(e,t){var A=_i(this.start,this.startControl,e),r=_i(this.startControl,this.endControl,e),n=_i(this.endControl,this.end,e),s=_i(A,r,e),o=_i(r,n,e),l=_i(s,o,e);return t?new i(this.start,A,s,l):new i(l,o,n,this.end)},i.prototype.add=function(e,t){return new i(this.start.add(e,t),this.startControl.add(e,t),this.endControl.add(e,t),this.end.add(e,t))},i.prototype.reverse=function(){return new i(this.end,this.endControl,this.startControl,this.start)},i})(),cA=function(i){return i.type===1},$C=(function(){function i(e){var t=e.styles,A=e.bounds,r=Cr(t.borderTopLeftRadius,A.width,A.height),n=r[0],s=r[1],o=Cr(t.borderTopRightRadius,A.width,A.height),l=o[0],c=o[1],h=Cr(t.borderBottomRightRadius,A.width,A.height),g=h[0],C=h[1],x=Cr(t.borderBottomLeftRadius,A.width,A.height),b=x[0],v=x[1],U=[];U.push((n+l)/A.width),U.push((b+g)/A.width),U.push((s+v)/A.height),U.push((c+C)/A.height);var F=Math.max.apply(Math,U);F>1&&(n/=F,s/=F,l/=F,c/=F,g/=F,C/=F,b/=F,v/=F);var M=A.width-l,N=A.height-C,R=A.width-g,L=A.height-v,z=t.borderTopWidth,q=t.borderRightWidth,$=t.borderBottomWidth,V=t.borderLeftWidth,j=ut(t.paddingTop,e.bounds.width),te=ut(t.paddingRight,e.bounds.width),ce=ut(t.paddingBottom,e.bounds.width),X=ut(t.paddingLeft,e.bounds.width);this.topLeftBorderDoubleOuterBox=n>0||s>0?ft(A.left+V/3,A.top+z/3,n-V/3,s-z/3,ot.TOP_LEFT):new De(A.left+V/3,A.top+z/3),this.topRightBorderDoubleOuterBox=n>0||s>0?ft(A.left+M,A.top+z/3,l-q/3,c-z/3,ot.TOP_RIGHT):new De(A.left+A.width-q/3,A.top+z/3),this.bottomRightBorderDoubleOuterBox=g>0||C>0?ft(A.left+R,A.top+N,g-q/3,C-$/3,ot.BOTTOM_RIGHT):new De(A.left+A.width-q/3,A.top+A.height-$/3),this.bottomLeftBorderDoubleOuterBox=b>0||v>0?ft(A.left+V/3,A.top+L,b-V/3,v-$/3,ot.BOTTOM_LEFT):new De(A.left+V/3,A.top+A.height-$/3),this.topLeftBorderDoubleInnerBox=n>0||s>0?ft(A.left+V*2/3,A.top+z*2/3,n-V*2/3,s-z*2/3,ot.TOP_LEFT):new De(A.left+V*2/3,A.top+z*2/3),this.topRightBorderDoubleInnerBox=n>0||s>0?ft(A.left+M,A.top+z*2/3,l-q*2/3,c-z*2/3,ot.TOP_RIGHT):new De(A.left+A.width-q*2/3,A.top+z*2/3),this.bottomRightBorderDoubleInnerBox=g>0||C>0?ft(A.left+R,A.top+N,g-q*2/3,C-$*2/3,ot.BOTTOM_RIGHT):new De(A.left+A.width-q*2/3,A.top+A.height-$*2/3),this.bottomLeftBorderDoubleInnerBox=b>0||v>0?ft(A.left+V*2/3,A.top+L,b-V*2/3,v-$*2/3,ot.BOTTOM_LEFT):new De(A.left+V*2/3,A.top+A.height-$*2/3),this.topLeftBorderStroke=n>0||s>0?ft(A.left+V/2,A.top+z/2,n-V/2,s-z/2,ot.TOP_LEFT):new De(A.left+V/2,A.top+z/2),this.topRightBorderStroke=n>0||s>0?ft(A.left+M,A.top+z/2,l-q/2,c-z/2,ot.TOP_RIGHT):new De(A.left+A.width-q/2,A.top+z/2),this.bottomRightBorderStroke=g>0||C>0?ft(A.left+R,A.top+N,g-q/2,C-$/2,ot.BOTTOM_RIGHT):new De(A.left+A.width-q/2,A.top+A.height-$/2),this.bottomLeftBorderStroke=b>0||v>0?ft(A.left+V/2,A.top+L,b-V/2,v-$/2,ot.BOTTOM_LEFT):new De(A.left+V/2,A.top+A.height-$/2),this.topLeftBorderBox=n>0||s>0?ft(A.left,A.top,n,s,ot.TOP_LEFT):new De(A.left,A.top),this.topRightBorderBox=l>0||c>0?ft(A.left+M,A.top,l,c,ot.TOP_RIGHT):new De(A.left+A.width,A.top),this.bottomRightBorderBox=g>0||C>0?ft(A.left+R,A.top+N,g,C,ot.BOTTOM_RIGHT):new De(A.left+A.width,A.top+A.height),this.bottomLeftBorderBox=b>0||v>0?ft(A.left,A.top+L,b,v,ot.BOTTOM_LEFT):new De(A.left,A.top+A.height),this.topLeftPaddingBox=n>0||s>0?ft(A.left+V,A.top+z,Math.max(0,n-V),Math.max(0,s-z),ot.TOP_LEFT):new De(A.left+V,A.top+z),this.topRightPaddingBox=l>0||c>0?ft(A.left+Math.min(M,A.width-q),A.top+z,M>A.width+q?0:Math.max(0,l-q),Math.max(0,c-z),ot.TOP_RIGHT):new De(A.left+A.width-q,A.top+z),this.bottomRightPaddingBox=g>0||C>0?ft(A.left+Math.min(R,A.width-V),A.top+Math.min(N,A.height-$),Math.max(0,g-q),Math.max(0,C-$),ot.BOTTOM_RIGHT):new De(A.left+A.width-q,A.top+A.height-$),this.bottomLeftPaddingBox=b>0||v>0?ft(A.left+V,A.top+Math.min(L,A.height-$),Math.max(0,b-V),Math.max(0,v-$),ot.BOTTOM_LEFT):new De(A.left+V,A.top+A.height-$),this.topLeftContentBox=n>0||s>0?ft(A.left+V+X,A.top+z+j,Math.max(0,n-(V+X)),Math.max(0,s-(z+j)),ot.TOP_LEFT):new De(A.left+V+X,A.top+z+j),this.topRightContentBox=l>0||c>0?ft(A.left+Math.min(M,A.width+V+X),A.top+z+j,M>A.width+V+X?0:l-V+X,c-(z+j),ot.TOP_RIGHT):new De(A.left+A.width-(q+te),A.top+z+j),this.bottomRightContentBox=g>0||C>0?ft(A.left+Math.min(R,A.width-(V+X)),A.top+Math.min(N,A.height+z+j),Math.max(0,g-(q+te)),C-($+ce),ot.BOTTOM_RIGHT):new De(A.left+A.width-(q+te),A.top+A.height-($+ce)),this.bottomLeftContentBox=b>0||v>0?ft(A.left+V+X,A.top+L,Math.max(0,b-(V+X)),v-($+ce),ot.BOTTOM_LEFT):new De(A.left+V+X,A.top+A.height-($+ce))}return i})(),ot;(function(i){i[i.TOP_LEFT=0]="TOP_LEFT",i[i.TOP_RIGHT=1]="TOP_RIGHT",i[i.BOTTOM_RIGHT=2]="BOTTOM_RIGHT",i[i.BOTTOM_LEFT=3]="BOTTOM_LEFT"})(ot||(ot={}));var ft=function(i,e,t,A,r){var n=4*((Math.sqrt(2)-1)/3),s=t*n,o=A*n,l=i+t,c=e+A;switch(r){case ot.TOP_LEFT:return new cs(new De(i,c),new De(i,c-o),new De(l-s,e),new De(l,e));case ot.TOP_RIGHT:return new cs(new De(i,e),new De(i+s,e),new De(l,c-o),new De(l,c));case ot.BOTTOM_RIGHT:return new cs(new De(l,e),new De(l,e+o),new De(i+s,c),new De(i,c));case ot.BOTTOM_LEFT:default:return new cs(new De(l,c),new De(l-s,c),new De(i,e+o),new De(i,e))}},hs=function(i){return[i.topLeftBorderBox,i.topRightBorderBox,i.bottomRightBorderBox,i.bottomLeftBorderBox]},XC=function(i){return[i.topLeftContentBox,i.topRightContentBox,i.bottomRightContentBox,i.bottomLeftContentBox]},us=function(i){return[i.topLeftPaddingBox,i.topRightPaddingBox,i.bottomRightPaddingBox,i.bottomLeftPaddingBox]},ZC=(function(){function i(e,t,A){this.offsetX=e,this.offsetY=t,this.matrix=A,this.type=0,this.target=6}return i})(),ds=(function(){function i(e,t){this.path=e,this.target=t,this.type=1}return i})(),JC=(function(){function i(e){this.opacity=e,this.type=2,this.target=6}return i})(),YC=function(i){return i.type===0},Cd=function(i){return i.type===1},qC=function(i){return i.type===2},vd=function(i,e){return i.length===e.length?i.some(function(t,A){return t===e[A]}):!1},jC=function(i,e,t,A,r){return i.map(function(n,s){switch(s){case 0:return n.add(e,t);case 1:return n.add(e+A,t);case 2:return n.add(e+A,t+r);case 3:return n.add(e,t+r)}return n})},Td=(function(){function i(e){this.element=e,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}return i})(),xd=(function(){function i(e,t){if(this.container=e,this.parent=t,this.effects=[],this.curves=new $C(this.container),this.container.styles.opacity<1&&this.effects.push(new JC(this.container.styles.opacity)),this.container.styles.transform!==null){var A=this.container.bounds.left+this.container.styles.transformOrigin[0].number,r=this.container.bounds.top+this.container.styles.transformOrigin[1].number,n=this.container.styles.transform;this.effects.push(new ZC(A,r,n))}if(this.container.styles.overflowX!==0){var s=hs(this.curves),o=us(this.curves);vd(s,o)?this.effects.push(new ds(s,6)):(this.effects.push(new ds(s,2)),this.effects.push(new ds(o,4)))}}return i.prototype.getEffects=function(e){for(var t=[2,3].indexOf(this.container.styles.position)===-1,A=this.parent,r=this.effects.slice(0);A;){var n=A.effects.filter(function(l){return!Cd(l)});if(t||A.container.styles.position!==0||!A.parent){if(r.unshift.apply(r,n),t=[2,3].indexOf(A.container.styles.position)===-1,A.container.styles.overflowX!==0){var s=hs(A.curves),o=us(A.curves);vd(s,o)||r.unshift(new ds(o,6))}}else r.unshift.apply(r,n);A=A.parent}return r.filter(function(l){return Qt(l.target,e)})},i})(),La=function(i,e,t,A){i.container.elements.forEach(function(r){var n=Qt(r.flags,4),s=Qt(r.flags,2),o=new xd(r,i);Qt(r.styles.display,2048)&&A.push(o);var l=Qt(r.flags,8)?[]:A;if(n||s){var c=n||r.styles.isPositioned()?t:e,h=new Td(o);if(r.styles.isPositioned()||r.styles.opacity<1||r.styles.isTransformed()){var g=r.styles.zIndex.order;if(g<0){var C=0;c.negativeZIndex.some(function(b,v){return g>b.element.container.styles.zIndex.order?(C=v,!1):C>0}),c.negativeZIndex.splice(C,0,h)}else if(g>0){var x=0;c.positiveZIndex.some(function(b,v){return g>=b.element.container.styles.zIndex.order?(x=v+1,!1):x>0}),c.positiveZIndex.splice(x,0,h)}else c.zeroOrAutoZIndexOrTransformedOrOpacity.push(h)}else r.styles.isFloating()?c.nonPositionedFloats.push(h):c.nonPositionedInlineLevel.push(h);La(o,h,n?h:t,l)}else r.styles.isInlineLevel()?e.inlineLevel.push(o):e.nonInlineLevel.push(o),La(o,e,t,l);Qt(r.flags,8)&&bd(r,l)})},bd=function(i,e){for(var t=i instanceof ya?i.start:1,A=i instanceof ya?i.reversed:!1,r=0;r<e.length;r++){var n=e[r];n.container instanceof Ju&&typeof n.container.value=="number"&&n.container.value!==0&&(t=n.container.value),n.listValue=Fr(t,n.container.styles.listStyleType,!0),t+=A?-1:1}},ev=function(i){var e=new xd(i,null),t=new Td(e),A=[];return La(e,t,t,A),bd(e.container,A),t},Qd=function(i,e){switch(e){case 0:return hA(i.topLeftBorderBox,i.topLeftPaddingBox,i.topRightBorderBox,i.topRightPaddingBox);case 1:return hA(i.topRightBorderBox,i.topRightPaddingBox,i.bottomRightBorderBox,i.bottomRightPaddingBox);case 2:return hA(i.bottomRightBorderBox,i.bottomRightPaddingBox,i.bottomLeftBorderBox,i.bottomLeftPaddingBox);default:return hA(i.bottomLeftBorderBox,i.bottomLeftPaddingBox,i.topLeftBorderBox,i.topLeftPaddingBox)}},tv=function(i,e){switch(e){case 0:return hA(i.topLeftBorderBox,i.topLeftBorderDoubleOuterBox,i.topRightBorderBox,i.topRightBorderDoubleOuterBox);case 1:return hA(i.topRightBorderBox,i.topRightBorderDoubleOuterBox,i.bottomRightBorderBox,i.bottomRightBorderDoubleOuterBox);case 2:return hA(i.bottomRightBorderBox,i.bottomRightBorderDoubleOuterBox,i.bottomLeftBorderBox,i.bottomLeftBorderDoubleOuterBox);default:return hA(i.bottomLeftBorderBox,i.bottomLeftBorderDoubleOuterBox,i.topLeftBorderBox,i.topLeftBorderDoubleOuterBox)}},Av=function(i,e){switch(e){case 0:return hA(i.topLeftBorderDoubleInnerBox,i.topLeftPaddingBox,i.topRightBorderDoubleInnerBox,i.topRightPaddingBox);case 1:return hA(i.topRightBorderDoubleInnerBox,i.topRightPaddingBox,i.bottomRightBorderDoubleInnerBox,i.bottomRightPaddingBox);case 2:return hA(i.bottomRightBorderDoubleInnerBox,i.bottomRightPaddingBox,i.bottomLeftBorderDoubleInnerBox,i.bottomLeftPaddingBox);default:return hA(i.bottomLeftBorderDoubleInnerBox,i.bottomLeftPaddingBox,i.topLeftBorderDoubleInnerBox,i.topLeftPaddingBox)}},iv=function(i,e){switch(e){case 0:return ps(i.topLeftBorderStroke,i.topRightBorderStroke);case 1:return ps(i.topRightBorderStroke,i.bottomRightBorderStroke);case 2:return ps(i.bottomRightBorderStroke,i.bottomLeftBorderStroke);default:return ps(i.bottomLeftBorderStroke,i.topLeftBorderStroke)}},ps=function(i,e){var t=[];return cA(i)?t.push(i.subdivide(.5,!1)):t.push(i),cA(e)?t.push(e.subdivide(.5,!0)):t.push(e),t},hA=function(i,e,t,A){var r=[];return cA(i)?r.push(i.subdivide(.5,!1)):r.push(i),cA(t)?r.push(t.subdivide(.5,!0)):r.push(t),cA(A)?r.push(A.subdivide(.5,!0).reverse()):r.push(A),cA(e)?r.push(e.subdivide(.5,!1).reverse()):r.push(e),r},Fd=function(i){var e=i.bounds,t=i.styles;return e.add(t.borderLeftWidth,t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth),-(t.borderTopWidth+t.borderBottomWidth))},fs=function(i){var e=i.styles,t=i.bounds,A=ut(e.paddingLeft,t.width),r=ut(e.paddingRight,t.width),n=ut(e.paddingTop,t.width),s=ut(e.paddingBottom,t.width);return t.add(A+e.borderLeftWidth,n+e.borderTopWidth,-(e.borderRightWidth+e.borderLeftWidth+A+r),-(e.borderTopWidth+e.borderBottomWidth+n+s))},rv=function(i,e){return i===0?e.bounds:i===2?fs(e):Fd(e)},nv=function(i,e){return i===0?e.bounds:i===2?fs(e):Fd(e)},Ma=function(i,e,t){var A=rv(ki(i.styles.backgroundOrigin,e),i),r=nv(ki(i.styles.backgroundClip,e),i),n=sv(ki(i.styles.backgroundSize,e),t,A),s=n[0],o=n[1],l=Cr(ki(i.styles.backgroundPosition,e),A.width-s,A.height-o),c=ov(ki(i.styles.backgroundRepeat,e),l,n,A,r),h=Math.round(A.left+l[0]),g=Math.round(A.top+l[1]);return[c,h,g,s,o]},Pi=function(i){return at(i)&&i.value===Mi.AUTO},gs=function(i){return typeof i=="number"},sv=function(i,e,t){var A=e[0],r=e[1],n=e[2],s=i[0],o=i[1];if(!s)return[0,0];if(bt(s)&&o&&bt(o))return[ut(s,t.width),ut(o,t.height)];var l=gs(n);if(at(s)&&(s.value===Mi.CONTAIN||s.value===Mi.COVER)){if(gs(n)){var c=t.width/t.height;return c<n!=(s.value===Mi.COVER)?[t.width,t.width/n]:[t.height*n,t.height]}return[t.width,t.height]}var h=gs(A),g=gs(r),C=h||g;if(Pi(s)&&(!o||Pi(o))){if(h&&g)return[A,r];if(!l&&!C)return[t.width,t.height];if(C&&l){var x=h?A:r*n,b=g?r:A/n;return[x,b]}var v=h?A:t.width,U=g?r:t.height;return[v,U]}if(l){var F=0,M=0;return bt(s)?F=ut(s,t.width):bt(o)&&(M=ut(o,t.height)),Pi(s)?F=M*n:(!o||Pi(o))&&(M=F/n),[F,M]}var N=null,R=null;if(bt(s)?N=ut(s,t.width):o&&bt(o)&&(R=ut(o,t.height)),N!==null&&(!o||Pi(o))&&(R=h&&g?N/A*r:t.height),R!==null&&Pi(s)&&(N=h&&g?R/r*A:t.width),N!==null&&R!==null)return[N,R];throw new Error("Unable to calculate background-size for element")},ki=function(i,e){var t=i[e];return typeof t>"u"?i[0]:t},ov=function(i,e,t,A,r){var n=e[0],s=e[1],o=t[0],l=t[1];switch(i){case 2:return[new De(Math.round(A.left),Math.round(A.top+s)),new De(Math.round(A.left+A.width),Math.round(A.top+s)),new De(Math.round(A.left+A.width),Math.round(l+A.top+s)),new De(Math.round(A.left),Math.round(l+A.top+s))];case 3:return[new De(Math.round(A.left+n),Math.round(A.top)),new De(Math.round(A.left+n+o),Math.round(A.top)),new De(Math.round(A.left+n+o),Math.round(A.height+A.top)),new De(Math.round(A.left+n),Math.round(A.height+A.top))];case 1:return[new De(Math.round(A.left+n),Math.round(A.top+s)),new De(Math.round(A.left+n+o),Math.round(A.top+s)),new De(Math.round(A.left+n+o),Math.round(A.top+s+l)),new De(Math.round(A.left+n),Math.round(A.top+s+l))];default:return[new De(Math.round(r.left),Math.round(r.top)),new De(Math.round(r.left+r.width),Math.round(r.top)),new De(Math.round(r.left+r.width),Math.round(r.height+r.top)),new De(Math.round(r.left),Math.round(r.height+r.top))]}},av="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",Ud="Hidden Text",lv=(function(){function i(e){this._data={},this._document=e}return i.prototype.parseMetrics=function(e,t){var A=this._document.createElement("div"),r=this._document.createElement("img"),n=this._document.createElement("span"),s=this._document.body;A.style.visibility="hidden",A.style.fontFamily=e,A.style.fontSize=t,A.style.margin="0",A.style.padding="0",A.style.whiteSpace="nowrap",s.appendChild(A),r.src=av,r.width=1,r.height=1,r.style.margin="0",r.style.padding="0",r.style.verticalAlign="baseline",n.style.fontFamily=e,n.style.fontSize=t,n.style.margin="0",n.style.padding="0",n.appendChild(this._document.createTextNode(Ud)),A.appendChild(n),A.appendChild(r);var o=r.offsetTop-n.offsetTop+2;A.removeChild(n),A.appendChild(this._document.createTextNode(Ud)),A.style.lineHeight="normal",r.style.verticalAlign="super";var l=r.offsetTop-A.offsetTop+2;return s.removeChild(A),{baseline:o,middle:l}},i.prototype.getMetrics=function(e,t){var A=e+" "+t;return typeof this._data[A]>"u"&&(this._data[A]=this.parseMetrics(e,t)),this._data[A]},i})(),Sd=(function(){function i(e,t){this.context=e,this.options=t}return i})(),cv=1e4,hv=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r._activeEffects=[],r.canvas=A.canvas?A.canvas:document.createElement("canvas"),r.ctx=r.canvas.getContext("2d"),A.canvas||(r.canvas.width=Math.floor(A.width*A.scale),r.canvas.height=Math.floor(A.height*A.scale),r.canvas.style.width=A.width+"px",r.canvas.style.height=A.height+"px"),r.fontMetrics=new lv(document),r.ctx.scale(r.options.scale,r.options.scale),r.ctx.translate(-A.x,-A.y),r.ctx.textBaseline="bottom",r._activeEffects=[],r.context.logger.debug("Canvas renderer initialized ("+A.width+"x"+A.height+") with scale "+A.scale),r}return e.prototype.applyEffects=function(t){for(var A=this;this._activeEffects.length;)this.popEffect();t.forEach(function(r){return A.applyEffect(r)})},e.prototype.applyEffect=function(t){this.ctx.save(),qC(t)&&(this.ctx.globalAlpha=t.opacity),YC(t)&&(this.ctx.translate(t.offsetX,t.offsetY),this.ctx.transform(t.matrix[0],t.matrix[1],t.matrix[2],t.matrix[3],t.matrix[4],t.matrix[5]),this.ctx.translate(-t.offsetX,-t.offsetY)),Cd(t)&&(this.path(t.path),this.ctx.clip()),this._activeEffects.push(t)},e.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},e.prototype.renderStack=function(t){return Wt(this,void 0,void 0,function(){var A;return Nt(this,function(r){switch(r.label){case 0:return A=t.element.container.styles,A.isVisible()?[4,this.renderStackContent(t)]:[3,2];case 1:r.sent(),r.label=2;case 2:return[2]}})})},e.prototype.renderNode=function(t){return Wt(this,void 0,void 0,function(){return Nt(this,function(A){switch(A.label){case 0:if(Qt(t.container.flags,16))debugger;return t.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(t)]:[3,3];case 1:return A.sent(),[4,this.renderNodeContent(t)];case 2:A.sent(),A.label=3;case 3:return[2]}})})},e.prototype.renderTextWithLetterSpacing=function(t,A,r){var n=this;if(A===0)this.ctx.fillText(t.text,t.bounds.left,t.bounds.top+r);else{var s=Ba(t.text);s.reduce(function(o,l){return n.ctx.fillText(l,o,t.bounds.top+r),o+n.ctx.measureText(l).width},t.bounds.left)}},e.prototype.createFontStyle=function(t){var A=t.fontVariant.filter(function(s){return s==="normal"||s==="small-caps"}).join(""),r=gv(t.fontFamily).join(", "),n=yr(t.fontSize)?""+t.fontSize.number+t.fontSize.unit:t.fontSize.number+"px";return[[t.fontStyle,A,t.fontWeight,n,r].join(" "),r,n]},e.prototype.renderTextNode=function(t,A){return Wt(this,void 0,void 0,function(){var r,n,s,o,l,c,h,g,C=this;return Nt(this,function(x){return r=this.createFontStyle(A),n=r[0],s=r[1],o=r[2],this.ctx.font=n,this.ctx.direction=A.direction===1?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic",l=this.fontMetrics.getMetrics(s,o),c=l.baseline,h=l.middle,g=A.paintOrder,t.textBounds.forEach(function(b){g.forEach(function(v){switch(v){case 0:C.ctx.fillStyle=Ut(A.color),C.renderTextWithLetterSpacing(b,A.letterSpacing,c);var U=A.textShadow;U.length&&b.text.trim().length&&(U.slice(0).reverse().forEach(function(F){C.ctx.shadowColor=Ut(F.color),C.ctx.shadowOffsetX=F.offsetX.number*C.options.scale,C.ctx.shadowOffsetY=F.offsetY.number*C.options.scale,C.ctx.shadowBlur=F.blur.number,C.renderTextWithLetterSpacing(b,A.letterSpacing,c)}),C.ctx.shadowColor="",C.ctx.shadowOffsetX=0,C.ctx.shadowOffsetY=0,C.ctx.shadowBlur=0),A.textDecorationLine.length&&(C.ctx.fillStyle=Ut(A.textDecorationColor||A.color),A.textDecorationLine.forEach(function(F){switch(F){case 1:C.ctx.fillRect(b.bounds.left,Math.round(b.bounds.top+c),b.bounds.width,1);break;case 2:C.ctx.fillRect(b.bounds.left,Math.round(b.bounds.top),b.bounds.width,1);break;case 3:C.ctx.fillRect(b.bounds.left,Math.ceil(b.bounds.top+h),b.bounds.width,1);break}}));break;case 1:A.webkitTextStrokeWidth&&b.text.trim().length&&(C.ctx.strokeStyle=Ut(A.webkitTextStrokeColor),C.ctx.lineWidth=A.webkitTextStrokeWidth,C.ctx.lineJoin=window.chrome?"miter":"round",C.ctx.strokeText(b.text,b.bounds.left,b.bounds.top+c)),C.ctx.strokeStyle="",C.ctx.lineWidth=0,C.ctx.lineJoin="miter";break}})}),[2]})})},e.prototype.renderReplacedElement=function(t,A,r){if(r&&t.intrinsicWidth>0&&t.intrinsicHeight>0){var n=fs(t),s=us(A);this.path(s),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(r,0,0,t.intrinsicWidth,t.intrinsicHeight,n.left,n.top,n.width,n.height),this.ctx.restore()}},e.prototype.renderNodeContent=function(t){return Wt(this,void 0,void 0,function(){var A,r,n,s,o,l,M,M,c,h,g,C,R,x,b,L,v,U,F,M,N,R,L;return Nt(this,function(z){switch(z.label){case 0:this.applyEffects(t.getEffects(4)),A=t.container,r=t.curves,n=A.styles,s=0,o=A.textNodes,z.label=1;case 1:return s<o.length?(l=o[s],[4,this.renderTextNode(l,n)]):[3,4];case 2:z.sent(),z.label=3;case 3:return s++,[3,1];case 4:if(!(A instanceof $u))return[3,8];z.label=5;case 5:return z.trys.push([5,7,,8]),[4,this.context.cache.match(A.src)];case 6:return M=z.sent(),this.renderReplacedElement(A,r,M),[3,8];case 7:return z.sent(),this.context.logger.error("Error loading image "+A.src),[3,8];case 8:if(A instanceof Xu&&this.renderReplacedElement(A,r,A.canvas),!(A instanceof Zu))return[3,12];z.label=9;case 9:return z.trys.push([9,11,,12]),[4,this.context.cache.match(A.svg)];case 10:return M=z.sent(),this.renderReplacedElement(A,r,M),[3,12];case 11:return z.sent(),this.context.logger.error("Error loading svg "+A.svg.substring(0,255)),[3,12];case 12:return A instanceof ed&&A.tree?(c=new e(this.context,{scale:this.options.scale,backgroundColor:A.backgroundColor,x:0,y:0,width:A.width,height:A.height}),[4,c.render(A.tree)]):[3,14];case 13:h=z.sent(),A.width&&A.height&&this.ctx.drawImage(h,0,0,A.width,A.height,A.bounds.left,A.bounds.top,A.bounds.width,A.bounds.height),z.label=14;case 14:if(A instanceof Ca&&(g=Math.min(A.bounds.width,A.bounds.height),A.type===rs?A.checked&&(this.ctx.save(),this.path([new De(A.bounds.left+g*.39363,A.bounds.top+g*.79),new De(A.bounds.left+g*.16,A.bounds.top+g*.5549),new De(A.bounds.left+g*.27347,A.bounds.top+g*.44071),new De(A.bounds.left+g*.39694,A.bounds.top+g*.5649),new De(A.bounds.left+g*.72983,A.bounds.top+g*.23),new De(A.bounds.left+g*.84,A.bounds.top+g*.34085),new De(A.bounds.left+g*.39363,A.bounds.top+g*.79)]),this.ctx.fillStyle=Ut(Yu),this.ctx.fill(),this.ctx.restore()):A.type===ns&&A.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(A.bounds.left+g/2,A.bounds.top+g/2,g/4,0,Math.PI*2,!0),this.ctx.fillStyle=Ut(Yu),this.ctx.fill(),this.ctx.restore())),uv(A)&&A.value.length){switch(C=this.createFontStyle(n),R=C[0],x=C[1],b=this.fontMetrics.getMetrics(R,x).baseline,this.ctx.font=R,this.ctx.fillStyle=Ut(n.color),this.ctx.textBaseline="alphabetic",this.ctx.textAlign=pv(A.styles.textAlign),L=fs(A),v=0,A.styles.textAlign){case 1:v+=L.width/2;break;case 2:v+=L.width;break}U=L.add(v,0,0,-L.height/2+1),this.ctx.save(),this.path([new De(L.left,L.top),new De(L.left+L.width,L.top),new De(L.left+L.width,L.top+L.height),new De(L.left,L.top+L.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new br(A.value,U),n.letterSpacing,b),this.ctx.restore(),this.ctx.textBaseline="alphabetic",this.ctx.textAlign="left"}if(!Qt(A.styles.display,2048))return[3,20];if(A.styles.listStyleImage===null)return[3,19];if(F=A.styles.listStyleImage,F.type!==0)return[3,18];M=void 0,N=F.url,z.label=15;case 15:return z.trys.push([15,17,,18]),[4,this.context.cache.match(N)];case 16:return M=z.sent(),this.ctx.drawImage(M,A.bounds.left-(M.width+10),A.bounds.top),[3,18];case 17:return z.sent(),this.context.logger.error("Error loading list-style-image "+N),[3,18];case 18:return[3,20];case 19:t.listValue&&A.styles.listStyleType!==-1&&(R=this.createFontStyle(n)[0],this.ctx.font=R,this.ctx.fillStyle=Ut(n.color),this.ctx.textBaseline="middle",this.ctx.textAlign="right",L=new IA(A.bounds.left,A.bounds.top+ut(A.styles.paddingTop,A.bounds.width),A.bounds.width,Uu(n.lineHeight,n.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new br(t.listValue,L),n.letterSpacing,Uu(n.lineHeight,n.fontSize.number)/2+2),this.ctx.textBaseline="bottom",this.ctx.textAlign="left"),z.label=20;case 20:return[2]}})})},e.prototype.renderStackContent=function(t){return Wt(this,void 0,void 0,function(){var A,r,F,n,s,F,o,l,F,c,h,F,g,C,F,x,b,F,v,U,F;return Nt(this,function(M){switch(M.label){case 0:if(Qt(t.element.container.flags,16))debugger;return[4,this.renderNodeBackgroundAndBorders(t.element)];case 1:M.sent(),A=0,r=t.negativeZIndex,M.label=2;case 2:return A<r.length?(F=r[A],[4,this.renderStack(F)]):[3,5];case 3:M.sent(),M.label=4;case 4:return A++,[3,2];case 5:return[4,this.renderNodeContent(t.element)];case 6:M.sent(),n=0,s=t.nonInlineLevel,M.label=7;case 7:return n<s.length?(F=s[n],[4,this.renderNode(F)]):[3,10];case 8:M.sent(),M.label=9;case 9:return n++,[3,7];case 10:o=0,l=t.nonPositionedFloats,M.label=11;case 11:return o<l.length?(F=l[o],[4,this.renderStack(F)]):[3,14];case 12:M.sent(),M.label=13;case 13:return o++,[3,11];case 14:c=0,h=t.nonPositionedInlineLevel,M.label=15;case 15:return c<h.length?(F=h[c],[4,this.renderStack(F)]):[3,18];case 16:M.sent(),M.label=17;case 17:return c++,[3,15];case 18:g=0,C=t.inlineLevel,M.label=19;case 19:return g<C.length?(F=C[g],[4,this.renderNode(F)]):[3,22];case 20:M.sent(),M.label=21;case 21:return g++,[3,19];case 22:x=0,b=t.zeroOrAutoZIndexOrTransformedOrOpacity,M.label=23;case 23:return x<b.length?(F=b[x],[4,this.renderStack(F)]):[3,26];case 24:M.sent(),M.label=25;case 25:return x++,[3,23];case 26:v=0,U=t.positiveZIndex,M.label=27;case 27:return v<U.length?(F=U[v],[4,this.renderStack(F)]):[3,30];case 28:M.sent(),M.label=29;case 29:return v++,[3,27];case 30:return[2]}})})},e.prototype.mask=function(t){this.ctx.beginPath(),this.ctx.moveTo(0,0),this.ctx.lineTo(this.canvas.width,0),this.ctx.lineTo(this.canvas.width,this.canvas.height),this.ctx.lineTo(0,this.canvas.height),this.ctx.lineTo(0,0),this.formatPath(t.slice(0).reverse()),this.ctx.closePath()},e.prototype.path=function(t){this.ctx.beginPath(),this.formatPath(t),this.ctx.closePath()},e.prototype.formatPath=function(t){var A=this;t.forEach(function(r,n){var s=cA(r)?r.start:r;n===0?A.ctx.moveTo(s.x,s.y):A.ctx.lineTo(s.x,s.y),cA(r)&&A.ctx.bezierCurveTo(r.startControl.x,r.startControl.y,r.endControl.x,r.endControl.y,r.end.x,r.end.y)})},e.prototype.renderRepeat=function(t,A,r,n){this.path(t),this.ctx.fillStyle=A,this.ctx.translate(r,n),this.ctx.fill(),this.ctx.translate(-r,-n)},e.prototype.resizeImage=function(t,A,r){var n;if(t.width===A&&t.height===r)return t;var s=(n=this.canvas.ownerDocument)!==null&&n!==void 0?n:document,o=s.createElement("canvas");o.width=Math.max(1,A),o.height=Math.max(1,r);var l=o.getContext("2d");return l.drawImage(t,0,0,t.width,t.height,0,0,A,r),o},e.prototype.renderBackgroundImage=function(t){return Wt(this,void 0,void 0,function(){var A,r,n,s,o,l;return Nt(this,function(c){switch(c.label){case 0:A=t.styles.backgroundImage.length-1,r=function(h){var g,C,x,j,le,ne,X,ee,$,b,j,le,ne,X,ee,v,U,F,M,N,R,L,z,q,$,V,j,te,ce,X,ee,se,le,ne,he,de,we,xe,Ue,ye,ve,be;return Nt(this,function(Ee){switch(Ee.label){case 0:if(h.type!==0)return[3,5];g=void 0,C=h.url,Ee.label=1;case 1:return Ee.trys.push([1,3,,4]),[4,n.context.cache.match(C)];case 2:return g=Ee.sent(),[3,4];case 3:return Ee.sent(),n.context.logger.error("Error loading background-image "+C),[3,4];case 4:return g&&(x=Ma(t,A,[g.width,g.height,g.width/g.height]),j=x[0],le=x[1],ne=x[2],X=x[3],ee=x[4],$=n.ctx.createPattern(n.resizeImage(g,X,ee),"repeat"),n.renderRepeat(j,$,le,ne)),[3,6];case 5:YB(h)?(b=Ma(t,A,[null,null,null]),j=b[0],le=b[1],ne=b[2],X=b[3],ee=b[4],v=GB(h.angle,X,ee),U=v[0],F=v[1],M=v[2],N=v[3],R=v[4],L=document.createElement("canvas"),L.width=X,L.height=ee,z=L.getContext("2d"),q=z.createLinearGradient(F,N,M,R),mu(h.stops,U).forEach(function(Ie){return q.addColorStop(Ie.stop,Ut(Ie.color))}),z.fillStyle=q,z.fillRect(0,0,X,ee),X>0&&ee>0&&($=n.ctx.createPattern(L,"repeat"),n.renderRepeat(j,$,le,ne))):qB(h)&&(V=Ma(t,A,[null,null,null]),j=V[0],te=V[1],ce=V[2],X=V[3],ee=V[4],se=h.position.length===0?[ra]:h.position,le=ut(se[0],X),ne=ut(se[se.length-1],ee),he=$B(h,le,ne,X,ee),de=he[0],we=he[1],de>0&&we>0&&(xe=n.ctx.createRadialGradient(te+le,ce+ne,0,te+le,ce+ne,de),mu(h.stops,de*2).forEach(function(Ie){return xe.addColorStop(Ie.stop,Ut(Ie.color))}),n.path(j),n.ctx.fillStyle=xe,de!==we?(Ue=t.bounds.left+.5*t.bounds.width,ye=t.bounds.top+.5*t.bounds.height,ve=we/de,be=1/ve,n.ctx.save(),n.ctx.translate(Ue,ye),n.ctx.transform(1,0,0,ve,0,0),n.ctx.translate(-Ue,-ye),n.ctx.fillRect(te,be*(ce-ye)+ye,X,ee*be),n.ctx.restore()):n.ctx.fill())),Ee.label=6;case 6:return A--,[2]}})},n=this,s=0,o=t.styles.backgroundImage.slice(0).reverse(),c.label=1;case 1:return s<o.length?(l=o[s],[5,r(l)]):[3,4];case 2:c.sent(),c.label=3;case 3:return s++,[3,1];case 4:return[2]}})})},e.prototype.renderSolidBorder=function(t,A,r){return Wt(this,void 0,void 0,function(){return Nt(this,function(n){return this.path(Qd(r,A)),this.ctx.fillStyle=Ut(t),this.ctx.fill(),[2]})})},e.prototype.renderDoubleBorder=function(t,A,r,n){return Wt(this,void 0,void 0,function(){var s,o;return Nt(this,function(l){switch(l.label){case 0:return A<3?[4,this.renderSolidBorder(t,r,n)]:[3,2];case 1:return l.sent(),[2];case 2:return s=tv(n,r),this.path(s),this.ctx.fillStyle=Ut(t),this.ctx.fill(),o=Av(n,r),this.path(o),this.ctx.fill(),[2]}})})},e.prototype.renderNodeBackgroundAndBorders=function(t){return Wt(this,void 0,void 0,function(){var A,r,n,s,o,l,c,h,g=this;return Nt(this,function(C){switch(C.label){case 0:return this.applyEffects(t.getEffects(2)),A=t.container.styles,r=!$A(A.backgroundColor)||A.backgroundImage.length,n=[{style:A.borderTopStyle,color:A.borderTopColor,width:A.borderTopWidth},{style:A.borderRightStyle,color:A.borderRightColor,width:A.borderRightWidth},{style:A.borderBottomStyle,color:A.borderBottomColor,width:A.borderBottomWidth},{style:A.borderLeftStyle,color:A.borderLeftColor,width:A.borderLeftWidth}],s=dv(ki(A.backgroundClip,0),t.curves),r||A.boxShadow.length?(this.ctx.save(),this.path(s),this.ctx.clip(),$A(A.backgroundColor)||(this.ctx.fillStyle=Ut(A.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(t.container)]):[3,2];case 1:C.sent(),this.ctx.restore(),A.boxShadow.slice(0).reverse().forEach(function(x){g.ctx.save();var b=hs(t.curves),v=x.inset?0:cv,U=jC(b,-v+(x.inset?1:-1)*x.spread.number,(x.inset?1:-1)*x.spread.number,x.spread.number*(x.inset?-2:2),x.spread.number*(x.inset?-2:2));x.inset?(g.path(b),g.ctx.clip(),g.mask(U)):(g.mask(b),g.ctx.clip(),g.path(U)),g.ctx.shadowOffsetX=x.offsetX.number+v,g.ctx.shadowOffsetY=x.offsetY.number,g.ctx.shadowColor=Ut(x.color),g.ctx.shadowBlur=x.blur.number,g.ctx.fillStyle=x.inset?Ut(x.color):"rgba(0,0,0,1)",g.ctx.fill(),g.ctx.restore()}),C.label=2;case 2:o=0,l=0,c=n,C.label=3;case 3:return l<c.length?(h=c[l],h.style!==0&&!$A(h.color)&&h.width>0?h.style!==2?[3,5]:[4,this.renderDashedDottedBorder(h.color,h.width,o,t.curves,2)]:[3,11]):[3,13];case 4:return C.sent(),[3,11];case 5:return h.style!==3?[3,7]:[4,this.renderDashedDottedBorder(h.color,h.width,o,t.curves,3)];case 6:return C.sent(),[3,11];case 7:return h.style!==4?[3,9]:[4,this.renderDoubleBorder(h.color,h.width,o,t.curves)];case 8:return C.sent(),[3,11];case 9:return[4,this.renderSolidBorder(h.color,o,t.curves)];case 10:C.sent(),C.label=11;case 11:o++,C.label=12;case 12:return l++,[3,3];case 13:return[2]}})})},e.prototype.renderDashedDottedBorder=function(t,A,r,n,s){return Wt(this,void 0,void 0,function(){var o,l,c,h,g,C,x,b,v,U,F,M,N,R,L,z,L,z;return Nt(this,function(q){return this.ctx.save(),o=iv(n,r),l=Qd(n,r),s===2&&(this.path(l),this.ctx.clip()),cA(l[0])?(c=l[0].start.x,h=l[0].start.y):(c=l[0].x,h=l[0].y),cA(l[1])?(g=l[1].end.x,C=l[1].end.y):(g=l[1].x,C=l[1].y),r===0||r===2?x=Math.abs(c-g):x=Math.abs(h-C),this.ctx.beginPath(),s===3?this.formatPath(o):this.formatPath(l.slice(0,2)),b=A<3?A*3:A*2,v=A<3?A*2:A,s===3&&(b=A,v=A),U=!0,x<=b*2?U=!1:x<=b*2+v?(F=x/(2*b+v),b*=F,v*=F):(M=Math.floor((x+v)/(b+v)),N=(x-M*b)/(M-1),R=(x-(M+1)*b)/M,v=R<=0||Math.abs(v-N)<Math.abs(v-R)?N:R),U&&(s===3?this.ctx.setLineDash([0,b+v]):this.ctx.setLineDash([b,v])),s===3?(this.ctx.lineCap="round",this.ctx.lineWidth=A):this.ctx.lineWidth=A*2+1.1,this.ctx.strokeStyle=Ut(t),this.ctx.stroke(),this.ctx.setLineDash([]),s===2&&(cA(l[0])&&(L=l[3],z=l[0],this.ctx.beginPath(),this.formatPath([new De(L.end.x,L.end.y),new De(z.start.x,z.start.y)]),this.ctx.stroke()),cA(l[1])&&(L=l[1],z=l[2],this.ctx.beginPath(),this.formatPath([new De(L.end.x,L.end.y),new De(z.start.x,z.start.y)]),this.ctx.stroke())),this.ctx.restore(),[2]})})},e.prototype.render=function(t){return Wt(this,void 0,void 0,function(){var A;return Nt(this,function(r){switch(r.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=Ut(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),A=ev(t),[4,this.renderStack(A)];case 1:return r.sent(),this.applyEffects([]),[2,this.canvas]}})})},e})(Sd),uv=function(i){return i instanceof ju||i instanceof qu?!0:i instanceof Ca&&i.type!==ns&&i.type!==rs},dv=function(i,e){switch(i){case 0:return hs(e);case 2:return XC(e);default:return us(e)}},pv=function(i){switch(i){case 1:return"center";case 2:return"right";default:return"left"}},fv=["-apple-system","system-ui"],gv=function(i){return/iPhone OS 15_(0|1)/.test(window.navigator.userAgent)?i.filter(function(e){return fv.indexOf(e)===-1}):i},mv=(function(i){gA(e,i);function e(t,A){var r=i.call(this,t,A)||this;return r.canvas=A.canvas?A.canvas:document.createElement("canvas"),r.ctx=r.canvas.getContext("2d"),r.options=A,r.canvas.width=Math.floor(A.width*A.scale),r.canvas.height=Math.floor(A.height*A.scale),r.canvas.style.width=A.width+"px",r.canvas.style.height=A.height+"px",r.ctx.scale(r.options.scale,r.options.scale),r.ctx.translate(-A.x,-A.y),r.context.logger.debug("EXPERIMENTAL ForeignObject renderer initialized ("+A.width+"x"+A.height+" at "+A.x+","+A.y+") with scale "+A.scale),r}return e.prototype.render=function(t){return Wt(this,void 0,void 0,function(){var A,r;return Nt(this,function(n){switch(n.label){case 0:return A=wa(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,t),[4,wv(A)];case 1:return r=n.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=Ut(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(r,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},e})(Sd),wv=function(i){return new Promise(function(e,t){var A=new Image;A.onload=function(){e(A)},A.onerror=t,A.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(i))})},Bv=(function(){function i(e){var t=e.id,A=e.enabled;this.id=t,this.enabled=A,this.start=Date.now()}return i.prototype.debug=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.enabled&&(typeof window<"u"&&window.console&&typeof console.debug=="function"?console.debug.apply(console,xn([this.id,this.getTime()+"ms"],e)):this.info.apply(this,e))},i.prototype.getTime=function(){return Date.now()-this.start},i.prototype.info=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.enabled&&typeof window<"u"&&window.console&&typeof console.info=="function"&&console.info.apply(console,xn([this.id,this.getTime()+"ms"],e))},i.prototype.warn=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.enabled&&(typeof window<"u"&&window.console&&typeof console.warn=="function"?console.warn.apply(console,xn([this.id,this.getTime()+"ms"],e)):this.info.apply(this,e))},i.prototype.error=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.enabled&&(typeof window<"u"&&window.console&&typeof console.error=="function"?console.error.apply(console,xn([this.id,this.getTime()+"ms"],e)):this.info.apply(this,e))},i.instances={},i})(),yv=(function(){function i(e,t){var A;this.windowBounds=t,this.instanceName="#"+i.instanceCount++,this.logger=new Bv({id:this.instanceName,enabled:e.logging}),this.cache=(A=e.cache)!==null&&A!==void 0?A:new OC(this,e)}return i.instanceCount=1,i})(),Cv=function(i,e){return e===void 0&&(e={}),vv(i,e)};typeof window<"u"&&yd.setContext(window);var vv=function(i,e){return Wt(void 0,void 0,void 0,function(){var t,A,r,n,s,o,l,c,h,g,C,x,b,v,U,F,M,N,R,L,q,z,q,$,V,j,te,ce,X,ee,se,le,ne,he,de,we,xe,Ue,ye,ve;return Nt(this,function(be){switch(be.label){case 0:if(!i||typeof i!="object")return[2,Promise.reject("Invalid element provided as first argument")];if(t=i.ownerDocument,!t)throw new Error("Element is not attached to a Document");if(A=t.defaultView,!A)throw new Error("Document is not attached to a Window");return r={allowTaint:($=e.allowTaint)!==null&&$!==void 0?$:!1,imageTimeout:(V=e.imageTimeout)!==null&&V!==void 0?V:15e3,proxy:e.proxy,useCORS:(j=e.useCORS)!==null&&j!==void 0?j:!1},n=Po({logging:(te=e.logging)!==null&&te!==void 0?te:!0,cache:e.cache},r),s={windowWidth:(ce=e.windowWidth)!==null&&ce!==void 0?ce:A.innerWidth,windowHeight:(X=e.windowHeight)!==null&&X!==void 0?X:A.innerHeight,scrollX:(ee=e.scrollX)!==null&&ee!==void 0?ee:A.pageXOffset,scrollY:(se=e.scrollY)!==null&&se!==void 0?se:A.pageYOffset},o=new IA(s.scrollX,s.scrollY,s.windowWidth,s.windowHeight),l=new yv(n,o),c=(le=e.foreignObjectRendering)!==null&&le!==void 0?le:!1,h={allowTaint:(ne=e.allowTaint)!==null&&ne!==void 0?ne:!1,onclone:e.onclone,ignoreElements:e.ignoreElements,inlineImages:c,copyStyles:c},l.logger.debug("Starting document clone with size "+o.width+"x"+o.height+" scrolled to "+-o.left+","+-o.top),g=new wd(l,i,h),C=g.clonedReferenceElement,C?[4,g.toIFrame(t,o)]:[2,Promise.reject("Unable to find element in cloned iframe")];case 1:return x=be.sent(),b=Ta(C)||TC(C)?jm(C.ownerDocument):bn(l,C),v=b.width,U=b.height,F=b.left,M=b.top,N=Tv(l,C,e.backgroundColor),R={canvas:e.canvas,backgroundColor:N,scale:(de=(he=e.scale)!==null&&he!==void 0?he:A.devicePixelRatio)!==null&&de!==void 0?de:1,x:((we=e.x)!==null&&we!==void 0?we:0)+F,y:((xe=e.y)!==null&&xe!==void 0?xe:0)+M,width:(Ue=e.width)!==null&&Ue!==void 0?Ue:Math.ceil(v),height:(ye=e.height)!==null&&ye!==void 0?ye:Math.ceil(U)},c?(l.logger.debug("Document cloned, using foreign object rendering"),q=new mv(l,R),[4,q.render(C)]):[3,3];case 2:return L=be.sent(),[3,5];case 3:return l.logger.debug("Document cloned, element located at "+F+","+M+" with size "+v+"x"+U+" using computed rendering"),l.logger.debug("Starting DOM parsing"),z=Ad(l,C),N===z.styles.backgroundColor&&(z.styles.backgroundColor=_A.TRANSPARENT),l.logger.debug("Starting renderer for element at "+R.x+","+R.y+" with size "+R.width+"x"+R.height),q=new hv(l,R),[4,q.render(z)];case 4:L=be.sent(),be.label=5;case 5:return(!((ve=e.removeContainer)!==null&&ve!==void 0)||ve)&&(wd.destroy(x)||l.logger.error("Cannot detach cloned iframe as it is not in the DOM anymore")),l.logger.debug("Finished rendering"),[2,L]}})})},Tv=function(i,e,t){var A=e.ownerDocument,r=A.documentElement?vr(i,getComputedStyle(A.documentElement).backgroundColor):_A.TRANSPARENT,n=A.body?vr(i,getComputedStyle(A.body).backgroundColor):_A.TRANSPARENT,s=typeof t=="string"?vr(i,t):t===null?_A.TRANSPARENT:4294967295;return e===A.documentElement?$A(r)?$A(n)?s:n:r:s};const xv={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};class bv{constructor(e,t,A="#3b82f6",r=2){this.price=e,this.originTime=t,this.color=A,this.lineWidth=r,this.visible=!0,this._chart=null,this._series=null,this._paneView=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const l=o.context,c=n._chart,h=n._series;if(!c||!h)return;const g=h.priceToCoordinate(n.price);if(g==null)return;const C=Math.round(g*o.verticalPixelRatio),x=c.timeScale().timeToCoordinate(n.originTime),b=x==null?0:Math.max(0,Math.round(x*o.horizontalPixelRatio)),v=o.bitmapSize.width;if(b>=v)return;l.save(),l.beginPath(),l.strokeStyle=n.color,l.lineWidth=n.lineWidth*o.verticalPixelRatio,l.setLineDash([]),l.moveTo(b,C),l.lineTo(v,C),l.stroke(),l.beginPath(),l.fillStyle=n.color;const U=3*o.verticalPixelRatio;l.arc(b,C,U,0,Math.PI*2),l.fill(),l.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Ed{constructor(e,t={}){this.price=e,this.text=t.text??"",this.textColor=t.textColor??"#ffffff",this.fontSize=t.fontSize??12,this.hAlign=t.hAlign??"center",this.vAlign=t.vAlign??"top",this.originTime=t.originTime??null,this.visible=!0,this._series=null,this._chart=null;const A=this;this._paneView={renderer(){return{draw(r){r.useBitmapCoordinateSpace(({context:n,bitmapSize:s,horizontalPixelRatio:o,verticalPixelRatio:l})=>{if(!A.visible||!A.text||!A._series)return;const c=A._series.priceToCoordinate(A.price);if(c==null)return;const h=Math.round(A.fontSize*l);n.font=`${h}px ui-sans-serif, system-ui, sans-serif`,n.textBaseline="middle";const g=Math.round(8*o),C=Math.round(14*l),x=s.width;let b;if(A.hAlign==="left")if(A.originTime!=null&&A._chart){const F=A._chart.timeScale().timeToCoordinate(A.originTime);b=F!=null?Math.round(F*o):g,n.textAlign="right"}else b=g,n.textAlign="left";else A.hAlign==="right"?(b=x-g,n.textAlign="right"):(b=x/2,n.textAlign="center");const v=Math.round(c*l);let U;A.vAlign==="top"?U=v-C:A.vAlign==="bottom"?U=v+C:U=v,n.fillStyle=A.textColor,n.fillText(A.text,b,U)})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Qv{constructor(e,t,A,r="#3b82f6",n=2){this.p1=e,this.p2=t,this.info=A,this.color=r,this.lineWidth=n,this.statsShowAlways=!0,this.statsColor="#5f8f96",this.statsPosition="right",this.statsPriceRange=!0,this.statsBarsRange=!0,this.statsDateRange=!0,this.statsAngle=!0,this.statsDistance=!0,this.isActive=!1,this.visible=!0,this._chart=null,this._series=null;const s=this;this._paneView={renderer(){return{draw(o){o.useBitmapCoordinateSpace(l=>{if(!s.visible)return;const c=s._chart,h=s._series;if(!c||!h)return;const g=l.horizontalPixelRatio,C=l.verticalPixelRatio,x=c.timeScale().timeToCoordinate(s.p1.rawTime??s.p1.time),b=c.timeScale().timeToCoordinate(s.p2.rawTime??s.p2.time),v=h.priceToCoordinate(s.p1.price),U=h.priceToCoordinate(s.p2.price);if(x==null||b==null||v==null||U==null)return;const F=Math.round(x*g),M=Math.round(v*C),N=Math.round(b*g),R=Math.round(U*C),L=l.context;if(L.save(),L.beginPath(),L.strokeStyle=s.color,L.lineWidth=s.lineWidth*C,L.setLineDash([]),L.moveTo(F,M),L.lineTo(N,R),L.stroke(),L.beginPath(),L.fillStyle=s.color,L.arc(F,M,3*C,0,Math.PI*2),L.fill(),L.beginPath(),L.arc(N,R,3*C,0,Math.PI*2),L.fill(),!s.statsShowAlways&&!s.isActive){L.restore();return}const{priceDiff:z,pricePct:q,bars:$,days:V,angle:j}=s.info,te=z>=0?"+":"",ce=[];if(s.statsPriceRange!==!1&&ce.push(`${te}${z.toFixed(5)} (${te}${q.toFixed(2)}%)`),s.statsBarsRange!==!1&&ce.push(`${$} bars`),s.statsDateRange!==!1&&ce.push(`${V} days`),s.statsAngle!==!1&&ce.push(`∠ ${j.toFixed(1)}°`),s.statsDistance&&ce.push(`Δ ${Math.abs(z).toFixed(5)}`),ce.length===0){L.restore();return}const X=Math.round(11*C);L.font=`${X}px sans-serif`;const ee=X*1.6,se=8*C,le=Math.max(...ce.map(Ze=>L.measureText(Ze).width))+se*2,ne=ce.length*ee+se*2,he=s.statsPosition??"right";let de,we;he==="left"?(de=F,we=M):he==="center"?(de=Math.round((F+N)/2),we=Math.round((M+R)/2)):(de=N,we=R);let xe,Ue;he==="left"?(xe=de-le-10*g,Ue=we-ne-4*C):he==="center"?(xe=de-le/2,Ue=we-ne-8*C):(xe=de+10*g,Ue=we-ne-4*C);const ye=l.bitmapSize.width,ve=l.bitmapSize.height,be=Math.min(Math.max(0,xe),ye-le-4*g),Ee=Math.min(Math.max(4*C,Ue),ve-ne-4*C),Ie=4*C;L.beginPath(),L.moveTo(be+Ie,Ee),L.lineTo(be+le-Ie,Ee),L.quadraticCurveTo(be+le,Ee,be+le,Ee+Ie),L.lineTo(be+le,Ee+ne-Ie),L.quadraticCurveTo(be+le,Ee+ne,be+le-Ie,Ee+ne),L.lineTo(be+Ie,Ee+ne),L.quadraticCurveTo(be,Ee+ne,be,Ee+ne-Ie),L.lineTo(be,Ee+Ie),L.quadraticCurveTo(be,Ee,be+Ie,Ee),L.closePath(),L.fillStyle="rgba(30, 41, 59, 0.92)",L.fill(),L.strokeStyle=s.statsColor||s.color,L.lineWidth=1*C,L.stroke(),L.fillStyle="#e2e8f0",L.textAlign="left",ce.forEach((Ze,ze)=>{L.fillText(Ze,be+se,Ee+se+X+ze*ee)}),L.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Ld{constructor(e,t,A,r={}){this.p1=e,this.p2=t,this.info=A,this.visible=!0,this._chart=null,this._series=null,this.lineColor=r.lineColor??null,this.showArea=r.showArea!==!1,this.statsShowAlways=r.statsShowAlways!==!1,this.isActive=!1,this.statsColor=r.statsColor??"#5f8f96",this.statsPosition=r.statsPosition??"right",this.statsPriceRange=r.statsPriceRange!==!1,this.statsBarsRange=r.statsBarsRange!==!1,this.statsDateRange=r.statsDateRange!==!1;const n=t.price>=e.price;this.color=n?"#3b82f6":"#ef5350",this.fillColor=n?"rgba(59,130,246,0.1)":"rgba(239,83,80,0.1)";const s=this;this._paneView={renderer(){return{draw(o){o.useBitmapCoordinateSpace(l=>{if(!s.visible)return;const c=s._chart,h=s._series;if(!c||!h)return;const g=l.horizontalPixelRatio,C=l.verticalPixelRatio,x=c.timeScale().timeToCoordinate(s.p1.rawTime??s.p1.time),b=c.timeScale().timeToCoordinate(s.p2.rawTime??s.p2.time),v=h.priceToCoordinate(s.p1.price),U=h.priceToCoordinate(s.p2.price);if(x==null||b==null||v==null||U==null)return;const F=Math.round(x*g),M=Math.round(v*C),N=Math.round(b*g),R=Math.round(U*C),L=s.lineColor??s.color,z=l.context;if(z.save(),s.showArea&&(z.fillStyle=s.fillColor,z.fillRect(Math.min(F,N),Math.min(M,R),Math.abs(N-F),Math.abs(R-M)),z.strokeStyle=L,z.lineWidth=1*C,z.setLineDash([]),z.strokeRect(Math.min(F,N),Math.min(M,R),Math.abs(N-F),Math.abs(R-M))),z.beginPath(),z.strokeStyle=L,z.lineWidth=2*C,z.moveTo(F,M),z.lineTo(N,R),z.stroke(),z.fillStyle=L,z.beginPath(),z.arc(F,M,3*C,0,Math.PI*2),z.fill(),z.beginPath(),z.arc(N,R,3*C,0,Math.PI*2),z.fill(),!s.statsShowAlways&&!s.isActive){z.restore();return}const{priceDiff:q,pricePct:$,bars:V,days:j}=s.info,te=q>=0?"+":"",ce=[];if(s.statsPriceRange&&ce.push(te+q.toFixed(5)+" ("+te+$.toFixed(2)+"%)"),s.statsBarsRange&&ce.push(V+" bars"),s.statsDateRange&&ce.push(j+" days"),ce.length===0){z.restore();return}const X=Math.round(11*C);z.font=X+"px sans-serif";const ee=X*1.6,se=8*C,le=Math.max(...ce.map(be=>z.measureText(be).width))+se*2,ne=ce.length*ee+se*2,he=l.bitmapSize.width,de=l.bitmapSize.height;let we,xe;if(s.statsPosition==="left")we=F-le-10*g,xe=M-ne-4*C;else if(s.statsPosition==="center"){const be=(F+N)/2,Ee=(M+R)/2;we=be-le/2,xe=Ee-ne-4*C}else we=N+10*g,xe=R-ne-4*C;const Ue=Math.min(Math.max(0,we),he-le-4*g),ye=Math.min(Math.max(4*C,xe),de-ne-4*C),ve=4*C;z.beginPath(),z.moveTo(Ue+ve,ye),z.lineTo(Ue+le-ve,ye),z.quadraticCurveTo(Ue+le,ye,Ue+le,ye+ve),z.lineTo(Ue+le,ye+ne-ve),z.quadraticCurveTo(Ue+le,ye+ne,Ue+le-ve,ye+ne),z.lineTo(Ue+ve,ye+ne),z.quadraticCurveTo(Ue,ye+ne,Ue,ye+ne-ve),z.lineTo(Ue,ye+ve),z.quadraticCurveTo(Ue,ye,Ue+ve,ye),z.closePath(),z.fillStyle="rgba(30, 41, 59, 0.92)",z.fill(),z.strokeStyle=s.statsColor||L,z.lineWidth=1*C,z.stroke(),z.fillStyle="#e2e8f0",z.textAlign="left",ce.forEach((be,Ee)=>{z.fillText(be,Ue+se,ye+se+X+Ee*ee)}),z.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Fv{constructor(e,t,A={}){this.p1=e,this.p2=t,this.visible=!0,this.strokeColor=A.strokeColor??"#7aa6ae",this.fillColor=A.fillColor??"rgba(148, 163, 184, 0.18)",this.lineWidth=A.lineWidth??1,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=o.timeScale().timeToCoordinate(r.p2.rawTime),x=l.priceToCoordinate(r.p1.price),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=Math.min(g,C)*c,U=Math.max(g,C)*c,F=Math.min(x,b)*h,M=Math.max(x,b)*h,N=U-v,R=M-F;if(N<.5||R<.5)return;const L=s.context;L.save(),L.fillStyle=r.fillColor,L.fillRect(v,F,N,R),L.strokeStyle=r.strokeColor,L.lineWidth=r.lineWidth*h,L.setLineDash([]),L.strokeRect(v,F,N,R),L.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Uv{constructor(e,t,A={}){this.p1=e,this.p2=t,this.visible=!0,this.strokeColor=A.strokeColor??"#7aa6ae",this.lineWidth=A.lineWidth??1,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=l.priceToCoordinate(r.p1.price),x=o.timeScale().timeToCoordinate(r.p2.rawTime),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=g*c,U=C*h,F=x*c,M=b*h,N=Math.hypot(F-v,M-U);if(N<.5)return;const R=s.context;R.save(),R.strokeStyle=r.strokeColor,R.lineWidth=r.lineWidth*h,R.setLineDash([]),R.beginPath(),R.arc(v,U,N,0,Math.PI*2),R.stroke(),R.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Sv{constructor(e,t,A,r={}){this.p1=e,this.p2=t,this.p3=A,this.visible=!0,this.strokeColor=r.strokeColor??"#7aa6ae",this.fillColor=r.fillColor??"rgba(148, 163, 184, 0.18)",this.lineWidth=r.lineWidth??1,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const l=n._chart,c=n._series;if(!l||!c)return;const h=o.horizontalPixelRatio,g=o.verticalPixelRatio,C=l.timeScale().timeToCoordinate(n.p1.rawTime),x=c.priceToCoordinate(n.p1.price),b=l.timeScale().timeToCoordinate(n.p2.rawTime),v=c.priceToCoordinate(n.p2.price),U=l.timeScale().timeToCoordinate(n.p3.rawTime),F=c.priceToCoordinate(n.p3.price);if(C==null||x==null||b==null||v==null||U==null||F==null)return;const M=C*h,N=x*g,R=b*h,L=v*g,z=U*h,q=F*g,$=o.context;$.save(),$.beginPath(),$.moveTo(M,N),$.lineTo(R,L),$.lineTo(z,q),$.closePath(),$.fillStyle=n.fillColor,$.fill(),$.strokeStyle=n.strokeColor,$.lineWidth=n.lineWidth*g,$.setLineDash([]),$.stroke(),$.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Ev{constructor(e,t,A={}){this.p1=e,this.p2=t,this.minorRatio=A.minorRatio??.45,this.previewAsLine=A.previewAsLine??!1,this.visible=!0,this.strokeColor=A.strokeColor??"#7aa6ae",this.lineWidth=A.lineWidth??1,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=l.priceToCoordinate(r.p1.price),x=o.timeScale().timeToCoordinate(r.p2.rawTime),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=g*c,U=C*h,F=x*c,M=b*h,N=F-v,R=M-U,L=Math.hypot(N,R);if(L<.5)return;const z=s.context;if(z.save(),z.strokeStyle=r.strokeColor,z.lineWidth=r.lineWidth*h,z.setLineDash([]),r.previewAsLine)z.beginPath(),z.moveTo(v,U),z.lineTo(F,M),z.stroke();else{const q=(v+F)/2,$=(U+M)/2,V=Math.atan2(R,N),j=L/2,te=Math.max(1,j*Math.max(.05,r.minorRatio));z.beginPath(),z.ellipse(q,$,j,te,V,0,Math.PI*2),z.stroke()}z.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Md{constructor(e,t,A={}){this.p1=e,this.p2=t,this.color=A.color??"#f59e0b",this.lineWidth=A.lineWidth??2,this.arrowLeft=A.arrowLeft??!1,this.arrowRight=A.arrowRight!==!1,this.rayLeft=A.rayLeft??!1,this.rayRight=A.rayRight??!1,this.statsShowAlways=A.statsShowAlways??!1,this.statsColor=A.statsColor??"#5f8f96",this.statsPosition=A.statsPosition??"right",this.statsPriceRange=A.statsPriceRange??!1,this.statsBarsRange=A.statsBarsRange??!1,this.statsDateRange=A.statsDateRange??!1,this.statsAngle=A.statsAngle??!1,this.statsDistance=A.statsDistance??!1,this.isActive=!1,this.visible=!0,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=o.timeScale().timeToCoordinate(r.p2.rawTime),x=l.priceToCoordinate(r.p1.price),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=Math.round(g*c),U=Math.round(x*h),F=Math.round(C*c),M=Math.round(b*h),N=F-v,R=M-U,L=s.context;L.save(),L.strokeStyle=r.color,L.fillStyle=r.color,L.lineWidth=r.lineWidth*h,L.setLineDash([]);const z=Math.abs(N)<1e-4?0:R/N;if(r.rayLeft){const ce=U+z*(0-v);L.beginPath(),L.moveTo(0,ce),L.lineTo(v,U),L.stroke()}if(r.rayRight){const te=s.bitmapSize.width,ce=M+z*(te-F);L.beginPath(),L.moveTo(F,M),L.lineTo(te,ce),L.stroke()}L.beginPath(),L.moveTo(v,U),L.lineTo(F,M),L.stroke();const q=Math.atan2(M-U,F-v),$=(r.lineWidth*4+4)*h,V=Math.PI/7;if(r.arrowRight){const te=F-$*Math.cos(q-V),ce=M-$*Math.sin(q-V),X=F-$*Math.cos(q+V),ee=M-$*Math.sin(q+V);L.beginPath(),L.moveTo(F,M),L.lineTo(te,ce),L.lineTo(X,ee),L.closePath(),L.fill()}if(r.arrowLeft){const te=q+Math.PI,ce=v-$*Math.cos(te-V),X=U-$*Math.sin(te-V),ee=v-$*Math.cos(te+V),se=U-$*Math.sin(te+V);L.beginPath(),L.moveTo(v,U),L.lineTo(ce,X),L.lineTo(ee,se),L.closePath(),L.fill()}if((r.statsShowAlways||r.isActive)&&(r.statsPriceRange||r.statsBarsRange||r.statsDateRange||r.statsDistance||r.statsAngle)){const te=r.p1.rawTime,ce=r.p2.rawTime,X=r.p1.price,ee=r.p2.price,se=[];if(r.statsPriceRange){const ne=Math.abs(ee-X),he=X!==0?Math.abs((ee-X)/X*100):0,de=ne<1e-4?6:ne<.01?5:ne<1?4:2;se.push("↕ "+ne.toFixed(de)+" ("+he.toFixed(2)+"%)")}const le=[];if(r.statsBarsRange)try{const ne=o.timeScale().timeToCoordinate(te),he=o.timeScale().timeToCoordinate(ce);if(ne!=null&&he!=null){const de=o.timeScale().coordinateToLogical(ne),we=o.timeScale().coordinateToLogical(he);de!=null&&we!=null&&le.push("↔ "+Math.abs(Math.round(we-de))+" bars")}}catch{}if(r.statsDateRange){const ne=Math.abs(ce-te),he=Math.floor(ne/86400),de=Math.floor(ne%86400/3600),we=Math.floor(ne%3600/60);let xe=he>0?he+" day"+(he!==1?"s":""):"";de>0&&(xe+=(xe?" ":"")+de+" hour"+(de!==1?"s":"")),!he&&!de&&(xe=we+" min"+(we!==1?"s":"")),r.statsBarsRange&&le.length>0?le[le.length-1]+=" ("+xe+")":le.push(xe)}if(r.statsDistance){const ne=N/c,he=R/h;le.push("distance: "+Math.sqrt(ne*ne+he*he).toFixed(2))}if(le.length>0&&se.push(le.join(", ")),r.statsAngle){const ne=N/c,he=R/h,de=Math.atan2(he,ne)*180/Math.PI;se.push("∠ "+de.toFixed(0)+"°")}if(se.length>0){const ne=Math.min(c,h),he=11*ne,de=he*1.5,we=5*ne;L.font=he+"px sans-serif";const Ue=se.reduce((Se,fe)=>Math.max(Se,L.measureText(fe).width),0)+we*2,ye=se.length*de+we*2,[ve,be,Ee,Ie]=v<=F?[v,U,F,M]:[F,M,v,U];let Ze,ze;r.statsPosition==="left"?(Ze=ve,ze=be):r.statsPosition==="center"?(Ze=(ve+Ee)/2,ze=(be+Ie)/2):(Ze=Ee,ze=Ie);const Ce=Ze-Ue/2,Ne=ze-ye-12*ne;L.fillStyle="rgba(20, 20, 30, 0.72)",L.fillRect(Ce,Ne,Ue,ye),L.strokeStyle=r.statsColor,L.lineWidth=1*ne,L.strokeRect(Ce,Ne,Ue,ye),L.fillStyle=r.statsColor,L.textBaseline="top",L.textAlign="left",se.forEach((Se,fe)=>{L.fillText(Se,Ce+we,Ne+we+fe*de)})}}L.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Lv{constructor(e,t,A={}){this.p1=e,this.p2=t,this.color=A.color??"#7aa6ae",this.lineWidth=A.lineWidth??2,this.arrowLeft=A.arrowLeft??!1,this.arrowRight=A.arrowRight??!1,this.rayLeft=A.rayLeft??!1,this.rayRight=A.rayRight!==!1,this.statsShowAlways=A.statsShowAlways??!1,this.statsColor=A.statsColor??"#5f8f96",this.statsPosition=A.statsPosition??"right",this.statsPriceRange=A.statsPriceRange??!1,this.statsBarsRange=A.statsBarsRange??!1,this.statsDateRange=A.statsDateRange??!1,this.statsAngle=A.statsAngle??!1,this.statsDistance=A.statsDistance??!1,this.isActive=!1,this.visible=!0,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=o.timeScale().timeToCoordinate(r.p2.rawTime),x=l.priceToCoordinate(r.p1.price),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=Math.round(g*c),U=Math.round(x*h),F=Math.round(C*c),M=Math.round(b*h),N=F-v,R=M-U,L=s.context;L.save(),L.strokeStyle=r.color,L.fillStyle=r.color,L.lineWidth=r.lineWidth*h,L.setLineDash([]);const z=Math.abs(N)<1e-4?0:R/N;if(r.rayLeft){const ce=U+z*(0-v);L.beginPath(),L.moveTo(0,ce),L.lineTo(v,U),L.stroke()}if(r.rayRight){const te=s.bitmapSize.width,ce=M+z*(te-F);L.beginPath(),L.moveTo(F,M),L.lineTo(te,ce),L.stroke()}L.beginPath(),L.moveTo(v,U),L.lineTo(F,M),L.stroke();const q=Math.atan2(M-U,F-v),$=(r.lineWidth*4+4)*h,V=Math.PI/7;if(r.arrowRight){const te=F-$*Math.cos(q-V),ce=M-$*Math.sin(q-V),X=F-$*Math.cos(q+V),ee=M-$*Math.sin(q+V);L.beginPath(),L.moveTo(F,M),L.lineTo(te,ce),L.lineTo(X,ee),L.closePath(),L.fill()}if(r.arrowLeft){const te=q+Math.PI,ce=v-$*Math.cos(te-V),X=U-$*Math.sin(te-V),ee=v-$*Math.cos(te+V),se=U-$*Math.sin(te+V);L.beginPath(),L.moveTo(v,U),L.lineTo(ce,X),L.lineTo(ee,se),L.closePath(),L.fill()}if((r.statsShowAlways||r.isActive)&&(r.statsPriceRange||r.statsBarsRange||r.statsDateRange||r.statsDistance||r.statsAngle)){const te=r.p1.rawTime,ce=r.p2.rawTime,X=r.p1.price,ee=r.p2.price,se=[];if(r.statsPriceRange){const ne=Math.abs(ee-X),he=X!==0?Math.abs((ee-X)/X*100):0,de=ne<1e-4?6:ne<.01?5:ne<1?4:2;se.push("↕ "+ne.toFixed(de)+" ("+he.toFixed(2)+"%)")}const le=[];if(r.statsBarsRange)try{const ne=o.timeScale().timeToCoordinate(te),he=o.timeScale().timeToCoordinate(ce);if(ne!=null&&he!=null){const de=o.timeScale().coordinateToLogical(ne),we=o.timeScale().coordinateToLogical(he);de!=null&&we!=null&&le.push("↔ "+Math.abs(Math.round(we-de))+" bars")}}catch{}if(r.statsDateRange){const ne=Math.abs(ce-te),he=Math.floor(ne/86400),de=Math.floor(ne%86400/3600),we=Math.floor(ne%3600/60);let xe=he>0?he+" day"+(he!==1?"s":""):"";de>0&&(xe+=(xe?" ":"")+de+" hour"+(de!==1?"s":"")),!he&&!de&&(xe=we+" min"+(we!==1?"s":"")),r.statsBarsRange&&le.length>0?le[le.length-1]+=" ("+xe+")":le.push(xe)}if(r.statsDistance){const ne=N/c,he=R/h;le.push("distance: "+Math.sqrt(ne*ne+he*he).toFixed(2))}if(le.length>0&&se.push(le.join(", ")),r.statsAngle){const ne=N/c,he=R/h,de=Math.atan2(he,ne)*180/Math.PI;se.push("∠ "+de.toFixed(0)+"°")}if(se.length>0){const ne=Math.min(c,h),he=11*ne,de=he*1.5,we=5*ne;L.font=he+"px sans-serif";const Ue=se.reduce((Se,fe)=>Math.max(Se,L.measureText(fe).width),0)+we*2,ye=se.length*de+we*2,[ve,be,Ee,Ie]=v<=F?[v,U,F,M]:[F,M,v,U];let Ze,ze;r.statsPosition==="left"?(Ze=ve,ze=be):r.statsPosition==="center"?(Ze=(ve+Ee)/2,ze=(be+Ie)/2):(Ze=Ee,ze=Ie);const Ce=Ze-Ue/2,Ne=ze-ye-12*ne;L.fillStyle="rgba(20, 20, 30, 0.72)",L.fillRect(Ce,Ne,Ue,ye),L.strokeStyle=r.statsColor,L.lineWidth=1*ne,L.strokeRect(Ce,Ne,Ue,ye),L.fillStyle=r.statsColor,L.textBaseline="top",L.textAlign="left",se.forEach((Se,fe)=>{L.fillText(Se,Ce+we,Ne+we+fe*de)})}}L.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Mv{constructor(e,t,A={}){this.p1=e,this.p2=t,this.color=A.color??"#7aa6ae",this.lineWidth=A.lineWidth??2,this.arrowLeft=A.arrowLeft??!1,this.arrowRight=A.arrowRight??!1,this.rayLeft=A.rayLeft!==!1,this.rayRight=A.rayRight!==!1,this.statsShowAlways=A.statsShowAlways??!1,this.statsColor=A.statsColor??"#5f8f96",this.statsPosition=A.statsPosition??"right",this.statsPriceRange=A.statsPriceRange??!1,this.statsBarsRange=A.statsBarsRange??!1,this.statsDateRange=A.statsDateRange??!1,this.statsAngle=A.statsAngle??!1,this.statsDistance=A.statsDistance??!1,this.isActive=!1,this.visible=!0,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=o.timeScale().timeToCoordinate(r.p2.rawTime),x=l.priceToCoordinate(r.p1.price),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=Math.round(g*c),U=Math.round(x*h),F=Math.round(C*c),M=Math.round(b*h),N=F-v,R=M-U,L=s.context;L.save(),L.strokeStyle=r.color,L.fillStyle=r.color,L.lineWidth=r.lineWidth*h,L.setLineDash([]);const z=Math.abs(N)<1e-4?0:R/N;if(r.rayLeft){const ce=U+z*(0-v);L.beginPath(),L.moveTo(0,ce),L.lineTo(v,U),L.stroke()}if(r.rayRight){const te=s.bitmapSize.width,ce=M+z*(te-F);L.beginPath(),L.moveTo(F,M),L.lineTo(te,ce),L.stroke()}L.beginPath(),L.moveTo(v,U),L.lineTo(F,M),L.stroke();const q=Math.atan2(M-U,F-v),$=(r.lineWidth*4+4)*h,V=Math.PI/7;if(r.arrowRight){const te=F-$*Math.cos(q-V),ce=M-$*Math.sin(q-V),X=F-$*Math.cos(q+V),ee=M-$*Math.sin(q+V);L.beginPath(),L.moveTo(F,M),L.lineTo(te,ce),L.lineTo(X,ee),L.closePath(),L.fill()}if(r.arrowLeft){const te=q+Math.PI,ce=v-$*Math.cos(te-V),X=U-$*Math.sin(te-V),ee=v-$*Math.cos(te+V),se=U-$*Math.sin(te+V);L.beginPath(),L.moveTo(v,U),L.lineTo(ce,X),L.lineTo(ee,se),L.closePath(),L.fill()}if((r.statsShowAlways||r.isActive)&&(r.statsPriceRange||r.statsBarsRange||r.statsDateRange||r.statsDistance||r.statsAngle)){const te=r.p1.rawTime,ce=r.p2.rawTime,X=r.p1.price,ee=r.p2.price,se=[];if(r.statsPriceRange){const ne=Math.abs(ee-X),he=X!==0?Math.abs((ee-X)/X*100):0,de=ne<1e-4?6:ne<.01?5:ne<1?4:2;se.push("↕ "+ne.toFixed(de)+" ("+he.toFixed(2)+"%)")}const le=[];if(r.statsBarsRange)try{const ne=o.timeScale().timeToCoordinate(te),he=o.timeScale().timeToCoordinate(ce);if(ne!=null&&he!=null){const de=o.timeScale().coordinateToLogical(ne),we=o.timeScale().coordinateToLogical(he);de!=null&&we!=null&&le.push("↔ "+Math.abs(Math.round(we-de))+" bars")}}catch{}if(r.statsDateRange){const ne=Math.abs(ce-te),he=Math.floor(ne/86400),de=Math.floor(ne%86400/3600),we=Math.floor(ne%3600/60);let xe=he>0?he+" day"+(he!==1?"s":""):"";de>0&&(xe+=(xe?" ":"")+de+" hour"+(de!==1?"s":"")),!he&&!de&&(xe=we+" min"+(we!==1?"s":"")),r.statsBarsRange&&le.length>0?le[le.length-1]+=" ("+xe+")":le.push(xe)}if(r.statsDistance){const ne=N/c,he=R/h;le.push("distance: "+Math.sqrt(ne*ne+he*he).toFixed(2))}if(le.length>0&&se.push(le.join(", ")),r.statsAngle){const ne=N/c,he=R/h,de=Math.atan2(he,ne)*180/Math.PI;se.push("∠ "+de.toFixed(0)+"°")}if(se.length>0){const ne=Math.min(c,h),he=11*ne,de=he*1.5,we=5*ne;L.font=he+"px sans-serif";const Ue=se.reduce((Se,fe)=>Math.max(Se,L.measureText(fe).width),0)+we*2,ye=se.length*de+we*2,[ve,be,Ee,Ie]=v<=F?[v,U,F,M]:[F,M,v,U];let Ze,ze;r.statsPosition==="left"?(Ze=ve,ze=be):r.statsPosition==="center"?(Ze=(ve+Ee)/2,ze=(be+Ie)/2):(Ze=Ee,ze=Ie);const Ce=Ze-Ue/2,Ne=ze-ye-12*ne;L.fillStyle="rgba(20, 20, 30, 0.72)",L.fillRect(Ce,Ne,Ue,ye),L.strokeStyle=r.statsColor,L.lineWidth=1*ne,L.strokeRect(Ce,Ne,Ue,ye),L.fillStyle=r.statsColor,L.textBaseline="top",L.textAlign="left",se.forEach((Se,fe)=>{L.fillText(Se,Ce+we,Ne+we+fe*de)})}}L.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Hv{constructor(e,t,A="#22c55e",r=2){this.p1=e,this.p2=t,this.color=A,this.lineWidth=r,this.arrowLeft=!1,this.arrowRight=!1,this.rayLeft=!1,this.rayRight=!1,this.statsPriceRange=!1,this.statsBarsRange=!1,this.statsDateRange=!1,this.statsDistance=!1,this.statsAngle=!1,this.statsPosition="right",this.statsColor="#5f8f96",this.statsShowAlways=!1,this.isSelected=!1,this.visible=!0,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const l=n.arrowLeft||n.arrowRight||n.rayLeft||n.rayRight,c=(n.statsShowAlways||n.isSelected)&&(n.statsPriceRange||n.statsBarsRange||n.statsDateRange||n.statsDistance||n.statsAngle);if(!l&&!c)return;const h=n._chart,g=n._series;if(!h||!g)return;const C=o.horizontalPixelRatio,x=o.verticalPixelRatio,b=h.timeScale().timeToCoordinate(n.p1.rawTime??n.p1.time),v=h.timeScale().timeToCoordinate(n.p2.rawTime??n.p2.time),U=g.priceToCoordinate(n.p1.price),F=g.priceToCoordinate(n.p2.price);if(b==null||v==null||U==null||F==null)return;const M=b*C,N=U*x,R=v*C,L=F*x,[z,q,$,V]=M<=R?[M,N,R,L]:[R,L,M,N];let j=$-z,te=V-q;Math.abs(j)<1e-4&&(j=1e-4);const ce=te/j,X=o.context;if(X.save(),X.strokeStyle=n.color,X.fillStyle=n.color,X.lineWidth=n.lineWidth*x,X.setLineDash([]),n.rayLeft){const he=q+ce*(0-z);X.beginPath(),X.moveTo(0,he),X.lineTo(z,q),X.stroke()}if(n.rayRight){const ne=o.bitmapSize.width,he=V+ce*(ne-$);X.beginPath(),X.moveTo($,V),X.lineTo(ne,he),X.stroke()}const ee=Math.atan2(te,j),se=(n.lineWidth*4+4)*x,le=Math.PI/7;if(n.arrowRight){const ne=$-se*Math.cos(ee-le),he=V-se*Math.sin(ee-le),de=$-se*Math.cos(ee+le),we=V-se*Math.sin(ee+le);X.beginPath(),X.moveTo($,V),X.lineTo(ne,he),X.lineTo(de,we),X.closePath(),X.fill()}if(n.arrowLeft){const ne=ee+Math.PI,he=z-se*Math.cos(ne-le),de=q-se*Math.sin(ne-le),we=z-se*Math.cos(ne+le),xe=q-se*Math.sin(ne+le);X.beginPath(),X.moveTo(z,q),X.lineTo(he,de),X.lineTo(we,xe),X.closePath(),X.fill()}if(c){const ne=n.p1.rawTime??n.p1.time,he=n.p2.rawTime??n.p2.time,de=n.p1.price,we=n.p2.price,xe=[];if(n.statsPriceRange){const ye=Math.abs(we-de),ve=de!==0?Math.abs((we-de)/de*100):0,be=ye<1e-4?6:ye<.01?5:ye<1?4:2;xe.push("↕ "+ye.toFixed(be)+" ("+ve.toFixed(2)+"%)")}const Ue=[];if(n.statsBarsRange)try{const ye=h.timeScale().timeToCoordinate(ne),ve=h.timeScale().timeToCoordinate(he);if(ye!=null&&ve!=null){const be=h.timeScale().coordinateToLogical(ye),Ee=h.timeScale().coordinateToLogical(ve);be!=null&&Ee!=null&&Ue.push("↔ "+Math.abs(Math.round(Ee-be))+" bars")}}catch{}if(n.statsDateRange){const ye=Math.abs(he-ne),ve=Math.floor(ye/86400),be=Math.floor(ye%86400/3600),Ee=Math.floor(ye%3600/60);let Ie=ve>0?ve+" day"+(ve!==1?"s":""):"";be>0&&(Ie+=(Ie?" ":"")+be+" hour"+(be!==1?"s":"")),!ve&&!be&&(Ie=Ee+" min"+(Ee!==1?"s":"")),n.statsBarsRange&&Ue.length>0?Ue[Ue.length-1]+=" ("+Ie+")":Ue.push(Ie)}if(n.statsDistance){const ye=(R-M)/C,ve=(L-N)/x;Ue.push("distance: "+Math.sqrt(ye*ye+ve*ve).toFixed(2))}if(Ue.length>0&&xe.push(Ue.join(", ")),n.statsAngle){const ye=j/C,ve=te/x,be=Math.atan2(ve,ye)*180/Math.PI;xe.push("∠ "+be.toFixed(0)+"°")}if(xe.length>0){const ye=Math.min(C,x),ve=11*ye,be=ve*1.5,Ee=5*ye;X.font=ve+"px sans-serif";const Ze=xe.reduce((Pe,Je)=>Math.max(Pe,X.measureText(Je).width),0)+Ee*2,ze=xe.length*be+Ee*2;let Ce,Ne;n.statsPosition==="left"?(Ce=z,Ne=q):n.statsPosition==="center"?(Ce=(z+$)/2,Ne=(q+V)/2):(Ce=$,Ne=V);const Se=Ce-Ze/2,fe=Ne-ze-12*ye;X.fillStyle="rgba(20, 20, 30, 0.72)",X.fillRect(Se,fe,Ze,ze),X.strokeStyle=n.statsColor,X.lineWidth=1*ye,X.strokeRect(Se,fe,Ze,ze),X.fillStyle=n.statsColor,X.textBaseline="top",X.textAlign="left",xe.forEach((Pe,Je)=>{X.fillText(Pe,Se+Ee,fe+Ee+Je*be)})}}X.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Iv{constructor(e,t={}){this.center=e,this.color=t.color??"#06a0e3",this.lineWidth=t.lineWidth??2,this.showTime=t.showTime??!1,this.showPrice=t.showPrice??!1,this.visible=!0,this._chart=null,this._series=null;const A=this;this._paneView={renderer(){return{draw(r){r.useBitmapCoordinateSpace(n=>{if(!A.visible)return;const s=A._chart,o=A._series;if(!s||!o)return;const l=n.horizontalPixelRatio,c=n.verticalPixelRatio,h=s.timeScale().timeToCoordinate(A.center.rawTime),g=o.priceToCoordinate(A.center.price);if(h==null||g==null)return;const C=Math.round(h*l),x=Math.round(g*c),b=n.bitmapSize.width,v=n.bitmapSize.height,U=n.context;if(U.save(),U.strokeStyle=A.color,U.lineWidth=A.lineWidth*c,U.setLineDash([]),U.beginPath(),U.moveTo(0,x),U.lineTo(b,x),U.stroke(),U.beginPath(),U.moveTo(C,0),U.lineTo(C,v),U.stroke(),A.showPrice){const F=A.center.price.toFixed(5),M=Math.round(11*c);U.font=M+"px ui-sans-serif, system-ui, sans-serif",U.textBaseline="middle",U.textAlign="left";const N=U.measureText(F).width,R=Math.round(6*l),L=Math.round(3*c),z=M+2*L,q=N+2*R,$=b-q-Math.round(2*l),V=x-z/2;U.fillStyle=A.color,U.fillRect($,V,q,z),U.fillStyle="#ffffff",U.fillText(F,$+R,x)}if(A.showTime){const F=A.center.rawTime,M=new Date(F*1e3),N=X=>String(X).padStart(2,"0"),R=N(M.getUTCDate())+"."+N(M.getUTCMonth()+1)+"."+M.getUTCFullYear()+" "+N(M.getUTCHours())+":"+N(M.getUTCMinutes())+":"+N(M.getUTCSeconds()),L=Math.round(11*c);U.font=L+"px ui-sans-serif, system-ui, sans-serif",U.textBaseline="middle",U.textAlign="center";const z=U.measureText(R).width,q=Math.round(6*l),$=Math.round(3*c),V=L+2*$,j=z+2*q,te=C-j/2,ce=v-V-Math.round(4*c);U.fillStyle=A.color,U.fillRect(te,ce,j,V),U.fillStyle="#ffffff",U.fillText(R,C,ce+V/2)}U.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Dv{constructor(e,t,A={}){this.p1=e,this.p2=t,this.color=A.color??"#7aa6ae",this.lineWidth=A.lineWidth??2,this.arrowLeft=A.arrowLeft??!1,this.arrowRight=A.arrowRight??!1,this.rayLeft=A.rayLeft??!1,this.rayRight=A.rayRight??!1,this.statsShowAlways=A.statsShowAlways??!1,this.statsColor=A.statsColor??"#5f8f96",this.statsPosition=A.statsPosition??"right",this.statsPriceRange=A.statsPriceRange??!1,this.statsDistance=A.statsDistance??!1,this.isActive=!1,this.visible=!0,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=o.timeScale().timeToCoordinate(r.p1.rawTime),C=o.timeScale().timeToCoordinate(r.p2.rawTime),x=l.priceToCoordinate(r.p1.price),b=l.priceToCoordinate(r.p2.price);if(g==null||C==null||x==null||b==null)return;const v=g*c,U=x*h,F=C*c,M=b*h,N=v-F,R=U-M,L=F-v,z=M-U;if(Math.hypot(N,R)<1e-4)return;const $=Math.atan2(R,N),V=Math.round(Math.abs($*180/Math.PI)),j=s.context;j.save(),j.strokeStyle=r.color,j.fillStyle=r.color,j.lineWidth=r.lineWidth*h,j.setLineDash([]);const te=Math.abs(L)<1e-4?0:z/L;if(r.rayLeft){const we=U+te*(0-v);j.beginPath(),j.moveTo(0,we),j.lineTo(v,U),j.stroke()}if(r.rayRight){const de=s.bitmapSize.width,we=M+te*(de-F);j.beginPath(),j.moveTo(F,M),j.lineTo(de,we),j.stroke()}j.beginPath(),j.moveTo(v,U),j.lineTo(F,M),j.stroke();const ce=Math.atan2(z,L),X=(r.lineWidth*4+4)*h,ee=Math.PI/7;if(r.arrowRight){const de=F-X*Math.cos(ce-ee),we=M-X*Math.sin(ce-ee),xe=F-X*Math.cos(ce+ee),Ue=M-X*Math.sin(ce+ee);j.beginPath(),j.moveTo(F,M),j.lineTo(de,we),j.lineTo(xe,Ue),j.closePath(),j.fill()}if(r.arrowLeft){const de=ce+Math.PI,we=v-X*Math.cos(de-ee),xe=U-X*Math.sin(de-ee),Ue=v-X*Math.cos(de+ee),ye=U-X*Math.sin(de+ee);j.beginPath(),j.moveTo(v,U),j.lineTo(we,xe),j.lineTo(Ue,ye),j.closePath(),j.fill()}const se=28*h;j.strokeStyle="rgba(122,166,174,0.55)",j.fillStyle=r.color,j.lineWidth=1*h,j.beginPath(),j.moveTo(F,M),j.lineTo(F+se,M),j.stroke(),j.beginPath(),j.strokeStyle="rgba(122,166,174,0.45)",j.arc(F,M,se,0,$,$<0),j.stroke(),j.fillStyle="#4b7c86",j.font=`${Math.round(10*h)}px sans-serif`,j.textAlign="left",j.textBaseline="middle";const le=F+(se+10*h)*Math.cos($/2),ne=M+(se+10*h)*Math.sin($/2);if(j.fillText(`${V}°`,le,ne),(r.statsShowAlways||r.isActive)&&(r.statsPriceRange||r.statsDistance)){const de=r.p1.price,we=r.p2.price,xe=[];if(r.statsPriceRange){const ye=Math.abs(we-de),ve=de!==0?Math.abs((we-de)/de*100):0,be=ye<1e-4?6:ye<.01?5:ye<1?4:2;xe.push("↕ "+ye.toFixed(be)+" ("+ve.toFixed(2)+"%)")}const Ue=[];if(r.statsDistance){const ye=L/c,ve=z/h;Ue.push("distance: "+Math.sqrt(ye*ye+ve*ve).toFixed(2))}if(Ue.length>0&&xe.push(Ue.join(", ")),xe.length>0){const ye=Math.min(c,h),ve=11*ye,be=ve*1.5,Ee=5*ye;j.font=ve+"px sans-serif";const Ze=xe.reduce((Ge,ke)=>Math.max(Ge,j.measureText(ke).width),0)+Ee*2,ze=xe.length*be+Ee*2,[Ce,Ne,Se,fe]=v<=F?[v,U,F,M]:[F,M,v,U];let Pe,Je;r.statsPosition==="left"?(Pe=Ce,Je=Ne):r.statsPosition==="center"?(Pe=(Ce+Se)/2,Je=(Ne+fe)/2):(Pe=Se,Je=fe);const it=Pe-Ze/2,rt=Je-ze-12*ye;j.fillStyle="rgba(20, 20, 30, 0.72)",j.fillRect(it,rt,Ze,ze),j.strokeStyle=r.statsColor,j.lineWidth=1*ye,j.strokeRect(it,rt,Ze,ze),j.fillStyle=r.statsColor,j.textBaseline="top",j.textAlign="left",xe.forEach((Ge,ke)=>{j.fillText(Ge,it+Ee,rt+Ee+ke*be)})}}j.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class _v{constructor(e,t,A){this.p1=e,this.p2=t,this.p3=A,this.visible=!0,this._chart=null,this._series=null,this._levels=[{k:-2,color:"rgba(239, 68, 68, 0.9)",width:1},{k:-1.5,color:"rgba(168, 85, 247, 0.9)",width:1},{k:-1,color:"rgba(59, 130, 246, 0.9)",width:1.1},{k:-.75,color:"rgba(14, 165, 233, 0.9)",width:1},{k:-.5,color:"rgba(34, 197, 94, 0.9)",width:1},{k:-.25,color:"rgba(132, 204, 22, 0.9)",width:1},{k:0,color:"rgba(161, 98, 7, 0.75)",width:1.1},{k:.25,color:"rgba(132, 204, 22, 0.9)",width:1},{k:.5,color:"rgba(34, 197, 94, 0.9)",width:1},{k:.75,color:"rgba(14, 165, 233, 0.9)",width:1},{k:1,color:"rgba(59, 130, 246, 0.9)",width:1.1},{k:1.5,color:"rgba(168, 85, 247, 0.9)",width:1},{k:2,color:"rgba(239, 68, 68, 0.9)",width:1}];const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=s.context,C=o.timeScale().timeToCoordinate(r.p1.rawTime),x=l.priceToCoordinate(r.p1.price),b=o.timeScale().timeToCoordinate(r.p2.rawTime),v=l.priceToCoordinate(r.p2.price),U=o.timeScale().timeToCoordinate(r.p3.rawTime),F=l.priceToCoordinate(r.p3.price);if(C==null||x==null||b==null||v==null||U==null||F==null)return;const M=C*c,N=x*h,R=b*c,L=v*h,z=U*c,q=F*h,$=(R+z)/2,V=(L+q)/2;let j=$-M,te=V-N;Math.abs(j)<1e-4&&(j=1e-4);const ce=te/j,X=s.bitmapSize.width,ee=(R-z)/2,se=(L-q)/2,le=ye=>({x:$+ee*ye,y:V+se*ye}),ne=(ye,ve)=>({x:X,y:ve+ce*(X-ye)}),he=le(1),de=le(-1),we=ne(he.x,he.y),xe=ne(de.x,de.y);g.save(),g.beginPath(),g.moveTo(he.x,he.y),g.lineTo(we.x,we.y),g.lineTo(xe.x,xe.y),g.lineTo(de.x,de.y),g.closePath(),g.fillStyle="rgba(148, 163, 184, 0.2)",g.fill(),g.beginPath(),g.strokeStyle="rgba(148, 163, 184, 0.9)",g.lineWidth=1*h,g.moveTo(R,L),g.lineTo(z,q),g.stroke(),r._levels.forEach(ye=>{const ve=le(ye.k),be=ne(ve.x,ve.y);g.beginPath(),g.strokeStyle=ye.color,g.lineWidth=ye.width*h,g.moveTo(ve.x,ve.y),g.lineTo(be.x,be.y),g.stroke()});const Ue=ne(M,N);g.beginPath(),g.strokeStyle="rgba(161, 98, 7, 0.9)",g.lineWidth=1.1*h,g.moveTo(M,N),g.lineTo(Ue.x,Ue.y),g.stroke(),g.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Pv{constructor(e,t){this.p1=e,this.p2=t,this.visible=!0,this._chart=null,this._series=null,this._rays=[{ratio:.125,color:"rgba(161, 98, 7, 0.9)",label:"0.13"},{ratio:.25,color:"rgba(132, 204, 22, 0.9)",label:"0.25"},{ratio:.333333,color:"rgba(34, 197, 94, 0.9)",label:"0.30"},{ratio:.5,color:"rgba(5, 150, 105, 0.9)",label:"0.50"},{ratio:1,color:"rgba(107, 114, 128, 0.9)",label:"1.00"},{ratio:2,color:"rgba(37, 99, 235, 0.9)",label:"2.00"},{ratio:3,color:"rgba(67, 56, 202, 0.9)",label:"3.00"},{ratio:4,color:"rgba(124, 58, 237, 0.9)",label:"4.00"},{ratio:8,color:"rgba(220, 38, 38, 0.9)",label:"8.00"}];const A=this;this._paneView={renderer(){return{draw(r){r.useBitmapCoordinateSpace(n=>{if(!A.visible)return;const s=A._chart,o=A._series;if(!s||!o)return;const l=n.horizontalPixelRatio,c=n.verticalPixelRatio,h=n.context,g=s.timeScale().timeToCoordinate(A.p1.rawTime),C=o.priceToCoordinate(A.p1.price),x=s.timeScale().timeToCoordinate(A.p2.rawTime),b=o.priceToCoordinate(A.p2.price);if(g==null||C==null||x==null||b==null)return;const v=g*l,U=C*c,F=x*l,M=b*c,N=n.bitmapSize.width,R=Math.abs(F-v)<1e-4?1:F-v,L=(M-U)/R,z=F>=v?1:-1,q=z>0?N:0,$=v+z*Math.min(220*l,Math.max(80*l,N*.35)),V=A._rays.map(te=>{const ce=L*te.ratio;return{...te,yEnd:U+ce*(q-v),yLabel:U+ce*($-v)}});h.save();const j=(te,ce,X)=>{!te||!ce||(h.beginPath(),h.moveTo(v,U),h.lineTo(q,te.yEnd),h.lineTo(q,ce.yEnd),h.closePath(),h.fillStyle=X,h.fill())};j(V[0],V[3],"rgba(161, 98, 7, 0.10)"),j(V[3],V[4],"rgba(5, 150, 105, 0.10)"),j(V[4],V[5],"rgba(107, 114, 128, 0.12)"),V.forEach(te=>{h.beginPath(),h.strokeStyle=te.color,h.lineWidth=1*c,h.moveTo(v,U),h.lineTo(q,te.yEnd),h.stroke()}),h.font=`${Math.max(10,Math.round(10*c))}px sans-serif`,h.textAlign=z>0?"left":"right",h.textBaseline="middle",V.forEach(te=>{h.fillStyle=te.color;const ce=$+(z>0?4*l:-4*l),X=te.yLabel;X<-20||X>n.bitmapSize.height+20||h.fillText(te.label,ce,X)}),h.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class kv{constructor(e,t,A=8){this.p1=e,this.p2=t,this.divisions=Math.max(2,A),this.visible=!0,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=s.horizontalPixelRatio,h=s.verticalPixelRatio,g=s.context,C=o.timeScale().timeToCoordinate(r.p1.rawTime),x=l.priceToCoordinate(r.p1.price),b=o.timeScale().timeToCoordinate(r.p2.rawTime),v=l.priceToCoordinate(r.p2.price);if(C==null||x==null||b==null||v==null)return;const U=C*c,F=x*h,M=b*c,N=v*h,R=M-U,L=N-F,z=Math.hypot(R,L);if(z<1e-4)return;const q=R/z,$=L/z,V=-$,j=q,te=M+V*z,ce=N+j*z,X=U+V*z,ee=F+j*z,se=(ne,he)=>({x:U+q*z*ne+V*z*he,y:F+$*z*ne+j*z*he});g.save();const le=["rgba(161, 98, 7, 0.08)","rgba(132, 204, 22, 0.08)","rgba(5, 150, 105, 0.08)","rgba(37, 99, 235, 0.08)"];for(let ne=0;ne<r.divisions;ne++){const he=ne/r.divisions,de=(ne+1)/r.divisions,we=se(0,he),xe=se(1,he),Ue=se(1,de),ye=se(0,de);g.beginPath(),g.moveTo(we.x,we.y),g.lineTo(xe.x,xe.y),g.lineTo(Ue.x,Ue.y),g.lineTo(ye.x,ye.y),g.closePath(),g.fillStyle=le[ne%le.length],g.fill()}g.lineWidth=1*h,g.strokeStyle="rgba(148, 163, 184, 0.55)";for(let ne=0;ne<=r.divisions;ne++){const he=ne/r.divisions,de=se(0,he),we=se(1,he),xe=se(he,0),Ue=se(he,1);g.beginPath(),g.moveTo(de.x,de.y),g.lineTo(we.x,we.y),g.stroke(),g.beginPath(),g.moveTo(xe.x,xe.y),g.lineTo(Ue.x,Ue.y),g.stroke()}g.strokeStyle="rgba(100, 116, 139, 0.85)",g.lineWidth=1*h,g.beginPath(),g.moveTo(U,F),g.lineTo(te,ce),g.stroke(),g.beginPath(),g.moveTo(M,N),g.lineTo(X,ee),g.stroke(),g.strokeStyle="rgba(122, 166, 174, 0.95)",g.lineWidth=1.2*h,g.beginPath(),g.moveTo(U,F),g.lineTo(M,N),g.lineTo(te,ce),g.lineTo(X,ee),g.closePath(),g.stroke(),g.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Ha{constructor(e,t,A,r,n={}){const{lineColor:s="#129f5c",lineWidth:o=2,fillColor:l="#6aa84f",fillOpacity:c=.1,showBackground:h=!0,showPrices:g=!0,pricesColor:C="#129f5c",rayLeft:x=!1,rayRight:b=!1,arrowLeft:v=!1,arrowRight:U=!1}=n;this.p1=e,this.p2=t,this.p3=A,this.p4=r,this.lineColor=s,this.lineWidth=o,this.fillColor=l,this.fillOpacity=c,this.showBackground=h,this.showPrices=g,this.pricesColor=C,this.rayLeft=x,this.rayRight=b,this.arrowLeft=v,this.arrowRight=U,this.visible=!0,this._chart=null,this._series=null;const F=this;this._paneView={renderer(){return{draw(M){M.useBitmapCoordinateSpace(N=>{if(!F.visible)return;const R=F._chart,L=F._series;if(!R||!L)return;const z=N.horizontalPixelRatio,q=N.verticalPixelRatio,$=[F.p1,F.p3,F.p4,F.p2].map(ze=>{const Ce=R.timeScale().timeToCoordinate(ze.rawTime),Ne=L.priceToCoordinate(ze.price);return Ce==null||Ne==null?null:{x:Ce*z,y:Ne*q}}).filter(Boolean);if($.length!==4)return;const[V,j,te,ce]=$,X=N.context;X.save();const ee=j.x-V.x,se=j.y-V.y,le=Math.sqrt(ee*ee+se*se)||1,ne=ee/le,he=se/le,de=te.x-ce.x,we=te.y-ce.y,xe=Math.sqrt(de*de+we*we)||1,Ue=de/xe,ye=we/xe,ve=1e5,be=F.rayLeft?{x:V.x-ne*ve,y:V.y-he*ve}:V,Ee=F.rayRight?{x:j.x+ne*ve,y:j.y+he*ve}:j,Ie=F.rayLeft?{x:ce.x-Ue*ve,y:ce.y-ye*ve}:ce,Ze=F.rayRight?{x:te.x+Ue*ve,y:te.y+ye*ve}:te;if(F.showBackground){const ze=F.fillColor||"#6aa84f",Ce=parseInt(ze.slice(1,3),16),Ne=parseInt(ze.slice(3,5),16),Se=parseInt(ze.slice(5,7),16);X.beginPath(),X.moveTo(V.x,V.y),X.lineTo(j.x,j.y),X.lineTo(te.x,te.y),X.lineTo(ce.x,ce.y),X.closePath(),X.fillStyle=`rgba(${Ce},${Ne},${Se},${F.fillOpacity??.1})`,X.fill()}if(X.strokeStyle=F.lineColor,X.lineWidth=F.lineWidth*q,X.setLineDash([]),X.beginPath(),X.moveTo(be.x,be.y),X.lineTo(Ee.x,Ee.y),X.moveTo(Ie.x,Ie.y),X.lineTo(Ze.x,Ze.y),X.moveTo(V.x,V.y),X.lineTo(ce.x,ce.y),X.moveTo(j.x,j.y),X.lineTo(te.x,te.y),X.stroke(),F.arrowLeft||F.arrowRight){const ze=8*q,Ce=(Ne,Se,fe)=>{X.save(),X.translate(Ne,Se),X.rotate(fe),X.beginPath(),X.moveTo(0,0),X.lineTo(-ze,-ze/2),X.lineTo(-ze,ze/2),X.closePath(),X.fillStyle=F.lineColor,X.fill(),X.restore()};F.arrowLeft&&(Ce(be.x,be.y,Math.atan2(-he,-ne)),Ce(Ie.x,Ie.y,Math.atan2(-ye,-Ue))),F.arrowRight&&(Ce(Ee.x,Ee.y,Math.atan2(he,ne)),Ce(Ze.x,Ze.y,Math.atan2(ye,Ue)))}if(X.fillStyle="#ffffff",X.strokeStyle="#3b82f6",X.lineWidth=2*q,[V,j,te,ce].forEach(ze=>{X.beginPath(),X.arc(ze.x,ze.y,6*q,0,Math.PI*2),X.fill(),X.stroke()}),F.showPrices){const ze=[F.p1,F.p3,F.p2,F.p4],Ce=[V,j,ce,te];X.fillStyle=F.pricesColor||F.lineColor,X.font=`${Math.round(10*q)}px sans-serif`,X.textAlign="left",X.textBaseline="middle",Ce.forEach((Ne,Se)=>{const fe=ze[Se]?.price;typeof fe=="number"&&X.fillText(fe.toFixed(5),Ne.x+8*z,Ne.y)})}X.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Hd extends Ha{constructor(e,t,A,r,n={}){super(e,t,A,r,{lineColor:"#3b82f6",fillColor:"#3b82f6",fillOpacity:.12,pricesColor:"#3b82f6",...n})}}class Id{constructor(e,t,A,r,n,s={}){this.p1=e,this.p2=t,this.b1=A,this.b2=r,this.p3=n,this.visible=!0,this.strokeColor=s.strokeColor??"#8b5cf6",this.fillColor=s.fillColor??"rgba(148, 163, 184, 0.14)",this.lineWidth=s.lineWidth??1.25,this._chart=null,this._series=null;const o=this;this._paneView={renderer(){return{draw(l){l.useBitmapCoordinateSpace(c=>{if(!o.visible)return;const h=o._chart,g=o._series;if(!h||!g)return;const C=c.horizontalPixelRatio,x=c.verticalPixelRatio,b=c.context,v=R=>{const L=h.timeScale().timeToCoordinate(R.rawTime),z=g.priceToCoordinate(R.price);return L==null||z==null?null:{x:L*C,y:z*x}},U=v(o.p1),F=v(o.p2),M=v(o.b2),N=v(o.b1);!U||!F||!M||!N||(b.save(),b.beginPath(),b.moveTo(U.x,U.y),b.lineTo(F.x,F.y),b.lineTo(M.x,M.y),b.lineTo(N.x,N.y),b.closePath(),b.fillStyle=o.fillColor,b.fill(),b.strokeStyle=o.strokeColor,b.lineWidth=o.lineWidth*x,b.setLineDash([]),b.beginPath(),b.moveTo(U.x,U.y),b.lineTo(F.x,F.y),b.stroke(),b.beginPath(),b.moveTo(N.x,N.y),b.lineTo(M.x,M.y),b.stroke(),b.restore())})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Ia{constructor(e,t,A,r,n,s,o={}){this.mid1=e,this.mid2=t,this.top1=A,this.top2=r,this.bot1=n,this.bot2=s,this.visible=!0,this.upperStrokeColor=o.upperStrokeColor??"rgba(99, 102, 241, 0.8)",this.centerStrokeColor=o.centerStrokeColor??"rgba(239, 68, 68, 0.65)",this.lowerStrokeColor=o.lowerStrokeColor??"rgba(99, 102, 241, 0.8)",this.upperFillColor=o.upperFillColor??"rgba(99, 102, 241, 0.18)",this.lowerFillColor=o.lowerFillColor??"rgba(239, 68, 68, 0.16)",this.lineWidth=o.lineWidth??1,this.labelColor=o.labelColor??"#1d4ed8",this.showDeviationLabel=o.showDeviationLabel??!0,this._chart=null,this._series=null;const l=this;this._paneView={renderer(){return{draw(c){c.useBitmapCoordinateSpace(h=>{if(!l.visible)return;const g=l._chart,C=l._series;if(!g||!C)return;const x=h.horizontalPixelRatio,b=h.verticalPixelRatio,v=h.context,U=$=>{const V=g.timeScale().timeToCoordinate($.rawTime),j=C.priceToCoordinate($.price);return V==null||j==null?null:{x:V*x,y:j*b}},F=U(l.mid1),M=U(l.mid2),N=U(l.top1),R=U(l.top2),L=U(l.bot1),z=U(l.bot2);if(!F||!M||!N||!R||!L||!z)return;v.save(),v.beginPath(),v.moveTo(F.x,F.y),v.lineTo(M.x,M.y),v.lineTo(R.x,R.y),v.lineTo(N.x,N.y),v.closePath(),v.fillStyle=l.upperFillColor,v.fill(),v.beginPath(),v.moveTo(L.x,L.y),v.lineTo(z.x,z.y),v.lineTo(M.x,M.y),v.lineTo(F.x,F.y),v.closePath(),v.fillStyle=l.lowerFillColor,v.fill();const q=($,V,j)=>{v.beginPath(),v.strokeStyle=j,v.lineWidth=l.lineWidth*b,v.setLineDash([]),v.moveTo($.x,$.y),v.lineTo(V.x,V.y),v.stroke()};if(q(N,R,l.upperStrokeColor),q(F,M,l.centerStrokeColor),q(L,z,l.lowerStrokeColor),l.showDeviationLabel){const $=Math.abs(l.top1.price-l.mid1.price),V=Number.isFinite($)?$.toFixed(5):null;if(V){const j=Math.max(10,Math.round(10*b));v.fillStyle=l.labelColor,v.font=`${j}px sans-serif`,v.textAlign="left",v.textBaseline="top",v.fillText(V,L.x+2*x,L.y+10*b)}}v.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Dd extends Ia{}class _d{constructor(e,t){this.p1=e,this.p2=t,this.visible=!0,this._chart=null,this._series=null,this._levels=[{ratio:0,label:"0.000"},{ratio:.236,label:"0.236"},{ratio:.382,label:"0.382"},{ratio:.5,label:"0.500"},{ratio:.618,label:"0.618"},{ratio:.786,label:"0.786"},{ratio:1,label:"1.000"},{ratio:1.618,label:"1.618"},{ratio:2.618,label:"2.618"},{ratio:3.618,label:"3.618"},{ratio:4.236,label:"4.236"}],this._levelColors={0:"#ff0000",.236:"#ff0000",.382:"#00c853",.5:"#00c853",.618:"#00bcd4",.786:"#00bcd4",1:"#2962ff",1.618:"#2962ff",2.618:"#ff0000",3.618:"#ff0000",4.236:"#e040fb"},this._zoneFills=[{from:0,to:.236,color:"rgba(255, 0, 0, 0.06)"},{from:.236,to:.382,color:"rgba(0, 200, 83, 0.06)"},{from:.382,to:.5,color:"rgba(0, 200, 83, 0.06)"},{from:.5,to:.618,color:"rgba(0, 200, 83, 0.06)"},{from:.618,to:.786,color:"rgba(0, 188, 212, 0.06)"},{from:.786,to:1,color:"rgba(41, 98, 255, 0.08)"},{from:1,to:1.618,color:"rgba(255, 138, 128, 0.10)"},{from:1.618,to:2.618,color:"rgba(255, 138, 128, 0.10)"},{from:2.618,to:3.618,color:"rgba(224, 64, 251, 0.08)"},{from:3.618,to:4.236,color:"rgba(224, 64, 251, 0.08)"}];const A=this;this._paneView={renderer(){return{draw(r){r.useBitmapCoordinateSpace(n=>{if(!A.visible)return;const s=A._chart,o=A._series;if(!s||!o)return;const l=n.horizontalPixelRatio,c=n.verticalPixelRatio,h=n.context,g=n.bitmapSize.width;n.bitmapSize.height;const C=A.p1.price,x=A.p2.price,b=C-x,v=$=>x+b*$,U=s.timeScale().timeToCoordinate(A.p1.rawTime),F=s.timeScale().timeToCoordinate(A.p2.rawTime),M=o.priceToCoordinate(C),N=o.priceToCoordinate(x),R=U!=null&&F!=null?Math.round(Math.min(U,F)*l):0,L=U!=null&&F!=null?Math.round(Math.max(U,F)*l):g,z=L-R;h.save(),A._zoneFills.forEach(({from:$,to:V,color:j})=>{const te=v($),ce=v(V),X=o.priceToCoordinate(te),ee=o.priceToCoordinate(ce);if(X==null||ee==null)return;const se=Math.round(X*c),le=Math.round(ee*c);h.fillStyle=j,h.fillRect(R,Math.min(se,le),z,Math.abs(le-se))}),A._levels.forEach(({ratio:$,label:V})=>{const j=v($),te=o.priceToCoordinate(j);if(te==null)return;const ce=Math.round(te*c),X=A._levelColors[$]||"#888888";h.beginPath(),h.strokeStyle=X,h.lineWidth=$===0||$===1?1.5*c:1*c,$!==0&&$!==1&&$<1?h.setLineDash([4*l,4*l]):h.setLineDash([]),h.moveTo(R,ce),h.lineTo(L,ce),h.stroke(),h.setLineDash([])});const q=Math.round(11*c);if(h.font=`${q}px sans-serif`,h.textAlign="left",A._levels.forEach(({ratio:$,label:V})=>{const j=v($),te=o.priceToCoordinate(j);if(te==null)return;const ce=Math.round(te*c),X=A._levelColors[$]||"#888888",ee=`${V} (${j.toFixed(5)})`;h.fillStyle=X,h.textAlign="right",h.fillText(ee,R-4*l,ce-4*c)}),U!=null&&F!=null&&M!=null&&N!=null){const $=Math.round(U*l),V=Math.round(M*c),j=Math.round(F*l),te=Math.round(N*c);h.beginPath(),h.strokeStyle="rgba(128, 128, 128, 0.6)",h.lineWidth=1*c,h.setLineDash([]),h.moveTo($,V),h.lineTo(j,te),h.stroke(),h.beginPath(),h.fillStyle="#2962ff",h.arc($,V,4*c,0,Math.PI*2),h.fill(),h.strokeStyle="#ffffff",h.lineWidth=1*c,h.stroke(),h.beginPath(),h.fillStyle="#2962ff",h.arc(j,te,4*c,0,Math.PI*2),h.fill(),h.strokeStyle="#ffffff",h.lineWidth=1*c,h.stroke()}h.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}class Nv{constructor(e,t="#3b82f6",A=2,r=!0){this.time=e,this.color=t,this.lineWidth=A,this.showDate=r,this.showDot=!1,this.visible=!0,this._chart=null,this._series=null;const n=this;this._paneView={renderer(){return{draw(s){s.useBitmapCoordinateSpace(o=>{if(!n.visible)return;const l=n._chart;if(!l)return;const c=l.timeScale().timeToCoordinate(n.time);if(c==null)return;const h=Math.round(c*o.horizontalPixelRatio),g=o.bitmapSize.height,C=o.context;C.save(),C.beginPath(),C.strokeStyle=n.color,C.lineWidth=n.lineWidth*o.horizontalPixelRatio,C.setLineDash([]),C.moveTo(h,0),C.lineTo(h,g),C.stroke();const x=Math.round(g/2);if(n.midYCss=x/o.verticalPixelRatio,n.showDot){C.beginPath(),C.strokeStyle=n.color,C.lineWidth=1.5*o.horizontalPixelRatio;const b=5*o.horizontalPixelRatio;C.arc(h,x,b,0,Math.PI*2),C.stroke()}if(n.showDate!==!1){const b=n.time,v=new Date(typeof b=="number"?b*1e3:b),U=j=>String(j).padStart(2,"0"),F=`${U(v.getUTCDate())}.${U(v.getUTCMonth()+1)}.${v.getUTCFullYear()} ${U(v.getUTCHours())}:${U(v.getUTCMinutes())}:${U(v.getUTCSeconds())}`,M=Math.round(11*o.verticalPixelRatio);C.font=`${M}px ui-sans-serif, system-ui, sans-serif`,C.textBaseline="middle",C.textAlign="center";const N=C.measureText(F).width,R=Math.round(6*o.horizontalPixelRatio),L=Math.round(3*o.verticalPixelRatio),z=M+2*L,q=N+2*R,$=h-q/2,V=g-z-Math.round(4*o.verticalPixelRatio);C.fillStyle=n.color,C.fillRect($,V,q,z),C.fillStyle="#ffffff",C.fillText(F,h,V+z/2)}C.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}function Pd(i,e){const t=typeof i=="string"?i.trim():"",A=t.startsWith("#")?t.slice(1):t;if(!/^[0-9A-Fa-f]{6}$/.test(A))return`rgba(95, 143, 150, ${e})`;const r=parseInt(A.slice(0,2),16),n=parseInt(A.slice(2,4),16),s=parseInt(A.slice(4,6),16);return`rgba(${r}, ${n}, ${s}, ${e})`}function Ov(i,e,t){const A=`${i??""}`,r=Math.max(4,e*.58),s=Math.max(1,Math.floor(220/r)),o=[],l=c=>{if(!t||c.length<=s){o.push(c);return}let h=c;for(;h.length>s;){let g=h.lastIndexOf(" ",s);g<=0&&(g=s),o.push(h.slice(0,g)),h=h.slice(g).trimStart()}o.push(h)};return A.split(`
|
|
11
|
+
`).forEach(l),o.length===0&&o.push(""),o}function kd(i,e,t){const A=i?.primitive??{},r=Number(A.fontSize)||12,n=!!A.textWrap,s=Ov(A.text??i?.text??"Text",r,n),o=s.reduce((b,v)=>Math.max(b,v.length),1),c=Math.max(20,o*r*.58)+16,h=r*1.2,g=s.length*h+10,C=e-c/2,x=t-g;return{left:C,right:C+c,top:x,bottom:x+g+12}}class Kv{constructor(e,t,A={}){this.rawTime=e,this.price=t,this.text=A.text??"Text",this.color=A.color??"#5f8f96",this.fontSize=A.fontSize??12,this.fontWeight=A.fontWeight??"normal",this.fontStyle=A.fontStyle??"normal",this.textAlign=A.textAlign??"center",this.textWrap=A.textWrap??!1,this.borderEnabled=A.borderEnabled??!1,this.borderColor=A.borderColor??"#5f8f96",this.borderOpacity=A.borderOpacity??.1,this.borderWidth=A.borderWidth??1,this.bgEnabled=A.bgEnabled??!1,this.bgColor=A.bgColor??"#5f8f96",this.bgOpacity=A.bgOpacity??.1,this.visible=!0,this._chart=null,this._series=null;const r=this;this._paneView={renderer(){return{draw(n){n.useBitmapCoordinateSpace(s=>{if(!r.visible)return;const o=r._chart,l=r._series;if(!o||!l)return;const c=o.timeScale().timeToCoordinate(r.rawTime),h=l.priceToCoordinate(r.price);if(c==null||h==null)return;const g=s.horizontalPixelRatio,C=s.verticalPixelRatio,x=Math.round(c*g),b=Math.round(h*C),v=s.context;v.save();const U=Math.round(r.fontSize*C);v.font=`${r.fontStyle} ${r.fontWeight} ${U}px sans-serif`;const F=`${r.text??""}`,M=220*g,N=[],R=he=>{if(!r.textWrap||he.length===0){N.push(he);return}const de=he.split(/\s+/);let we="";for(const xe of de){const Ue=we?`${we} ${xe}`:xe;v.measureText(Ue).width<=M||!we?we=Ue:(N.push(we),we=xe)}N.push(we)};F.split(`
|
|
12
|
+
`).forEach(R),N.length===0&&N.push("");const L=N.map(he=>v.measureText(he).width),z=Math.max(...L,20*g),q=8*g,$=5*C,V=z+q*2,j=U*1.2,te=j*N.length+$*2,ce=["left","center","right"].includes(r.textAlign)?r.textAlign:"center",X=x-V/2,ee=b-te;r.bgEnabled&&(v.fillStyle=Pd(r.bgColor,Math.max(0,Math.min(1,r.bgOpacity??.1))),v.beginPath(),v.rect(X,ee,V,te),v.fill()),r.borderEnabled&&(v.strokeStyle=Pd(r.borderColor,Math.max(0,Math.min(1,r.borderOpacity??.1))),v.lineWidth=Math.max(.5,(r.borderWidth??1)*C),v.beginPath(),v.rect(X,ee,V,te),v.stroke()),v.fillStyle=r.color,v.textAlign=ce,v.textBaseline="middle";const se=ce==="left"?X+q:ce==="right"?X+V-q:X+V/2;for(let he=0;he<N.length;he++)v.fillText(N[he],se,ee+$+j*(he+.5));const le=5*C,ne=b+10*C;v.beginPath(),v.strokeStyle="#3b82f6",v.lineWidth=1.5*C,v.arc(x,ne,le,0,Math.PI*2),v.stroke(),v.restore()})}}}}}attached({chart:e,series:t}){this._chart=e,this._series=t}detached(){this._chart=null,this._series=null}paneViews(){return[this._paneView]}}const Vv={M1:3,M5:7,M15:14,M30:30,H1:90,H4:180,D1:1095,W1:1825,MN:3650};function Nd(i){if(!i)return 7;const e=String(i).toUpperCase();return Vv[e]??7}function zv(i,e){const t=String(i||"").toUpperCase(),A=e||Nd(i),r={M1:1440,M5:288,M15:96,M30:48,H1:24,H4:6,D1:1,W1:1/7,MN:1/30}[t]||96,n=Math.ceil(A*(typeof r=="number"?r:96));return Math.min(Math.max(n,500),5e3)}const UA=i=>{if(!Array.isArray(i)||i.length===0)return[];const e=i.map(A=>({...A,time:Y(A.time)})).filter(A=>A.time!=null);e.sort((A,r)=>A.time-r.time);const t=new Map;for(const A of e)t.set(A.time,A);return Array.from(t.values()).sort((A,r)=>A.time-r.time)};function nt(i,e,t,A,r,n){const s=r-t,o=n-A,l=Math.sqrt(s*s+o*o);if(l===0)return Math.hypot(i-t,e-A);let c=((i-t)*s+(e-A)*o)/(l*l);c=Math.max(0,Math.min(1,c));const h=t+c*s,g=A+c*o;return Math.hypot(i-h,e-g)}function Wv(i,e,t,A,r,n){const s=r-t,o=n-A,l=s*s+o*o;if(l===0)return Math.hypot(i-t,e-A);let c=((i-t)*s+(e-A)*o)/l;c<0&&(c=0);const h=t+c*s,g=A+c*o;return Math.hypot(i-h,e-g)}function Rv(i,e,t,A,r,n){const s=r-t,o=n-A,l=s*s+o*o;if(l===0)return Math.hypot(i-t,e-A);const c=((i-t)*s+(e-A)*o)/l,h=t+c*s,g=A+c*o;return Math.hypot(i-h,e-g)}function YA(i,e,t){let A=!1;for(let r=0,n=t.length-1;r<t.length;n=r++){const s=t[r].x,o=t[r].y,l=t[n].x,c=t[n].y;o>e!=c>e&&i<(l-s)*(e-o)/(c-o+1e-7)+s&&(A=!A)}return A}function Od(i,e,t){if(!i||!e||!t)return null;const A=i.normalizedTime??Y(i.rawTime),r=e.normalizedTime??Y(e.rawTime),n=t.normalizedTime??Y(t.rawTime);if(A==null||r==null||n==null)return null;const s=r-A;if(Math.abs(s)<1e-9)return null;const o=(e.price-i.price)/s,l=t.price+o*(A-n),c=t.price+o*(r-n),h=Y((A+r)/2),g=(l+c)/2;return h==null?null:{b1:{rawTime:i.rawTime,normalizedTime:A,price:l},b2:{rawTime:e.rawTime,normalizedTime:r,price:c},p3:{rawTime:t.rawTime,normalizedTime:n,price:t.price},bottomMid:{rawTime:h,normalizedTime:h,price:g}}}function Ni(i,e,t,A=1){if(!Array.isArray(i)||i.length<2||!e||!t)return null;const r=e.normalizedTime??Y(e.rawTime),n=t.normalizedTime??Y(t.rawTime);if(r==null||n==null)return null;const s=Math.min(r,n),o=Math.max(r,n),l=i.map($=>({time:Y($.time),close:typeof $.close=="number"?$.close:parseFloat($.close)})).filter($=>$.time!=null&&Number.isFinite($.close)&&$.time>=s&&$.time<=o).sort(($,V)=>$.time-V.time);if(l.length<2)return null;const c=l.length;let h=0,g=0,C=0,x=0;for(let $=0;$<c;$++){const V=$,j=l[$].close;h+=V,g+=j,C+=V*j,x+=V*V}const b=c*x-h*h,v=Math.abs(b)<1e-12?0:(c*C-h*g)/b,U=(g-v*h)/c;let F=0;for(let $=0;$<c;$++){const V=U+v*$,j=l[$].close-V;F+=j*j}const M=Math.sqrt(F/c),N=Math.max(M*A,1e-8),R=l[0].time,L=l[c-1].time,z=U,q=U+v*(c-1);return{slope:v,intercept:U,stdDev:M,offset:N,barCount:c,p1:{rawTime:R,normalizedTime:R,price:z},p2:{rawTime:L,normalizedTime:L,price:q},top1:{rawTime:R,normalizedTime:R,price:z+N},top2:{rawTime:L,normalizedTime:L,price:q+N},bot1:{rawTime:R,normalizedTime:R,price:z-N},bot2:{rawTime:L,normalizedTime:L,price:q-N}}}function Sr(i,e,t,A=1){return Ni(i,e,t,A)}const Gv={trendline:{requiredKeys:["point1","point2"],handleCount:2},gannline:{requiredKeys:["point1","point2"],handleCount:3},rectangle:{requiredKeys:["p1","p2"],handleCount:8},circle:{requiredKeys:["p1","p2"],handleCount:2},triangle:{requiredKeys:["p1","p2","p3"],handleCount:3},ellipse:{requiredKeys:["p1","p2"],handleCount:4},infoline:{requiredKeys:["p1","p2"],handleCount:2},arrowedline:{requiredKeys:["p1","p2"],handleCount:2},rayline:{requiredKeys:["p1","p2"],handleCount:2},extendedline:{requiredKeys:["p1","p2"],handleCount:2},crossline:{requiredKeys:["p"],handleCount:1},trendbyangle:{requiredKeys:["p1","p2"],handleCount:2},equidistantchannel:{requiredKeys:["p1","p2","p3"],handleCount:3},regressionchannel:{requiredKeys:["p1","p2"],handleCount:2},stddevchannel:{requiredKeys:["p1","p2"],handleCount:2},gannfan:{requiredKeys:["p1","p2"],handleCount:2},ganngrid:{requiredKeys:["p1","p2"],handleCount:2},andrewspitchfork:{requiredKeys:["p1","p2","p3"],handleCount:3},disjointchannel:{requiredKeys:["p1","p2","p3","p4"],handleCount:4},flattopbottom:{requiredKeys:["p1","p2","p3","p4"],handleCount:4},rulerline:{requiredKeys:["p1","p2"],handleCount:3},horizontalray:{requiredKeys:["primitive"],handleCount:1},verticalline:{requiredKeys:["primitive"],handleCount:1},pricelevel:{requiredKeys:["priceLine"],handleCount:1}},$v={gannline:"#7aa6ae",rectangle:"#3b82f6",circle:"#3b82f6",triangle:"#3b82f6",ellipse:"#3b82f6",infoline:"#3b82f6",rulerline:"#3b82f6",arrowedline:"#f59e0b",rayline:"#7aa6ae",extendedline:"#7aa6ae",crossline:"#7aa6ae",trendbyangle:"#7aa6ae",equidistantchannel:"#8b5cf6",regressionchannel:"#6366f1",stddevchannel:"#6366f1",gannfan:"#7aa6ae",ganngrid:"#7aa6ae",andrewspitchfork:"#7c3aed",disjointchannel:"#16a34a",flattopbottom:"#3b82f6",pricelevel:"#3b82f6"};function Xv(i,e){if(!i||!i.type)return!1;const t=Gv[i.type];return!t||e.length!==t.handleCount?!1:t.requiredKeys.every(A=>!!i[A])}function Zv(i){return i?$v[i]??"#22c55e":"#22c55e"}const Jv=300,Kd=24,Yv=150,Vd=150;function Da(i,e,t=Jv){if(!Array.isArray(i)||i.length===0)return[];const A=tA(e),r=Number.isFinite(A)&&A>0?A:60;let n=null;for(const o of i){const l=Y(o?.time);l!=null&&(n==null||l>n)&&(n=l)}if(n==null)return[];const s=[];for(let o=1;o<=t;o++)s.push({time:n+r*o});return s}function qv(i){if(!Array.isArray(i)||i.length===0)return null;let e=null;for(const t of i){const A=Y(t?.time);A!=null&&(e==null||A>e)&&(e=A)}return e}function jv(i,e){let t=0,A=i.length;for(;t<A;){const r=t+A>>1;i[r]<e?t=r+1:A=r}return t}function ms(i,e,t,A){const r=Y(e),n=Y(t),s=tA(A)||3600,o=Math.abs((n??0)-(r??0)),l=Math.max(1,Math.round(o/s));if(!Array.isArray(i)||i.length===0)return l;if(r==null||n==null)return 1;const c=C=>{const x=jv(i,C);if(x<=0)return 0;if(x>=i.length)return i.length-1;const b=i[x-1],v=i[x];return Math.abs(C-b)<=Math.abs(v-C)?x-1:x},h=c(r),g=c(n);return Math.max(1,Math.abs(g-h)+1)}function zd(i,e,t){if(!i)return!1;const A=i.timeScale();if(!A)return!1;const r=qv(e);if(r==null)return!1;const n=A.timeToCoordinate(r);if(Number.isFinite(n)){const c=A.coordinateToLogical(n);if(Number.isFinite(c)){const h=A.getVisibleLogicalRange(),g=Number.isFinite(h?.from)&&Number.isFinite(h?.to)?h.to-h.from:null,C=Number.isFinite(g)&&g>20?g:120,x=Math.min(Vd,C/2),b=Math.max(20,C-x),v={from:c-b,to:c+x};try{return A.setVisibleLogicalRange(v),!0}catch{}}}const s=tA(t),o=Number.isFinite(s)&&s>0?s:60,l={from:r-Yv*o,to:r+Vd*o};try{return A.setVisibleRange(l),!0}catch{return!1}}const eT=Ae.forwardRef(function({bidPrice:e="113.638",askPrice:t="113.649",showBuySellPanel:A=!0,onBuyClick:r,onSellClick:n},s){const o=Ae.useRef(null),l=Ae.useRef(null),c=Ae.useRef(null),h=Ae.useRef(null),g=Ae.useRef(null),C=Ae.useRef(null),x=Ae.useRef([]),b=Ae.useRef(!1),v=Ae.useRef(null),U=Ae.useRef(null),F=Ae.useRef(null),M=Ae.useRef(null),N=Ae.useRef([]),[R,L]=Ae.useState(null),[z,q]=Ae.useState(null),[$,V]=Ae.useState([]),[j,te]=Ae.useState(null),[ce,X]=Ae.useState([]),ee=Ae.useRef(null),se=Ae.useRef(null),le=Ae.useRef(null),ne=Ae.useRef(!1),he=Ae.useRef(!1);Ae.useEffect(()=>{le.current=R;let d=!1;x.current.forEach(p=>{if(p.type==="trendline"&&p.decoration){const O=p===R;p.decoration.isSelected!==O&&(p.decoration.isSelected=O,d=!0)}}),d&&c.current?.applyOptions({})},[R]);const de=Ae.useRef(new Map),we=Ae.useRef(null),xe=Ae.useRef(null),Ue=(d,p)=>`${d}_${p}`,ye=()=>{const d=Ue(Se,fe);return de.current.get(d)||null},ve=d=>{if(!d)return;const p=Ue(Se,fe);de.current.set(p,d)},{activeTool:be,setActiveTool:Ee,showGrid:Ie,snapToGrid:Ze,chartObjects:ze,setChartObjects:Ce,orders:Ne,selectedSymbol:Se,selectedTimeframe:fe,drawingsVisible:Pe,chartType:Je,chartLocked:it,theme:rt,baseUrl:Ge,endpoints:ke,endpointParams:me}=Lt(),ge=Ae.useRef([]),[Me,_e]=Ae.useState(!1),[Qe,Ke]=Ae.useState(null),[Ve,dt]=Ae.useState([]),[wt,It]=Ae.useState(!0),[Ir,Bs]=Ae.useState(null),[gi,ys]=Ae.useState(0),Dt=Ae.useMemo(()=>{const d=Ve.map(p=>Y(p?.time)).filter(p=>Number.isFinite(p));return d.sort((p,O)=>p-O),d},[Ve]),vt=Ae.useRef(null),St=Ae.useRef(new Map);Ae.useRef(null);const jt=Ae.useRef(0),qA=Ae.useRef(null);Ae.useEffect(()=>{const d=g.current;d&&d.setData(Da(Ve,fe))},[Ve,fe]),Ae.useImperativeHandle(s,()=>({zoomIn:()=>{const d=c.current?.timeScale();if(!d)return;const p=d.getVisibleRange();if(!p||!p.from||!p.to)return;const O=p.to-p.from,Te=(p.from+p.to)/2,S=O*.8;try{d.setVisibleRange({from:Te-S/2,to:Te+S/2}),ve(d.getVisibleRange())}catch{}},zoomOut:()=>{const d=c.current?.timeScale();if(!d)return;const p=d.getVisibleRange();if(!p||!p.from||!p.to)return;const O=p.to-p.from,Te=(p.from+p.to)/2,S=O*1.25;try{d.setVisibleRange({from:Te-S/2,to:Te+S/2}),ve(d.getVisibleRange())}catch{}},downloadChartAsPNG:()=>{const d=o.current;if(!d){typeof window.notify=="function"&&window.notify("Chart not ready","error");return}const p=d.querySelectorAll("canvas"),O=rt==="light"?"#ffffff":"#12161d";let Te=null,S=0;if(p.forEach(y=>{if(y.width>0&&y.height>0){const J=y.width*y.height;J>S&&(S=J,Te=y)}}),Te)try{const y=document.createElement("canvas");y.width=Te.width,y.height=Te.height;const J=y.getContext("2d");J.fillStyle=O,J.fillRect(0,0,y.width,y.height),J.drawImage(Te,0,0);const T=document.createElement("a");T.download=`chart-${Se}-${fe}-${Date.now()}.png`,T.href=y.toDataURL("image/png"),T.click(),typeof window.notify=="function"&&window.notify("Chart saved as PNG","success");return}catch(y){console.warn("Canvas export failed, trying html2canvas",y)}Cv(d,{useCORS:!0,allowTaint:!0,backgroundColor:O,scale:2,logging:!1}).then(y=>{const J=document.createElement("a");J.download=`chart-${Se}-${fe}-${Date.now()}.png`,J.href=y.toDataURL("image/png"),J.click(),typeof window.notify=="function"&&window.notify("Chart saved as PNG","success")}).catch(y=>{console.error("Chart screenshot failed",y),typeof window.notify=="function"&&window.notify("Screenshot failed. Try again.","error")})}}),[Se,fe,rt]);const ka=Ae.useMemo(()=>Ve.length===0?[]:Je==="line"||Je==="area"?Ve.map(d=>({time:d.time,value:d.close})):Ve,[Ve,Je]),yT=d=>{r?r(d):(Ke("BUY"),_e(!0))},CT=d=>{n?n(d):(Ke("SELL"),_e(!0))},vT=()=>{_e(!1),Ke(null)},TT=d=>{const p=z;if(!p||!d)return;const O=(y,J)=>{if(typeof y!="string")return J;const T=y.trim(),oe=T.startsWith("#")?T:`#${T}`;return/^#[0-9A-Fa-f]{6}$/.test(oe)?oe.toLowerCase():J},Te=(y,J)=>{const T=Number(y);return Number.isFinite(T)?Math.max(0,Math.min(1,T)):J};let S={...p,visibleTimeframes:Array.isArray(d.visibleTimeframes)?[...d.visibleTimeframes]:p.visibleTimeframes};if(p.type==="text"){const y=Number.isFinite(Number(d.price))?Number(d.price):p.price,J=p.primitive;J&&(J.text=typeof d.text=="string"?d.text:J.text,J.color=O(d.color,J.color??"#5f8f96"),J.fontSize=Number.isFinite(Number(d.fontSize))?Number(d.fontSize):J.fontSize,J.fontWeight=d.fontWeight==="bold"?"bold":"normal",J.fontStyle=d.fontStyle==="italic"?"italic":"normal",J.textAlign=["left","center","right"].includes(d.textAlign)?d.textAlign:J.textAlign,J.textWrap=!!d.textWrap,J.borderEnabled=!!d.borderEnabled,J.borderColor=O(d.borderColor,J.borderColor??"#5f8f96"),J.borderOpacity=Te(d.borderOpacity,J.borderOpacity??.1),J.borderWidth=Math.max(1,Math.min(5,Number.isFinite(Number(d.borderWidth))?Number(d.borderWidth):1)),J.bgEnabled=!!d.bgEnabled,J.bgColor=O(d.bgColor,J.bgColor??"#5f8f96"),J.bgOpacity=Te(d.bgOpacity,J.bgOpacity??.1),J.price=y),S={...S,price:y,text:typeof d.text=="string"?d.text:p.text}}if(p.type==="trendline"){const y=O(d.lineColor,"#22c55e"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2));if(p.series)try{p.series.applyOptions({color:y,lineWidth:J})}catch{}const T=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.point1?.price,oe=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.point2?.price;if(p.series&&p.point1&&p.point2){const ae=p.point1.time??p.point1.rawTime,re=p.point2.time??p.point2.rawTime;try{const f=UA([{time:ae,value:T},{time:re,value:oe}]);f.length>0&&p.series.setData(f)}catch{}}const E={...p.point1,price:T},K={...p.point2,price:oe};p.decoration&&(p.decoration.color=y,p.decoration.lineWidth=J,p.decoration.arrowLeft=!!d.arrowLeft,p.decoration.arrowRight=!!d.arrowRight,p.decoration.rayLeft=!!d.rayLeft,p.decoration.rayRight=!!d.rayRight,p.decoration.statsColor=O(d.statsColor,"#5f8f96"),p.decoration.statsPosition=d.statsPosition??"right",p.decoration.statsShowAlways=!!d.statsShowAlways,p.decoration.statsPriceRange=!!d.statsPriceRange,p.decoration.statsBarsRange=!!d.statsBarsRange,p.decoration.statsDateRange=!!d.statsDateRange,p.decoration.statsAngle=!!d.statsAngle,p.decoration.statsDistance=!!d.statsDistance,p.decoration.p1=E,p.decoration.p2=K),S={...S,lineColor:y,lineWidth:J,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,statsColor:O(d.statsColor,"#5f8f96"),statsPosition:d.statsPosition??"right",statsShowAlways:!!d.statsShowAlways,statsPriceRange:!!d.statsPriceRange,statsBarsRange:!!d.statsBarsRange,statsDateRange:!!d.statsDateRange,statsAngle:!!d.statsAngle,statsDistance:!!d.statsDistance,point1:E,point2:K,decoration:p.decoration}}if(p.type==="pricelevel"){const y=O(d.lineColor,"#3b82f6"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=d.showPrice!==!1,oe=!!d.showText,E=typeof d.textContent=="string"?d.textContent:"",K=O(d.textColor,"#ffffff"),ae=["left","center","right"].includes(d.textHAlign)?d.textHAlign:"center",re=["top","middle","bottom"].includes(d.textVAlign)?d.textVAlign:"top",f=Number.isFinite(Number(d.price))?Number(d.price):p.price;if(p.priceLine)try{p.priceLine.applyOptions({price:f,color:y,lineWidth:J,axisLabelVisible:T,title:T&&typeof f=="number"?f.toFixed(5):""})}catch{}const B=h.current;if(oe&&E&&B)if(p.textPrimitive)p.textPrimitive.text=E,p.textPrimitive.textColor=K,p.textPrimitive.hAlign=ae,p.textPrimitive.vAlign=re,p.textPrimitive.price=f;else{const Q=new Ed(f,{text:E,textColor:K,hAlign:ae,vAlign:re});try{B.attachPrimitive(Q)}catch{}p.textPrimitive=Q}else if(p.textPrimitive&&B){try{B.detachPrimitive(p.textPrimitive)}catch{}p.textPrimitive=null}S={...S,price:f,lineColor:y,lineWidth:J,showPrice:T,showText:oe,textContent:E,textColor:K,textHAlign:ae,textVAlign:re,textPrimitive:p.textPrimitive}}if(p.type==="horizontalray"){const y=O(d.lineColor,"#3b82f6"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=d.showPrice!==!1,oe=!!d.showText,E=typeof d.textContent=="string"?d.textContent:"",K=O(d.textColor,"#ffffff"),ae=["left","center","right"].includes(d.textHAlign)?d.textHAlign:"center",re=["top","middle","bottom"].includes(d.textVAlign)?d.textVAlign:"top",f=Number.isFinite(Number(d.price))?Number(d.price):p.price,B=p.primitive;if(B&&(B.price=f,B.color=y,B.lineWidth=J),p.priceLine)try{p.priceLine.applyOptions({price:f,color:y,axisLabelVisible:T,title:T&&typeof f=="number"?f.toFixed(5):""})}catch{}const Q=h.current;if(oe&&E&&Q)if(p.textPrimitive)p.textPrimitive.text=E,p.textPrimitive.textColor=K,p.textPrimitive.hAlign=ae,p.textPrimitive.vAlign=re,p.textPrimitive.price=f,p.textPrimitive.originTime=p.rawOriginTime;else{const w=new Ed(f,{text:E,textColor:K,hAlign:ae,vAlign:re,originTime:p.rawOriginTime});try{Q.attachPrimitive(w)}catch{}p.textPrimitive=w}else if(p.textPrimitive&&Q){try{Q.detachPrimitive(p.textPrimitive)}catch{}p.textPrimitive=null}S={...S,price:f,lineColor:y,lineWidth:J,showPrice:T,showText:oe,textContent:E,textColor:K,textHAlign:ae,textVAlign:re,textPrimitive:p.textPrimitive}}if(p.type==="verticalline"){const y=O(d.lineColor,"#3b82f6"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=d.showDate!==!1,oe=p.primitive;oe&&(oe.color=y,oe.lineWidth=J,oe.showDate=T),S={...S,lineColor:y,lineWidth:J,showDate:T}}if(p.type==="infoline"){const y=O(d.lineColor,"#3b82f6"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=d.statsShowAlways!==!1,oe=O(d.statsColor,"#5f8f96"),E=["left","center","right"].includes(d.statsPosition)?d.statsPosition:"right",K=!!d.statsPriceRange,ae=!!d.statsBarsRange,re=!!d.statsDateRange,f=!!d.statsAngle,B=!!d.statsDistance,Q=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,w=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p2.price,u=p.p1.rawTime,D=p.p2.rawTime,H=w-Q,P=Q!==0?H/Math.abs(Q)*100:0,I=p.p1.normalizedTime??0,m=p.p2.normalizedTime??0,_=tA(fe)||3600,k=Math.abs(m-I),W=Math.max(1,Math.round(k/_)),G=Math.max(1,Math.round(k/86400)),Z=c.current,ie=h.current,ue=Z?Z.timeScale().timeToCoordinate(u):null,Be=ie?ie.priceToCoordinate(Q):null,Fe=Z?Z.timeScale().timeToCoordinate(D):null,He=ie?ie.priceToCoordinate(w):null,$e=ue!=null&&Be!=null&&Fe!=null&&He!=null?Math.atan2(-(He-Be),Fe-ue)*(180/Math.PI):p.primitive?.info?.angle??0,qe={priceDiff:H,pricePct:P,bars:W,days:G,angle:$e},Re=p.primitive;Re&&(Re.color=y,Re.lineWidth=J,Re.statsShowAlways=T,Re.statsColor=oe,Re.statsPosition=E,Re.statsPriceRange=K,Re.statsBarsRange=ae,Re.statsDateRange=re,Re.statsAngle=f,Re.statsDistance=B,Re.p1={...p.p1,price:Q},Re.p2={...p.p2,price:w},Re.info=qe),S={...S,lineColor:y,lineWidth:J,statsShowAlways:T,statsColor:oe,statsPosition:E,statsPriceRange:K,statsBarsRange:ae,statsDateRange:re,statsAngle:f,statsDistance:B,p1:{...p.p1,price:Q},p2:{...p.p2,price:w}}}if(p.type==="rulerline"){const y=O(d.lineColor,"#3b82f6"),J=d.showArea!==!1,T=!!d.statsShowAlways,oe=O(d.statsColor,"#5f8f96"),E=["left","center","right"].includes(d.statsPosition)?d.statsPosition:"right",K=!!d.statsPriceRange,ae=!!d.statsBarsRange,re=!!d.statsDateRange,f=p.primitive;f&&(f.lineColor=y,f.showArea=J,f.statsShowAlways=T,f.statsColor=oe,f.statsPosition=E,f.statsPriceRange=K,f.statsBarsRange=ae,f.statsDateRange=re),S={...S,lineColor:y,showArea:J,statsShowAlways:T,statsColor:oe,statsPosition:E,statsPriceRange:K,statsBarsRange:ae,statsDateRange:re}}if(p.type==="arrowedline"){const y=O(d.lineColor,"#f59e0b"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,oe=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p2.price,E=p.primitive;E&&(E.color=y,E.lineWidth=J,E.arrowLeft=!!d.arrowLeft,E.arrowRight=!!d.arrowRight,E.rayLeft=!!d.rayLeft,E.rayRight=!!d.rayRight,E.statsShowAlways=!!d.statsShowAlways,E.statsColor=O(d.statsColor,"#5f8f96"),E.statsPosition=d.statsPosition??"right",E.statsPriceRange=!!d.statsPriceRange,E.statsBarsRange=!!d.statsBarsRange,E.statsDateRange=!!d.statsDateRange,E.statsAngle=!!d.statsAngle,E.statsDistance=!!d.statsDistance,E.p1={...p.p1,price:T},E.p2={...p.p2,price:oe}),S={...S,lineColor:y,lineWidth:J,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,statsShowAlways:!!d.statsShowAlways,statsColor:O(d.statsColor,"#5f8f96"),statsPosition:d.statsPosition??"right",statsPriceRange:!!d.statsPriceRange,statsBarsRange:!!d.statsBarsRange,statsDateRange:!!d.statsDateRange,statsAngle:!!d.statsAngle,statsDistance:!!d.statsDistance,p1:{...p.p1,price:T},p2:{...p.p2,price:oe}}}if(p.type==="rayline"){const y=O(d.lineColor,"#7aa6ae"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,oe=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p2.price,E=p.primitive;E&&(E.color=y,E.lineWidth=J,E.arrowLeft=!!d.arrowLeft,E.arrowRight=!!d.arrowRight,E.rayLeft=!!d.rayLeft,E.rayRight=!!d.rayRight,E.statsShowAlways=!!d.statsShowAlways,E.statsColor=O(d.statsColor,"#5f8f96"),E.statsPosition=d.statsPosition??"right",E.statsPriceRange=!!d.statsPriceRange,E.statsBarsRange=!!d.statsBarsRange,E.statsDateRange=!!d.statsDateRange,E.statsAngle=!!d.statsAngle,E.statsDistance=!!d.statsDistance,E.p1={...p.p1,price:T},E.p2={...p.p2,price:oe}),S={...S,lineColor:y,lineWidth:J,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,statsShowAlways:!!d.statsShowAlways,statsColor:O(d.statsColor,"#5f8f96"),statsPosition:d.statsPosition??"right",statsPriceRange:!!d.statsPriceRange,statsBarsRange:!!d.statsBarsRange,statsDateRange:!!d.statsDateRange,statsAngle:!!d.statsAngle,statsDistance:!!d.statsDistance,p1:{...p.p1,price:T},p2:{...p.p2,price:oe}}}if(p.type==="extendedline"){const y=O(d.lineColor,"#7aa6ae"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,oe=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p2.price,E=p.primitive;E&&(E.color=y,E.lineWidth=J,E.arrowLeft=!!d.arrowLeft,E.arrowRight=!!d.arrowRight,E.rayLeft=!!d.rayLeft,E.rayRight=!!d.rayRight,E.statsShowAlways=!!d.statsShowAlways,E.statsColor=O(d.statsColor,"#5f8f96"),E.statsPosition=d.statsPosition??"right",E.statsPriceRange=!!d.statsPriceRange,E.statsBarsRange=!!d.statsBarsRange,E.statsDateRange=!!d.statsDateRange,E.statsAngle=!!d.statsAngle,E.statsDistance=!!d.statsDistance,E.p1={...p.p1,price:T},E.p2={...p.p2,price:oe}),S={...S,lineColor:y,lineWidth:J,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,statsShowAlways:!!d.statsShowAlways,statsColor:O(d.statsColor,"#5f8f96"),statsPosition:d.statsPosition??"right",statsPriceRange:!!d.statsPriceRange,statsBarsRange:!!d.statsBarsRange,statsDateRange:!!d.statsDateRange,statsAngle:!!d.statsAngle,statsDistance:!!d.statsDistance,p1:{...p.p1,price:T},p2:{...p.p2,price:oe}}}if(p.type==="crossline"){const y=O(d.lineColor,"#06a0e3"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=Number.isFinite(Number(d.price))?Number(d.price):p.p.price,oe=p.primitive;oe&&(oe.color=y,oe.lineWidth=J,oe.showTime=!!d.showTime,oe.showPrice=!!d.showPrice,oe.center={...p.p,price:T}),S={...S,lineColor:y,lineWidth:J,showTime:!!d.showTime,showPrice:!!d.showPrice,p:{...p.p,price:T}}}if(p.type==="trendbyangle"){const y=O(d.lineColor,"#7aa6ae"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,oe=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p2.price,E=p.primitive;E&&(E.color=y,E.lineWidth=J,E.arrowLeft=!!d.arrowLeft,E.arrowRight=!!d.arrowRight,E.rayLeft=!!d.rayLeft,E.rayRight=!!d.rayRight,E.statsShowAlways=!!d.statsShowAlways,E.statsColor=O(d.statsColor,"#5f8f96"),E.statsPosition=d.statsPosition??"right",E.statsPriceRange=!!d.statsPriceRange,E.statsDistance=!!d.statsDistance,E.p1={...p.p1,price:T},E.p2={...p.p2,price:oe}),S={...S,lineColor:y,lineWidth:J,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,statsShowAlways:!!d.statsShowAlways,statsColor:O(d.statsColor,"#5f8f96"),statsPosition:d.statsPosition??"right",statsPriceRange:!!d.statsPriceRange,statsDistance:!!d.statsDistance,p1:{...p.p1,price:T},p2:{...p.p2,price:oe}}}if(p.type==="disjointchannel"){const y=O(d.lineColor,"#129f5c"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=O(d.fillColor,"#6aa84f"),oe=Te(d.fillOpacity,.1),E=O(d.pricesColor,"#129f5c"),K=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,ae=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p3.price,re=Number.isFinite(Number(d.point3Price))?Number(d.point3Price):p.p2.price,f=p.primitive;f&&(f.lineColor=y,f.lineWidth=J,f.fillColor=T,f.fillOpacity=oe,f.showBackground=!!d.showBackground,f.showPrices=!!d.showPrices,f.pricesColor=E,f.rayLeft=!!d.rayLeft,f.rayRight=!!d.rayRight,f.arrowLeft=!!d.arrowLeft,f.arrowRight=!!d.arrowRight,f.p1={...p.p1,price:K},f.p3={...p.p3,price:ae},f.p2={...p.p2,price:re}),S={...S,lineColor:y,lineWidth:J,fillColor:T,fillOpacity:oe,showBackground:!!d.showBackground,showPrices:!!d.showPrices,pricesColor:E,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,p1:{...p.p1,price:K},p3:{...p.p3,price:ae},p2:{...p.p2,price:re}}}if(p.type==="flattopbottom"){const y=O(d.lineColor,"#3b82f6"),J=Math.max(1,Math.min(5,Number.isFinite(Number(d.lineWidth))?Number(d.lineWidth):2)),T=O(d.fillColor,"#3b82f6"),oe=Te(d.fillOpacity,.12),E=O(d.pricesColor,"#3b82f6"),K=Number.isFinite(Number(d.point1Price))?Number(d.point1Price):p.p1.price,ae=Number.isFinite(Number(d.point2Price))?Number(d.point2Price):p.p3.price,re=Number.isFinite(Number(d.point3Price))?Number(d.point3Price):p.p2.price,f=p.primitive;f&&(f.lineColor=y,f.lineWidth=J,f.fillColor=T,f.fillOpacity=oe,f.showBackground=!!d.showBackground,f.showPrices=!!d.showPrices,f.pricesColor=E,f.rayLeft=!!d.rayLeft,f.rayRight=!!d.rayRight,f.arrowLeft=!!d.arrowLeft,f.arrowRight=!!d.arrowRight,f.p1={...p.p1,price:K},f.p3={...p.p3,price:ae},f.p2={...p.p2,price:re}),S={...S,lineColor:y,lineWidth:J,fillColor:T,fillOpacity:oe,showBackground:!!d.showBackground,showPrices:!!d.showPrices,pricesColor:E,rayLeft:!!d.rayLeft,rayRight:!!d.rayRight,arrowLeft:!!d.arrowLeft,arrowRight:!!d.arrowRight,p1:{...p.p1,price:K},p3:{...p.p3,price:ae},p2:{...p.p2,price:re}}}Ce(y=>{const J=y.map(T=>T===p?S:T);return x.current=J,J}),le.current===p&&(le.current=S),L(y=>y===p?S:y),te(y=>y===p?S:y),q(S);try{c.current?.applyOptions({})}catch{}};Ae.useEffect(()=>{const d=o.current;if(!d)return;const p=d.getBoundingClientRect(),O=K=>{const ae=Math.abs(Number(K));return Number.isFinite(ae)?ae>=1e3?ae.toFixed(2):(ae>=1,ae.toFixed(5)):"0"},Te=rt==="light",S=V0(d,{width:p.width||d.clientWidth,height:p.height||d.clientHeight,autoSize:!0,localization:{priceFormatter:O},layout:{background:{color:Te?"#FFFFFF":"#0d1117",type:"solid"},textColor:Te?"#020617":"#e6edf3",fontSize:12,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'},grid:{vertLines:{visible:Ie,color:Ie?Te?"rgba(100, 116, 139, 0.15)":"rgba(110, 118, 129, 0.15)":"transparent",style:Ie?2:0},horzLines:{visible:Ie,color:Ie?Te?"rgba(100, 116, 139, 0.15)":"rgba(110, 118, 129, 0.15)":"transparent",style:Ie?2:0}},rightPriceScale:{borderColor:Te?"#e5e7eb":"#21262d",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0,entireTextOnly:!1,textColor:Te?"#64748b":"#8b949e"},leftPriceScale:{visible:!1},timeScale:{borderColor:Te?"#e5e7eb":"#21262d",timeVisible:!0,secondsVisible:!1,rightOffset:12,barSpacing:6,minBarSpacing:4,shiftVisibleRangeOnNewBar:!1,fixLeftEdge:!1,fixRightEdge:!1,rightBarStaysOnScroll:!0,allowShiftVisibleRangeOnWhitespaceClick:!0},crosshair:{mode:be===1?1:0,vertLine:{width:1,color:Te?"#3b82f6":"#58a6ff",style:0,labelBackgroundColor:Te?"#eff6ff":"#161b22",labelVisible:!0},horzLine:{width:1,color:Te?"#3b82f6":"#58a6ff",style:0,labelBackgroundColor:Te?"#eff6ff":"#161b22",labelVisible:!0},vertLineVisible:be===1,horzLineVisible:be===1},handleScroll:{mouseWheel:!0,pressedMouseMove:be===null||be===1,horzTouchDrag:!0,vertTouchDrag:!0},handleScale:{axisPressedMouseMove:{time:!0,price:!0},axisDoubleClickReset:{time:!1,price:!0},axisTouch:{time:!0,price:!0},mouseWheel:!0,pinch:!0}}),y=S.addCandlestickSeries({upColor:Te?"#089981":"#26a69a",downColor:Te?"#f23645":"#ef5350",wickUpColor:Te?"#089981":"#26a69a",wickDownColor:Te?"#f23645":"#ef5350",borderUpColor:Te?"#089981":"#26a69a",borderDownColor:Te?"#f23645":"#ef5350",borderVisible:!0}),J=S.addLineSeries({lineVisible:!1,pointMarkersVisible:!1,crosshairMarkerVisible:!1,priceLineVisible:!1,lastValueVisible:!1,color:"rgba(0,0,0,0)"});c.current=S,h.current=y,g.current=J,J.setData(Da(Ve,fe)),requestAnimationFrame(()=>{if(d&&S){const K=d.getBoundingClientRect();K.width>0&&K.height>0&&S.resize(K.width,K.height)}});const T=S.timeScale(),oe=()=>{if(he.current&&St.current.size>0){const K=T.getVisibleRange();K&&ve(K)}};T.subscribeVisibleTimeRangeChange(oe);const E=new ResizeObserver(K=>{for(const ae of K){const{width:re,height:f}=ae.contentRect;if(re>0&&f>0&&S){const B=T.getVisibleRange();S.resize(re,f),B&&setTimeout(()=>{try{T.setVisibleRange(B)}catch{}},0)}}});return E.observe(d),()=>{T.unsubscribeVisibleTimeRangeChange(oe),E.disconnect(),S.remove(),c.current=null,h.current=null,g.current=null,C.current=null,x.current=[],qA.current&&clearTimeout(qA.current)}},[]),Ae.useEffect(()=>{c.current&&c.current.applyOptions({grid:{vertLines:{visible:Ie,color:Ie?"rgba(110, 118, 129, 0.15)":"transparent",style:Ie?2:0},horzLines:{visible:Ie,color:Ie?"rgba(110, 118, 129, 0.15)":"transparent",style:Ie?2:0}}})},[Ie]),Ae.useEffect(()=>{const d=c.current;if(!d)return;const p=rt==="light";d.applyOptions({layout:{background:{color:p?"#FFFFFF":"#12161d"},textColor:p?"#020617":"#fff"},grid:{vertLines:{color:Ie?p?"rgba(100, 116, 139, 0.25)":"rgba(148, 163, 184, 0.2)":"transparent"},horzLines:{color:Ie?p?"rgba(100, 116, 139, 0.25)":"rgba(148, 163, 184, 0.2)":"transparent"}},rightPriceScale:{borderColor:p?"#e5e7eb":"#1e293b"},timeScale:{borderColor:p?"#e5e7eb":"#1e293b"},crosshair:{vertLine:{color:p?"#3b82f6":"#58a6ff",labelBackgroundColor:p?"#eff6ff":"#161b22",width:1},horzLine:{color:p?"#3b82f6":"#58a6ff",labelBackgroundColor:p?"#eff6ff":"#161b22",width:1}}})},[rt,Ie]),Ae.useEffect(()=>{if(!c.current)return;const p=!it&&!(be!==null&&be!==1&&be!==0),O=!it;c.current.applyOptions({crosshair:{mode:be===1?1:0,vertLine:{visible:be===1,width:1,color:rt==="light"?"#94a3b8":"#64748b",style:0,labelBackgroundColor:rt==="light"?"#e5e7eb":"#1e293b"},horzLine:{visible:be===1,width:1,color:rt==="light"?"#94a3b8":"#64748b",style:0,labelBackgroundColor:rt==="light"?"#e5e7eb":"#1e293b"}},handleScroll:{mouseWheel:O,pressedMouseMove:p,horzTouchDrag:p,vertTouchDrag:p},handleScale:{axisPressedMouseMove:{time:p,price:p},axisDoubleClickReset:{time:!1,price:O},axisTouch:{time:p,price:p},mouseWheel:O,pinch:O}})},[be,it]);const xT=()=>{const d=h.current;x.current.forEach(p=>{if(p.primitive){try{d&&d.detachPrimitive(p.primitive)}catch{}if(p.series&&p.series!==d)try{p.series.detachPrimitive(p.primitive)}catch{}}if(p.priceLine&&d)try{d.removePriceLine(p.priceLine)}catch{}if(p.textPrimitive&&d)try{d.detachPrimitive(p.textPrimitive)}catch{}}),x.current=[],Ce([]),Ee(null)},Jd=(d,p=!1)=>{d&&x.current.forEach(O=>{if(O.primitive){try{d.detachPrimitive(O.primitive)}catch{}try{d.attachPrimitive(O.primitive)}catch{}}if(p&&O.type==="pricelevel"&&O.priceLine)try{const Te=O.showPrice!==!1,S=d.createPriceLine({price:O.price,color:O.lineColor??"#3b82f6",lineWidth:O.lineWidth??2,lineStyle:0,axisLabelVisible:Te,title:Te&&typeof O.price=="number"?O.price.toFixed(5):""});O.priceLine=S}catch{}if(p&&O.type==="horizontalray"&&O.priceLine)try{const Te=O.showPrice!==!1,S=d.createPriceLine({price:O.price,color:O.lineColor??"#3b82f6",lineWidth:O.lineWidth??2,lineStyle:0,lineVisible:!1,axisLabelVisible:Te,title:Te&&typeof O.price=="number"?O.price.toFixed(5):""});O.priceLine=S}catch{}})};Ae.useEffect(()=>{(async()=>{if(!Se||!fe){dt([]),he.current=!1;return}try{if(It(!0),Bs(null),dt([]),he.current=!1,xe.current!==null&&xe.current!==Se&&xT(),xe.current=Se,h.current)try{h.current.setData([])}catch{}const p=Nd(fe),O=zv(fe,p),Te=Ge||xv?.VITE_BASE_URL||"http://localhost:5002",S=ke?.candles||"/api/chart/candles",y=me?.candles||{},J={symbol:y.symbol||"symbol",timeframe:y.timeframe||"timeframe",limit:y.limit||"limit",daysBack:y.daysBack||"daysBack"},T={};T[J.symbol]=Se,T[J.timeframe]=fe,T[J.limit]=O,y.daysBack!==!1&&(T[J.daysBack]=p);const oe=await ht.get(`${Te}${S}`,{params:T,timeout:1e4});let E=[];if(Array.isArray(oe.data)?E=oe.data:oe.data&&oe.data.data&&Array.isArray(oe.data.data)?E=oe.data.data:oe.data&&Array.isArray(oe.data)&&(E=oe.data),E&&E.length>0){const{candles:K,stats:ae}=Ra(E,Se,fe);K.length>0?(dt(K),St.current=new Map,K.forEach(re=>{St.current.set(re.time,re)})):(console.warn(`⚠️ No valid candles after processing for ${Se}`),dt([]))}else console.warn(`⚠️ No candle data returned for ${Se}`),dt([])}catch(p){console.error(`❌ Error fetching ${Se}:`,p.message);const O=p.code==="ECONNABORTED"||p.message&&p.message.includes("timeout");Bs(O?"Request timed out. No data available for this symbol.":p.message||"Failed to load candles."),dt([]),It(!1)}})()},[Se,fe,gi]),Ae.useEffect(()=>{vt.current=Bn.getSocket();const d=vt.current,p=()=>{if(Se&&fe&&d.connected){const T={symbol:Se,timeframe:fe};d.emit("subscribeCandles",T)}},O=()=>{setTimeout(()=>{Se&&fe&&p()},200)},Te=T=>{},S=T=>{};d.on("connect",O),d.on("disconnect",Te),d.on("connect_error",S),d.on("subscription:confirmed",T=>{T.type});const y=T=>{if(!T||!T.candle||!T.symbol||T.symbol.toUpperCase()!==Se?.toUpperCase())return;const{candle:oe}=T,E=Ga(oe,Se,fe);if(!E)return;const K=Date.now();if(K-jt.current<200)return;jt.current=K;const ae=c.current?.timeScale(),re=ae?.getVisibleRange(),f=h.current,B=c.current;if(!(!f||!B||!he.current||f?.seriesType?.()!==(Je==="line"?"Line":Je==="area"?"Area":Je==="bars"?"Bar":"Candlestick")))try{const u=St.current.get(E.time),D=!u,H=u?{time:E.time,open:u.open,high:Math.max(u.high,E.close),low:Math.min(u.low,E.close),close:E.close}:E;St.current.set(E.time,H),D&&g.current&&g.current.setData(Da(Array.from(St.current.values()),fe));try{Je==="line"||Je==="area"?f.update({time:H.time,value:H.close}):f.update(H),ae&&re&&ve(re)}catch(P){throw P}}catch{}};d.on("candleUpdate",y);const J=()=>{d.connected&&Se&&fe&&p()};if(d.connected)J();else{const T=()=>{setTimeout(J,200)};d.once("connect",T),setTimeout(()=>{d.connected&&J()},500)}return()=>{d.off("candleUpdate",y),d.off("connect",O),d.off("disconnect",Te),d.off("connect_error",S),d.off("subscription:confirmed"),Se&&fe&&d.connected&&d.emit("unsubscribeCandles",{symbol:Se,timeframe:fe})}},[Se,fe,Ge]),Ae.useEffect(()=>{const d=h.current,p=c.current;if(!d||!p){It(!1);return}if(!(Ve.length===0&&he.current)){if(Ve.length===0&&!he.current){if(wt)return;const O=p.timeScale();d.setData([]),O.fitContent(),qA.current&&clearTimeout(qA.current),qA.current=setTimeout(()=>requestAnimationFrame(()=>It(!1)),400);return}if(!he.current){const O=p.timeScale(),Te=Ue(Se,fe);we.current,we.current=Te;const S=[...Ve].sort((T,oe)=>T.time-oe.time);if(Je==="line"||Je==="area"){const T=S?.map(oe=>({time:oe.time,value:oe.close})).filter(oe=>oe.time!=null);T.length>0&&d.setData(T)}else S?.length>0&&d.setData(S);Jd(d);const y=tA(fe)||60;if(x.current.forEach(T=>{if(T.type==="horizontalray"&&T.primitive){const f=T.rawOriginTime??T.primitive.originTime,B=We(f,y);T.primitive.originTime=B,T.originTime=B;return}if(T.type==="verticalline"&&T.primitive){const f=T.rawTime??T.primitive.time,B=We(f,y);T.primitive.time=B,T.time=Y(B);return}if(T.type==="infoline"&&T.primitive&&T.p1&&T.p2){const f=T.rawP1Time??T.p1.rawTime,B=T.rawP2Time??T.p2.rawTime,Q=S.length>0?S[0].time:null,w=S.length>0?S[S.length-1].time:null,u=P=>{const I=We(P,y);return Q==null||w==null?I:Math.min(Math.max(I,Q),w)},D=u(f),H=u(B);T.p1.rawTime=D,T.p1.normalizedTime=Y(D),T.p2.rawTime=H,T.p2.normalizedTime=Y(H),T.primitive.p1={rawTime:D,price:T.p1.price},T.primitive.p2={rawTime:H,price:T.p2.price};return}if(T.type==="rulerline"&&T.primitive&&T.p1&&T.p2){const f=T.rawP1Time??T.p1.rawTime,B=T.rawP2Time??T.p2.rawTime,Q=S.length>0?S[0].time:null,w=S.length>0?S[S.length-1].time:null,u=_=>{const k=We(_,y);return Q==null||w==null?k:Math.min(Math.max(k,Q),w)},D=u(f),H=u(B);T.p1.rawTime=D,T.p2.rawTime=H,T.primitive.p1={rawTime:D,price:T.p1.price},T.primitive.p2={rawTime:H,price:T.p2.price};const P=Y(D),I=Y(H),m=Math.abs((I??0)-(P??0));T.primitive.info={priceDiff:T.p2.price-T.p1.price,pricePct:(T.p2.price-T.p1.price)/Math.abs(T.p1.price||1)*100,bars:ms(Dt,D,H,fe),days:Math.max(1,Math.round(m/86400))};return}if(T.type==="arrowedline"&&T.primitive&&T.p1&&T.p2){const f=T.p1.rawTime,B=T.p2.rawTime,Q=We(f,y),w=We(B,y);T.p1.rawTime=Q,T.p1.normalizedTime=Y(Q),T.p2.rawTime=w,T.p2.normalizedTime=Y(w),T.primitive.p1={rawTime:Q,price:T.p1.price},T.primitive.p2={rawTime:w,price:T.p2.price};return}if(T.type==="rayline"&&T.primitive&&T.p1&&T.p2){const f=T.p1.rawTime,B=T.p2.rawTime,Q=We(f,y),w=We(B,y);T.p1.rawTime=Q,T.p1.normalizedTime=Y(Q),T.p2.rawTime=w,T.p2.normalizedTime=Y(w),T.primitive.p1={rawTime:Q,price:T.p1.price},T.primitive.p2={rawTime:w,price:T.p2.price};return}if(T.type==="extendedline"&&T.primitive&&T.p1&&T.p2){const f=T.p1.rawTime,B=T.p2.rawTime,Q=We(f,y),w=We(B,y);T.p1.rawTime=Q,T.p1.normalizedTime=Y(Q),T.p2.rawTime=w,T.p2.normalizedTime=Y(w),T.primitive.p1={rawTime:Q,price:T.p1.price},T.primitive.p2={rawTime:w,price:T.p2.price};return}if(T.type==="trendbyangle"&&T.primitive&&T.p1&&T.p2){const f=T.p1.rawTime,B=T.p2.rawTime,Q=We(f,y),w=We(B,y);T.p1.rawTime=Q,T.p1.normalizedTime=Y(Q),T.p2.rawTime=w,T.p2.normalizedTime=Y(w),T.primitive.p1={rawTime:Q,price:T.p1.price},T.primitive.p2={rawTime:w,price:T.p2.price};return}if(T.type==="disjointchannel"&&T.primitive&&T.p1&&T.p2&&T.p3&&T.p4){const f=B=>{const Q=We(B.rawTime,y);B.rawTime=Q,B.normalizedTime=Y(Q)};f(T.p1),f(T.p2),f(T.p3),f(T.p4),T.primitive.p1={rawTime:T.p1.rawTime,price:T.p1.price},T.primitive.p2={rawTime:T.p2.rawTime,price:T.p2.price},T.primitive.p3={rawTime:T.p3.rawTime,price:T.p3.price},T.primitive.p4={rawTime:T.p4.rawTime,price:T.p4.price};return}if(T.type==="flattopbottom"&&T.primitive&&T.p1&&T.p2&&T.p3&&T.p4){const f=B=>{const Q=We(B.rawTime,y);B.rawTime=Q,B.normalizedTime=Y(Q)};f(T.p1),f(T.p2),f(T.p3),f(T.p4),T.primitive.p1={rawTime:T.p1.rawTime,price:T.p1.price},T.primitive.p2={rawTime:T.p2.rawTime,price:T.p2.price},T.primitive.p3={rawTime:T.p3.rawTime,price:T.p3.price},T.primitive.p4={rawTime:T.p4.rawTime,price:T.p4.price};return}if(T.type==="regressionchannel"&&T.primitive&&T.p1&&T.p2){const f=Ni(S,T.p1,T.p2,T.stdMultiplier??1);if(!f)return;const B=T.primitive;B.mid1={rawTime:f.p1.rawTime,price:f.p1.price},B.mid2={rawTime:f.p2.rawTime,price:f.p2.price},B.top1={rawTime:f.top1.rawTime,price:f.top1.price},B.top2={rawTime:f.top2.rawTime,price:f.top2.price},B.bot1={rawTime:f.bot1.rawTime,price:f.bot1.price},B.bot2={rawTime:f.bot2.rawTime,price:f.bot2.price},T.p1=f.p1,T.p2=f.p2,T.top1=f.top1,T.top2=f.top2,T.bot1=f.bot1,T.bot2=f.bot2,T.slope=f.slope,T.intercept=f.intercept,T.stdDev=f.stdDev,T.offset=f.offset,T.barCount=f.barCount;return}if(T.type==="stddevchannel"&&T.primitive&&T.p1&&T.p2){const f=Sr(S,T.p1,T.p2,T.stdMultiplier??1);if(!f)return;const B=T.primitive;B.mid1={rawTime:f.p1.rawTime,price:f.p1.price},B.mid2={rawTime:f.p2.rawTime,price:f.p2.price},B.top1={rawTime:f.top1.rawTime,price:f.top1.price},B.top2={rawTime:f.top2.rawTime,price:f.top2.price},B.bot1={rawTime:f.bot1.rawTime,price:f.bot1.price},B.bot2={rawTime:f.bot2.rawTime,price:f.bot2.price},T.p1=f.p1,T.p2=f.p2,T.top1=f.top1,T.top2=f.top2,T.bot1=f.bot1,T.bot2=f.bot2,T.slope=f.slope,T.stdDev=f.stdDev,T.offset=f.offset,T.barCount=f.barCount;return}if(T.type==="andrewspitchfork"&&T.primitive&&T.p1&&T.p2&&T.p3){const f=We(T.p1.rawTime,y),B=We(T.p2.rawTime,y),Q=We(T.p3.rawTime,y);T.p1.rawTime=f,T.p1.normalizedTime=Y(f),T.p2.rawTime=B,T.p2.normalizedTime=Y(B),T.p3.rawTime=Q,T.p3.normalizedTime=Y(Q),T.primitive.p1={rawTime:f,price:T.p1.price},T.primitive.p2={rawTime:B,price:T.p2.price},T.primitive.p3={rawTime:Q,price:T.p3.price};return}if((T.type==="gannfan"||T.type==="ganngrid")&&T.primitive&&T.p1&&T.p2){const f=We(T.p1.rawTime,y),B=We(T.p2.rawTime,y);T.p1.rawTime=f,T.p1.normalizedTime=Y(f),T.p2.rawTime=B,T.p2.normalizedTime=Y(B),T.primitive.p1={rawTime:f,price:T.p1.price},T.primitive.p2={rawTime:B,price:T.p2.price};return}if((T.type==="circle"||T.type==="ellipse")&&T.primitive&&T.p1&&T.p2){const f=We(T.p1.rawTime,y),B=We(T.p2.rawTime,y);T.p1.rawTime=f,T.p1.normalizedTime=Y(f),T.p2.rawTime=B,T.p2.normalizedTime=Y(B),T.primitive.p1={rawTime:f,price:T.p1.price},T.primitive.p2={rawTime:B,price:T.p2.price};return}if(T.type==="triangle"&&T.primitive&&T.p1&&T.p2&&T.p3){const f=We(T.p1.rawTime,y),B=We(T.p2.rawTime,y),Q=We(T.p3.rawTime,y);T.p1.rawTime=f,T.p1.normalizedTime=Y(f),T.p2.rawTime=B,T.p2.normalizedTime=Y(B),T.p3.rawTime=Q,T.p3.normalizedTime=Y(Q),T.primitive.p1={rawTime:f,price:T.p1.price},T.primitive.p2={rawTime:B,price:T.p2.price},T.primitive.p3={rawTime:Q,price:T.p3.price};return}if((T.type==="fibonacci"||T.type==="rectangle")&&T.primitive&&T.p1&&T.p2){const f=We(T.p1.rawTime,y),B=We(T.p2.rawTime,y);T.p1.rawTime=f,T.p1.normalizedTime=Y(f),T.p2.rawTime=B,T.p2.normalizedTime=Y(B),T.primitive.p1={rawTime:f,price:T.p1.price},T.primitive.p2={rawTime:B,price:T.p2.price};return}if(T.type!=="trendline"&&T.type!=="gannline"||!T.series||!T.point1||!T.point2)return;const oe=T.point1.rawTime??T.point1.time,E=T.point2.rawTime??T.point2.time,K=We(oe,y),ae=We(E,y);T.point1.time=K,T.point2.time=ae;const re=UA([{time:K,value:T.point1.price},{time:ae,value:T.point2.price}]);try{re.length>0&&T.series.setData(re)}catch{}}),S?.length>0){const T=S[S?.length-1].time,oe=tA(fe)||60,K=T-(fe==="M1"?150:fe==="M5"?120:100)*oe;try{O.setVisibleRange({from:K,to:T+oe*Kd})}catch{O.fitContent()}}else O.fitContent();try{p.priceScale("right").applyOptions({borderColor:"#1e293b",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0})}catch{}he.current=!0;const J=O.getVisibleRange();ve(J),qA.current&&clearTimeout(qA.current),qA.current=setTimeout(()=>requestAnimationFrame(()=>It(!1)),400)}}},[Ve.length,Je,Se,fe]),Ae.useEffect(()=>{const d=c.current;if(!d||!he.current||Ve.length===0)return;const p=d.timeScale(),O=p.getVisibleRange()||ye();if(h.current)try{d.removeSeries(h.current)}catch{}if(C.current)try{d.removeSeries(C.current),C.current=null}catch{}let Te;if(Je==="bars"){const y=rt==="light";Te=d.addBarSeries({upColor:y?"#089981":"#26A69A",downColor:y?"#f23645":"#EF5350",borderUpColor:y?"#089981":"#26A69A",borderDownColor:y?"#f23645":"#EF5350",scaleMargins:{top:.1,bottom:.1}});const J=[...Ve].sort((T,oe)=>T.time-oe.time);J?.length>0&&Te.setData(J)}else if(Je==="line"){Te=d.addLineSeries({color:"#38bdf8",lineWidth:2,priceLineVisible:!1,lastValueVisible:!0,scaleMargins:{top:.1,bottom:.1}});const y=UA(ka);y.length>0&&Te.setData(y)}else if(Je==="area"){Te=d.addAreaSeries({lineColor:"#38bdf8",topColor:"rgba(56,189,248,0.4)",bottomColor:"rgba(56,189,248,0.0)",lineWidth:2,priceLineVisible:!1,lastValueVisible:!0,scaleMargins:{top:.1,bottom:.1}});const y=UA(ka);y.length>0&&Te.setData(y)}else if(Je==="volume ticks"||Je==="volume"){const y=rt==="light";Te=d.addCandlestickSeries({upColor:y?"#089981":"#26A69A",downColor:y?"#f23645":"#EF5350",wickUpColor:y?"#089981":"#26A69A",wickDownColor:y?"#f23645":"#EF5350",borderUpColor:y?"#089981":"#26A69A",borderDownColor:y?"#f23645":"#EF5350",borderVisible:!0,priceScaleId:"right"});const J=[...Ve].sort((E,K)=>E.time-K.time);J?.length>0&&Te.setData(J);const T=d.addHistogramSeries({priceFormat:{type:"volume"},priceScaleId:"vol",base:0,priceLineVisible:!1,lastValueVisible:!1,color:"rgba(38,166,154,0.15)"});d.priceScale("right").applyOptions({scaleMargins:{top:.05,bottom:.3}}),d.priceScale("vol").applyOptions({scaleMargins:{top:.75,bottom:0},visible:!1});const oe=J?.map(E=>({time:E.time,value:E.volume||0,color:E.close>=E.open?"rgba(38,166,154,0.25)":"rgba(239,83,80,0.25)"}));oe.length>0&&T.setData(oe),C.current=T}else{const y=rt==="light";Te=d.addCandlestickSeries({upColor:y?"#089981":"#26A69A",downColor:y?"#f23645":"#EF5350",wickUpColor:y?"#089981":"#26A69A",wickDownColor:y?"#f23645":"#EF5350",borderUpColor:y?"#089981":"#26A69A",borderDownColor:y?"#f23645":"#EF5350",borderVisible:!0,scaleMargins:{top:.1,bottom:.1}});const J=[...Ve].sort((T,oe)=>T.time-oe.time);J?.length>0&&Te.setData(J)}h.current=Te,Jd(Te,!0);const S=tA(fe)||60;if(x.current.forEach(y=>{if(y.type==="horizontalray"&&y.primitive){const f=y.rawOriginTime??y.primitive.originTime,B=We(f,S);y.primitive.originTime=B,y.originTime=B;return}if(y.type==="verticalline"&&y.primitive){const f=y.rawTime??y.primitive.time,B=We(f,S);y.primitive.time=B,y.time=Y(B);return}if(y.type==="infoline"&&y.primitive&&y.p1&&y.p2){const f=y.rawP1Time??y.p1.rawTime,B=y.rawP2Time??y.p2.rawTime,Q=[...Ve].sort((I,m)=>I.time-m.time),w=Q.length>0?Q[0].time:null,u=Q.length>0?Q[Q.length-1].time:null,D=I=>{const m=We(I,S);return w==null||u==null?m:Math.min(Math.max(m,w),u)},H=D(f),P=D(B);y.p1.rawTime=H,y.p1.normalizedTime=Y(H),y.p2.rawTime=P,y.p2.normalizedTime=Y(P),y.primitive.p1={rawTime:H,price:y.p1.price},y.primitive.p2={rawTime:P,price:y.p2.price};return}if(y.type==="rulerline"&&y.primitive&&y.p1&&y.p2){const f=y.rawP1Time??y.p1.rawTime,B=y.rawP2Time??y.p2.rawTime,Q=[...Ve].sort((k,W)=>k.time-W.time),w=Q.length>0?Q[0].time:null,u=Q.length>0?Q[Q.length-1].time:null,D=k=>{const W=We(k,S);return w==null||u==null?W:Math.min(Math.max(W,w),u)},H=D(f),P=D(B);y.p1.rawTime=H,y.p2.rawTime=P,y.primitive.p1={rawTime:H,price:y.p1.price},y.primitive.p2={rawTime:P,price:y.p2.price};const I=Y(H),m=Y(P),_=Math.abs((m??0)-(I??0));y.primitive.info={priceDiff:y.p2.price-y.p1.price,pricePct:(y.p2.price-y.p1.price)/Math.abs(y.p1.price||1)*100,bars:ms(Dt,H,P,fe),days:Math.max(1,Math.round(_/86400))};return}if(y.type==="arrowedline"&&y.primitive&&y.p1&&y.p2){const f=y.p1.rawTime,B=y.p2.rawTime,Q=We(f,S),w=We(B,S);y.p1.rawTime=Q,y.p1.normalizedTime=Y(Q),y.p2.rawTime=w,y.p2.normalizedTime=Y(w),y.primitive.p1={rawTime:Q,price:y.p1.price},y.primitive.p2={rawTime:w,price:y.p2.price};return}if(y.type==="rayline"&&y.primitive&&y.p1&&y.p2){const f=y.p1.rawTime,B=y.p2.rawTime,Q=We(f,S),w=We(B,S);y.p1.rawTime=Q,y.p1.normalizedTime=Y(Q),y.p2.rawTime=w,y.p2.normalizedTime=Y(w),y.primitive.p1={rawTime:Q,price:y.p1.price},y.primitive.p2={rawTime:w,price:y.p2.price};return}if(y.type==="extendedline"&&y.primitive&&y.p1&&y.p2){const f=y.p1.rawTime,B=y.p2.rawTime,Q=We(f,S),w=We(B,S);y.p1.rawTime=Q,y.p1.normalizedTime=Y(Q),y.p2.rawTime=w,y.p2.normalizedTime=Y(w),y.primitive.p1={rawTime:Q,price:y.p1.price},y.primitive.p2={rawTime:w,price:y.p2.price};return}if(y.type==="trendbyangle"&&y.primitive&&y.p1&&y.p2){const f=y.p1.rawTime,B=y.p2.rawTime,Q=We(f,S),w=We(B,S);y.p1.rawTime=Q,y.p1.normalizedTime=Y(Q),y.p2.rawTime=w,y.p2.normalizedTime=Y(w),y.primitive.p1={rawTime:Q,price:y.p1.price},y.primitive.p2={rawTime:w,price:y.p2.price};return}if(y.type==="disjointchannel"&&y.primitive&&y.p1&&y.p2&&y.p3&&y.p4){const f=B=>{const Q=We(B.rawTime,S);B.rawTime=Q,B.normalizedTime=Y(Q)};f(y.p1),f(y.p2),f(y.p3),f(y.p4),y.primitive.p1={rawTime:y.p1.rawTime,price:y.p1.price},y.primitive.p2={rawTime:y.p2.rawTime,price:y.p2.price},y.primitive.p3={rawTime:y.p3.rawTime,price:y.p3.price},y.primitive.p4={rawTime:y.p4.rawTime,price:y.p4.price};return}if(y.type==="flattopbottom"&&y.primitive&&y.p1&&y.p2&&y.p3&&y.p4){const f=B=>{const Q=We(B.rawTime,S);B.rawTime=Q,B.normalizedTime=Y(Q)};f(y.p1),f(y.p2),f(y.p3),f(y.p4),y.primitive.p1={rawTime:y.p1.rawTime,price:y.p1.price},y.primitive.p2={rawTime:y.p2.rawTime,price:y.p2.price},y.primitive.p3={rawTime:y.p3.rawTime,price:y.p3.price},y.primitive.p4={rawTime:y.p4.rawTime,price:y.p4.price};return}if(y.type==="regressionchannel"&&y.primitive&&y.p1&&y.p2){const f=[...Ve].sort((w,u)=>w.time-u.time),B=Ni(f,y.p1,y.p2,y.stdMultiplier??1);if(!B)return;const Q=y.primitive;Q.mid1={rawTime:B.p1.rawTime,price:B.p1.price},Q.mid2={rawTime:B.p2.rawTime,price:B.p2.price},Q.top1={rawTime:B.top1.rawTime,price:B.top1.price},Q.top2={rawTime:B.top2.rawTime,price:B.top2.price},Q.bot1={rawTime:B.bot1.rawTime,price:B.bot1.price},Q.bot2={rawTime:B.bot2.rawTime,price:B.bot2.price},y.p1=B.p1,y.p2=B.p2,y.top1=B.top1,y.top2=B.top2,y.bot1=B.bot1,y.bot2=B.bot2,y.slope=B.slope,y.intercept=B.intercept,y.stdDev=B.stdDev,y.offset=B.offset,y.barCount=B.barCount;return}if(y.type==="stddevchannel"&&y.primitive&&y.p1&&y.p2){const f=[...Ve].sort((w,u)=>w.time-u.time),B=Sr(f,y.p1,y.p2,y.stdMultiplier??1);if(!B)return;const Q=y.primitive;Q.mid1={rawTime:B.p1.rawTime,price:B.p1.price},Q.mid2={rawTime:B.p2.rawTime,price:B.p2.price},Q.top1={rawTime:B.top1.rawTime,price:B.top1.price},Q.top2={rawTime:B.top2.rawTime,price:B.top2.price},Q.bot1={rawTime:B.bot1.rawTime,price:B.bot1.price},Q.bot2={rawTime:B.bot2.rawTime,price:B.bot2.price},y.p1=B.p1,y.p2=B.p2,y.top1=B.top1,y.top2=B.top2,y.bot1=B.bot1,y.bot2=B.bot2,y.slope=B.slope,y.stdDev=B.stdDev,y.offset=B.offset,y.barCount=B.barCount;return}if(y.type==="andrewspitchfork"&&y.primitive&&y.p1&&y.p2&&y.p3){const f=We(y.p1.rawTime,S),B=We(y.p2.rawTime,S),Q=We(y.p3.rawTime,S);y.p1.rawTime=f,y.p1.normalizedTime=Y(f),y.p2.rawTime=B,y.p2.normalizedTime=Y(B),y.p3.rawTime=Q,y.p3.normalizedTime=Y(Q),y.primitive.p1={rawTime:f,price:y.p1.price},y.primitive.p2={rawTime:B,price:y.p2.price},y.primitive.p3={rawTime:Q,price:y.p3.price};return}if((y.type==="gannfan"||y.type==="ganngrid")&&y.primitive&&y.p1&&y.p2){const f=We(y.p1.rawTime,S),B=We(y.p2.rawTime,S);y.p1.rawTime=f,y.p1.normalizedTime=Y(f),y.p2.rawTime=B,y.p2.normalizedTime=Y(B),y.primitive.p1={rawTime:f,price:y.p1.price},y.primitive.p2={rawTime:B,price:y.p2.price};return}if((y.type==="circle"||y.type==="ellipse")&&y.primitive&&y.p1&&y.p2){const f=We(y.p1.rawTime,S),B=We(y.p2.rawTime,S);y.p1.rawTime=f,y.p1.normalizedTime=Y(f),y.p2.rawTime=B,y.p2.normalizedTime=Y(B),y.primitive.p1={rawTime:f,price:y.p1.price},y.primitive.p2={rawTime:B,price:y.p2.price};return}if(y.type==="triangle"&&y.primitive&&y.p1&&y.p2&&y.p3){const f=We(y.p1.rawTime,S),B=We(y.p2.rawTime,S),Q=We(y.p3.rawTime,S);y.p1.rawTime=f,y.p1.normalizedTime=Y(f),y.p2.rawTime=B,y.p2.normalizedTime=Y(B),y.p3.rawTime=Q,y.p3.normalizedTime=Y(Q),y.primitive.p1={rawTime:f,price:y.p1.price},y.primitive.p2={rawTime:B,price:y.p2.price},y.primitive.p3={rawTime:Q,price:y.p3.price};return}if((y.type==="fibonacci"||y.type==="rectangle")&&y.primitive&&y.p1&&y.p2){const f=We(y.p1.rawTime,S),B=We(y.p2.rawTime,S);y.p1.rawTime=f,y.p1.normalizedTime=Y(f),y.p2.rawTime=B,y.p2.normalizedTime=Y(B),y.primitive.p1={rawTime:f,price:y.p1.price},y.primitive.p2={rawTime:B,price:y.p2.price};return}if(y.type!=="trendline"&&y.type!=="gannline"||!y.series||!y.point1||!y.point2)return;const J=y.type==="gannline"?"#7aa6ae":"#22c55e";try{d.removeSeries(y.series)}catch{}const T=d.addLineSeries({color:y.lineColor??J,lineWidth:y.lineWidth??2,priceLineVisible:!1,lastValueVisible:!1}),oe=y.point1.rawTime??y.point1.time,E=y.point2.rawTime??y.point2.time,K=We(oe,S),ae=We(E,S);y.point1.time=K,y.point2.time=ae;const re=UA([{time:K,value:y.point1.price},{time:ae,value:y.point2.price}]);try{re.length>0&&T.setData(re)}catch{}if(y.decoration)try{T.attachPrimitive(y.decoration)}catch{}y.series=T}),O&&he.current)setTimeout(()=>{try{p.setVisibleRange(O),ve(O)}catch{if(Ve.length>0)try{const J=Ve[Ve.length-1].time,T=tA(fe)||60,oe=J-100*T;p.setVisibleRange({from:oe,to:J+T*Kd}),ve(p.getVisibleRange())}catch{p.fitContent(),ve(p.getVisibleRange())}}try{d.priceScale("right").applyOptions({borderColor:"#1e293b",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0})}catch{}},0);else if(!he.current){p.fitContent();try{d.priceScale("right").applyOptions({borderColor:"#1e293b",autoScale:!0,scaleMargins:{top:.1,bottom:.1},ticksVisible:!0,ensureEdgeTickMarksVisible:!0})}catch{}he.current=!0,ve(p.getVisibleRange())}},[Je,Ve.length,ka.length]),Ae.useEffect(()=>{const d=c.current,p=C.current;if(!d||!p||!he.current||Ve.length===0||Je!=="volume"&&Je!=="volume ticks")return;const Te=[...Ve].sort((S,y)=>S.time-y.time)?.map(S=>({time:S.time,value:S.volume||0,color:S.close>=S.open?"rgba(38,166,154,0.25)":"rgba(239,83,80,0.25)"}));Te.length>0&&p.setData(Te)},[Ve,Je]),Ae.useEffect(()=>{const d=c.current,p=h.current,O=o.current;if(!d||!p||!O)return;const S=be!==null?[null,null,"trendline","parallellines","fibonacci","rectangle","text",null,null,null,null,null,null,null,null,null,null,null,null,null,"pricelevel","horizontalray","verticalline","infoline","rulerline","arrowedline","rayline","extendedline","crossline","trendbyangle","disjointchannel","flattopbottom",null,null,null,null,null,null,null,null,"regressionchannel","stddevchannel","andrewspitchfork","gannline","gannfan","ganngrid","circle","triangle","ellipse"][be]:null,y=(E,K)=>{const ae=Math.min(E.time,K.time),re=Math.max(E.time,K.time),f=E.time<=K.time?E.rawTime:K.rawTime,B=E.time<=K.time?K.rawTime:E.rawTime,Q=Math.max(E.price,K.price),w=Math.min(E.price,K.price),u=Y(Math.round((ae+re)/2));return u==null?null:{p1:{rawTime:u,normalizedTime:u,price:Q},p2:{rawTime:f,normalizedTime:ae,price:w},p3:{rawTime:B,normalizedTime:re,price:w}}};if(!S){if(b.current=!1,v.current=null,U.current=null,M.current=null,F.current?.series)try{d.removeSeries(F.current.series)}catch{}if(F.current?.primitive)try{p.detachPrimitive(F.current.primitive)}catch{}F.current=null;return}if(S==="pricelevel"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const u={type:"pricelevel",priceLine:p.createPriceLine({price:Q,color:"#3b82f6",lineWidth:2,lineStyle:0,axisLabelVisible:!0,title:Q.toFixed(5)}),price:Q,showPrice:!0,showText:!1};Ce(D=>[...D,u]),x.current.push(u),Ee(null)};return O.addEventListener("click",E),()=>{O.removeEventListener("click",E)}}if(S==="horizontalray"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=new bv(Q,B);p.attachPrimitive(w);const u=p.createPriceLine({price:Q,color:"#3b82f6",lineWidth:2,lineStyle:0,lineVisible:!1,axisLabelVisible:!0,title:typeof Q=="number"?Q.toFixed(5):""}),D=Y(B),H={type:"horizontalray",primitive:w,priceLine:u,price:Q,originTime:D,rawOriginTime:B,lineColor:"#3b82f6",lineWidth:2,showPrice:!0,showText:!1};Ce(P=>[...P,H]),x.current.push(H),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="verticalline"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=d.timeScale().coordinateToTime(re);if(f==null)return;const B=new Nv(f);p.attachPrimitive(B);const Q=Y(f),w={type:"verticalline",primitive:B,time:Q,rawTime:f,lineColor:"#3b82f6",lineWidth:2,showDate:!0};Ce(u=>[...u,w]),x.current.push(w),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="text"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=new Kv(B,Q);p.attachPrimitive(w);const u={type:"text",primitive:w,rawTime:B,price:Q,text:"Text"};Ce(D=>[...D,u]),x.current.push(u),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="infoline"){let E=null,K=null;const ae=f=>{if(!E)return;const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=d.timeScale().coordinateToTime(Q),D=p.coordinateToPrice(w);if(u==null||D==null)return;K||(K=d.addLineSeries({color:"#3b82f6",lineWidth:2,crosshairMarkerVisible:!1,priceLineVisible:!1,lastValueVisible:!1}));const H=E.normalizedTime,P=Y(u);if(H==null||P==null||H===P)return;const I=H<=P?[{time:H,value:E.price},{time:P,value:D}]:[{time:P,value:D},{time:H,value:E.price}];try{K.setData(I)}catch{}},re=f=>{const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=d.timeScale().coordinateToTime(Q),D=p.coordinateToPrice(w);if(u==null||D==null)return;if(!E){E={rawTime:u,price:D,normalizedTime:Y(u),x:Q,y:w};return}if(K){try{d.removeSeries(K)}catch{}K=null}const H=E.normalizedTime,P=Y(u);if(H==null||P==null)return;const I=D-E.price,m=I/Math.abs(E.price)*100,_=tA(fe)||3600,k=Math.abs(P-H),W=Math.max(1,Math.round(k/_)),G=Math.max(1,Math.round(k/86400)),Z=E.x,ie=E.y,ue=Q,Fe=Math.atan2(-(w-ie),ue-Z)*(180/Math.PI),He={priceDiff:I,pricePct:m,bars:W,days:G,angle:Fe},$e=new Qv({rawTime:E.rawTime,price:E.price},{rawTime:u,price:D},He);p.attachPrimitive($e);const qe={type:"infoline",primitive:$e,rawP1Time:E.rawTime,rawP2Time:u,p1:{rawTime:E.rawTime,normalizedTime:H,price:E.price},p2:{rawTime:u,normalizedTime:P,price:D},lineColor:"#3b82f6",lineWidth:2,statsShowAlways:!0,statsColor:"#5f8f96",statsPosition:"right",statsPriceRange:!0,statsBarsRange:!0,statsDateRange:!0,statsAngle:!0,statsDistance:!0};Ce(Re=>[...Re,qe]),x.current.push(qe),E=null,Ee(null)};return O.addEventListener("mousemove",ae),O.addEventListener("click",re),()=>{if(O.removeEventListener("mousemove",ae),O.removeEventListener("click",re),K)try{d.removeSeries(K)}catch{}}}if(S==="rulerline"){let E=null,K=null;const ae=(B,Q,w,u)=>{const D=Y(B),H=Y(w),P=u-Q,I=P/Math.abs(Q)*100,m=ms(Dt,B,w,fe),_=Math.abs((H??0)-(D??0)),k=Math.max(1,Math.round(_/86400));return{priceDiff:P,pricePct:I,bars:m,days:k}},re=B=>{if(!E)return;const Q=O.getBoundingClientRect(),w=B.clientX-Q.left,u=B.clientY-Q.top,D=d.timeScale().coordinateToTime(w),H=p.coordinateToPrice(u);if(D==null||H==null)return;const P=Y(D);if(P==null||P===E.normalizedTime)return;const I=ae(E.rawTime,E.price,D,H);if(!K)K=new Ld({rawTime:E.rawTime,price:E.price},{rawTime:D,price:H},I),p.attachPrimitive(K);else{K.p2={rawTime:D,price:H},K.info=I;const m=H>=E.price;K.color=m?"#3b82f6":"#ef5350",K.fillColor=m?"rgba(59,130,246,0.1)":"rgba(239,83,80,0.1)";try{c.current?.applyOptions({})}catch{}}},f=B=>{const Q=O.getBoundingClientRect(),w=B.clientX-Q.left,u=B.clientY-Q.top,D=d.timeScale().coordinateToTime(w),H=p.coordinateToPrice(u);if(D==null||H==null)return;if(!E){E={rawTime:D,price:H,normalizedTime:Y(D)};return}if(K){try{p.detachPrimitive(K)}catch{}K=null}const P=E.normalizedTime,I=Y(D);if(P==null||I==null)return;const m=ae(E.rawTime,E.price,D,H),_=new Ld({rawTime:E.rawTime,price:E.price},{rawTime:D,price:H},m);p.attachPrimitive(_);const k={type:"rulerline",primitive:_,rawP1Time:E.rawTime,rawP2Time:D,p1:{rawTime:E.rawTime,normalizedTime:P,price:E.price},p2:{rawTime:D,normalizedTime:I,price:H},lineColor:H>=E.price?"#3b82f6":"#ef5350",showArea:!0,statsColor:"#5f8f96",statsPosition:"right",statsShowAlways:!0,statsPriceRange:!0,statsBarsRange:!0,statsDateRange:!0};Ce(W=>[...W,k]),x.current.push(k),E=null,Ee(null)};return O.addEventListener("mousemove",re),O.addEventListener("click",f),()=>{if(O.removeEventListener("mousemove",re),O.removeEventListener("click",f),K)try{p.detachPrimitive(K)}catch{}}}if(S==="arrowedline"){let E=null,K=null;const ae=f=>{if(!E)return;const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=d.timeScale().coordinateToTime(Q),D=p.coordinateToPrice(w);if(u==null||D==null)return;const H=Y(u);if(!(H==null||H===E.normalizedTime))if(!K)K=new Md({rawTime:E.rawTime,price:E.price},{rawTime:u,price:D}),p.attachPrimitive(K);else{K.p2={rawTime:u,price:D};try{c.current?.applyOptions({})}catch{}}},re=f=>{const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=d.timeScale().coordinateToTime(Q),D=p.coordinateToPrice(w);if(u==null||D==null)return;if(!E){E={rawTime:u,price:D,normalizedTime:Y(u)};return}if(K){try{p.detachPrimitive(K)}catch{}K=null}const H=E.normalizedTime,P=Y(u);if(H==null||P==null||H===P)return;const I=new Md({rawTime:E.rawTime,price:E.price},{rawTime:u,price:D});p.attachPrimitive(I);const m={type:"arrowedline",primitive:I,p1:{rawTime:E.rawTime,normalizedTime:H,price:E.price},p2:{rawTime:u,normalizedTime:P,price:D},lineColor:"#f59e0b",lineWidth:2,arrowLeft:!1,arrowRight:!0,rayLeft:!1,rayRight:!1,statsColor:"#5f8f96",statsPosition:"right",statsShowAlways:!1,statsPriceRange:!1,statsBarsRange:!1,statsDateRange:!1,statsAngle:!1,statsDistance:!1};Ce(_=>[..._,m]),x.current.push(m),E=null,Ee(null)};return O.addEventListener("mousemove",ae),O.addEventListener("click",re),()=>{if(O.removeEventListener("mousemove",ae),O.removeEventListener("click",re),K)try{p.detachPrimitive(K)}catch{}}}if(S==="rayline"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=re+140,u=d.timeScale().coordinateToTime(w);if(u==null)return;const D=Y(B),H=Y(u);if(D==null||H==null)return;const P=new Lv({rawTime:B,price:Q},{rawTime:u,price:Q});p.attachPrimitive(P);const I={type:"rayline",primitive:P,p1:{rawTime:B,normalizedTime:D,price:Q},p2:{rawTime:u,normalizedTime:H,price:Q},lineColor:"#7aa6ae",lineWidth:2,arrowLeft:!1,arrowRight:!1,rayLeft:!1,rayRight:!0,statsColor:"#5f8f96",statsPosition:"right",statsShowAlways:!1,statsPriceRange:!1,statsBarsRange:!1,statsDateRange:!1,statsAngle:!1,statsDistance:!1};Ce(m=>[...m,I]),x.current.push(I),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="extendedline"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=re+140,u=d.timeScale().coordinateToTime(w);if(u==null)return;const D=Y(B),H=Y(u);if(D==null||H==null)return;const P=new Mv({rawTime:B,price:Q},{rawTime:u,price:Q});p.attachPrimitive(P);const I={type:"extendedline",primitive:P,p1:{rawTime:B,normalizedTime:D,price:Q},p2:{rawTime:u,normalizedTime:H,price:Q},lineColor:"#7aa6ae",lineWidth:2,arrowLeft:!1,arrowRight:!1,rayLeft:!0,rayRight:!0,statsColor:"#5f8f96",statsPosition:"right",statsShowAlways:!1,statsPriceRange:!1,statsBarsRange:!1,statsDateRange:!1,statsAngle:!1,statsDistance:!1};Ce(m=>[...m,I]),x.current.push(I),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="crossline"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=Y(B);if(w==null)return;const u=new Iv({rawTime:B,price:Q});p.attachPrimitive(u);const D={type:"crossline",primitive:u,p:{rawTime:B,normalizedTime:w,price:Q},lineColor:"#06a0e3",lineWidth:2,showTime:!1,showPrice:!1};Ce(H=>[...H,D]),x.current.push(D),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="trendbyangle"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=re+140,u=d.timeScale().coordinateToTime(w);if(u==null)return;const D=Y(B),H=Y(u);if(D==null||H==null)return;const P=new Dv({rawTime:B,price:Q},{rawTime:u,price:Q});p.attachPrimitive(P);const I={type:"trendbyangle",primitive:P,p1:{rawTime:B,normalizedTime:D,price:Q},p2:{rawTime:u,normalizedTime:H,price:Q},lineColor:"#7aa6ae",lineWidth:2,arrowLeft:!1,arrowRight:!1,rayLeft:!1,rayRight:!1,statsShowAlways:!1,statsColor:"#5f8f96",statsPosition:"right",statsPriceRange:!1,statsDistance:!1};Ce(m=>[...m,I]),x.current.push(I),Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="disjointchannel"){let E=null,K=null,ae=null,re=null,f=0,B=null;const Q=(D,H,P,I)=>{if(!B)B=new Ha(D,H,P,I),p.attachPrimitive(B);else{B.p1=D,B.p2=H,B.p3=P,B.p4=I;try{c.current?.applyOptions({})}catch{}}},w=D=>{if(f===0||!E)return;const H=O.getBoundingClientRect(),P=D.clientX-H.left,I=D.clientY-H.top;if(f===1){const m=p.coordinateToPrice(I);if(m==null)return;K={rawTime:E.rawTime,normalizedTime:E.normalizedTime,price:m},Q({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price});return}if(f===2&&K){const m=d.timeScale().coordinateToTime(P),_=p.coordinateToPrice(I);if(m==null||_==null)return;const k=Y(m);if(k==null)return;const W=(E.price+K.price)/2;_>=W?(ae={rawTime:m,normalizedTime:k,price:_},re={rawTime:m,normalizedTime:k,price:2*W-_}):(re={rawTime:m,normalizedTime:k,price:_},ae={rawTime:m,normalizedTime:k,price:2*W-_}),Q({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:ae.rawTime,price:ae.price},{rawTime:re.rawTime,price:re.price})}},u=D=>{const H=O.getBoundingClientRect(),P=D.clientX-H.left,I=D.clientY-H.top,m=d.timeScale().coordinateToTime(P),_=p.coordinateToPrice(I);if(m==null||_==null)return;const k=Y(m);if(k!=null){if(f===0){E={rawTime:m,normalizedTime:k,price:_},K={rawTime:m,normalizedTime:k,price:_},f=1,Q({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price});return}if(f===1){const W=p.coordinateToPrice(I);if(W==null||Math.abs(W-E.price)<1e-7)return;K={rawTime:E.rawTime,normalizedTime:E.normalizedTime,price:W},f=2;return}if(f===2&&B){try{p.detachPrimitive(B)}catch{}const W=new Ha(B.p1,B.p2,B.p3,B.p4);p.attachPrimitive(W);const G={type:"disjointchannel",primitive:W,p1:E,p2:K,p3:{rawTime:B.p3.rawTime,normalizedTime:Y(B.p3.rawTime),price:B.p3.price},p4:{rawTime:B.p4.rawTime,normalizedTime:Y(B.p4.rawTime),price:B.p4.price},lineColor:"#129f5c",lineWidth:2,fillColor:"#6aa84f",fillOpacity:.1,showBackground:!0,showPrices:!0,pricesColor:"#129f5c",rayLeft:!1,rayRight:!1,arrowLeft:!1,arrowRight:!1};Ce(Z=>[...Z,G]),x.current.push(G),Ee(null)}}};return O.addEventListener("mousemove",w),O.addEventListener("click",u),()=>{if(O.removeEventListener("mousemove",w),O.removeEventListener("click",u),B)try{p.detachPrimitive(B)}catch{}}}if(S==="flattopbottom"){let E=null,K=null,ae=null,re=null,f=0,B=null;const Q=(D,H,P,I)=>{if(!B)B=new Hd(D,H,P,I),p.attachPrimitive(B);else{B.p1=D,B.p2=H,B.p3=P,B.p4=I;try{c.current?.applyOptions({})}catch{}}},w=D=>{if(f===0||!E)return;const H=O.getBoundingClientRect(),P=D.clientX-H.left,I=D.clientY-H.top;if(f===1){const m=p.coordinateToPrice(I);if(m==null)return;K={rawTime:E.rawTime,normalizedTime:E.normalizedTime,price:m},Q({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price});return}if(f===2&&K){const m=d.timeScale().coordinateToTime(P),_=p.coordinateToPrice(I);if(m==null||_==null)return;const k=Y(m);if(k==null)return;ae={rawTime:m,normalizedTime:k,price:_},re={rawTime:m,normalizedTime:k,price:K.price},Q({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:ae.rawTime,price:ae.price},{rawTime:re.rawTime,price:re.price})}},u=D=>{const H=O.getBoundingClientRect(),P=D.clientX-H.left,I=D.clientY-H.top,m=d.timeScale().coordinateToTime(P),_=p.coordinateToPrice(I);if(m==null||_==null)return;const k=Y(m);if(k!=null){if(f===0){E={rawTime:m,normalizedTime:k,price:_},K={rawTime:m,normalizedTime:k,price:_},f=1,Q({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price});return}if(f===1){const W=p.coordinateToPrice(I);if(W==null||Math.abs(W-E.price)<1e-7)return;K={rawTime:E.rawTime,normalizedTime:E.normalizedTime,price:W},f=2;return}if(f===2&&B){try{p.detachPrimitive(B)}catch{}const W=new Hd(B.p1,B.p2,B.p3,B.p4);p.attachPrimitive(W);const G={type:"flattopbottom",primitive:W,p1:E,p2:K,p3:{rawTime:B.p3.rawTime,normalizedTime:Y(B.p3.rawTime),price:B.p3.price},p4:{rawTime:B.p4.rawTime,normalizedTime:Y(B.p4.rawTime),price:B.p4.price},lineColor:"#3b82f6",lineWidth:2,fillColor:"#3b82f6",fillOpacity:.12,showBackground:!0,showPrices:!0,pricesColor:"#3b82f6",rayLeft:!1,rayRight:!1,arrowLeft:!1,arrowRight:!1};Ce(Z=>[...Z,G]),x.current.push(G),Ee(null)}}};return O.addEventListener("mousemove",w),O.addEventListener("click",u),()=>{if(O.removeEventListener("mousemove",w),O.removeEventListener("click",u),B)try{p.detachPrimitive(B)}catch{}}}if(S==="regressionchannel"){let E=null,K=null;const ae=(B,Q)=>{B.mid1={rawTime:Q.p1.rawTime,price:Q.p1.price},B.mid2={rawTime:Q.p2.rawTime,price:Q.p2.price},B.top1={rawTime:Q.top1.rawTime,price:Q.top1.price},B.top2={rawTime:Q.top2.rawTime,price:Q.top2.price},B.bot1={rawTime:Q.bot1.rawTime,price:Q.bot1.price},B.bot2={rawTime:Q.bot2.rawTime,price:Q.bot2.price}},re=B=>{if(!E)return;const Q=O.getBoundingClientRect(),w=B.clientX-Q.left,u=B.clientY-Q.top,D=d.timeScale().coordinateToTime(w),H=p.coordinateToPrice(u);if(D==null||H==null)return;const P=Y(D);if(P==null)return;const m=Ni(Ve,E,{rawTime:D,normalizedTime:P},1);if(m)if(!K)K=new Ia({rawTime:m.p1.rawTime,price:m.p1.price},{rawTime:m.p2.rawTime,price:m.p2.price},{rawTime:m.top1.rawTime,price:m.top1.price},{rawTime:m.top2.rawTime,price:m.top2.price},{rawTime:m.bot1.rawTime,price:m.bot1.price},{rawTime:m.bot2.rawTime,price:m.bot2.price}),p.attachPrimitive(K);else{ae(K,m);try{d.applyOptions({})}catch{}}},f=B=>{const Q=O.getBoundingClientRect(),w=B.clientX-Q.left,u=B.clientY-Q.top,D=d.timeScale().coordinateToTime(w),H=p.coordinateToPrice(u);if(D==null||H==null)return;const P=Y(D);if(P==null)return;if(!E){E={rawTime:D,normalizedTime:P,price:H};return}const m=Ni(Ve,E,{rawTime:D,normalizedTime:P},1);if(!m)return;if(K){try{p.detachPrimitive(K)}catch{}K=null}const _=new Ia({rawTime:m.p1.rawTime,price:m.p1.price},{rawTime:m.p2.rawTime,price:m.p2.price},{rawTime:m.top1.rawTime,price:m.top1.price},{rawTime:m.top2.rawTime,price:m.top2.price},{rawTime:m.bot1.rawTime,price:m.bot1.price},{rawTime:m.bot2.rawTime,price:m.bot2.price});p.attachPrimitive(_);const k={type:"regressionchannel",primitive:_,p1:m.p1,p2:m.p2,top1:m.top1,top2:m.top2,bot1:m.bot1,bot2:m.bot2,slope:m.slope,intercept:m.intercept,stdDev:m.stdDev,offset:m.offset,barCount:m.barCount,stdMultiplier:1};Ce(W=>[...W,k]),x.current.push(k),E=null,Ee(null)};return O.addEventListener("mousemove",re),O.addEventListener("click",f),()=>{if(O.removeEventListener("mousemove",re),O.removeEventListener("click",f),K)try{p.detachPrimitive(K)}catch{}}}if(S==="stddevchannel"){let E=null,K=null;const ae=(B,Q)=>{B.mid1={rawTime:Q.p1.rawTime,price:Q.p1.price},B.mid2={rawTime:Q.p2.rawTime,price:Q.p2.price},B.top1={rawTime:Q.top1.rawTime,price:Q.top1.price},B.top2={rawTime:Q.top2.rawTime,price:Q.top2.price},B.bot1={rawTime:Q.bot1.rawTime,price:Q.bot1.price},B.bot2={rawTime:Q.bot2.rawTime,price:Q.bot2.price}},re=B=>{if(!E)return;const Q=O.getBoundingClientRect(),w=B.clientX-Q.left,u=B.clientY-Q.top,D=d.timeScale().coordinateToTime(w),H=p.coordinateToPrice(u);if(D==null||H==null)return;const P=Y(D);if(P==null)return;const m=Sr(Ve,E,{rawTime:D,normalizedTime:P},1);if(m)if(!K)K=new Dd({rawTime:m.p1.rawTime,price:m.p1.price},{rawTime:m.p2.rawTime,price:m.p2.price},{rawTime:m.top1.rawTime,price:m.top1.price},{rawTime:m.top2.rawTime,price:m.top2.price},{rawTime:m.bot1.rawTime,price:m.bot1.price},{rawTime:m.bot2.rawTime,price:m.bot2.price}),p.attachPrimitive(K);else{ae(K,m);try{d.applyOptions({})}catch{}}},f=B=>{const Q=O.getBoundingClientRect(),w=B.clientX-Q.left,u=B.clientY-Q.top,D=d.timeScale().coordinateToTime(w),H=p.coordinateToPrice(u);if(D==null||H==null)return;const P=Y(D);if(P==null)return;if(!E){E={rawTime:D,normalizedTime:P,price:H};return}const m=Sr(Ve,E,{rawTime:D,normalizedTime:P},1);if(!m)return;if(K){try{p.detachPrimitive(K)}catch{}K=null}const _=new Dd({rawTime:m.p1.rawTime,price:m.p1.price},{rawTime:m.p2.rawTime,price:m.p2.price},{rawTime:m.top1.rawTime,price:m.top1.price},{rawTime:m.top2.rawTime,price:m.top2.price},{rawTime:m.bot1.rawTime,price:m.bot1.price},{rawTime:m.bot2.rawTime,price:m.bot2.price});p.attachPrimitive(_);const k={type:"stddevchannel",primitive:_,p1:m.p1,p2:m.p2,top1:m.top1,top2:m.top2,bot1:m.bot1,bot2:m.bot2,slope:m.slope,stdDev:m.stdDev,offset:m.offset,barCount:m.barCount,stdMultiplier:1};Ce(W=>[...W,k]),x.current.push(k),E=null,Ee(null)};return O.addEventListener("mousemove",re),O.addEventListener("click",f),()=>{if(O.removeEventListener("mousemove",re),O.removeEventListener("click",f),K)try{p.detachPrimitive(K)}catch{}}}if(S==="andrewspitchfork"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=Y(B);if(w==null)return;const u=re+140,D=d.timeScale().coordinateToTime(u);if(D==null)return;const H=Y(D);if(H==null)return;const P={rawTime:B,normalizedTime:w,price:Q},I={rawTime:D,normalizedTime:H,price:Q},m={rawTime:B,normalizedTime:w,price:Q},_=new _v({rawTime:P.rawTime,price:P.price},{rawTime:I.rawTime,price:I.price},{rawTime:m.rawTime,price:m.price});p.attachPrimitive(_);const k={type:"andrewspitchfork",primitive:_,p1:P,p2:I,p3:m};Ce(W=>[...W,k]),x.current.push(k),L(k),le.current=k,Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="gannfan"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=Y(B);if(w==null)return;const u={rawTime:B,normalizedTime:w,price:Q},D={rawTime:B,normalizedTime:w,price:Q},H=new Pv({rawTime:u.rawTime,price:u.price},{rawTime:D.rawTime,price:D.price});p.attachPrimitive(H);const P={type:"gannfan",primitive:H,p1:u,p2:D};Ce(I=>[...I,P]),x.current.push(P),L(P),le.current=P,Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="ganngrid"){const E=K=>{const ae=O.getBoundingClientRect(),re=K.clientX-ae.left,f=K.clientY-ae.top,B=d.timeScale().coordinateToTime(re),Q=p.coordinateToPrice(f);if(B==null||Q==null)return;const w=Y(B);if(w==null)return;const u={rawTime:B,normalizedTime:w,price:Q},D={rawTime:B,normalizedTime:w,price:Q},H=new kv({rawTime:u.rawTime,price:u.price},{rawTime:D.rawTime,price:D.price});p.attachPrimitive(H);const P={type:"ganngrid",primitive:H,p1:u,p2:D};Ce(I=>[...I,P]),x.current.push(P),L(P),le.current=P,Ee(null)};return O.addEventListener("click",E),()=>O.removeEventListener("click",E)}if(S==="trendline"||S==="gannline"){const E=S,K=E==="gannline"?"#7aa6ae":"#22c55e",ae=Q=>{Q.preventDefault(),Q.stopPropagation(),Q.stopImmediatePropagation();const w=O.getBoundingClientRect(),u=Q.clientX-w.left,D=Q.clientY-w.top;let H=d.timeScale().coordinateToTime(u);const P=p.coordinateToPrice(D);if(!(H==null||P==null)&&(H=Y(H),H!=null))if(M.current===null){M.current={time:H,price:P};const I=d.addLineSeries({color:K,lineWidth:2,priceLineVisible:!1,lastValueVisible:!1});F.current={type:E,series:I},I.setData([{time:H,value:P}])}else{const I=M.current,m={time:H,price:P},_=1,k=1e-5,W=Math.abs(m.time-I.time),G=Math.abs(m.price-I.price);if(W<_&&G<k){try{d.removeSeries(F.current.series)}catch{}M.current=null,F.current=null;return}const Z={time:I.time,rawTime:I.time,price:I.price},ie={time:m.time,rawTime:m.time,price:m.price},ue=UA([{time:Z.time,value:Z.price},{time:ie.time,value:ie.price}]);if(ue.length>0){F.current.series.setData(ue);const Be=new Hv(Z,ie,K,2);try{F.current.series.attachPrimitive(Be)}catch{}const Fe={type:E,series:F.current.series,point1:Z,point2:ie,decoration:Be};Ce(He=>[...He,Fe]),x.current.push(Fe)}Ee(null),M.current=null,F.current=null}},re=Q=>{if(M.current===null||F.current?.type!=="trendline"&&F.current?.type!=="gannline")return;Q.preventDefault(),Q.stopPropagation();const w=O.getBoundingClientRect(),u=Q.clientX-w.left,D=Q.clientY-w.top;let H=d.timeScale().coordinateToTime(u);const P=p.coordinateToPrice(D);if(H==null||P==null||(H=Y(H),H==null))return;const I=M.current,m=UA([{time:I.time,value:I.price},{time:H,value:P}]);m.length>0&&F.current.series.setData(m)},f=Q=>{Q.stopPropagation()},B={capture:!0,passive:!1};return O.addEventListener("click",ae,B),O.addEventListener("mousemove",re,B),O.addEventListener("mousemove",f,B),()=>{if(M.current=null,(F.current?.type==="trendline"||F.current?.type==="gannline")&&F.current?.series){try{d.removeSeries(F.current.series)}catch{}F.current=null}O.removeEventListener("click",ae,B),O.removeEventListener("mousemove",re,B),O.removeEventListener("mousemove",f,B)}}if(S==="parallellines"){let E=null,K=null,ae=null,re=0,f=null;const B=(P,I,m,_)=>{P.p1={rawTime:I.rawTime,price:I.price},P.p2={rawTime:m.rawTime,price:m.price},P.b1={rawTime:_.b1.rawTime,price:_.b1.price},P.b2={rawTime:_.b2.rawTime,price:_.b2.price},P.p3={rawTime:_.bottomMid.rawTime,price:_.bottomMid.price}},Q=(P,I,m)=>{const _=Od(P,I,m);if(!_)return null;if(!f)f=new Id({rawTime:P.rawTime,price:P.price},{rawTime:I.rawTime,price:I.price},{rawTime:_.b1.rawTime,price:_.b1.price},{rawTime:_.b2.rawTime,price:_.b2.price},{rawTime:_.bottomMid.rawTime,price:_.bottomMid.price}),p.attachPrimitive(f);else{B(f,P,I,_);try{d.applyOptions({})}catch{}}return _},w=P=>{P.preventDefault(),P.stopPropagation(),P.stopImmediatePropagation();const I=O.getBoundingClientRect(),m=P.clientX-I.left,_=P.clientY-I.top,k=d.timeScale().coordinateToTime(m),W=p.coordinateToPrice(_);if(k==null||W==null)return;const G=Y(k);if(G!=null){if(re===0){E={rawTime:k,normalizedTime:G,price:W},re=1;return}if(re===1){if(K={rawTime:k,normalizedTime:G,price:W},Math.abs(K.normalizedTime-E.normalizedTime)<1)return;const Z=Y((E.normalizedTime+K.normalizedTime)/2);if(Z==null)return;const ie=(E.price+K.price)/2;ae={rawTime:Z,normalizedTime:Z,price:ie},Q(E,K,ae),re=2;return}if(re===2&&E&&K){ae={rawTime:k,normalizedTime:G,price:W};const Z=Q(E,K,ae);if(!Z||!f)return;try{p.detachPrimitive(f)}catch{}const ie=new Id({rawTime:E.rawTime,price:E.price},{rawTime:K.rawTime,price:K.price},{rawTime:Z.b1.rawTime,price:Z.b1.price},{rawTime:Z.b2.rawTime,price:Z.b2.price},{rawTime:Z.bottomMid.rawTime,price:Z.bottomMid.price});p.attachPrimitive(ie);const ue={type:"equidistantchannel",primitive:ie,p1:E,p2:K,p3:Z.bottomMid,b1:Z.b1,b2:Z.b2,bottomMid:Z.bottomMid};Ce(Be=>[...Be,ue]),x.current.push(ue),Ee(null),re=0,E=null,K=null,ae=null,f=null}}},u=P=>{if(re===0||!E)return;const I=O.getBoundingClientRect(),m=P.clientX-I.left,_=P.clientY-I.top,k=d.timeScale().coordinateToTime(m),W=p.coordinateToPrice(_);if(k==null||W==null)return;const G=Y(k);if(G!=null){if(re===1){const Z={rawTime:k,normalizedTime:G,price:W},ie=Y((E.normalizedTime+Z.normalizedTime)/2);if(ie==null)return;const ue=(E.price+Z.price)/2;Q(E,Z,{rawTime:ie,normalizedTime:ie,price:ue});return}re===2&&K&&Q(E,K,{rawTime:k,normalizedTime:G,price:W})}},D=P=>{P.stopPropagation()},H={capture:!0,passive:!1};return O.addEventListener("click",w,H),O.addEventListener("mousemove",u,H),O.addEventListener("mousemove",D,H),()=>{if(re=0,E=null,K=null,ae=null,N.current=[],f)try{p.detachPrimitive(f)}catch{}f=null,O.removeEventListener("click",w,H),O.removeEventListener("mousemove",u,H),O.removeEventListener("mousemove",D,H)}}if(S==="fibonacci"){let E=null,K=null;const ae=f=>{if(!E)return;const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=d.timeScale().coordinateToTime(Q),D=p.coordinateToPrice(w);if(!(u==null||D==null))if(!K)K=new _d({rawTime:E.rawTime,price:E.price},{rawTime:u,price:D}),p.attachPrimitive(K);else{K.p2={rawTime:u,price:D};try{d.applyOptions({})}catch{}}},re=f=>{const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=d.timeScale().coordinateToTime(Q),D=p.coordinateToPrice(w);if(u==null||D==null)return;if(!E){E={rawTime:u,price:D,normalizedTime:Y(u)};return}if(K){try{p.detachPrimitive(K)}catch{}K=null}const H=E.normalizedTime,P=Y(u);if(H==null||P==null)return;if(Math.abs(D-E.price)<1e-5){E=null;return}const I=new _d({rawTime:E.rawTime,price:E.price},{rawTime:u,price:D});p.attachPrimitive(I);const m={type:"fibonacci",primitive:I,p1:{rawTime:E.rawTime,normalizedTime:H,price:E.price},p2:{rawTime:u,normalizedTime:P,price:D}};Ce(_=>[..._,m]),x.current.push(m),E=null,Ee(null)};return O.addEventListener("mousemove",ae),O.addEventListener("click",re),()=>{if(O.removeEventListener("mousemove",ae),O.removeEventListener("click",re),K)try{p.detachPrimitive(K)}catch{}}}if(M.current=null,(F.current?.type==="trendline"||F.current?.type==="gannline")&&F.current?.series){try{d.removeSeries(F.current.series)}catch{}F.current=null}const J=E=>{if(E.preventDefault(),E.stopPropagation(),E.stopImmediatePropagation(),S==="trendline"||S==="gannline"||S==="parallellines"||S==="fibonacci"||S!=="rectangle"&&S!=="circle"&&S!=="triangle"&&S!=="ellipse")return;const K=O.getBoundingClientRect(),ae=E.clientX-K.left,re=E.clientY-K.top;let f=d.timeScale().coordinateToTime(ae);const B=p.coordinateToPrice(re);if(f==null||B==null)return;const Q=f;if(f=Y(f),f!=null){if(b.current=!0,v.current={time:f,normalizedTime:f,rawTime:Q,price:B},U.current=null,S==="rectangle"){const w=new Fv({rawTime:Q,price:B},{rawTime:Q,price:B},{strokeColor:"#7aa6ae",fillColor:"rgba(148, 163, 184, 0.18)",lineWidth:1});p.attachPrimitive(w),F.current={type:"rectangle",primitive:w}}if(S==="circle"){const w=new Uv({rawTime:Q,price:B},{rawTime:Q,price:B},{strokeColor:"#7aa6ae",lineWidth:1});p.attachPrimitive(w),F.current={type:"circle",primitive:w}}if(S==="triangle"){const w=new Sv({rawTime:Q,price:B},{rawTime:Q,price:B},{rawTime:Q,price:B},{strokeColor:"#7aa6ae",fillColor:"rgba(148, 163, 184, 0.18)",lineWidth:1});p.attachPrimitive(w),F.current={type:"triangle",primitive:w}}if(S==="ellipse"){const w=new Ev({rawTime:Q,price:B},{rawTime:Q,price:B},{strokeColor:"#7aa6ae",lineWidth:1,minorRatio:.45,previewAsLine:!0});p.attachPrimitive(w),F.current={type:"ellipse",primitive:w}}if(S==="parallellines"){const w=d.addLineSeries({color:"#8b5cf6",lineWidth:2,priceLineVisible:!1,lastValueVisible:!1});F.current={type:"parallellines",series:w,firstLine:null,secondLine:null}}}},T=E=>{if(!b.current||!v.current||!F.current)return;E.preventDefault(),E.stopPropagation(),E.stopImmediatePropagation();const K=O.getBoundingClientRect(),ae=E.clientX-K.left,re=E.clientY-K.top;let f=d.timeScale().coordinateToTime(ae);const B=p.coordinateToPrice(re);if(f==null||B==null)return;const Q=f;if(f=Y(f),f==null)return;U.current={time:f,normalizedTime:f,rawTime:Q,price:B};const w=v.current;if(F.current.type==="rectangle"){const u=F.current.primitive;u.p1={rawTime:w.rawTime,price:w.price},u.p2={rawTime:Q,price:B};try{c.current?.applyOptions({})}catch{}}if(F.current.type==="circle"){const u=F.current.primitive;u.p1={rawTime:w.rawTime,price:w.price},u.p2={rawTime:Q,price:B};try{c.current?.applyOptions({})}catch{}}if(F.current.type==="triangle"){const u=F.current.primitive,D=y(w,{time:f,rawTime:Q,price:B});if(!D)return;u.p1={rawTime:D.p1.rawTime,price:D.p1.price},u.p2={rawTime:D.p2.rawTime,price:D.p2.price},u.p3={rawTime:D.p3.rawTime,price:D.p3.price};try{c.current?.applyOptions({})}catch{}}if(F.current.type==="ellipse"){const u=F.current.primitive;u.p1={rawTime:w.rawTime,price:w.price},u.p2={rawTime:Q,price:B};try{c.current?.applyOptions({})}catch{}}if(F.current.type==="parallellines")if(F.current.firstLine){const u=F.current.firstLine;u.endTime-u.startTime;const D=u.endPrice-u.startPrice,H=B,P=H+D;if(F.current.secondLine)F.current.secondLine.setData([{time:w.time,value:H},{time:f,value:P}]);else{const I=d.addLineSeries({color:"#8b5cf6",lineWidth:2,priceLineVisible:!1,lastValueVisible:!1});I.setData([{time:w.time,value:H},{time:f,value:P}]),F.current.secondLine=I}}else F.current.series.setData([{time:w.time,value:w.price},{time:f,value:B}])},oe=E=>{if(E&&(E.preventDefault(),E.stopPropagation()),!b.current||!F.current||!v.current)return;const K=v.current,ae=U.current||K;if(F.current.type==="parallellines")if(F.current.firstLine){const re={type:"parallellines",firstLine:F.current.series,secondLine:F.current.secondLine,firstLineData:F.current.firstLine};Ce(f=>[...f,re]),x.current.push(re),Ee(null),F.current=null,b.current=!1,v.current=null,U.current=null;return}else{F.current.firstLine={startTime:K.time,startPrice:K.price,endTime:ae.time,endPrice:ae.price},b.current=!1,v.current=null,U.current=null;return}if(F.current.type==="rectangle"){const re=v.current,f=U.current||re,B=Math.max(re.price,f.price),Q=Math.min(re.price,f.price),w=Y(Math.min(re.time,f.time)),u=Y(Math.max(re.time,f.time));if(w!=null&&u!=null&&Math.abs(u-w)>=1&&Math.abs(B-Q)>=1e-5){const D=F.current.primitive,H=re.time<=f.time?re.rawTime:f.rawTime,P=re.time<=f.time?f.rawTime:re.rawTime,I={rawTime:H,normalizedTime:w,price:B},m={rawTime:P,normalizedTime:u,price:Q};D.p1={rawTime:I.rawTime,price:I.price},D.p2={rawTime:m.rawTime,price:m.price};const _={type:"rectangle",primitive:D,p1:I,p2:m};Ce(k=>[...k,_]),x.current.push(_),Ee(null)}else try{p.detachPrimitive(F.current.primitive)}catch{}}if(F.current.type==="circle"){const re=F.current.primitive,f={rawTime:K.rawTime,normalizedTime:K.time,price:K.price},B={rawTime:ae.rawTime,normalizedTime:ae.time,price:ae.price},Q=d.timeScale().timeToCoordinate(f.rawTime),w=p.priceToCoordinate(f.price),u=d.timeScale().timeToCoordinate(B.rawTime),D=p.priceToCoordinate(B.price);if((Q!=null&&w!=null&&u!=null&&D!=null?Math.hypot(u-Q,D-w):0)>=3){re.p1={rawTime:f.rawTime,price:f.price},re.p2={rawTime:B.rawTime,price:B.price};const P={type:"circle",primitive:re,p1:f,p2:B};Ce(I=>[...I,P]),x.current.push(P),Ee(null)}else try{p.detachPrimitive(F.current.primitive)}catch{}}if(F.current.type==="triangle"){const re=F.current.primitive,f=y(K,ae);if(f){const B=Math.abs(f.p3.normalizedTime-f.p2.normalizedTime),Q=Math.abs(f.p1.price-f.p2.price);if(B>=1&&Q>=1e-5){re.p1={rawTime:f.p1.rawTime,price:f.p1.price},re.p2={rawTime:f.p2.rawTime,price:f.p2.price},re.p3={rawTime:f.p3.rawTime,price:f.p3.price};const w={type:"triangle",primitive:re,p1:f.p1,p2:f.p2,p3:f.p3};Ce(u=>[...u,w]),x.current.push(w),Ee(null)}else try{p.detachPrimitive(F.current.primitive)}catch{}}else try{p.detachPrimitive(F.current.primitive)}catch{}}if(F.current.type==="ellipse"){const re=F.current.primitive,f={rawTime:K.rawTime,normalizedTime:K.time,price:K.price},B={rawTime:ae.rawTime,normalizedTime:ae.time,price:ae.price},Q=d.timeScale().timeToCoordinate(f.rawTime),w=p.priceToCoordinate(f.price),u=d.timeScale().timeToCoordinate(B.rawTime),D=p.priceToCoordinate(B.price);if((Q!=null&&w!=null&&u!=null&&D!=null?Math.hypot(u-Q,D-w):0)>=4){re.p1={rawTime:f.rawTime,price:f.price},re.p2={rawTime:B.rawTime,price:B.price},re.previewAsLine=!1,re.minorRatio=.45;const P={type:"ellipse",primitive:re,p1:f,p2:B,minorRatio:.45};Ce(I=>[...I,P]),x.current.push(P),Ee(null)}else try{p.detachPrimitive(F.current.primitive)}catch{}}b.current=!1,v.current=null,U.current=null,F.current=null};if(S==="rectangle"||S==="circle"||S==="triangle"||S==="ellipse"){const E={capture:!0,passive:!1},K=ae=>{b.current||ae.stopPropagation()};return O.addEventListener("mousedown",J,E),O.addEventListener("mousemove",T,E),O.addEventListener("mousemove",K,E),O.addEventListener("mouseup",oe,E),()=>{if((F.current?.type==="rectangle"||F.current?.type==="circle"||F.current?.type==="triangle"||F.current?.type==="ellipse")&&F.current?.primitive)try{p.detachPrimitive(F.current.primitive)}catch{}F.current=null,b.current=!1,v.current=null,U.current=null,O.removeEventListener("mousedown",J,E),O.removeEventListener("mousemove",T,E),O.removeEventListener("mousemove",K,E),O.removeEventListener("mouseup",oe,E)}}},[be,Ve,Ce,Ee]),Ae.useEffect(()=>{const d=c.current,p=h.current,O=o.current,Te=be===null||be===1;if(!Te||!d||!p||!O){Te||(L(null),V([]),te(null),X([]));return}const S=10,y=8;function J(f){if(!f)return[];if(f.type==="trendline"&&f.point1&&f.point2){const B=d.timeScale().timeToCoordinate(f.point1.time),Q=p.priceToCoordinate(f.point1.price),w=d.timeScale().timeToCoordinate(f.point2.time),u=p.priceToCoordinate(f.point2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="gannline"&&f.point1&&f.point2){const B=d.timeScale().timeToCoordinate(f.point1.time),Q=p.priceToCoordinate(f.point1.price),w=d.timeScale().timeToCoordinate(f.point2.time),u=p.priceToCoordinate(f.point2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:(B+w)/2,y:(Q+u)/2},{x:w,y:u}]}if(f.type==="rectangle"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);if(B==null||Q==null||w==null||u==null)return[];const D=Math.min(B,w),H=Math.max(B,w),P=Math.min(Q,u),I=Math.max(Q,u),m=(D+H)/2,_=(P+I)/2;return[{x:D,y:P},{x:m,y:P},{x:H,y:P},{x:D,y:_},{x:H,y:_},{x:D,y:I},{x:m,y:I},{x:H,y:I}]}if(f.type==="circle"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="triangle"&&f.p1&&f.p2&&f.p3){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price),D=d.timeScale().timeToCoordinate(f.p3.rawTime),H=p.priceToCoordinate(f.p3.price);return B==null||Q==null||w==null||u==null||D==null||H==null?[]:[{x:B,y:Q},{x:w,y:u},{x:D,y:H}]}if(f.type==="ellipse"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);if(B==null||Q==null||w==null||u==null)return[];const D=(B+w)/2,H=(Q+u)/2,P=w-B,I=u-Q,m=Math.hypot(P,I);if(m<.001)return[];const _=P/m,k=I/m,W=-k,G=_,Z=m/2,ie=Z*Math.max(.05,f.minorRatio??.45);return[{x:D-_*Z,y:H-k*Z},{x:D+W*ie,y:H+G*ie},{x:D+_*Z,y:H+k*Z},{x:D-W*ie,y:H-G*ie}]}if(f.type==="gannfan"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="ganngrid"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="arrowedline"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="rayline"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="extendedline"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="crossline"&&f.p){const B=d.timeScale().timeToCoordinate(f.p.rawTime),Q=p.priceToCoordinate(f.p.price);return B==null||Q==null?[]:[{x:B,y:Q}]}if(f.type==="pricelevel"&&f.price!=null){const B=p.priceToCoordinate(f.price);return B==null?[]:[{x:(c.current?c.current.paneSize().width:400)/2,y:B}]}if(f.type==="text"&&f.rawTime!=null&&f.price!=null){const B=d.timeScale().timeToCoordinate(f.rawTime),Q=p.priceToCoordinate(f.price);return B==null||Q==null?[]:[{x:B,y:Q}]}if(f.type==="trendbyangle"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="andrewspitchfork"&&f.p1&&f.p2&&f.p3){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price),D=d.timeScale().timeToCoordinate(f.p3.rawTime),H=p.priceToCoordinate(f.p3.price);return B==null||Q==null||w==null||u==null||D==null||H==null?[]:[{x:B,y:Q},{x:w,y:u},{x:D,y:H}]}if(f.type==="equidistantchannel"&&f.p1&&f.p2&&f.b1&&f.b2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price),D=d.timeScale().timeToCoordinate(f.b1.rawTime),H=p.priceToCoordinate(f.b1.price),P=d.timeScale().timeToCoordinate(f.b2.rawTime),I=p.priceToCoordinate(f.b2.price);return B==null||Q==null||w==null||u==null||D==null||H==null||P==null||I==null?[]:[{x:B,y:Q},{x:w,y:u},{x:(D+P)/2,y:(H+I)/2}]}if(f.type==="regressionchannel"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="stddevchannel"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="disjointchannel"&&f.p1&&f.p2&&f.p3&&f.p4){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price),D=d.timeScale().timeToCoordinate(f.p3.rawTime),H=p.priceToCoordinate(f.p3.price),P=d.timeScale().timeToCoordinate(f.p4.rawTime),I=p.priceToCoordinate(f.p4.price);return B==null||Q==null||w==null||u==null||D==null||H==null||P==null||I==null?[]:[{x:B,y:Q},{x:w,y:u},{x:D,y:H},{x:P,y:I}]}if(f.type==="flattopbottom"&&f.p1&&f.p2&&f.p3&&f.p4){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price),D=d.timeScale().timeToCoordinate(f.p3.rawTime),H=p.priceToCoordinate(f.p3.price),P=d.timeScale().timeToCoordinate(f.p4.rawTime),I=p.priceToCoordinate(f.p4.price);return B==null||Q==null||w==null||u==null||D==null||H==null||P==null||I==null?[]:[{x:B,y:Q},{x:w,y:u},{x:D,y:H},{x:P,y:I}]}if(f.type==="infoline"&&f.p1&&f.p2){const B=f.p1.rawTime??f.p1.time,Q=f.p2.rawTime??f.p2.time,w=d.timeScale().timeToCoordinate(B),u=p.priceToCoordinate(f.p1.price),D=d.timeScale().timeToCoordinate(Q),H=p.priceToCoordinate(f.p2.price);return w==null||u==null||D==null||H==null?[]:[{x:w,y:u},{x:D,y:H}]}if(f.type==="rulerline"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:(B+w)/2,y:(Q+u)/2},{x:w,y:u}]}if(f.type==="fibonacci"&&f.p1&&f.p2){const B=d.timeScale().timeToCoordinate(f.p1.rawTime),Q=p.priceToCoordinate(f.p1.price),w=d.timeScale().timeToCoordinate(f.p2.rawTime),u=p.priceToCoordinate(f.p2.price);return B==null||Q==null||w==null||u==null?[]:[{x:B,y:Q},{x:w,y:u}]}if(f.type==="horizontalray"&&f.primitive){const B=f.primitive,Q=d.timeScale().timeToCoordinate(B.originTime),w=p.priceToCoordinate(B.price);return Q==null||w==null?[]:[{x:Q,y:w}]}if(f.type==="verticalline"&&f.primitive){const B=f.primitive,Q=d.timeScale().timeToCoordinate(B.time);if(Q==null)return[];const w=B.midYCss??200;return[{x:Q,y:w}]}return[]}function T(f,B){for(let Q=ze.length-1;Q>=0;Q--){const w=ze[Q];if(w.type==="trendline"&&w.point1&&w.point2){const u=d.timeScale().timeToCoordinate(w.point1.time),D=p.priceToCoordinate(w.point1.price),H=d.timeScale().timeToCoordinate(w.point2.time),P=p.priceToCoordinate(w.point2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-u,B-D),m=Math.hypot(f-H,B-P);if(I<S)return{object:w,mode:"handle1"};if(m<S)return{object:w,mode:"handle2"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="gannline"&&w.point1&&w.point2){const u=d.timeScale().timeToCoordinate(w.point1.time),D=p.priceToCoordinate(w.point1.price),H=d.timeScale().timeToCoordinate(w.point2.time),P=p.priceToCoordinate(w.point2.price);if(u==null||D==null||H==null||P==null)continue;const I=(u+H)/2,m=(D+P)/2,_=Math.hypot(f-u,B-D),k=Math.hypot(f-H,B-P),W=Math.hypot(f-I,B-m);if(_<S)return{object:w,mode:"handle1"};if(k<S)return{object:w,mode:"handle2"};if(W<S)return{object:w,mode:"line"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="rectangle"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.min(u,H),m=Math.max(u,H),_=Math.min(D,P),k=Math.max(D,P),W=(I+m)/2,G=(_+k)/2,Z=[{x:I,y:_,mode:"handle1"},{x:W,y:_,mode:"handle2"},{x:m,y:_,mode:"handle3"},{x:I,y:G,mode:"handle4"},{x:m,y:G,mode:"handle5"},{x:I,y:k,mode:"handle6"},{x:W,y:k,mode:"handle7"},{x:m,y:k,mode:"handle8"}];for(const He of Z)if(Math.hypot(f-He.x,B-He.y)<S)return{object:w,mode:He.mode};const ie=nt(f,B,I,_,m,_),ue=nt(f,B,I,k,m,k),Be=nt(f,B,I,_,I,k),Fe=nt(f,B,m,_,m,k);if(ie<y||ue<y||Be<y||Fe<y||YA(f,B,[{x:I,y:_},{x:m,y:_},{x:m,y:k},{x:I,y:k}]))return{object:w,mode:"line"}}if(w.type==="circle"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(H-u,P-D);if(I<2)continue;const m=Math.hypot(f-u,B-D),_=Math.hypot(f-H,B-P);if(m<S)return{object:w,mode:"handle1"};if(_<S)return{object:w,mode:"handle2"};if(Math.abs(m-I)<y||m<I)return{object:w,mode:"line"}}if(w.type==="triangle"&&w.p1&&w.p2&&w.p3){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.p3.rawTime),m=p.priceToCoordinate(w.p3.price);if(u==null||D==null||H==null||P==null||I==null||m==null)continue;const _=Math.hypot(f-u,B-D),k=Math.hypot(f-H,B-P),W=Math.hypot(f-I,B-m);if(_<S)return{object:w,mode:"handle1"};if(k<S)return{object:w,mode:"handle2"};if(W<S)return{object:w,mode:"handle3"};const G=nt(f,B,u,D,H,P),Z=nt(f,B,H,P,I,m),ie=nt(f,B,I,m,u,D);if(G<y||Z<y||ie<y||YA(f,B,[{x:u,y:D},{x:H,y:P},{x:I,y:m}]))return{object:w,mode:"line"}}if(w.type==="ellipse"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=(u+H)/2,m=(D+P)/2,_=H-u,k=P-D,W=Math.hypot(_,k);if(W<2)continue;const G=_/W,Z=k/W,ie=-Z,ue=G,Be=W/2,Fe=Be*Math.max(.05,w.minorRatio??.45);if(Be<2||Fe<2)continue;const He=I-G*Be,$e=m-Z*Be,qe=I+ie*Fe,Re=m+ue*Fe,lt=I+G*Be,st=m+Z*Be,ct=I-ie*Fe,Tt=m-ue*Fe,Kt=Math.hypot(f-He,B-$e),Gt=Math.hypot(f-qe,B-Re),eA=Math.hypot(f-lt,B-st),LA=Math.hypot(f-ct,B-Tt);if(Kt<S)return{object:w,mode:"handle1"};if(Gt<S)return{object:w,mode:"handle2"};if(eA<S)return{object:w,mode:"handle3"};if(LA<S)return{object:w,mode:"handle4"};const mi=(f-I)*G+(B-m)*Z,Cs=(f-I)*ie+(B-m)*ue,jd=mi/Be,ep=Cs/Fe,tp=jd*jd+ep*ep;if(Math.abs(tp-1)<.2||tp<1)return{object:w,mode:"line"}}if(w.type==="gannfan"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-H,B-P),m=Math.hypot(f-u,B-D);if(I<S)return{object:w,mode:"handle2"};if(m<S)return{object:w,mode:"handle1"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="ganngrid"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-H,B-P),m=Math.hypot(f-u,B-D);if(I<S)return{object:w,mode:"handle2"};if(m<S)return{object:w,mode:"handle1"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="arrowedline"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-u,B-D),m=Math.hypot(f-H,B-P);if(I<S)return{object:w,mode:"handle1"};if(m<S)return{object:w,mode:"handle2"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="rayline"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-u,B-D),m=Math.hypot(f-H,B-P);if(I<S)return{object:w,mode:"handle1"};if(m<S)return{object:w,mode:"handle2"};if(Wv(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="extendedline"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-u,B-D),m=Math.hypot(f-H,B-P);if(I<S)return{object:w,mode:"handle1"};if(m<S)return{object:w,mode:"handle2"};if(Rv(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="crossline"&&w.p){const u=d.timeScale().timeToCoordinate(w.p.rawTime),D=p.priceToCoordinate(w.p.price);if(u==null||D==null)continue;if(Math.hypot(f-u,B-D)<S)return{object:w,mode:"handle1"};const P=Math.abs(B-D),I=Math.abs(f-u);if(P<y||I<y)return{object:w,mode:"line"}}if(w.type==="text"&&w.rawTime!=null&&w.price!=null){const u=d.timeScale().timeToCoordinate(w.rawTime),D=p.priceToCoordinate(w.price);if(u==null||D==null)continue;const H=kd(w,u,D);if(f>=H.left&&f<=H.right&&B>=H.top&&B<=H.bottom)return{object:w,mode:"line"}}if(w.type==="trendbyangle"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-u,B-D),m=Math.hypot(f-H,B-P);if(I<S)return{object:w,mode:"handle1"};if(m<S)return{object:w,mode:"handle2"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="equidistantchannel"&&w.p1&&w.p2&&w.b1&&w.b2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.b1.rawTime),m=p.priceToCoordinate(w.b1.price),_=d.timeScale().timeToCoordinate(w.b2.rawTime),k=p.priceToCoordinate(w.b2.price),W=I!=null&&_!=null?(I+_)/2:null,G=m!=null&&k!=null?(m+k)/2:null;if(u==null||D==null||H==null||P==null||W==null||G==null||I==null||m==null||_==null||k==null)continue;const Z=Math.hypot(f-u,B-D),ie=Math.hypot(f-H,B-P),ue=Math.hypot(f-W,B-G),Be=Math.hypot(u-W,D-G)<S*1.5;if(Be&&Math.min(Z,ue)<S*1.5)return{object:w,mode:"handle3"};if(ue<S)return{object:w,mode:"handle3"};if(ie<S)return{object:w,mode:"handle2"};if(Be)continue;if(Z<S)return{object:w,mode:"handle1"};const Fe=nt(f,B,u,D,H,P),He=nt(f,B,I,m,_,k);if(Fe<y||He<y||YA(f,B,[{x:u,y:D},{x:H,y:P},{x:_,y:k},{x:I,y:m}]))return{object:w,mode:"line"}}if(w.type==="regressionchannel"&&w.p1&&w.p2&&w.top1&&w.top2&&w.bot1&&w.bot2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.top1.rawTime),m=p.priceToCoordinate(w.top1.price),_=d.timeScale().timeToCoordinate(w.top2.rawTime),k=p.priceToCoordinate(w.top2.price),W=d.timeScale().timeToCoordinate(w.bot1.rawTime),G=p.priceToCoordinate(w.bot1.price),Z=d.timeScale().timeToCoordinate(w.bot2.rawTime),ie=p.priceToCoordinate(w.bot2.price);if(u==null||D==null||H==null||P==null||I==null||m==null||_==null||k==null||W==null||G==null||Z==null||ie==null)continue;const ue=Math.hypot(f-u,B-D),Be=Math.hypot(f-H,B-P);if(ue<S)return{object:w,mode:"handle1"};if(Be<S)return{object:w,mode:"handle2"};const Fe=nt(f,B,u,D,H,P),He=nt(f,B,I,m,_,k),$e=nt(f,B,W,G,Z,ie);if(Fe<y||He<y||$e<y||YA(f,B,[{x:I,y:m},{x:_,y:k},{x:Z,y:ie},{x:W,y:G}]))return{object:w,mode:"line"}}if(w.type==="stddevchannel"&&w.p1&&w.p2&&w.top1&&w.top2&&w.bot1&&w.bot2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.top1.rawTime),m=p.priceToCoordinate(w.top1.price),_=d.timeScale().timeToCoordinate(w.top2.rawTime),k=p.priceToCoordinate(w.top2.price),W=d.timeScale().timeToCoordinate(w.bot1.rawTime),G=p.priceToCoordinate(w.bot1.price),Z=d.timeScale().timeToCoordinate(w.bot2.rawTime),ie=p.priceToCoordinate(w.bot2.price);if(u==null||D==null||H==null||P==null||I==null||m==null||_==null||k==null||W==null||G==null||Z==null||ie==null)continue;const ue=Math.hypot(f-u,B-D),Be=Math.hypot(f-H,B-P);if(ue<S)return{object:w,mode:"handle1"};if(Be<S)return{object:w,mode:"handle2"};const Fe=nt(f,B,u,D,H,P),He=nt(f,B,I,m,_,k),$e=nt(f,B,W,G,Z,ie);if(Fe<y||He<y||$e<y||YA(f,B,[{x:I,y:m},{x:_,y:k},{x:Z,y:ie},{x:W,y:G}]))return{object:w,mode:"line"}}if(w.type==="andrewspitchfork"&&w.p1&&w.p2&&w.p3){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.p3.rawTime),m=p.priceToCoordinate(w.p3.price);if(u==null||D==null||H==null||P==null||I==null||m==null)continue;const _=Math.hypot(f-u,B-D),k=Math.hypot(f-H,B-P),W=Math.hypot(f-I,B-m);if(_<S)return{object:w,mode:"handle1"};if(k<S)return{object:w,mode:"handle2"};if(W<S)return{object:w,mode:"handle3"};const G=(H+I)/2,Z=(P+m)/2;let ie=G-u,ue=Z-D;Math.abs(ie)<1e-4&&(ie=1e-4);const Be=ue/ie,Fe=O.clientWidth,He=P+Be*(Fe-H),$e=m+Be*(Fe-I),qe=nt(f,B,H,P,Fe,He),Re=nt(f,B,I,m,Fe,$e);if(qe<y||Re<y||YA(f,B,[{x:H,y:P},{x:Fe,y:He},{x:Fe,y:$e},{x:I,y:m}]))return{object:w,mode:"line"}}if(w.type==="disjointchannel"&&w.p1&&w.p2&&w.p3&&w.p4){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.p3.rawTime),m=p.priceToCoordinate(w.p3.price),_=d.timeScale().timeToCoordinate(w.p4.rawTime),k=p.priceToCoordinate(w.p4.price);if(u==null||D==null||H==null||P==null||I==null||m==null||_==null||k==null)continue;const W=Math.hypot(f-u,B-D),G=Math.hypot(f-H,B-P),Z=Math.hypot(f-I,B-m),ie=Math.hypot(f-_,B-k);if(W<S)return{object:w,mode:"handle1"};if(G<S)return{object:w,mode:"handle2"};if(Z<S)return{object:w,mode:"handle3"};if(ie<S)return{object:w,mode:"handle4"};const ue=nt(f,B,u,D,I,m),Be=nt(f,B,H,P,_,k),Fe=nt(f,B,u,D,H,P),He=nt(f,B,I,m,_,k);if(ue<y||Be<y||Fe<y||He<y||YA(f,B,[{x:u,y:D},{x:I,y:m},{x:_,y:k},{x:H,y:P}]))return{object:w,mode:"line"}}if(w.type==="flattopbottom"&&w.p1&&w.p2&&w.p3&&w.p4){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price),I=d.timeScale().timeToCoordinate(w.p3.rawTime),m=p.priceToCoordinate(w.p3.price),_=d.timeScale().timeToCoordinate(w.p4.rawTime),k=p.priceToCoordinate(w.p4.price);if(u==null||D==null||H==null||P==null||I==null||m==null||_==null||k==null)continue;const W=Math.hypot(f-u,B-D),G=Math.hypot(f-H,B-P),Z=Math.hypot(f-I,B-m),ie=Math.hypot(f-_,B-k);if(W<S)return{object:w,mode:"handle1"};if(G<S)return{object:w,mode:"handle2"};if(Z<S)return{object:w,mode:"handle3"};if(ie<S)return{object:w,mode:"handle4"};const ue=nt(f,B,u,D,I,m),Be=nt(f,B,H,P,_,k),Fe=nt(f,B,u,D,H,P),He=nt(f,B,I,m,_,k);if(ue<y||Be<y||Fe<y||He<y||YA(f,B,[{x:u,y:D},{x:I,y:m},{x:_,y:k},{x:H,y:P}]))return{object:w,mode:"line"}}if(w.type==="rulerline"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=(u+H)/2,m=(D+P)/2,_=Math.hypot(f-u,B-D),k=Math.hypot(f-H,B-P),W=Math.hypot(f-I,B-m);if(_<S)return{object:w,mode:"handle1"};if(k<S)return{object:w,mode:"handle2"};if(W<S)return{object:w,mode:"line"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="infoline"&&w.p1&&w.p2){const u=w.p1.rawTime??w.p1.time,D=w.p2.rawTime??w.p2.time,H=d.timeScale().timeToCoordinate(u),P=p.priceToCoordinate(w.p1.price),I=d.timeScale().timeToCoordinate(D),m=p.priceToCoordinate(w.p2.price);if(H==null||P==null||I==null||m==null)continue;const _=Math.hypot(f-H,B-P),k=Math.hypot(f-I,B-m);if(_<S)return{object:w,mode:"handle1"};if(k<S)return{object:w,mode:"handle2"};if(nt(f,B,H,P,I,m)<y)return{object:w,mode:"line"}}if(w.type==="fibonacci"&&w.p1&&w.p2){const u=d.timeScale().timeToCoordinate(w.p1.rawTime),D=p.priceToCoordinate(w.p1.price),H=d.timeScale().timeToCoordinate(w.p2.rawTime),P=p.priceToCoordinate(w.p2.price);if(u==null||D==null||H==null||P==null)continue;const I=Math.hypot(f-u,B-D),m=Math.hypot(f-H,B-P);if(I<S)return{object:w,mode:"handle1"};if(m<S)return{object:w,mode:"handle2"};if(nt(f,B,u,D,H,P)<y)return{object:w,mode:"line"}}if(w.type==="horizontalray"&&w.primitive){const u=w.primitive,D=d.timeScale().timeToCoordinate(u.originTime),H=p.priceToCoordinate(u.price);if(H==null)continue;if(D!=null&&Math.hypot(f-D,B-H)<S)return{object:w,mode:"handle1"};const P=D==null?0:Math.max(0,D);if(f>=P&&Math.abs(B-H)<y)return{object:w,mode:"line"}}if(w.type==="verticalline"&&w.primitive){const u=w.primitive,D=d.timeScale().timeToCoordinate(u.time);if(D==null)continue;const H=u.midYCss??200;if(Math.hypot(f-D,B-H)<S)return{object:w,mode:"handle1"};if(Math.abs(f-D)<y)return{object:w,mode:"line"}}if(w.type==="pricelevel"&&w.price!=null){const u=p.priceToCoordinate(w.price);if(u==null)continue;const H=(c.current?c.current.paneSize().width:400)/2;if(Math.hypot(f-H,B-u)<S)return{object:w,mode:"line"};if(Math.abs(B-u)<y)return{object:w,mode:"line"}}}return null}const oe=f=>{const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top,u=T(Q,w);if(u){if(f.preventDefault(),f.stopPropagation(),f.detail>=2){ne.current=!0,q(u.object),ee.current=null,se.current=null;return}L(u.object),te(null),X([]),ee.current=u.mode,u.object.type==="rayline"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="extendedline"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="crossline"&&(u.mode==="handle1"||u.mode==="line")&&(se.current={x:Q,y:w,p:{...u.object.p}}),u.object.type==="text"&&u.mode==="line"&&(se.current={x:Q,y:w,rawTime:u.object.rawTime,price:u.object.price}),u.object.type==="trendbyangle"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="equidistantchannel"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}),u.object.type==="andrewspitchfork"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}),u.object.type==="regressionchannel"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="stddevchannel"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="disjointchannel"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}),u.object.type==="flattopbottom"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}),u.object.type==="fibonacci"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="gannfan"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="ganngrid"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="rectangle"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4"||u.mode==="handle5"||u.mode==="handle6"||u.mode==="handle7"||u.mode==="handle8")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="circle"&&(u.mode==="handle1"||u.mode==="handle2")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}),u.object.type==="triangle"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}),u.object.type==="ellipse"&&(u.mode==="handle1"||u.mode==="handle2"||u.mode==="handle3"||u.mode==="handle4")&&(se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},minorRatio:u.object.minorRatio??.45}),u.object.type==="horizontalray"&&(u.mode==="handle1"||u.mode==="line")&&(se.current={x:Q,y:w,price:u.object.primitive.price,originTime:u.object.primitive.originTime}),u.object.type==="verticalline"&&(u.mode==="handle1"||u.mode==="line")&&(se.current={x:Q,y:w,time:u.object.primitive.time}),u.mode==="line"&&(u.object.type==="rulerline"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="infoline"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="arrowedline"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="rayline"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="extendedline"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="crossline"?se.current={x:Q,y:w,p:{...u.object.p}}:u.object.type==="text"?se.current={x:Q,y:w,rawTime:u.object.rawTime,price:u.object.price}:u.object.type==="trendbyangle"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="equidistantchannel"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}:u.object.type==="andrewspitchfork"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}:u.object.type==="regressionchannel"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="stddevchannel"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="disjointchannel"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}:u.object.type==="flattopbottom"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3},p4:{...u.object.p4}}:u.object.type==="fibonacci"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="gannfan"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="rectangle"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="circle"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="triangle"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},p3:{...u.object.p3}}:u.object.type==="ellipse"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2},minorRatio:u.object.minorRatio??.45}:u.object.type==="ganngrid"?se.current={x:Q,y:w,p1:{...u.object.p1},p2:{...u.object.p2}}:u.object.type==="horizontalray"?se.current={x:Q,y:w,price:u.object.primitive.price,originTime:u.object.primitive.originTime}:u.object.type==="verticalline"?se.current={x:Q,y:w,time:u.object.primitive.time}:u.object.type==="pricelevel"?se.current={y:w,price:u.object.price}:se.current={x:Q,y:w,point1:{...u.object.point1},point2:{...u.object.point2}})}else L(null),ee.current=null,V([]),te(null),X([])},E=f=>{const B=O.getBoundingClientRect(),Q=f.clientX-B.left,w=f.clientY-B.top;if(!ee.current){const I=T(Q,w);if(I?.object&&!le.current){const m=J(I.object);te(_=>_===I.object?_:I.object),X(_=>_.length===m.length&&_.every((k,W)=>k.x===m[W].x&&k.y===m[W].y)?_:m)}else te(m=>m==null?m:null),X(m=>m.length===0?m:[]);return}const u=le.current;if(!u)return;const D=d.timeScale().coordinateToTime(Q),H=p.coordinateToPrice(w);if(D==null||H==null)return;let P=Y(D);if(P!=null){if(u.type==="infoline"&&u.p1&&u.p2){const I=W=>{const G=W.rawTime??W.time,Z=W.normalizedTime??Y(G);return{rawTime:G,normalizedTime:Z,price:W.price}},m=(W,G)=>{const Z=W.normalizedTime??Y(W.rawTime),ie=G.normalizedTime??Y(G.rawTime);if(Z==null||ie==null)return;const ue=G.price-W.price,Be=ue/Math.abs(W.price)*100,Fe=tA(fe)||3600,He=Math.abs(ie-Z),$e=Math.max(1,Math.round(He/Fe)),qe=Math.max(1,Math.round(He/86400)),Re=d.timeScale().timeToCoordinate(W.rawTime),lt=p.priceToCoordinate(W.price),st=d.timeScale().timeToCoordinate(G.rawTime),ct=p.priceToCoordinate(G.price),Tt=Re!=null&<!=null&&st!=null&&ct!=null?Math.atan2(-(ct-lt),st-Re)*(180/Math.PI):u.primitive?.info?.angle??0,Kt={priceDiff:ue,pricePct:Be,bars:$e,days:qe,angle:Tt},Gt=u.primitive;if(Gt){Gt.p1={rawTime:W.rawTime,price:W.price},Gt.p2={rawTime:G.rawTime,price:G.price},Gt.info=Kt;try{c.current?.applyOptions({})}catch{}}const eA={...u,rawP1Time:W.rawTime,rawP2Time:G.rawTime,p1:{rawTime:W.rawTime,normalizedTime:Z,price:W.price},p2:{rawTime:G.rawTime,normalizedTime:ie,price:G.price}};Ce(LA=>{const mi=LA.map(Cs=>Cs===u?eA:Cs);return x.current=mi,mi}),L(eA),le.current=eA,Re!=null&<!=null&&st!=null&&ct!=null&&V([{x:Re,y:lt},{x:st,y:ct}])},_=I(u.p1),k=I(u.p2);if(_.rawTime==null||_.normalizedTime==null||k.rawTime==null||k.normalizedTime==null)return;if(ee.current==="handle1"){const W=d.timeScale().coordinateToTime(Q)??D;m({rawTime:W,normalizedTime:P,price:H},k)}else if(ee.current==="handle2"){const W=d.timeScale().coordinateToTime(Q)??D;m(_,{rawTime:W,normalizedTime:P,price:H})}else if(ee.current==="line"){const W=se.current;if(!W)return;const G=I(W.p1),Z=I(W.p2);if(G.rawTime==null||G.normalizedTime==null||Z.rawTime==null||Z.normalizedTime==null)return;const ie=d.timeScale().coordinateToTime(W.x)??G.rawTime,ue=p.coordinateToPrice(W.y);if(ie==null||ue==null)return;const Be=Y(ie)??G.normalizedTime;if(Be==null)return;const Fe=P-Be,He=H-ue,$e=Y(G.normalizedTime+Fe),qe=Y(Z.normalizedTime+Fe);if($e==null||qe==null)return;const Re=D-ie;m({rawTime:G.rawTime+Re,normalizedTime:$e,price:G.price+He},{rawTime:Z.rawTime+Re,normalizedTime:qe,price:Z.price+He})}return}if(u.type==="rulerline"&&u.p1&&u.p2){const I=(m,_)=>{const k=m.normalizedTime??m.rawTime,W=_.normalizedTime??_.rawTime,G=_.price-m.price,Z=G/Math.abs(m.price)*100,ie=ms(Dt,m.rawTime,_.rawTime,fe),ue=Math.abs(W-k),Be=Math.max(1,Math.round(ue/86400)),Fe={priceDiff:G,pricePct:Z,bars:ie,days:Be},He=u.primitive;if(He){He.p1={rawTime:m.rawTime,price:m.price},He.p2={rawTime:_.rawTime,price:_.price},He.info=Fe;const ct=_.price>=m.price;He.color=ct?"#3b82f6":"#ef5350",He.fillColor=ct?"rgba(59,130,246,0.1)":"rgba(239,83,80,0.1)";try{c.current?.applyOptions({})}catch{}}const $e={...u,rawP1Time:m.rawTime,rawP2Time:_.rawTime,p1:m,p2:_};Ce(ct=>{const Tt=ct.map(Kt=>Kt===u?$e:Kt);return x.current=Tt,Tt}),L($e),le.current=$e;const qe=d.timeScale().timeToCoordinate(m.rawTime),Re=p.priceToCoordinate(m.price),lt=d.timeScale().timeToCoordinate(_.rawTime),st=p.priceToCoordinate(_.price);qe!=null&&Re!=null&<!=null&&st!=null&&V([{x:qe,y:Re},{x:(qe+lt)/2,y:(Re+st)/2},{x:lt,y:st}])};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="arrowedline"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(Be=>{const Fe=Be.map(He=>He===u?W:He);return x.current=Fe,Fe}),L(W),le.current=W;const G=d.timeScale().timeToCoordinate(m.rawTime),Z=p.priceToCoordinate(m.price),ie=d.timeScale().timeToCoordinate(_.rawTime),ue=p.priceToCoordinate(_.price);G!=null&&Z!=null&&ie!=null&&ue!=null&&V([{x:G,y:Z},{x:ie,y:ue}])};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="rayline"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(Be=>{const Fe=Be.map(He=>He===u?W:He);return x.current=Fe,Fe}),L(W),le.current=W;const G=d.timeScale().timeToCoordinate(m.rawTime),Z=p.priceToCoordinate(m.price),ie=d.timeScale().timeToCoordinate(_.rawTime),ue=p.priceToCoordinate(_.price);G!=null&&Z!=null&&ie!=null&&ue!=null&&V([{x:G,y:Z},{x:ie,y:ue}])};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;const _=Y(m);if(_==null)return;I(u.p1,{rawTime:m,normalizedTime:_,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="extendedline"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(Be=>{const Fe=Be.map(He=>He===u?W:He);return x.current=Fe,Fe}),L(W),le.current=W;const G=d.timeScale().timeToCoordinate(m.rawTime),Z=p.priceToCoordinate(m.price),ie=d.timeScale().timeToCoordinate(_.rawTime),ue=p.priceToCoordinate(_.price);G!=null&&Z!=null&&ie!=null&&ue!=null&&V([{x:G,y:Z},{x:ie,y:ue}])};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="crossline"&&u.p){const I=_=>{const k=u.primitive;if(k){k.center={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p:_};Ce(ie=>{const ue=ie.map(Be=>Be===u?W:Be);return x.current=ue,ue}),L(W),le.current=W;const G=d.timeScale().timeToCoordinate(_.rawTime),Z=p.priceToCoordinate(_.price);G!=null&&Z!=null&&V([{x:G,y:Z}])},m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H});return}if(u.type==="pricelevel"&&u.price!=null){const I=p.coordinateToPrice(w);if(I==null)return;try{u.priceLine.applyOptions({price:I,title:I.toFixed(5)})}catch{}u.textPrimitive&&(u.textPrimitive.price=I);const m=c.current?c.current.paneSize().width:400,_=p.priceToCoordinate(I);_!=null&&V([{x:m/2,y:_}]);const k={...u,price:I};Ce(W=>{const G=W.map(Z=>Z===u?k:Z);return x.current=G,G}),L(k),le.current=k;return}if(u.type==="text"){const I=d.timeScale().coordinateToTime(Q);if(I==null)return;const m=u.primitive;if(m){m.rawTime=I,m.price=H;try{c.current?.applyOptions({})}catch{}}const _={...u,rawTime:I,price:H};Ce(k=>{const W=k.map(G=>G===u?_:G);return x.current=W,W}),L(_),le.current=_;return}if(u.type==="trendbyangle"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(Be=>{const Fe=Be.map(He=>He===u?W:He);return x.current=Fe,Fe}),L(W),le.current=W;const G=d.timeScale().timeToCoordinate(m.rawTime),Z=p.priceToCoordinate(m.price),ie=d.timeScale().timeToCoordinate(_.rawTime),ue=p.priceToCoordinate(_.price);G!=null&&Z!=null&&ie!=null&&ue!=null&&V([{x:G,y:Z},{x:ie,y:ue}])};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"||ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="equidistantchannel"&&u.p1&&u.p2&&u.p3){const I=(m,_,k)=>{const W=Od(m,_,k);if(!W)return;const G=u.primitive;if(G){G.p1={rawTime:m.rawTime,price:m.price},G.p2={rawTime:_.rawTime,price:_.price},G.b1={rawTime:W.b1.rawTime,price:W.b1.price},G.b2={rawTime:W.b2.rawTime,price:W.b2.price},G.p3={rawTime:W.bottomMid.rawTime,price:W.bottomMid.price};try{c.current?.applyOptions({})}catch{}}const Z={...u,p1:m,p2:_,p3:W.bottomMid,b1:W.b1,b2:W.b2,bottomMid:W.bottomMid};Ce(ie=>{const ue=ie.map(Be=>Be===u?Z:Be);return x.current=ue,ue}),L(Z),le.current=Z};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2,u.p3);return}if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H},u.p3);return}if(ee.current==="handle3"){I(u.p1,u.p2,{rawTime:u.p3.rawTime,normalizedTime:u.p3.normalizedTime??Y(u.p3.rawTime),price:H});return}if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W),ue=Y(m.p3.normalizedTime+W);if(Z==null||ie==null||ue==null)return;const Be=D-_;I({rawTime:m.p1.rawTime+Be,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+Be,normalizedTime:ie,price:m.p2.price+G},{rawTime:m.p3.rawTime+Be,normalizedTime:ue,price:m.p3.price+G});return}}if(u.type==="regressionchannel"&&u.p1&&u.p2){const I=(m,_)=>{const k=Ni(Ve,m,_,u.stdMultiplier??1);if(!k)return;const W=u.primitive;if(W){W.mid1={rawTime:k.p1.rawTime,price:k.p1.price},W.mid2={rawTime:k.p2.rawTime,price:k.p2.price},W.top1={rawTime:k.top1.rawTime,price:k.top1.price},W.top2={rawTime:k.top2.rawTime,price:k.top2.price},W.bot1={rawTime:k.bot1.rawTime,price:k.bot1.price},W.bot2={rawTime:k.bot2.rawTime,price:k.bot2.price};try{c.current?.applyOptions({})}catch{}}const G={...u,p1:k.p1,p2:k.p2,top1:k.top1,top2:k.top2,bot1:k.bot1,bot2:k.bot2,slope:k.slope,intercept:k.intercept,stdDev:k.stdDev,offset:k.offset,barCount:k.barCount};Ce(Z=>{const ie=Z.map(ue=>ue===u?G:ue);return x.current=ie,ie}),L(G),le.current=G};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P},u.p2);return}if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P});return}if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G});return}}if(u.type==="stddevchannel"&&u.p1&&u.p2){const I=(m,_)=>{const k=Sr(Ve,m,_,u.stdMultiplier??1);if(!k)return;const W=u.primitive;if(W){W.mid1={rawTime:k.p1.rawTime,price:k.p1.price},W.mid2={rawTime:k.p2.rawTime,price:k.p2.price},W.top1={rawTime:k.top1.rawTime,price:k.top1.price},W.top2={rawTime:k.top2.rawTime,price:k.top2.price},W.bot1={rawTime:k.bot1.rawTime,price:k.bot1.price},W.bot2={rawTime:k.bot2.rawTime,price:k.bot2.price};try{c.current?.applyOptions({})}catch{}}const G={...u,p1:k.p1,p2:k.p2,top1:k.top1,top2:k.top2,bot1:k.bot1,bot2:k.bot2,slope:k.slope,stdDev:k.stdDev,offset:k.offset,barCount:k.barCount};Ce(Z=>{const ie=Z.map(ue=>ue===u?G:ue);return x.current=ie,ie}),L(G),le.current=G};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P},u.p2);return}if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P});return}if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G});return}}if(u.type==="andrewspitchfork"&&u.p1&&u.p2&&u.p3){const I=(m,_,k)=>{const W=u.primitive;if(W){W.p1={rawTime:m.rawTime,price:m.price},W.p2={rawTime:_.rawTime,price:_.price},W.p3={rawTime:k.rawTime,price:k.price};try{c.current?.applyOptions({})}catch{}}const G={...u,p1:m,p2:_,p3:k};Ce(Z=>{const ie=Z.map(ue=>ue===u?G:ue);return x.current=ie,ie}),L(G),le.current=G};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2,u.p3);return}if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H},u.p3);return}if(ee.current==="handle3"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,u.p2,{rawTime:m,normalizedTime:P,price:H});return}if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W),ue=Y(m.p3.normalizedTime+W);if(Z==null||ie==null||ue==null)return;const Be=D-_;I({rawTime:m.p1.rawTime+Be,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+Be,normalizedTime:ie,price:m.p2.price+G},{rawTime:m.p3.rawTime+Be,normalizedTime:ue,price:m.p3.price+G});return}}if(u.type==="disjointchannel"&&u.p1&&u.p2&&u.p3&&u.p4){const I=(G,Z,ie,ue)=>{const Be=u.primitive;if(Be){Be.p1={rawTime:G.rawTime,price:G.price},Be.p2={rawTime:Z.rawTime,price:Z.price},Be.p3={rawTime:ie.rawTime,price:ie.price},Be.p4={rawTime:ue.rawTime,price:ue.price};try{c.current?.applyOptions({})}catch{}}const Fe={...u,p1:G,p2:Z,p3:ie,p4:ue};Ce(He=>{const $e=He.map(qe=>qe===u?Fe:qe);return x.current=$e,$e}),L(Fe),le.current=Fe},m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(Q);if(_==null)return;const k=Y(_);if(k==null)return;const W=(G,Z,ie,ue)=>{const Be=G.normalizedTime??Y(G.rawTime);if(Be==null)return null;const Fe=Y(Be+ie);return Fe==null?null:{rawTime:G.rawTime+Z,normalizedTime:Fe,price:G.price+ue}};if(ee.current==="line"){const G=d.timeScale().coordinateToTime(m.x),Z=p.coordinateToPrice(m.y);if(G==null||Z==null)return;const ie=Y(G);if(ie==null)return;const ue=_-G,Be=k-ie,Fe=H-Z,He=W(m.p1,ue,Be,Fe),$e=W(m.p2,ue,Be,Fe),qe=W(m.p3,ue,Be,Fe),Re=W(m.p4,ue,Be,Fe);if(!He||!$e||!qe||!Re)return;I(He,$e,qe,Re);return}if(ee.current==="handle1"){const G=(m.p1.price+m.p2.price)/2,Z={rawTime:_,normalizedTime:k,price:H},ie={rawTime:_,normalizedTime:k,price:2*G-H};I(Z,ie,m.p3,m.p4);return}if(ee.current==="handle3"){const G=(m.p3.price+m.p4.price)/2,Z={rawTime:_,normalizedTime:k,price:H},ie={rawTime:_,normalizedTime:k,price:2*G-H};I(m.p1,m.p2,Z,ie);return}if(ee.current==="handle2"){const G=(m.p1.price+m.p2.price)/2,Z={rawTime:m.p1.rawTime,normalizedTime:m.p1.normalizedTime??Y(m.p1.rawTime),price:H};if(Z.normalizedTime==null)return;const ie={rawTime:m.p1.rawTime,normalizedTime:m.p1.normalizedTime??Y(m.p1.rawTime),price:2*G-H};if(ie.normalizedTime==null)return;I(ie,Z,m.p3,m.p4);return}if(ee.current==="handle4"){const G=H-m.p4.price,Z={rawTime:m.p3.rawTime,normalizedTime:m.p3.normalizedTime??Y(m.p3.rawTime),price:m.p4.price+G};if(Z.normalizedTime==null)return;const ie={rawTime:m.p1.rawTime,normalizedTime:m.p1.normalizedTime??Y(m.p1.rawTime),price:m.p2.price+G};if(ie.normalizedTime==null)return;I(m.p1,ie,m.p3,Z);return}}if(u.type==="flattopbottom"&&u.p1&&u.p2&&u.p3&&u.p4){const I=(G,Z,ie,ue)=>{const Be=u.primitive;if(Be){Be.p1={rawTime:G.rawTime,price:G.price},Be.p2={rawTime:Z.rawTime,price:Z.price},Be.p3={rawTime:ie.rawTime,price:ie.price},Be.p4={rawTime:ue.rawTime,price:ue.price};try{c.current?.applyOptions({})}catch{}}const Fe={...u,p1:G,p2:Z,p3:ie,p4:ue};Ce(He=>{const $e=He.map(qe=>qe===u?Fe:qe);return x.current=$e,$e}),L(Fe),le.current=Fe},m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(Q);if(_==null)return;const k=Y(_);if(k==null)return;const W=(G,Z,ie,ue)=>{const Be=G.normalizedTime??Y(G.rawTime);if(Be==null)return null;const Fe=Y(Be+ie);return Fe==null?null:{rawTime:G.rawTime+Z,normalizedTime:Fe,price:G.price+ue}};if(ee.current==="line"){const G=d.timeScale().coordinateToTime(m.x),Z=p.coordinateToPrice(m.y);if(G==null||Z==null)return;const ie=Y(G);if(ie==null)return;const ue=_-G,Be=k-ie,Fe=H-Z,He=W(m.p1,ue,Be,Fe),$e=W(m.p2,ue,Be,Fe),qe=W(m.p3,ue,Be,Fe),Re=W(m.p4,ue,Be,Fe);if(!He||!$e||!qe||!Re)return;I(He,$e,qe,Re);return}if(ee.current==="handle1"){const G={rawTime:_,normalizedTime:k,price:H},Z={rawTime:_,normalizedTime:k,price:m.p2.price};I(G,Z,m.p3,m.p4);return}if(ee.current==="handle3"){const G={rawTime:_,normalizedTime:k,price:H},Z={rawTime:_,normalizedTime:k,price:m.p4.price};I(m.p1,m.p2,G,Z);return}if(ee.current==="handle2"||ee.current==="handle4"){const G=ee.current==="handle2"?m.p2:m.p4,Z=H-G.price,ie={rawTime:m.p1.rawTime,normalizedTime:m.p1.normalizedTime??Y(m.p1.rawTime),price:m.p2.price+Z},ue={rawTime:m.p3.rawTime,normalizedTime:m.p3.normalizedTime??Y(m.p3.rawTime),price:m.p4.price+Z};if(ie.normalizedTime==null||ue.normalizedTime==null)return;I(m.p1,ie,m.p3,ue);return}}if(u.type==="fibonacci"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(G=>{const Z=G.map(ie=>ie===u?W:ie);return x.current=Z,Z}),L(W),le.current=W};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="rectangle"&&u.p1&&u.p2){const I=(st,ct)=>{const Tt=u.primitive;if(Tt){Tt.p1={rawTime:st.rawTime,price:st.price},Tt.p2={rawTime:ct.rawTime,price:ct.price};try{c.current?.applyOptions({})}catch{}}const Kt={...u,p1:st,p2:ct};Ce(Gt=>{const eA=Gt.map(LA=>LA===u?Kt:LA);return x.current=eA,eA}),L(Kt),le.current=Kt},m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(Q);if(_==null)return;const k=Y(_);if(k==null)return;if(ee.current==="line"){const st=d.timeScale().coordinateToTime(m.x),ct=p.coordinateToPrice(m.y);if(st==null||ct==null)return;const Tt=Y(st);if(Tt==null)return;const Kt=k-Tt,Gt=H-ct,eA=Y(m.p1.normalizedTime+Kt),LA=Y(m.p2.normalizedTime+Kt);if(eA==null||LA==null)return;const mi=D-st;I({rawTime:m.p1.rawTime+mi,normalizedTime:eA,price:m.p1.price+Gt},{rawTime:m.p2.rawTime+mi,normalizedTime:LA,price:m.p2.price+Gt});return}const W=Math.min(m.p1.normalizedTime,m.p2.normalizedTime),G=Math.max(m.p1.normalizedTime,m.p2.normalizedTime),Z=Math.max(m.p1.price,m.p2.price),ie=Math.min(m.p1.price,m.p2.price),ue=m.p1.normalizedTime<=m.p2.normalizedTime?m.p1.rawTime:m.p2.rawTime,Be=m.p1.normalizedTime<=m.p2.normalizedTime?m.p2.rawTime:m.p1.rawTime;let Fe=W,He=G,$e=Z,qe=ie,Re=ue,lt=Be;if((ee.current==="handle1"||ee.current==="handle4"||ee.current==="handle6")&&(Fe=k,Re=_),(ee.current==="handle3"||ee.current==="handle5"||ee.current==="handle8")&&(He=k,lt=_),(ee.current==="handle1"||ee.current==="handle2"||ee.current==="handle3")&&($e=H),(ee.current==="handle6"||ee.current==="handle7"||ee.current==="handle8")&&(qe=H),Fe>He){const st=Fe,ct=Re;Fe=He,Re=lt,He=st,lt=ct}if($e<qe){const st=$e;$e=qe,qe=st}I({rawTime:Re,normalizedTime:Fe,price:$e},{rawTime:lt,normalizedTime:He,price:qe});return}if(u.type==="circle"&&u.p1&&u.p2){const I=($e,qe)=>{const Re=u.primitive;if(Re){Re.p1={rawTime:$e.rawTime,price:$e.price},Re.p2={rawTime:qe.rawTime,price:qe.price};try{c.current?.applyOptions({})}catch{}}const lt={...u,p1:$e,p2:qe};Ce(st=>{const ct=st.map(Tt=>Tt===u?lt:Tt);return x.current=ct,ct}),L(lt),le.current=lt},m=d.timeScale().coordinateToTime(Q);if(m==null)return;const _=Y(m);if(_==null)return;if(ee.current==="handle2"){I(u.p1,{rawTime:m,normalizedTime:_,price:H});return}const k=se.current;if(!k)return;const W=d.timeScale().coordinateToTime(k.x),G=p.coordinateToPrice(k.y);if(W==null||G==null)return;const Z=Y(W);if(Z==null)return;const ie=_-Z,ue=H-G,Be=Y(k.p1.normalizedTime+ie),Fe=Y(k.p2.normalizedTime+ie);if(Be==null||Fe==null)return;const He=D-W;I({rawTime:k.p1.rawTime+He,normalizedTime:Be,price:k.p1.price+ue},{rawTime:k.p2.rawTime+He,normalizedTime:Fe,price:k.p2.price+ue});return}if(u.type==="triangle"&&u.p1&&u.p2&&u.p3){const I=(Re,lt,st)=>{const ct=u.primitive;if(ct){ct.p1={rawTime:Re.rawTime,price:Re.price},ct.p2={rawTime:lt.rawTime,price:lt.price},ct.p3={rawTime:st.rawTime,price:st.price};try{c.current?.applyOptions({})}catch{}}const Tt={...u,p1:Re,p2:lt,p3:st};Ce(Kt=>{const Gt=Kt.map(eA=>eA===u?Tt:eA);return x.current=Gt,Gt}),L(Tt),le.current=Tt},m=d.timeScale().coordinateToTime(Q);if(m==null)return;const _=Y(m);if(_==null)return;if(ee.current==="handle1"){I({rawTime:m,normalizedTime:_,price:H},u.p2,u.p3);return}if(ee.current==="handle2"){I(u.p1,{rawTime:m,normalizedTime:_,price:H},u.p3);return}if(ee.current==="handle3"){I(u.p1,u.p2,{rawTime:m,normalizedTime:_,price:H});return}const k=se.current;if(!k)return;const W=d.timeScale().coordinateToTime(k.x),G=p.coordinateToPrice(k.y);if(W==null||G==null)return;const Z=Y(W);if(Z==null)return;const ie=_-Z,ue=H-G,Be=D-W,Fe=Re=>{const lt=Re.normalizedTime??Y(Re.rawTime);if(lt==null)return null;const st=Y(lt+ie);return st==null?null:{rawTime:Re.rawTime+Be,normalizedTime:st,price:Re.price+ue}},He=Fe(k.p1),$e=Fe(k.p2),qe=Fe(k.p3);if(!He||!$e||!qe)return;I(He,$e,qe);return}if(u.type==="ellipse"&&u.p1&&u.p2){const I=(W,G,Z=u.minorRatio??.45)=>{const ie=u.primitive;if(ie){ie.p1={rawTime:W.rawTime,price:W.price},ie.p2={rawTime:G.rawTime,price:G.price},ie.minorRatio=Math.max(.05,Z);try{c.current?.applyOptions({})}catch{}}const ue={...u,p1:W,p2:G,minorRatio:Math.max(.05,Z)};Ce(Be=>{const Fe=Be.map(He=>He===u?ue:He);return x.current=Fe,Fe}),L(ue),le.current=ue},m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(Q);if(_==null)return;const k=Y(_);if(k==null)return;if(ee.current==="line"){const W=d.timeScale().coordinateToTime(m.x),G=p.coordinateToPrice(m.y);if(W==null||G==null)return;const Z=Y(W);if(Z==null)return;const ie=k-Z,ue=H-G,Be=Y(m.p1.normalizedTime+ie),Fe=Y(m.p2.normalizedTime+ie);if(Be==null||Fe==null)return;const He=D-W;I({rawTime:m.p1.rawTime+He,normalizedTime:Be,price:m.p1.price+ue},{rawTime:m.p2.rawTime+He,normalizedTime:Fe,price:m.p2.price+ue},m.minorRatio??u.minorRatio??.45);return}if(ee.current==="handle1"){I({rawTime:_,normalizedTime:k,price:H},u.p2,u.minorRatio??.45);return}if(ee.current==="handle3"){I(u.p1,{rawTime:_,normalizedTime:k,price:H},u.minorRatio??.45);return}if(ee.current==="handle2"||ee.current==="handle4"){const W=d.timeScale().timeToCoordinate(u.p1.rawTime),G=p.priceToCoordinate(u.p1.price),Z=d.timeScale().timeToCoordinate(u.p2.rawTime),ie=p.priceToCoordinate(u.p2.price);if(W==null||G==null||Z==null||ie==null)return;const ue=(W+Z)/2,Be=(G+ie)/2,Fe=Z-W,He=ie-G,$e=Math.hypot(Fe,He);if($e<.001)return;const qe=-He/$e,Re=Fe/$e,lt=Math.abs((Q-ue)*qe+(w-Be)*Re),st=Math.max(.05,lt*2/$e);I(u.p1,u.p2,st);return}return}if(u.type==="gannfan"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(G=>{const Z=G.map(ie=>ie===u?W:ie);return x.current=Z,Z}),L(W),le.current=W};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="ganngrid"&&u.p1&&u.p2){const I=(m,_)=>{const k=u.primitive;if(k){k.p1={rawTime:m.rawTime,price:m.price},k.p2={rawTime:_.rawTime,price:_.price};try{c.current?.applyOptions({})}catch{}}const W={...u,p1:m,p2:_};Ce(G=>{const Z=G.map(ie=>ie===u?W:ie);return x.current=Z,Z}),L(W),le.current=W};if(ee.current==="handle1"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I({rawTime:m,normalizedTime:P,price:H},u.p2)}else if(ee.current==="handle2"){const m=d.timeScale().coordinateToTime(Q);if(m==null)return;I(u.p1,{rawTime:m,normalizedTime:P,price:H})}else if(ee.current==="line"){const m=se.current;if(!m)return;const _=d.timeScale().coordinateToTime(m.x),k=p.coordinateToPrice(m.y);if(_==null||k==null)return;const W=P-Y(_),G=H-k,Z=Y(m.p1.normalizedTime+W),ie=Y(m.p2.normalizedTime+W);if(Z==null||ie==null)return;const ue=D-_;I({rawTime:m.p1.rawTime+ue,normalizedTime:Z,price:m.p1.price+G},{rawTime:m.p2.rawTime+ue,normalizedTime:ie,price:m.p2.price+G})}return}if(u.type==="verticalline"&&u.primitive){const I=u.primitive;I.time=D;const m={...u,time:Y(D),rawTime:D};Ce(k=>{const W=k.map(G=>G===u?m:G);return x.current=W,W}),L(m),le.current=m;const _=d.timeScale().timeToCoordinate(D);_!=null&&V([{x:_,y:I.midYCss??200}]),c.current?.applyOptions({});return}if(u.type==="horizontalray"&&u.primitive){const I=u.primitive,m=se.current;if(!m)return;if(ee.current==="handle1"){if(I.price=H,I.originTime=D,u.priceLine)try{u.priceLine.applyOptions({price:H,title:u.showPrice!==!1?H.toFixed(5):""})}catch{}u.textPrimitive&&(u.textPrimitive.price=H,u.textPrimitive.originTime=D);const _={...u,price:I.price,originTime:I.originTime,rawOriginTime:D};Ce(k=>{const W=k.map(G=>G===u?_:G);return x.current=W,W}),L(_),le.current=_,c.current?.applyOptions({})}else if(ee.current==="line"){const _=p.coordinateToPrice(m.y);if(_==null)return;const k=H-_;if(I.price=m.price+k,u.priceLine)try{u.priceLine.applyOptions({price:I.price,title:u.showPrice!==!1?I.price.toFixed(5):""})}catch{}u.textPrimitive&&(u.textPrimitive.price=I.price);const W={...u,price:I.price};Ce(G=>{const Z=G.map(ie=>ie===u?W:ie);return x.current=Z,Z}),L(W),le.current=W,c.current?.applyOptions({})}return}if(!(u.type!=="trendline"&&u.type!=="gannline")&&!(!u.point1||!u.point2)){if(ee.current==="handle1"){const I={time:P,price:H},m=UA([{time:I.time,value:I.price},{time:u.point2.time,value:u.point2.price}]);m.length>0&&u.series.setData(m),u.decoration&&(u.decoration.p1=I);const _={...u,point1:I};Ce(k=>{const W=k.map(G=>G===u?_:G);return x.current=W,W}),L(_),le.current=_}else if(ee.current==="handle2"){const I={time:P,price:H},m=UA([{time:u.point1.time,value:u.point1.price},{time:I.time,value:I.price}]);m.length>0&&u.series.setData(m),u.decoration&&(u.decoration.p2=I);const _={...u,point2:I};Ce(k=>{const W=k.map(G=>G===u?_:G);return x.current=W,W}),L(_),le.current=_}else if(ee.current==="line"){const I=se.current;if(!I)return;const m=d.timeScale().coordinateToTime(I.x),_=p.coordinateToPrice(I.y);if(m==null||_==null)return;const k=P-m,W=H-_,G={time:Y(I.point1.time+k),price:I.point1.price+W},Z={time:Y(I.point2.time+k),price:I.point2.price+W},ie=UA([{time:G.time,value:G.price},{time:Z.time,value:Z.price}]);ie.length>0&&u.series.setData(ie),u.decoration&&(u.decoration.p1=G,u.decoration.p2=Z);const ue={...u,point1:G,point2:Z};Ce(Be=>{const Fe=Be.map(He=>He===u?ue:He);return x.current=Fe,Fe}),L(ue),le.current=ue}}}},K=()=>{ee.current=null,se.current=null},ae=()=>{ee.current||le.current||(te(null),X([]))},re={capture:!0,passive:!1};return O.addEventListener("mousedown",oe,re),O.addEventListener("mousemove",E,re),O.addEventListener("mouseup",K,re),O.addEventListener("mouseleave",ae,re),()=>{O.removeEventListener("mousedown",oe,re),O.removeEventListener("mousemove",E,re),O.removeEventListener("mouseup",K,re),O.removeEventListener("mouseleave",ae,re)}},[be,Ve,ze,Ce]),Ae.useEffect(()=>{const d=c.current,p=h.current;if(!d||!p)return;const O=()=>{const S=R;if(!S){V([]);return}const y=d.timeScale();if(S.type==="infoline"&&S.p1&&S.p2){const J=S.p1.rawTime??S.p1.time,T=S.p2.rawTime??S.p2.time,oe=y.timeToCoordinate(J),E=p.priceToCoordinate(S.p1.price),K=y.timeToCoordinate(T),ae=p.priceToCoordinate(S.p2.price);oe!=null&&E!=null&&K!=null&&ae!=null?V([{x:oe,y:E},{x:K,y:ae}]):V([]);return}if(S.type==="rulerline"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:(J+oe)/2,y:(T+E)/2},{x:oe,y:E}]):V([]);return}if(S.type==="arrowedline"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="rayline"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="extendedline"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="crossline"&&S.p){const J=y.timeToCoordinate(S.p.rawTime),T=p.priceToCoordinate(S.p.price);J!=null&&T!=null?V([{x:J,y:T}]):V([]);return}if(S.type==="text"&&S.rawTime!=null&&S.price!=null){const J=y.timeToCoordinate(S.rawTime),T=p.priceToCoordinate(S.price);J!=null&&T!=null?V([{x:J,y:T}]):V([]);return}if(S.type==="trendbyangle"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="equidistantchannel"&&S.p1&&S.p2&&S.b1&&S.b2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price),K=y.timeToCoordinate(S.b1.rawTime),ae=p.priceToCoordinate(S.b1.price),re=y.timeToCoordinate(S.b2.rawTime),f=p.priceToCoordinate(S.b2.price);J!=null&&T!=null&&oe!=null&&E!=null&&K!=null&&ae!=null&&re!=null&&f!=null?V([{x:J,y:T},{x:oe,y:E},{x:(K+re)/2,y:(ae+f)/2}]):V([]);return}if(S.type==="regressionchannel"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="stddevchannel"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="andrewspitchfork"&&S.p1&&S.p2&&S.p3){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price),K=y.timeToCoordinate(S.p3.rawTime),ae=p.priceToCoordinate(S.p3.price);J!=null&&T!=null&&oe!=null&&E!=null&&K!=null&&ae!=null?V([{x:J,y:T},{x:oe,y:E},{x:K,y:ae}]):V([]);return}if(S.type==="disjointchannel"&&S.p1&&S.p2&&S.p3&&S.p4){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price),K=y.timeToCoordinate(S.p3.rawTime),ae=p.priceToCoordinate(S.p3.price),re=y.timeToCoordinate(S.p4.rawTime),f=p.priceToCoordinate(S.p4.price);J!=null&&T!=null&&oe!=null&&E!=null&&K!=null&&ae!=null&&re!=null&&f!=null?V([{x:J,y:T},{x:oe,y:E},{x:K,y:ae},{x:re,y:f}]):V([]);return}if(S.type==="flattopbottom"&&S.p1&&S.p2&&S.p3&&S.p4){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price),K=y.timeToCoordinate(S.p3.rawTime),ae=p.priceToCoordinate(S.p3.price),re=y.timeToCoordinate(S.p4.rawTime),f=p.priceToCoordinate(S.p4.price);J!=null&&T!=null&&oe!=null&&E!=null&&K!=null&&ae!=null&&re!=null&&f!=null?V([{x:J,y:T},{x:oe,y:E},{x:K,y:ae},{x:re,y:f}]):V([]);return}if(S.type==="fibonacci"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="trendline"&&S.point1&&S.point2){const J=y.timeToCoordinate(S.point1.time),T=p.priceToCoordinate(S.point1.price),oe=y.timeToCoordinate(S.point2.time),E=p.priceToCoordinate(S.point2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="gannline"&&S.point1&&S.point2){const J=y.timeToCoordinate(S.point1.time),T=p.priceToCoordinate(S.point1.price),oe=y.timeToCoordinate(S.point2.time),E=p.priceToCoordinate(S.point2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:(J+oe)/2,y:(T+E)/2},{x:oe,y:E}]):V([]);return}if(S.type==="rectangle"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);if(J!=null&&T!=null&&oe!=null&&E!=null){const K=Math.min(J,oe),ae=Math.max(J,oe),re=Math.min(T,E),f=Math.max(T,E),B=(K+ae)/2,Q=(re+f)/2;V([{x:K,y:re},{x:B,y:re},{x:ae,y:re},{x:K,y:Q},{x:ae,y:Q},{x:K,y:f},{x:B,y:f},{x:ae,y:f}])}else V([]);return}if(S.type==="circle"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="triangle"&&S.p1&&S.p2&&S.p3){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price),K=y.timeToCoordinate(S.p3.rawTime),ae=p.priceToCoordinate(S.p3.price);J!=null&&T!=null&&oe!=null&&E!=null&&K!=null&&ae!=null?V([{x:J,y:T},{x:oe,y:E},{x:K,y:ae}]):V([]);return}if(S.type==="ellipse"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);if(J!=null&&T!=null&&oe!=null&&E!=null){const K=(J+oe)/2,ae=(T+E)/2,re=oe-J,f=E-T,B=Math.hypot(re,f);if(B<.001){V([]);return}const Q=re/B,w=f/B,u=-w,D=Q,H=B/2,P=H*Math.max(.05,S.minorRatio??.45);V([{x:K-Q*H,y:ae-w*H},{x:K+u*P,y:ae+D*P},{x:K+Q*H,y:ae+w*H},{x:K-u*P,y:ae-D*P}])}else V([]);return}if(S.type==="gannfan"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="ganngrid"&&S.p1&&S.p2){const J=y.timeToCoordinate(S.p1.rawTime),T=p.priceToCoordinate(S.p1.price),oe=y.timeToCoordinate(S.p2.rawTime),E=p.priceToCoordinate(S.p2.price);J!=null&&T!=null&&oe!=null&&E!=null?V([{x:J,y:T},{x:oe,y:E}]):V([]);return}if(S.type==="horizontalray"&&S.primitive){const J=S.primitive,T=y.timeToCoordinate(J.originTime),oe=p.priceToCoordinate(J.price);T!=null&&oe!=null?V([{x:T,y:oe}]):V([]);return}if(S.type==="verticalline"&&S.primitive){const J=S.primitive,T=y.timeToCoordinate(J.time);if(T!=null){const oe=J.midYCss??200;V([{x:T,y:oe}])}else V([]);return}if(S.type==="pricelevel"&&S.priceLine){const J=h.current?.priceToCoordinate(S.price);if(J!=null){const T=c.current?c.current.paneSize().width:400;V([{x:T/2,y:J}])}else V([]);return}V([])};O();const Te=d.timeScale();return Te.subscribeVisibleTimeRangeChange(O),()=>{Te.unsubscribeVisibleTimeRangeChange(O)}},[R]),Ae.useEffect(()=>{let d=!1;x.current.forEach(p=>{if(p.type==="verticalline"&&p.primitive){const O=p===R||p===j;p.primitive.showDot!==O&&(p.primitive.showDot=O,d=!0)}}),d&&c.current?.applyOptions({})},[R,j]),Ae.useEffect(()=>{let d=!1;x.current.forEach(p=>{if((p.type==="infoline"||p.type==="rulerline"||p.type==="arrowedline"||p.type==="rayline"||p.type==="extendedline"||p.type==="trendbyangle")&&p.primitive){const O=p===R||p===j;p.primitive.isActive!==O&&(p.primitive.isActive=O,d=!0)}}),d&&c.current?.applyOptions({})},[R,j]),Ae.useEffect(()=>{!c.current||!h.current||x.current.forEach(d=>{if(d.series&&d.series.applyOptions({visible:Pe}),d.priceLine){const p=Pe&&d.showPrice!==!1;d.priceLine.applyOptions(Pe?{color:d.lineColor??"#3b82f6",axisLabelVisible:p,title:p&&typeof d.price=="number"?d.price.toFixed(5):""}:{color:"rgba(0,0,0,0)",axisLabelVisible:!1,title:""})}if(d.type==="fibonacci"&&d.primitive){d.primitive.visible=Pe;try{c.current?.applyOptions({})}catch{}}if(d.type==="rectangle"&&d.primitive){d.primitive.visible=Pe;try{c.current?.applyOptions({})}catch{}}if(d.type==="parallellines"&&(d.baseLine&&d.baseLine.applyOptions({visible:Pe}),d.parallelLine&&d.parallelLine.applyOptions({visible:Pe}),d.firstLine&&d.firstLine.applyOptions({visible:Pe}),d.secondLine&&d.secondLine.applyOptions({visible:Pe})),(d.type==="horizontalray"||d.type==="verticalline"||d.type==="infoline"||d.type==="rulerline"||d.type==="arrowedline"||d.type==="rayline"||d.type==="extendedline"||d.type==="crossline"||d.type==="trendbyangle"||d.type==="equidistantchannel"||d.type==="regressionchannel"||d.type==="stddevchannel"||d.type==="gannfan"||d.type==="ganngrid"||d.type==="andrewspitchfork"||d.type==="disjointchannel"||d.type==="flattopbottom"||d.type==="circle"||d.type==="triangle"||d.type==="ellipse"||d.type==="text")&&d.primitive){d.primitive.visible=Pe;try{c.current?.applyOptions({})}catch{}}})},[Pe,ze]),Ae.useEffect(()=>{!Pe&&R&&(L(null),V([]))},[Pe,R]),Ae.useEffect(()=>{if(x.current.length>ze.length){const d=x.current.filter((p,O)=>!ze.includes(p));R&&d.some(p=>p===R)&&(L(null),V([])),d.forEach(p=>{if(p.series&&c.current?.removeSeries(p.series),p.priceLine&&h.current?.removePriceLine(p.priceLine),p.textPrimitive)try{h.current?.detachPrimitive(p.textPrimitive)}catch{}if(p.type==="horizontalray"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="verticalline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="infoline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="rulerline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="arrowedline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="rayline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="extendedline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="crossline"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="trendbyangle"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="equidistantchannel"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="regressionchannel"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="stddevchannel"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="gannfan"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="ganngrid"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="andrewspitchfork"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="disjointchannel"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="flattopbottom"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="fibonacci"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="rectangle"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="circle"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="triangle"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="ellipse"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="text"&&p.primitive)try{h.current?.detachPrimitive(p.primitive)}catch{}if(p.type==="parallellines")try{p.baseLine&&c.current?.removeSeries(p.baseLine),p.parallelLine&&c.current?.removeSeries(p.parallelLine),p.firstLine&&c.current?.removeSeries(p.firstLine),p.secondLine&&c.current?.removeSeries(p.secondLine)}catch{}}),x.current=ze}},[ze,R]),Ae.useEffect(()=>{const d=h.current;return d?(ge.current.forEach(O=>{try{d.removePriceLine(O)}catch{}}),ge.current=[],Ne.filter(O=>O.symbol===Se).forEach(O=>{const Te=parseFloat(O.price);if(isNaN(Te))return;const y=O.type==="BUY"?"#26A69A":"#EF5350",J=d.createPriceLine({price:Te,color:y,lineWidth:2,lineStyle:0,axisLabelVisible:!0,title:`${O.type} ${O.volume} @ ${O.price}`,textColor:y});ge.current.push(J)}),()=>{ge.current.forEach(O=>{try{d.removePriceLine(O)}catch{}}),ge.current=[]}):void 0},[Ne,Se]),Ae.useEffect(()=>{const d=o.current;if(!d)return;const p=O=>{if(ne.current){ne.current=!1;return}if(b.current||!c.current)return;const Te=c.current,S=h.current;if(Te&&S&&x.current.length>0){const y=d.getBoundingClientRect(),J=O.clientX-y.left,T=O.clientY-y.top,oe=15;for(let E=x.current.length-1;E>=0;E--){const K=x.current[E];let ae=!1;if(K.type==="text"&&K.rawTime!=null&&K.price!=null){const re=Te.timeScale().timeToCoordinate(K.rawTime),f=S.priceToCoordinate(K.price);if(re!=null&&f!=null){const B=kd(K,re,f);J>=B.left&&J<=B.right&&T>=B.top&&T<=B.bottom&&(ae=!0)}}else if(K.point1&&K.point2){const re=Te.timeScale().timeToCoordinate(K.point1.time??K.point1.rawTime),f=S.priceToCoordinate(K.point1.price),B=Te.timeScale().timeToCoordinate(K.point2.time??K.point2.rawTime),Q=S.priceToCoordinate(K.point2.price);if(re!=null&&f!=null&&B!=null&&Q!=null){const w=Math.hypot(J-re,T-f),u=Math.hypot(J-B,T-Q),D=(re+B)/2,H=(f+Q)/2,P=Math.hypot(J-D,T-H);(w<oe||u<oe||P<oe)&&(ae=!0)}}else if(K.p1&&K.p2){const re=Te.timeScale().timeToCoordinate(K.p1.rawTime),f=S.priceToCoordinate(K.p1.price),B=Te.timeScale().timeToCoordinate(K.p2.rawTime),Q=S.priceToCoordinate(K.p2.price);if(re!=null&&f!=null&&B!=null&&Q!=null){const w=Math.min(re,B),u=Math.max(re,B),D=Math.min(f,Q),H=Math.max(f,Q);J>=w-5&&J<=u+5&&T>=D-5&&T<=H+5&&(ae=!0)}}else if(K.p){const re=Te.timeScale().timeToCoordinate(K.p.rawTime),f=S.priceToCoordinate(K.p.price);re!=null&&f!=null&&Math.hypot(J-re,T-f)<oe&&(ae=!0)}else if(K.type==="pricelevel"&&K.price!=null){const re=S.priceToCoordinate(K.price);re!=null&&Math.abs(T-re)<oe&&(ae=!0)}if(ae){O.preventDefault(),O.stopPropagation(),typeof O.stopImmediatePropagation=="function"&&O.stopImmediatePropagation(),q(K);return}}}O.preventDefault(),O.stopPropagation(),typeof O.stopImmediatePropagation=="function"&&O.stopImmediatePropagation(),setTimeout(()=>{if(!c.current)return;zd(c.current,Ve,fe)||c.current.timeScale().fitContent();const J=c.current.timeScale().getVisibleRange();ve(J)},80)};return d.addEventListener("dblclick",p,!0),()=>{d.removeEventListener("dblclick",p,!0)}},[Ve,fe]);const Yd=R??j,qd=R?$:ce,bT=Pe&&Xv(Yd,qd),QT=Zv(Yd?.type);Ae.useEffect(()=>{const d=o.current,p=l.current;if(!d||!p)return;const O=80,Te=y=>{const J=d.getBoundingClientRect();p.style.opacity=J.bottom-y.clientY<=O?"1":"0"},S=()=>{p.style.opacity="0"};return d.addEventListener("mousemove",Te),d.addEventListener("mouseleave",S),()=>{d.removeEventListener("mousemove",Te),d.removeEventListener("mouseleave",S)}},[]);const FT=Ae.useCallback(()=>{const d=c.current?.timeScale();if(!d)return;const p=d.getVisibleRange();if(!p?.from||!p?.to)return;const O=p.to-p.from,Te=(p.from+p.to)/2,S=O*.8;try{d.setVisibleRange({from:Te-S/2,to:Te+S/2}),ve(d.getVisibleRange())}catch{}},[ve]),UT=Ae.useCallback(()=>{const d=c.current?.timeScale();if(!d)return;const p=d.getVisibleRange();if(!p?.from||!p?.to)return;const O=p.to-p.from,Te=(p.from+p.to)/2,S=O*1.25;try{d.setVisibleRange({from:Te-S/2,to:Te+S/2}),ve(d.getVisibleRange())}catch{}},[ve]),ST=Ae.useCallback(()=>{const d=c.current?.timeScale();if(!d)return;const p=d.getVisibleLogicalRange();if(!p)return;const O=Math.max(1,Math.round((p.to-p.from)*.1));try{d.setVisibleLogicalRange({from:p.from-O,to:p.to-O})}catch{}},[]),ET=Ae.useCallback(()=>{const d=c.current?.timeScale();if(!d)return;const p=d.getVisibleLogicalRange();if(!p)return;const O=Math.max(1,Math.round((p.to-p.from)*.1));try{d.setVisibleLogicalRange({from:p.from+O,to:p.to+O})}catch{}},[]),LT=Ae.useCallback(()=>{if(!c.current)return;zd(c.current,Ve,fe)||c.current.timeScale().fitContent();const p=c.current.timeScale().getVisibleRange();ve(p)},[Ve,fe,ve]);return a.jsx("div",{className:`flex min-w-0 flex-1 flex-col overflow-hidden ${rt==="light"?"bg-white":"bg-[#12161d]"}`,children:a.jsxs("div",{ref:o,className:"relative h-full w-full flex-1",style:{cursor:be===1||be!==null?"crosshair":"default",minHeight:0,minWidth:0},children:[wt&&a.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center",style:{backgroundColor:"#12161d",opacity:1},children:a.jsxs("div",{className:"flex flex-col items-center gap-3",children:[a.jsx("div",{className:"w-9 h-9 rounded-full border-[3px] border-sky-500 border-t-transparent animate-spin"}),a.jsxs("span",{className:"text-xs font-medium tracking-wide",style:{color:"#94a3b8"},children:["Loading ",typeof Se=="object"?Se?.symbol:Se,"..."]})]})}),!wt&&Ir&&a.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center pointer-events-none",children:a.jsxs("div",{className:"flex flex-col items-center gap-2 px-5 py-4 rounded-lg",style:{backgroundColor:rt==="light"?"rgba(255,255,255,0.92)":"rgba(18,22,29,0.92)",border:"1px solid rgba(239,68,68,0.4)"},children:[a.jsx("span",{className:"text-sm font-semibold text-red-400",children:"No data available"}),a.jsx("span",{className:"text-xs text-center max-w-[200px]",style:{color:rt==="light"?"#64748b":"#94a3b8"},children:Ir})]})}),!wt&&!Ir&&Ve.length===0&&a.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center pointer-events-none",children:a.jsx("div",{className:"flex flex-col items-center gap-2",children:a.jsxs("span",{className:"text-sm font-medium",style:{color:rt==="light"?"#94a3b8":"#475569"},children:["No chart data for ",typeof Se=="object"?Se?.symbol:Se]})})}),A&&a.jsx("div",{className:"absolute top-3 left-3 z-50",children:a.jsx(Ch,{bidPrice:e,askPrice:t,onBuyClick:yT,onSellClick:CT})}),a.jsx(vh,{isOpen:Me,onClose:vT,orderType:Qe,bidPrice:e,askPrice:t}),a.jsx(Fh,{isOpen:z!==null,onClose:()=>q(null),chartObject:z,onUpdate:TT}),wt&&a.jsx("div",{className:"pointer-events-none absolute inset-0 z-30 flex items-center justify-center",style:{backgroundColor:"#12161d",opacity:1},children:a.jsx("div",{className:"h-8 w-8 animate-spin rounded-full border-2 border-transparent",style:{borderTopColor:"#475569"}})}),bT&&a.jsx("div",{className:"pointer-events-none absolute inset-0 z-20","aria-hidden":!0,children:qd.map((d,p)=>a.jsx("div",{className:"absolute h-[10px] w-[10px] rounded-full border-2 border-white shadow",style:{left:d.x-5,top:d.y-5,backgroundColor:QT}},p))}),a.jsx("div",{ref:l,style:{position:"absolute",bottom:"50px",left:"50%",transform:"translateX(-50%)",zIndex:30,display:"flex",alignItems:"center",gap:"4px",opacity:0,pointerEvents:"all",transition:"opacity 200ms"},children:[{title:"Zoom out",onClick:UT,icon:a.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:a.jsx("line",{x1:"3",y1:"7",x2:"11",y2:"7"})})},{title:"Zoom in",onClick:FT,icon:a.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[a.jsx("line",{x1:"7",y1:"3",x2:"7",y2:"11"}),a.jsx("line",{x1:"3",y1:"7",x2:"11",y2:"7"})]})},{title:"Scroll left",onClick:ST,icon:a.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("polyline",{points:"8,3 4,7 8,11"})})},{title:"Scroll right",onClick:ET,icon:a.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("polyline",{points:"6,3 10,7 6,11"})})},{title:"Reset view",onClick:LT,icon:a.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[a.jsx("path",{d:"M2 7a5 5 0 1 0 1.5-3.5"}),a.jsx("polyline",{points:"2,2 2,5.5 5.5,5.5"})]})}].map(({title:d,onClick:p,icon:O})=>a.jsx("button",{title:d,onClick:p,style:{display:"flex",alignItems:"center",justifyContent:"center",width:"32px",height:"32px",borderRadius:"50%",cursor:"pointer",transition:"background-color 150ms, color 150ms",backgroundColor:rt==="light"?"rgba(0,0,0,0.12)":"rgba(255,255,255,0.08)",color:rt==="light"?"#374151":"#94a3b8",border:"1px solid "+(rt==="light"?"rgba(0,0,0,0.1)":"rgba(255,255,255,0.1)")},onMouseEnter:Te=>{Te.currentTarget.style.backgroundColor=rt==="light"?"rgba(0,0,0,0.2)":"rgba(255,255,255,0.15)",Te.currentTarget.style.color=rt==="light"?"#111827":"#e2e8f0"},onMouseLeave:Te=>{Te.currentTarget.style.backgroundColor=rt==="light"?"rgba(0,0,0,0.12)":"rgba(255,255,255,0.08)",Te.currentTarget.style.color=rt==="light"?"#374151":"#94a3b8"},children:O},d))})]})})}),gt={container:{position:"relative",display:"inline-block",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},button:{display:"flex",alignItems:"center",gap:"6px",padding:"6px 12px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"6px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,cursor:"pointer",minWidth:"120px",justifyContent:"space-between",transition:"all 0.15s ease"},buttonHover:{borderColor:"#3b82f6",backgroundColor:"#1e3a5f"},arrow:{fontSize:"10px",color:"#94a3b8",transition:"transform 0.2s ease"},arrowOpen:{transform:"rotate(180deg)"},dropdown:{position:"absolute",top:"100%",left:0,marginTop:"4px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"8px",boxShadow:"0 8px 24px rgba(0,0,0,0.4)",zIndex:1e3,minWidth:"220px",maxHeight:"320px",overflow:"hidden",display:"flex",flexDirection:"column"},searchContainer:{padding:"8px",borderBottom:"1px solid #334155"},searchInput:{width:"100%",padding:"6px 10px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"12px",outline:"none",boxSizing:"border-box"},list:{overflowY:"auto",maxHeight:"260px",padding:"4px 0"},item:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"8px 12px",cursor:"pointer",fontSize:"13px",color:"#cbd5e1",transition:"background-color 0.1s ease"},itemSelected:{backgroundColor:"#1e3a5f",color:"#60a5fa"},symbolName:{fontWeight:600},symbolPrice:{fontSize:"11px",color:"#94a3b8"},priceUp:{color:"#26A69A"},priceDown:{color:"#EF5350"},categoryLabel:{padding:"6px 12px 4px",fontSize:"10px",fontWeight:700,color:"#64748b",textTransform:"uppercase",letterSpacing:"0.05em"},empty:{padding:"16px",textAlign:"center",color:"#64748b",fontSize:"12px"}};function Wd({style:i,className:e}){const{selectedSymbol:t,setSelectedSymbol:A,symbols:r,symbolsLoading:n}=Lt(),[s,o]=Ae.useState(!1),[l,c]=Ae.useState(""),[h,g]=Ae.useState(-1),C=Ae.useRef(null),x=Ae.useRef(null);Ae.useEffect(()=>{const M=N=>{C.current&&!C.current.contains(N.target)&&(o(!1),c(""))};return document.addEventListener("mousedown",M),()=>document.removeEventListener("mousedown",M)},[]),Ae.useEffect(()=>{s&&x.current&&x.current.focus()},[s]);const b=r.filter(M=>M.symbol.toLowerCase().includes(l.toLowerCase())),v=b.filter(M=>!M.symbol.endsWith("USDT")),U=b.filter(M=>M.symbol.endsWith("USDT")),F=M=>{A(M),o(!1),c("")};return r.find(M=>M.symbol===t),a.jsxs("div",{ref:C,style:{...gt.container,...i},className:e,children:[a.jsxs("button",{style:gt.button,onClick:()=>o(!s),onMouseEnter:M=>Object.assign(M.currentTarget.style,gt.buttonHover),onMouseLeave:M=>{M.currentTarget.style.borderColor="#334155",M.currentTarget.style.backgroundColor="#1e293b"},children:[a.jsx("span",{children:n?"Loading...":t||"Select Coin"}),a.jsx("span",{style:{...gt.arrow,...s?gt.arrowOpen:{}},children:"▼"})]}),s&&a.jsxs("div",{style:gt.dropdown,children:[a.jsx("div",{style:gt.searchContainer,children:a.jsx("input",{ref:x,style:gt.searchInput,type:"text",placeholder:"Search symbol...",value:l,onChange:M=>c(M.target.value)})}),a.jsx("div",{style:gt.list,children:b.length===0?a.jsx("div",{style:gt.empty,children:"No symbols found"}):a.jsxs(a.Fragment,{children:[v.length>0&&a.jsxs(a.Fragment,{children:[a.jsx("div",{style:gt.categoryLabel,children:"Forex & Metals"}),v.map(M=>a.jsxs("div",{style:{...gt.item,...M.symbol===t?gt.itemSelected:{}},onClick:()=>F(M.symbol),onMouseEnter:N=>{M.symbol!==t&&(N.currentTarget.style.backgroundColor="#334155")},onMouseLeave:N=>{M.symbol!==t&&(N.currentTarget.style.backgroundColor="transparent")},children:[a.jsx("span",{style:gt.symbolName,children:M.symbol}),M.bid&&a.jsx("span",{style:{...gt.symbolPrice,...parseFloat(M.change)>=0?gt.priceUp:gt.priceDown},children:parseFloat(M.bid).toFixed(5)})]},M.symbol))]}),U.length>0&&a.jsxs(a.Fragment,{children:[a.jsx("div",{style:gt.categoryLabel,children:"Crypto"}),U.map(M=>a.jsxs("div",{style:{...gt.item,...M.symbol===t?gt.itemSelected:{}},onClick:()=>F(M.symbol),onMouseEnter:N=>{M.symbol!==t&&(N.currentTarget.style.backgroundColor="#334155")},onMouseLeave:N=>{M.symbol!==t&&(N.currentTarget.style.backgroundColor="transparent")},children:[a.jsx("span",{style:gt.symbolName,children:M.symbol}),M.bid&&a.jsx("span",{style:{...gt.symbolPrice,...parseFloat(M.change)>=0?gt.priceUp:gt.priceDown},children:parseFloat(M.bid).toFixed(2)})]},M.symbol))]})]})})]})]})}const SA={container:{display:"inline-flex",alignItems:"center",gap:"4px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",color:"#94a3b8",fontWeight:600,textTransform:"uppercase",letterSpacing:"0.03em",marginRight:"4px",whiteSpace:"nowrap"},btn:{display:"flex",alignItems:"center",justifyContent:"center",width:"26px",height:"26px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"14px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease",padding:0,lineHeight:1,userSelect:"none"},btnHover:{borderColor:"#3b82f6",backgroundColor:"#1e3a5f"},input:{width:"70px",padding:"4px 6px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,textAlign:"center",outline:"none",boxSizing:"border-box"},presets:{display:"inline-flex",gap:"2px",marginLeft:"4px"},preset:{padding:"3px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"11px",cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},presetActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"}},tT=[.01,.05,.1,.5,1];function Rd({value:i,onChange:e,min:t=.01,max:A=100,step:r=.01,presets:n=tT,showPresets:s=!0,showLabel:o=!0,label:l="Vol",style:c,className:h}){const[g,C]=Ae.useState(.1),x=i!==void 0?i:g,b=Ae.useCallback(M=>{const N=Math.max(t,Math.min(A,parseFloat(M)||t)),R=Math.round(N/r)*r,L=parseFloat(R.toFixed(8));i!==void 0||C(L),e?.(L)},[t,A,r,i,e]),v=()=>b(x+r),U=()=>b(x-r),F=(x>=1,x.toFixed(2));return a.jsxs("div",{style:{...SA.container,...c},className:h,children:[o&&a.jsx("span",{style:SA.label,children:l}),a.jsx("button",{style:SA.btn,onClick:U,onMouseEnter:M=>Object.assign(M.currentTarget.style,SA.btnHover),onMouseLeave:M=>{M.currentTarget.style.borderColor="#334155",M.currentTarget.style.backgroundColor="#1e293b"},children:"−"}),a.jsx("input",{style:SA.input,type:"text",value:F,onChange:M=>{const N=M.target.value;if(N===""||N==="."||N==="0.")return;const R=parseFloat(N);isNaN(R)||b(R)},onBlur:()=>b(x)}),a.jsx("button",{style:SA.btn,onClick:v,onMouseEnter:M=>Object.assign(M.currentTarget.style,SA.btnHover),onMouseLeave:M=>{M.currentTarget.style.borderColor="#334155",M.currentTarget.style.backgroundColor="#1e293b"},children:"+"}),s&&n&&n.length>0&&a.jsx("div",{style:SA.presets,children:n.map(M=>a.jsx("button",{style:{...SA.preset,...Math.abs(x-M)<1e-4?SA.presetActive:{}},onClick:()=>b(M),onMouseEnter:N=>{Math.abs(x-M)>=1e-4&&Object.assign(N.currentTarget.style,{borderColor:"#3b82f6"})},onMouseLeave:N=>{Math.abs(x-M)>=1e-4&&(N.currentTarget.style.borderColor="#334155")},children:M},M))})]})}const Yt={container:{display:"inline-flex",alignItems:"center",gap:"6px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",fontWeight:700,color:"#EF5350",textTransform:"uppercase",letterSpacing:"0.03em",whiteSpace:"nowrap"},toggle:{position:"relative",width:"32px",height:"18px",borderRadius:"9px",cursor:"pointer",transition:"background-color 0.2s ease",border:"none",padding:0},toggleOff:{backgroundColor:"#334155"},toggleOn:{backgroundColor:"#EF5350"},toggleKnob:{position:"absolute",top:"2px",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:"#fff",transition:"left 0.2s ease"},knobOff:{left:"2px"},knobOn:{left:"16px"},inputGroup:{display:"inline-flex",alignItems:"center",gap:"4px"},input:{width:"90px",padding:"4px 8px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,textAlign:"right",outline:"none",boxSizing:"border-box",transition:"border-color 0.15s ease"},modeBtn:{padding:"3px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"10px",cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},modeBtnActive:{backgroundColor:"#3b1515",borderColor:"#EF5350",color:"#EF5350"}};function Gd({value:i,onChange:e,enabled:t,onEnabledChange:A,mode:r,onModeChange:n,showToggle:s=!0,showModeSwitch:o=!0,showLabel:l=!0,label:c="SL",style:h,className:g}){const{currentSymbolData:C}=Lt(),[x,b]=Ae.useState(""),[v,U]=Ae.useState(!1),[F,M]=Ae.useState("price"),N=i!==void 0?i:x,R=t!==void 0?t:v,L=r!==void 0?r:F,z=Ae.useCallback(te=>{t!==void 0||U(te),A?.(te)},[t,A]),q=Ae.useCallback(te=>{r!==void 0||M(te),n?.(te)},[r,n]),$=Ae.useCallback(te=>{i!==void 0||b(te),e?.(te)},[i,e]),V=te=>{const ce=te.target.value;if(ce===""||ce==="."||ce==="0."){$(ce);return}const X=parseFloat(ce);isNaN(X)||$(ce)},j=L==="price"?C?.bid?parseFloat(C.bid).toFixed(5):"0.00000":"50";return a.jsxs("div",{style:{...Yt.container,...h},className:g,children:[l&&a.jsx("span",{style:Yt.label,children:c}),s&&a.jsx("button",{style:{...Yt.toggle,...R?Yt.toggleOn:Yt.toggleOff},onClick:()=>z(!R),children:a.jsx("div",{style:{...Yt.toggleKnob,...R?Yt.knobOn:Yt.knobOff}})}),(R||!s)&&a.jsxs("div",{style:Yt.inputGroup,children:[a.jsx("input",{style:Yt.input,type:"text",value:N,onChange:V,placeholder:j,onFocus:te=>te.currentTarget.style.borderColor="#EF5350",onBlur:te=>te.currentTarget.style.borderColor="#334155"}),o&&a.jsxs(a.Fragment,{children:[a.jsx("button",{style:{...Yt.modeBtn,...L==="price"?Yt.modeBtnActive:{}},onClick:()=>q("price"),children:"Price"}),a.jsx("button",{style:{...Yt.modeBtn,...L==="pips"?Yt.modeBtnActive:{}},onClick:()=>q("pips"),children:"Pips"})]})]})]})}const qt={container:{display:"inline-flex",alignItems:"center",gap:"6px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",fontWeight:700,color:"#26A69A",textTransform:"uppercase",letterSpacing:"0.03em",whiteSpace:"nowrap"},toggle:{position:"relative",width:"32px",height:"18px",borderRadius:"9px",cursor:"pointer",transition:"background-color 0.2s ease",border:"none",padding:0},toggleOff:{backgroundColor:"#334155"},toggleOn:{backgroundColor:"#26A69A"},toggleKnob:{position:"absolute",top:"2px",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:"#fff",transition:"left 0.2s ease"},knobOff:{left:"2px"},knobOn:{left:"16px"},inputGroup:{display:"inline-flex",alignItems:"center",gap:"4px"},input:{width:"90px",padding:"4px 8px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"13px",fontWeight:600,textAlign:"right",outline:"none",boxSizing:"border-box",transition:"border-color 0.15s ease"},modeBtn:{padding:"3px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"10px",cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},modeBtnActive:{backgroundColor:"#0d2e2a",borderColor:"#26A69A",color:"#26A69A"}};function $d({value:i,onChange:e,enabled:t,onEnabledChange:A,mode:r,onModeChange:n,showToggle:s=!0,showModeSwitch:o=!0,showLabel:l=!0,label:c="TP",style:h,className:g}){const{currentSymbolData:C}=Lt(),[x,b]=Ae.useState(""),[v,U]=Ae.useState(!1),[F,M]=Ae.useState("price"),N=i!==void 0?i:x,R=t!==void 0?t:v,L=r!==void 0?r:F,z=Ae.useCallback(te=>{t!==void 0||U(te),A?.(te)},[t,A]),q=Ae.useCallback(te=>{r!==void 0||M(te),n?.(te)},[r,n]),$=Ae.useCallback(te=>{i!==void 0||b(te),e?.(te)},[i,e]),V=te=>{const ce=te.target.value;if(ce===""||ce==="."||ce==="0."){$(ce);return}const X=parseFloat(ce);isNaN(X)||$(ce)},j=L==="price"?C?.ask?parseFloat(C.ask).toFixed(5):"0.00000":"50";return a.jsxs("div",{style:{...qt.container,...h},className:g,children:[l&&a.jsx("span",{style:qt.label,children:c}),s&&a.jsx("button",{style:{...qt.toggle,...R?qt.toggleOn:qt.toggleOff},onClick:()=>z(!R),children:a.jsx("div",{style:{...qt.toggleKnob,...R?qt.knobOn:qt.knobOff}})}),(R||!s)&&a.jsxs("div",{style:qt.inputGroup,children:[a.jsx("input",{style:qt.input,type:"text",value:N,onChange:V,placeholder:j,onFocus:te=>te.currentTarget.style.borderColor="#26A69A",onBlur:te=>te.currentTarget.style.borderColor="#334155"}),o&&a.jsxs(a.Fragment,{children:[a.jsx("button",{style:{...qt.modeBtn,...L==="price"?qt.modeBtnActive:{}},onClick:()=>q("price"),children:"Price"}),a.jsx("button",{style:{...qt.modeBtn,...L==="pips"?qt.modeBtnActive:{}},onClick:()=>q("pips"),children:"Pips"})]})]})]})}const AT=[{id:1,name:"Crosshair",icon:"+"},{id:2,name:"Trend Line",icon:"╱"},{id:3,name:"Parallel Channel",icon:"═"},{id:4,name:"Fibonacci",icon:"≡"},{id:5,name:"Rectangle",icon:"▭"},{id:6,name:"Price Level",icon:"─"}],EA={container:{display:"inline-flex",alignItems:"center",gap:"2px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},label:{fontSize:"11px",color:"#94a3b8",fontWeight:600,textTransform:"uppercase",letterSpacing:"0.03em",marginRight:"4px",whiteSpace:"nowrap"},btn:{display:"flex",alignItems:"center",justifyContent:"center",width:"30px",height:"30px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"14px",cursor:"pointer",transition:"all 0.15s ease",padding:0,position:"relative"},btnActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"},btnHover:{borderColor:"#3b82f6",backgroundColor:"#1e3a5f"},tooltip:{position:"absolute",bottom:"calc(100% + 6px)",left:"50%",transform:"translateX(-50%)",padding:"4px 8px",backgroundColor:"#0f172a",border:"1px solid #334155",borderRadius:"4px",color:"#e2e8f0",fontSize:"11px",whiteSpace:"nowrap",pointerEvents:"none",zIndex:100},divider:{width:"1px",height:"20px",backgroundColor:"#334155",margin:"0 4px"},deleteBtn:{display:"flex",alignItems:"center",justifyContent:"center",width:"30px",height:"30px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"13px",cursor:"pointer",transition:"all 0.15s ease",padding:0},deleteBtnHover:{borderColor:"#EF5350",backgroundColor:"#3b1515",color:"#EF5350"},visibilityBtn:{display:"flex",alignItems:"center",justifyContent:"center",width:"30px",height:"30px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"13px",cursor:"pointer",transition:"all 0.15s ease",padding:0}};function Xd({showLabel:i=!0,showDelete:e=!0,showVisibility:t=!0,tools:A,label:r="Draw",style:n,className:s}){const{activeTool:o,setActiveTool:l,drawingsVisible:c,setDrawingsVisible:h,chartObjects:g,setChartObjects:C}=Lt(),[x,b]=Ae.useState(null),v=A||AT,U=N=>{l(o===N?null:N)},F=()=>{C([]),l(null)},M=()=>{h(!c)};return a.jsxs("div",{style:{...EA.container,...n},className:s,children:[i&&a.jsx("span",{style:EA.label,children:r}),v.map(N=>a.jsxs("button",{style:{...EA.btn,...o===N.id?EA.btnActive:{}},onClick:()=>U(N.id),onMouseEnter:R=>{b(N.id),o!==N.id&&Object.assign(R.currentTarget.style,EA.btnHover)},onMouseLeave:R=>{b(null),o!==N.id&&(R.currentTarget.style.borderColor="#334155",R.currentTarget.style.backgroundColor="#1e293b",R.currentTarget.style.color="#94a3b8")},title:N.name,children:[N.icon,x===N.id&&a.jsx("div",{style:EA.tooltip,children:N.name})]},N.id)),(e||t)&&a.jsx("div",{style:EA.divider}),t&&a.jsx("button",{style:{...EA.visibilityBtn,...c?{}:{color:"#64748b",backgroundColor:"#0f172a"}},onClick:M,onMouseEnter:N=>{N.currentTarget.style.borderColor="#3b82f6"},onMouseLeave:N=>{N.currentTarget.style.borderColor="#334155"},title:c?"Hide Drawings":"Show Drawings",children:c?"👁":"○"}),e&&a.jsx("button",{style:EA.deleteBtn,onClick:F,onMouseEnter:N=>Object.assign(N.currentTarget.style,EA.deleteBtnHover),onMouseLeave:N=>{N.currentTarget.style.borderColor="#334155",N.currentTarget.style.backgroundColor="#1e293b",N.currentTarget.style.color="#94a3b8"},title:"Delete All Drawings",children:"🗑"})]})}const Zd={toolbar:{display:"flex",alignItems:"center",gap:"12px",padding:"6px 12px",backgroundColor:"#0f172a",borderBottom:"1px solid #1e293b",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",flexWrap:"wrap",minHeight:"42px"},divider:{width:"1px",height:"24px",backgroundColor:"#1e293b",flexShrink:0}};function iT({showCoinSelector:i=!0,showVolumeControl:e=!0,showStopLoss:t=!0,showTakeProfit:A=!0,showDrawingTools:r=!0,showDividers:n=!0,volume:s,onVolumeChange:o,stopLoss:l,onStopLossChange:c,stopLossEnabled:h,onStopLossEnabledChange:g,takeProfit:C,onTakeProfitChange:x,takeProfitEnabled:b,onTakeProfitEnabledChange:v,coinSelectorProps:U={},volumeControlProps:F={},stopLossProps:M={},takeProfitProps:N={},drawingToolsProps:R={},style:L,className:z}){const q=[];i&&q.push(a.jsx(Wd,{...U},"coin")),e&&q.push(a.jsx(Rd,{value:s,onChange:o,...F},"volume")),t&&q.push(a.jsx(Gd,{value:l,onChange:c,enabled:h,onEnabledChange:g,...M},"sl")),A&&q.push(a.jsx($d,{value:C,onChange:x,enabled:b,onEnabledChange:v,...N},"tp")),r&&q.push(a.jsx(Xd,{...R},"draw"));const $=[];return q.forEach((V,j)=>{$.push(V),n&&j<q.length-1&&$.push(a.jsx("div",{style:Zd.divider},`div-${j}`))}),a.jsx("div",{style:{...Zd.toolbar,...L},className:z,children:$})}const rT=[{label:"M1",value:"M1"},{label:"M5",value:"M5"},{label:"M15",value:"M15"},{label:"M30",value:"M30"},{label:"H1",value:"H1"},{label:"H4",value:"H4"},{label:"D1",value:"D1"},{label:"W1",value:"W1"}],_a={container:{display:"inline-flex",alignItems:"center",gap:"2px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},btn:{padding:"4px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"11px",fontWeight:600,cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap"},btnActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"}};function nT({style:i,className:e}){const{selectedTimeframe:t,setSelectedTimeframe:A}=Lt();return a.jsx("div",{style:{..._a.container,...i},className:e,children:rT.map(r=>a.jsx("button",{style:{..._a.btn,...t===r.value?_a.btnActive:{}},onClick:()=>A(r.value),onMouseEnter:n=>{t!==r.value&&(n.currentTarget.style.borderColor="#3b82f6")},onMouseLeave:n=>{t!==r.value&&(n.currentTarget.style.borderColor="#334155")},children:r.label},r.value))})}const sT=[{label:"Candles",value:"candles",icon:"📊"},{label:"Line",value:"line",icon:"📈"},{label:"Area",value:"area",icon:"▤"},{label:"Bars",value:"bars",icon:"▥"}],Pa={container:{display:"inline-flex",alignItems:"center",gap:"2px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},btn:{padding:"4px 8px",backgroundColor:"#1e293b",border:"1px solid #334155",borderRadius:"4px",color:"#94a3b8",fontSize:"11px",fontWeight:600,cursor:"pointer",transition:"all 0.15s ease",whiteSpace:"nowrap",display:"flex",alignItems:"center",gap:"3px"},btnActive:{backgroundColor:"#1e3a5f",borderColor:"#3b82f6",color:"#60a5fa"}};function oT({style:i,className:e}){const{chartType:t,setChartType:A}=Lt();return a.jsx("div",{style:{...Pa.container,...i},className:e,children:sT.map(r=>a.jsxs("button",{style:{...Pa.btn,...t===r.value?Pa.btnActive:{}},onClick:()=>A(r.value),onMouseEnter:n=>{t!==r.value&&(n.currentTarget.style.borderColor="#3b82f6")},onMouseLeave:n=>{t!==r.value&&(n.currentTarget.style.borderColor="#334155")},title:r.label,children:[a.jsx("span",{children:r.icon}),a.jsx("span",{children:r.label})]},r.value))})}const Rt={container:{display:"inline-flex",alignItems:"center",gap:"6px",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"},priceBox:{display:"flex",flexDirection:"column",alignItems:"center",padding:"4px 10px",backgroundColor:"#0f172a",borderRadius:"4px",minWidth:"80px"},priceLabel:{fontSize:"9px",color:"#64748b",textTransform:"uppercase",fontWeight:600,letterSpacing:"0.05em"},priceValue:{fontSize:"13px",fontWeight:700,fontFamily:"monospace"},spread:{fontSize:"9px",color:"#64748b",padding:"0 4px",display:"flex",flexDirection:"column",alignItems:"center",gap:"1px"},spreadLabel:{fontSize:"8px",textTransform:"uppercase",letterSpacing:"0.05em"},spreadValue:{fontSize:"10px",fontWeight:700,color:"#94a3b8"},sellBtn:{padding:"6px 16px",backgroundColor:"#7f1d1d",border:"1px solid #991b1b",borderRadius:"4px",color:"#fca5a5",fontSize:"12px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease",textTransform:"uppercase",letterSpacing:"0.03em",minWidth:"70px"},sellBtnHover:{backgroundColor:"#991b1b",borderColor:"#EF5350"},buyBtn:{padding:"6px 16px",backgroundColor:"#14532d",border:"1px solid #166534",borderRadius:"4px",color:"#86efac",fontSize:"12px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease",textTransform:"uppercase",letterSpacing:"0.03em",minWidth:"70px"},buyBtnHover:{backgroundColor:"#166534",borderColor:"#26A69A"},status:{fontSize:"10px",padding:"2px 8px",borderRadius:"3px",fontWeight:600,whiteSpace:"nowrap"}};function aT({volume:i=.1,stopLoss:e,takeProfit:t,onTradeExecuted:A,style:r,className:n}){const{selectedSymbol:s,currentSymbolData:o,setOrders:l,setUserBalance:c}=Lt(),[h,g]=Ae.useState(null),C=parseFloat(o?.bid||0),x=parseFloat(o?.ask||0),b=x>0&&C>0?Math.abs(x-C):0,v=M=>!M||M===0?"-.-----":M>=1e3?M.toFixed(2):M>=1?M.toFixed(4):M.toFixed(5),U=M=>M===0?"-":M>=1?M.toFixed(1):M>=.01?M.toFixed(3):(M*1e4).toFixed(1)+"p",F=Ae.useCallback(M=>{if(!s)return;const N=M==="BUY"?x:C;if(!N||N<=0){g({type:"error",message:"No price available"});return}const R={id:Date.now().toString(),ticket:Math.floor(Math.random()*9e5)+1e5,symbol:s,type:M,volume:i,price:N,stopLoss:e?parseFloat(e):null,takeProfit:t?parseFloat(t):null,status:"OPEN",profit:0,swap:0,openAt:new Date().toISOString(),time:new Date().toLocaleTimeString()};l(z=>[...z,R]);const L=i*N*.01;c(z=>z-L),g({type:"success",message:`${M} executed`}),A?.(R),setTimeout(()=>g(null),3e3)},[s,x,C,i,e,t,l,c,A]);return a.jsxs("div",{style:{...Rt.container,...r},className:n,children:[a.jsx("button",{style:Rt.sellBtn,onClick:()=>F("SELL"),onMouseEnter:M=>{Object.assign(M.currentTarget.style,Rt.sellBtnHover)},onMouseLeave:M=>{M.currentTarget.style.backgroundColor="#7f1d1d",M.currentTarget.style.borderColor="#991b1b"},children:"Sell"}),a.jsxs("div",{style:Rt.priceBox,children:[a.jsx("span",{style:Rt.priceLabel,children:"Bid"}),a.jsx("span",{style:{...Rt.priceValue,color:"#EF5350"},children:v(C)})]}),a.jsxs("div",{style:Rt.spread,children:[a.jsx("span",{style:Rt.spreadLabel,children:"Spread"}),a.jsx("span",{style:Rt.spreadValue,children:U(b)})]}),a.jsxs("div",{style:Rt.priceBox,children:[a.jsx("span",{style:Rt.priceLabel,children:"Ask"}),a.jsx("span",{style:{...Rt.priceValue,color:"#26A69A"},children:v(x)})]}),a.jsx("button",{style:Rt.buyBtn,onClick:()=>F("BUY"),onMouseEnter:M=>{Object.assign(M.currentTarget.style,Rt.buyBtnHover)},onMouseLeave:M=>{M.currentTarget.style.backgroundColor="#14532d",M.currentTarget.style.borderColor="#166534"},children:"Buy"}),h&&a.jsx("span",{style:{...Rt.status,backgroundColor:h.type==="success"?"#14532d":"#7f1d1d",color:h.type==="success"?"#86efac":"#fca5a5",border:`1px solid ${h.type==="success"?"#166534":"#991b1b"}`},children:h.message})]})}const et={container:{fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",backgroundColor:"#0f172a",borderTop:"1px solid #1e293b",fontSize:"11px",overflow:"hidden",display:"flex",flexDirection:"column"},header:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"6px 12px",backgroundColor:"#0f172a",borderBottom:"1px solid #1e293b"},headerTitle:{color:"#94a3b8",fontSize:"11px",fontWeight:700,textTransform:"uppercase",letterSpacing:"0.05em"},summary:{display:"flex",gap:"16px",fontSize:"11px"},summaryItem:{display:"flex",gap:"4px",alignItems:"center"},summaryLabel:{color:"#64748b",fontWeight:600},summaryValue:{fontWeight:700,fontFamily:"monospace"},table:{width:"100%",borderCollapse:"collapse"},th:{padding:"4px 8px",textAlign:"left",color:"#64748b",fontWeight:700,fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.05em",borderBottom:"1px solid #1e293b",whiteSpace:"nowrap"},td:{padding:"4px 8px",color:"#cbd5e1",borderBottom:"1px solid #1e293b",whiteSpace:"nowrap",fontFamily:"monospace",fontSize:"11px"},closeBtn:{padding:"2px 8px",backgroundColor:"#7f1d1d",border:"1px solid #991b1b",borderRadius:"3px",color:"#fca5a5",fontSize:"10px",fontWeight:700,cursor:"pointer",transition:"all 0.15s ease"},emptyRow:{padding:"16px",textAlign:"center",color:"#475569",fontSize:"12px"},scrollArea:{overflowY:"auto",maxHeight:"200px"},typeBuy:{color:"#26A69A",fontWeight:700},typeSell:{color:"#EF5350",fontWeight:700}};function lT({style:i,className:e,maxHeight:t=200}){const{orders:A,setOrders:r,symbols:n,accountSummary:s,setUserBalance:o}=Lt(),[l,c]=Ae.useState(null),h=A.filter(v=>v.status==="OPEN"||!v.closeAt),g=Ae.useCallback((v,U)=>{const F=n.find(M=>M.symbol===v);return F?parseFloat(U==="BUY"?F.bid||0:F.ask||0):0},[n]),C=Ae.useCallback(v=>{if(l)return;c(v.id);const U=g(v.symbol,v.type),M=(v.type==="BUY"?U-v.price:v.price-U)*v.volume,N=v.volume*v.price*.01;r(R=>R.filter(L=>L.id!==v.id)),o(R=>R+N+M),c(null)},[l,g,r,o]),x=v=>{const U=parseFloat(v);return!U||isNaN(U)?"-":U>=1e3?U.toFixed(2):U>=1?U.toFixed(4):U.toFixed(5)},b=v=>{const U=parseFloat(v);return isNaN(U)?"-":(U>=0?"+":"")+U.toFixed(2)};return a.jsxs("div",{style:{...et.container,...i},className:e,children:[a.jsxs("div",{style:et.header,children:[a.jsxs("span",{style:et.headerTitle,children:["Positions (",h.length,")"]}),a.jsxs("div",{style:et.summary,children:[a.jsxs("div",{style:et.summaryItem,children:[a.jsx("span",{style:et.summaryLabel,children:"Balance:"}),a.jsxs("span",{style:{...et.summaryValue,color:"#e2e8f0"},children:["$",s?.balance?.toFixed(2)||"0.00"]})]}),a.jsxs("div",{style:et.summaryItem,children:[a.jsx("span",{style:et.summaryLabel,children:"Equity:"}),a.jsxs("span",{style:{...et.summaryValue,color:(s?.equity||0)>=(s?.balance||0)?"#26A69A":"#EF5350"},children:["$",s?.equity?.toFixed(2)||"0.00"]})]}),a.jsxs("div",{style:et.summaryItem,children:[a.jsx("span",{style:et.summaryLabel,children:"Free:"}),a.jsxs("span",{style:{...et.summaryValue,color:"#94a3b8"},children:["$",s?.freeMargin?.toFixed(2)||"0.00"]})]})]})]}),a.jsx("div",{style:{...et.scrollArea,maxHeight:t},children:a.jsxs("table",{style:et.table,children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:et.th,children:"Symbol"}),a.jsx("th",{style:et.th,children:"Type"}),a.jsx("th",{style:et.th,children:"Volume"}),a.jsx("th",{style:et.th,children:"Open Price"}),a.jsx("th",{style:et.th,children:"Current"}),a.jsx("th",{style:et.th,children:"SL"}),a.jsx("th",{style:et.th,children:"TP"}),a.jsx("th",{style:et.th,children:"Profit"}),a.jsx("th",{style:et.th,children:"Action"})]})}),a.jsx("tbody",{children:h.length===0?a.jsx("tr",{children:a.jsx("td",{colSpan:9,style:et.emptyRow,children:"No open positions"})}):h.map(v=>{const U=g(v.symbol,v.type),F=v.profit||0;return a.jsxs("tr",{children:[a.jsx("td",{style:{...et.td,fontWeight:700,color:"#e2e8f0"},children:v.symbol}),a.jsx("td",{style:{...et.td,...v.type==="BUY"?et.typeBuy:et.typeSell},children:v.type}),a.jsx("td",{style:et.td,children:v.volume}),a.jsx("td",{style:et.td,children:x(v.price)}),a.jsx("td",{style:et.td,children:x(U)}),a.jsx("td",{style:et.td,children:v.stopLoss?x(v.stopLoss):"-"}),a.jsx("td",{style:et.td,children:v.takeProfit?x(v.takeProfit):"-"}),a.jsx("td",{style:{...et.td,color:F>=0?"#26A69A":"#EF5350",fontWeight:700},children:b(F)}),a.jsx("td",{style:et.td,children:a.jsx("button",{style:{...et.closeBtn,...l===v.id?{opacity:.5,cursor:"not-allowed"}:{}},onClick:()=>C(v),disabled:l===v.id,onMouseEnter:M=>{l!==v.id&&(M.currentTarget.style.backgroundColor="#991b1b")},onMouseLeave:M=>{M.currentTarget.style.backgroundColor="#7f1d1d"},children:l===v.id?"...":"Close"})})]},v.id)})})]})})]})}function cT(i){return zt({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"},child:[]}]})(i)}function hT(i){return zt({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M19 13H5v-2h14v2z"},child:[]}]})(i)}function uT(i){return zt({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"m7 10 5 5 5-5z"},child:[]}]})(i)}function dT(i){return zt({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"m7 14 5-5 5 5z"},child:[]}]})(i)}const pT=({selectedSymbol:i,selectedTimeframe:e,onTimeframeChange:t,chartType:A="candles",onChartTypeChange:r,onNewOrder:n,onZoomIn:s,onZoomOut:o,onToggleBuySell:l,onDownloadChartPNG:c,onToggleFullscreen:h,marketWatchOpen:g=!0,onToggleMarketWatch:C,buySellPanelOpen:x,onMove:b})=>{const{theme:v}=Lt(),U=v==="light",F=["M1","M5","M15","M30","H1","H4","D1","W1","MN"],M={bars:a.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),a.jsx("path",{fillRule:"evenodd",d:"M20.999 15.002H19v3a1 1 0 0 1-2.001 0V8H15a1 1 0 1 1 0-2h1.999v-3A1 1 0 1 1 19 3v10h1.999a1 1 0 0 1 0 2Zm-10.999-4H6.999v10a1 1 0 1 1-1.999 0v-3H3a1 1 0 0 1 0-2h2v-11a1 1 0 1 1 1.999 0V9H10a1 1 0 0 1 0 2Z",clipRule:"evenodd",fill:"currentColor"})]}),candles:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M9 3V9H11V18H9V21H7V18H5V9H7V3H9ZM17 3V6H19V16H17V19H15V16H13V6H15V3H17ZM17 8H15V14H17V8Z",fill:"currentColor"})}),area:a.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),a.jsx("path",{d:"m2.166 16.571 7.013-7.194c.38-.583 1.116-.273 1.707.256l4.14 2.31 5.136-6.692c.277-.425 1.853-.182 1.853-.182v13.952H2.047a7.772 7.772 0 0 1 .119-2.45Z",opacity:".2",fill:"currentColor"}),a.jsx("path",{d:"M3.027 18.011a1 1 0 0 1-.81-1.58c.81-1.128 1.5-2.154 2.113-3.065 1.938-2.887 3.22-4.795 5.234-5.042 1.607-.195 3.364.683 6.28 3.212l4.35-6.086a1 1 0 0 1 1.626 1.16l-4.994 6.99a1 1 0 0 1-1.483.16c-2.824-2.552-4.481-3.587-5.536-3.454-1.108.136-2.186 1.742-3.82 4.173-.621.927-1.323 1.971-2.148 3.117a1.001 1.001 0 0 1-.812.415Z",fill:"currentColor"})]}),line:a.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),a.jsx("path",{d:"M3.027 18.011a1 1 0 0 1-.81-1.58c.81-1.128 1.5-2.154 2.113-3.065 1.938-2.887 3.22-4.795 5.234-5.042 1.607-.195 3.364.683 6.28 3.212l4.35-6.086a1 1 0 0 1 1.626 1.16l-4.994 6.99a1 1 0 0 1-1.483.16c-2.824-2.552-4.481-3.587-5.536-3.454-1.108.136-2.186 1.742-3.82 4.173-.621.927-1.323 1.971-2.148 3.117a1.001 1.001 0 0 1-.812.415Z",fill:"currentColor"})]}),volume:a.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),a.jsx("path",{fillRule:"evenodd",d:"M19.024 17.844H19a1 1 0 0 1-1-1V13a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v3.844a1 1 0 0 1-1 1Zm-3 0H16a1 1 0 0 1-1-1v-5.845A1 1 0 0 1 16 10h.024a1 1 0 0 1 1 .999v5.845a1 1 0 0 1-1 1Zm-3 0H13a1 1 0 0 1-1-1V6.999A1 1 0 0 1 13 6h.024a1 1 0 0 1 1 .999v9.845a1 1 0 0 1-1 1Zm-3 0H10a1 1 0 0 1-1-1V12a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v4.844a1 1 0 0 1-1 1Zm-3 0H7a1 1 0 0 1-1-1V9.999A.999.999 0 0 1 7 9h.024a1 1 0 0 1 1 .999v6.845a1 1 0 0 1-1 1Zm-3 0H4a1 1 0 0 1-1-1v-2.845a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v2.845a1 1 0 0 1-1 1Z",clipRule:"evenodd",fill:"currentColor"})]}),"volume ticks":a.jsxs("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M0 0h24v24H0z",fill:"none"}),a.jsx("path",{fillRule:"evenodd",d:"M20.009 6.993h-.985v3.985a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1V6.993h-.946c-.565 0-1.023-.441-1.023-.985v-.024c0-.543.458-.984 1.023-.984h3.955c.565 0 1.023.441 1.023.984v.024c0 .544-.458.985-1.023.985Zm-3.985 6.14v5.845a1 1 0 0 1-1 1H15a1 1 0 0 1-1-1v-5.845a1 1 0 0 1 1-.999h.024a1 1 0 0 1 1 .999Zm-4 6.845H12a1 1 0 0 1-1-1V9.133a1 1 0 0 1 1-.999h.024a1 1 0 0 1 1 .999v9.845a1 1 0 0 1-1 1Zm-3 0H9a1 1 0 0 1-1-1v-4.844a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v4.844a1 1 0 0 1-1 1Zm-3 0H6a1 1 0 0 1-1-1v-6.845a.998.998 0 0 1 1-.999h.024a1 1 0 0 1 1 .999v6.845a1 1 0 0 1-1 1Zm-3 0H3a1 1 0 0 1-1-1v-2.845a1 1 0 0 1 1-1h.024a1 1 0 0 1 1 1v2.845a1 1 0 0 1-1 1ZM18 14.134h.024a1 1 0 0 1 1 1v3.844a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-3.844a1 1 0 0 1 1-1Z",clipRule:"evenodd",fill:"currentColor"})]})};return a.jsxs("div",{className:`flex items-center justify-between px-4 py-1 border-b min-w-max ${U?"bg-white border-slate-200":"bg-[#12161d] border-slate-700"}`,children:[a.jsxs("div",{className:"flex items-center gap-4",children:[a.jsx("div",{className:`flex items-center gap-1 border-r pr-3 ${U?"border-slate-200":"border-slate-700"}`,children:["bars","candles","line","area"].map(N=>a.jsx("button",{onClick:()=>r(N),className:`px-1 py-1.5 text-[11px] font-medium rounded transition-colors capitalize flex items-center gap-1.5
|
|
13
|
+
${A===N?U?"text-sky-600":"text-sky-400":U?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-white hover:text-slate-200 hover:bg-slate-800"}
|
|
14
|
+
`,title:N,children:M[N]},N))}),a.jsx("div",{className:`flex items-center gap-1 border-r ${U?"border-slate-200":"border-slate-700"} pr-1`,children:["volume ticks","volume"].map(N=>a.jsx("button",{onClick:()=>r(N),className:`px-1 py-1.5 text-[11px] font-medium rounded transition-colors capitalize flex items-center gap-1.5
|
|
15
|
+
${A===N?U?"text-sky-600":"text-sky-400":U?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-white hover:text-slate-200 hover:bg-slate-800"}
|
|
16
|
+
`,title:N,children:M[N]},N))}),a.jsxs("div",{className:"flex items-center gap-2",children:[F.map(N=>a.jsx("button",{onClick:()=>t(N),className:`px-1.5 py-2 text-sm font-medium rounded transition-colors ${e===N?U?"text-sky-600":"text-sky-400":U?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-white hover:text-slate-200 hover:bg-slate-800"}`,children:N},N)),a.jsx("div",{className:`border-r h-6 mx-1 ${U?"border-slate-200":"border-slate-700"}`}),a.jsx("button",{onClick:()=>l?.(),title:x?"Hide Buy/Sell on Chart":"Show Buy/Sell on Chart",className:`px-2 py-2 flex justify-center items-center rounded transition-colors ${x?U?"text-sky-600 bg-sky-50 hover:bg-[#E5F4FF]":"text-sky-400 bg-slate-700 hover:bg-[#25303C]":U?"text-slate-600 hover:text-sky-600 hover:bg-[#E5F4FF]":"text-slate-200 hover:bg-[#25303C]"}`,children:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",children:a.jsxs("g",{fill:"none",fillRule:"evenodd",children:[a.jsx("path",{fill:"#DA5244",d:"M11.5 5v4H9c-1.054 0-1.918.816-1.995 1.85L7 11v2c0 1.105.895 2 2 2h2.5v4H4c-1.105 0-2-.895-2-2V7c0-1.105.895-2 2-2h7.5z"}),a.jsx("path",{fill:"#3687ED",d:"M20 5c1.105 0 2 .895 2 2v10c0 1.105-.895 2-2 2h-7.5v-4H15c1.054 0 1.918-.816 1.995-1.85L17 13v-2c0-1.105-.895-2-2-2h-2.5V5H20z"}),a.jsx("path",{fill:"#B0BEC5",d:"M10 10h4c1.105 0 2 .895 2 2s-.895 2-2 2h-4c-1.105 0-2-.895-2-2s.895-2 2-2z"})]})})}),a.jsxs("button",{onClick:n,className:`px-2 py-2 flex justify-center items-center gap-1 cursor-pointer text-xs font-medium rounded transition-colors ${U?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-white hover:bg-[#25303C]"}`,children:[a.jsx("svg",{width:24,height:24,viewBox:"0 0 24 24 ",xmlns:"http://www.w3.org/2000/svg",children:a.jsxs("g",{fill:"none",fillRule:"evenodd",children:[a.jsx("path",{fill:"#DA5244",d:"M11.5 4v2.02C8.42 6.276 6 8.856 6 12c0 3.145 2.42 5.725 5.5 5.98V20H10c-4.418 0-8-3.582-8-8s3.582-8 8-8h1.5z"}),a.jsx("path",{fill:"#3687ED",d:"M14 4c4.418 0 8 3.582 8 8s-3.582 8-8 8h-1.5v-2.02c3.08-.256 5.5-2.836 5.5-5.98 0-3.145-2.42-5.725-5.5-5.98V4H14z"}),a.jsx("path",{fill:"#B0BEC5",d:"M13 8v4.186l2.657 2.657-1.414 1.414L11 13V8z"})]})}),a.jsx("span",{className:"button-text svelte-1iwf8ix",children:"New Order"})]}),a.jsx("div",{className:`border-r ${U?"border-slate-200":"border-slate-700"} h-6 mx-1`}),a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx("button",{onClick:s,className:`p-1 ${U?"text-slate-700 hover:bg-[#E5F4FF]":"text-white hover:bg-slate-800"} rounded transition-colors`,title:"Zoom In",children:a.jsx(cT,{className:"w-5 h-5"})}),a.jsx("button",{onClick:o,className:`p-2 ${U?"text-slate-700 hover:bg-[#E5F4FF]":"text-white hover:bg-slate-800"} rounded transition-colors`,title:"Zoom Out",children:a.jsx(hT,{className:"w-5 h-5"})}),a.jsx("div",{className:`border-r ${U?"border-slate-200":"border-slate-700"} h-6 mx-1`}),a.jsx("button",{onClick:b,className:`px-2 py-2 flex justify-center items-center gap-1 cursor-pointer text-xs font-medium rounded transition-colors ${U?"text-slate-700 hover:text-slate-900 hover:bg-[#E5F4FF]":"text-slate-200 hover:bg-[#25303C]"}`,children:a.jsx("svg",{width:24,height:24,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:a.jsx("path",{fillRule:"evenodd",d:"M9 4V5H15V4H17V5H19C20.1046 5 21 5.89543 21 7V18C21 19.1046 20.1046 20 19 20H5C3.89543 20 3 19.1046 3 18V7C3 5.89543 3.89543 5 5 5H7V4H9ZM7 7H6C5.44772 7 5 7.44772 5 8V17C5 17.5523 5.44772 18 6 18H18C18.5523 18 19 17.5523 19 17V8C19 7.44772 18.5523 7 18 7H17V8H15V7H9V8H7V7ZM13 14V16H11V14H13ZM9 14V16H7V14H9ZM17 14V16H15V14H17ZM13 10V12H11V10H13ZM17 10V12H15V10H17Z",clipRule:"evenodd"})})}),a.jsx("div",{className:`border-r ${U?"border-slate-200":"border-slate-700"} h-6 mx-1`}),a.jsx("button",{type:"button",onClick:()=>C?.(),title:g?"Close Market Watch":"Open Market Watch",className:`px-2 py-2 flex justify-center items-center gap-1 cursor-pointer text-xs font-medium rounded transition-colors ${g?U?"text-sky-600 bg-sky-50 hover:bg-[#E5F4FF]":"text-sky-400 bg-slate-700 hover:bg-[#25303C]":U?"text-slate-600 hover:text-sky-600 hover:bg-[#E5F4FF]":"text-slate-200 hover:bg-[#25303C]"}`,children:a.jsxs("svg",{width:24,height:24,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",children:[a.jsx("path",{d:"M15 7H7v2h8V7ZM7 15h5v2H7v-2ZM17 11H7v2h10v-2Z"}),a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14Zm-1 2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h12Z"})]})})]})]})]}),a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx("button",{type:"button",onClick:()=>c?.(),title:"Download chart as PNG",className:`p-2 rounded transition-colors ${U?"text-slate-500 hover:text-slate-800 hover:bg-slate-100":"text-slate-300 hover:text-white hover:bg-slate-800"}`,children:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",className:"inline-block",fill:"currentColor",children:a.jsx("path",{d:"M22 10a1 1 0 1 1 0-2 1 1 0 0 1 0 2Zm0-4a1 1 0 0 1-1-1V4h-1a1 1 0 1 1 0-2h1a2 2 0 0 1 2 2v1a1 1 0 0 1-1 1Zm1 7v8a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-8l3.764-1s.45-.428.789-1.105l.171-.342a.998.998 0 0 1 .894-.553h4.764a1 1 0 0 1 .894.552l.171.342c.339.678.789 1.106.789 1.106L23 13Zm-8 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6Zm0 4.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3ZM16 4h-2a1 1 0 1 1 0-2h2a1 1 0 1 1 0 2Zm-6 0H8a1 1 0 0 1 0-2h2a1 1 0 1 1 0 2ZM4 22H3a2 2 0 0 1-2-2v-1a1 1 0 1 1 2 0v1h1a1 1 0 1 1 0 2ZM4 4H3v1a1 1 0 0 1-2 0V4a2 2 0 0 1 2-2h1a1 1 0 0 1 0 2ZM2 8a1 1 0 0 1 1 1v1a1 1 0 1 1-2 0V9a1 1 0 0 1 1-1Zm0 5a1 1 0 0 1 1 1v1a1 1 0 1 1-2 0v-1a1 1 0 0 1 1-1Z"})})}),a.jsx("button",{type:"button",onClick:()=>h?.(),title:"Full screen (F11)",className:`p-2 rounded transition-colors ${U?"text-slate-600 hover:text-slate-800 hover:bg-slate-100":"text-slate-300 hover:text-white hover:bg-slate-800"}`,children:a.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"})})})]})]})},Er=[{label:"Trendline",toolId:2,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),a.jsx("path",{fillRule:"evenodd",d:"M19.054 7.988a2.988 2.988 0 0 1-1.31-.312l-10 10a3.027 3.027 0 1 1-1.38-1.381l10-10a2.994 2.994 0 1 1 2.69 1.693Zm-14 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm14-14a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})]})},{label:"Horizontal Line",toolId:20,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M4 12h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("circle",{cx:"4",cy:"12",r:"1.5",fill:"currentColor"}),a.jsx("circle",{cx:"20",cy:"12",r:"1.5",fill:"currentColor"})]})},{label:"Horizontal Ray",toolId:21,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M4 12h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("circle",{cx:"4",cy:"12",r:"1.5",fill:"currentColor"}),a.jsx("path",{d:"M19 9l3 3-3 3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})]})},{label:"Vertical Line",toolId:22,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M12 4v16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("circle",{cx:"12",cy:"4",r:"1.5",fill:"currentColor"}),a.jsx("circle",{cx:"12",cy:"20",r:"1.5",fill:"currentColor"})]})},{label:"Info Line",toolId:23,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{fillRule:"evenodd",d:"M19.054 7.988a2.988 2.988 0 0 1-1.31-.312l-10 10a3.027 3.027 0 1 1-1.38-1.381l10-10a2.994 2.994 0 1 1 2.69 1.693Zm-14 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm14-14a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"}),a.jsx("rect",{x:"10",y:"5",width:"7",height:"5",rx:"1",fill:"currentColor",opacity:"0.5"}),a.jsx("text",{x:"11",y:"9",fontSize:"4",fill:"white",fontWeight:"bold",children:"i"})]})},{label:"Ruler Line",toolId:24,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",children:[a.jsx("line",{x1:"4",y1:"20",x2:"20",y2:"4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),a.jsx("rect",{x:"7",y:"7",width:"10",height:"5",rx:"1",transform:"rotate(-45 12 12)",stroke:"currentColor",strokeWidth:"1.3",fill:"none"}),a.jsx("line",{x1:"10.5",y1:"13.5",x2:"12",y2:"12",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"}),a.jsx("line",{x1:"12.5",y1:"11.5",x2:"14",y2:"10",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round"}),a.jsx("circle",{cx:"4.5",cy:"19.5",r:"1.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),a.jsx("circle",{cx:"19.5",cy:"4.5",r:"1.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"})]})},{label:"Arrowed Line",toolId:25,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{fillRule:"evenodd",d:"M5.054 17.988a2.988 2.988 0 0 1-1.31-.312 2.994 2.994 0 1 1 2.69 1.693 2.988 2.988 0 0 1-1.38-.381Zm-1 2a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"}),a.jsx("path",{d:"M6 18L18 6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M14 6h4v4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})]})},{label:"Ray",toolId:26,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("circle",{cx:"5",cy:"19",r:"2",fill:"currentColor"}),a.jsx("path",{d:"M6.4 17.6L19 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M16 5h3v3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})]})},{label:"Extended Line",toolId:27,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M2 19L22 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"3 0 3"}),a.jsx("circle",{cx:"8",cy:"15",r:"1.5",fill:"currentColor"}),a.jsx("circle",{cx:"16",cy:"9",r:"1.5",fill:"currentColor"})]})},{label:"Cross Line",toolId:28,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M12 4v16M4 12h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("circle",{cx:"12",cy:"12",r:"2",fill:"currentColor"})]})},{label:"Trend By Angle",toolId:29,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M5 19L19 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M5 19h6",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),a.jsx("path",{d:"M5 13a6 6 0 0 1 0 6",stroke:"currentColor",strokeWidth:"1.5",fill:"none"})]})},{label:"Disjoint Channel",toolId:30,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M3 17L9 11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M9 17L15 11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M15 17L21 11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M3 14L21 14",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round",strokeDasharray:"2 2"})]})},{label:"Flat Top/Bottom",toolId:31,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{d:"M4 8h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M4 16h16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M8 8v8M16 8v8",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeDasharray:"2 2"})]})}],Lr=[{label:"Regression Channel",toolId:40,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"m2.285 10.333 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382Zm10 10 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382ZM19 8a2.966 2.966 0 0 1-1.308-.312l-10 10c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l10-10A2.993 2.993 0 1 1 19 8ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM19 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Equidistant Channel",toolId:3,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"M15 8a2.966 2.966 0 0 1-1.308-.312l-6 6c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l6-6A2.992 2.992 0 1 1 15 8ZM5 14a1 1 0 1 0 0 2.001A1 1 0 0 0 5 14ZM15 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm6.714 6.666-7.026 7.026a3.03 3.03 0 1 1-1.381-1.381l7.026-7.026a.977.977 0 1 1 1.381 1.381ZM12 18a1 1 0 1 0 0 2.001A1 1 0 0 0 12 18Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"StdDev Channel",toolId:41,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"m2.285 10.333 8.048-8.048a.977.977 0 0 1 1.382 1.381l-8.049 8.049a.977.977 0 0 1-1.381-1.382ZM10 15H9v4a1 1 0 1 1-2 0v-1H6a1 1 0 0 1 0-2h1v-4a1 1 0 1 1 2 0v1h1a1 1 0 0 1 0 2Zm7-7h-1v4a1 1 0 0 1-2 0v-1h-1a1 1 0 0 1 0-2h1V5a1 1 0 1 1 2 0v1h1a1 1 0 0 1 0 2Zm-4.714 12.333 8.048-8.048a.977.977 0 0 1 1.382 1.381l-8.049 8.049a.977.977 0 0 1-1.382-1.382h.001Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Andrews Pitchfork",toolId:42,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"m21.714 13.666-4.026 4.026c.203.406.31.854.312 1.308a3 3 0 0 1-6 0c.002-.454.11-.902.312-1.308L10 15.381l-2.312 2.311a3.03 3.03 0 1 1-1.381-1.381L8.619 14l-2.311-2.312a3 3 0 1 1-.001-5.377l4.026-4.026a.976.976 0 1 1 1.381 1.381L7.688 7.692a2.9 2.9 0 0 1 0 2.615L10 12.619l8.333-8.334a.976.976 0 1 1 1.381 1.381L11.381 14l2.312 2.312a2.9 2.9 0 0 1 2.614 0l4.026-4.026a.977.977 0 1 1 1.381 1.38ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM5 8a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm10 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})}],Mr=[{label:"Gann Line",toolId:43,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"M19 8a2.966 2.966 0 0 1-1.308-.312l-3 3c.202.408.307.857.308 1.312a3 3 0 0 1-3 3 2.965 2.965 0 0 1-1.308-.312l-3 3c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l3-3a2.98 2.98 0 0 1 4-4l3-3A2.992 2.992 0 1 1 19 8ZM5 18a1 1 0 1 0 0 2.001A1 1 0 0 0 5 18Zm7-7a1 1 0 1 0 0 2.001A1 1 0 0 0 12 11Zm7-7a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Gann Fan",toolId:44,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"M21.72 3.584 17.694 7.61c.202.407.31.854.312 1.308a3 3 0 0 1-3 3 2.967 2.967 0 0 1-1.308-.312l-4.45 4.45 10.109-4.042a.987.987 0 0 1 .834 1.79L8.167 18.61l7.75-.7a1.004 1.004 0 1 1 .18 2l-8.684.79a2.992 2.992 0 1 1-4.2-4.164l.794-8.7a1.004 1.004 0 1 1 2 .181L5.3 15.765 9.673 4.591a.969.969 0 0 1 1.3-.48 1 1 0 0 1 .47 1.32L7.79 14.77l4.538-4.538a2.98 2.98 0 0 1 4-4l4.026-4.026a.977.977 0 0 1 1.367 1.377ZM5.006 19.918a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm10-12a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})},{label:"Gann Grid",toolId:45,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",d:"M19 8a2.966 2.966 0 0 1-1.308-.312l-.5.5L21 12l-3.809 3.809.5.5a3.034 3.034 0 1 1-1.381 1.381l-.5-.5L12 21l-3.809-3.809-.5.5c.202.407.308.855.309 1.309a3.03 3.03 0 1 1-1.693-2.689l.5-.5L3 12l3.81-3.81-.5-.5A2.966 2.966 0 0 1 5 8a3.031 3.031 0 1 1 2.689-1.693l.5.5L12 3l3.809 3.81.5-.5A2.993 2.993 0 1 1 19 8Zm0 12a1 1 0 1 0 0-2.002A1 1 0 0 0 19 20ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM5 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm7 14.452 2.536-2.536L12 13.381l-2.536 2.535L12 18.452ZM5.547 12l2.536 2.535L10.619 12 8.083 9.464 5.547 12ZM12 5.547 9.464 8.083 12 10.619l2.535-2.536L12 5.547Zm3.916 3.917L13.381 12l2.536 2.535L18.452 12l-2.536-2.536ZM19 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})})}],Hr=[{label:"Rectangle",toolId:5,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{d:"M3 6C3 7.30622 3.83481 8.41746 5 8.82929V15.1707C3.83481 15.5825 3 16.6938 3 18C3 19.6569 4.34315 21 6 21C7.30622 21 8.41746 20.1652 8.82929 19H15.1707C15.5825 20.1652 16.6938 21 18 21C19.6569 21 21 19.6569 21 18C21 16.6938 20.1652 15.5825 19 15.1707V8.82929C20.1652 8.41746 21 7.30622 21 6C21 4.34315 19.6569 3 18 3C16.6938 3 15.5825 3.83481 15.1707 5H8.82929C8.41746 3.83481 7.30622 3 6 3C4.34315 3 3 4.34315 3 6ZM6 7C6.55228 7 7 6.55228 7 6C7 5.44772 6.55228 5 6 5C5.44772 5 5 5.44772 5 6C5 6.55228 5.44772 7 6 7ZM17 15.1707V8.82929C16.1476 8.52801 15.472 7.85242 15.1707 7H8.82929C8.52801 7.85241 7.85241 8.52801 7 8.82929V15.1707C7.85241 15.472 8.52801 16.1476 8.82929 17H15.1707C15.472 16.1476 16.1476 15.472 17 15.1707ZM18 7C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5C17.4477 5 17 5.44772 17 6C17 6.55228 17.4477 7 18 7ZM7 18C7 18.5523 6.55228 19 6 19C5.44772 19 5 18.5523 5 18C5 17.4477 5.44772 17 6 17C6.55228 17 7 17.4477 7 18ZM19 18C19 18.5523 18.5523 19 18 19C17.4477 19 17 18.5523 17 18C17 17.4477 17.4477 17 18 17C18.5523 17 19 17.4477 19 18Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})},{label:"Circle",toolId:46,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M22 12C22 10.2504 21.5507 8.60571 20.7611 7.17509C20.9149 6.81421 21 6.41704 21 6C21 4.34315 19.6569 3 18 3C17.583 3 17.1858 3.0851 16.8249 3.23888C15.3943 2.44933 13.7496 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12ZM12 20C16.4183 20 20 16.4183 20 12C20 10.8264 19.7473 9.7118 19.2933 8.70768C18.9017 8.89507 18.4631 9 18 9C17.5369 9 17.0983 8.89506 16.7066 8.70766L14.7077 10.7066C14.8951 11.0983 15 11.5369 15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C12.4632 9 12.9018 9.10496 13.2935 9.2924L15.2924 7.29348C15.105 6.90183 15 6.46317 15 6C15 5.5369 15.1049 5.09831 15.2923 4.7067C14.2882 4.25272 13.1736 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20ZM13 12C13 12.5523 12.5523 13 12 13C11.4477 13 11 12.5523 11 12C11 11.4477 11.4477 11 12 11C12.5523 11 13 11.4477 13 12ZM18 7C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5C17.4477 5 17 5.44772 17 6C17 6.55228 17.4477 7 18 7Z",fill:"currentColor"})})},{label:"Triangle",toolId:47,icon:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:[a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15 6C15 7.65685 13.6569 9 12 9C11.763 9 11.5324 8.97252 11.3113 8.92057L7.37081 16.1613C6.95686 15.6284 6.36717 15.2388 5.68872 15.0794L9.62925 7.83858C9.23484 7.33074 9 6.6928 9 6C9 4.34315 10.3431 3 12 3C13.6569 3 15 4.34315 15 6ZM13 6C13 6.55228 12.5523 7 12 7C11.4477 7 11 6.55228 11 6C11 5.44772 11.4477 5 12 5C12.5523 5 13 5.44772 13 6Z",fill:"currentColor"}),a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.3708 7.83867C13.9569 8.37162 13.3672 8.76126 12.6887 8.9206L16.6292 16.1614C16.4344 16.4122 16.2786 16.6948 16.1707 17H7.82941C7.93996 17.3128 8.00012 17.6494 8.00012 18C8.00012 18.3506 7.93996 18.6872 7.8294 19H16.1707C16.5826 20.1652 17.6938 21 19 21C20.6569 21 22 19.6569 22 18C22 16.3431 20.6569 15 19 15C18.763 15 18.5324 15.0275 18.3113 15.0794L14.3708 7.83867ZM19 19C19.5523 19 20 18.5523 20 18C20 17.4477 19.5523 17 19 17C18.4477 17 18 17.4477 18 18C18 18.5523 18.4477 19 19 19Z",fill:"currentColor"}),a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.00012 18C8.00012 19.6569 6.65685 21 5 21C3.34315 21 2 19.6569 2 18C2 16.3431 3.34315 15 5 15C6.65685 15 8.00012 16.3431 8.00012 18ZM6 18C6 18.5523 5.55228 19 5 19C4.44772 19 4 18.5523 4 18C4 17.4477 4.44772 17 5 17C5.55228 17 6 17.4477 6 18Z",fill:"currentColor"})]})},{label:"Ellipse",toolId:48,icon:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3a3.001 3.001 0 0 0-2.935 2.378c-1.25.333-2.381.874-3.322 1.58a7.344 7.344 0 0 0-1.886 2.045 3 3 0 0 0 0 5.994 7.343 7.343 0 0 0 1.886 2.046C7.38 18.27 9.595 19 12 19s4.62-.73 6.257-1.957a7.343 7.343 0 0 0 1.886-2.046 3 3 0 0 0 0-5.994 7.344 7.344 0 0 0-1.886-2.046c-.94-.705-2.073-1.246-3.322-1.579A3.001 3.001 0 0 0 12 3Zm-1 3a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm7.156 3.634a5.584 5.584 0 0 0-1.1-1.077 7.61 7.61 0 0 0-2.391-1.177 3 3 0 0 1-5.33 0 7.61 7.61 0 0 0-2.392 1.177c-.437.328-.805.69-1.099 1.076A2.995 2.995 0 0 1 7 12c0 .962-.452 1.818-1.156 2.367.294.386.662.748 1.1 1.076C8.201 16.387 9.985 17 12 17c2.014 0 3.798-.613 5.057-1.557.437-.328.805-.69 1.099-1.077A2.995 2.995 0 0 1 17 12c0-.961.452-1.817 1.156-2.366ZM3 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0Zm16 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z",fill:"currentColor"})})}],ws=({children:i,top:e,panelRef:t,isLight:A})=>a.jsx("div",{ref:t,className:`absolute left-12 z-50 w-56 border shadow-2xl overflow-visible ${A?"bg-white border-slate-200":"bg-[#262F3F] border-white/10"}`,style:{top:e},children:a.jsx("div",{className:"py-1",children:i})}),fT=({AccountId:i,UserName:e,UserId:t})=>{const{activeTool:A,setActiveTool:r,showGrid:n,setShowGrid:s,snapToGrid:o,setSnapToGrid:l,chartObjects:c,setChartObjects:h,drawingsVisible:g,setDrawingsVisible:C,chartLocked:x,setChartLocked:b,theme:v,setTheme:U,setIsShow:F}=Lt(),[M,N]=Ae.useState(!1),[R,L]=Ae.useState(null),[z,q]=Ae.useState(null),[$,V]=Ae.useState(0),[j,te]=Ae.useState(!1),[ce,X]=Ae.useState(0),[ee,se]=Ae.useState(!1),[le,ne]=Ae.useState(0),[he,de]=Ae.useState(!1),[we,xe]=Ae.useState(0),[Ue,ye]=Ae.useState(!1),[ve,be]=Ae.useState({chart:"Grid",colors:"Green & Red",lang:"English"}),Ee=Ae.useRef(null),Ie=Ae.useRef(null),Ze=Ae.useRef(null),ze=Ae.useRef(null),Ce=Ae.useRef(null),Ne=Ae.useRef(null);Ae.useEffect(()=>{const ke=me=>{const ge=Ee.current;M&&ge&&!ge.contains(me.target)&&(N(!1),L(null));const Me=Ie.current;z==="line"&&Me&&!Me.contains(me.target)&&q(null);const _e=Ze.current;z==="channel"&&_e&&!_e.contains(me.target)&&q(null);const Qe=ze.current;z==="gann"&&Qe&&!Qe.contains(me.target)&&q(null);const Ke=Ce.current;z==="shape"&&Ke&&!Ke.contains(me.target)&&q(null)};return window.addEventListener("mousedown",ke),()=>window.removeEventListener("mousedown",ke)},[M,z]),Ae.useEffect(()=>{const ke=me=>{me.key==="Escape"&&(N(!1),L(null),q(null))};return window.addEventListener("keydown",ke),()=>window.removeEventListener("keydown",ke)},[]);const Se=Ae.useMemo(()=>[{icon:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M0 0h24v24H0z",fill:"none"}),a.jsx("path",{d:"M3 18H21V16H3V18ZM3 13H21V11H3V13ZM3 6V8H21V6H3Z",fill:"currentColor"})]})}),label:"Menu",description:"Opens/closes navigation menu"},{icon:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M12 13C12.5523 13 13 12.5523 13 12C13 11.4477 12.5523 11 12 11C11.4477 11 11 11.4477 11 12C11 12.5523 11.4477 13 12 13Z",fill:"currentColor"}),a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M20 13H15.874C15.5122 14.4056 14.4056 15.5122 13 15.874V20C13 20.2652 12.8946 20.5196 12.7071 20.7071C12.5196 20.8946 12.2652 21 12 21C11.7348 21 11.4804 20.8946 11.2929 20.7071C11.1054 20.5196 11 20.2652 11 20V15.874C9.59439 15.5122 8.4878 14.4056 8.12602 13H4C3.73478 13 3.48043 12.8946 3.29289 12.7071C3.10536 12.5196 3 12.2652 3 12C3 11.7348 3.10536 11.4804 3.29289 11.2929C3.48043 11.1054 3.73478 11 4 11H8.12602C8.4878 9.59439 9.59439 8.4878 11 8.12602V4C11 3.73478 11.1054 3.48043 11.2929 3.29289C11.4804 3.10536 11.7348 3 12 3C12.2652 3 12.5196 3.10536 12.7071 3.29289C12.8946 3.48043 13 3.73478 13 4V8.12602C14.4056 8.4878 15.5122 9.59439 15.874 11H20C20.2652 11 20.5196 11.1054 20.7071 11.2929C20.8946 11.4804 21 11.7348 21 12C21 12.2652 20.8946 12.5196 20.7071 12.7071C20.5196 12.8946 20.2652 13 20 13ZM12 10C10.8954 10 10 10.8954 10 12C10 13.1046 10.8954 14 12 14C13.1046 14 14 13.1046 14 12C14 10.8954 13.1046 10 12 10Z",fill:"currentColor"})]})}),label:"Crosshair",description:"Precise cursor positioning for measurement on chart"},{icon:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",children:[a.jsx("path",{fill:"none",d:"M0 0h24v24H0z"}),a.jsx("path",{fillRule:"evenodd",d:"M19.054 7.988a2.988 2.988 0 0 1-1.31-.312l-10 10a3.027 3.027 0 1 1-1.38-1.381l10-10a2.994 2.994 0 1 1 2.69 1.693Zm-14 10a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm14-14a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",clipRule:"evenodd",fill:"currentColor"})]})}),label:"Trend Line",description:"Draw trend line (drag from first point to second point)"},{icon:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsx("svg",{width:"20",height:"20",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"m2.285 10.333 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382Zm10 10 8.048-8.048a.977.977 0 1 1 1.381 1.381l-8.048 8.049a.977.977 0 0 1-1.381-1.382ZM19 8a2.966 2.966 0 0 1-1.308-.312l-10 10c.202.408.307.857.308 1.312a3.03 3.03 0 1 1-1.693-2.689l10-10A2.993 2.993 0 1 1 19 8ZM5 18a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM19 4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})}),label:"Parallel Lines",description:"Draw two parallel trend lines (draw first line, then second)"},{icon:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"22",height:"22",children:a.jsx("path",{d:"M21 15H3a1 1 0 0 1 0-2h18a1 1 0 0 1 0 2Zm-2-3a2.99 2.99 0 0 1-2.816-2H3a1 1 0 0 1 0-2h13.184A2.995 2.995 0 1 1 19 12Zm0-4a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm2-3H3a1 1 0 0 1 0-2h18a1 1 0 1 1 0 2ZM5 16a2.99 2.99 0 0 1 2.816 2H21a1 1 0 0 1 0 2H7.816A2.995 2.995 0 1 1 5 16Zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})}),label:"Fibonacci",description:"Draw Fibonacci retracement levels"},{icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsx("svg",{width:"20",height:"20",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M3 6C3 7.30622 3.83481 8.41746 5 8.82929V15.1707C3.83481 15.5825 3 16.6938 3 18C3 19.6569 4.34315 21 6 21C7.30622 21 8.41746 20.1652 8.82929 19H15.1707C15.5825 20.1652 16.6938 21 18 21C19.6569 21 21 19.6569 21 18C21 16.6938 20.1652 15.5825 19 15.1707V8.82929C20.1652 8.41746 21 7.30622 21 6C21 4.34315 19.6569 3 18 3C16.6938 3 15.5825 3.83481 15.1707 5H8.82929C8.41746 3.83481 7.30622 3 6 3C4.34315 3 3 4.34315 3 6ZM6 7C6.55228 7 7 6.55228 7 6C7 5.44772 6.55228 5 6 5C5.44772 5 5 5.44772 5 6C5 6.55228 5.44772 7 6 7ZM17 15.1707V8.82929C16.1476 8.52801 15.472 7.85242 15.1707 7H8.82929C8.52801 7.85241 7.85241 8.52801 7 8.82929V15.1707C7.85241 15.472 8.52801 16.1476 8.82929 17H15.1707C15.472 16.1476 16.1476 15.472 17 15.1707ZM18 7C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5C17.4477 5 17 5.44772 17 6C17 6.55228 17.4477 7 18 7ZM7 18C7 18.5523 6.55228 19 6 19C5.44772 19 5 18.5523 5 18C5 17.4477 5.44772 17 6 17C6.55228 17 7 17.4477 7 18ZM19 18C19 18.5523 18.5523 19 18 19C17.4477 19 17 18.5523 17 18C17 17.4477 17.4477 17 18 17C18.5523 17 19 17.4477 19 18Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})})}),label:"Rectangle",description:"Draw support/resistance zone (drag from corner to corner)"},{icon:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20 4V8H18V6H13V18H16V20H8V18H11V6H6V8H4V4H20Z",fill:"currentColor"})})}),label:"Text",description:"Add text label on chart"},{icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsx("svg",{width:"24",height:"24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M12.76 17.958c-.504.07-1.016.07-1.52 0C6.07 17.532 2 12.932 2 12c0-.977 4.48-6 10-6s10 5.043 10 6c0 .912-4.07 5.529-9.24 5.958ZM3.63 12a11.724 11.724 0 0 0 3.03 2.741 5.963 5.963 0 0 1 .02-5.492A11.7 11.7 0 0 0 3.63 12ZM12 7.57a4.443 4.443 0 1 0-.006 8.886A4.443 4.443 0 0 0 12 7.57Zm5.31 1.652a5.954 5.954 0 0 1 .01 5.546A11.45 11.45 0 0 0 20.37 12a11.525 11.525 0 0 0-3.06-2.778ZM12 14a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})})}),label:"Eye",description:"Show or hide all drawing objects on chart"},{icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)",cursor:"pointer"},children:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",children:a.jsx("path",{d:"M16 20H8a2 2 0 0 1-2-2v-7a2 2 0 0 1 1.05-1.749A1.044 1.044 0 0 1 7 9a5 5 0 0 1 8.75-3.3 1.008 1.008 0 0 1-.09 1.411 1 1 0 0 1-1.41-.09A3 3 0 0 0 9 9h7a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2Zm0-9H8v7h8v-7Zm-4 2a1 1 0 0 1 1 1v1a1 1 0 0 1-2 0v-1a1 1 0 0 1 1-1Z",fillRule:"evenodd",clipRule:"evenodd",fill:"currentColor"})})})}),label:"Lock",description:"Lock chart (disable pan and zoom)"},{icon:a.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})}),label:"Delete",description:"Remove last drawn object from chart"},{icon:a.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16M6 4v16M12 4v16M18 4v16"})}),label:"Grid",description:"Toggle grid display on/off for chart alignment"},{icon:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{fill:"currentColor",d:"M12 2C17.523 2 22 6.477 22 12C22 17.523 17.523 22 12 22C9.068 22 6.43 20.738 4.602 18.728L6.081 17.382C7.544 18.99 9.654 20 12 20C16.418 20 20 16.418 20 12C20 7.582 16.418 4 12 4C7.92 4 4.554 7.054 4.062 11H5.828L3 13.828L0.171997 11H2.049C2.551 5.947 6.815 2 12 2ZM13 7V12.186L16.657 15.843L15.243 17.257L11 13V7H13Z"})}),label:"History",description:"View trade history"},{icon:a.jsxs("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[a.jsx("rect",{x:"3",y:"3",width:"8",height:"8",strokeWidth:2}),a.jsx("rect",{x:"13",y:"3",width:"8",height:"8",strokeWidth:2}),a.jsx("rect",{x:"3",y:"13",width:"8",height:"8",strokeWidth:2}),a.jsx("rect",{x:"13",y:"13",width:"8",height:"8",strokeWidth:2})]}),label:"Layout",description:"Manage chart layouts and panel arrangements"}],[]),fe=ke=>{const me=Se[ke].label;if(me==="Menu"){N(ge=>!ge),L(null);return}if(me==="Grid"){s(!n);return}if(me==="Magnet"){l(!o),r(o?null:ke);return}if(me==="Delete"){if(c.length>0){const ge=[...c];ge.pop(),h(ge)}return}if(me==="Eye"){C(!g);return}if(me==="Lock"){b(!x);return}if(me==="Light Theme"||me==="Dark Theme"){U(v==="light"?"dark":"light"),N(!1),L(null);return}if(me==="History"){F(!0);return}r(A===ke?null:ke)};Se.slice(0,12);const Pe=Se.slice(12),Je=[0,1,2,3,"gann",5,4,6,7,8,9,10,11],it=[{key:"accounts",label:"Trading accounts",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",children:a.jsx("path",{d:"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 14a6 6 0 0 0-5 2 8 8 0 0 0 5 2l5-2a6 6 0 0 0-5-2zm0-12a8 8 0 0 0-6 13 8 8 0 0 1 6-3 8 8 0 0 1 6 3 8 8 0 0 0-6-13zm0 2a4 4 0 1 1 0 8 4 4 0 0 1 0-8zm0 2a2 2 0 1 0 0 4 2 2 0 0 0 0-4z",fill:"currentColor"})})})}),submenu:[{label:"Connect to account",icon:a.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Open Demo account",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{fill:"#CDFDDA",fillRule:"evenodd",d:"M14.5 13.103c1.836 0 3.667.723 5.5 2.14V19l-10.5.5-.5-4.257c1.833-1.417 3.664-2.14 5.5-2.14Z","clip-rule":"evenodd"}),a.jsx("path",{fill:"#00AC00",fillRule:"evenodd",d:"M9.53 15.469 9.5 19l10-.477v-3.032c-1.703-1.27-3.365-1.888-5-1.888-1.626 0-3.277.611-4.97 1.866Zm-.836-.622c1.895-1.465 3.83-2.244 5.806-2.244 1.975 0 3.91.78 5.806 2.244l.194.15v4.48l-12.03.545V15.02l.224-.173Z","clip-rule":"evenodd"}),a.jsx("path",{fill:"#CDFDDA",fillRule:"evenodd",d:"m7.736 13.701-.734 2.345L7.001 20H4.5a1 1 0 0 1-1-1v-4c1.412-.669 2.824-1.102 4.236-1.299Z","clip-rule":"evenodd"}),a.jsx("path",{fill:"#00AC00",fillRule:"evenodd",d:"m7.913 13.678-.475 1.086c-.988.111-1.87.308-2.646.59l-.29.11v3.529H7L7.002 20H4.5a1 1 0 0 1-1-1v-4c1.471-.697 2.942-1.138 4.413-1.322Z","clip-rule":"evenodd"}),a.jsx("path",{fill:"#CDFDDA",d:"M14.5 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z"}),a.jsx("path",{fill:"#00AC00",fillRule:"evenodd",d:"M14.5 4a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z","clip-rule":"evenodd"}),a.jsx("path",{fill:"#00AC00",d:"M11.471 11.979A4.992 4.992 0 0 1 9.5 8c0-.67.131-1.308.37-1.891a3.5 3.5 0 1 0 1.601 5.87Z"}),a.jsx("path",{fill:"#CDFDDA",d:"M9.586 7.07a2.5 2.5 0 1 0 1.153 4.226A4.981 4.981 0 0 1 9.5 8c0-.318.03-.63.086-.93Z"})]})})})}]},{key:"chart",label:"Chart settings",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M9 3V9H11V18H9V21H7V18H5V9H7V3H9ZM17 3V6H19V16H17V19H15V16H13V6H15V3H17ZM17 8H15V14H17V8Z",stroke:"currentColor"})})})}),submenu:[{label:"Grid",icon:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("g",{clipPath:"url(#a)",children:a.jsx("path",{fillRule:"evenodd","clip-rule":"evenodd",d:"M20 6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6zm-2 3V6h-3v3h3zm-4-3h-4v2.999h4V6zM9 6H6v3l3-.001V6zm-3 4v4l3-.001v-4H6zm0 5v3h3v-3.001H6zm4 3h4v-3.001h-4V18zm5 0h3v-3h-3v3zm3-4v-4h-3v4h3zm-8-.001v-4h4v4h-4z",fill:"currentColor"})})})},{label:"Trade Orders",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M4 9H20V10H4V9Z",fill:"#3183FF"}),a.jsx("path",{d:"M4 17H20V18H4V17Z",fill:"#EA4C4C"}),a.jsx("react",{x:"4",y:"14",width:"5",height:"2",fill:"#EA4C4C"}),a.jsx("react",{x:"4",y:"6",width:"5",height:"2",fill:"#3183FF"})]})})})},{label:"Trade Position",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M16 10L12 5H20L16 10Z",fill:"#D95852"}),a.jsx("path",{d:"M16 10H20V11H4V10H16Z",fill:"#D95852"}),a.jsx("path",{d:"M20 13H4V14H8L4 19H12L8 14H20V13Z",fill:"#4682F7"})]})})})},{label:"Trade History",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M4 19L8 14L12 19H4Z",fill:"#3183FF"}),a.jsx("path",{d:"M7 16L17.5 8",stroke:"#3183FF",strokeDasharray:"2 2"}),a.jsx("path",{d:"M13 5L17 10L21 5H13Z",fill:"#EA4C4C"})]})})})},{label:"SL/TP Levels",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"m4.688 17.773-.375.91c.43.277.911.415 1.445.415.614 0 1.104-.15 1.469-.45.367-.299.55-.68.55-1.144 0-.258-.044-.491-.132-.7a1.568 1.568 0 0 0-.387-.55c-.17-.159-.446-.332-.828-.52-.727-.354-1.09-.695-1.09-1.023 0-.198.064-.358.191-.48.13-.126.313-.188.547-.188.396 0 .772.128 1.129.383l.309-.875c-.31-.248-.796-.371-1.457-.371-.508 0-.925.146-1.25.437a1.421 1.421 0 0 0-.485 1.102c0 .237.04.453.121.648.084.195.2.365.352.508.154.14.45.322.887.543.44.219.73.417.87.594.141.177.212.363.212.558 0 .417-.299.625-.895.625-.388 0-.782-.14-1.184-.422ZM8.68 13.277V19h3.601v-.902H9.695v-4.82H8.68ZM20 20H4v1h16v-1Z",fill:"#EA4C4C"}),a.jsx("path",{d:"M10.5 10V7.895c.193.018.346.027.46.027 1.548 0 2.321-.656 2.321-1.969 0-.588-.21-1.02-.629-1.297-.416-.278-1.076-.418-1.98-.418-.115 0-.51.015-1.188.043V10H10.5Zm0-3.008V5.16c.099-.013.202-.02.309-.02.955 0 1.433.298 1.433.891 0 .35-.107.602-.32.758-.214.154-.552.23-1.016.23-.099 0-.234-.009-.406-.027Z",fill:"#3183FF",fillRule:"evenodd","clip-rule":"evenodd"}),a.jsx("path",{d:"M6.914 10V5.18h1.902v-.903H4.078v.903h1.82V10h1.016ZM20 11H4v1h16v-1Z",fill:"#3183FF"})]})})})},{label:"Ask Price",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"m6.926 14-.418-1.16H4.547L4.148 14H3.02L5.3 8.2h.446l2.3 5.8h-1.12ZM5.523 9.95l-.687 2.113H6.21l-.688-2.114Zm2.86 3.734.375-.91c.4.28.795.421 1.183.421.597 0 .895-.208.895-.625a.886.886 0 0 0-.211-.558c-.14-.177-.431-.375-.871-.594-.438-.221-.733-.402-.887-.543a1.506 1.506 0 0 1-.351-.508 1.682 1.682 0 0 1-.121-.648c0-.443.161-.81.484-1.102.325-.291.742-.437 1.25-.437.661 0 1.147.123 1.457.37l-.309.876a1.909 1.909 0 0 0-1.129-.383c-.234 0-.416.062-.546.187a.635.635 0 0 0-.192.48c0 .33.363.67 1.09 1.024.383.188.659.361.828.52.17.156.298.34.387.55.088.209.133.442.133.7 0 .463-.184.845-.551 1.144-.365.3-.854.45-1.469.45a2.617 2.617 0 0 1-1.445-.414Zm7.613.316-1.594-2.438-.636.872V14H12.75V8.277h1.016v2.739l1.945-2.739h1.156l-1.793 2.5L17.211 14h-1.215ZM3 15h18v1H3z",fill:"#C96057"})})})})},{label:"Chart Controls",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M0 0h24v24H0z",fill:"none"}),a.jsx("path",{d:"M10 10L20 14L18 16L20 18L18 20L16 18L14 20L10 10Z",fill:"currentColor"}),a.jsx("path",{d:"M11.2574 18.9959C11.1719 18.9986 11.0861 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11C19 11.0599 18.9993 11.1196 18.998 11.1791L16.9574 10.2813C16.6023 7.3064 14.0705 5 11 5C7.68629 5 5 7.68629 5 11C5 14.191 7.49101 16.8002 10.6345 16.9891L11.2574 18.9959Z",fill:"currentColor"})]})})})},{label:"Trade Notification",icon:a.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),a.jsx("path",{d:"M13.73 21a2 2 0 0 1-3.46 0",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Crosshair cursor",icon:a.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M12 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0-6 0",stroke:"currentColor",strokeWidth:"2"}),a.jsx("path",{d:"M12 2v4M12 18v4M2 12h4M18 12h4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Show OHLC",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M7 17V7M12 17v-6M17 17v-4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}]},{key:"oneclick",label:"One Click Trading",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20.9914 12.3966L18.9885 11.5954C18.7789 7.91769 15.7302 5 12 5C8.13401 5 5 8.13401 5 12C5 15.7302 7.91769 18.7789 11.5954 18.9885L12.3966 20.9914C12.2651 20.9971 12.1329 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12C21 12.1329 20.9971 12.2651 20.9914 12.3966ZM11 11L21 15L19 17L22 20L20 22L17 19L15 21L11 11Z",fill:"currentColor"})})})})},{key:"theme",label:v==="light"?"Dark Theme":"Light Theme",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"m4.408 12.954-2.265-.756a.209.209 0 0 1 0-.396l2.265-.755a.209.209 0 0 1 .276.198v1.51c0 .143-.14.244-.276.198ZM5.959 7.306 4.89 5.17c-.09-.18.1-.37.28-.28l2.136 1.068a.209.209 0 0 1 .054.334L6.293 7.36c-.1.101-.27.074-.334-.054ZM11.802 21.857l-.755-2.265a.209.209 0 0 1 .198-.276h1.51c.143 0 .244.14.198.276l-.755 2.265a.21.21 0 0 1-.396 0ZM11.802 2.143l-.755 2.265a.209.209 0 0 0 .198.276h1.51c.143 0 .244-.14.198-.276l-.755-2.265a.209.209 0 0 0-.396 0ZM18.83 19.11l-2.137-1.068a.209.209 0 0 1-.054-.335l1.068-1.068c.1-.1.27-.073.334.055l1.069 2.136c.09.18-.101.37-.28.28ZM16.693 5.958 18.83 4.89c.18-.09.37.1.28.28l-1.068 2.136a.209.209 0 0 1-.334.054l-1.068-1.068a.209.209 0 0 1 .054-.334ZM4.89 18.83l1.069-2.136a.209.209 0 0 1 .334-.055l1.068 1.068c.101.101.074.271-.054.335L5.171 19.11c-.18.09-.37-.1-.28-.28ZM21.857 12.198l-2.265.755a.209.209 0 0 1-.276-.198v-1.51c0-.143.14-.244.276-.198l2.265.755a.21.21 0 0 1 0 .396Z",fill:"#FEBC5A"}),a.jsx("circle",{cx:"12",cy:"12",r:"5",fill:"#FED05A"})]})})})},{key:"colors",label:"Color Templates",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{fillRule:"evenodd",d:"M20.775 8.992C20.922 9.638 21 10.31 21 11a8.354 8.354 0 0 0-.787 0c-1.467.072-2.422.564-3.082 1.283l-1.18-1.65c.761-.718 1.697-1.205 2.81-1.452A7 7 0 1 0 12 18c.396-.001.565-.082.63-.12.07-.042.17-.124.295-.34.218-.375.36-.835.534-1.49l1.518 1.822C14.485 19.102 13.705 20 12 20a9 9 0 1 1 8.775-11.008Z","clip-rule":"evenodd",fill:"currentColor"}),a.jsx("circle",{cx:"8.5",cy:"12.5",r:"1.5",fill:"currentColor"}),a.jsx("circle",{cx:"9.5",cy:"8.5",r:"1.5",fill:"currentColor"}),a.jsx("circle",{cx:"13.5",cy:"7.5",r:"1.5",fill:"currentColor"}),a.jsx("path",{d:"M13.892 14.693c-2.034.46-2.59-1.07-2.892-4.693 3.85.352 5.232 1.05 4.697 3.012L20 17.192s.038 1.023-.361 1.447c-.463.49-1.687.361-1.687.361l-4.06-4.307Z",fill:"currentColor"})]})})}),submenu:[{label:"Green & Red",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#ef5350"}),a.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#26a69a"})]})})})},{label:"Blue & Red",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#ff574d"}),a.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#578cf2"})]})})})},{label:"Black & White",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#7a7a7a"}),a.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#ffffff"})]})})})},{label:"Neutral",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M17.0579 5.11914V7.08486H19.0236V17.8963H17.0579V20.8449H15.0922V17.8963H13.1265V7.08486H15.0922V5.11914H17.0579Z",fill:"#c86a6a"}),a.jsx("path",{d:"M9.19522 7.08376V3.15234H7.22951V7.08376H5.26379V15.9295H7.22951V20.8438H9.19522V15.9295H11.1609V7.08376H9.19522Z",fill:"#76ac85"})]})})})}]},{key:"lang",label:"Language",rightText:"EN",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M17.9 17.39C17.64 16.59 16.89 16 16 16H15V13C15 12.4477 14.5523 12 14 12H8V10H10C10.5523 10 11 9.55228 11 9V7H13C14.1046 7 15 6.10457 15 5V4.59C17.93 5.77 20 8.64 20 12C20 14.08 19.2 15.97 17.9 17.39ZM11 19.93C7.05 19.44 4 16.08 4 12C4 11.38 4.08 10.78 4.21 10.21L9 15V16C9 17.1046 9.89543 18 11 18V19.93ZM12 2C6.47715 2 2 6.47715 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C6.8043 20.9464 9.34784 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 9.34784 20.9464 6.8043 19.0711 4.92893C17.1957 3.05357 14.6522 2 12 2Z",fill:"currentColor"})})})}),submenu:[{label:"English",icon:a.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"}),a.jsx("path",{d:"M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Arabic",icon:a.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"}),a.jsx("path",{d:"M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]})},{label:"Bulgarian",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Chinese Simplified",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Chinese Traditional",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Czech",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Dutch",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})},{label:"Urdu",icon:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"2"})})}]},{key:"shortcuts",label:"Shortcuts",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM11 18H13V16H11V18ZM12 6C9.79 6 8 7.79 8 10H10C10 8.9 10.9 8 12 8C13.1 8 14 8.9 14 10C14 12 11 11.75 11 15H13C13 12.75 16 12.5 16 10C16 7.79 14.21 6 12 6Z",fill:"currentColor"})})})})},{key:"contact",label:"Contact us",icon:a.jsx(a.Fragment,{children:a.jsx("div",{className:"icon svelte-1qoe9jm",style:{width:"calc(var(--indent-half) * 6)",height:"calc(var(--indent-half) * 6)"},children:a.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M5 4C3.89543 4 3 4.89543 3 6V15C3 16.1046 3.89543 17 5 17H5.98719L6 21L13 17H19C20.1046 17 21 16.1046 21 15V6C21 4.89543 20.1046 4 19 4H5ZM6 6H18C18.5128 6 18.9355 6.38604 18.9933 6.88338L19 7V14C19 14.5128 18.614 14.9355 18.1166 14.9933L18 15H12.5339C12.4234 15 12.314 15.0183 12.21 15.0539L12.108 15.0952L8 17.0289V16C8 15.4872 7.61396 15.0645 7.11662 15.0067L7 15H6C5.48716 15 5.06449 14.614 5.00673 14.1166L5 14V7C5 6.48716 5.38604 6.06449 5.88338 6.00673L6 6Z",fillRule:"evenodd","clip-rule":"evenodd",fill:"currentColor"})})})})},{key:"about",label:"About program",icon:a.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20Z",stroke:"currentColor",strokeWidth:"2"}),a.jsx("path",{d:"M12 10v7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),a.jsx("path",{d:"M12 7h.01",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round"})]})}],rt=({item:ke})=>{const me=!!ke.submenu?.length;return a.jsxs("div",{className:"relative",onMouseEnter:()=>{Ne.current&&(clearTimeout(Ne.current),Ne.current=null),me&&L(ke.key)},onMouseLeave:()=>{me&&(Ne.current=setTimeout(()=>L(null),120))},children:[a.jsxs("button",{type:"button",onClick:()=>{me?L(ge=>ge===ke.key?null:ke.key):(ke.key==="theme"&&U(ge=>ge==="light"?"dark":"light"),N(!1),L(null))},className:`w-full flex items-center gap-3 px-4 py-2.5 text-left text-[13px] ${Ge?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[a.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${Ge?"text-slate-500":"text-slate-400"}`,children:ke.icon}),a.jsx("span",{className:"flex-1 text-[15px]",children:ke.label}),ke.rightText&&a.jsx("span",{className:`text-xs ${Ge?"text-slate-500":"text-slate-400"}`,children:ke.rightText}),me&&a.jsx("svg",{className:`w-4 h-4 ${Ge?"text-slate-500":"text-slate-400"}`,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M9 6l6 6-6 6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),me&&R===ke.key&&a.jsx("div",{className:`absolute top-0 left-full ml-0 w-52 min-w-44 rounded-md shadow-2xl overflow-hidden z-100 border ${Ge?"bg-white border-slate-200":"bg-[#262F3F] border-white/10"}`,children:a.jsx("div",{className:"py-1",children:ke.submenu.map((ge,Me)=>{const _e=ve[ke.key]===ge.label||ge.selected&&ve[ke.key]==null;return a.jsxs("button",{type:"button",onClick:()=>{be(Qe=>({...Qe,[ke.key]:ge.label}))},className:`w-full flex items-center gap-3 pl-3 pr-3 py-2 text-[13px] text-left ${Ge?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[a.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${Ge?"text-slate-500":"text-slate-400"}`,children:ge.icon||null}),a.jsx("span",{className:"flex-1 min-w-0",children:ge.label}),_e&&a.jsx("span",{className:"w-5 h-5 flex shrink-0 items-center justify-center text-emerald-400",children:a.jsx("svg",{className:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20 6L9 17l-5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]},Me)})})})]})},Ge=v==="light";return a.jsxs("div",{className:"relative h-full",children:[a.jsxs("div",{className:`w-12 flex flex-col items-center py-3 h-full border-r ${Ge?"bg-white border-slate-200":"bg-[#12161d] border-slate-700"}`,children:[a.jsx("div",{className:"flex flex-col items-center gap-2",children:Je.map((ke,me)=>{const ge=ke==="gann",Me=ge?null:Se[ke],_e=ge?-1:ke;return a.jsxs(Ae.Fragment,{children:[_e===2?a.jsxs("div",{className:"relative",children:[a.jsx("button",{onClick:()=>{const Qe=Er[$].toolId;r(A===Qe?null:Qe)},className:`relative w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
17
|
+
${A===Er[$].toolId?Ge?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":Ge?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:Er[$].label,children:Er[$].icon}),a.jsx("span",{onMouseEnter:()=>te(!0),onMouseLeave:()=>te(!1),onMouseDown:Qe=>{Qe.stopPropagation(),q(Ke=>Ke==="line"?null:"line")},style:{position:"absolute",bottom:1,right:1,width:j?10:7,height:j?10:7,cursor:"pointer",transition:"width 0.12s, height 0.12s",display:"flex",alignItems:"center",justifyContent:"center"},title:"More line tools",children:a.jsx("svg",{viewBox:"0 0 10 10",width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("polygon",{points:"10,10 0,10 10,0",fill:Ge?"#64748b":"#94a3b8"})})})]}):_e===3?a.jsxs("div",{className:"relative",children:[a.jsx("button",{onClick:()=>{const Qe=Lr[ce].toolId;r(A===Qe?null:Qe)},className:`relative w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
18
|
+
${A===Lr[ce].toolId?Ge?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":Ge?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:Lr[ce].label,children:Lr[ce].icon}),a.jsx("span",{onMouseEnter:()=>se(!0),onMouseLeave:()=>se(!1),onMouseDown:Qe=>{Qe.stopPropagation(),q(Ke=>Ke==="channel"?null:"channel")},style:{position:"absolute",bottom:1,right:1,width:ee?10:7,height:ee?10:7,cursor:"pointer",transition:"width 0.12s, height 0.12s",display:"flex",alignItems:"center",justifyContent:"center"},title:"More channel tools",children:a.jsx("svg",{viewBox:"0 0 10 10",width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("polygon",{points:"10,10 0,10 10,0",fill:Ge?"#64748b":"#94a3b8"})})})]}):ge?a.jsxs("div",{className:"relative",children:[a.jsx("button",{onClick:()=>{const Qe=Mr[le].toolId;r(A===Qe?null:Qe)},className:`relative w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
19
|
+
${A===Mr[le].toolId?Ge?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":Ge?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:Mr[le].label,children:Mr[le].icon}),a.jsx("span",{onMouseEnter:()=>de(!0),onMouseLeave:()=>de(!1),onMouseDown:Qe=>{Qe.stopPropagation(),q(Ke=>Ke==="gann"?null:"gann")},style:{position:"absolute",bottom:1,right:1,width:he?10:7,height:he?10:7,cursor:"pointer",transition:"width 0.12s, height 0.12s",display:"flex",alignItems:"center",justifyContent:"center"},title:"More Gann tools",children:a.jsx("svg",{viewBox:"0 0 10 10",width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("polygon",{points:"10,10 0,10 10,0",fill:Ge?"#64748b":"#94a3b8"})})})]}):_e===5?a.jsxs("div",{className:"relative",children:[a.jsx("button",{onClick:()=>{const Qe=Hr[we].toolId;r(A===Qe?null:Qe)},className:`relative w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
20
|
+
${A===Hr[we].toolId?Ge?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":Ge?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:Hr[we].label,children:Hr[we].icon}),a.jsx("span",{onMouseEnter:()=>ye(!0),onMouseLeave:()=>ye(!1),onMouseDown:Qe=>{Qe.stopPropagation(),q(Ke=>Ke==="shape"?null:"shape")},style:{position:"absolute",bottom:1,right:1,width:Ue?10:7,height:Ue?10:7,cursor:"pointer",transition:"width 0.12s, height 0.12s",display:"flex",alignItems:"center",justifyContent:"center"},title:"More shape tools",children:a.jsx("svg",{viewBox:"0 0 10 10",width:"100%",height:"100%",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("polygon",{points:"10,10 0,10 10,0",fill:Ge?"#64748b":"#94a3b8"})})})]}):a.jsx("button",{onClick:()=>fe(_e),className:`w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
21
|
+
${Me.label==="Grid"&&n||Me.label==="Eye"&&!g||Me.label==="Lock"&&x||A===_e?Ge?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":Ge?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:`${Me.label}: ${Me.description}`,children:Me.icon}),!ge&&Me.label==="Text"&&a.jsx("div",{className:`w-8 border-t my-1 ${Ge?"border-slate-200":"border-slate-700"}`})]},ge?"gann-slot":`${Me.label}-${ke}`)})}),a.jsx("div",{className:"flex-1"}),a.jsx("div",{className:"flex flex-col items-center gap-2 pb-1",children:Pe.map((ke,me)=>{const ge=12+me;return a.jsx("button",{onClick:()=>fe(ge),className:`w-10 h-10 flex items-center justify-center transition-colors duration-150
|
|
22
|
+
${ke.label==="Grid"&&n||ke.label==="Eye"&&!g||ke.label==="Lock"&&x||A===ge?Ge?"text-sky-600 hover:bg-sky-100":"text-sky-300 hover:bg-slate-700":Ge?"text-slate-600 hover:bg-sky-100":"text-slate-400 hover:bg-slate-700"}`,title:`${ke.label}: ${ke.description}`,children:ke.icon},ke.label)})})]}),z==="line"&&a.jsx(ws,{top:84,panelRef:Ie,isLight:Ge,children:Er.map((ke,me)=>{const ge=$===me;return a.jsxs("button",{type:"button",onMouseDown:Me=>{Me.stopPropagation(),V(me),r(ke.toolId),q(null)},className:`w-full flex items-center gap-3 px-4 py-2.5 text-[13px] text-left ${Ge?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[a.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${Ge?"text-slate-500":"text-slate-400"}`,children:ke.icon}),a.jsx("span",{className:"flex-1",children:ke.label}),ge&&a.jsx("span",{className:"w-4 h-4 flex shrink-0 items-center justify-center text-emerald-400",children:a.jsx("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20 6L9 17l-5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]},ke.toolId)})}),z==="channel"&&a.jsx(ws,{top:128,panelRef:Ze,isLight:Ge,children:Lr.map((ke,me)=>{const ge=ce===me;return a.jsxs("button",{type:"button",onMouseDown:Me=>{Me.stopPropagation(),X(me),r(ke.toolId),q(null)},className:`w-full flex items-center gap-3 px-4 py-2.5 text-[13px] text-left ${Ge?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[a.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${Ge?"text-slate-500":"text-slate-400"}`,children:ke.icon}),a.jsx("span",{className:"flex-1",children:ke.label}),ge&&a.jsx("span",{className:"w-4 h-4 flex shrink-0 items-center justify-center text-emerald-400",children:a.jsx("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20 6L9 17l-5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]},ke.toolId)})}),z==="gann"&&a.jsx(ws,{top:210,panelRef:ze,isLight:Ge,children:Mr.map((ke,me)=>{const ge=le===me;return a.jsxs("button",{type:"button",onMouseDown:Me=>{Me.stopPropagation(),ne(me),r(ke.toolId),q(null)},className:`w-full flex items-center gap-3 px-4 py-2.5 text-[13px] text-left ${Ge?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[a.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${Ge?"text-slate-500":"text-slate-400"}`,children:ke.icon}),a.jsx("span",{className:"flex-1",children:ke.label}),ge&&a.jsx("span",{className:"w-4 h-4 flex shrink-0 items-center justify-center text-emerald-400",children:a.jsx("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20 6L9 17l-5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]},ke.toolId)})}),z==="shape"&&a.jsx(ws,{top:250,panelRef:Ce,isLight:Ge,children:Hr.map((ke,me)=>{const ge=we===me;return a.jsxs("button",{type:"button",onMouseDown:Me=>{Me.stopPropagation(),xe(me),r(ke.toolId),q(null)},className:`w-full flex items-center gap-3 px-4 py-2.5 text-[13px] text-left ${Ge?"text-slate-700 hover:bg-slate-100":"text-slate-200 hover:bg-[#202933]"}`,children:[a.jsx("span",{className:`w-5 h-5 flex shrink-0 items-center justify-center ${Ge?"text-slate-500":"text-slate-400"}`,children:ke.icon}),a.jsx("span",{className:"flex-1",children:ke.label}),ge&&a.jsx("span",{className:"w-4 h-4 flex shrink-0 items-center justify-center text-emerald-400",children:a.jsx("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:a.jsx("path",{d:"M20 6L9 17l-5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]},ke.toolId)})}),M&&a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"fixed inset-0 z-[999] bg-black/20",onClick:()=>{N(!1),L(null)},"aria-hidden":"true"}),a.jsxs("div",{ref:Ee,className:`absolute left-12 top-2 z-[999] w-68 border shadow-2xl overflow-visible ${Ge?"bg-white border-slate-200":"bg-[#262F3F] border-white/10"}`,children:[a.jsxs("div",{className:`relative px-4 py-3 border-b overflow-hidden ${Ge?"bg-white border-slate-200":"border-white/10 bg-[#262F3F]"}`,children:[a.jsx("div",{className:`z-[999]text-[16px] font-medium pr-12 ${Ge?"text-slate-800":"text-slate-100"}`,children:e||"MT5 Account"}),a.jsx("div",{className:`text-[12px] mt-0.5 ${Ge?"text-slate-500":"text-slate-400"}`,children:i})]}),a.jsx("div",{className:"py-2",children:it.map(ke=>a.jsx(rt,{item:ke},ke.key))})]})]})]})};function gT(i){return zt({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M337.509 305.372h-17.501l-6.571-5.486c20.791-25.232 33.922-57.054 33.922-93.257C347.358 127.632 283.896 64 205.135 64 127.452 64 64 127.632 64 206.629s63.452 142.628 142.225 142.628c35.011 0 67.831-13.167 92.991-34.008l6.561 5.487v17.551L415.18 448 448 415.086 337.509 305.372zm-131.284 0c-54.702 0-98.463-43.887-98.463-98.743 0-54.858 43.761-98.742 98.463-98.742 54.7 0 98.462 43.884 98.462 98.742 0 54.856-43.762 98.743-98.462 98.743z"},child:[]}]})(i)}const mT=({width:i=256,symbols:e=[],selectedSymbol:t,onSymbolSelect:A,symbolsLoading:r=!1,isOpen:n})=>{const{theme:s}=Lt(),o=s==="light",[l,c]=Ae.useState(""),h=e.filter(x=>x.symbol.toLowerCase().includes(l.toLowerCase())),g=h.filter(x=>!x.symbol.toUpperCase().endsWith("USDT")),C=h.filter(x=>x.symbol.toUpperCase().endsWith("USDT"));return a.jsxs(a.Fragment,{children:[a.jsx("style",{children:`
|
|
21
23
|
.scrollbar-dark::-webkit-scrollbar {
|
|
22
24
|
width: 8px;
|
|
23
25
|
}
|
|
@@ -44,4 +46,4 @@
|
|
|
44
46
|
.scrollbar-light::-webkit-scrollbar-thumb:hover {
|
|
45
47
|
background: #94a3b8;
|
|
46
48
|
}
|
|
47
|
-
`}),h.jsxs("div",{style:{width:`${r}px`,minWidth:"550px",maxWidth:"1900px"},className:`border-l flex flex-col h-full shrink-0 ${o?"bg-white border-slate-200":"bg-[#12161d] border-slate-700"}`,children:[h.jsxs("div",{className:`p-3 border-b flex justify-center items-center gap-2 ${o?"border-slate-200":"border-slate-700"}`,children:[h.jsx(ry,{className:o?"text-2xl text-slate-500":"text-2xl text-slate-400"}),h.jsx("input",{type:"text",placeholder:"Search symbol",value:a,onChange:y=>l(y.target.value),className:`w-full px-3 py-1.5 rounded text-md focus:outline-none focus:border-sky-500 ${o?"bg-white border border-slate-200 text-slate-800 placeholder:text-slate-400":"bg-slate-800 border border-slate-600 text-slate-100 placeholder:text-slate-400"}`})]}),h.jsx("div",{className:`flex-1 overflow-y-auto ${o?"scrollbar-light":"scrollbar-dark"}`,style:{scrollbarWidth:"thin",scrollbarColor:o?"#cbd5e1 #ffffff":"#1e293b #12161d"},children:i?h.jsx("div",{className:"flex items-center justify-center h-full",children:h.jsx("div",{className:`text-sm ${o?"text-slate-700":"text-slate-200"}`,children:"Loading symbols..."})}):c.length===0?h.jsx("div",{className:"flex items-center justify-center h-full",children:h.jsx("div",{className:`text-sm text-center px-4 ${o?"text-slate-700":"text-slate-200"}`,children:e.length===0?"No symbols found. Please check server connection.":"No symbols match your search."})}):h.jsxs("table",{className:"w-full text-xs",children:[h.jsx("thead",{className:`sticky top-0 z-10 ${o?"bg-white border-b border-slate-200":"bg-[#12161d] border-b border-slate-700"}`,children:h.jsxs("tr",{children:[h.jsx("th",{className:`px-3 py-2 text-left text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Symbol"}),h.jsx("th",{className:`px-3 py-2 text-right text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Bid"}),h.jsx("th",{className:`px-3 py-2 text-right text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Ask"}),h.jsx("th",{className:`px-3 py-2 text-right text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Change"})]})}),h.jsxs("tbody",{children:[d.length>0&&h.jsx("tr",{className:o?"bg-slate-50":"bg-slate-900",children:h.jsx("td",{colSpan:4,className:`px-3 py-2 text-xs font-semibold ${o?"text-sky-600":"text-sky-400"}`,children:"FOREX"})}),d.map(y=>h.jsxs("tr",{onClick:()=>t(y.symbol),className:`cursor-pointer transition-colors ${A===y.symbol?o?"bg-sky-50 border-l-2 border-sky-500":"bg-slate-800 border-l-2 border-sky-500":o?"hover:bg-slate-50":"hover:bg-slate-800"}`,children:[h.jsx("td",{className:`px-3 py-2 text-md font-medium ${o?"text-slate-800":"text-slate-100"}`,children:y.symbol}),h.jsx("td",{className:`px-3 py-2 text-right text-md ${y.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:y.bid}),h.jsx("td",{className:`px-3 py-2 text-right text-md ${y.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:y.ask}),h.jsxs("td",{className:`px-3 py-2 text-right font-medium ${y.change>=0?o?"text-emerald-600":"text-emerald-400":o?"text-rose-600":"text-rose-400"}`,children:[y.change>=0?"+":"",y.change,"%"]})]},y.symbol)),p.length>0&&h.jsx("tr",{className:o?"bg-slate-50":"bg-slate-900",children:h.jsx("td",{colSpan:4,className:`px-3 py-2 text-xs font-semibold ${o?"text-emerald-600":"text-emerald-400"}`,children:"CRYPTO"})}),p.map(y=>h.jsxs("tr",{onClick:()=>t(y.symbol),className:`cursor-pointer transition-colors ${A===y.symbol?o?"bg-sky-50 border-l-2 border-sky-500":"bg-slate-800 border-l-2 border-sky-500":o?"hover:bg-slate-50":"hover:bg-slate-800"}`,children:[h.jsx("td",{className:`px-3 py-2 text-md font-medium ${o?"text-slate-800":"text-slate-100"}`,children:y.symbol}),h.jsx("td",{className:`px-3 py-2 text-right text-md ${y.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:y.bid}),h.jsx("td",{className:`px-3 py-2 text-right text-md ${y.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:y.ask}),h.jsxs("td",{className:`px-3 py-2 text-right font-medium ${y.change>=0?o?"text-emerald-600":"text-emerald-400":o?"text-rose-600":"text-rose-400"}`,children:[y.change>=0?"+":"",y.change,"%"]})]},y.symbol))]})]})})]})]})},ny=({accountSummary:r,orders:e,onClose:A,onModify:t,height:i})=>{const{accountSummary:n,orders:s,theme:o}=FA(),a=r||n,l=e||s,c=o==="light",[d,p]=J.useState("trade"),y="#26A69A",w="#EF5350",C=c?"#f8fafc":"#0f172a",v=c?"#e2e8f0":"#1e293b",S=c?"#f1f5f9":"#0f172a",F=c?"#f8fafc":"#131c2e",k=c?"#0f172a":"#e2e8f0",x="#64748b",V=(l||[]).filter(de=>de.status==="OPEN"||!de.closeAt),N=(l||[]).filter(de=>de.closeAt||de.closedAt),Z=a?.balance||0,X=a?.equity??Z,W=a?.margin||0,ae=a?.freeMargin??X-W,G=W>0?X/W*100:0,ee=V.reduce((de,Qe)=>de+(Qe.livePnL??Qe.profit??0),0),oe=de=>{const Qe=parseFloat(de);return Number.isFinite(Qe)?Qe.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}):"0.00"},me=de=>{const Qe=parseFloat(de);return!Qe||isNaN(Qe)?"—":Qe>=1e4?Qe.toFixed(2):Qe>=10?Qe.toFixed(4):Qe.toFixed(5)},Le=de=>{const Qe=parseFloat(de);return isNaN(Qe)?"—":(Qe>=0?"+":"")+Qe.toFixed(2)},Ue=de=>{const Qe=parseFloat(de);return isNaN(Qe)?"—":Qe.toFixed(2)},Fe=de=>{if(!de)return"—";const Qe=new Date(de);return isNaN(Qe.getTime())?String(de):`${Qe.toLocaleDateString("en-GB",{day:"2-digit",month:"2-digit",year:"2-digit"})} ${Qe.toTimeString().slice(0,8)}`},ke=J.useCallback((de,Qe)=>{de.stopPropagation(),A&&A(Qe.id)},[A]),ye=J.useCallback((de,Qe)=>{de.stopPropagation(),t&&t(Qe)},[t]),ve={fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, monospace",backgroundColor:C,borderTop:`1px solid ${v}`,display:"flex",flexDirection:"column",height:i?`${i}px`:"auto",overflow:"hidden",fontSize:"11px",color:k},Ce={display:"flex",alignItems:"center",gap:"0",padding:"5px 10px",backgroundColor:S,borderBottom:`1px solid ${v}`,flexShrink:0,flexWrap:"wrap",rowGap:"2px"},ge={display:"flex",alignItems:"center",gap:"4px",paddingRight:"14px",marginRight:"14px",borderRight:`1px solid ${v}`,whiteSpace:"nowrap"},Me={color:x,fontWeight:600,fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.05em"},_e={fontFamily:"monospace",fontWeight:700,fontSize:"11px"},Be={display:"flex",borderBottom:`1px solid ${v}`,flexShrink:0,backgroundColor:S},iA=de=>({padding:"5px 14px",fontSize:"11px",fontWeight:de?700:500,color:de?c?"#0ea5e9":"#38bdf8":x,borderBottom:de?`2px solid ${c?"#0ea5e9":"#38bdf8"}`:"2px solid transparent",background:"none",border:"none",cursor:"pointer",transition:"color 0.15s",outline:"none"}),Ee={padding:"4px 8px",textAlign:"left",color:x,fontWeight:700,fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.05em",borderBottom:`1px solid ${v}`,whiteSpace:"nowrap",backgroundColor:S,position:"sticky",top:0,zIndex:1},Te={padding:"3px 8px",borderBottom:`1px solid ${v}`,whiteSpace:"nowrap",fontFamily:"monospace",fontSize:"11px",color:k};return h.jsxs("div",{style:ve,children:[h.jsxs("div",{style:Ce,children:[h.jsxs("div",{style:ge,children:[h.jsx("span",{style:Me,children:"Balance:"}),h.jsxs("span",{style:{..._e,color:k},children:["$",oe(Z)]})]}),h.jsxs("div",{style:ge,children:[h.jsx("span",{style:Me,children:"Equity:"}),h.jsxs("span",{style:{..._e,color:X>=Z?y:w},children:["$",oe(X)]})]}),h.jsxs("div",{style:ge,children:[h.jsx("span",{style:Me,children:"Margin:"}),h.jsxs("span",{style:{..._e,color:k},children:["$",oe(W)]})]}),h.jsxs("div",{style:ge,children:[h.jsx("span",{style:Me,children:"Free Margin:"}),h.jsxs("span",{style:{..._e,color:ae>=0?k:w},children:["$",oe(ae)]})]}),h.jsxs("div",{style:{...ge,borderRight:"none",marginRight:0,paddingRight:0},children:[h.jsx("span",{style:Me,children:"Margin Level:"}),h.jsx("span",{style:{..._e,color:G>=100?y:w},children:W>0?G.toFixed(2)+"%":"—"})]}),V.length>0&&h.jsxs("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:"4px"},children:[h.jsx("span",{style:Me,children:"Float P/L:"}),h.jsxs("span",{style:{..._e,color:ee>=0?y:w,fontWeight:700},children:[ee>=0?"+":"",oe(ee)]})]})]}),h.jsxs("div",{style:Be,children:[h.jsxs("button",{style:iA(d==="trade"),onClick:()=>p("trade"),children:["Trade (",V.length,")"]}),h.jsxs("button",{style:iA(d==="history"),onClick:()=>p("history"),children:["History (",N.length,")"]})]}),h.jsxs("div",{style:{flex:1,overflowY:"auto",overflowX:"auto"},children:[d==="trade"&&h.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",minWidth:"800px"},children:[h.jsx("thead",{children:h.jsxs("tr",{children:[h.jsx("th",{style:Ee,children:"Ticket"}),h.jsx("th",{style:Ee,children:"Open Time"}),h.jsx("th",{style:Ee,children:"Symbol"}),h.jsx("th",{style:Ee,children:"Type"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Volume"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Open Price"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"S/L"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"T/P"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Current"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Profit"}),h.jsx("th",{style:{...Ee,textAlign:"center"},children:"Action"})]})}),h.jsx("tbody",{children:V.length===0?h.jsx("tr",{children:h.jsx("td",{colSpan:11,style:{...Te,textAlign:"center",padding:"16px",color:x},children:"No open positions"})}):V.map(de=>{const Qe=de.livePnL??de.profit??0,cA=Qe>=0?y:w;return h.jsxs("tr",{style:{cursor:"default"},onMouseEnter:Re=>Re.currentTarget.style.backgroundColor=F,onMouseLeave:Re=>Re.currentTarget.style.backgroundColor="transparent",children:[h.jsx("td",{style:{...Te,color:x,fontSize:"10px"},children:String(de.id||"").slice(0,8).toUpperCase()}),h.jsx("td",{style:{...Te,color:x},children:Fe(de.openAt||de.time)}),h.jsx("td",{style:{...Te,fontWeight:700,color:k,letterSpacing:"0.02em"},children:de.symbol}),h.jsx("td",{style:{...Te,fontWeight:700,color:de.type==="BUY"?y:w},children:de.type}),h.jsx("td",{style:{...Te,textAlign:"right"},children:Ue(de.volume)}),h.jsx("td",{style:{...Te,textAlign:"right"},children:me(de.price??de.openPrice)}),h.jsx("td",{style:{...Te,textAlign:"right",color:de.stopLoss?w:x},children:de.stopLoss?me(de.stopLoss):"—"}),h.jsx("td",{style:{...Te,textAlign:"right",color:de.takeProfit?y:x},children:de.takeProfit?me(de.takeProfit):"—"}),h.jsx("td",{style:{...Te,textAlign:"right",color:x},children:de.currentPrice?me(de.currentPrice):"—"}),h.jsx("td",{style:{...Te,textAlign:"right",fontWeight:700,color:cA},children:Le(Qe)}),h.jsx("td",{style:{...Te,textAlign:"center"},children:h.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:"4px"},children:[t&&h.jsx("button",{onClick:Re=>ye(Re,de),title:"Modify TP/SL",style:{background:"none",border:"none",cursor:"pointer",color:x,padding:"2px 4px",borderRadius:"3px",fontSize:"11px",lineHeight:1},onMouseEnter:Re=>Re.currentTarget.style.color="#f59e0b",onMouseLeave:Re=>Re.currentTarget.style.color=x,children:"✎"}),A&&h.jsx("button",{onClick:Re=>ke(Re,de),title:"Close position",style:{padding:"2px 8px",backgroundColor:"#7f1d1d",border:"1px solid #991b1b",borderRadius:"3px",color:"#fca5a5",fontSize:"10px",fontWeight:700,cursor:"pointer"},onMouseEnter:Re=>Re.currentTarget.style.backgroundColor="#991b1b",onMouseLeave:Re=>Re.currentTarget.style.backgroundColor="#7f1d1d",children:"Close"})]})})]},de.id)})})]}),d==="history"&&h.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",minWidth:"700px"},children:[h.jsx("thead",{children:h.jsxs("tr",{children:[h.jsx("th",{style:Ee,children:"Ticket"}),h.jsx("th",{style:Ee,children:"Open Time"}),h.jsx("th",{style:Ee,children:"Close Time"}),h.jsx("th",{style:Ee,children:"Symbol"}),h.jsx("th",{style:Ee,children:"Type"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Volume"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Open Price"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Close Price"}),h.jsx("th",{style:{...Ee,textAlign:"right"},children:"Profit"})]})}),h.jsx("tbody",{children:N.length===0?h.jsx("tr",{children:h.jsx("td",{colSpan:9,style:{...Te,textAlign:"center",padding:"16px",color:x},children:"No trade history"})}):N.map(de=>{const Qe=de.profit??0,cA=Qe>=0?y:w;return h.jsxs("tr",{onMouseEnter:Re=>Re.currentTarget.style.backgroundColor=F,onMouseLeave:Re=>Re.currentTarget.style.backgroundColor="transparent",children:[h.jsx("td",{style:{...Te,color:x,fontSize:"10px"},children:String(de.id||"").slice(0,8).toUpperCase()}),h.jsx("td",{style:{...Te,color:x},children:Fe(de.openAt)}),h.jsx("td",{style:{...Te,color:x},children:Fe(de.closeAt||de.closedAt)}),h.jsx("td",{style:{...Te,fontWeight:700,color:k},children:de.symbol}),h.jsx("td",{style:{...Te,fontWeight:700,color:de.type==="BUY"?y:w},children:de.type}),h.jsx("td",{style:{...Te,textAlign:"right"},children:Ue(de.volume)}),h.jsx("td",{style:{...Te,textAlign:"right"},children:me(de.price??de.openPrice)}),h.jsx("td",{style:{...Te,textAlign:"right"},children:me(de.closePrice)}),h.jsx("td",{style:{...Te,textAlign:"right",fontWeight:700,color:cA},children:Le(Qe)})]},de.id)})})]})]})]})},sy="1.2.1";ze.AccountPanel=ny,ze.BuySellPanel=Jc,ze.Chart=zv,ze.ChartTypeSelector=Zv,ze.CoinSelector=md,ze.DrawingTools=vd,ze.LeftSidebar=ty,ze.MarketExecutionModal=Zc,ze.MarketWatch=iy,ze.PositionsPanel=Yv,ze.SYMBOL_CONFIG=Yc,ze.StopLoss=wd,ze.TakeProfit=Cd,ze.TimeframeSelector=Xv,ze.TopBar=Ay,ze.TradePanel=qv,ze.TradingProvider=xg,ze.TradingToolbar=Wv,ze.VolumeControl=Bd,ze.alignToTimeframe=ur,ze.detectGaps=kg,ze.getSymbolConfig=$r,ze.is24x7Symbol=Vg,ze.isCryptoSymbol=Pg,ze.isForexSymbol=Kg,ze.isWithinTradingSession=Og,ze.normalizeCandleTimes=qc,ze.normalizeTime=Y,ze.processCandles=rh,ze.processSingleCandle=ih,ze.setSocketBaseUrl=zc,ze.timeframeToSeconds=it,ze.useTrading=FA,ze.validateTimeOrdering=Ng,ze.version=sy,Object.defineProperty(ze,Symbol.toStringTag,{value:"Module"})}));
|
|
49
|
+
`}),a.jsxs("div",{style:{width:`${i}px`,minWidth:"220px",maxWidth:"1500px"},className:`border-l flex flex-col h-full shrink-0 ${o?"bg-white border-slate-200":"bg-[#12161d] border-slate-700"}`,children:[a.jsxs("div",{className:`p-3 border-b flex justify-center items-center gap-2 ${o?"border-slate-200":"border-slate-700"}`,children:[a.jsx(gT,{className:o?"text-2xl text-slate-500":"text-2xl text-slate-400"}),a.jsx("input",{type:"text",placeholder:"Search symbol",value:l,onChange:x=>c(x.target.value),className:`w-full px-3 py-1.5 rounded text-md focus:outline-none focus:border-sky-500 ${o?"bg-white border border-slate-200 text-slate-800 placeholder:text-slate-400":"bg-slate-800 border border-slate-600 text-slate-100 placeholder:text-slate-400"}`})]}),a.jsx("div",{className:`flex-1 overflow-y-auto ${o?"scrollbar-light":"scrollbar-dark"}`,style:{scrollbarWidth:"thin",scrollbarColor:o?"#cbd5e1 #ffffff":"#1e293b #12161d"},children:r?a.jsx("div",{className:"flex items-center justify-center h-full",children:a.jsx("div",{className:`text-sm ${o?"text-slate-700":"text-slate-200"}`,children:"Loading symbols..."})}):h.length===0?a.jsx("div",{className:"flex items-center justify-center h-full",children:a.jsx("div",{className:`text-sm text-center px-4 ${o?"text-slate-700":"text-slate-200"}`,children:e.length===0?"No symbols found. Please check server connection.":"No symbols match your search."})}):a.jsxs("table",{className:"w-full text-xs",children:[a.jsx("thead",{className:`sticky top-0 z-10 ${o?"bg-white border-b border-slate-200":"bg-[#12161d] border-b border-slate-700"}`,children:a.jsxs("tr",{children:[a.jsx("th",{className:`px-3 py-2 text-left text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Symbol"}),a.jsx("th",{className:`px-3 py-2 text-right text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Bid"}),a.jsx("th",{className:`px-3 py-2 text-right text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Ask"}),a.jsx("th",{className:`px-3 py-2 text-right text-md ${o?"text-slate-700":"text-slate-300"}`,children:"Change"})]})}),a.jsxs("tbody",{children:[g.length>0&&a.jsx("tr",{className:o?"bg-slate-50":"bg-slate-900",children:a.jsx("td",{colSpan:4,className:`px-3 py-2 text-xs font-semibold ${o?"text-sky-600":"text-sky-400"}`,children:"FOREX"})}),g.map(x=>a.jsxs("tr",{onClick:()=>A(x.symbol),className:`cursor-pointer transition-colors ${t===x.symbol?o?"bg-sky-50 border-l-2 border-sky-500":"bg-slate-800 border-l-2 border-sky-500":o?"hover:bg-slate-50":"hover:bg-slate-800"}`,children:[a.jsxs("td",{className:`px-3 flex items-center justify-start gap-2 py-2 text-md font-medium ${o?"text-slate-800":"text-slate-100"}`,children:[x.change>0?a.jsx("span",{className:"w-6 flex items-center justify-center",children:a.jsx(dT,{className:"text-2xl text-emerald-500"})}):x.change<0?a.jsx("span",{className:"w-6 flex items-center justify-center",children:a.jsx(uT,{className:"text-2xl text-red-500"})}):a.jsx("span",{className:"w-6 flex items-center justify-center",children:a.jsx(Tm,{className:`text-[8px] ${o?"text-sky-600":"text-gray-300"}`})}),a.jsx("span",{children:x.symbol})]}),a.jsx("td",{className:`px-3 py-2 text-right text-md ${x.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:Number(x.bid).toFixed(5)}),a.jsx("td",{className:`px-3 py-2 text-right text-md ${x.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:Number(x.ask).toFixed(5)}),a.jsxs("td",{className:`px-3 py-2 text-right font-medium ${x.change>=0?o?"text-emerald-600":"text-emerald-400":o?"text-rose-600":"text-rose-400"}`,children:[x.change>=0?"+":"",x.change,"%"]})]},x.symbol)),C.length>0&&a.jsx("tr",{className:o?"bg-slate-50":"bg-slate-900",children:a.jsx("td",{colSpan:4,className:`px-3 py-2 text-xs font-semibold ${o?"text-emerald-600":"text-emerald-400"}`,children:"CRYPTO"})}),C.map(x=>a.jsxs("tr",{onClick:()=>A(x.symbol),className:`cursor-pointer transition-colors ${t===x.symbol?o?"bg-sky-50 border-l-2 border-sky-500":"bg-slate-800 border-l-2 border-sky-500":o?"hover:bg-slate-50":"hover:bg-slate-800"}`,children:[a.jsx("td",{className:`px-3 py-2 text-md font-medium ${o?"text-slate-800":"text-slate-100"}`,children:x.symbol}),a.jsx("td",{className:`px-3 py-2 text-right text-md ${x.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:Number(x?.bid)?.toFixed(5)}),a.jsx("td",{className:`px-3 py-2 text-right text-md ${x.change>=0?o?"text-blue-600":"text-sky-400":o?"text-rose-600":"text-rose-400"}`,children:Number(x?.ask)?.toFixed(5)}),a.jsxs("td",{className:`px-3 py-2 text-right font-medium ${x.change>=0?o?"text-emerald-600":"text-emerald-400":o?"text-rose-600":"text-rose-400"}`,children:[x.change>=0?"+":"",x.change,"%"]})]},x.symbol))]})]})})]})]})},wT=({accountSummary:i,orders:e,onClose:t,onModify:A,height:r})=>{const{accountSummary:n,orders:s,theme:o,isShow:l,setIsShow:c,historyOrders:h,fetchHistoryOrders:g}=Lt(),C=i||n,x=e?.length>0?e:s,b=h||[],v=o==="light",U=l?"history":"trade";Ae.useEffect(()=>{l&&g&&g()},[l,g]);const F="#26A69A",M="#EF5350",N=v?"#f8fafc":"#12161D",R=v?"#e2e8f0":"#1e293b",L=v?"#f1f5f9":"#12161D",z=v?"#F0F5F9":"#2B3543",q=v?"#f8fafc":"#131c2e",$=v?"#12161D":"#fff",V=v?"#64748b":"#fff",j=(x||[]).filter(fe=>fe.status==="OPEN"||!fe.closeAt),te=C?.balance||0,ce=C?.equity??te,X=C?.margin||0,ee=C?.freeMargin??ce-X,se=X>0?ce/X*100:0,le=j.reduce((fe,Pe)=>fe+(Pe.livePnL??Pe.profit??0),0),ne=fe=>{const Pe=parseFloat(fe);return Number.isFinite(Pe)?Pe.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}):"0.00"},he=fe=>{const Pe=parseFloat(fe);return!Pe||isNaN(Pe)?"—":Pe>=1e4?Pe.toFixed(2):Pe>=10?Pe.toFixed(4):Pe.toFixed(5)},de=fe=>{const Pe=parseFloat(fe);return isNaN(Pe)?"—":(Pe>=0?"+":"")+Pe.toFixed(2)},we=fe=>{const Pe=parseFloat(fe);return isNaN(Pe)?"—":Pe.toFixed(2)},xe=fe=>{if(!fe)return"—";const Pe=new Date(fe);return isNaN(Pe.getTime())?String(fe):`${Pe.toLocaleDateString("en-GB",{day:"2-digit",month:"2-digit",year:"2-digit"})} ${Pe.toTimeString().slice(0,8)}`},Ue=Ae.useCallback((fe,Pe)=>{fe.stopPropagation(),t&&t(Pe.id,Pe)},[t]),ye=Ae.useCallback((fe,Pe)=>{fe.stopPropagation(),A&&A(Pe)},[A]),ve={fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, monospace",backgroundColor:N,borderTop:`1px solid ${R}`,display:"flex",flexDirection:"column",height:r?`${r}px`:"auto",overflow:"hidden",fontSize:"11px",color:$},be={display:"flex",alignItems:"center",gap:"0",padding:"5px 10px",backgroundColor:z,borderBottom:`1px solid ${R}`,flexShrink:0,flexWrap:"wrap",rowGap:"2px"},Ee={display:"flex",alignItems:"center",gap:"4px",paddingRight:"14px",marginRight:"14px",borderRight:`1px solid ${R}`,whiteSpace:"nowrap"},Ie={color:V,fontWeight:600,fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.05em"},Ze={fontFamily:"monospace",fontWeight:700,fontSize:"11px"},ze={display:"flex",borderBottom:`1px solid ${R}`,flexShrink:0,backgroundColor:L},Ce=fe=>({padding:"5px 14px",fontSize:"11px",fontWeight:fe?700:500,color:fe?v?"#0ea5e9":"#38bdf8":V,borderBottom:fe?`2px solid ${v?"#0ea5e9":"#38bdf8"}`:"2px solid transparent",background:"none",border:"none",cursor:"pointer",transition:"color 0.15s",outline:"none"}),Ne={padding:"4px 8px",textAlign:"left",color:V,fontWeight:700,fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.05em",borderBottom:`1px solid ${R}`,whiteSpace:"nowrap",backgroundColor:L,position:"sticky",top:0,zIndex:1},Se={padding:"3px 8px",borderBottom:`1px solid ${R}`,whiteSpace:"nowrap",fontFamily:"monospace",fontSize:"11px",color:$};return a.jsxs("div",{style:ve,children:[a.jsxs("div",{style:be,children:[a.jsxs("div",{style:Ee,children:[a.jsx("span",{style:Ie,children:"Balance:"}),a.jsxs("span",{style:{...Ze,color:$},children:["$",ne(te)]})]}),a.jsxs("div",{style:Ee,children:[a.jsx("span",{style:Ie,children:"Equity:"}),a.jsxs("span",{style:{...Ze,color:ce>=te?F:M},children:["$",ne(ce)]})]}),a.jsxs("div",{style:Ee,children:[a.jsx("span",{style:Ie,children:"Margin:"}),a.jsxs("span",{style:{...Ze,color:$},children:["$",ne(X)]})]}),a.jsxs("div",{style:Ee,children:[a.jsx("span",{style:Ie,children:"Free Margin:"}),a.jsxs("span",{style:{...Ze,color:ee>=0?$:M},children:["$",ne(ee)]})]}),a.jsxs("div",{style:{...Ee,borderRight:"none",marginRight:0,paddingRight:0},children:[a.jsx("span",{style:Ie,children:"Margin Level:"}),a.jsx("span",{style:{...Ze,color:se>=100?F:M},children:X>0?se.toFixed(2)+"%":"—"})]}),j.length>0&&a.jsxs("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:"4px"},children:[a.jsx("span",{style:Ie,children:"Float P/L:"}),a.jsxs("span",{style:{...Ze,color:le>=0?F:M,fontWeight:700},children:[le>=0?"+":"",ne(le)]})]})]}),a.jsxs("div",{style:ze,children:[a.jsx("button",{style:Ce(U==="trade"),onClick:()=>c&&c(!1),children:"Trade"}),a.jsx("button",{style:Ce(U==="history"),onClick:()=>c&&c(!0),children:"History"})]}),U==="trade"&&a.jsx("div",{style:{overflowY:"auto",flex:1},children:a.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",minWidth:"800px"},children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:Ne,children:"Symbol"}),a.jsx("th",{style:Ne,children:"Ticket"}),a.jsx("th",{style:Ne,children:"Time"}),a.jsx("th",{style:Ne,children:"Type"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Volume"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Price"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"S/L"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"T/P"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Current"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Profit"}),a.jsx("th",{style:{...Ne,textAlign:"center"},children:"Action"}),a.jsx("th",{style:{...Ne,textAlign:"center"},children:"Close"})]})}),a.jsx("tbody",{children:j.length===0?a.jsx("tr",{children:a.jsx("td",{colSpan:12,style:{...Se,textAlign:"center",padding:"16px",color:V},children:"No open positions"})}):j.map(fe=>{const Pe=fe.livePnL??fe.profit??0,Je=Pe>=0?F:M;return a.jsxs("tr",{style:{cursor:"default"},onMouseEnter:it=>it.currentTarget.style.backgroundColor=q,onMouseLeave:it=>it.currentTarget.style.backgroundColor="transparent",children:[a.jsx("td",{style:{...Se,fontWeight:700,color:$,letterSpacing:"0.02em"},children:fe.symbol}),a.jsx("td",{style:{...Se,color:V,fontSize:"10px"},children:String(fe.id||"").slice(0,8).toUpperCase()}),a.jsx("td",{style:{...Se,color:V},children:xe(fe.openAt||fe.time)}),a.jsx("td",{style:{...Se,fontWeight:700,color:fe.type==="BUY"?F:M},children:fe.type}),a.jsx("td",{style:{...Se,textAlign:"right"},children:we(fe.volume)}),a.jsx("td",{style:{...Se,textAlign:"right"},children:he(fe.price??fe.openPrice)}),a.jsx("td",{style:{...Se,textAlign:"right",color:fe.stopLoss?M:V},children:fe.stopLoss?he(fe.stopLoss):"—"}),a.jsx("td",{style:{...Se,textAlign:"right",color:fe.takeProfit?F:V},children:fe.takeProfit?he(fe.takeProfit):"—"}),a.jsx("td",{style:{...Se,textAlign:"right",color:V}}),a.jsx("td",{style:{...Se,textAlign:"right",fontWeight:700,color:Je},children:de(Pe)}),a.jsx("td",{style:{...Se,textAlign:"center"},children:a.jsx("button",{onClick:it=>ye(it,fe),title:"Modify TP/SL",style:{background:"none",border:"none",cursor:"pointer",color:V,padding:"2px 4px",borderRadius:"3px",fontSize:"11px",lineHeight:1},onMouseEnter:it=>it.currentTarget.style.color="#f59e0b",onMouseLeave:it=>it.currentTarget.style.color=V,children:"✎"})}),a.jsx("td",{style:{...Se,textAlign:"right",fontWeight:700,color:Je},children:a.jsx("button",{onClick:it=>Ue(it,fe),title:"Close position",style:{padding:"2px 8px",backgroundColor:"#7f1d1d",border:"1px solid #991b1b",borderRadius:"3px",color:"#fca5a5",fontSize:"10px",fontWeight:700,cursor:"pointer"},onMouseEnter:it=>it.currentTarget.style.backgroundColor="#991b1b",onMouseLeave:it=>it.currentTarget.style.backgroundColor="#7f1d1d",children:"Close"})})]},fe.id)})})]})}),U==="history"&&a.jsx("div",{style:{overflowY:"auto",flex:1},children:a.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",minWidth:"900px"},children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:Ne,children:"Symbol"}),a.jsx("th",{style:Ne,children:"Ticket"}),a.jsx("th",{style:Ne,children:"Open Time"}),a.jsx("th",{style:Ne,children:"Type"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Volume"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Open Price"}),a.jsx("th",{style:Ne,children:"Close Time"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Close Price"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"S/L"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"T/P"}),a.jsx("th",{style:{...Ne,textAlign:"right"},children:"Profit"})]})}),a.jsx("tbody",{children:b.length===0?a.jsx("tr",{children:a.jsx("td",{colSpan:11,style:{...Se,textAlign:"center",padding:"16px",color:V},children:"No trade history"})}):b.map(fe=>{const Pe=fe.profit??0,Je=Pe>=0?F:M;return a.jsxs("tr",{style:{cursor:"default"},onMouseEnter:it=>it.currentTarget.style.backgroundColor=q,onMouseLeave:it=>it.currentTarget.style.backgroundColor="transparent",children:[a.jsx("td",{style:{...Se,fontWeight:700,color:$,letterSpacing:"0.02em"},children:fe.symbol}),a.jsx("td",{style:{...Se,color:V,fontSize:"10px"},children:String(fe.id||"").slice(0,8).toUpperCase()}),a.jsx("td",{style:{...Se,color:V},children:xe(fe.openAt)}),a.jsx("td",{style:{...Se,fontWeight:700,color:fe.type==="BUY"?F:M},children:fe.type}),a.jsx("td",{style:{...Se,textAlign:"right"},children:we(fe.volume)}),a.jsx("td",{style:{...Se,textAlign:"right"},children:he(fe.openPrice)}),a.jsx("td",{style:{...Se,color:V},children:xe(fe.closeAt)}),a.jsx("td",{style:{...Se,textAlign:"right"},children:he(fe.closePrice)}),a.jsx("td",{style:{...Se,textAlign:"right",color:fe.stopLoss?M:V},children:fe.stopLoss?he(fe.stopLoss):"—"}),a.jsx("td",{style:{...Se,textAlign:"right",color:fe.takeProfit?F:V},children:fe.takeProfit?he(fe.takeProfit):"—"}),a.jsx("td",{style:{...Se,textAlign:"right",fontWeight:700,color:Je},children:de(Pe)})]},fe.id)})})]})})]})},BT="2.3.2";je.AccountPanel=wT,je.BuySellPanel=Ch,je.Chart=eT,je.ChartTypeSelector=oT,je.CoinSelector=Wd,je.DrawingTools=Xd,je.LeftSidebar=fT,je.MarketExecutionModal=vh,je.MarketWatch=mT,je.PositionsPanel=lT,je.SYMBOL_CONFIG=Na,je.StopLoss=Gd,je.TakeProfit=$d,je.TimeframeSelector=nT,je.ToolCustomizationModal=Fh,je.TopBar=pT,je.TradePanel=aT,je.TradingProvider=cm,je.TradingToolbar=iT,je.VolumeControl=Rd,je.alignToTimeframe=We,je.detectGaps=op,je.getSymbolConfig=Oi,je.is24x7Symbol=sp,je.isCryptoSymbol=np,je.isForexSymbol=rp,je.isWithinTradingSession=ap,je.normalizeCandleTimes=Ka,je.normalizeTime=Y,je.processCandles=Ra,je.processSingleCandle=Ga,je.setSocketBaseUrl=ph,je.timeframeToSeconds=tA,je.useTrading=Lt,je.validateTimeOrdering=lp,je.version=BT,Object.defineProperty(je,Symbol.toStringTag,{value:"Module"})}));
|