this._symbol_data[t]?o&&o[t]||this._symbol_data[t].subscribers_count++:(this._symbol_data[t]={subscribers_count:1},n.push(t)),o[t]=o[t]||[],o[t].push(i),o[t].fast=!0,this._symbol_data[t]&&this._symbol_data[t].values&&i(this._symbol_data[t],this._symbol_data[t])},this),n.length&&(this._quoteApi.quoteAddSymbols(n,{forcePermission:!0}),this._delayUpdateFastSymbols())},o.prototype.unsubscribe=function(t,e,i){varo,n=this._subscriptions[t];n&&(n[e]&&i?(o=n[e].indexOf(i),~o&&n[e].splice(o,1),n[e].length||deleten[e]):deleten[e]),n&&0===Object.keys(n).length&&deletethis._subscriptions[t],this._symbol_data.hasOwnProperty(e)&&(n&&!n[e]&&this._symbol_data[e].subscribers_count--,this._symbol_data[e].subscribers_count||(deletethis._symbol_data[e],this._quoteApi.quoteRemoveSymbols([e]),this._delayUpdateFastSymbols()))},o.prototype.setFastSymbols=function(t,e){vari,o;if(this._subscriptions[t]){i=this._subscriptions[t];for(oini)i[o].fast=-1!==e.indexOf(o)}this._delayUpdateFastSymbols()},o.prototype._updateFastSymbols=function(){if(this._connected){vart=this._fastSymbols();0===t.length?this._quoteApi.quoteHibernateAll():this._quoteApi.quoteFastSymbols(t)}},o.prototype._delayUpdateFastSymbols=o.prototype._updateFastSymbols,o.prototype._fastSymbols=function(){vart,e,i,o=[];for(tinthis._subscriptions){e=this._subscriptions[t];for(iine)e[i].fast&&o.push(i)}returno=l(o)},o.prototype.formatter=function(t){functione(t){returnnewr(t.pricescale,t.minmov,t.fractional,t.minmove2)}functioni(t){returnt&&null!=t.pricescale&&null!=t.minmov}varo,n=this;returnthis._waitingForFormatters[t]?this._waitingForFormatters[t]:(o=newPromise(function(o,r){if(n._formatterValuesCache[t])o(e(n._formatterValuesCache[t]));else{vars=c.guid();n.subscribe(s,[t],function(a){a.error&&(n._waitingForFormatters[t]=null,r(a.error)),i(a.values)&&(n._waitingForFormatters[t]=null,n._formatterValuesCache[t]=a.values,o(e(a.values)),n.unsubscribe(s,t))})}}),this._waitingForFormatters[t]=o,o)},o.prototype.snapshot=function(t){vare,i=this;returnthis._waitingForSnapshot[t]?this._waitingForSnapshot[t]:(e=newPromise(function(e,o){if(i._snapshotValuesCache[t])e(i._snapshotValuesCache[t]);else{varn=c.guid();i.subscribe(n,[t],function(r){r.error&&(i._waitingForSnapshot[t]=null,o(r.error));vars=r.values;s&&s.minmov&&s.pricescale&&s.description&&(i._waitingForSnapshot[t]=null,i._snapshotValuesCache[t]=s,e(s),i.unsubscribe(n,t))})}}),this._waitingForSnapshot[t]=e,e)},TradingView.QuoteSessionMultiplexer=o,void0!==e&&e&&e.exports&&(e.exports=o)}).call(e,i(20),i(78)(t))},,function(t,e){"use strict";functioni(t,e){this.array=[];for(variint)t[i].key=i,this.array.push(t[i]);this.rearrange(e)}i.prototype.rearrange=function(t){if("function"!=typeoft)throwError("sort param is not a function");returnthis.array.sort(t)},i.byValue=function(t){returnfunction(t,e){returnt-e}},i.byField=function(t){returnfunction(e,i){returne[t]>i[t]?1:e[t]<i[t]?-1:e[t]===i[t]?0:void0}},i.byOrder=function(t){returnfunction(e,i){returnt.indexOf(e.key)-t.indexOf(i.key)}},
this._symbol_data[t]?o&&o[t]||this._symbol_data[t].subscribers_count++:(this._symbol_data[t]={subscribers_count:1},n.push(t)),o[t]=o[t]||[],o[t].push(i),o[t].fast=!0,this._symbol_data[t]&&this._symbol_data[t].values&&i(this._symbol_data[t],this._symbol_data[t])},this),n.length&&(this._quoteApi.quoteAddSymbols(n,{forcePermission:!0}),this._delayUpdateFastSymbols())},o.prototype.unsubscribe=function(t,e,i){varo,n=this._subscriptions[t];n&&(n[e]&&i?(o=n[e].indexOf(i),~o&&n[e].splice(o,1),n[e].length||deleten[e]):deleten[e]),n&&0===Object.keys(n).length&&deletethis._subscriptions[t],this._symbol_data.hasOwnProperty(e)&&(n&&!n[e]&&this._symbol_data[e].subscribers_count--,this._symbol_data[e].subscribers_count||(deletethis._symbol_data[e],this._quoteApi.quoteRemoveSymbols([e]),this._delayUpdateFastSymbols()))},o.prototype.setFastSymbols=function(t,e){vari,o;if(this._subscriptions[t]){i=this._subscriptions[t];for(oini)i[o].fast=-1!==e.indexOf(o)}this._delayUpdateFastSymbols()},o.prototype._updateFastSymbols=function(){if(this._connected){vart=this._fastSymbols();0===t.length?this._quoteApi.quoteHibernateAll():this._quoteApi.quoteFastSymbols(t)}},o.prototype._delayUpdateFastSymbols=o.prototype._updateFastSymbols,o.prototype._fastSymbols=function(){vart,e,i,o=[];for(tinthis._subscriptions){e=this._subscriptions[t];for(iine)e[i].fast&&o.push(i)}returno=l(o)},o.prototype.formatter=function(t){functione(t){returnnewr(t.pricescale,t.minmov,t.fractional,t.minmove2)}functioni(t){returnt&&null!=t.pricescale&&null!=t.minmov}varo,n=this;returnthis._waitingForFormatters[t]?this._waitingForFormatters[t]:(o=newPromise(function(o,r){if(n._formatterValuesCache[t])o(e(n._formatterValuesCache[t]));else{vars=c.guid();n.subscribe(s,[t],function(a){a.error&&(n._waitingForFormatters[t]=null,r(a.error)),i(a.values)&&(n._waitingForFormatters[t]=null,n._formatterValuesCache[t]=a.values,o(e(a.values)),n.unsubscribe(s,t))})}}),this._waitingForFormatters[t]=o,o)},o.prototype.snapshot=function(t){vare,i=this;returnthis._waitingForSnapshot[t]?this._waitingForSnapshot[t]:(e=newPromise(function(e,o){if(i._snapshotValuesCache[t])e(i._snapshotValuesCache[t]);else{varn=c.guid();i.subscribe(n,[t],function(r){r.error&&(i._waitingForSnapshot[t]=null,o(r.error));vars=r.values;s&&s.minmov&&s.pricescale&&s.description&&(i._waitingForSnapshot[t]=null,i._snapshotValuesCache[t]=s,e(s),i.unsubscribe(n,t))})}}),this._waitingForSnapshot[t]=e,e)},TradingView.QuoteSessionMultiplexer=o,void0!==e&&e&&e.exports&&(e.exports=o)}).call(e,i(20),i(78)(t))},,function(t,e){"use strict";functioni(t,e){this.array=[];for(variint)t[i].key=i,this.array.push(t[i]);this.rearrange(e)}i.prototype.rearrange=function(t){if("function"!=typeoft)throwError("sort param is not a function");returnthis.array.sort(t)},i.byValue=function(t){returnfunction(t,e){returnt-e}},i.byField=function(t){returnfunction(e,i){returne[t]>i[t]?1:e[t]<i[t]?-1:e[t]===i[t]?0:void0}},i.byOrder=function(t){returnfunction(e,i){returnt.indexOf(e.key)-t.indexOf(i.key)}},
M=this.createGroup("screenshot",{single:!0}).appendTo(this._$right),E=$('<a class="button getimage"></a>').append($(i(1238)).attr({class:"icon"})).addClass("apply-common-tooltip").attr("title",$.t("Take instant snapshot of your chart. No more Paint or other editors to save screenshots – simply click the button and copy the link of the picture.")+"\n"+A).appendTo(M),M.click(function(t){if(!e.enabled("show_dialog_on_snapshot_ready")){if(E.hasClass("process"))return;E.addClass("process"),h.subscribe("onScreenshotReady",function(t){E.removeClass("process")},null,!0)}f.actions().takeScreenshot.callbacks().fire(),t.preventDefault()})),e.enabled("header_saveload")&&(V=e.enabled("header_saveload_to_the_right")?this._$right:this._$left,y=this.createGroup("save-load",{single:!0,showInNarrowView:!0}).appendTo(V),D=$("<div>").addClass("save-load-buttons").appendTo(y),this._saveLoad=news(D,a,{popupDirection:"down",popupReverse:!0}),this._saveLoad.onTitleSizeChanged.subscribe(this,this._onInternalResize),TradingView.isOnFeaturePage&&this._saveLoad.hideTitle()),e.enabled("header_widget_dom_node")||$(".header-chart-panel").css("display","none"),f.withModel(this,r.prototype.bindToModel),this._resizerBridge.availWidth.subscribe(this._onAvailSizeChange.bind(this)),this._resizerBridge.availHeight.subscribe(this._onAvailSizeChange.bind(this)),this._onAvailSizeChange(),this._onInternalResize()}varn=i(819),r=i(744),s=i(1130).SaveLoadWidget,a=i(753),l=i(398),c=i(812),h=i(43),u=i(104),d=i(474).FavoredList,p=i(85),_=i(397);inherit(o,r),o.prototype.saveLoadWidget=function(){returnthis._saveLoad},o.prototype._onAvailSizeChange=function(){vart=this._resizerBridge.availWidth.value()<=520||this._resizerBridge.availHeight.value()<=250;!!this._compactMode!==t&&(this._compactMode=t,this._$root.toggleClass("header-chart-panel--compact",t),this._onInternalResize())},o.prototype.addButton=function(t,e){(e?this._$left:this._$right).append(t),this._onInternalResize()},o.prototype._createUndoRedoGroup=function(){returnthis._undoRedo=newn(this._$left,this._chartWidget),this._undoRedo.undoElement().addClass("apply-common-tooltip"),this._undoRedo.redoElement().addClass("apply-common-tooltip"),this.createGroup("undo-redo",{single:!0}).append(this._undoRedo.element())},o.prototype._createFullscreenGroup=function(){this._fullscreen=newa(this._chartWidgetCollection);vart=this.createGroup("fullscreen",{single:!0});returnthis._fullscreen.element().addClass("apply-common-tooltip").appendTo(t),t},o.prototype._createLayout=function(t,i,o){varn=[];e.enabled("header_chart_type")&&n.push(this._createBarsGroup(i)),e.enabled("header_settings")&&e.enabled("show_chart_property_page")&&n.push(this._createPropertiesGroup(o,t.chartWidgetCollection)),e.enabled("header_indicators")&&n.push(this._createIndicatorsGroup(o)),e.enabled("header_compare")&&n.push(this._createCompareGroup(i,t.chartWidgetCollection,o)),e.enabled("header_undo_redo")&&!this._chartWidget.readOnly()&&n.push(this._createUndoRedoGroup()),
M=this.createGroup("screenshot",{single:!0}).appendTo(this._$right),E=$('<a class="button getimage"></a>').append($(i(1238)).attr({class:"icon"})).addClass("apply-common-tooltip").attr("title",$.t("Take instant snapshot of your chart. No more Paint or other editors to save screenshots – simply click the button and copy the link of the picture.")+"\n"+A).appendTo(M),M.click(function(t){if(!e.enabled("show_dialog_on_snapshot_ready")){if(E.hasClass("process"))return;E.addClass("process"),h.subscribe("onScreenshotReady",function(t){E.removeClass("process")},null,!0)}f.actions().takeScreenshot.callbacks().fire(),t.preventDefault()})),e.enabled("header_saveload")&&(V=e.enabled("header_saveload_to_the_right")?this._$right:this._$left,y=this.createGroup("save-load",{single:!0,showInNarrowView:!0}).appendTo(V),D=$("<div>").addClass("save-load-buttons").appendTo(y),this._saveLoad=news(D,a,{popupDirection:"down",popupReverse:!0}),this._saveLoad.onTitleSizeChanged.subscribe(this,this._onInternalResize),TradingView.isOnFeaturePage&&this._saveLoad.hideTitle()),e.enabled("header_widget_dom_node")||$(".header-chart-panel").css("display","none"),f.withModel(this,r.prototype.bindToModel),this._resizerBridge.availWidth.subscribe(this._onAvailSizeChange.bind(this)),this._resizerBridge.availHeight.subscribe(this._onAvailSizeChange.bind(this)),this._onAvailSizeChange(),this._onInternalResize()}varn=i(819),r=i(744),s=i(1130).SaveLoadWidget,a=i(753),l=i(398),c=i(812),h=i(43),u=i(104),d=i(474).FavoredList,p=i(85),_=i(397);inherit(o,r),o.prototype.saveLoadWidget=function(){returnthis._saveLoad},o.prototype._onAvailSizeChange=function(){vart=this._resizerBridge.availWidth.value()<=520||this._resizerBridge.availHeight.value()<=250;!!this._compactMode!==t&&(this._compactMode=t,this._$root.toggleClass("header-chart-panel--compact",t),this._onInternalResize())},o.prototype.addButton=function(t,e){(e?this._$left:this._$right).append(t),this._onInternalResize()},o.prototype._createUndoRedoGroup=function(){returnthis._undoRedo=newn(this._$left,this._chartWidget),this._undoRedo.undoElement().addClass("apply-common-tooltip"),this._undoRedo.redoElement().addClass("apply-common-tooltip"),this.createGroup("undo-redo",{single:!0}).append(this._undoRedo.element())},o.prototype._createFullscreenGroup=function(){this._fullscreen=newa(this._chartWidgetCollection);vart=this.createGroup("fullscreen",{single:!0});returnthis._fullscreen.element().addClass("apply-common-tooltip").appendTo(t),t},o.prototype._createLayout=function(t,i,o){varn=[];e.enabled("header_chart_type")&&n.push(this._createBarsGroup(i)),e.enabled("header_settings")&&e.enabled("show_chart_property_page")&&n.push(this._createPropertiesGroup(o,t.chartWidgetCollection)),e.enabled("header_indicators")&&n.push(this._createIndicatorsGroup(o)),e.enabled("header_compare")&&n.push(this._createCompareGroup(i,t.chartWidgetCollection,o)),e.enabled("header_undo_redo")&&!this._chartWidget.readOnly()&&n.push(this._createUndoRedoGroup()),