(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[86902],{136069:t=>{t.exports={}},668403:t=>{t.exports={"common-tooltip":"common-tooltip-EJBD96zX","common-tooltip--hidden":"common-tooltip--hidden-EJBD96zX","common-tooltip--horizontal":"common-tooltip--horizontal-EJBD96zX","common-tooltip--farther":"common-tooltip--farther-EJBD96zX","common-tooltip--vertical":"common-tooltip--vertical-EJBD96zX","common-tooltip-farther":"common-tooltip-farther-EJBD96zX","common-tooltip--direction_normal":"common-tooltip--direction_normal-EJBD96zX","common-tooltip__body":"common-tooltip__body-EJBD96zX","common-tooltip__button-container":"common-tooltip__button-container-EJBD96zX","common-tooltip__body--no-buttons":"common-tooltip__body--no-buttons-EJBD96zX","common-tooltip__button":"common-tooltip__button-EJBD96zX","common-tooltip--direction_reversed":"common-tooltip--direction_reversed-EJBD96zX","common-tooltip__ear-holder":"common-tooltip__ear-holder-EJBD96zX","common-tooltip__ear-holder--below":"common-tooltip__ear-holder--below-EJBD96zX","common-tooltip__ear-holder--above":"common-tooltip__ear-holder--above-EJBD96zX","common-tooltip__ear-holder--before":"common-tooltip__ear-holder--before-EJBD96zX","common-tooltip__ear-holder--after":"common-tooltip__ear-holder--after-EJBD96zX","common-tooltip__body--with-hotkey":"common-tooltip__body--with-hotkey-EJBD96zX","common-tooltip__body--width_wide":"common-tooltip__body--width_wide-EJBD96zX","common-tooltip__body--width_narrow":"common-tooltip__body--width_narrow-EJBD96zX","common-tooltip__body--no-padding":"common-tooltip__body--no-padding-EJBD96zX","common-tooltip__hotkey-block":"common-tooltip__hotkey-block-EJBD96zX","common-tooltip__hotkey-block--divider":"common-tooltip__hotkey-block--divider-EJBD96zX","common-tooltip__hotkey-text":"common-tooltip__hotkey-text-EJBD96zX","common-tooltip__hotkey-button":"common-tooltip__hotkey-button-EJBD96zX","common-tooltip__plus-sign":"common-tooltip__plus-sign-EJBD96zX"}},764250:(t,e,o)=>{"use strict";o.d(e,{ActionGroup:()=>i});class n{constructor(t,e){this._group=t;const{hotkey:o,handler:n,desc:i,isDisabled:s,element:r=null,isRepeatAccepted:l=!1}=e;this.hotkey=o,this.handler=n,this.desc=i,this.element=r,this.isRepeatAccepted=l,this.isDisabled=s?"function"==typeof s?s:()=>!0:()=>!1}destroy(){this._group&&(this._group.remove(this),this._group=null)}}class i{constructor(t,e){this._actions=new Map,this._manager=t,this.modal=!(!e||!e.modal),e&&(this.desc=e.desc),e&&e.isDisabled?"function"==typeof e.isDisabled?this.isDisabled=e.isDisabled:this.isDisabled=()=>!0:this.isDisabled=()=>!1,this._manager.registerGroup(this)}add(t){let e=this._actions.get(t.hotkey);e||(e=[],this._actions.set(t.hotkey,e));const o=new n(this,t);return e.push(o),o}remove(t){const e=this._actions.get(t.hotkey);if(!e)return;const o=e.findIndex((e=>e===t));o>=0&&(1===e.length?this._actions.delete(t.hotkey):e.splice(o,1))}handleHotkey(t,e){const o=this._actions.get(t);if(!o)return!1 ;for(const n of o)if((!n.element||e.target&&n.element.contains(e.target))&&!n.isDisabled())return e.repeat&&!n.isRepeatAccepted||(n.handler(e),this._callMatchedHotkeyHandler(t)),e.preventDefault(),!0;return!1}promote(){this._manager.promoteGroup(this)}destroy(){for(const[,t]of this._actions)for(const e of t)e.destroy();this._actions.clear(),this._manager.unregisterGroup(this)}static setMatchedHotkeyHandler(t){i._matchedHotkeyHandler=t}_callMatchedHotkeyHandler(t){i._matchedHotkeyHandler&&i._matchedHotkeyHandler(t)}}},163586:(t,e,o)=>{"use strict";o.d(e,{ActionManager:()=>a});var n=o(91679),i=o(591800),s=o(607423);class r{constructor(t,e){this.modifiers=t,this.code=e}altOrOptionCode(){return"AltLeft"===this.code||"AltRight"===this.code}controlOrMetaCode(){return i.isMacKeyboard?"MetaLeft"===this.code||"MetaRight"===this.code||"OSLeft"===this.code||"OSRight"===this.code:"ControlLeft"===this.code||"ControlRight"===this.code}}class l extends n.WatchedValue{setValue(t,e){const o=this.value();(e||void 0===o||o.code!==t.code||o.modifiers!==t.modifiers)&&super.setValue(t)}}class a{constructor(){this._groups=[],this._pressedKeys=new n.WatchedValue(0),this._keyboardPressedKeysState=new l(new r(0)),this._keyDownListener=t=>{if(t.defaultPrevented)return;const e=(0,i.hashFromEvent)(t);if(this._pressedKeys.setValue(e),this._keyboardPressedKeysState.setValue(new r((0,i.modifiersFromEvent)(t),t.code)),!(0,s.isNativeUIInteraction)(e,t.target))for(let o=this._groups.length;o-- >0;){const n=this._groups[o];if(!n.isDisabled()){if(n.handleHotkey(e,t))return;if(n.modal)return}}},this._keyUpListener=t=>{const e=(0,i.hashFromEvent)(t);this._pressedKeys.setValue(e),this._keyboardPressedKeysState.setValue(new r((0,i.modifiersFromEvent)(t),""))},this._blurEvent=()=>{this._pressedKeys.setValue(0),this._keyboardPressedKeysState.setValue(new r(0,""))},this._mouseEvent=t=>{var e;const o=(0,i.modifiersFromEvent)(t),n=255&(null!==(e=this._pressedKeys.value())&&void 0!==e?e:0);this._pressedKeys.setValue(o|n)}}listen(t){t.addEventListener("keydown",this._keyDownListener),t.addEventListener("keyup",this._keyUpListener),t.addEventListener("blur",this._blurEvent),t.addEventListener("mousemove",this._mouseEvent)}unlisten(t){t.removeEventListener("keydown",this._keyDownListener),t.removeEventListener("keyup",this._keyUpListener),t.removeEventListener("blur",this._blurEvent),t.removeEventListener("mousemove",this._mouseEvent)}registerGroup(t){this._groups.push(t)}unregisterGroup(t){for(let e=this._groups.length;e--;)this._groups[e]===t&&this._groups.splice(e,1)}promoteGroup(t){let e=this._groups.length-1;for(let o=this._groups.length;o--;){if(this._groups[o]===t)return void(o!==e&&(this._groups.splice(o,1),this._groups.splice(e,0,t)));this._groups[o].modal&&(e=o-1)}}pressedKeys(){return this._pressedKeys.readonly()}keyboardPressedKeysState(){return this._keyboardPressedKeysState.readonly()}}},129592:(t,e,o)=>{"use strict";o.d(e,{createGroup:()=>r,registerWindow:()=>l});var n=o(163586),i=o(764250);o(591800);const s=new n.ActionManager;s.pressedKeys(), s.keyboardPressedKeysState();function r(t){return new i.ActionGroup(s,t)}function l(t){s.listen(t)}},591800:(t,e,o)=>{"use strict";o.d(e,{Modifiers:()=>s,hashFromEvent:()=>l,humanReadableHash:()=>d,isMacKeyboard:()=>i,modifiersFromEvent:()=>r});var n=o(167175);const i=n.isMac||n.isIOS;var s;function r(t){let e=0;return t.shiftKey&&(e+=1024),t.altKey&&(e+=512),t.ctrlKey&&(e+=256),t.metaKey&&(e+=2048),e}function l(t){return r(t)|t.keyCode}!function(t){t[t.None=0]="None",t[t.Alt=512]="Alt",t[t.Shift=1024]="Shift",t[t.Mod=i?2048:256]="Mod",t[t.Control=256]="Control",t[t.Meta=2048]="Meta"}(s||(s={}));const a={9:"⇥",13:"↵",27:"Esc",8:i?"⌫":"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 t=1;t<=16;t++)a[t+111]=`F${t}`,c[t+111]=`F${t}`;function d(t){let e=function(t,e=!i){let o="";return 256&t&&(o+=m(i?"^":"Ctrl",e)),512&t&&(o+=m(i?"⌥":"Alt",e)),1024&t&&(o+=m(i?"⇧":"Shift",e)),2048&t&&(o+=m(i?"⌘":"Win",e)),o}(t);const o=255&t;return e+=o in a?a[o]:String.fromCharCode(o),e}function m(t,e){return`${t}${e?" + ":i?" ":""}`}},499994:(t,e,o)=>{"use strict";o.d(e,{getTooltipData:()=>i,setTooltipData:()=>s});const n=new WeakMap;function i(t,e){const o=n.get(t);return o instanceof Function?o(e):o&&o[e]}function s(t,e,o){if(o instanceof Function)return void n.set(t,o);const i=n.get(t),s=void 0===i||i instanceof Function?{}:i;s[e]=o,n.set(t,s)}},779527:(t,e,o)=>{"use strict";o.d(e,{getDataFromTarget:()=>p,getTooltip:()=>h,hideTooltip:()=>g,setStyle:()=>_,showTooltip:()=>y});var n=o(650151),i=o(571690),s=o(31341),r=(o(586463),o(777466)),l=o(678515),a=o(638456),c=o(529111),d=o(499994),m=o(604286),u=o(668403);function p(t){const e=function(t){const e=t.hasAttribute("data-tooltip")?t.getAttribute("data-tooltip"):t.getAttribute("title");return e&&((0,d.setTooltipData)(t,"text",e),t.removeAttribute("title")),(0,d.getTooltipData)(t,"text")||""}(t),o=t.getBoundingClientRect(),n={h:o.height,w:o.width,x:o.left,y:o.top},i=t.getAttribute("data-color-theme")||"",s=t.classList.contains("common-tooltip-html"),r=parseInt(t.getAttribute("data-tooltip-delay")||""),l=parseInt(t.getAttribute("data-tooltip-debounce")||"");let a={type:"none"};return e&&(a={type:s?"html":"text",data:e}),{above:t.classList.contains("common-tooltip-above"),below:t.classList.contains("common-tooltip-below"),otl:t.classList.contains("common-tooltip-otl"),otr:t.classList.contains("common-tooltip-otr"),vertical:t.classList.contains("common-tooltip-vertical"),hotkey:t.getAttribute("data-tooltip-hotkey"),narrow:t.classList.contains("common-tooltip-narrow"),wide:t.classList.contains("common-tooltip-wide"),colorTheme:i,tooltipDelay:r,tooltipDebounce:l,rect:n,content:a,target:t}}function h(t){const e=(0,n.ensureNotNull)(k).cloneNode(!0),o=D(e),{content:i}=t;switch(i.type){case"element":o.innerHTML="",o.appendChild(i.data);break;case"html": o.innerHTML=i.data;break;case"text":if(t.hotkey){const t=(0,n.ensureNotNull)(L).cloneNode(!0);t.innerText=i.data,o.appendChild(t)}else o.innerText=i.data}if(t.hotkey){const e="none"!==i.type,s=(0,n.ensureNotNull)(E).cloneNode(!0),r=(0,m.hotKeyDeserialize)(t.hotkey),l=r.keys.map((t=>`${t}`));s.innerHTML=function(t,e){const o=/{\d}|{hotkey_\d}/gi;return t.replace(o,(t=>{const o=Number(t.match(/\d/));return e[o]}))}(r.text,l).replace(/\s\+\s/g,`+`),o.classList.add(u["common-tooltip__body--with-hotkey"]),e&&s.classList.add(u["common-tooltip__hotkey-block--divider"]),o.appendChild(s)}return e.addEventListener("contextmenu",r.preventDefault),e}function _(t,e){const o=e.rect;if(!o)return;(0,c.setTooltipColorTheme)(t,e.colorTheme||"default"),e.addClass&&t.classList.add(e.addClass);const n=D(t),i=t.querySelector(`.${u["common-tooltip__button-container"]}`);n.classList.toggle(u["common-tooltip__body--width_wide"],Boolean(e.wide)),n.classList.toggle(u["common-tooltip__body--no-padding"],Boolean(e.noPadding)),n.classList.toggle(u["common-tooltip__body--width_narrow"],Boolean(e.narrow)),n.classList.toggle(u["common-tooltip__body--no-buttons"],!0),n.style.left=f(0),n.style.width=f(n.clientWidth+(Boolean(e.noPadding)?0:2));const r=document.body.clientWidth,d=a.CheckMobile.iOS()||a.CheckMobile.Android()||(0,a.supportTouch)()&&(0,a.isMac)()?window.innerHeight:document.body.clientHeight,m=e.vertical,p=e.extendMargin||m&&o.w<20||!m&&o.h<20;t.classList.toggle(u["common-tooltip--farther"],p),t.classList.toggle(u["common-tooltip--vertical"],m),t.classList.toggle(u["common-tooltip--horizontal"],!m);const h=function(t){return t.querySelector(`.${u["common-tooltip__ear-holder"]}`)}(t),_=t.offsetHeight;if(m){const a=10,c=d-10,m=12,p=a+m,y=c-m,g=(0,l.clamp)(o.y+o.h/2,p,y)-_/2,b=g+_;t.style.left=f(o.x+o.w),t.style.top=f(g),gc&&(n.style.top=i.style.top=f(c-b));const{right:w}=(t.querySelector(":last-child")||n).getBoundingClientRect(),v=w+10>r;t.classList.toggle(u["common-tooltip--direction_reversed"],v),t.classList.toggle(u["common-tooltip--direction_normal"],!v);let k=v?"after":"before";(0,s.isRtl)()?(k=e.otr?"after":k,k=e.otl?"before":k):(k=e.otr?"before":k,k=e.otl?"after":k),h.classList.toggle(u["common-tooltip__ear-holder--before"],"before"===k),h.classList.toggle(u["common-tooltip__ear-holder--after"],"after"===k),"after"===k&&(t.style.left="auto",t.style.right=f(r-o.x))}else{const s=o.x-(n.offsetWidth-o.w)/2,l=r-10-t.offsetWidth,a=Math.max(10,Math.min(s,l));t.style.left=f(a);const c=l\n\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\n`,w=`\n\t
\n`,v=`\n\t
\n`,k=(0,i.parseHtmlElement)(b),E=(0,i.parseHtmlElement)(w),L=(0,i.parseHtmlElement)(v);function D(t){return t.querySelector(`.${u["common-tooltip__body"]}`)}function C(t,e){return 10+t{"use strict";o.d(e,{empty:()=>r,setTooltip:()=>l});const n="tooltip-root-element";let i;function s(){const t=document.getElementById(n);t?i=t:(i=document.createElement("div"),i.id=n,document.body.appendChild(i))}function r(){i&&(i.innerHTML="")}function l(t){r(),i&&i.appendChild(t)}"interactive"===document.readyState?s():document.addEventListener("DOMContentLoaded",s)},112539:(t,e,o)=>{"use strict";o.d(e,{clearSchedule:()=>r,scheduleHide:()=>a,scheduleRemove:()=>l,scheduleRender:()=>c});let n=0,i=0,s=0;function r(){clearTimeout(n),clearTimeout(i),clearTimeout(s)}function l(t,e){s=setTimeout(t,e)}function a(t,e){i=setTimeout(t,e)}function c(t,e){n=setTimeout(t,e)}},529111:(t,e,o)=>{"use strict";o.d(e,{setTooltipColorTheme:()=>s});const n={default:"",white:"theme-white",chart:"theme-chart","round-shadow":"theme-round-shadow"},i=Object.keys(n);function s(t,e){const o=i.includes(e)?n[e]:"";t.classList.remove(...i.map((t=>n[t])).filter((t=>!!t))),o&&!t.classList.contains(o)&&t.classList.add(o)}},175341:(t,e,o)=>{"use strict";o.d(e,{createEmbedWidgetWrapper:()=>a});var n=o(650151),i=o(650401),s=o(351079),r=o(23580),l=o(952598);function a(t,e,o,a={}){if(null===t.parentElement)return console.warn("Can not wrap 'elWidgetContainer' because it has no parentElement"),t;let c=null,d=document.querySelector(".js-embed-widget-body");const m=null!==d;if(m){d=(0,n.ensureNotNull)(d),c=(0,n.ensureNotNull)(d.parentElement);let t=document.querySelector(".js-embed-widget-head");null===t&&(t=document.createElement("div"),t.classList.add("tv-embed-widget-wrapper__header"),t.classList.add("js-embed-widget-head"),c.insertBefore(t,d))}else c=document.createElement("div"),c.classList.add("tv-embed-widget-wrapper"),c.innerHTML='
',d=c.querySelector(".js-embed-widget-body") ;if(a.overflowAuto&&d.classList.add("tv-embed-widget-wrapper__body--overflow_auto"),a.showBorderOnTransparent&&d.classList.add("tv-embed-widget-wrapper__body--border-on-transparent"),!a.isWhiteLabel){!async function(t,e,o,a,c={}){var d,m;const u=c.isSheriffDisabled?[]:await(0,i.getWidgetSheriffActions)(),p=u.includes(l.KnownAction.LargeTradeLogo),h=function(t){return["crypto-coins-heatmap","forex-cross-rates","market-overview","symbol-overview","market-quotes","stock-heatmap","screener","forex-heat-map","crypto-mkt-screener","events","hotlists"].includes(t)}(e),_=p&&h?"large_trade":void 0,y=await(0,r.getCustomerCopyrightData)(c.customer,c.locale,(0,r.addUtmCampaignSource)(a,"logo"),_),g=null!==(m=null!=_?_:null===(d=c.copyrightOptions)||void 0===d?void 0:d.mode)&&void 0!==m?m:"small_old";(0,n.ensureNotNull)(t).appendChild((0,s.createCopyrightLabel)({sheriffOptions:u,snapToEdge:o,...c.copyrightOptions,...y,mode:g}))}(d,e,!document.documentElement.classList.contains("is-transparent")||Boolean(a.showBorderOnTransparent),o,a)}return m||(t.parentElement.insertBefore(c,t),d.appendChild(t)),t}},901107:(t,e,o)=>{"use strict";o.d(e,{createEmbedWidgetWrapper:()=>n.createEmbedWidgetWrapper});o(136069);var n=o(175341)},251954:(t,e,o)=>{"use strict";o.d(e,{emit:()=>c,subscribe:()=>a,unsubscribe:()=>l});var n=o(707957);const i={},s=[],r={};function l(t,e,o){i[t].unsubscribe(o,e)}function a(t,e,o,s){i.hasOwnProperty(t)||(i[t]=new n.Delegate),r[t]?e.call(o):i[t].subscribe(o,e,s)}function c(t,...e){const o=[t].concat(e);s.forEach((t=>{t.apply(null,o)})),i.hasOwnProperty(t)&&i[t].fire.apply(i[t],e)}},799786:(t,e,o)=>{"use strict";o.d(e,{createGroup:()=>n.createGroup});var n=o(129592),i=o(764250),s=o(591800),r=o(345848);(0,n.registerWindow)(window),i.ActionGroup.setMatchedHotkeyHandler((t=>{(0,r.trackEvent)("Keyboard Shortcuts",(0,s.humanReadableHash)(t))}))},588948:(t,e,o)=>{"use strict";o.d(e,{getInitData:()=>i});o(650151);(0,o(201089).getLogger)("Common.InitData");const n=window.initData||{};function i(){return n}},345848:(t,e,o)=>{"use strict";o.d(e,{trackEvent:()=>a});var n=o(251954),i=o(244842);const s=(0,o(201089).getLogger)("Common.TrackEvent"),r=[/Study_(Drawing)_(.*)/,/(Study)_(.*)@tv-basicstudies/,/(Study)_(.*)/,/(Chart Style) (.*)/];let l=!1;const a=(t,e,o)=>{if(l)return;if(i.enabled("charting_library_base"))return void((t,e,o)=>{e=e||t||o||"";let i="";for(let t=0;t{"use strict";o.d(e,{parseHtmlElement:()=>i});const n=new WeakMap;function i(t,e){const o=function(t,e){let o,i;return o=null==e?document.documentElement:9===e.nodeType?e.documentElement:e,n&&(i=n.get(o)), i||(i=o.ownerDocument.createRange(),i.selectNodeContents(o),n&&n.set(o,i)),i.createContextualFragment(t)}(t,e),i=o.firstElementChild;return null!==i&&o.removeChild(i),i}},919476:(t,e,o)=>{"use strict";o.d(e,{decodeHTMLEntities:()=>a,htmlEscape:()=>c});const n=/[<"'&>]/g,i=t=>`&#${t.charCodeAt(0)};`,s={"<":"<",">":">",""":'"',"'":"'","&":"&","<":"<",">":">",""":'"',"'":"'","'":"'","&":"&"},r=Object.assign({},...Object.entries(s).map((([t,e])=>({[e]:t})))),l=new RegExp(Object.keys(s).join("|"),"g");new RegExp(Object.keys(r).join("|"),"g");function a(t){return t.replace(l,(t=>s[t]||t))}function c(t){return t.replace(n,i)}},501437:(t,e,o)=>{"use strict";function n(t){const e=[];for(const o in t)t.hasOwnProperty(o)&&null!=t[o]&&e.push({key:o,pair:encodeURIComponent(o)+"="+encodeURIComponent(t[o])});return e.sort(((t,e)=>t.key>e.key?1:t.keyt.pair)).join("&")}o.d(e,{createUrlParams:()=>n})},185515:(t,e,o)=>{"use strict";o.d(e,{buildUtmQueryString:()=>l,filterUtmInfo:()=>r});var n=o(501437),i=o(919476);const s=["utm_source","utm_medium","utm_campaign"];function r(t){const e={};return s.forEach((o=>{const n=t[o];"string"==typeof n&&""!==n&&(e[o]=(0,i.htmlEscape)(n))})),e}function l(t,e=!1){const o=(0,n.createUrlParams)(t);return o&&e?"?"+o:o}}}]);