(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[20321,78775],{140987:e=>{e.exports={"tv-spinner__container-rotate":"tv-spinner__container-rotate-aLqboHuu"}},129592:(e,t,n)=>{"use strict";n.d(t,{createGroup:()=>l,keyboardPressedKeysState:()=>a,pressedKeys:()=>s,registerWindow:()=>d});var o=n(163586),r=n(764250);n(591800);const i=new o.ActionManager,s=i.pressedKeys(),a=i.keyboardPressedKeysState();function l(e){return new r.ActionGroup(i,e)}function d(e){i.listen(e)}},591800:(e,t,n)=>{"use strict";n.d(t,{Modifiers:()=>i,hashFromEvent:()=>a,hotkeyHashToAriaKeyshortcuts:()=>m,humanReadableHash:()=>u,humanReadableModifiers:()=>l,isMacKeyboard:()=>r,modifiersFromEvent:()=>s});var o=n(23482);const r=o.isMac||o.isIOS;var i;function s(e){let t=0;return e.shiftKey&&(t+=1024),e.altKey&&(t+=512),e.ctrlKey&&(t+=256),e.metaKey&&(t+=2048),t}function a(e){return s(e)|e.keyCode}!function(e){e[e.None=0]="None",e[e.Alt=512]="Alt",e[e.Shift=1024]="Shift",e[e.Mod=r?2048:256]="Mod",e[e.Control=256]="Control",e[e.Meta=2048]="Meta"}(i||(i={}));function l(e,t=!r){let n="";return 256&e&&(n+=h(r?"^":"Ctrl",t)),512&e&&(n+=h(r?"⌥":"Alt",t)),1024&e&&(n+=h(r?"⇧":"Shift",t)),2048&e&&(n+=h(r?"⌘":"Win",t)),n}const d={9:"⇥",13:"↵",27:"Esc",8:r?"⌫":"Backspace",32:"Space",35:"End",36:"Home",37:"←",38:"↑",39:"→",40:"↓",45:"Ins",46:"Del",188:",",191:"/"},c={9:"Tab",13:"Enter",27:"Esc",8:"Backspace",32:"Space",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Ins",46:"Del",188:",",191:"/"};for(let e=1;e<=16;e++)d[e+111]=`F${e}`,c[e+111]=`F${e}`;function u(e){let t=l(e);const n=255&e;return t+=n in d?d[n]:String.fromCharCode(n),t}function h(e,t){return`${e}${t?" + ":r?" ":""}`}function m(e){const t=[];256&e&&t.push("Ctrl"),512&e&&t.push("Alt"),1024&e&&t.push("Shift"),2048&e&&t.push("Meta");const n=255&e;return n in d?t.push(d[n]):t.push(String.fromCharCode(n)),t.join("+")}},607423:(e,t,n)=>{"use strict";n.d(t,{isNativeUIInteraction:()=>i,isTextEditingField:()=>r});var o=n(591800);function r(e){if("INPUT"===e.tagName){const t=e.type;return"text"===t||"email"===t||"number"===t||"password"===t||"search"===t||"tel"===t||"url"===t}return"TEXTAREA"===e.tagName||e.isContentEditable}function i(e,t){if(!t)return!1;const n=255&e;if(27===n||n>>>4==7)return!1;switch(e^n){case o.Modifiers.Alt:return(38===n||40===n)&&"SELECT"===t.tagName||r(t);case o.Modifiers.Alt+o.Modifiers.Shift:return r(t);case o.Modifiers.Mod:if(67===n||!o.isMacKeyboard&&45===n){const e=t.ownerDocument&&t.ownerDocument.getSelection();if(e&&!e.isCollapsed)return!0}return r(t);case o.Modifiers.Mod+o.Modifiers.Shift:return n>=33&&n<=40&&r(t);case o.Modifiers.Shift:case 0:return 9===n?!(!t.ownerDocument||t===t.ownerDocument.body||t===t.ownerDocument.documentElement):(!function(e){if("BUTTON"===e.tagName)return!0;if("INPUT"===e.tagName){const t=e.type;if("submit"===t||"button"===t||"reset"===t||"checkbox"===t||"radio"===t)return!0}return!1}(t)||13===n||32===n||9===n)&&("form"in t||t.isContentEditable)}return!1}},685023:(e,t,n)=>{"use strict";n.d(t,{ DEFAULT_SIZE:()=>o,spinnerSizeMap:()=>r});const o="large",r={mini:"xsmall",xxsmall:"xxsmall",xsmall:"xsmall",small:"small",medium:"medium",large:"large"}},604286:(e,t,n)=>{"use strict";n.d(t,{hotKeyDeserialize:()=>i,hotKeySerialize:()=>r});var o=n(927301);function r(e){return(0,o.htmlEscape)(JSON.stringify(e))}function i(e){return JSON.parse((0,o.decodeHTMLEntities)(e))}},673747:(e,t,n)=>{"use strict";n.r(t),n.d(t,{hide:()=>S,show:()=>v,showOnElement:()=>m,tempForceHide:()=>b,tooltipClickHandler:()=>p,updateTooltipText:()=>f});var o=n(778785),r=n(650151),i=n(799786),s=n(112539),a=n(630112),l=n(471802);let d=!1,c=null,u=null;o.mobiletouch||(document.addEventListener("mouseover",g,!0),document.addEventListener("focus",(function(e){const t=e.target;if(!(t instanceof HTMLElement&&t.closest('[data-tooltip-show-on-focus="true"]')&&t.matches(":focus-visible")))return;g(e,!0)}),{capture:!0}),document.addEventListener("active-descendant-focus",(function(e){e.target instanceof HTMLElement&&g(e,!0)}),{capture:!0}));const h=new MutationObserver((()=>{if(c&&c.options.target){let e;e="isConnected"in c.options.target?c.options.target.isConnected:document.body.contains(c.options.target),e||S()}})),m=(e,t={})=>{const{content:n,...o}=E(t),r=l.getDataFromTarget(e),i=Object.assign(r,o);return"none"!==n.type&&(i.content=n),!("none"===i.content.type&&!i.hotkey)&&(i.target=e,v(i),!0)},v=e=>{const t=E(e),n=l.getTooltip(t);if(c={options:t,element:n},(0,a.setTooltip)(n),(0,s.clearSchedule)(),!d)return l.hideTooltip(n),void(0,s.scheduleRender)((()=>w(n)),function(e){return"number"!=typeof e.tooltipDelay||isNaN(e.tooltipDelay)?500:e.tooltipDelay}(t));const{tooltipDebounce:o}=e;"number"!=typeof o||isNaN(o)?w(n):(0,s.scheduleRender)((()=>w(n)),o)},f=e=>l.updateTooltipTextFromTarget(e);function g(e,t){if("sourceCapabilities"in e&&e.sourceCapabilities?.firesTouchEvents)return;const n=function(e,t,n){const o=[];for(;e&&e!==t;)e.classList&&e.classList.contains(n)&&o.push(e),e=e.parentElement||T(e.parentNode);return o}(e.target,e.currentTarget,"apply-common-tooltip");for(const o of n){if(e instanceof MouseEvent)if("buttons"in e){if(1&e.buttons)continue}else if(1===e.which)continue;const n=()=>m(o);if(n()){const e=e=>r(null,!0),r=(i,s=!1)=>{o.removeEventListener("common-tooltip-update",n),o.removeEventListener("mouseleave",r),o.removeEventListener("mousedown",r),document.removeEventListener("scroll",e,{capture:!0}),t&&(o.removeEventListener("blur",r),o.removeEventListener("active-descendant-blur",r)),u&&(u.destroy(),u=null),S(s)};o.addEventListener("common-tooltip-update",n),o.addEventListener("mouseleave",r),o.addEventListener("mousedown",r),document.addEventListener("scroll",e,{capture:!0}),t&&(o.addEventListener("blur",r),o.addEventListener("active-descendant-blur",r)),null===u&&(u=(0,i.createGroup)({desc:"Tooltip"}),u.add({desc:"Hide",hotkey:27,handler:r}));break}}}function p(e){o.mobiletouch&&(m(e.currentTarget,{tooltipDelay:0}),document.addEventListener("scroll",y),document.addEventListener("touchstart",y), window.addEventListener("orientationchange",y),window.screen.orientation?.addEventListener("change",y))}function y(){document.removeEventListener("scroll",y),document.removeEventListener("touchstart",y),window.removeEventListener("orientationchange",y),window.screen.orientation?.removeEventListener("change",y),S()}function _(){(0,a.empty)(),d=!1,c=null}const b=()=>{if((0,s.clearSchedule)(),(0,r.ensureNotNull)(h).disconnect(),!c||!d)return;const{element:e}=c;l.hideTooltip(e),_()},S=(e,t)=>{if((0,s.clearSchedule)(),(0,r.ensureNotNull)(h).disconnect(),!c)return;if(!e&&!d)return;const{element:n,options:o}=c,i=()=>{n.removeEventListener("mouseleave",i),l.hideTooltip(n),e?_():(0,s.scheduleRemove)((()=>{_()}),250),t?.()};o.tooltipHideDelay?(0,s.scheduleHide)((()=>{n.querySelector(":hover")?n.addEventListener("mouseleave",i):i()}),o.tooltipHideDelay):i()};function w(e){const{options:t}=(0,r.ensureNotNull)(c);if(l.setStyle(e,t),l.showTooltip(e),(0,r.ensureNotNull)(h).observe(document,{childList:!0,subtree:!0}),d=!0,t.forceHideOnMove){const e=()=>{document.removeEventListener("mousemove",e),document.removeEventListener("touchmove",e),S()};document.addEventListener("mousemove",e),document.addEventListener("touchmove",e)}}function T(e){return e&&(e.nodeType===Node.ELEMENT_NODE?e:null)}function E(e){if(function(e){return"content"in e}(e))return e;const{inner:t,html:n,text:o,...r}=e;let i={type:"none"};return t&&(i={type:"element",data:t}),o&&(i={type:n?"html":"text",data:o}),{content:i,...r}}},941285:(e,t,n)=>{"use strict";n.r(t),n.d(t,{Spinner:()=>a,renderSpinnerTemplate:()=>i});n(140987);var o=n(760863),r=n(685023);function i(e=""){return`
`}const s=(0,o.parseHtmlElement)(i());class a{constructor(e){this._shown=!1,this._el=s.cloneNode(!0),this.setSize(r.spinnerSizeMap[e||r.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 n=e[t];void 0!==n&&this._el.style.setProperty(t,n)})),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}}},719240:(e,t,n)=>{"use strict";n.d(t,{DataModeIndicator:()=>l});var o=n(444372),r=(n(142492),n(429341),n(780792));const i={connecting:"tv-data-mode--connecting",delayed:"tv-data-mode--delayed",delayed_streaming:"tv-data-mode--delayed",endofday:"tv-data-mode--endofday",forbidden:"tv-data-mode--forbidden",realtime:"tv-data-mode--realtime",snapshot:"tv-data-mode--snapshot",loading:"tv-data-mode--loading",replay:"tv-data-mode--replay"};function s(){return{connecting:o.t(null,{context:"data_mode_connecting_letter" },n(167040)),delayed:o.t(null,{context:"data_mode_delayed_letter"},n(800919)),delayed_streaming:o.t(null,{context:"data_mode_delayed_streaming_letter"},n(933088)),endofday:o.t(null,{context:"data_mode_end_of_day_letter"},n(918400)),forbidden:o.t(null,{context:"data_mode_forbidden_letter"},n(514149)),realtime:o.t(null,{context:"data_mode_realtime_letter"},n(650940)),snapshot:o.t(null,{context:"data_mode_snapshot_letter"},n(756757)),loading:"",replay:o.t(null,{context:"data_mode_replay_letter"},n(745540))}}const a={streaming:"realtime"};class l extends r.AbstractIndicator{constructor(e){super(e),this._quoteSessionPrefix="data-mode-indicator",this._componentClass="tv-data-mode",this._init(e)}getLabel(){return!0===this._shortMode?this._shortLabelMap[this._value]||"":super.getLabel()}setMode(e,t){this.update({values:{update_mode:e,update_mode_seconds:t}})}hide(){this._el.classList.add("i-hidden")}show(){this._el.classList.remove("i-hidden")}getTooltipText(){let e="";const t=this.getValue();if(""===t)return e;switch(t){case"delayed":e=o.t(null,void 0,n(369539));break;case"delayed_streaming":e=o.t(null,void 0,n(167476));break;default:e=this._labelMap[t]||e}return["delayed","delayed_streaming"].includes(t)&&(e=e.format({number:String(Math.round(this._modeInterval/60))})),e}_init(e={}){const t=Object.assign({},{classMap:i,classSuffix:"",data:{values:{update_mode:"connecting"}},labelMap:{connecting:o.t(null,void 0,n(366891)),delayed:o.t(null,void 0,n(739688)),delayed_streaming:o.t(null,void 0,n(739688)),endofday:o.t(null,void 0,n(328304)),forbidden:o.t(null,void 0,n(909161)),realtime:o.t(null,void 0,n(303058)),snapshot:o.t(null,void 0,n(988408)),loading:"",replay:o.t(null,void 0,n(38822))},modeInterval:600,short:!1,shortLabelMap:s(),showTooltip:!0,tooltipType:"custom"},e);this._modeInterval=t.modeInterval||600,this._shortLabelMap=t.shortLabelMap||s(),super._init(t),this._render()}_getValueFromData(e){let t;return t=void 0!==e.values&&void 0!==e.values.update_mode?e.values.update_mode:this.getValue(),a[t]||t}_updateValue(e,t){void 0!==e.values&&void 0!==e.values.update_mode_seconds&&(this._modeInterval=e.values.update_mode_seconds),super._updateValue(e,t)}}},799786:(e,t,n)=>{"use strict";n.d(t,{Modifiers:()=>i.Modifiers,createGroup:()=>o.createGroup,keyboardPressedKeysState:()=>o.keyboardPressedKeysState,pressedKeys:()=>o.pressedKeys});var o=n(129592),r=n(764250),i=n(591800),s=n(345848);(0,o.registerWindow)(window),r.ActionGroup.setMatchedHotkeyHandler((e=>{(0,s.trackEvent)("Keyboard Shortcuts",(0,i.humanReadableHash)(e))}))},192784:(e,t,n)=>{"use strict";n.r(t),n.d(t,{flushDelegate:()=>o});const o=new(n(547465).Delegate)},62802:(e,t,n)=>{"use strict";e=n.nmd(e),n(638456);var o=n(803912).fetch,r=n(482030).regExpEscape,i=n(226722).TVXWindowEvents,s=n(49437).TVLocalStorage,a=n(547465).Delegate,l=n(931924),d=n(125226).isFeatureEnabled,{flushDelegate:c}=n(192784),u=n(735566).getLogger("Lib.TVSettings"),h=["s.tradingview.com","betacdn.tradingview.com"],m=(l.enabled("use_localstorage_for_settings"),window.TVSettings=function(){ var e=!1,t=null,n=!1;function v(){return!(t||window.is_authenticated)}try{e=!TradingView.onWidget()&&parent&&parent!==window&&!!parent.IS_DEMO_PAGE}catch(e){}if(e){var f={"widgetbar.layout-settings":{widgets:{},settings:{minimized:!0}},notShowMainWizard:!0},g=function(e,t,n){var o=f[e];return o??t},p=function(){};return{loaded:!1,loadedModel:!1,getValue:g,getJSON:g,getBool:g,getFloat:g,getInt:g,setValue:p,setJSON:p,remove:p,keys:function(){return Object.keys(f)},keysMask:function(){return[]},sync:p,onSync:{subscribe:function(){}}}}var y=12e4;"local"===window.environment&&(y=5e3);var _,b,S,w=TradingView.onWidget()?"tradingview-widget":"tradingview",T=w+".",E={},L=[],M=[/^widgetbar\.widget\.watchlist.+/,/.+quicks$/,/^widgetbar\.layout-settings$/,/^ChartSideToolbarWidget\.visible$/,/^onwidget\.watchlist$/,/^chart\.favoriteDrawings$/,/^chart\.favoriteDrawingsPosition$/,/^chart\.favoriteLibraryIndicators$/,/^loadChartDialog.favorites$/,/^ChartFavoriteDrawingToolbarWidget\.visible/,/^trading\.chart\.proterty$/,/^trading_floating_toolbar\.position$/,/^trading\.orderWidgetMode\./,/^symbolWatermark$/,/^pinereference\.size$/,/^pinereference\.position$/,/^hint\.+/,/^ChartDrawingToolbarWidget\.visible/];function N(e){return T+e}function $(e){return e.substring(T.length)}function A(e,t){var n=E[e];return n??t}function O(e,t,n){n=n||{};var o=""+t;return E[e]!==o&&(E[e]=o,D(e)),n.forceFlush&&!b&&(b=setTimeout((function(){b=void 0,C()}),10)),m}function k(e,t){return t=t||{},null!=E[e]&&(delete E[e],D(e)),t.forceFlush&&C(),m}function R(){_=void 0,L.length&&C()}function D(e){if(t)null==E[e]?t.removeValue(e):t.setValue(e,E[e]);else if(v())try{null==E[e]?s.removeItem(N(e)):s.setItem(N(e),E[e])}catch(e){}else L.push(e),_||(_=setTimeout(R,y));i.emit("settings",JSON.stringify({key:e,value:E[e]}))}function C(e){if(!n&&!S)if(d("disable_save_settings"))u.logWarn("Settings flashing has been skipped because of disable_save_settings featuretoggle");else if(!l.enabled("widget")&&!v()&&0!==L.length){var t=L;L=[];for(var r={},i=t.length;i--;){var s=t[i],a=E[s];void 0===a&&(a=null),r[s]=a}var c=new FormData;c.append("delta",JSON.stringify(r)),e&&navigator.sendBeacon?navigator.sendBeacon("/savesettings/",c):o("/savesettings/",{method:"POST",credentials:"include",body:c}).then((function(n){if(n.ok||(L=L.concat(t)),[429,503].includes(n.status)){var o=1e3*+n.headers.get("retry-after")||3e5;S=setTimeout((()=>{S=void 0,C(e)}),o)}})).catch((function(){L=L.concat(t)}))}}function F(){return Object.keys(E)}function I(e){for(var t=0;t