(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[98312,86914],{153764:e=>{e.exports={pair:"pair-ocURKVwI",xxceptionallysmalldonotusebrv1023:"xxceptionallysmalldonotusebrv1023-ocURKVwI",xxxxsmall:"xxxxsmall-ocURKVwI",xxxsmall:"xxxsmall-ocURKVwI",xxsmall:"xxsmall-ocURKVwI",xsmall:"xsmall-ocURKVwI",small:"small-ocURKVwI",medium:"medium-ocURKVwI",large:"large-ocURKVwI",xlarge:"xlarge-ocURKVwI",xxlarge:"xxlarge-ocURKVwI",xxxlarge:"xxxlarge-ocURKVwI",logo:"logo-ocURKVwI",skeleton:"skeleton-ocURKVwI",empty:"empty-ocURKVwI"}},554100:e=>{e.exports={logo:"logo-PsAlMQQF",hidden:"hidden-PsAlMQQF",xxceptionallysmalldonotusebrv1023:"xxceptionallysmalldonotusebrv1023-PsAlMQQF",xxxsmall:"xxxsmall-PsAlMQQF",xxsmall:"xxsmall-PsAlMQQF",xsmall:"xsmall-PsAlMQQF",small:"small-PsAlMQQF",medium:"medium-PsAlMQQF",large:"large-PsAlMQQF",xlarge:"xlarge-PsAlMQQF",xxlarge:"xxlarge-PsAlMQQF",xxxlarge:"xxxlarge-PsAlMQQF",skeleton:"skeleton-PsAlMQQF",letter:"letter-PsAlMQQF"}},744396:e=>{e.exports={wrapper:"wrapper-TJ9ObuLF",animated:"animated-TJ9ObuLF",pulsation:"pulsation-TJ9ObuLF"}},98532:e=>{e.exports={"tv-spinner__container-rotate":"tv-spinner__container-rotate-aLqboHuu"}},829699:(e,t,s)=>{"use strict";s.d(t,{getBlockStyleClasses:()=>l,getLogoStyleClasses:()=>c});var r=s(914487),i=s.n(r),o=s(140095),n=s(153764),a=s.n(n);function l(e,t){return i()(a().pair,a()[e],t)}function c(e,t=2,s=!0){return i()(a().logo,a()[e],a().skeleton,o.skeletonTheme.wrapper,!s&&a().empty,1===t&&i()(o.skeletonTheme.animated))}},338390:(e,t,s)=>{"use strict";s.d(t,{getStyleClasses:()=>l,isCircleLogoWithUrlProps:()=>c});var r=s(914487),i=s.n(r),o=s(140095),n=s(554100),a=s.n(n);function l(e,t=2,s){return i()(a().logo,a()[e],s,0===t||1===t?i()(o.skeletonTheme.wrapper,a().skeleton):a().letter,1===t&&o.skeletonTheme.animated)}function c(e){return"logoUrl"in e&&null!==e.logoUrl&&void 0!==e.logoUrl&&0!==e.logoUrl.length}},666957:(e,t,s)=>{"use strict";s.d(t,{colorsPalette:()=>h,getHexColorByName:()=>u});var r=s(630614),i=s(133621),o=s(185842);const n={...r,...i},a={},l=Object.keys(n).length,c=/^#(([a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i;function d(e,t=[],s=n){const r=s[e];if(!r)return null;if(c.test(r))return r;const i=r;return t.push(e),-1!==t.indexOf(i)?(console.warn("Colors definitions cycled"),r):t.length>l?(console.warn("Too many variables-link in HEX-color search: "+t[0]),null):d(i,t,s)}Object.keys(n).forEach((e=>{const t=d(e);a[e]=(0,o.ensureNotNull)(t)}));const h=a;function u(e,t=h){const s=t[e];if(!s){if(c.test(e))return e;throw new Error("No such color "+e)}return s}},140095:(e,t,s)=>{"use strict";s.d(t,{skeletonTheme:()=>i});var r=s(744396);const i=s.n(r)()},103372:(e,t,s)=>{"use strict";s.d(t,{DEFAULT_SIZE:()=>r,spinnerSizeMap:()=>i});const r="large",i={mini:"xsmall",xxsmall:"xxsmall",xsmall:"xsmall",small:"small",medium:"medium",large:"large"}},994497:(e,t,s)=>{"use strict";s.d(t,{Spinner:()=>o});s(98532);var r=s(359221),i=s(103372);class o{constructor(e){this._shown=!1,this._el=(0,r.parseHtmlElement)(function(e=""){ return`
`}()),this.setSize(i.spinnerSizeMap[e||i.DEFAULT_SIZE])}spin(e){return this._el.classList.add("tv-spinner--shown"),void 0===this._container&&(this._container=e,void 0!==e&&e.appendChild(this._el)),this._shown=!0,this}stop(e){return e&&void 0!==this._container&&this._container.removeChild(this._el),this._el&&this._el.classList.remove("tv-spinner--shown"),this._shown=!1,this}setStyle(e){return Object.keys(e).forEach((t=>{const s=e[t];void 0!==s&&this._el.style.setProperty(t,s)})),this}style(){return this._el.style}setSize(e){const t=void 0!==e?`tv-spinner--size_${e}`:"";return this._el.className=`tv-spinner ${t} ${this._shown?"tv-spinner--shown":""}`,this}getEl(){return this._el}destroy(){this.stop(),delete this._el,delete this._container}}},901643:(e,t,s)=>{"use strict";s.d(t,{getCircleLogoAnyHtml:()=>a});var r=s(338390);s(554100);function i(e){const t=(0,r.getStyleClasses)(e.size,2,e.className);return(0,r.isCircleLogoWithUrlProps)(e)?``:`${e.placeholderLetter||""}`}var o=s(829699);function n(e){const{logoUrl:t,size:s}=e,r=(0,o.getLogoStyleClasses)(s,2,Boolean(t));return void 0===t?``:``}function a(e){const{logoUrls:t,...s}=e;return 1===t.length?i({logoUrl:t[0],...s}):2===t.length?function(e){const{primaryLogoUrl:t,secondaryLogoUrl:s,size:r,className:i}=e;return`\n\t\t\t${n({logoUrl:s,size:r})}\n\t\t\t${n({logoUrl:t,size:r})}\n\t\t`}({primaryLogoUrl:t[0],secondaryLogoUrl:t[1],...s}):i({logoUrl:void 0,...s})}},357963:(e,t,s)=>{"use strict";s.d(t,{ChartSession:()=>o});var r=s(875500),i=s(877999);class o extends i.Session{constructor(e,t=!1){super(e,"cs",!1),this._sessionDisabled=!1,this._handler=null,this._criticalError=new r.Delegate,this._symbolResolveMap=new Map,this._lastSymbolResolveInfoMap=new Map,this._disableStatistics=t}destroy(){this._criticalError.destroy(),this._handler=null,this._symbolResolveMap.clear(),super.destroy()}switchTimezone(e){return this._getChartApi().switchTimezone(this.sessionId(),e)}defaultResolutions(){return this._getChartApi().defaultResolutions()}availableCurrencies(){return this._getChartApi().availableCurrencies()}availableUnits(){return this._getChartApi().availableUnits()}availableMetrics(){return this._getChartApi().availableMetrics()}availablePriceSources(e){return this._getChartApi().availablePriceSources(e)}resolveSymbol(e,t,s){if(this._symbolResolveMap.has(t)){const[e,r]=this._symbolResolveMap.get(t);return Array.isArray(r)?r.push(s):r.then(s),e}{const r=[s];return this._getChartApi().resolveSymbol(this.sessionId(),e,t,(s=>{if("symbol_error"===s.method)this._symbolResolveMap.delete(t);else{this._symbolResolveMap.set(t,[e,Promise.resolve(s)]);const[,r]=s.params,i={pro_name:r.pro_name,ticker:r.ticker};this._lastSymbolResolveInfoMap.set(t,i),i.pro_name&&this._lastSymbolResolveInfoMap.set(i.pro_name,i), r.full_name&&this._lastSymbolResolveInfoMap.set(r.full_name,i),i.ticker&&this._lastSymbolResolveInfoMap.set(i.ticker,i)}r.forEach((e=>e(s)))})),this._symbolResolveMap.set(t,[e,r]),e}}requestFirstBarTime(e,t,s){return this._getChartApi().requestFirstBarTime(this.sessionId(),e,t,s)}lastSymbolResolveInfo(e){return this._lastSymbolResolveInfoMap.get(e)??null}createSeries(e,t,s,r,i,o,n){return this._getChartApi().createSeries(this.sessionId(),e,t,s,r,i,o,n)}modifySeries(e,t,s,r,i,o,n){return this._getChartApi().modifySeries(this.sessionId(),e,t,s,r,i,o,n)}removeSeries(e){return!!this.isConnected().value()&&this._getChartApi().removeSeries(this.sessionId(),e)}requestMoreData(e,t,s){return"number"==typeof e?this._getChartApi().requestMoreData(this.sessionId(),e):this._getChartApi().requestMoreData(this.sessionId(),e,t,s)}requestMoreTickmarks(e,t,s){return this._getChartApi().requestMoreTickmarks(this.sessionId(),e,t,s)}setFutureTickmarksMode(e){return this._getChartApi().setFutureTickmarksMode(this.sessionId(),e)}canCreateStudy(e,t){return this._getChartApi().canCreateStudy(this.sessionId(),e,t)}getStudyCounter(){return this._getChartApi().getStudyCounter(this.sessionId())}getFundamentalCounter(){return this._getChartApi().getFundamentalCounter(this.sessionId())}getChildStudyCounter(){return this._getChartApi().getChildStudyCounter(this.sessionId())}createStudy(e,t,s,r,i,o,n){return this._getChartApi().createStudy(this.sessionId(),e,t,s,r,i,o,n)}modifyStudy(e,t,s,r,i){return this._getChartApi().modifyStudy(this.sessionId(),e,t,s,r,i)}notifyStudy(e,t,s){return this._getChartApi().notifyStudy(this.sessionId(),e,t,s)}removeStudy(e){return this._getChartApi().removeStudy(this.sessionId(),e)}createPointset(e,t,s,r,i,o){return this._getChartApi().createPointset(this.sessionId(),e,t,s,r,i,o)}modifyPointset(e,t,s,r){return this._getChartApi().modifyPointset(this.sessionId(),e,t,s,r)}removePointset(e){return this._getChartApi().removePointset(this.sessionId(),e)}setVisibleTimeRange(e,t,s,r,i,o,n){0}criticalError(){return this._criticalError}connect(e=null){null!==e&&(this._handler=e),this._symbolResolveMap.clear(),super.connect()}setHandler(e){this._handler=e}connected(){return this.isConnected().value()&&!this._sessionDisabled}disable(){this._sessionDisabled=!0}chartApi(){return this._getChartApi()}_sendCreateSession(){Object.keys(this).forEach((e=>{/^(s|st|symbol_)\d+$/.test(e)&&delete this[e]})),this._getChartApi().chartCreateSession(this.sessionId(),this._disableStatistics)}_sendRemoveSession(){this._getChartApi().chartDeleteSession(this.sessionId())}_onMessage(e){this._handler&&this._handler(e)}_onCriticalError(e,t){this._criticalError.fire(e,t),super._onCriticalError(e,t)}}},656713:(e,t,s)=>{"use strict";var r,i;function o(e,t){return"period-back"===e.type&&"period-back"===t.type?e.value===t.value:"time-range"===e.type&&"time-range"===t.type&&(e.from===t.from&&e.to===t.to)}s.d(t,{areEqualTimeFrames:()=>o}),function(e){e.extractErrorReason=function(e){return e.params[1]}}(r||(r={})),function(e){e.PeriodBack="period-back", e.TimeRange="time-range"}(i||(i={}))},686330:(e,t,s)=>{"use strict";s.d(t,{getServerInterval:()=>i});var r=s(357966);function i(e){return r.Interval.isRange(e)?"1":e}},641422:(e,t,s)=>{"use strict";function r(e){const t=Object.create(e);return t.release=()=>{},t.ownership=()=>t,t}function i(e){const t=e;return t.release=()=>t.destroy(),t.ownership=()=>t,t}s.d(t,{ownership:()=>i,weakReference:()=>r})},690522:(e,t,s)=>{"use strict";s.d(t,{WatchedObject:()=>r.WatchedObject});var r=s(654233)},508836:(e,t,s)=>{"use strict";s.d(t,{ConflatedChunksBuilder:()=>n});var r=s(185842),i=s(188485);const o=[{barsToMerge:10,forBarspacingLargerThen:.03},{barsToMerge:30,forBarspacingLargerThen:.01},{barsToMerge:100,forBarspacingLargerThen:.003},{barsToMerge:500,forBarspacingLargerThen:0}];class n{constructor(e,t){this._plots=e,this._state={chunks:new Map,priceSource:null,priceSourcesProvider:t},this._setEmptyConflatedChunks()}conflatedChunks(e,t){if(t!==this._state.priceSource){this._state.priceSource=t;const e=this._plots.first();e&&(this._setEmptyConflatedChunks(),this._rebuildConflatedChunks(e))}const s=(0,r.ensureDefined)(o.find((t=>t.forBarspacingLargerThen<=e)));return(0,r.ensureDefined)(this._state.chunks.get(s.barsToMerge))}mergeData(e){const t=this._plots.size(),s=this._plots.merge(e);return s&&null!==this._state.priceSource&&(t===this._plots.size()&&s.index===this._plots.lastIndex()?this._updateLatestChunks():this._rebuildConflatedChunks(s)),s}moveData(e){this._plots.move(e),this._plots.size()>0&&this._clearState()}clearData(){this._plots.clear(),this._clearState()}_rebuildConflatedChunks(e){const t=this._state.priceSource;if(null===t)return;const s=e.index,n=this._state.priceSourcesProvider(t),a=(e,t,s)=>{let r=null;for(const i of e){const e=n(i.value);r&&i.index-r.startTime>=s.barsToMerge&&(t.push(r),r=null),r?(r.endTime=i.index,r.high=Math.max(r.high,e),r.low=Math.min(r.low,e),r.close=e):r={startTime:i.index,endTime:i.index,open:e,high:e,low:e,close:e}}r&&t.push(r)};o.forEach((e=>{const t=(0,r.ensureDefined)(this._state.chunks.get(e.barsToMerge)),o=(0,i.lowerbound)(t,s,((e,t)=>e.endTime0){const s=t[0].startTime-1,i=(0,r.ensureNotNull)(this._plots.firstIndex()),o=this._plots.rangeIterator(i,s),n=[];a(o,n,e);const l=n.concat(t);this._state.chunks.set(e.barsToMerge,l)}else{const s=(0,r.ensureNotNull)(this._plots.lastIndex());t.splice(o);let i=(0,r.ensureNotNull)(this._plots.firstIndex());t.length&&(i=t[t.length-1].endTime+1);const n=this._plots.rangeIterator(i,s);a(n,t,e)}}))}_updateLatestChunks(){const e=(0,r.ensureNotNull)(this._plots.last()),t=this._state.priceSourcesProvider("close");o.forEach((s=>{const i=(0,r.ensureDefined)(this._state.chunks.get(s.barsToMerge)),o=t(e.value),n=i[i.length-1];n.high=Math.max(n.high,o),n.low=Math.min(n.low,o),n.close=o,n.endTime=e.index}))}_setEmptyConflatedChunks(){o.forEach((e=>this._state.chunks.set(e.barsToMerge,[])))}_clearState(){this._state.chunks.clear(),this._state.priceSource=null}}},976078:(e,t,s)=>{"use strict";s.d(t,{ extractSymbolNameFromSymbolInfo:()=>l});var r=s(266150);const i=(0,r.isFeaturesetEnabled)("pay_attention_to_ticker_not_symbol"),o=(0,r.isFeaturesetEnabled)("charting_library_single_symbol_request"),n=(0,r.isFeaturesetEnabled)("use_ticker_on_symbol_info_update"),a=(0,r.isFeaturesetEnabled)("uppercase_instrument_names");function l(e,t,s,r){let l=e&&(s&&e.pro_name||e.full_name||e.name);return o&&t?l=t:(n||!r&&i)&&e&&e.ticker&&(l=e.ticker),a&&l&&(l=l.toUpperCase()),l}},540768:(e,t,s)=>{"use strict";s.d(t,{DateFormatter:()=>o});var r=s(310834),i=s(855303);class o{constructor(e="yyyy-MM-dd",t=!1,s="UTC"){this._dateFormatFunc=t?(0,i.getDateFormatWithWeekday)(e,s):i.dateFormatFunctions[e]}format(e){return r.customFormatters&&r.customFormatters.dateFormatter?r.customFormatters.dateFormatter.format(e):this._dateFormatFunc(e,!1)}formatLocal(e){return r.customFormatters.dateFormatter?r.customFormatters.dateFormatter.formatLocal?r.customFormatters.dateFormatter.formatLocal(e):r.customFormatters.dateFormatter.format(e):this._dateFormatFunc(e,!0)}parse(e){if(""===e)return{res:!1};let t=e;return r.customFormatters&&r.customFormatters.dateFormatter&&!r.customFormatters.dateFormatter.parse&&console.warn("You need to provide a `parse` function as part of `dateFormatter`"),r.customFormatters&&r.customFormatters.dateFormatter&&r.customFormatters.dateFormatter.parse&&(t=String(r.customFormatters.dateFormatter.parse(e))),{res:!0,value:t}}}},149274:(e,t,s)=>{"use strict";s.d(t,{DateTimeFormatter:()=>n});var r=s(273497),i=s(540768);const o={dateFormat:"yyyy-MM-dd",withWeekday:!1,timeFormat:r.hourMinuteSecondFormat,dateTimeSeparator:" "};class n{constructor(e={}){const t=Object.assign({},o,e);this._dateFormatter=new i.DateFormatter(t.dateFormat,t.withWeekday,t.timezone),this._timeFormatter=new r.TimeFormatter(t.timeFormat),this._separator=t.dateTimeSeparator}format(e,t){const s=t?.dateTimeSeparator??this._separator;return`${this._dateFormatter.format(e)}${s}${this._timeFormatter.format(e)}`}formatLocal(e,t){const s=t?.dateTimeSeparator??this._separator;return`${this._dateFormatter.formatLocal(e)}${s}${this._timeFormatter.formatLocal(e)}`}}},640625:(e,t,s)=>{"use strict";s.d(t,{hourMinuteFormat:()=>n,hourMinuteNonZeroSecondFormat:()=>i,hourMinuteSecondFormat:()=>r,hourMinuteSecondMillisecFormat:()=>o,twelveHourMinuteFormat:()=>c,twelveHourMinuteNonZeroSecondFormat:()=>l,twelveHourMinuteSecondFormat:()=>a});const r="%h:%m:%s",i="%h:%m:%s+",o="%h:%m:%s.%ss+",n="%h:%m",a="%h:%m:%s %ampm",l="%h:%m:%s+ %ampm",c="%h:%m %ampm"},273497:(e,t,s)=>{"use strict";s.d(t,{TimeFormatter:()=>n,hourMinuteFormat:()=>o.hourMinuteFormat,hourMinuteNonZeroSecondFormat:()=>o.hourMinuteNonZeroSecondFormat,hourMinuteSecondFormat:()=>o.hourMinuteSecondFormat,hourMinuteSecondMillisecFormat:()=>o.hourMinuteSecondMillisecFormat,twelveHourMinuteFormat:()=>o.twelveHourMinuteFormat,twelveHourMinuteNonZeroSecondFormat:()=>o.twelveHourMinuteNonZeroSecondFormat,twelveHourMinuteSecondFormat:()=>o.twelveHourMinuteSecondFormat});var r=s(310834),i=s(513433),o=s(640625);class n{ constructor(e){this._isTwelveHoursFormat=!1,this._valuesAndDelimeters=[];const t=e||o.hourMinuteSecondFormat,s=new RegExp("%h|%m|%s\\+|%ss\\+|%ss|%ampm|%s","g");let r=s.exec(t),i=0;for(;null!==r;){const e=r[0];"%ampm"===e&&(this._isTwelveHoursFormat=!0);const o=t.substring(i,r.index);""!==o&&this._valuesAndDelimeters.push(o),this._valuesAndDelimeters.push(e),i=r.index+e.length,r=s.exec(t)}}format(e){return r.customFormatters.timeFormatter?r.customFormatters.timeFormatter.format(e):this._formatTime(e,!1)}formatLocal(e){return r.customFormatters.timeFormatter?r.customFormatters.timeFormatter.formatLocal?r.customFormatters.timeFormatter.formatLocal(e):r.customFormatters.timeFormatter.format(e):this._formatTime(e,!0)}_formatTime(e,t){let s=t?e.getHours():e.getUTCHours();const r=t?e.getMinutes():e.getUTCMinutes(),o=t?e.getSeconds():e.getUTCSeconds(),n=t?e.getMilliseconds():e.getUTCMilliseconds();let a="";this._isTwelveHoursFormat&&(a=s>=12?"PM":"AM",s%=12,s=s||12);let l="",c=!1;for(let e=this._valuesAndDelimeters.length-1;e>=0;e--){const t=this._valuesAndDelimeters[e];let d;switch(t){case"%h":d=(0,i.numberToStringWithLeadingZero)(s,2);break;case"%m":d=(0,i.numberToStringWithLeadingZero)(r,2);break;case"%s+":0!==o?d=(0,i.numberToStringWithLeadingZero)(o,2):(d="",c=!0);break;case"%s":d=(0,i.numberToStringWithLeadingZero)(o,2);break;case"%ss":d=(0,i.numberToStringWithLeadingZero)(n,3);break;case"%ss+":0!==n?d=(0,i.numberToStringWithLeadingZero)(n,3):(d="",c=!0);break;case"%ampm":d=a;break;default:if(c){c=!1;continue}d=t}l=d+l}return l}}},276479:(e,t,s)=>{"use strict";var r;s.d(t,{SymbolErrorPermissionDeniedReason:()=>r,invalidSymbol:()=>o,permissionDenied:()=>i}),function(e){e.Symbol="symbol",e.GroupPermission="group"}(r||(r={}));const i="permission denied",o="invalid symbol"},164253:(e,t,s)=>{"use strict";s.d(t,{unpackNonSeriesData:()=>a});var r=s(422872),i=s(185842);function o(e){if(!(0,r.isObject)(e))throw new Error("Graphics commands should be wrapped in an object");if((0,r.hasProperty)(e,"create"),(0,r.hasProperty)(e,"erase")){const t=e.erase;(0,i.assert)(Array.isArray(t),"Collection of erase commands should be array");for(const e of t){if(!(0,r.isObject)(e)||!(0,r.hasProperty)(e,"action"))throw new Error("Command should be an object with 'action' property");(0,i.assert)("all"===e.action||"one"===e.action,"Erase command action should be 'all' or 'one'")}}return e}async function n(e){{const[{inflateZlib:t,inflateRaw:r},{unpackImpl:i}]=await Promise.all(["function"==typeof DecompressionStream?s.e(21260).then(s.bind(s,294044)):Promise.all([s.e(24698),s.e(62234)]).then(s.bind(s,848322)),s.e(21260).then(s.bind(s,688945))]);return i(t,r,e)}}async function a(e){if(""===e)return null;const t=JSON.parse(e);if(!(0,r.isObject)(t)||"function"==typeof t)throw new Error("Non-object content in the non-series envelope");if((0,r.hasProperty)(t,"indexes_replace"))return{indexes_replace:!0};const s={indexes_replace:!1};if((0,r.hasProperty)(t,"offsets")&&(s.offsets=t.offsets),(0,r.hasProperty)(t,"isUpdate")){ if("boolean"!=typeof t.isUpdate)throw new Error('Invalid type of "isUpdate" field');s.isUpdate=t.isUpdate}return(0,r.hasProperty)(t,"data")&&(s.data=t.data),(0,r.hasProperty)(t,"graphicsCmds")&&(s.graphicsCmds=o(t.graphicsCmds)),(0,r.hasProperty)(t,"dataCompressed")&&(s.data=await n(t.dataCompressed)),(0,r.hasProperty)(t,"graphicsCmdsCompressed")&&(s.graphicsCmds=o(await n(t.graphicsCmdsCompressed))),s}},813006:(e,t,s)=>{"use strict";s.d(t,{PropertyBase:()=>o});var r=s(185842),i=s(875500);class o{constructor(){this._listeners=new i.Delegate,this._muteChildChanges=!1,this._owner=null,this._name=""}nameInOwner(){return this._name}setNameInOwner(e){this._name=e}owner(){return this._owner}setOwner(e){this._owner=e}pathToRoot(){const e=this._owner?.pathToRoot();return e?`${e}.${this._name}`:this._name}pathToRootProperty(){if(!this._owner)return"";const e=this._owner.pathToRootProperty?.();return e?`${e}.${this._name}`:this._name}removeProperty(e){(0,r.assert)(!1,`Trying to call "removeProperty" on property ${this.pathToRoot()}`)}addChild(e,t){(0,r.assert)(!1,`Trying to call "addChild" on property ${this.pathToRoot()}`)}hasChild(e){return!1}childCount(){return 0}childNames(){return[]}childs(){(0,r.assert)(!1,`Trying to call "childs" on property ${this.pathToRoot()}`)}state(e,t){return this.value()}merge(e,t){(0,r.assert)(!1,`Trying to call "merge" on property ${this.pathToRoot()}`)}mergeAndFire(e){(0,r.assert)(!1,`Trying to call "mergeAndFire" on property ${this.pathToRoot()}`)}child(e){if(this.hasChild(e))return this.childs()[e]}muteChildChanges(e){this._muteChildChanges=e}fireChanged(){this._listeners.fire(this,this.pathToRootProperty())}listeners(){return this._listeners}subscribe(e,t){this.listeners().subscribe(e,t,!1)}unsubscribe(e,t){this.listeners().unsubscribe(e,t)}unsubscribeAll(e){this.listeners().unsubscribeAll(e)}}},199250:(e,t,s)=>{"use strict";s(8914)},888211:(e,t,s)=>{"use strict";s.d(t,{SeriesDataEvents:()=>i});var r=s(875500);class i{constructor(){this._created=new r.Delegate,this._modified=new r.Delegate,this._cleared=new r.Delegate,this._loading=new r.Delegate,this._completed=new r.Delegate,this._error=new r.Delegate,this._symbolError=new r.Delegate,this._symbolResolved=new r.Delegate,this._seriesError=new r.Delegate,this._symbolNotPermitted=new r.Delegate,this._symbolInvalid=new r.Delegate,this._symbolGroupNotPermitted=new r.Delegate,this._chartTypeNotPermitted=new r.Delegate,this._intradaySpreadNotPermitted=new r.Delegate,this._intradayExchangeNotPermitted=new r.Delegate,this._customIntervalNotPermitted=new r.Delegate,this._secondsIntervalNotPermitted=new r.Delegate,this._ticksIntervalNotPermitted=new r.Delegate,this._barReceived=new r.Delegate,this._seriesTimeFrame=new r.Delegate,this._dataUpdated=new r.Delegate,this._unsupportedResolutionRequested=new r.Delegate}destroy(){this._created.destroy(),this._modified.destroy(),this._loading.destroy(),this._completed.destroy(),this._error.destroy(),this._symbolError.destroy(),this._symbolResolved.destroy(),this._seriesError.destroy(), this._symbolInvalid.destroy(),this._symbolNotPermitted.destroy(),this._symbolGroupNotPermitted.destroy(),this._chartTypeNotPermitted.destroy(),this._intradaySpreadNotPermitted.destroy(),this._intradayExchangeNotPermitted.destroy(),this._customIntervalNotPermitted.destroy(),this._secondsIntervalNotPermitted.destroy(),this._ticksIntervalNotPermitted.destroy(),this._barReceived.destroy(),this._seriesTimeFrame.destroy(),this._dataUpdated.destroy(),this._unsupportedResolutionRequested.destroy()}created(){return this._created}modified(){return this._modified}cleared(){return this._cleared}loading(){return this._loading}completed(){return this._completed}error(){return this._error}symbolError(){return this._symbolError}symbolResolved(){return this._symbolResolved}seriesError(){return this._seriesError}symbolInvalid(){return this._symbolInvalid}symbolNotPermitted(){return this._symbolNotPermitted}symbolGroupNotPermitted(){return this._symbolGroupNotPermitted}chartTypeNotPermitted(){return this._chartTypeNotPermitted}intradaySpreadNotPermitted(){return this._intradaySpreadNotPermitted}intradayExchangeNotPermitted(){return this._intradayExchangeNotPermitted}customIntervalNotPermitted(){return this._customIntervalNotPermitted}secondsIntervalNotPermitted(){return this._secondsIntervalNotPermitted}ticksIntervalNotPermitted(){return this._ticksIntervalNotPermitted}barReceived(){return this._barReceived}seriesTimeFrame(){return this._seriesTimeFrame}dataUpdated(){return this._dataUpdated}unsupportedResolutionRequested(){return this._unsupportedResolutionRequested}fireCompleted(e){this._completed.fire(e)}fireCreated(e){this._created.fire(e)}fireModified(){this._modified.fire()}fireCleared(){this._cleared.fire()}fireLoading(e){this._loading.fire(e)}fireError(){this._error.fire()}fireSymbolError(e){this._symbolError.fire(e),this.fireError()}fireSymbolResolved(e){this._symbolResolved.fire(e)}fireSeriesError(e){this._seriesError.fire(e),this.fireError()}fireSymbolInvalid(){this._symbolInvalid.fire()}fireSymbolNotPermitted(e){this._symbolNotPermitted.fire(e)}fireSymbolGroupNotPermitted(e){this._symbolGroupNotPermitted.fire(e)}fireChartTypeNotPermitted(e){this._chartTypeNotPermitted.fire(e),this.fireError()}fireIntradaySpreadNotPermitted(){this._intradaySpreadNotPermitted.fire(),this.fireError()}fireIntradayExchangeNotPermitted(){this._intradayExchangeNotPermitted.fire(),this.fireError()}fireCustomIntervalNotPermitted(e){this._customIntervalNotPermitted.fire(e),this.fireError()}fireSecondsIntervalNotPermitted(){this._secondsIntervalNotPermitted.fire(),this.fireError()}fireTicksIntervalNotPermitted(){this._ticksIntervalNotPermitted.fire(),this.fireError()}fireBarReceived(e){this._barReceived.fire(e)}fireSeriesTimeFrame(e,t,s,r,i){this._seriesTimeFrame.fire(e,t,s,r,i)}fireDataUpdated(e,t,s,r,i){this._dataUpdated.fire(e,t,s,r,i)}fireUnsupportedResolutionRequested(){this._unsupportedResolutionRequested.fire()}}},877999:(e,t,s)=>{"use strict";s.d(t,{Session:()=>l});var r=s(185842),i=s(168509),o=s(875500),n=s(584104);const a=(0, s(77357).getLogger)("ChartApi.AbstractSession");class l{constructor(e,t,s){this._isConnected=new i.WatchedValue(!1),this._state=0,this._isConnectForbidden=!1,this._sessionId="",this._sessionIdChanged=new o.Delegate,this._chartApi=e,this._sessionPrefix=t,this._shouldReconnectAfterCriticalError=s}destroy(){this._logNormal("Destroying session"),this._isConnected.unsubscribe(),this.disconnect(),this._sessionIdChanged.destroy(),delete this._chartApi,this._logNormal("Session has been destroyed")}isConnected(){return this._isConnected}sessionId(){return this._sessionId}onSessionIdChanged(){return this._sessionIdChanged}connect(){0===this._state&&((0,r.assert)(!this._isConnectForbidden,"Cannot call connect because it is forbidden at this moment"),this._setSessionId(`${this._sessionPrefix}_${(0,n.randomHash)()}`),this._logNormal("Connecting session - wait until transport stay connected"),this._state=1,this._chartApi.createSession(this._sessionId,this))}disconnect(){0!==this._state&&((0,r.assert)(""!==this._sessionId,"sessionId must not be invalid"),this._logNormal("Disconnecting session..."),this._forbidConnectWhile((()=>{this._chartApi.connected()&&this._sendRemoveSession(),this._processDestroyingOnServer()})))}onMessage(e){switch(e.method){case"connected":return void this._onChartApiConnected();case"disconnected":return void this._onChartApiDisconnected();case"critical_error":const t=String(e.params[0]),s=String(e.params[1]);return void this._onCriticalError(t,s)}this._onMessage(e)}serverTime(){return this._chartApi.serverTime()}_getChartApi(){return this._chartApi}_generateLogMessage(e){return`[${this._sessionId}] ${e}`}_onCriticalError(e,t){this._logError(`Critical error. Reason=${e}, info=${t}.`),this._forbidConnectWhile((()=>{this._processDestroyingOnServer()})),this._shouldReconnectAfterCriticalError?(this._logNormal("Reconnecting after critical error..."),this.connect()):this._logNormal("Reconnecting after critical error skipped")}_onChartApiConnected(){(0,r.assert)(1===this._state,"Session is not registered"),this._logNormal("Transport is connected. Creating session on the server"),this._sendCreateSession(),this._state=2,this._isConnected.setValue(!0)}_onChartApiDisconnected(){this._logNormal("Transport is disconnected. Reconnecting..."),this._forbidConnectWhile((()=>{this._processDestroyingOnServer()})),this.connect()}_setSessionId(e){const t=this._sessionId;this._logNormal(`Changing sessionId: old=${t}, new=${e}`),this._sessionId=e,this._sessionIdChanged.fire(e,t)}_logNormal(e){a.logNormal(this._generateLogMessage(e))}_logError(e){a.logError(this._generateLogMessage(e))}_processDestroyingOnServer(){this._state=0,this._isConnected.setValue(!1),this._chartApi.removeSession(this._sessionId),this._setSessionId("")}_forbidConnectWhile(e){this._isConnectForbidden=!0,e(),this._isConnectForbidden=!1}}},426681:(e,t,s)=>{"use strict";s.d(t,{studyTpoPreriodicId:()=>r,studyTpoSessionsId:()=>i});const r="TPOPeriodic@tv-volumebyprice",i="TPOSessions@tv-volumebyprice"},631608:(e,t,s)=>{"use strict";s.d(t,{ studyVolFootprintId:()=>r});const r="Footprint@tv-volumebyprice"},740149:(e,t,s)=>{"use strict";s.d(t,{studyVbPSessionsId:()=>r});const r="VbPSessions@tv-volumebyprice"},314896:(e,t,s)=>{"use strict";function r(e,t,s){return e===t||e===s}s.d(t,{symbolSameAsResolved:()=>r})},395079:(e,t,s)=>{"use strict";s.d(t,{INVALID_TIME_POINT_INDEX:()=>r,UNPLOTTABLE_TIME_POINT_INDEX:()=>i});const r=-2e6,i=-1e6},172137:(e,t,s)=>{"use strict";s.d(t,{AsyncResourceWrapper:()=>r});class r{constructor(e,t){this._destroyed=!1,this._callbacks=[],this._resource={pendingResource:e},this._destroyFn=t,e.then((e=>{if(this._destroyed)this._destroyFn?.(e);else{this._resource.resource=e;for(const t of this._callbacks)t(e)}})).finally((()=>{this._callbacks=[]}))}destroy(){this._resource.resource&&this._destroyFn?.(this._resource.resource),this._resource={pendingResource:Promise.reject("Resource is destroyed").catch((()=>{}))},this._callbacks=[],this._destroyed=!0}callFunction(e){this._destroyed||(this._resource.resource?e(this._resource.resource):this._callbacks.push(e))}get(){return this._destroyed||!this._resource.resource?null:this._resource.resource}promise(){return this._resource.pendingResource}}},501004:(e,t,s)=>{"use strict";s.d(t,{getTimeFrames:()=>o});var r=s(729193),i=s(870754);function o(e){return{"1d":{text:r.t(null,void 0,s(938100)),value:{value:"1D",type:"period-back"},targetResolution:e?.["1D"]??(0,i.stringAsResolution)("1"),description:(0,i.daysStringLiteral)(1)},"5d":{text:r.t(null,void 0,s(82855)),value:{value:"5D",type:"period-back"},targetResolution:e?.["5D"]??(0,i.stringAsResolution)("5"),description:(0,i.daysStringLiteral)(5)},"1w":{text:r.t(null,void 0,s(492135)),value:{value:"7D",type:"period-back"},targetResolution:e?.["5W"]??(0,i.stringAsResolution)("15"),description:(0,i.weeksStringLiteral)(1)},"1m":{text:r.t(null,void 0,s(832733)),value:{value:"1M",type:"period-back"},targetResolution:e?.["1M"]??(0,i.stringAsResolution)("30"),description:(0,i.monthsStringLiteral)(1)},"3m":{text:r.t(null,void 0,s(819078)),value:{value:"3M",type:"period-back"},targetResolution:e?.["3M"]??(0,i.stringAsResolution)("60"),description:(0,i.monthsStringLiteral)(3)},"6m":{text:r.t(null,void 0,s(68076)),value:{value:"6M",type:"period-back"},targetResolution:e?.["6M"]??(0,i.stringAsResolution)("120"),description:(0,i.monthsStringLiteral)(6)},"12m":{text:r.t(null,void 0,s(770303)),value:{value:"12M",type:"period-back"},targetResolution:e?.["12M"]??(0,i.stringAsResolution)("1D"),description:(0,i.yearsStringLiteral)(1)},"24m":{text:r.t(null,void 0,s(934777)),value:{value:"24M",type:"period-back"},targetResolution:e?.["24M"]??(0,i.stringAsResolution)("1W"),description:(0,i.yearsStringLiteral)(2)},"36m":{text:r.t(null,void 0,s(272098)),value:{value:"36M",type:"period-back"},targetResolution:e?.["36M"]??(0,i.stringAsResolution)("1W"),description:(0,i.yearsStringLiteral)(3)},"60m":{text:r.t(null,void 0,s(446560)),value:{value:"60M",type:"period-back"},targetResolution:e?.["60M"]??(0,i.stringAsResolution)("1W"),description:(0,i.yearsStringLiteral)(5)}, "120m":{text:r.t(null,void 0,s(995066)),value:{value:"120M",type:"period-back"},targetResolution:e?.["120M"]??(0,i.stringAsResolution)("1M"),description:(0,i.yearsStringLiteral)(10)},ytd:{text:r.t(null,void 0,s(422369)),value:{value:"YTD",type:"period-back"},targetResolution:e?.YTD??(0,i.stringAsResolution)("1D"),description:r.t(null,void 0,s(485420))},all:{text:r.t(null,void 0,s(233690)),value:{value:"ALL",type:"period-back"},targetResolution:e?.ALL??(0,i.stringAsResolution)("1M")},lastsession:{text:r.t(null,void 0,s(938100)),value:{value:"LASTSESSION",type:"period-back"},targetResolution:e?.LASTSESSION??(0,i.stringAsResolution)("1"),description:(0,i.daysStringLiteral)(1)}}}},100829:(e,t,s)=>{"use strict";s.d(t,{getActualTimeFrame:()=>i});var r=s(501004);function i(e){const t=new Set(Object.values((0,r.getTimeFrames)()).map((e=>e.value.value)));if(t.has(e))return e;const s=e.toUpperCase();return t.has(s)?s:"12M"}},32418:(e,t,s)=>{"use strict";s.d(t,{trackWidgetLoadMetaInfo:()=>i});var r=s(503888);async function i(e){Math.random()>.005||(await(0,r.getEmbedWidgetTracker)())?.trackWidgetLoadMetaInfo(e)}}}]);