PageSourceSearch

https://loobiz.com/public/assets/main.js?v=WaiILNrpHoMs2xjB-0AjjRRevektILPX67H27Nvym1o

js loobiz.com collected 2026-10-02 12:25:21 UTC 217,873 bytes, 1 lines download raw bytes

1const Gs=Object.freeze({left:0,top:0,width:16,height:16}),bi=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),ii=Object.freeze({...Gs,...bi}),ne=Object.freeze({...ii,body:"",hidden:!1}),Jn=Object.freeze({width:null,height:null}),Ys=Object.freeze({...Jn,...bi});function tr(n,t=0){const i=n.replace(/^-?[0-9.]*/,"");function e(s){for(;s<0;)s+=4;return s%4}if(i===""){const s=parseInt(n);return isNaN(s)?0:e(s)}else if(i!==n){let s=0;switch(i){case"%":s=25;break;case"deg":s=90}if(s){let r=parseFloat(n.slice(0,n.length-i.length));return isNaN(r)?0:(r=r/s,r%1===0?e(r):0)}}return t}const ir=/[\s,]+/;function er(n,t){t.split(ir).forEach(i=>{switch(i.trim()){case"horizontal":n.hFlip=!0;break;case"vertical":n.vFlip=!0;break}})}const Xs={...Ys,preserveAspectRatio:""};function De(n){const t={...Xs},i=(e,s)=>n.getAttribute(e)||s;return t.width=i("width",null),t.height=i("height",null),t.rotate=tr(i("rotate","")),er(t,i("flip","")),t.preserveAspectRatio=i("preserveAspectRatio",i("preserveaspectratio","")),t}function sr(n,t){for(const i in Xs)if(n[i]!==t[i])return!0;return!1}const Js=/^[a-z0-9]+(-[a-z0-9]+)*$/,ei=(n,t,i,e="")=>{const s=n.split(":");if(n.slice(0,1)==="@"){if(s.length<2||s.length>3)return null;e=s.shift().slice(1)}if(s.length>3||!s.length)return null;if(s.length>1){const o=s.pop(),l=s.pop(),a={provider:s.length>0?s[0]:e,prefix:l,name:o};return t&&!fi(a)?null:a}const r=s[0],h=r.split("-");if(h.length>1){const o={provider:e,prefix:h.shift(),name:h.join("-")};return t&&!fi(o)?null:o}if(i&&e===""){const o={provider:e,prefix:"",name:r};return t&&!fi(o,i)?null:o}return null},fi=(n,t)=>n?!!((t&&n.prefix===""||n.prefix)&&n.name):!1;function nr(n,t){const i=n.icons,e=n.aliases||Object.create(null),s=Object.create(null);function r(h){if(i[h])return s[h]=[];if(!(h in s)){s[h]=null;const o=e[h]&&e[h].parent,l=o&&r(o);l&&(s[h]=[o].concat(l))}return s[h]}return Object.keys(i).concat(Object.keys(e)).forEach(r),s}function rr(n,t){const i={};!n.hFlip!=!t.hFlip&&(i.hFlip=!0),!n.vFlip!=!t.vFlip&&(i.vFlip=!0);const e=((n.rotate||0)+(t.rotate||0))%4;return e&&(i.rotate=e),i}function Qe(n,t){const i=rr(n,t);for(const e in ne)e in bi?e in n&&!(e in i)&&(i[e]=bi[e]):e in t?i[e]=t[e]:e in n&&(i[e]=n[e]);return i}function hr(n,t,i){const e=n.icons,s=n.aliases||Object.create(null);let r={};function h(o){r=Qe(e[o]||s[o],r)}return h(t),i.forEach(h),Qe(n,r)}function tn(n,t){const i=[];if(typeof n!="object"||typeof n.icons!="object")return i;n.not_found instanceof Array&&n.not_found.forEach(s=>{t(s,null),i.push(s)});const e=nr(n);for(const s in e){const r=e[s];r&&(t(s,hr(n,s,r)),i.push(s))}return i}const or={provider:"",aliases:{},not_found:{},...Gs};function Oi(n,t){for(const i in t)if(i in n&&typeof n[i]!=typeof t[i])return!1;return!0}function en(n){if(typeof n!="object"||n===null)return null;const t=n;if(typeof t.prefix!="string"||!n.icons||typeof n.icons!="object"||!Oi(n,or))return null;const i=t.icons;for(const s in i){const r=i[s];if(!s||typeof r.body!="string"||!Oi(r,ne))return null}const e=t.aliases||Object.create(null);for(const s in e){const r=e[s],h=r.parent;if(!s||typeof h!="string"||!i[h]&&!e[h]||!Oi(r,ne))return null}return t}const wi=Object.create(null);function lr(n,t){return{provider:n,prefix:t,icons:Object.create(null),missing:new Set}}function ct(n,t){const i=wi[n]||(wi[n]=Object.create(null));return i[t]||(i[t]=lr(n,t))}function sn(n,t){return en(t)?tn(t,(i,e)=>{e?n.icons[i]=e:n.missing.add(i)}):[]}function ar(n,t,i){try{if(typeof i.body=="string")return n.icons[t]={...i},!0}catch{}return!1}function cr(n,t){let i=[];return(typeof n=="string"?[n]:Object.keys(wi)).forEach(e=>{(typeof e=="string"&&typeof t=="string"?[t]:Object.keys(wi[e]||{})).forEach(s=>{const r=ct(e,s);i=i.concat(Object.keys(r.icons).map(h=>(e!==""?"@"+e+":":"")+s+":"+h))})}),i}let Xt=!1;function nn(n){return typeof n=="boolean"&&(Xt=n),Xt}function Jt(n){const t=typeof n=="string"?ei(n,!0,Xt):n;if(t){const i=ct(t.provider,t.prefix),e=t.name;return i.icons[e]||(i.missing.has(e)?null:void 0)}}function rn(n,t){const i=ei(n,!0,Xt);if(!i)return!1;const e=ct(i.provider,i.prefix);return t?ar(e,i.name,t):(e.missing.add(i.name),!0)}function Be(n,t){if(typeof n!="object")return!1;if(typeof t!="string"&&(t=n.provider||""),Xt&&!t&&!n.prefix){let e=!1;return en(n)&&(n.prefix="",tn(n,(s,r)=>{rn(s,r)&&(e=!0)})),e}const i=n.prefix;return fi({prefix:i,name:"a"})?!!sn(ct(t,i),n):!1}function ur(n){return!!Jt(n)}function dr(n){const t=Jt(n);return t&&{...ii,...t}}
1function hn(n,t){n.forEach(i=>{const e=i.loaderCallbacks;e&&(i.loaderCallbacks=e.filter(s=>s.id!==t))})}function fr(n){n.pendingCallbacksFlag||(n.pendingCallbacksFlag=!0,setTimeout(()=>{n.pendingCallbacksFlag=!1;const t=n.loaderCallbacks?n.loaderCallbacks.slice(0):[];if(!t.length)return;let i=!1;const e=n.provider,s=n.prefix;t.forEach(r=>{const h=r.icons,o=h.pending.length;h.pending=h.pending.filter(l=>{if(l.prefix!==s)return!0;const a=l.name;if(n.icons[a])h.loaded.push({provider:e,prefix:s,name:a});else if(n.missing.has(a))h.missing.push({provider:e,prefix:s,name:a});else return i=!0,!0;return!1}),h.pending.length!==o&&(i||hn([n],r.id),r.callback(h.loaded.slice(0),h.missing.slice(0),h.pending.slice(0),r.abort))})}))}let mr=0;function pr(n,t,i){const e=mr++,s=hn.bind(null,i,e);if(!t.pending.length)return s;const r={id:e,icons:t,callback:n,abort:s};return i.forEach(h=>{(h.loaderCallbacks||(h.loaderCallbacks=[])).push(r)}),s}function gr(n){const t={loaded:[],missing:[],pending:[]},i=Object.create(null);n.sort((s,r)=>s.provider!==r.provider?s.provider.localeCompare(r.provider):s.prefix!==r.prefix?s.prefix.localeCompare(r.prefix):s.name.localeCompare(r.name));let e={provider:"",prefix:"",name:""};return n.forEach(s=>{if(e.name===s.name&&e.prefix===s.prefix&&e.provider===s.provider)return;e=s;const r=s.provider,h=s.prefix,o=s.name,l=i[r]||(i[r]=Object.create(null)),a=l[h]||(l[h]=ct(r,h));let c;o in a.icons?c=t.loaded:h===""||a.missing.has(o)?c=t.missing:c=t.pending;const u={provider:r,prefix:h,name:o};c.push(u)}),t}const re=Object.create(null);function $e(n,t){re[n]=t}function he(n){return re[n]||re[""]}function vr(n,t=!0,i=!1){const e=[];return n.forEach(s=>{const r=typeof s=="string"?ei(s,t,i):s;r&&e.push(r)}),e}function ye(n){let t;if(typeof n.resources=="string")t=[n.resources];else if(t=n.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:n.path||"/",maxURL:n.maxURL||500,rotate:n.rotate||750,timeout:n.timeout||5e3,random:n.random===!0,index:n.index||0,dataAfterTimeout:n.dataAfterTimeout!==!1}}const Ei=Object.create(null),Wt=["https://api.simplesvg.com","https://api.unisvg.com"],mi=[];for(;Wt.length>0;)Wt.length===1||Math.random()>.5?mi.push(Wt.shift()):mi.push(Wt.pop());Ei[""]=ye({resources:["https://api.iconify.design"].concat(mi)});function We(n,t){const i=ye(t);return i===null?!1:(Ei[n]=i,!0)}function ki(n){return Ei[n]}function br(){return Object.keys(Ei)}const wr={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function yr(n,t,i,e){const s=n.resources.length,r=n.random?Math.floor(Math.random()*s):n.index;let h;if(n.random){let z=n.resources.slice(0);for(h=[];z.length>1;){const P=Math.floor(Math.random()*z.length);h.push(z[P]),z=z.slice(0,P).concat(z.slice(P+1))}h=h.concat(z)}else h=n.resources.slice(r).concat(n.resources.slice(0,r));const o=Date.now();let l="pending",a=0,c,u=null,d=[],m=[];typeof e=="function"&&m.push(e);function p(){u&&(clearTimeout(u),u=null)}function b(){l==="pending"&&(l="aborted"),p(),d.forEach(z=>{z.status==="pending"&&(z.status="aborted")}),d=[]}function w(z,P){P&&(m=[]),typeof z=="function"&&m.push(z)}function x(){return{startTime:o,payload:t,status:l,queriesSent:a,queriesPending:d.length,subscribe:w,abort:b}}function E(){l="failed",m.forEach(z=>{z(void 0,c)})}function k(){d.forEach(z=>{z.status==="pending"&&(z.status="aborted")}),d=[]}function S(z,P,A){const F=P!=="success";switch(d=d.filter(Q=>Q!==z),l){case"pending":break;case"failed":if(F||!n.dataAfterTimeout)return;break;default:return}if(P==="abort"){c=A,E();return}if(F){c=A,d.length||(h.length?I():E());return}if(p(),k(),!n.random){const Q=n.resources.indexOf(z.resource);Q!==-1&&Q!==n.index&&(n.index=Q)}l="completed",m.forEach(Q=>{Q(A)})}function I(){if(l!=="pending")return;p();const z=h.shift();if(z===void 0){if(d.length){u=setTimeout(()=>{p(),l==="pending"&&(k(),E())},n.timeout);return}E();return}const P={status:"pending",resource:z,callback:(A,F)=>{S(P,A,F)}};d.push(P),a++,u=setTimeout(I,n.rotate),i(z,t,P.callback)}return setTimeout(I),x}function on(n){const t={...wr,...n};let i=[];function e(){i=i.filter(h=>h().status==="pending")}function s(h,o,l){const a=yr(t,h,o,(c,u)=>{e(),l&&l(c,u)});return i.push(a),a}function r(h){return i.find(o=>h(o))||null}return{query:s,find:r,setIndex:h=>{t.index=h},getIndex:()=>t.index,cleanup:e}}function Ve(){}const qi=Object.create(null);function Mr(n){if(!qi[n]){const t=ki(n);if(!t)return;qi[n]={config:t,redundancy:on(t)}}return qi[n]}function ln(n,t,i){let e,s;if(typeof n=="string"){const r=he(n);if(!r)return i(void 0,424),Ve;s=r.send;const h=Mr(n);h&&(e=h.redundancy)}else{const r=ye(n);if(r){e=on(r);const h=he(n.resources?n.resources[0]:"");h&&(s=h.send)}}return!e||!s?(i(void 0,424),Ve):e.query(t,s,i)().abort}function He(){}function xr(n){n.iconsLoaderFlag||(n.iconsLoaderFlag=!0,setTimeout(()=>{n.iconsLoaderFlag=!1,fr(n)}))}function Sr(n){const t=[],i=[];
1return n.forEach(e=>{(e.match(Js)?t:i).push(e)}),{valid:t,invalid:i}}function Vt(n,t,i){function e(){const s=n.pendingIcons;t.forEach(r=>{s&&s.delete(r),n.icons[r]||n.missing.add(r)})}if(i&&typeof i=="object")try{if(!sn(n,i).length){e();return}}catch(s){console.error(s)}e(),xr(n)}function Ke(n,t){n instanceof Promise?n.then(i=>{t(i)}).catch(()=>{t(null)}):t(n)}function _r(n,t){n.iconsToLoad?n.iconsToLoad=n.iconsToLoad.concat(t).sort():n.iconsToLoad=t,n.iconsQueueFlag||(n.iconsQueueFlag=!0,setTimeout(()=>{n.iconsQueueFlag=!1;const{provider:i,prefix:e}=n,s=n.iconsToLoad;if(delete n.iconsToLoad,!s||!s.length)return;const r=n.loadIcon;if(n.loadIcons&&(s.length>1||!r)){Ke(n.loadIcons(s,e,i),a=>{Vt(n,s,a)});return}if(r){s.forEach(a=>{Ke(r(a,e,i),c=>{Vt(n,[a],c?{prefix:e,icons:{[a]:c}}:null)})});return}const{valid:h,invalid:o}=Sr(s);if(o.length&&Vt(n,o,null),!h.length)return;const l=e.match(Js)?he(i):null;if(!l){Vt(n,h,null);return}l.prepare(i,e,h).forEach(a=>{ln(i,a,c=>{Vt(n,a.icons,c)})})}))}const Me=(n,t)=>{const i=gr(vr(n,!0,nn()));if(!i.pending.length){let o=!0;return t&&setTimeout(()=>{o&&t(i.loaded,i.missing,i.pending,He)}),()=>{o=!1}}const e=Object.create(null),s=[];let r,h;return i.pending.forEach(o=>{const{provider:l,prefix:a}=o;if(a===h&&l===r)return;r=l,h=a,s.push(ct(l,a));const c=e[l]||(e[l]=Object.create(null));c[a]||(c[a]=[])}),i.pending.forEach(o=>{const{provider:l,prefix:a,name:c}=o,u=ct(l,a),d=u.pendingIcons||(u.pendingIcons=new Set);d.has(c)||(d.add(c),e[l][a].push(c))}),s.forEach(o=>{const l=e[o.provider][o.prefix];l.length&&_r(o,l)}),t?pr(t,i,s):He},Cr=n=>new Promise((t,i)=>{const e=typeof n=="string"?ei(n,!0):n;if(!e){i(n);return}Me([e||n],s=>{if(s.length&&e){const r=Jt(e);if(r){t({...ii,...r});return}}i(n)})});function Ue(n){try{const t=typeof n=="string"?JSON.parse(n):n;if(typeof t.body=="string")return{...t}}catch{}}function Er(n,t){if(typeof n=="object")return{data:Ue(n),value:n};if(typeof n!="string")return{value:n};if(n.includes("{")){const r=Ue(n);if(r)return{data:r,value:n}}const i=ei(n,!0,!0);if(!i)return{value:n};const e=Jt(i);if(e!==void 0||!i.prefix)return{value:n,name:i,data:e};const s=Me([i],()=>t(n,i,Jt(i)));return{value:n,name:i,loading:s}}let an=!1;try{an=navigator.vendor.indexOf("Apple")===0}catch{}function kr(n,t){switch(t){case"svg":case"bg":case"mask":return t}return t!=="style"&&(an||n.indexOf("<a")===-1)?"svg":n.indexOf("currentColor")===-1?"bg":"mask"}const zr=/(-?[0-9.]*[0-9]+[0-9.]*)/g,Ir=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function oe(n,t,i){if(t===1)return n;if(i=i||100,typeof n=="number")return Math.ceil(n*t*i)/i;if(typeof n!="string")return n;const e=n.split(zr);if(e===null||!e.length)return n;const s=[];let r=e.shift(),h=Ir.test(r);for(;;){if(h){const o=parseFloat(r);isNaN(o)?s.push(r):s.push(Math.ceil(o*t*i)/i)}else s.push(r);if(r=e.shift(),r===void 0)return s.join("");h=!h}}function Lr(n,t="defs"){let i="";const e=n.indexOf("<"+t);for(;e>=0;){const s=n.indexOf(">",e),r=n.indexOf("</"+t);if(s===-1||r===-1)break;const h=n.indexOf(">",r);if(h===-1)break;i+=n.slice(s+1,r).trim(),n=n.slice(0,e).trim()+n.slice(h+1)}return{defs:i,content:n}}function Nr(n,t){return n?"<defs>"+n+"</defs>"+t:t}function Pr(n,t,i){const e=Lr(n);return Nr(e.defs,t+e.content+i)}const Tr=n=>n==="unset"||n==="undefined"||n==="none";function cn(n,t){const i={...ii,...n},e={...Ys,...t},s={left:i.left,top:i.top,width:i.width,height:i.height};let r=i.body;[i,e].forEach(b=>{const w=[],x=b.hFlip,E=b.vFlip;let k=b.rotate;x?E?k+=2:(w.push("translate("+(s.width+s.left).toString()+" "+(0-s.top).toString()+")"),w.push("scale(-1 1)"),s.top=s.left=0):E&&(w.push("translate("+(0-s.left).toString()+" "+(s.height+s.top).toString()+")"),w.push("scale(1 -1)"),s.top=s.left=0);let S;switch(k<0&&(k-=Math.floor(k/4)*4),k=k%4,k){case 1:S=s.height/2+s.top,w.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:w.unshift("rotate(180 "+(s.width/2+s.left).toString()+" "+(s.height/2+s.top).toString()+")");break;case 3:S=s.width/2+s.left,w.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}k%2===1&&(s.left!==s.top&&(S=s.left,s.left=s.top,s.top=S),s.width!==s.height&&(S=s.width,s.width=s.height,s.height=S)),w.length&&(r=Pr(r,'<g transform="'+w.join(" ")+'">',"</g>"))});const h=e.width,o=e.height,l=s.width,a=s.height;
1let c,u;h===null?(u=o===null?"1em":o==="auto"?a:o,c=oe(u,l/a)):(c=h==="auto"?l:h,u=o===null?oe(c,a/l):o==="auto"?a:o);const d={},m=(b,w)=>{Tr(w)||(d[b]=w.toString())};m("width",c),m("height",u);const p=[s.left,s.top,l,a];return d.viewBox=p.join(" "),{attributes:d,viewBox:p,body:r}}function xe(n,t){let i=n.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const e in t)i+=" "+e+'="'+t[e]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+i+">"+n+"</svg>"}function Rr(n){return n.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function Ar(n){return"data:image/svg+xml,"+Rr(n)}function un(n){return'url("'+Ar(n)+'")'}const Fr=()=>{let n;try{if(n=fetch,typeof n=="function")return n}catch{}};let yi=Fr();function Or(n){yi=n}function qr(){return yi}function Dr(n,t){const i=ki(n);if(!i)return 0;let e;if(!i.maxURL)e=0;else{let s=0;i.resources.forEach(h=>{s=Math.max(s,h.length)});const r=t+".json?icons=";e=i.maxURL-s-i.path.length-r.length}return e}function Qr(n){return n===404}const Br=(n,t,i)=>{const e=[],s=Dr(n,t),r="icons";let h={type:r,provider:n,prefix:t,icons:[]},o=0;return i.forEach((l,a)=>{o+=l.length+1,o>=s&&a>0&&(e.push(h),h={type:r,provider:n,prefix:t,icons:[]},o=l.length),h.icons.push(l)}),e.push(h),e};function $r(n){if(typeof n=="string"){const t=ki(n);if(t)return t.path}return"/"}const Wr=(n,t,i)=>{if(!yi){i("abort",424);return}let e=$r(t.provider);switch(t.type){case"icons":{const r=t.prefix,h=t.icons.join(","),o=new URLSearchParams({icons:h});e+=r+".json?"+o.toString();break}case"custom":{const r=t.uri;e+=r.slice(0,1)==="/"?r.slice(1):r;break}default:i("abort",400);return}let s=503;yi(n+e).then(r=>{const h=r.status;if(h!==200){setTimeout(()=>{i(Qr(h)?"abort":"next",h)});return}return s=501,r.json()}).then(r=>{if(typeof r!="object"||r===null){setTimeout(()=>{r===404?i("abort",r):i("next",s)});return}setTimeout(()=>{i("success",r)})}).catch(()=>{i("next",s)})},Vr={prepare:Br,send:Wr};function Hr(n,t,i){ct(i||"",t).loadIcons=n}function Kr(n,t,i){ct(i||"",t).loadIcon=n}const Di="data-style";let dn="";function Ur(n){dn=n}function je(n,t){let i=Array.from(n.childNodes).find(e=>e.hasAttribute&&e.hasAttribute(Di));i||(i=document.createElement("style"),i.setAttribute(Di,Di),n.appendChild(i)),i.textContent=":host{display:inline-block;vertical-align:"+(t?"-0.125em":"0")+"}span,svg{display:block;margin:auto}"+dn}function fn(){$e("",Vr),nn(!0);let n;try{n=window}catch{}if(n){if(n.IconifyPreload!==void 0){const i=n.IconifyPreload,e="Invalid IconifyPreload syntax.";typeof i=="object"&&i!==null&&(i instanceof Array?i:[i]).forEach(s=>{try{(typeof s!="object"||s===null||s instanceof Array||typeof s.icons!="object"||typeof s.prefix!="string"||!Be(s))&&console.error(e)}catch{console.error(e)}})}if(n.IconifyProviders!==void 0){const i=n.IconifyProviders;if(typeof i=="object"&&i!==null)for(const e in i){const s="IconifyProviders["+e+"] is invalid.";try{const r=i[e];if(typeof r!="object"||!r||r.resources===void 0)continue;We(e,r)||console.error(s)}catch{console.error(s)}}}}return{iconLoaded:ur,getIcon:dr,listIcons:cr,addIcon:rn,addCollection:Be,calculateSize:oe,buildIcon:cn,iconToHTML:xe,svgToURL:un,loadIcons:Me,loadIcon:Cr,addAPIProvider:We,setCustomIconLoader:Kr,setCustomIconsLoader:Hr,appendCustomStyle:Ur,_api:{getAPIConfig:ki,setAPIModule:$e,sendAPIQuery:ln,setFetch:Or,getFetch:qr,listAPIProviders:br}}}const le={"background-color":"currentColor"},mn={"background-color":"transparent"},Ze={image:"var(--svg)",repeat:"no-repeat",size:"100% 100%"},Ge={"-webkit-mask":le,mask:le,background:mn};for(const n in Ge){const t=Ge[n];for(const i in Ze)t[n+"-"+i]=Ze[i]}function Ye(n){return n?n+(n.match(/^[-0-9.]+$/)?"px":""):"inherit"}function jr(n,t,i){const e=document.createElement("span");let s=n.body;s.indexOf("<a")!==-1&&(s+="<!-- "+Date.now()+" -->");const r=n.attributes,h=xe(s,{...r,width:t.width+"",height:t.height+""}),o=un(h),l=e.style,a={"--svg":o,width:Ye(r.width),height:Ye(r.height),...i?le:mn};for(const c in a)l.setProperty(c,a[c]);return e}let jt;function Zr(){try{jt=window.trustedTypes.createPolicy("iconify",{createHTML:n=>n})}catch{jt=null}}function Gr(n){return jt===void 0&&Zr(),jt?jt.createHTML(n):n}function Yr(n){const t=document.createElement("span"),i=n.attributes;let e="";i.width||(e="width: inherit;"),i.height||(e+="height: inherit;"),e&&(i.style=e);const s=xe(n.body,i);return t.innerHTML=Gr(s),t.firstChild}function ae(n){return Array.from(n.childNodes).find(t=>{const i=t.tagName&&t.tagName.toUpperCase();return i==="SPAN"||i==="SVG"})}function Xe(n,t){const i=t.icon.data,e=t.customisations,s=cn(i,e);e.preserveAspectRatio&&(s.attributes.preserveAspectRatio=e.preserveAspectRatio);const r=t.renderedMode;let h;r==="svg"?h=Yr(s):h=jr(s,{...ii,...i},r==="mask");const o=ae(n);o?h.tagName==="SPAN"&&o.tagName===h.tagName?o.setAttribute("style",h.getAttribute("style")):n.replaceChild(h,o):n.appendChild(h)}function Je(n,t,i){const e=i&&(i.rendered?i:i.lastRender);return{rendered:!1,inline:t,icon:n,lastRender:e}}
1function Xr(n="iconify-icon"){let t,i;try{t=window.customElements,i=window.HTMLElement}catch{return}if(!t||!i)return;const e=t.get(n);if(e)return e;const s=["icon","mode","inline","noobserver","width","height","rotate","flip"],r=class extends i{_shadowRoot;_initialised=!1;_state;_checkQueued=!1;_connected=!1;_observer=null;_visible=!0;constructor(){super();const o=this._shadowRoot=this.attachShadow({mode:"open"}),l=this.hasAttribute("inline");je(o,l),this._state=Je({value:""},l),this._queueCheck()}connectedCallback(){this._connected=!0,this.startObserver()}disconnectedCallback(){this._connected=!1,this.stopObserver()}static get observedAttributes(){return s.slice(0)}attributeChangedCallback(o){switch(o){case"inline":{const l=this.hasAttribute("inline"),a=this._state;l!==a.inline&&(a.inline=l,je(this._shadowRoot,l));break}case"noobserver":{this.hasAttribute("noobserver")?this.startObserver():this.stopObserver();break}default:this._queueCheck()}}get icon(){const o=this.getAttribute("icon");if(o&&o.slice(0,1)==="{")try{return JSON.parse(o)}catch{}return o}set icon(o){typeof o=="object"&&(o=JSON.stringify(o)),this.setAttribute("icon",o)}get inline(){return this.hasAttribute("inline")}set inline(o){o?this.setAttribute("inline","true"):this.removeAttribute("inline")}get observer(){return this.hasAttribute("observer")}set observer(o){o?this.setAttribute("observer","true"):this.removeAttribute("observer")}restartAnimation(){const o=this._state;if(o.rendered){const l=this._shadowRoot;if(o.renderedMode==="svg")try{l.lastChild.setCurrentTime(0);return}catch{}Xe(l,o)}}get status(){const o=this._state;return o.rendered?"rendered":o.icon.data===null?"failed":"loading"}_queueCheck(){this._checkQueued||(this._checkQueued=!0,setTimeout(()=>{this._check()}))}_check(){if(!this._checkQueued)return;this._checkQueued=!1;const o=this._state,l=this.getAttribute("icon");if(l!==o.icon.value){this._iconChanged(l);return}if(!o.rendered||!this._visible)return;const a=this.getAttribute("mode"),c=De(this);(o.attrMode!==a||sr(o.customisations,c)||!ae(this._shadowRoot))&&this._renderIcon(o.icon,c,a)}_iconChanged(o){const l=Er(o,(a,c,u)=>{const d=this._state;if(d.rendered||this.getAttribute("icon")!==a)return;const m={value:a,name:c,data:u};m.data?this._gotIconData(m):d.icon=m});l.data?this._gotIconData(l):this._state=Je(l,this._state.inline,this._state)}_forceRender(){if(!this._visible){const o=ae(this._shadowRoot);o&&this._shadowRoot.removeChild(o);return}this._queueCheck()}_gotIconData(o){this._checkQueued=!1,this._renderIcon(o,De(this),this.getAttribute("mode"))}_renderIcon(o,l,a){const c=kr(o.data.body,a),u=this._state.inline;Xe(this._shadowRoot,this._state={rendered:!0,icon:o,inline:u,customisations:l,attrMode:a,renderedMode:c})}startObserver(){if(!this._observer&&!this.hasAttribute("noobserver"))try{this._observer=new IntersectionObserver(o=>{const l=o.some(a=>a.isIntersecting);l!==this._visible&&(this._visible=l,this._forceRender())}),this._observer.observe(this)}catch{if(this._observer){try{this._observer.disconnect()}catch{}this._observer=null}}}stopObserver(){this._observer&&(this._observer.disconnect(),this._observer=null,this._visible=!0,this._connected&&this._forceRender())}};s.forEach(o=>{o in r.prototype||Object.defineProperty(r.prototype,o,{get:function(){return this.getAttribute(o)},set:function(l){l!==null?this.setAttribute(o,l):this.removeAttribute(o)}})});const h=fn();for(const o in h)r[o]=r.prototype[o]=h[o];return t.define(n,r),r}const Jr=Xr()||fn(),{iconLoaded:zl,getIcon:Il,listIcons:Ll,addIcon:Nl,addCollection:pn,calculateSize:Pl,buildIcon:Tl,iconToHTML:Rl,svgToURL:Al,loadIcons:Fl,loadIcon:Ol,setCustomIconLoader:ql,setCustomIconsLoader:Dl,addAPIProvider:Ql,_api:Bl}=Jr;pn({prefix:"circle-flags",width:512,height:512,icons:{eu:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#0052b4" d="M0 0h512v512H0z"/><path fill="#ffda44" d="m256 100.2l8.3 25.5H291l-21.7 15.7l8.3 25.6l-21.7-15.8l-21.7 15.8l8.3-25.6l-21.7-15.7h26.8zm-110.2 45.6l24 12.2l18.9-19l-4.2 26.5l23.9 12.2l-2
16.5 4.2l-4.2 26.5l-12.2-24l-26.5 4.3l19-19zM100.2 256l25.5-8.3V221l15.7 21.7l25.6-8.3l-15.8 21.7l15.8 21.7l-25.6-8.3l-15.7 21.7v-26.8zm45.6 110.2l12.2-24l-19-18.9l26.5 4.2l12.2-23.9l4.2 26.5l26.5 4.2l-24 12.2l4.3 26.5l-19-19zM256 411.8l-8.3-25.5H221l21.7-15.7l-8.3-25.6l21.7 15.8l21.7-15.8l-8.3 25.6l21.7 15.7h-26.8zm110.2-45.6l-24-12.2l-18.9 19l4.2-26.5l-23.9-12.2l26.5-4.2l4.2-26.5l12.2 24l26.5-4.3l-19 19zM411.8 256l-25.5 8.3V291l-15.7-21.7l-25.6 8.3l15.8-21.7l-15.8-21.7l25.6 8.3l15.7-21.7v26.8zm-45.6-110.2l-12.2 24l19 18.9l-26.5-4.2l-12.2 23.9l-4.2-26.5l-26.5-4.2l24-12.2l-4.3-26.5l19 19z"/></g>'},us:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#eee" d="M256 0h256v64l-32 32l32 32v64l-32 32l32 32v64l-32 32l32 32v64l-256 32L0 448v-64l32-32l-32-32v-64z"/><path fill="#d80027" d="M224 64h288v64H224Zm0 128h288v64H256ZM0 320h512v64H0Zm0 128h512v64H0Z"/><path fill="#0052b4" d="M0 0h256v256H0Z"/><path fill="#eee" d="m187 243l57-41h-70l57 41l-22-67zm-81 0l57-41H93l57 41l-22-67zm-81 0l57-41H12l57 41l-22-67zm162-81l57-41h-70l57 41l-22-67zm-81 0l57-41H93l57 41l-22-67zm-81 0l57-41H12l57 41l-22-67Zm162-82l57-41h-70l57 41l-22-67Zm-81 0l57-41H93l57 41l-22-67zm-81 0l57-41H12l57 41l-22-67Z"/></g>'},gb:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#eee" d="m0 0l8 22l-8 23v23l32 54l-32 54v32l32 48l-32 48v32l32 54l-32 54v68l22-8l23 8h23l54-32l54 32h32l48-32l48 32h32l54-32l54 32h68l-8-22l8-23v-23l-32-54l32-54v-32l-32-48l32-48v-32l-32-54l32-54V0l-22 8l-23-8h-23l-54 32l-54-32h-32l-48 32l-48-32h-32l-54 32L68 0z"/><path fill="#0052b4" d="M336 0v108L444 0Zm176 68L404 176h108zM0 176h108L0 68ZM68 0l108 108V0Zm108 512V404L68 512ZM0 444l108-108H0Zm512-108H404l108 108Zm-68 176L336 404v108z"/><path fill="#d80027" d="M0 0v45l131 131h45zm208 0v208H0v96h208v208h96V304h208v-96H304V0zm259 0L336 131v45L512 0zM176 336L0 512h45l131-131zm160 0l176 176v-45L381 336z"/></g>'},fr:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#eee" d="M0 0h512v512H0z"/><path fill="#0052b4" d="M0 0h170.7v512H0z"/><path fill="#d80027" d="M341.3 0H512v512H341.3z"/></g>'},de:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#ffda44" d="M0 345h512v167H0z"/><path fill="#d80027" d="M0 167h512v178H0z"/><path fill="#333" d="M0 0h512v167H0z"/></g>'},ch:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#d80027" d="M0 0h512v512H0z"/><path fill="#eee" d="M389.6 211.5h-89v-89h-89.1v89h-89v89h89v89h89v-89h89z"/></g>'},jp:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#eee" d="M0 0h512v512H0z"/><circle cx="256" cy="256" r="111.3" fill="#d80027"/></g>'},th:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#d80027" d="M0 0h512v89l-79.2 163.7L512 423v89H0v-89l82.7-169.6L0 89z"/><path fill="#eee" d="M0 89h512v78l-42.6 91.2L512 345v78H0v-78l40-92.5L0 167z"/><path fill="#0052b4" d="M0 167h512v178H0z"/></g>'},ae:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#a2001d" d="M0 0h167l52.3 252L167 512H0z"/><path fill="#eee" d="m167 167l170.8-44.6L512 167v178l-173.2 36.9L167 345z"/><path fill="#6da544" d="M167 0h345v167H167z"/><path fill="#333" d="M167 345h345v167H167z"/></g>'},vu:{body:'<mask id="yesFlagMask"><circle cx="256" cy="256" r="256" fill="#fff"/></mask><g mask="url(#yesFlagMask)"><path fill="#d80027" d="M512 222.6V0H0l215.6 239.4z"/><path fill="#6da544" d="M512 289.4V512H0l216.5-240z"/><path fill="#333" d="m0 0l222.6 222.6H512v22.2l-10.9 11.8L512 267v22.4H222.6L0 512v-31.5l8-23l-8-8.6V63l9.5-10.4l-9.5-21z"/><g fill="#ffda44"><path d="M512 244.8H213.2L0 31.7V63l192.8 193L0 449v31.5L213.2 267H512z"/><path d="M62.2 310.6V289a38.8 38.8 0 0 0 38.8-38.8A27.5 27.5 0 0 0 73.5 223a18.7 18.7 0 0 0-18.7 18.7a12 12 0 0 0 12 12c3.7 0 6.8-3 6.8-6.8H95A28.2 28.2 0 0 1 66.8 275c-18.4 0-33.4-15-33.4-33.4c0-22.2 18-40.2 40-40.2a49 49 0 0 1 49 49c0 33.1-27 60.2-60.2 60.2"/></g></g>'}}});pn({prefix:"cryptocurrency-color",width:32,height:32,icons:{bch:{body:'<g fill="none" fill-rule="evenodd"><circle cx="16" cy="16" r="16" fill="#8dc351"/><path fill="#fff" fill-rule="nonzero" d="M21.207 10.534c-.776-1.972-2.722-2.15-4.988-1.71l-.807-2.813l-1.712.491l.786 2.74c-.45.128-.908.27-1.363.41l-.79-2.758l-1.711.49l.805 2.813c-.368.114-.73.226-1.085.328l-.003-.01l-2.362.677l.525 1.83s1.258-.388 1.243-.358c.694-.199 1.035.139 1.2.468l.92 3.204c.047-.013.11-.029.184-.04l-.181.052l1.287 4.49c.032.227.004.612-.48.752c.027.013-1.246.356-1.246.356l.247 2.143l2.228-.64c.415-.117.825-.227 1.226-.34l.817 2.845l1.71-.49l-.807-2.815a66 66 0 0 0 1.372-.38l.802 2.803l1.713-.491l-.814-2.84c2.831-.991 4.638-2.294 4.113-5.07c-.422-2.234-1.724-2.912-3.471-2.836c.848-.79 1.213-1.858.642-3.3zm-.65 6.77c.61 2.127-3.1 2.929-4.26 3.263l-1.081-3.77c1.16-.333 4.704-1.71 5.34.508zm-2.322-5.09c.554 1.935-2.547 2.58-3.514 2.857l-.98-3.419c.966-.277 3.915-1.455 4.494.563z"/></g>'},btc:{body:'<g fill="none" fill-rule="evenodd"><circle cx="16" cy="16" r="16" fill="#F7931A"/><path fill="#FFF" fill-rule="nonzero" d="M23.189 14.02c.314-2.096-1.283-3.223-3.465-3.975l.708-2.84l-1.728-.43l-.69 2.765c-.454-.114-.92-.22-1.385-.326l.695-2.783L15.596 6l-.708 2.839q-.565-.127-1.104-.26l.002-.009l-2.384-.595l-.46 1.846s1.283.294 1.256.312c.7.175.826.638.805 1.006l-.806 3.235q.073.017.18.057l-.183-.045l-1.13 4.532c-.086.212-.303.531-.793.41c.018.025-1.256-.313-1.256-.313l-.858 1.978l2.25.561c.418.105.828.215 1.231.318l-.715 2.872l1.727.43l.708-2.84q.707.19 1.378.357l-.706 2.828l1.728.43l.715-2.866c2.948.558 5.164.333 6.097-2.333c.752-2.146-.037-3.385-1.588-4.192c1.13-.26 1.98-1.003 2.207-2.538m-3.95 5.538c-.533 2.147-4.148.986-5.32.695l.95-3.805c1.172.293 4.929.872 4.37 3.11m.535-5.569c-.487 1.953-3.495.96-4.47.717l.86-3.45c.975.243 4.118.696 3.61 2.733"/></g>'},eth:{body:'<g fill="none" fill-rule="evenodd"><circle cx="16" cy="16" r="16" fill="#627EEA"/><g fill="#FFF" fill-rule="nonzero"><path fill-opacity=".602" d="M16.498 4v8.87l7.497 3.35z"/><path d="M16.498 4L9 16.22l7.498-3.35z"/><path fill-opacity=".602" d="M16.498 21.968v6.027L24 17.616z"/><path d="M16.498 27.995v-6.028L9 17.616z"/><path fill-opacity=".2" d="m16.498 20.573l7.497-4.353l-7.497-3.348z"/><path fill-opacity=".602" d="m9 16.22l7.498 4.353v-7.701z"/></g></g>'},ltc:{body:'<g fill="none" fill-rule="evenodd"><circle cx="16" cy="16" r="16" fill="#BFBBBB"/><path fill="#FFF" d="M10.427 19.214L9 19.768l.688-2.759l1.444-.58L13.213 8h5.129l-1.519 6.196l1.41-.571l-.68 2.75l-1.427.571l-.848 3.483H23L22.127 24H9.252z"/></g>'},usdt:{body:'<g fill="none" fill-rule="evenodd">
1<circle cx="16" cy="16" r="16" fill="#26A17B"/><path fill="#FFF" d="M17.922 17.383v-.002c-.11.008-.677.042-1.942.042c-1.01 0-1.721-.03-1.971-.042v.003c-3.888-.171-6.79-.848-6.79-1.658s2.902-1.486 6.79-1.66v2.644c.254.018.982.061 1.988.061c1.207 0 1.812-.05 1.925-.06v-2.643c3.88.173 6.775.85 6.775 1.658c0 .81-2.895 1.485-6.775 1.657m0-3.59v-2.366h5.414V7.819H8.595v3.608h5.414v2.365c-4.4.202-7.709 1.074-7.709 2.118s3.309 1.915 7.709 2.118v7.582h3.913v-7.584c4.393-.202 7.694-1.073 7.694-2.116s-3.301-1.914-7.694-2.117"/></g>'}}});function O(n){var t=n.width,i=n.height;if(t<0)throw new Error("Negative width is not allowed for Size");if(i<0)throw new Error("Negative height is not allowed for Size");return{width:t,height:i}}function xt(n,t){return n.width===t.width&&n.height===t.height}var th=(function(){function n(t){var i=this;this._resolutionListener=function(){return i._onResolutionChanged()},this._resolutionMediaQueryList=null,this._observers=[],this._window=t,this._installResolutionListener()}return n.prototype.dispose=function(){this._uninstallResolutionListener(),this._window=null},Object.defineProperty(n.prototype,"value",{get:function(){return this._window.devicePixelRatio},enumerable:!1,configurable:!0}),n.prototype.subscribe=function(t){var i=this,e={next:t};return this._observers.push(e),{unsubscribe:function(){i._observers=i._observers.filter(function(s){return s!==e})}}},n.prototype._installResolutionListener=function(){if(this._resolutionMediaQueryList!==null)throw new Error("Resolution listener is already installed");var t=this._window.devicePixelRatio;this._resolutionMediaQueryList=this._window.matchMedia("all and (resolution: ".concat(t,"dppx)")),this._resolutionMediaQueryList.addListener(this._resolutionListener)},n.prototype._uninstallResolutionListener=function(){this._resolutionMediaQueryList!==null&&(this._resolutionMediaQueryList.removeListener(this._resolutionListener),this._resolutionMediaQueryList=null)},n.prototype._reinstallResolutionListener=function(){this._uninstallResolutionListener(),this._installResolutionListener()},n.prototype._onResolutionChanged=function(){var t=this;this._observers.forEach(function(i){return i.next(t._window.devicePixelRatio)}),this._reinstallResolutionListener()},n})();function ih(n){return new th(n)}var eh=(function(){function n(t,i,e){var s;this._canvasElement=null,this._bitmapSizeChangedListeners=[],this._suggestedBitmapSize=null,this._suggestedBitmapSizeChangedListeners=[],this._devicePixelRatioObservable=null,this._canvasElementResizeObserver=null,this._canvasElement=t,this._canvasElementClientSize=O({width:this._canvasElement.clientWidth,height:this._canvasElement.clientHeight}),this._transformBitmapSize=i??(function(r){return r}),this._allowResizeObserver=(s=e?.allowResizeObserver)!==null&&s!==void 0?s:!0,this._chooseAndInitObserver()}return n.prototype.dispose=function(){var t,i;if(this._canvasElement===null)throw new Error("Object is disposed");(t=this._canvasElementResizeObserver)===null||t===void 0||t.disconnect(),this._canvasElementResizeObserver=null,(i=this._devicePixelRatioObservable)===null||i===void 0||i.dispose(),this._devicePixelRatioObservable=null,this._suggestedBitmapSizeChangedListeners.length=0,this._bitmapSizeChangedListeners.length=0,this._canvasElement=null},Object.defineProperty(n.prototype,"canvasElement",{get:function(){if(this._canvasElement===null)throw new Error("Object is disposed");return this._canvasElement},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"canvasElementClientSize",{get:function(){return this._canvasElementClientSize},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"bitmapSize",{get:function(){return O({width:this.canvasElement.width,height:this.canvasElement.height})},enumerable:!1,configurable:!0}),n.prototype.resizeCanvasElement=function(t){this._canvasElementClientSize=O(t),this.canvasElement.style.width="".concat(this._canvasElementClientSize.width,"px"),this.canvasElement.style.height="".concat(this._canvasElementClientSize.height,"px"),this._invalidateBitmapSize()},n.prototype.subscribeBitmapSizeChanged=function(t){this._bitmapSizeChangedListeners.push(t)},n.prototype.unsubscribeBitmapSizeChanged=function(t){this._bitmapSizeChangedListeners=this._bitmapSizeChangedListeners.filter(function(i){return i!==t})},Object.defineProperty(n.prototype,"suggestedBitmapSize",{get:function(){return this._suggestedBitmapSize}
1,enumerable:!1,configurable:!0}),n.prototype.subscribeSuggestedBitmapSizeChanged=function(t){this._suggestedBitmapSizeChangedListeners.push(t)},n.prototype.unsubscribeSuggestedBitmapSizeChanged=function(t){this._suggestedBitmapSizeChangedListeners=this._suggestedBitmapSizeChangedListeners.filter(function(i){return i!==t})},n.prototype.applySuggestedBitmapSize=function(){if(this._suggestedBitmapSize!==null){var t=this._suggestedBitmapSize;this._suggestedBitmapSize=null,this._resizeBitmap(t),this._emitSuggestedBitmapSizeChanged(t,this._suggestedBitmapSize)}},n.prototype._resizeBitmap=function(t){var i=this.bitmapSize;xt(i,t)||(this.canvasElement.width=t.width,this.canvasElement.height=t.height,this._emitBitmapSizeChanged(i,t))},n.prototype._emitBitmapSizeChanged=function(t,i){var e=this;this._bitmapSizeChangedListeners.forEach(function(s){return s.call(e,t,i)})},n.prototype._suggestNewBitmapSize=function(t){var i=this._suggestedBitmapSize,e=O(this._transformBitmapSize(t,this._canvasElementClientSize)),s=xt(this.bitmapSize,e)?null:e;i===null&&s===null||i!==null&&s!==null&&xt(i,s)||(this._suggestedBitmapSize=s,this._emitSuggestedBitmapSizeChanged(i,s))},n.prototype._emitSuggestedBitmapSizeChanged=function(t,i){var e=this;this._suggestedBitmapSizeChangedListeners.forEach(function(s){return s.call(e,t,i)})},n.prototype._chooseAndInitObserver=function(){var t=this;if(!this._allowResizeObserver){this._initDevicePixelRatioObservable();return}nh().then(function(i){return i?t._initResizeObserver():t._initDevicePixelRatioObservable()})},n.prototype._initDevicePixelRatioObservable=function(){var t=this;if(this._canvasElement!==null){var i=ts(this._canvasElement);if(i===null)throw new Error("No window is associated with the canvas");this._devicePixelRatioObservable=ih(i),this._devicePixelRatioObservable.subscribe(function(){return t._invalidateBitmapSize()}),this._invalidateBitmapSize()}},n.prototype._invalidateBitmapSize=function(){var t,i;if(this._canvasElement!==null){var e=ts(this._canvasElement);if(e!==null){var s=(i=(t=this._devicePixelRatioObservable)===null||t===void 0?void 0:t.value)!==null&&i!==void 0?i:e.devicePixelRatio,r=this._canvasElement.getClientRects(),h=r[0]!==void 0?rh(r[0],s):O({width:this._canvasElementClientSize.width*s,height:this._canvasElementClientSize.height*s});this._suggestNewBitmapSize(h)}}},n.prototype._initResizeObserver=function(){var t=this;this._canvasElement!==null&&(this._canvasElementResizeObserver=new ResizeObserver(function(i){var e=i.find(function(h){return h.target===t._canvasElement});if(!(!e||!e.devicePixelContentBoxSize||!e.devicePixelContentBoxSize[0])){var s=e.devicePixelContentBoxSize[0],r=O({width:s.inlineSize,height:s.blockSize});t._suggestNewBitmapSize(r)}}),this._canvasElementResizeObserver.observe(this._canvasElement,{box:"device-pixel-content-box"}))},n})();function sh(n,t){return new eh(n,t.transform,t.options)}function ts(n){return n.ownerDocument.defaultView}function nh(){return new Promise(function(n){var t=new ResizeObserver(function(i){n(i.every(function(e){return"devicePixelContentBoxSize"in e})),t.disconnect()});t.observe(document.body,{box:"device-pixel-content-box"})}).catch(function(){return!1})}function rh(n,t){return O({width:Math.round(n.left*t+n.width*t)-Math.round(n.left*t),height:Math.round(n.top*t+n.height*t)-Math.round(n.top*t)})}var hh=(function(){function n(t,i,e){if(i.width===0||i.height===0)throw new TypeError("Rendering target could only be created on a media with positive width and height");if(this._mediaSize=i,e.width===0||e.height===0)throw new TypeError("Rendering target could only be created using a bitmap with positive integer width and height");this._bitmapSize=e,this._context=t}return n.prototype.useMediaCoordinateSpace=function(t){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),this._context.scale(this._horizontalPixelRatio,this._verticalPixelRatio),t({context:this._context,mediaSize:this._mediaSize})}finally{this._context.restore()}},n.prototype.useBitmapCoordinateSpace=function(t){try{return this._context.save(),this._context.setTransform(1,0,0,1,0,0),t({context:this._context,mediaSize:this._mediaSize,bitmapSize:this._bitmapSize,horizontalPixelRatio:this._horizontalPixelRatio,verticalPixelRatio:this._verticalPixelRatio})}
1finally{this._context.restore()}},Object.defineProperty(n.prototype,"_horizontalPixelRatio",{get:function(){return this._bitmapSize.width/this._mediaSize.width},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"_verticalPixelRatio",{get:function(){return this._bitmapSize.height/this._mediaSize.height},enumerable:!1,configurable:!0}),n})();function St(n,t){var i=n.canvasElementClientSize;if(i.width===0||i.height===0)return null;var e=n.bitmapSize;if(e.width===0||e.height===0)return null;var s=n.canvasElement.getContext("2d",t);return s===null?null:new hh(s,i,e)}const gn={title:"",visible:!0,hitTestTolerance:3,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 is,es;function bt(n,t){const i=(function(e,s){switch(e){case 0:default:return[];case 1:return[s,s];case 2:return[2*s,2*s];case 3:return[6*s,6*s];case 4:return[s,4*s]}})(t,n.lineWidth);return n.setLineDash(i),i}function vn(n,t,i,e){n.beginPath();const s=n.lineWidth%2?.5:0;n.moveTo(i,t+s),n.lineTo(e,t+s),n.stroke()}function U(n,t){if(!n)throw new Error("Assertion failed"+(t?": "+t:""))}function J(n){if(n===void 0)throw new Error("Value is undefined");return n}function M(n){if(n===null)throw new Error("Value is null");return n}function vt(n){return M(J(n))}(function(n){n[n.Simple=0]="Simple",n[n.WithSteps=1]="WithSteps",n[n.Curved=2]="Curved"})(is||(is={})),(function(n){n[n.Solid=0]="Solid",n[n.Dotted=1]="Dotted",n[n.Dashed=2]="Dashed",n[n.LargeDashed=3]="LargeDashed",n[n.SparseDotted=4]="SparseDotted"})(es||(es={}));class B{constructor(){this.t=[]}i(t,i,e){const s={h:t,l:i,o:e===!0};this.t.push(s)}_(t){const i=this.t.findIndex((e=>t===e.h));i>-1&&this.t.splice(i,1)}u(t){this.t=this.t.filter((i=>i.l!==t))}p(t,i,e){const s=[...this.t];this.t=this.t.filter((r=>!r.o)),s.forEach((r=>r.h(t,i,e)))}v(){return this.t.length>0}m(){this.t=[]}}function it(n,...t){for(const i of t)for(const e in i)i[e]!==void 0&&Object.prototype.hasOwnProperty.call(i,e)&&!["__proto__","constructor","prototype"].includes(e)&&(typeof i[e]!="object"||n[e]===void 0||Array.isArray(i[e])?n[e]=i[e]:it(n[e],i[e]));return n}function Ot(n){return typeof n=="number"&&isFinite(n)}function ti(n){return typeof n=="number"&&n%1==0}function si(n){return typeof n=="string"}function ri(n){return typeof n=="boolean"}function lt(n){const t=n;if(!t||typeof t!="object")return t;let i,e,s;for(e in i=Array.isArray(t)?[]:{},t)t.hasOwnProperty(e)&&(s=t[e],i[e]=s&&typeof s=="object"?lt(s):s);return i}function ss(n){return n!==null}function ce(n){return n===null?void 0:n}const bn="-apple-system, BlinkMacSystemFont, 'Trebuchet MS', Roboto, Ubuntu, sans-serif";function Mi(n,t,i){return t===void 0&&(t=bn),`${i=i!==void 0?`${i} `:""}${n}px ${t}`}class oh{constructor(t){this.M={S:1,C:5,k:NaN,P:"",T:"",R:"",D:"",I:0,V:0,B:0,A:0,L:0},this.O=t}N(){const t=this.M,i=this.F(),e=this.W();return t.k===i&&t.T===e||(t.k=i,t.T=e,t.P=Mi(i,e),t.A=2.5/12*i,t.I=t.A,t.V=i/12*t.C,t.B=i/12*t.C,t.L=0),t.R=this.H(),t.D=this.U(),this.M}H(){return this.O.N().layout.textColor}U(){return this.O.$()}F(){return this.O.N().layout.fontSize}W(){return this.O.N().layout.fontFamily}}function Qi(n){return n<0?0:n>255?255:Math.round(n)||0}function ns(n){return .199*n[0]+.687*n[1]+.114*n[2]}class lh{constructor(t,i){this.j=new Map,this.q=t,i&&(this.j=i)}Y(t,i){if(t==="transparent")return t;const e=this.K(t),s=e[3];return`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${i*s})`}Z(t){const i=this.K(t);return{G:`rgb(${i[0]}, ${i[1]}, ${i[2]})`,X:ns(i)>160?"black":"white"}}J(t){return ns(this.K(t))}tt(t,i,e){const[s,r,h,o]=this.K(t),[l,a,c,u]=this.K(i),d=[Qi(s+e*(l-s)),Qi(r+e*(a-r)),Qi(h+e*(c-h)),(m=o+e*(u-o),m<=0||m>1?Math.min(Math.max(m,0),1):Math.round(1e4*m)/1e4)];var m;return`rgba(${d[0]}, ${d[1]}, ${d[2]}, ${d[3]})`}K(t){const i=this.j.get(t);if(i)return i;const e=(function(h){const o=document.createElement("div");o.style.display="none",document.body.appendChild(o),o.style.color=h;const l=window.getComputedStyle(o).color;return document.body.removeChild(o),l})(t),s=e.match(/^rgba?\s*\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d*\.?\d+))?\)$/);if(!s){if(this.q.length)for(const h of this.q){const o=h(t);if(o)return this.j.set(t,o),o}throw new Error(`Failed to parse color: ${t}`)}const r=[parseInt(s[1],10),parseInt(s[2],10),parseInt(s[3],10),s[4]?parseFloat(s[4]):1];return this.j.set(t,r),r}}class wn{constructor(){this.it=[]}nt(t){this.it=t}st(t,i,e){this.it.forEach((s=>{s.st(t,i,e)}))}}class kt{st(t,i,e){t.useBitmapCoordinateSpace((s=>this.et(s,i,e)))}}class ah extends kt{constructor(){super(...arguments),this.rt=null}ht(t){this.rt=t}et({context:t,horizontalPixelRatio:i,verticalPixelRatio:e}){if(this.rt===null||this.rt.lt===null)return;const s=this.rt.lt,r=this.rt,h=Math.max(1,Math.floor(i))%2/2,o=l=>{t.beginPath();for(let a=s.to-1;a>=s.from;--a){const c=r.ot[a],u=Math.round(c._t*i)+h,d=c.ut*e,m=l*e+h;t.moveTo(u,d),t.arc(u,d,m,0,2*Math.PI)}t.fill()};r.ct>0&&(t.fillStyle=r.dt,o(r.ft+r.ct)),t.fillStyle=r.vt,o(r.ft)}}function ch(){return{ot:[{_t:0,ut:0,wt:0,Mt:0}],vt:"",dt:"",ft:0,ct:0,lt:null}}const uh={from:0,to:1};class dh{constructor(t,i,e){this.gt=new wn,this.bt=[],this.St=[],this.xt=!0,this.O=t,this.Ct=i,this.yt=e,this.gt.nt(this.bt)}kt(t){this.Pt(),this.xt=!0}Tt(){return this.xt&&(this.Rt(),this.xt=!1),this.gt}
vendor: 9,477 bytes, line 1
1Pt(){const t=this.yt.Dt();t.length!==this.bt.length&&(this.St=t.map(ch),this.bt=this.St.map((i=>{const e=new ah;return e.ht(i),e})),this.gt.nt(this.bt))}Rt(){const t=this.Ct.N().mode===2||!this.Ct.It(),i=this.yt.Vt(),e=this.Ct.Bt(),s=this.O.Et();this.Pt(),i.forEach(((r,h)=>{const o=this.St[h],l=r.At(e),a=r.Lt();!t&&l!==null&&r.It()&&a!==null?(o.vt=l.zt,o.ft=l.ft,o.ct=l.Ot,o.ot[0].Mt=l.Mt,o.ot[0].ut=r.Ft().Nt(l.Mt,a.Wt),o.dt=l.Ht??this.O.Ut(o.ot[0].ut/r.Ft().$t()),o.ot[0].wt=e,o.ot[0]._t=s.jt(e),o.lt=uh):o.lt=null}))}}class fh extends kt{constructor(t){super(),this.qt=t}et({context:t,bitmapSize:i,horizontalPixelRatio:e,verticalPixelRatio:s}){if(this.qt===null)return;const r=this.qt.Yt.It,h=this.qt.Kt.It;if(!r&&!h)return;const o=Math.round(this.qt._t*e),l=Math.round(this.qt.ut*s);t.lineCap="butt",r&&o>=0&&(t.lineWidth=Math.floor(this.qt.Yt.ct*e),t.strokeStyle=this.qt.Yt.R,t.fillStyle=this.qt.Yt.R,bt(t,this.qt.Yt.Zt),(function(a,c,u,d){a.beginPath();const m=a.lineWidth%2?.5:0;a.moveTo(c+m,u),a.lineTo(c+m,d),a.stroke()})(t,o,0,i.height)),h&&l>=0&&(t.lineWidth=Math.floor(this.qt.Kt.ct*s),t.strokeStyle=this.qt.Kt.R,t.fillStyle=this.qt.Kt.R,bt(t,this.qt.Kt.Zt),vn(t,l,0,i.width))}}class mh{constructor(t,i){this.xt=!0,this.Gt={Yt:{ct:1,Zt:0,R:"",It:!1},Kt:{ct:1,Zt:0,R:"",It:!1},_t:0,ut:0},this.Xt=new fh(this.Gt),this.Jt=t,this.yt=i}kt(){this.xt=!0}Tt(t){return this.xt&&(this.Rt(),this.xt=!1),this.Xt}Rt(){const t=this.Jt.It(),i=this.yt.Qt().N().crosshair,e=this.Gt;if(i.mode===2)return e.Kt.It=!1,void(e.Yt.It=!1);e.Kt.It=t&&this.Jt.ti(this.yt),e.Yt.It=t&&this.Jt.ii(),e.Kt.ct=i.horzLine.width,e.Kt.Zt=i.horzLine.style,e.Kt.R=i.horzLine.color,e.Yt.ct=i.vertLine.width,e.Yt.Zt=i.vertLine.style,e.Yt.R=i.vertLine.color,e._t=this.Jt.ni(),e.ut=this.Jt.si()}}function zi(n,t,i,e,s,r){n.save(),n.globalCompositeOperation="copy",n.fillStyle=r,n.fillRect(t,i,e,s),n.restore()}function rs(n,t,i,e,s,r){n.beginPath(),n.roundRect?n.roundRect(t,i,e,s,r):(n.lineTo(t+e-r[1],i),r[1]!==0&&n.arcTo(t+e,i,t+e,i+r[1],r[1]),n.lineTo(t+e,i+s-r[2]),r[2]!==0&&n.arcTo(t+e,i+s,t+e-r[2],i+s,r[2]),n.lineTo(t+r[3],i+s),r[3]!==0&&n.arcTo(t,i+s,t,i+s-r[3],r[3]),n.lineTo(t,i+r[0]),r[0]!==0&&n.arcTo(t,i,t+r[0],i,r[0]))}function hs(n,t,i,e,s,r,h=0,o=[0,0,0,0],l=""){if(n.save(),!h||!l||l===r)return rs(n,t,i,e,s,o),n.fillStyle=r,n.fill(),void n.restore();const a=h/2;var c;rs(n,t+a,i+a,e-h,s-h,(c=-a,o.map((u=>u===0?u:u+c)))),r!=="transparent"&&(n.fillStyle=r,n.fill()),l!=="transparent"&&(n.lineWidth=h,n.strokeStyle=l,n.closePath(),n.stroke()),n.restore()}function yn(n,t,i,e,s,r,h){n.save(),n.globalCompositeOperation="copy";const o=n.createLinearGradient(0,0,0,s);o.addColorStop(0,r),o.addColorStop(1,h),n.fillStyle=o,n.fillRect(t,i,e,s),n.restore()}class os{constructor(t,i){this.ht(t,i)}ht(t,i){this.qt=t,this.ei=i}$t(t,i){return this.qt.It?t.k+t.A+t.I:0}st(t,i,e,s){if(!this.qt.It||this.qt.ri.length===0)return;const r=this.qt.R,h=this.ei.G,o=t.useBitmapCoordinateSpace((l=>{const a=l.context;a.font=i.P;const c=this.hi(l,i,e,s),u=c.ai;return c.li?hs(a,u.oi,u._i,u.ui,u.ci,h,u.di,[u.ft,0,0,u.ft],h):hs(a,u.fi,u._i,u.ui,u.ci,h,u.di,[0,u.ft,u.ft,0],h),this.qt.pi&&(a.fillStyle=r,a.fillRect(u.fi,u.mi,u.wi-u.fi,u.Mi)),this.qt.gi&&(a.fillStyle=i.D,a.fillRect(c.li?u.bi-u.di:0,u._i,u.di,u.Si-u._i)),c}));t.useMediaCoordinateSpace((({context:l})=>{const a=o.xi;l.font=i.P,l.textAlign=o.li?"right":"left",l.textBaseline="middle",l.fillStyle=r,l.fillText(this.qt.ri,a.Ci,(a._i+a.Si)/2+a.yi)}))}hi(t,i,e,s){const{context:r,bitmapSize:h,mediaSize:o,horizontalPixelRatio:l,verticalPixelRatio:a}=t,c=this.qt.pi||!this.qt.ki?i.C:0,u=this.qt.Pi?i.S:0,d=i.A+this.ei.Ti,m=i.I+this.ei.Ri,p=i.V,b=i.B,w=this.qt.ri,x=i.k,E=e.Di(r,w),k=Math.ceil(e.Ii(r,w)),S=x+d+m,I=i.S+p+b+k+c,z=Math.max(1,Math.floor(a));let P=Math.round(S*a);P%2!=z%2&&(P+=1);const A=u>0?Math.max(1,Math.floor(u*l)):0,F=Math.round(I*l),Q=Math.round(c*l),nt=this.ei.Vi??this.ei.Bi??this.ei.Ei,Y=Math.round(nt*a)-Math.floor(.5*a),ut=Math.floor(Y+z/2-P/2),dt=ut+P,ft=s==="right",zt=ft?o.width-u:u,mt=ft?h.width-A:A;let Dt,Qt,rt;return ft?(Dt=mt-F,Qt=mt-Q,rt=zt-c-p-u):(Dt=mt+F,Qt=mt+Q,rt=zt+c+p),{li:ft,ai:{_i:ut,mi:Y,Si:dt,ui:F,ci:P,ft:2*l,di:A,oi:Dt,fi:mt,wi:Qt,Mi:z,bi:h.width},xi:{_i:ut/a,Si:dt/a,Ci:rt,yi:E}}}}class Ii{constructor(t){this.Ai={Ei:0,G:"#000",Ri:0,Ti:0},this.Li={ri:"",It:!1,pi:!0,ki:!1,Ht:"",R:"#FFF",gi:!1,Pi:!1},this.zi={ri:"",It:!1,pi:!1,ki:!0,Ht:"",R:"#FFF",gi:!0,Pi:!0},this.xt=!0,this.Oi=new(t||os)(this.Li,this.Ai),this.Ni=new(t||os)(this.zi,this.Ai)}ri(){return this.Fi(),this.Li.ri}Ei(){return this.Fi(),this.Ai.Ei}kt(){this.xt=!0}$t(t,i=!1){return Math.max(this.Oi.$t(t,i),this.Ni.$t(t,i))}Wi(){return this.Ai.Vi??null}Hi(){return this.Ai.Vi??this.Ai.Bi??this.Ei()}Ui(t){this.Ai.Bi=t??void 0}$i(){return this.Fi(),this.Li.It||this.zi.It}ji(){return this.Fi(),this.Li.It}Tt(t){return this.Fi(),this.Li.pi=this.Li.pi&&t.N().ticksVisible,this.zi.pi=this.zi.pi&&t.N().ticksVisible,this.Oi.ht(this.Li,this.Ai),this.Ni.ht(this.zi,this.Ai),this.Oi}qi(){return this.Fi(),this.Oi.ht(this.Li,this.Ai),this.Ni.ht(this.zi,this.Ai),this.Ni}Fi(){this.xt&&(this.Li.pi=!0,this.zi.pi=!1,this.Yi(this.Li,this.zi,this.Ai))}}class ph extends Ii{constructor(t,i,e){super(),this.Jt=t,this.Ki=i,this.Zi=e}Yi(t,i,e){if(t.It=!1,this.Jt.N().mode===2)return;const s=this.Jt.N().horzLine;if(!s.labelVisible)return;const r=this.Ki.Lt();if(!this.Jt.It()||this.Ki.Gi()||r===null)return;const h=this.Ki.Xi().Z(s.labelBackgroundColor);e.G=h.G,t.R=h.X;const o=2/12*this.Ki.k();e.Ti=o,e.Ri=o;const l=this.Zi(this.Ki);e.Ei=l.Ei,t.ri=this.Ki.Ji(l.Mt,r),t.It=!0}}const gh=/[1-9]/g;class Mn{constructor(){this.qt=null}ht(t){this.qt=t}st(t,i){if(this.qt===null||this.qt.It===!1||this.qt.ri.length===0)return;const e=t.useMediaCoordinateSpace((({context:d})=>(d.font=i.P,Math.round(i.Qi.Ii(d,M(this.qt).ri,gh)))));if(e<=0)return;const s=i.tn,r=e+2*s,h=r/2,o=this.qt.nn;let l=this.qt.Ei,a=Math.floor(l-h)+.5;a<0?(l+=Math.abs(0-a),a=Math.floor(l-h)+.5):a+r>o&&(l-=Math.abs(o-(a+r)),a=Math.floor(l-h)+.5);const c=a+r,u=Math.ceil(0+i.S+i.C+i.A+i.k+i.I);t.useBitmapCoordinateSpace((({context:d,horizontalPixelRatio:m,verticalPixelRatio:p})=>{const b=M(this.qt);d.fillStyle=b.G;const w=Math.round(a*m),x=Math.round(0*p),E=Math.round(c*m),k=Math.round(u*p),S=Math.round(2*m);if(d.beginPath(),d.moveTo(w,x),d.lineTo(w,k-S),d.arcTo(w,k,w+S,k,S),d.lineTo(E-S,k),d.arcTo(E,k,E,k-S,S),d.lineTo(E,x),d.fill(),b.pi){const I=Math.round(b.Ei*m),z=x,P=Math.round((z+i.C)*p);d.fillStyle=b.R;const A=Math.max(1,Math.floor(m)),F=Math.floor(.5*m);d.fillRect(I-F,z,A,P-z)}})),t.useMediaCoordinateSpace((({context:d})=>{const m=M(this.qt),p=0+i.S+i.C+i.A+i.k/2;d.font=i.P,d.textAlign="left",d.textBaseline="middle",d.fillStyle=m.R;const b=i.Qi.Di(d,"Apr0");d.translate(a+s,p+b),d.fillText(m.ri,0,0)}))}}class vh{constructor(t,i,e){this.xt=!0,this.Xt=new Mn,this.Gt={It:!1,G:"#4c525e",R:"white",ri:"",nn:0,Ei:NaN,pi:!0},this.Ct=t,this.sn=i,this.Zi=e}kt(){this.xt=!0}Tt(){return this.xt&&(this.Rt(),this.xt=!1),this.Xt.ht(this.Gt),this.Xt}Rt(){const t=this.Gt;if(t.It=!1,this.Ct.N().mode===2)return;const i=this.Ct.N().vertLine;if(!i.labelVisible)return;const e=this.sn.Et();if(e.Gi())return;t.nn=e.nn();const s=this.Zi();if(s===null)return;t.Ei=s.Ei;const r=e.en(this.Ct.Bt());t.ri=e.rn(M(r)),t.It=!0;const h=this.sn.Xi().Z(i.labelBackgroundColor);t.G=h.G,t.R=h.X,t.pi=e.N().ticksVisible}}class xn{constructor(){this.hn=null,this.an=0}ln(){return this.an}_n(t){this.an=t}Ft(){return this.hn}un(t){this.hn=t}cn(t){return[]}dn(){return[]}It(){return!0}}var ls;(function(n){n[n.Normal=0]="Normal",n[n.Magnet=1]="Magnet",n[n.Hidden=2]="Hidden",n[n.MagnetOHLC=3]="MagnetOHLC"})(ls||(ls={}));class bh extends xn{constructor(t,i){super(),this.yt=null,this.fn=NaN,this.pn=0,this.vn=!1,this.mn=new Map,this.wn=!1,this.Mn=new WeakMap,this.gn=new WeakMap,this.bn=NaN,this.Sn=NaN,this.xn=NaN,this.Cn=NaN,this.sn=t,this.yn=i,this.kn=((s,r)=>h=>{const o=r(),l=s();if(h===M(this.yt).Pn())return{Mt:l,Ei:o};{const a=M(h.Lt());return{Mt:h.Tn(o,a),Ei:o}}})((()=>this.fn),(()=>this.Sn));const e=((s,r)=>()=>{const h=this.sn.Et().Rn(s()),o=r();return h&&Number.isFinite(o)?{wt:h,Ei:o}:null})((()=>this.pn),(()=>this.ni()));this.Dn=new vh(this,t,e)}N(){return this.yn}In(t,i){this.xn=t,this.Cn=i}Vn(){this.xn=NaN,this.Cn=NaN}Bn(){return this.xn}En(){return this.Cn}An(t,i,e){this.wn||(this.wn=!0),this.vn=!0,this.Ln(t,i,e)}Bt(){return this.pn}ni(){return this.bn}si(){return this.Sn}It(){return this.vn}zn(){this.vn=!1,this.On(),this.fn=NaN,this.bn=NaN,this.Sn=NaN,this.yt=null,this.Vn(),this.Nn()}Fn(t){if(!this.yn.doNotSnapToHiddenSeriesIndices)return t;const i=this.sn,e=i.Et();let s=null,r=null;for(const a of i.Wn()){const c=a.Un().Hn(t,-1);if(c){if(c.$n===t)return t;(s===null||c.$n>s)&&(s=c.$n)}const u=a.Un().Hn(t,1);if(u){if(u.$n===t)return t;(r===null||u.$n<r)&&(r=u.$n)}}const h=[s,r].filter(ss);if(h.length===0)return t;const o=e.jt(t),l=h.map((a=>Math.abs(o-e.jt(a))));return h[l.indexOf(Math.min(...l))]}jn(t){let i=this.Mn.get(t);i||(i=new mh(this,t),this.Mn.set(t,i));let e=this.gn.get(t);return e||(e=new dh(this.sn,this,t),this.gn.set(t,e)),[i,e]}ti(t){return t===this.yt&&this.yn.horzLine.visible}ii(){return this.yn.vertLine.visible}qn(t,i){this.vn&&this.yt===t||this.mn.clear();const e=[];return this.yt===t&&e.push(this.Yn(this.mn,i,this.kn)),e}dn(){return this.vn?[this.Dn]:[]}Kn(){return this.yt}Nn(){this.sn.Zn().forEach((t=>{this.Mn.get(t)?.kt(),this.gn.get(t)?.kt()}
1)),this.mn.forEach((t=>t.kt())),this.Dn.kt()}Gn(t){return t&&!t.Pn().Gi()?t.Pn():null}Ln(t,i,e){this.Xn(t,i,e)&&this.Nn()}Xn(t,i,e){const s=this.bn,r=this.Sn,h=this.fn,o=this.pn,l=this.yt,a=this.Gn(e);this.pn=t,this.bn=isNaN(t)?NaN:this.sn.Et().jt(t),this.yt=e;const c=a!==null?a.Lt():null;return a!==null&&c!==null?(this.fn=i,this.Sn=a.Nt(i,c)):(this.fn=NaN,this.Sn=NaN),s!==this.bn||r!==this.Sn||o!==this.pn||h!==this.fn||l!==this.yt}On(){const t=this.sn.Jn().map((e=>e.Un().Qn())).filter(ss),i=t.length===0?null:Math.max(...t);this.pn=i!==null?i:NaN}Yn(t,i,e){let s=t.get(i);return s===void 0&&(s=new ph(this,i,e),t.set(i,s)),s}}function Li(n){return n==="left"||n==="right"}class K{constructor(t){this.ts=new Map,this.ns=[],this.ss=t}es(t,i){const e=(function(s,r){return s===void 0?r:{rs:Math.max(s.rs,r.rs),hs:s.hs||r.hs}})(this.ts.get(t),i);this.ts.set(t,e)}ls(){return this.ss}_s(t){const i=this.ts.get(t);return i===void 0?{rs:this.ss}:{rs:Math.max(this.ss,i.rs),hs:i.hs}}us(){this.cs(),this.ns=[{ds:0}]}fs(t){this.cs(),this.ns=[{ds:1,Wt:t}]}ps(t){this.vs(),this.ns.push({ds:5,Wt:t})}cs(){this.vs(),this.ns.push({ds:6})}ws(){this.cs(),this.ns=[{ds:4}]}Ms(t){this.cs(),this.ns.push({ds:2,Wt:t})}gs(t){this.cs(),this.ns.push({ds:3,Wt:t})}bs(){return this.ns}Ss(t){for(const i of t.ns)this.xs(i);this.ss=Math.max(this.ss,t.ss),t.ts.forEach(((i,e)=>{this.es(e,i)}))}static Cs(){return new K(2)}static ys(){return new K(3)}xs(t){switch(t.ds){case 0:this.us();break;case 1:this.fs(t.Wt);break;case 2:this.Ms(t.Wt);break;case 3:this.gs(t.Wt);break;case 4:this.ws();break;case 5:this.ps(t.Wt);break;case 6:this.vs()}}vs(){const t=this.ns.findIndex((i=>i.ds===5));t!==-1&&this.ns.splice(t,1)}}class Sn{formatTickmarks(t){return t.map((i=>this.format(i)))}}const as=".";function at(n,t){if(!Ot(n))return"n/a";if(!ti(t))throw new TypeError("invalid length");if(t<0||t>16)throw new TypeError("invalid length");return t===0?n.toString():("0000000000000000"+n.toString()).slice(-t)}class Ni extends Sn{constructor(t,i){if(super(),i||(i=1),Ot(t)&&ti(t)||(t=100),t<0)throw new TypeError("invalid base");this.Ki=t,this.ks=i,this.Ps()}format(t){const i=t<0?"−":"";return t=Math.abs(t),i+this.Ts(t)}Ps(){if(this.Rs=0,this.Ki>0&&this.ks>0){let t=this.Ki;for(;t>1;)t/=10,this.Rs++}}Ts(t){const i=this.Ki/this.ks;let e=Math.floor(t),s="";const r=this.Rs!==void 0?this.Rs:NaN;if(i>1){let h=+(Math.round(t*i)-e*i).toFixed(this.Rs);h>=i&&(h-=i,e+=1),s=as+at(+h.toFixed(this.Rs)*this.ks,r)}else e=Math.round(e*i)/i,r>0&&(s=as+at(0,r));return e.toFixed(0)+s}}class _n extends Ni{constructor(t=100){super(t)}format(t){return`${super.format(t)}%`}}class wh extends Sn{constructor(t){super(),this.Ds=t}format(t){let i="";return t<0&&(i="-",t=-t),t<995?i+this.Is(t):t<999995?i+this.Is(t/1e3)+"K":t<999999995?(t=1e3*Math.round(t/1e3),i+this.Is(t/1e6)+"M"):(t=1e6*Math.round(t/1e6),i+this.Is(t/1e9)+"B")}Is(t){let i;const e=Math.pow(10,this.Ds);return i=(t=Math.round(t*e)/e)>=1e-15&&t<1?t.toFixed(this.Ds).replace(/\.?0+$/,""):String(t),i.replace(/(\.[1-9]*)0+$/,((s,r)=>r))}}const yh=/[2-9]/g;class xi{constructor(t=50){this.Vs=0,this.Bs=1,this.Es=1,this.As={},this.Ls=new Map,this.zs=t}Os(){this.Vs=0,this.Ls.clear(),this.Bs=1,this.Es=1,this.As={}}Ii(t,i,e){return this.Ns(t,i,e).width}Di(t,i,e){const s=this.Ns(t,i,e);return((s.actualBoundingBoxAscent||0)-(s.actualBoundingBoxDescent||0))/2}Ns(t,i,e){const s=e||yh,r=String(i).replace(s,"0");if(this.Ls.has(r))return J(this.Ls.get(r)).Fs;if(this.Vs===this.zs){const o=this.As[this.Es];delete this.As[this.Es],this.Ls.delete(o),this.Es++,this.Vs--}t.save(),t.textBaseline="middle";const h=t.measureText(r);return t.restore(),h.width===0&&i.length||(this.Ls.set(r,{Fs:h,Ws:this.Bs}),this.As[this.Bs]=r,this.Vs++,this.Bs++),h}}class Mh{constructor(t){this.Hs=null,this.M=null,this.Us="right",this.$s=t}js(t,i,e){this.Hs=t,this.M=i,this.Us=e}st(t){this.M!==null&&this.Hs!==null&&this.Hs.st(t,this.M,this.$s,this.Us)}}class Cn{constructor(t,i,e){this.qs=t,this.$s=new xi(50),this.Ys=i,this.O=e,this.F=-1,this.Xt=new Mh(this.$s)}Tt(){const t=this.O.Ks(this.Ys);if(t===null)return null;const i=t.Zs(this.Ys)?t.Gs():this.Ys.Ft();if(i===null)return null;const e=t.Xs(i);if(e==="overlay")return null;const s=this.O.Js();return s.k!==this.F&&(this.F=s.k,this.$s.Os()),this.Xt.js(this.qs.qi(),s,e),this.Xt}}class xh extends kt{constructor(){super(...arguments),this.qt=null}ht(t){this.qt=t}Qs(t,i){if(!this.qt?.It)return null;const{ut:e,ct:s,te:r}=this.qt;return i>=e-s-7&&i<=e+s+7?{ie:this.qt,ne:Math.abs(i-e),se:2,ee:"price-line",te:r}:null}et({context:t,bitmapSize:i,horizontalPixelRatio:e,verticalPixelRatio:s}){if(this.qt===null||this.qt.It===!1)return;const r=Math.round(this.qt.ut*s);r<0||r>i.height||(t.lineCap="butt",t.strokeStyle=this.qt.R,t.lineWidth=Math.floor(this.qt.ct*e),bt(t,this.qt.Zt),vn(t,r,0,i.width))}}class Se{constructor(t){this.re={ut:0,R:"rgba(0, 0, 0, 0)",ct:1,Zt:0,It:!1},this.he=new xh,this.xt=!0,this.ae=t,this.le=t.Qt(),this.he.ht(this.re)}kt(){this.xt=!0}Tt(){return this.ae.It()?(this.xt&&(this.oe(),this.xt=!1),this.he):null}}class Sh extends Se{constructor(t){super(t)}oe(){this.re.It=!1;const t=this.ae.Ft(),i=t._e()._e;if(i!==2&&i!==3)return;const e=this.ae.N();if(!e.baseLineVisible||!this.ae.It())return;const s=this.ae.Lt();s!==null&&(this.re.It=!0,this.re.ut=t.Nt(s.Wt,s.Wt),this.re.R=e.baseLineColor,this.re.ct=e.baseLineWidth,this.re.Zt=e.baseLineStyle)}
1}class _h extends kt{constructor(){super(...arguments),this.qt=null}ht(t){this.qt=t}ue(){return this.qt}et({context:t,horizontalPixelRatio:i,verticalPixelRatio:e}){const s=this.qt;if(s===null)return;const r=Math.max(1,Math.floor(i)),h=r%2/2,o=Math.round(s.ce.x*i)+h,l=s.ce.y*e;t.fillStyle=s.de,t.beginPath();const a=Math.max(2,1.5*s.fe)*i;t.arc(o,l,a,0,2*Math.PI,!1),t.fill(),t.fillStyle=s.pe,t.beginPath(),t.arc(o,l,s.ft*i,0,2*Math.PI,!1),t.fill(),t.lineWidth=r,t.strokeStyle=s.ve,t.beginPath(),t.arc(o,l,s.ft*i+r/2,0,2*Math.PI,!1),t.stroke()}}const Ch=[{me:0,we:.25,Me:4,ge:10,be:.25,Se:0,xe:.4,Ce:.8},{me:.25,we:.525,Me:10,ge:14,be:0,Se:0,xe:.8,Ce:0},{me:.525,we:1,Me:14,ge:14,be:0,Se:0,xe:0,Ce:0}];class Eh{constructor(t){this.Xt=new _h,this.xt=!0,this.ye=!0,this.ke=performance.now(),this.Pe=this.ke-1,this.Te=t}Re(){this.Pe=this.ke-1,this.kt()}De(){if(this.kt(),this.Te.N().lastPriceAnimation===2){const t=performance.now(),i=this.Pe-t;if(i>0)return void(i<650&&(this.Pe+=2600));this.ke=t,this.Pe=t+2600}}kt(){this.xt=!0}Ie(){this.ye=!0}It(){return this.Te.N().lastPriceAnimation!==0}Ve(){switch(this.Te.N().lastPriceAnimation){case 0:return!1;case 1:return!0;case 2:return performance.now()<=this.Pe}}Tt(){return this.xt?(this.Rt(),this.xt=!1,this.ye=!1):this.ye&&(this.Be(),this.ye=!1),this.Xt}Rt(){this.Xt.ht(null);const t=this.Te.Qt().Et(),i=t.Ee(),e=this.Te.Lt();if(i===null||e===null)return;const s=this.Te.Ae(!0);if(s.Le||!i.ze(s.$n))return;const r={x:t.jt(s.$n),y:this.Te.Ft().Nt(s.Mt,e.Wt)},h=s.R,o=this.Te.N().lineWidth,l=this.Oe(this.Ne(),h);this.Xt.ht({de:h,fe:o,pe:l.pe,ve:l.ve,ft:l.ft,ce:r})}Be(){const t=this.Xt.ue();if(t!==null){const i=this.Oe(this.Ne(),t.de);t.pe=i.pe,t.ve=i.ve,t.ft=i.ft}}Ne(){return this.Ve()?performance.now()-this.ke:2599}Fe(t,i,e,s){const r=e+(s-e)*i;return this.Te.Qt().Xi().Y(t,r)}Oe(t,i){const e=t%2600/2600;let s;for(const a of Ch)if(e>=a.me&&e<=a.we){s=a;break}U(s!==void 0,"Last price animation internal logic error");const r=(e-s.me)/(s.we-s.me);return{pe:this.Fe(i,r,s.be,s.Se),ve:this.Fe(i,r,s.xe,s.Ce),ft:(h=r,o=s.Me,l=s.ge,o+(l-o)*h)};var h,o,l}}class kh extends Se{constructor(t){super(t)}oe(){const t=this.re;t.It=!1;const i=this.ae.N();if(!i.priceLineVisible||!this.ae.It())return;const e=this.ae.Ae(i.priceLineSource===0);e.Le||(t.It=!0,t.ut=e.Ei,t.R=this.ae.We(e.R),t.ct=i.priceLineWidth,t.Zt=i.priceLineStyle)}}class zh extends Ii{constructor(t){super(),this.Jt=t}Yi(t,i,e){t.It=!1,i.It=!1;const s=this.Jt;if(!s.It())return;const r=s.N(),h=r.lastValueVisible,o=s.He()!=="",l=r.seriesLastValueMode===0,a=s.Ae(!1);if(a.Le)return;h&&(t.ri=this.Ue(a,h,l),t.It=t.ri.length!==0),(o||l)&&(i.ri=this.$e(a,h,o,l),i.It=i.ri.length>0);const c=s.We(a.R),u=this.Jt.Qt().Xi().Z(c);e.G=u.G,e.Ei=a.Ei,i.Ht=s.Qt().Ut(a.Ei/s.Ft().$t()),t.Ht=c,t.R=u.X,i.R=u.X}$e(t,i,e,s){let r="";const h=this.Jt.He();return e&&h.length!==0&&(r+=`${h} `),i&&s&&(r+=this.Jt.Ft().je()?t.qe:t.Ye),r.trim()}Ue(t,i,e){return i?e?this.Jt.Ft().je()?t.Ye:t.qe:t.ri:""}}function cs(n,t,i,e){const s=Number.isFinite(t),r=Number.isFinite(i);return s&&r?n(t,i):s||r?s?t:i:e}class G{constructor(t,i){this.Ke=t,this.Ze=i}Ge(t){return t!==null&&this.Ke===t.Ke&&this.Ze===t.Ze}Xe(){return new G(this.Ke,this.Ze)}Je(){return this.Ke}Qe(){return this.Ze}tr(){return this.Ze-this.Ke}Gi(){return this.Ze===this.Ke||Number.isNaN(this.Ze)||Number.isNaN(this.Ke)}Ss(t){return t===null?this:new G(cs(Math.min,this.Je(),t.Je(),-1/0),cs(Math.max,this.Qe(),t.Qe(),1/0))}ir(t){if(!Ot(t)||this.Ze-this.Ke===0)return;const i=.5*(this.Ze+this.Ke);let e=this.Ze-i,s=this.Ke-i;e*=t,s*=t,this.Ze=i+e,this.Ke=i+s}nr(t){Ot(t)&&(this.Ze+=t,this.Ke+=t)}sr(){return{minValue:this.Ke,maxValue:this.Ze}}static er(t){return t===null?null:new G(t.minValue,t.maxValue)}}class Si{constructor(t,i){this.rr=t,this.hr=i||null}ar(){return this.rr}lr(){return this.hr}sr(){return{priceRange:this.rr===null?null:this.rr.sr(),margins:this.hr||void 0}}static er(t){return t===null?null:new Si(G.er(t.priceRange),t.margins)}}const Ih=[2,4,8,16,32,64,128,256,512],Lh="Custom series with conflation reducer must have a priceValueBuilder method";class Nh extends Se{constructor(t,i){super(t),this._r=i}oe(){const t=this.re;t.It=!1;const i=this._r.N();if(!this.ae.It()||!i.lineVisible)return;const e=this._r.ur();e!==null&&(t.It=!0,t.ut=e,t.R=i.color,t.ct=i.lineWidth,t.Zt=i.lineStyle,t.te=this._r.N().id)}}class Ph extends Ii{constructor(t,i){super(),this.Te=t,this._r=i}Yi(t,i,e){t.It=!1,i.It=!1;const s=this._r.N(),r=s.axisLabelVisible,h=s.title!=="",o=this.Te;if(!r||!o.It())return;const l=this._r.ur();if(l===null)return;h&&(i.ri=s.title,i.It=!0),i.Ht=o.Qt().Ut(l/o.Ft().$t()),t.ri=this.cr(s.price),t.It=!0;const a=this.Te.Qt().Xi().Z(s.axisLabelColor||s.color);e.G=a.G;const c=s.axisLabelTextColor||a.X;t.R=c,i.R=c,e.Ei=l}cr(t){const i=this.Te.Lt();return i===null?"":this.Te.Ft().Ji(t,i.Wt)}}class Th{constructor(t,i){this.Te=t,this.yn=i,this.dr=new Nh(t,this),this.qs=new Ph(t,this),this.pr=new Cn(this.qs,t,t.Qt())}vr(t){it(this.yn,t),this.kt(),this.Te.Qt().mr()}N(){return this.yn}wr(){return this.dr}Mr(){return this.pr}gr(){return this.qs}kt(){this.dr.kt(),this.qs.kt()}ur(){const t=this.Te,i=t.Ft();if(t.Qt().Et().Gi()||i.Gi())return null;const e=t.Lt();return e===null?null:i.Nt(this.yn.price,e.Wt)}}class Rh{constructor(){this.br=new WeakMap}Sr(t,i,e){const s=1/i*e;if(t>=s)return 1;const r=s/t,h=Math.pow(2,Math.floor(Math.log2(r)));return Math.min(h,512)}Cr(t,i,e,s=!1,r){if(t.length===0||i<=1)return t;const h=this.yr(i);if(h<=1)return t;const o=this.kr(t);let l=o.Pr.get(h);return l!==void 0||(l=this.Tr(t,h,e,s,r,o.Pr),o.Pr.set(h,l)),l}Rr(t,i,e,s,r=!1,h){if(e<1||t.length===0)return t;const o=this.kr(t),l=o.Pr.get(e);if(!l)return this.Cr(t,e,s,r,h);const a=this.Dr(t,i,e,l,r,s,h);return o.Pr.set(e,a),a}yr(t){if(t<=2)return 2;for(const i of Ih)if(t<=i)return i;return 512}Ir(t){if(t.length===0)return 0;const i=t[0],e=t[t.length-1];
1return 31*t.length+17*i.$n+13*e.$n}Tr(t,i,e,s=!1,r,h=new Map){if(i===2)return this.Vr(t,2,e,s,r);const o=i/2;let l=h.get(o);return l||(l=this.Tr(t,o,e,s,r,h),h.set(o,l)),this.Br(l,e,s,r)}Vr(t,i,e,s=!1,r){const h=this.Er(t,i,e,s,r);return this.Ar(h,s)}Br(t,i,e=!1,s){const r=this.Er(t,2,i,e,s);return this.Ar(r,e)}Er(t,i,e,s=!1,r){const h=[];for(let o=0;o<t.length;o+=i)if(t.length-o>=i){const l=this.Lr(t[o],t[o+1],e,s,r);l.zr=!1,h.push(l)}else if(h.length===0)h.push(this.Or(t[o],!0));else{const l=h[h.length-1];h[h.length-1]=this.Nr(l,t[o],e,s,r)}return h}Fr(t,i){return(t??1)+(i??1)}Lr(t,i,e,s=!1,r){if(!s||!e||!r){const a=t.Wt[1]>i.Wt[1]?t.Wt[1]:i.Wt[1],c=t.Wt[2]<i.Wt[2]?t.Wt[2]:i.Wt[2];return{Wr:t.$n,Hr:i.$n,Ur:t.wt,$r:i.wt,jr:t.Wt[0],qr:a,Yr:c,Kr:i.Wt[3],Zr:this.Fr(t.Zr,i.Zr),Gr:void 0,zr:!1}}const h=e(this.Xr(t,r),this.Xr(i,r)),o=r(h),l=o.length?o[o.length-1]:0;return{Wr:t.$n,Hr:i.$n,Ur:t.wt,$r:i.wt,jr:t.Wt[0],qr:Math.max(t.Wt[1],l),Yr:Math.min(t.Wt[2],l),Kr:l,Zr:this.Fr(t.Zr,i.Zr),Gr:h,zr:!1}}Nr(t,i,e,s=!1,r){if(!s||!e||!r)return{Wr:t.Wr,Hr:i.$n,Ur:t.Ur,$r:i.wt,jr:t.jr,qr:t.qr>i.Wt[1]?t.qr:i.Wt[1],Yr:t.Yr<i.Wt[2]?t.Yr:i.Wt[2],Kr:i.Wt[3],Zr:t.Zr+(i.Zr??1),Gr:t.Gr,zr:!1};const h=t.Gr,o=this.Xr(i,r),l=h?{data:h,index:t.Wr,originalTime:t.Ur,time:t.Ur,priceValues:r(h)}:null,a=l?e(l,o):o.data,c=l?r(a):o.priceValues,u=c.length?c[c.length-1]:0;return{Wr:t.Wr,Hr:i.$n,Ur:t.Ur,$r:i.wt,jr:t.jr,qr:Math.max(t.qr,u),Yr:Math.min(t.Yr,u),Kr:u,Zr:t.Zr+(i.Zr??1),Gr:a,zr:!1}}Jr(t,i,e,s,r,h,o=!1,l){const a=i===s?r:t[i];if(e-i==1)return this.Or(a,!0);const c=i+1===s?r:t[i+1];let u=this.Lr(a,c,h,o,l);for(let d=i+2;d<e;d++){const m=d===s?r:t[d];u=this.Nr(u,m,h,o,l)}return u}Xr(t,i){const e=t.ue??{};return{data:t.ue,index:t.$n,originalTime:t.Qr,time:t.wt,priceValues:i(e)}}th(t,i=!1){const e=i===!0,s=!!t.Gr;return{$n:t.Wr,wt:t.Ur,Qr:t.Ur,Wt:[e?t.Kr:t.jr,t.qr,t.Yr,t.Kr],Zr:t.Zr,ue:e?s?t.Gr:{wt:t.Ur}:void 0}}Ar(t,i=!1){return t.map((e=>this.th(e,i)))}Dr(t,i,e,s,r=!1,h,o){if(s.length===0)return s;const l=t.length-1,a=Math.floor(l/e)*e;if(Math.min(a+e,t.length)-a<e&&t.length>e){const c=t.slice();return c[c.length-1]=i,this.Cr(c,e,h,r,o)}if(Math.floor((l-1)/e)===Math.floor(l/e)||s.length===1){const c=Math.min(a+e,t.length),u=c-a;if(u<=0)return s;const d=u===1?this.Or(a===l?i:t[a],!0):this.Jr(t,a,c,l,i,h,r,o);return s[s.length-1]=this.th(d,r),s}{const c=t.slice();return c[c.length-1]=i,this.Cr(c,e,h,r,o)}}Or(t,i=!1){return{Wr:t.$n,Hr:t.$n,Ur:t.wt,$r:t.wt,jr:t.Wt[0],qr:t.Wt[1],Yr:t.Wt[2],Kr:t.Wt[3],Zr:t.Zr??1,Gr:t.ue,zr:i}}kr(t){const i=this.ih(t),e=this.Ir(t);return i.nh!==e&&(i.Pr.clear(),i.nh=e),i}ih(t){let i=this.br.get(t);return i===void 0&&(i={nh:this.Ir(t),Pr:new Map},this.br.set(t,i)),i}}class Ah extends xn{constructor(t){super(),this.sn=t}Qt(){return this.sn}}const Fh={Bar:(n,t,i,e)=>{const s=t.upColor,r=t.downColor,h=M(n(i,e)),o=vt(h.Wt[0])<=vt(h.Wt[3]);return{sh:h.R??(o?s:r)}},Candlestick:(n,t,i,e)=>{const s=t.upColor,r=t.downColor,h=t.borderUpColor,o=t.borderDownColor,l=t.wickUpColor,a=t.wickDownColor,c=M(n(i,e)),u=vt(c.Wt[0])<=vt(c.Wt[3]);return{sh:c.R??(u?s:r),eh:c.Ht??(u?h:o),rh:c.hh??(u?l:a)}},Custom:(n,t,i,e)=>({sh:M(n(i,e)).R??t.color}),Area:(n,t,i,e)=>{const s=M(n(i,e));return{sh:s.vt??t.lineColor,vt:s.vt??t.lineColor,ah:s.ah??t.topColor,oh:s.oh??t.bottomColor}},Baseline:(n,t,i,e)=>{const s=M(n(i,e));return{sh:s.Wt[3]>=t.baseValue.price?t.topLineColor:t.bottomLineColor,_h:s._h??t.topLineColor,uh:s.uh??t.bottomLineColor,dh:s.dh??t.topFillColor1,fh:s.fh??t.topFillColor2,ph:s.ph??t.bottomFillColor1,mh:s.mh??t.bottomFillColor2}},Line:(n,t,i,e)=>{const s=M(n(i,e));return{sh:s.R??t.color,vt:s.R??t.color}},Histogram:(n,t,i,e)=>({sh:M(n(i,e)).R??t.color})};class Oh{constructor(t){this.wh=(i,e)=>e!==void 0?e.Wt:this.Te.Un().Mh(i),this.Te=t,this.gh=Fh[t.bh()]}Sh(t,i){return this.gh(this.wh,this.Te.N(),t,i)}}function En(n,t,i,e,s=0,r=t.length){let h=r-s;for(;0<h;){const o=h>>1,l=s+o;e(t[l],i)===n?(s=l+1,h-=o+1):h=o}return s}const _t=En.bind(null,!0),_e=En.bind(null,!1);var us;(function(n){n[n.NearestLeft=-1]="NearestLeft",n[n.None=0]="None",n[n.NearestRight=1]="NearestRight"})(us||(us={}));const gt=30;class qh{constructor(){this.xh=[],this.Ch=new Map,this.yh=new Map,this.kh=[]}Ph(){return this.Th()>0?this.xh[this.xh.length-1]:null}Rh(){return this.Th()>0?this.Dh(0):null}Qn(){return this.Th()>0?this.Dh(this.xh.length-1):null}Th(){return this.xh.length}Gi(){return this.Th()===0}ze(t){return this.Ih(t,0)!==null}Mh(t){return this.Hn(t)}Hn(t,i=0){const e=this.Ih(t,i);return e===null?null:{...this.Vh(e),$n:this.Dh(e)}}Bh(){return this.xh}Eh(t,i,e){if(this.Gi())return null;let s=null;for(const r of e)s=hi(s,this.Ah(t,i,r));return s}ht(t){this.yh.clear(),this.Ch.clear(),this.xh=t,this.kh=t.map((i=>i.$n))}Lh(){return this.kh}Dh(t){return this.xh[t].$n}Vh(t){return this.xh[t]}Ih(t,i){const e=this.zh(t);if(e===null&&i!==0)switch(i){case-1:return this.Oh(t);case 1:return this.Nh(t);default:throw new TypeError("Unknown search mode")}return e}Oh(t){let i=this.Fh(t);return i>0&&(i-=1),i!==this.xh.length&&this.Dh(i)<t?i:null}Nh(t){const i=this.Wh(t);return i!==this.xh.length&&t<this.Dh(i)?i:null}zh(t){const i=this.Fh(t);return i===this.xh.length||t<this.xh[i].$n?null:i}Fh(t){return _t(this.xh,t,((i,e)=>i.$n<e))}Wh(t){return _e(this.xh,t,((i,e)=>i.$n>e))}Hh(t,i,e){let s=null;for(let r=t;r<i;r++){const h=this.xh[r].Wt[e];Number.isNaN(h)||(s===null?s={Uh:h,$h:h}:(h<s.Uh&&(s.Uh=h),h>s.$h&&(s.$h=h)))}return s}Ah(t,i,e){if(this.Gi())return null;let s=null;const r=M(this.Rh()),h=M(this.Qn()),o=Math.max(t,r),l=Math.min(i,h),a=Math.ceil(o/gt)*gt,c=Math.max(a,Math.floor(l/gt)*gt);{const d=this.Fh(o),m=this.Wh(Math.min(l,a,i));s=hi(s,this.Hh(d,m,e))}let u=this.Ch.get(e);u===void 0&&(u=new Map,this.Ch.set(e,u));for(let d=Math.max(a+1,o);d<c;d+=gt){const m=Math.floor(d/gt);let p=u.get(m);
1if(p===void 0){const b=this.Fh(m*gt),w=this.Wh((m+1)*gt-1);p=this.Hh(b,w,e),u.set(m,p)}s=hi(s,p)}{const d=this.Fh(c),m=this.Wh(l);s=hi(s,this.Hh(d,m,e))}return s}}function hi(n,t){return n===null?t:t===null?n:{Uh:Math.min(n.Uh,t.Uh),$h:Math.max(n.$h,t.$h)}}function Bi(){return new qh}const _i={setLineStyle:bt};class Dh{constructor(t){this.jh=t}st(t,i,e){this.jh.draw(t,_i)}qh(t,i,e){this.jh.drawBackground?.(t,_i)}}class Qh{constructor(t){this.Ls=null,this.Yh=t}Tt(){const t=this.Yh.renderer();if(t===null)return null;if(this.Ls?.Kh===t)return this.Ls.Zh;const i=new Dh(t);return this.Ls={Kh:t,Zh:i},i}Gh(){return this.Yh.zOrder?.()??"normal"}}class kn{constructor(t){this.Xh=null,this.Jh=t}Qh(){return this.Jh}Nn(){this.Jh.updateAllViews?.()}jn(){const t=this.Jh.paneViews?.()??[];if(this.Xh?.Kh===t)return this.Xh.Zh;const i=t.map((e=>new Qh(e)));return this.Xh={Kh:t,Zh:i},i}Qs(t,i){return this.Jh.hitTest?.(t,i)??null}}let Bh=class extends kn{cn(){return[]}};class $h{constructor(t){this.jh=t}st(t,i,e){this.jh.draw(t,_i)}qh(t,i,e){this.jh.drawBackground?.(t,_i)}}class ds{constructor(t){this.Ls=null,this.Yh=t}Tt(){const t=this.Yh.renderer();if(t===null)return null;if(this.Ls?.Kh===t)return this.Ls.Zh;const i=new $h(t);return this.Ls={Kh:t,Zh:i},i}Gh(){return this.Yh.zOrder?.()??"normal"}}function zn(n){return{ri:n.text(),Ei:n.coordinate(),Vi:n.fixedCoordinate?.(),R:n.textColor(),G:n.backColor(),It:n.visible?.()??!0,pi:n.tickVisible?.()??!0}}class Wh{constructor(t,i){this.Xt=new Mn,this.ta=t,this.ia=i}Tt(){return this.Xt.ht({nn:this.ia.nn(),...zn(this.ta)}),this.Xt}}class Vh extends Ii{constructor(t,i){super(),this.ta=t,this.Ki=i}Yi(t,i,e){const s=zn(this.ta);e.G=s.G,t.R=s.R;const r=2/12*this.Ki.k();e.Ti=r,e.Ri=r,e.Ei=s.Ei,e.Vi=s.Vi,t.ri=s.ri,t.It=s.It,t.pi=s.pi}}class Hh extends kn{constructor(t,i){super(t),this.na=null,this.sa=null,this.ea=null,this.ra=null,this.Te=i}dn(){const t=this.Jh.timeAxisViews?.()??[];if(this.na?.Kh===t)return this.na.Zh;const i=this.Te.Qt().Et(),e=t.map((s=>new Wh(s,i)));return this.na={Kh:t,Zh:e},e}qn(){const t=this.Jh.priceAxisViews?.()??[];if(this.sa?.Kh===t)return this.sa.Zh;const i=this.Te.Ft(),e=t.map((s=>new Vh(s,i)));return this.sa={Kh:t,Zh:e},e}ha(){const t=this.Jh.priceAxisPaneViews?.()??[];if(this.ea?.Kh===t)return this.ea.Zh;const i=t.map((e=>new ds(e)));return this.ea={Kh:t,Zh:i},i}aa(){const t=this.Jh.timeAxisPaneViews?.()??[];if(this.ra?.Kh===t)return this.ra.Zh;const i=t.map((e=>new ds(e)));return this.ra={Kh:t,Zh:i},i}la(t,i){return this.Jh.autoscaleInfo?.(t,i)??null}}function $i(n,t,i,e){n.forEach((s=>{t(s).forEach((r=>{r.Gh()===i&&e.push(r)}))}))}function Wi(n){return n.jn()}function Kh(n){return n.ha()}function Uh(n){return n.aa()}const jh=["Area","Line","Baseline"];class Pi extends Ah{constructor(t,i,e,s,r){super(t),this.qt=Bi(),this.dr=new kh(this),this.oa=[],this._a=new Sh(this),this.ua=null,this.ca=null,this.da=null,this.fa=[],this.pa=new Rh,this.va=new Map,this.ma=null,this.yn=e,this.wa=i;const h=new zh(this);if(this.mn=[h],this.pr=new Cn(h,this,t),jh.includes(this.wa)&&(this.ua=new Eh(this)),this.Ma(),this.Yh=s(this,this.Qt(),r),this.wa==="Custom"){const o=this.Yh;o.ga&&this.ba(o.ga)}}m(){this.da!==null&&clearTimeout(this.da)}We(t){return this.yn.priceLineColor||t}Ae(t){const i={Le:!0},e=this.Ft();if(this.Qt().Et().Gi()||e.Gi()||this.qt.Gi())return i;const s=this.Qt().Et().Ee(),r=this.Lt();if(s===null||r===null)return i;let h,o;if(t){const u=this.qt.Ph();if(u===null)return i;h=u,o=u.$n}else{const u=this.qt.Hn(s.bi(),-1);if(u===null||(h=this.qt.Mh(u.$n),h===null))return i;o=u.$n}const l=h.Wt[3],a=this.Sa().Sh(o,{Wt:h}),c=e.Nt(l,r.Wt);return{Le:!1,Mt:l,ri:e.Ji(l,r.Wt),qe:e.xa(l),Ye:e.Ca(l,r.Wt),R:a.sh,Ei:c,$n:o}}Sa(){return this.ca!==null||(this.ca=new Oh(this)),this.ca}N(){return this.yn}vr(t){const i=this.Qt(),{priceScaleId:e,visible:s,priceFormat:r}=t;e!==void 0&&e!==this.yn.priceScaleId&&i.ya(this,e),s!==void 0&&s!==this.yn.visible&&i.ka();const h=t.conflationThresholdFactor!==void 0;it(this.yn,t),h&&(this.va.clear(),this.Qt().mr()),r!==void 0&&(this.Ma(),i.Pa()),i.Ta(this),i.Ra(),this.Yh.kt("options")}ht(t,i){this.qt.ht(t),this.va.clear();const e=this.Qt().Et().N();e.enableConflation&&e.precomputeConflationOnInit&&this.Da(e.precomputeConflationPriority),this.Yh.kt("data"),this.ua!==null&&(i&&i.Ia?this.ua.De():t.length===0&&this.ua.Re());const s=this.Qt().Ks(this);this.Qt().Va(s),this.Qt().Ta(this),this.Qt().Ra(),this.Qt().mr()}Ba(t){const i=new Th(this,t);return this.oa.push(i),this.Qt().Ta(this),i}Ea(t){const i=this.oa.indexOf(t);i!==-1&&this.oa.splice(i,1),this.Qt().Ta(this)}Aa(){return this.oa}bh(){return this.wa}Lt(){const t=this.La();return t===null?null:{Wt:t.Wt[3],za:t.wt}}La(){const t=this.Qt().Et().Ee();if(t===null)return null;const i=t.Oa();return this.qt.Hn(i,1)}Un(){return this.qt}ba(t){this.ma=t,this.va.clear()}Na(){return!!this.Qt().Et().N().enableConflation&&this.Fa()>1}Rr(t){if(!this.Na())return;const i=this.Fa();if(!this.va.has(i))return;const e=this.wa==="Custom",s=e&&this.ma||void 0,r=e&&this.Yh.Wa?l=>{const a=l,c=this.Yh.Wa(a);return Array.isArray(c)?c:[typeof c=="number"?c:0]}:void 0,h=this.pa.Rr(this.qt.Bh(),t,i,s,e,r),o=Bi();o.ht(h),this.va.set(i,o)}Ha(){const t=this.Qt().Et().N().enableConflation;if(this.wa==="Custom"&&this.ma===null)return this.qt;if(!t)return this.qt;const i=this.Fa(),e=this.va.get(i);return e||(this.Ua(i),this.va.get(i)??this.qt)}$a(t){const i=this.qt.Mh(t);return i===null?null:this.wa==="Bar"||this.wa==="Candlestick"||this.wa==="Custom"?{jr:i.Wt[0],qr:i.Wt[1],Yr:i.Wt[2],Kr:i.Wt[3]}:i.Wt[3]}ja(t){const i=[];$i(this.fa,Wi,"top",i);const e=this.ua;
1return e!==null&&e.It()&&(this.da===null&&e.Ve()&&(this.da=setTimeout((()=>{this.da=null,this.Qt().qa()}),0)),e.Ie(),i.unshift(e)),i}jn(){const t=[];this.Ya()||t.push(this._a),t.push(this.Yh,this.dr);const i=this.oa.map((e=>e.wr()));return t.push(...i),$i(this.fa,Wi,"normal",t),t}Ka(){return this.Za(Wi,"bottom")}Ga(t){return this.Za(Kh,t)}Xa(t){return this.Za(Uh,t)}Ja(t,i){return this.fa.map((e=>e.Qs(t,i))).filter((e=>e!==null))}cn(){return[this.pr,...this.oa.map((t=>t.Mr()))]}qn(t,i){if(i!==this.hn&&!this.Ya())return[];const e=[...this.mn];for(const s of this.oa)e.push(s.gr());return this.fa.forEach((s=>{e.push(...s.qn())})),e}dn(){const t=[];return this.fa.forEach((i=>{t.push(...i.dn())})),t}la(t,i){if(this.yn.autoscaleInfoProvider!==void 0){const e=this.yn.autoscaleInfoProvider((()=>{const s=this.Qa(t,i);return s===null?null:s.sr()}));return Si.er(e)}return this.Qa(t,i)}Kh(){const t=this.yn.priceFormat;return t.base??1/t.minMove}tl(){return this.il}Nn(){this.Yh.kt();for(const t of this.mn)t.kt();for(const t of this.oa)t.kt();this.dr.kt(),this._a.kt(),this.ua?.kt(),this.fa.forEach((t=>t.Nn()))}Ft(){return M(super.Ft())}At(t){if(!((this.wa==="Line"||this.wa==="Area"||this.wa==="Baseline")&&this.yn.crosshairMarkerVisible))return null;const i=this.qt.Mh(t);return i===null?null:{Mt:i.Wt[3],ft:this.nl(),Ht:this.sl(),Ot:this.el(),zt:this.rl(t)}}He(){return this.yn.title}It(){return this.yn.visible}hl(t){this.fa.push(new Hh(t,this))}al(t){this.fa=this.fa.filter((i=>i.Qh()!==t))}ll(){if(this.wa==="Custom")return t=>this.Yh.Wa(t)}ol(){if(this.wa==="Custom")return t=>this.Yh._l(t)}ul(){return this.qt.Lh()}Ya(){return!Li(this.Ft().cl())}Qa(t,i){if(!ti(t)||!ti(i)||this.qt.Gi())return null;const e=this.wa==="Line"||this.wa==="Area"||this.wa==="Baseline"||this.wa==="Histogram"?[3]:[2,1],s=this.qt.Eh(t,i,e);let r=s!==null?new G(s.Uh,s.$h):null,h=null;if(this.bh()==="Histogram"){const o=this.yn.base,l=new G(o,o);r=r!==null?r.Ss(l):l}return this.fa.forEach((o=>{const l=o.la(t,i);if(l?.priceRange){const a=new G(l.priceRange.minValue,l.priceRange.maxValue);r=r!==null?r.Ss(a):a}l?.margins&&(h=l.margins)})),new Si(r,h)}nl(){switch(this.wa){case"Line":case"Area":case"Baseline":return this.yn.crosshairMarkerRadius}return 0}sl(){switch(this.wa){case"Line":case"Area":case"Baseline":{const t=this.yn.crosshairMarkerBorderColor;if(t.length!==0)return t}}return null}el(){switch(this.wa){case"Line":case"Area":case"Baseline":return this.yn.crosshairMarkerBorderWidth}return 0}rl(t){switch(this.wa){case"Line":case"Area":case"Baseline":{const i=this.yn.crosshairMarkerBackgroundColor;if(i.length!==0)return i}}return this.Sa().Sh(t).sh}Ma(){switch(this.yn.priceFormat.type){case"custom":{const t=this.yn.priceFormat.formatter;this.il={format:t,formatTickmarks:this.yn.priceFormat.tickmarksFormatter??(i=>i.map(t))};break}case"volume":this.il=new wh(this.yn.priceFormat.precision);break;case"percent":this.il=new _n(this.yn.priceFormat.precision);break;default:{const t=Math.pow(10,this.yn.priceFormat.precision);this.il=new Ni(t,this.yn.priceFormat.minMove*t)}}this.hn!==null&&this.hn.dl()}Za(t,i){const e=[];return $i(this.fa,t,i,e),e}Fa(){const{fl:t,pl:i,vl:e}=this.ml();return this.pa.Sr(t,i,e)}ml(){const t=this.Qt().Et(),i=t.fl(),e=window.devicePixelRatio||1,s=t.N().conflationThresholdFactor;return{fl:i,pl:e,vl:this.yn.conflationThresholdFactor??s??1}}wl(t){const i=this.qt.Bh();let e;if(this.wa==="Custom"&&this.ma!==null){const r=this.ll();if(!r)throw new Error(Lh);e=this.pa.Cr(i,t,this.ma,!0,(h=>r(h)))}else e=this.pa.Cr(i,t);const s=Bi();return s.ht(e),s}Ua(t){const i=this.wl(t);this.va.set(t,i)}Da(t){if(this.wa==="Custom"&&(this.ma===null||!this.ll()))return;this.va.clear();const i=this.Qt().Et().Ml();for(const e of i){const s=()=>{this.gl(e)},r=typeof window=="object"&&window||typeof self=="object"&&self;r?.Sl?.bl?r.Sl.bl((()=>{s()}),{se:t}):Promise.resolve().then((()=>s()))}}gl(t){if(this.va.has(t)||this.qt.Bh().length===0)return;const i=this.wl(t);this.va.set(t,i)}}const Zh=[3],Gh=[0,1,2,3];class Yh{constructor(t){this.yn=t}xl(t,i,e){let s=t;if(this.yn.mode===0)return s;const r=e.Pn(),h=r.Lt();if(h===null)return s;const o=r.Nt(t,h),l=e.Cl().filter((c=>c instanceof Pi)).reduce(((c,u)=>{if(e.Zs(u)||!u.It())return c;const d=u.Ft(),m=u.Un();if(d.Gi()||!m.ze(i))return c;const p=m.Mh(i);if(p===null)return c;const b=vt(u.Lt()),w=this.yn.mode===3?Gh:Zh;return c.concat(w.map((x=>d.Nt(p.Wt[x],b.Wt))))}),[]);if(l.length===0)return s;l.sort(((c,u)=>Math.abs(c-o)-Math.abs(u-o)));const a=l[0];return s=r.Tn(a,h),s}}
1function At(n,t,i){return Math.min(Math.max(n,t),i)}function oi(n,t,i){return t-n<=i}class Xh extends kt{constructor(){super(...arguments),this.qt=null}ht(t){this.qt=t}et({context:t,bitmapSize:i,horizontalPixelRatio:e,verticalPixelRatio:s}){if(this.qt===null)return;const r=Math.max(1,Math.floor(e));t.lineWidth=r,(function(h,o){h.save(),h.lineWidth%2&&h.translate(.5,.5),o(),h.restore()})(t,(()=>{const h=M(this.qt);if(h.yl){t.strokeStyle=h.kl,bt(t,h.Pl),t.beginPath();for(const o of h.Tl){const l=Math.round(o.Rl*e);t.moveTo(l,-r),t.lineTo(l,i.height+r)}t.stroke()}if(h.Dl){t.strokeStyle=h.Il,bt(t,h.Vl),t.beginPath();for(const o of h.Bl){const l=Math.round(o.Rl*s);t.moveTo(-r,l),t.lineTo(i.width+r,l)}t.stroke()}}))}}class Jh{constructor(t){this.Xt=new Xh,this.xt=!0,this.yt=t}kt(){this.xt=!0}Tt(){if(this.xt){const t=this.yt.Qt().N().grid,i={Dl:t.horzLines.visible,yl:t.vertLines.visible,Il:t.horzLines.color,kl:t.vertLines.color,Vl:t.horzLines.style,Pl:t.vertLines.style,Bl:this.yt.Pn().El(),Tl:(this.yt.Qt().Et().El()||[]).map((e=>({Rl:e.coord})))};this.Xt.ht(i),this.xt=!1}return this.Xt}}class to{constructor(t){this.Yh=new Jh(t)}wr(){return this.Yh}}const Vi={Al:4,Ll:1e-4};function Tt(n,t){const i=100*(n-t)/t;return t<0?-i:i}function io(n,t){const i=Tt(n.Je(),t),e=Tt(n.Qe(),t);return new G(i,e)}function Zt(n,t){const i=100*(n-t)/t+100;return t<0?-i:i}function eo(n,t){const i=Zt(n.Je(),t),e=Zt(n.Qe(),t);return new G(i,e)}function Ci(n,t){const i=Math.abs(n);if(i<1e-15)return 0;const e=Math.log10(i+t.Ll)+t.Al;return n<0?-e:e}function Gt(n,t){const i=Math.abs(n);if(i<1e-15)return 0;const e=Math.pow(10,i-t.Al)-t.Ll;return n<0?-e:e}function Ht(n,t){if(n===null)return null;const i=Ci(n.Je(),t),e=Ci(n.Qe(),t);return new G(i,e)}function Rt(n,t){if(n===null)return null;const i=Gt(n.Je(),t),e=Gt(n.Qe(),t);return new G(i,e)}function Hi(n){if(n===null)return Vi;const t=Math.abs(n.Qe()-n.Je());if(t>=1||t<1e-15)return Vi;const i=Math.ceil(Math.abs(Math.log10(t))),e=Vi.Al+i;return{Al:e,Ll:1/Math.pow(10,e)}}class Ki{constructor(t,i){if(this.zl=t,this.Ol=i,(function(e){if(e<0)return!1;if(e>1e18)return!0;for(let s=e;s>1;s/=10)if(s%10!=0)return!1;return!0})(this.zl))this.Nl=[2,2.5,2];else{this.Nl=[];for(let e=this.zl;e!==1;){if(e%2==0)this.Nl.push(2),e/=2;else{if(e%5!=0)throw new Error("unexpected base");this.Nl.push(2,2.5),e/=5}if(this.Nl.length>100)throw new Error("something wrong with base")}}}Fl(t,i,e){const s=this.zl===0?0:1/this.zl;let r=Math.pow(10,Math.max(0,Math.ceil(Math.log10(t-i)))),h=0,o=this.Ol[0];for(;;){const u=oi(r,s,1e-14)&&r>s+1e-14,d=oi(r,e*o,1e-14),m=oi(r,1,1e-14);if(!(u&&d&&m))break;r/=o,o=this.Ol[++h%this.Ol.length]}if(r<=s+1e-14&&(r=s),r=Math.max(1,r),this.Nl.length>0&&(l=r,a=1,c=1e-14,Math.abs(l-a)<c))for(h=0,o=this.Nl[0];oi(r,e*o,1e-14)&&r>s+1e-14;)r/=o,o=this.Nl[++h%this.Nl.length];var l,a,c;return r}}class fs{constructor(t,i,e,s){this.Wl=[],this.Ki=t,this.zl=i,this.Hl=e,this.Ul=s}Fl(t,i){if(t<i)throw new Error("high < low");const e=this.Ki.$t(),s=(t-i)*this.$l()/e,r=new Ki(this.zl,[2,2.5,2]),h=new Ki(this.zl,[2,2,2.5]),o=new Ki(this.zl,[2.5,2,2]),l=[];return l.push(r.Fl(t,i,s),h.Fl(t,i,s),o.Fl(t,i,s)),(function(a){if(a.length<1)throw Error("array is empty");let c=a[0];for(let u=1;u<a.length;++u)a[u]<c&&(c=a[u]);return c})(l)}jl(){const t=this.Ki,i=t.Lt();if(i===null)return void(this.Wl=[]);const e=t.$t(),s=this.Hl(e-1,i),r=this.Hl(0,i),h=this.Ki.N().entireTextOnly?this.ql()/2:0,o=h,l=e-1-h,a=Math.max(s,r),c=Math.min(s,r);if(a===c)return void(this.Wl=[]);const u=this.Fl(a,c);if(this.Yl(i,u,a,c,o,l),t.Kl()&&this.Zl(u,c,a)){const p=this.Ki.Gl();this.Xl(i,u,o,l,p,2*p)}const d=this.Wl.map((p=>p.Jl)),m=this.Ki.Ql(d);for(let p=0;p<this.Wl.length;p++)this.Wl[p].io=m[p]}El(){return this.Wl}ql(){return this.Ki.k()}$l(){return Math.ceil(this.ql()*this.Ki.N().tickMarkDensity)}Yl(t,i,e,s,r,h){const o=this.Wl,l=this.Ki;let a=e%i;a+=a<0?i:0;const c=e>=s?1:-1;let u=null,d=0;for(let m=e-a;m>s;m-=i){const p=this.Ul(m,t,!0);u!==null&&Math.abs(p-u)<this.$l()||p<r||p>h||(d<o.length?(o[d].Rl=p,o[d].io=l.no(m),o[d].Jl=m):o.push({Rl:p,io:l.no(m),Jl:m}),d++,u=p,l.so()&&(i=this.Fl(m*c,s)))}o.length=d}Xl(t,i,e,s,r,h){const o=this.Wl,l=this.eo(t,e,r,h),a=this.eo(t,s,-h,-r),c=this.Ul(0,t,!0)-this.Ul(i,t,!0);o.length>0&&o[0].Rl-l.Rl<c/2&&o.shift(),o.length>0&&a.Rl-o[o.length-1].Rl<c/2&&o.pop(),o.unshift(l),o.push(a)}eo(t,i,e,s){const r=(e+s)/2,h=this.Hl(i+e,t),o=this.Hl(i+s,t),l=Math.min(h,o),a=Math.max(h,o),c=Math.max(.1,this.Fl(a,l)),u=this.Hl(i+r,t),d=u-u%c,m=this.Ul(d,t,!0);return{io:this.Ki.no(d),Rl:m,Jl:d}}Zl(t,i,e){let s=vt(this.Ki.ar());return this.Ki.so()&&(s=Rt(s,this.Ki.ro())),s.Je()-i<t&&e-s.Qe()<t}}function In(n){return n.slice().sort(((t,i)=>
1M(t.ln())-M(i.ln())))}var ms;(function(n){n[n.Normal=0]="Normal",n[n.Logarithmic=1]="Logarithmic",n[n.Percentage=2]="Percentage",n[n.IndexedTo100=3]="IndexedTo100"})(ms||(ms={}));const ps=new _n,gs=new Ni(100,1);class so{constructor(t,i,e,s,r){this.ho=0,this.ao=null,this.rr=null,this.lo=null,this.oo={_o:!1,uo:null},this.co=!1,this.do=0,this.fo=0,this.po=new B,this.vo=new B,this.mo=[],this.wo=null,this.Mo=null,this.bo=null,this.So=null,this.xo=null,this.il=gs,this.Co=Hi(null),this.yo=t,this.yn=i,this.ko=e,this.Po=s,this.To=r,this.Ro=new fs(this,100,this.Do.bind(this),this.Io.bind(this))}cl(){return this.yo}N(){return this.yn}vr(t){if(it(this.yn,t),this.dl(),t.mode!==void 0&&this.Vo({_e:t.mode}),t.scaleMargins!==void 0){const i=J(t.scaleMargins.top),e=J(t.scaleMargins.bottom);if(i<0||i>1)throw new Error(`Invalid top margin - expect value between 0 and 1, given=${i}`);if(e<0||e>1)throw new Error(`Invalid bottom margin - expect value between 0 and 1, given=${e}`);if(i+e>1)throw new Error(`Invalid margins - sum of margins must be less than 1, given=${i+e}`);this.Bo(),this.bo=null}}Eo(){return this.yn.autoScale}Ao(){return this.co}so(){return this.yn.mode===1}je(){return this.yn.mode===2}Lo(){return this.yn.mode===3}ro(){return this.Co}_e(){return{hs:this.yn.autoScale,zo:this.yn.invertScale,_e:this.yn.mode}}Vo(t){const i=this._e();let e=null;t.hs!==void 0&&(this.yn.autoScale=t.hs),t._e!==void 0&&(this.yn.mode=t._e,t._e!==2&&t._e!==3||(this.yn.autoScale=!0),this.oo._o=!1),i._e===1&&t._e!==i._e&&((function(r,h){if(r===null)return!1;const o=Gt(r.Je(),h),l=Gt(r.Qe(),h);return isFinite(o)&&isFinite(l)})(this.rr,this.Co)?(e=Rt(this.rr,this.Co),e!==null&&this.Oo(e)):this.yn.autoScale=!0),t._e===1&&t._e!==i._e&&(e=Ht(this.rr,this.Co),e!==null&&this.Oo(e));const s=i._e!==this.yn.mode;s&&(i._e===2||this.je())&&this.dl(),s&&(i._e===3||this.Lo())&&this.dl(),t.zo!==void 0&&i.zo!==t.zo&&(this.yn.invertScale=t.zo,this.No()),this.vo.p(i,this._e())}Fo(){return this.vo}k(){return this.ko.fontSize}$t(){return this.ho}Wo(t){this.ho!==t&&(this.ho=t,this.Bo(),this.bo=null)}Ho(){if(this.ao)return this.ao;const t=this.$t()-this.Uo()-this.$o();return this.ao=t,t}ar(){return this.jo(),this.rr}Oo(t,i){const e=this.rr;(i||e===null&&t!==null||e!==null&&!e.Ge(t))&&(this.bo=null,this.rr=t)}qo(t){this.Oo(t),this.Yo(t!==null)}Gi(){return this.jo(),this.ho===0||!this.rr||this.rr.Gi()}Ko(t){return this.zo()?t:this.$t()-1-t}Nt(t,i){return this.je()?t=Tt(t,i):this.Lo()&&(t=Zt(t,i)),this.Io(t,i)}Zo(t,i,e){this.jo();const s=this.$o(),r=M(this.ar()),h=r.Je(),o=r.Qe(),l=this.Ho()-1,a=this.zo(),c=l/(o-h),u=e===void 0?0:e.from,d=e===void 0?t.length:e.to,m=this.Go();for(let p=u;p<d;p++){const b=t[p],w=b.Mt;if(isNaN(w))continue;let x=w;m!==null&&(x=m(b.Mt,i));const E=s+c*(x-h),k=a?E:this.ho-1-E;b.ut=k}}Xo(t,i,e){this.jo();const s=this.$o(),r=M(this.ar()),h=r.Je(),o=r.Qe(),l=this.Ho()-1,a=this.zo(),c=l/(o-h),u=e===void 0?0:e.from,d=e===void 0?t.length:e.to,m=this.Go();for(let p=u;p<d;p++){const b=t[p];let w=b.jr,x=b.qr,E=b.Yr,k=b.Kr;m!==null&&(w=m(b.jr,i),x=m(b.qr,i),E=m(b.Yr,i),k=m(b.Kr,i));let S=s+c*(w-h),I=a?S:this.ho-1-S;b.Jo=I,S=s+c*(x-h),I=a?S:this.ho-1-S,b.Qo=I,S=s+c*(E-h),I=a?S:this.ho-1-S,b.t_=I,S=s+c*(k-h),I=a?S:this.ho-1-S,b.i_=I}}Tn(t,i){const e=this.Do(t,i);return this.n_(e,i)}n_(t,i){let e=t;return this.je()?e=(function(s,r){return r<0&&(s=-s),s/100*r+r})(e,i):this.Lo()&&(e=(function(s,r){return s-=100,r<0&&(s=-s),s/100*r+r})(e,i)),e}Cl(){return this.mo}Dt(){return this.Mo||(this.Mo=In(this.mo)),this.Mo}s_(t){this.mo.indexOf(t)===-1&&(this.mo.push(t),this.dl(),this.e_())}r_(t){const i=this.mo.indexOf(t);if(i===-1)throw new Error("source is not attached to scale");this.mo.splice(i,1),this.mo.length===0&&(this.Vo({hs:!0}),this.Oo(null)),this.dl(),this.e_()}Lt(){let t=null;for(const i of this.mo){const e=i.Lt();e!==null&&(t===null||e.za<t.za)&&(t=e)}return t===null?null:t.Wt}zo(){return this.yn.invertScale}El(){const t=this.Lt()===null;if(this.bo!==null&&(t||this.bo.h_===t))return this.bo.El;this.Ro.jl();const i=this.Ro.El();return this.bo={El:i,h_:t},this.po.p(),i}a_(){return this.po}l_(t){this.je()||this.Lo()||this.So===null&&this.lo===null&&(this.Gi()||(this.So=this.ho-t,this.lo=M(this.ar()).Xe()))}o_(t){if(this.je()||this.Lo()||this.So===null)return;this.Vo({hs:!1}),(t=this.ho-t)<0&&(t=0);let i=(this.So+.2*(this.ho-1))/(t+.2*(this.ho-1));const e=M(this.lo).Xe();i=Math.max(i,.1),e.ir(i),this.Oo(e)}__(){this.je()||this.Lo()||(this.So=null,this.lo=null)}u_(t){this.Eo()||this.xo===null&&this.lo===null&&(this.Gi()||(this.xo=t,this.lo=M(this.ar()).Xe()))}c_(t){if(this.Eo()||this.xo===null)return;const i=M(this.ar()).tr()/(this.Ho()-1);let e=t-this.xo;this.zo()&&(e*=-1);const s=e*i,r=M(this.lo).Xe();r.nr(s),this.Oo(r,!0),this.bo=null}d_(){this.Eo()||this.xo!==null&&(this.xo=null,this.lo=null)}tl(){return this.il||this.dl(),this.il}
1Ji(t,i){switch(this.yn.mode){case 2:return this.f_(Tt(t,i));case 3:return this.tl().format(Zt(t,i));default:return this.cr(t)}}no(t){switch(this.yn.mode){case 2:return this.f_(t);case 3:return this.tl().format(t);default:return this.cr(t)}}Ql(t){switch(this.yn.mode){case 2:return this.p_(t);case 3:return this.tl().formatTickmarks(t);default:return this.v_(t)}}xa(t){return this.cr(t,M(this.wo).tl())}Ca(t,i){return t=Tt(t,i),this.f_(t,ps)}m_(){return this.mo}w_(t){this.oo={uo:t,_o:!1}}Nn(){this.mo.forEach((t=>t.Nn()))}Kl(){return this.yn.ensureEdgeTickMarksVisible&&this.Eo()}Gl(){return this.k()/2}dl(){this.bo=null;let t=1/0;this.wo=null;for(const e of this.mo)e.ln()<t&&(t=e.ln(),this.wo=e);let i=100;this.wo!==null&&(i=Math.round(this.wo.Kh())),this.il=gs,this.je()?(this.il=ps,i=100):this.Lo()?(this.il=new Ni(100,1),i=100):this.wo!==null&&(this.il=this.wo.tl()),this.Ro=new fs(this,i,this.Do.bind(this),this.Io.bind(this)),this.Ro.jl()}e_(){this.Mo=null}M_(){return this.wo===null||this.je()||this.Lo()?1:1/this.wo.Kh()}Xi(){return this.To}Yo(t){this.co=t}Uo(){return this.zo()?this.yn.scaleMargins.bottom*this.$t()+this.fo:this.yn.scaleMargins.top*this.$t()+this.do}$o(){return this.zo()?this.yn.scaleMargins.top*this.$t()+this.do:this.yn.scaleMargins.bottom*this.$t()+this.fo}jo(){this.oo._o||(this.oo._o=!0,this.g_())}Bo(){this.ao=null}Io(t,i){if(this.jo(),this.Gi())return 0;t=this.so()&&t?Ci(t,this.Co):t;const e=M(this.ar()),s=this.$o()+(this.Ho()-1)*(t-e.Je())/e.tr();return this.Ko(s)}Do(t,i){if(this.jo(),this.Gi())return 0;const e=this.Ko(t),s=M(this.ar()),r=s.Je()+s.tr()*((e-this.$o())/(this.Ho()-1));return this.so()?Gt(r,this.Co):r}No(){this.bo=null,this.Ro.jl()}g_(){if(this.Ao()&&!this.Eo())return;const t=this.oo.uo;if(t===null)return;let i=null;const e=this.m_();let s=0,r=0;for(const l of e){if(!l.It())continue;const a=l.Lt();if(a===null)continue;const c=l.la(t.Oa(),t.bi());let u=c&&c.ar();if(u!==null){switch(this.yn.mode){case 1:u=Ht(u,this.Co);break;case 2:u=io(u,a.Wt);break;case 3:u=eo(u,a.Wt)}if(i=i===null?u:i.Ss(M(u)),c!==null){const d=c.lr();d!==null&&(s=Math.max(s,d.above),r=Math.max(r,d.below))}}}if(this.Kl()&&(s=Math.max(s,this.Gl()),r=Math.max(r,this.Gl())),s===this.do&&r===this.fo||(this.do=s,this.fo=r,this.bo=null,this.Bo()),i!==null){if(i.Je()===i.Qe()){const l=5*this.M_();this.so()&&(i=Rt(i,this.Co)),i=new G(i.Je()-l,i.Qe()+l),this.so()&&(i=Ht(i,this.Co))}if(this.so()){const l=Rt(i,this.Co),a=Hi(l);if(h=a,o=this.Co,h.Al!==o.Al||h.Ll!==o.Ll){const c=this.lo!==null?Rt(this.lo,this.Co):null;this.Co=a,i=Ht(l,a),c!==null&&(this.lo=Ht(c,a))}}this.Oo(i)}else this.rr===null&&(this.Oo(new G(-.5,.5)),this.Co=Hi(null));var h,o}Go(){return this.je()?Tt:this.Lo()?Zt:this.so()?t=>Ci(t,this.Co):null}b_(t,i,e){return i===void 0?(e===void 0&&(e=this.tl()),e.format(t)):i(t)}S_(t,i,e){return i===void 0?(e===void 0&&(e=this.tl()),e.formatTickmarks(t)):i(t)}cr(t,i){return this.b_(t,this.Po.priceFormatter,i)}v_(t,i){const e=this.Po.priceFormatter;return this.S_(t,this.Po.tickmarksPriceFormatter??(e?s=>s.map(e):void 0),i)}f_(t,i){return this.b_(t,this.Po.percentageFormatter,i)}p_(t,i){const e=this.Po.percentageFormatter;return this.S_(t,this.Po.tickmarksPercentageFormatter??(e?s=>s.map(e):void 0),i)}}function vs(n){return n instanceof Pi}class ue{constructor(t,i){this.mo=[],this.x_=new Map,this.ho=0,this.C_=0,this.y_=1,this.Mo=null,this.k_=null,this.P_=!1,this.T_=new B,this.fa=[],this.ia=t,this.sn=i,this.R_=new to(this);const e=i.N();this.D_=this.I_("left",e.leftPriceScale),this.V_=this.I_("right",e.rightPriceScale),this.D_.Fo().i(this.B_.bind(this,this.D_),this),this.V_.Fo().i(this.B_.bind(this,this.V_),this),this.E_(e)}E_(t){if(t.leftPriceScale&&this.D_.vr(t.leftPriceScale),t.rightPriceScale&&this.V_.vr(t.rightPriceScale),t.localization&&(this.D_.dl(),this.V_.dl()),t.overlayPriceScales){const i=Array.from(this.x_.values());for(const e of i){const s=M(e[0].Ft());s.vr(t.overlayPriceScales),t.localization&&s.dl()}}}A_(t){switch(t){case"left":return this.D_;case"right":return this.V_}return this.x_.has(t)?J(this.x_.get(t))[0].Ft():null}m(){this.Qt().L_().u(this),this.D_.Fo().u(this),this.V_.Fo().u(this),this.mo.forEach((t=>{t.m&&t.m()})),this.fa=this.fa.filter((t=>{const i=t.Qh();return i.detached&&i.detached(),!1})),this.T_.p()}z_(){return this.y_}O_(t){this.y_=t}Qt(){return this.sn}nn(){return this.C_}$t(){return this.ho}N_(t){this.C_=t,this.F_()}Wo(t){this.ho=t,this.D_.Wo(t),this.V_.Wo(t),this.mo.forEach((i=>{if(this.Zs(i)){const e=i.Ft();e!==null&&e.Wo(t)}}
1)),this.F_()}W_(t){this.P_=t}H_(){return this.P_}U_(){return this.mo.filter(vs)}Cl(){return this.mo}Zs(t){const i=t.Ft();return i===null||this.D_!==i&&this.V_!==i}s_(t,i,e){this.j_(t,i,e?t.ln():this.mo.length)}r_(t,i){const e=this.mo.indexOf(t);U(e!==-1,"removeDataSource: invalid data source"),this.mo.splice(e,1),i||this.mo.forEach(((h,o)=>h._n(o)));const s=M(t.Ft()).cl();if(this.x_.has(s)){const h=J(this.x_.get(s)),o=h.indexOf(t);o!==-1&&(h.splice(o,1),h.length===0&&this.x_.delete(s))}const r=t.Ft();r&&r.Cl().indexOf(t)>=0&&(r.r_(t),this.q_(r)),this.Y_()}Xs(t){return t===this.D_?"left":t===this.V_?"right":"overlay"}K_(){return this.D_}Z_(){return this.V_}G_(t,i){t.l_(i)}X_(t,i){t.o_(i),this.F_()}J_(t){t.__()}Q_(t,i){t.u_(i)}tu(t,i){t.c_(i),this.F_()}iu(t){t.d_()}F_(){this.mo.forEach((t=>{t.Nn()}))}Pn(){const[t,i]=this.nu();let e=null;return t.N().visible&&t.Cl().length!==0?e=t:i.N().visible&&i.Cl().length!==0?e=i:this.mo.length!==0&&(e=this.mo[0].Ft()),e===null&&(e=this.Gs()??t),e}Gs(){const[t,i]=this.nu();return t.N().visible?t:i.N().visible?i:null}q_(t){t!==null&&t.Eo()&&this.su(t)}eu(t){const i=this.ia.Ee();t.Vo({hs:!0}),i!==null&&t.w_(i),this.F_()}ru(){this.su(this.D_),this.su(this.V_)}hu(){this.q_(this.D_),this.q_(this.V_),this.mo.forEach((t=>{this.Zs(t)&&this.q_(t.Ft())})),this.F_(),this.sn.mr()}Dt(){return this.Mo===null&&(this.Mo=In(this.mo)),this.Mo}au(){const t=this.Dt(),i=this.sn.ou()?.lu,e=this.sn.N().hoveredSeriesOnTop,s=this.k_;if(s!==null&&s.Kh===t&&s._u===i&&s.uu===e)return s.cu;const r=(function(h,o,l){if(!l)return h;const a=h.indexOf(o);if(a===-1||a===h.length-1)return h;const c=[];for(let u=0;u<h.length;u++)u!==a&&c.push(h[u]);return c.push(h[a]),c})(t,i,e);return this.k_={Kh:t,_u:i,uu:e,cu:r},r}du(t,i){i=At(i,0,this.mo.length-1);const e=this.mo.indexOf(t);U(e!==-1,"setSeriesOrder: invalid data source"),this.mo.splice(e,1),this.mo.splice(i,0,t),this.mo.forEach(((s,r)=>s._n(r))),this.Y_();for(const s of[this.D_,this.V_])s.e_(),s.dl();this.sn.mr()}Vt(){return this.Dt().filter(vs)}fu(){return this.T_}pu(){return this.R_}hl(t){this.fa.push(new Bh(t))}al(t){this.fa=this.fa.filter((i=>i.Qh()!==t)),t.detached&&t.detached(),this.sn.mr()}vu(){return this.fa}Ja(t,i){return this.fa.map((e=>e.Qs(t,i))).filter((e=>e!==null))}su(t){const i=t.m_();if(i&&i.length>0&&!this.ia.Gi()){const e=this.ia.Ee();e!==null&&t.w_(e)}t.Nn()}j_(t,i,e){let s=this.A_(i);if(s===null&&(s=this.I_(i,this.sn.N().overlayPriceScales)),this.mo.splice(e,0,t),!Li(i)){const r=this.x_.get(i)||[];r.push(t),this.x_.set(i,r)}t._n(e),s.s_(t),t.un(s),this.q_(s),this.Y_()}Y_(){this.Mo=null,this.k_=null}nu(){return this.sn.N().defaultVisiblePriceScaleId==="left"?[this.D_,this.V_]:[this.V_,this.D_]}B_(t,i,e){i._e!==e._e&&this.su(t)}I_(t,i){const e={visible:!0,autoScale:!0,...lt(i)},s=new so(t,e,this.sn.N().layout,this.sn.N().localization,this.sn.Xi());return s.Wo(this.$t()),s}}function de(n,t){return t===null||n.se===2&&t.se!==2||(t.se!==2||n.se===2)&&n.ne!==t.ne&&n.ne<t.ne}function Ln(n){return{te:n.te,ie:n.ie}}function no(n){return{ne:n.distance??0,se:n.hitTestPriority??(n.itemType==="marker"?2:0),ee:n.itemType??"primitive",mu:n.cursorStyle,te:n.externalId}}function li(n){return{lu:n.lu,wu:Ln(n.Mu),mu:n.Mu.mu,ee:n.Mu.ee??"primitive"}}function ro(n,t,i,e){let s=null;for(const r of n){let h=r.Qs?.(t,i,e)??null;if(h===null){const o=r.Tt(e);h=o!==null&&o.Qs?o.Qs(t,i):null}if(h!==null){const o={gu:r,Mu:h};(s===null||de(o.Mu,s.Mu))&&(s=o)}}return s}function ho(n){return n.jn!==void 0}function Nn(n,t,i){const e=[n,...n.Dt()].reverse(),s=(function(o,l,a){let c,u,d;for(const b of o){const w=b.Ja?.(l,a)??[];for(const x of w){const E=no(x);m=x.zOrder,p=c?.zOrder,(!p||m==="top"&&p!=="top"||m==="normal"&&p==="bottom"||x.zOrder===c?.zOrder&&u!==void 0&&de(E,u)||x.zOrder===c?.zOrder&&u===void 0)&&(c=x,u=E,d=b)}}var m,p;return c&&d&&u?{Mu:u,bu:c,lu:d}:null})(e,t,i);if(s?.bu.zOrder==="top")return li(s);let r=null,h=null;for(const o of e){if(s&&s.lu===o&&s.bu.zOrder!=="bottom"&&!s.bu.isBackground)return r??li(s);if(ho(o)){const l=ro(o.jn(n),t,i,n);if(l!==null){const a={lu:o,gu:l.gu,wu:Ln(l.Mu),mu:l.Mu.mu,ee:l.Mu.ee??"primitive"};(r===null||de(l.Mu,h))&&(r=a,h=l.Mu)}}
1if(s&&s.lu===o&&s.bu.zOrder!=="bottom"&&s.bu.isBackground)return r??li(s)}return r!==null?r:s?.bu?li(s):null}class oo{constructor(t,i,e=50){this.Vs=0,this.Bs=1,this.Es=1,this.Ls=new Map,this.As=new Map,this.Su=t,this.xu=i,this.zs=e}Cu(t){const i=t.time,e=this.xu.cacheKey(i),s=this.Ls.get(e);if(s!==void 0)return s.yu;if(this.Vs===this.zs){const h=this.As.get(this.Es);this.As.delete(this.Es),this.Ls.delete(J(h)),this.Es++,this.Vs--}const r=this.Su(t);return this.Ls.set(e,{yu:r,Ws:this.Bs}),this.As.set(this.Bs,e),this.Vs++,this.Bs++,r}}class Yt{constructor(t,i){U(t<=i,"right should be >= left"),this.ku=t,this.Pu=i}Oa(){return this.ku}bi(){return this.Pu}Tu(){return this.Pu-this.ku+1}ze(t){return this.ku<=t&&t<=this.Pu}Ge(t){return this.ku===t.Oa()&&this.Pu===t.bi()}}function bs(n,t){return n===null||t===null?n===t:n.Ge(t)}class lo{constructor(){this.Ru=new Map,this.Ls=null,this.Du=!1}Iu(t){this.Du=t,this.Ls=null}Vu(t,i){this.Bu(i),this.Ls=null;for(let e=i;e<t.length;++e){const s=t[e];let r=this.Ru.get(s.timeWeight);r===void 0&&(r=[],this.Ru.set(s.timeWeight,r)),r.push({index:e,time:s.time,weight:s.timeWeight,originalTime:s.originalTime})}}Eu(t,i,e,s,r){const h=Math.ceil(i/t);return this.Ls!==null&&this.Ls.Au===h&&r===this.Ls.Lu&&e===this.Ls.zu||(this.Ls={Lu:r,zu:e,El:this.Ou(h,e,s),Au:h}),this.Ls.El}Bu(t){if(t===0)return void this.Ru.clear();const i=[];this.Ru.forEach(((e,s)=>{t<=e[0].index?i.push(s):e.splice(_t(e,t,(r=>r.index<t)),1/0)}));for(const e of i)this.Ru.delete(e)}Ou(t,i,e){let s=[];const r=h=>!i||e.has(h.index);for(const h of Array.from(this.Ru.keys()).sort(((o,l)=>l-o))){if(!this.Ru.get(h))continue;const o=s;s=[];const l=o.length;let a=0;const c=J(this.Ru.get(h)),u=c.length;let d=1/0,m=-1/0;for(let p=0;p<u;p++){const b=c[p],w=b.index;for(;a<l;){const x=o[a],E=x.index;if(!(E<w&&r(x))){d=E;break}a++,s.push(x),m=E,d=1/0}if(d-w>=t&&w-m>=t&&r(b))s.push(b),m=w;else if(this.Du)return o}for(;a<l;a++)r(o[a])&&s.push(o[a])}return s}}class Ft{constructor(t){this.Nu=t}Fu(){return this.Nu===null?null:new Yt(Math.floor(this.Nu.Oa()),Math.ceil(this.Nu.bi()))}Wu(){return this.Nu}static Hu(){return new Ft(null)}}function ao(n,t){return n.weight>t.weight?n:t}class co{constructor(t,i,e,s){this.C_=0,this.Uu=null,this.$u=[],this.xo=null,this.So=null,this.ju=new lo,this.qu=new Map,this.Yu=Ft.Hu(),this.Ku=!0,this.Zu=new B,this.Gu=new B,this.Xu=new B,this.Ju=null,this.Qu=null,this.tc=new Map,this.nc=-1,this.sc=[],this.ec=1,this.yn=i,this.Po=e,this.rc=i.rightOffset,this.hc=i.barSpacing,this.sn=t,this.ac(i),this.xu=s,this.lc(),this.ju.Iu(i.uniformDistribution),this.oc(),this._c()}N(){return this.yn}uc(t){it(this.Po,t),this.cc(),this.lc()}vr(t,i){it(this.yn,t),this.yn.fixLeftEdge&&this.dc(),this.yn.fixRightEdge&&this.fc(),t.barSpacing!==void 0&&this.sn.Ms(t.barSpacing),t.rightOffset!==void 0&&this.sn.gs(t.rightOffset),this.ac(t),t.minBarSpacing===void 0&&t.maxBarSpacing===void 0||this.sn.Ms(t.barSpacing??this.hc),t.ignoreWhitespaceIndices!==void 0&&t.ignoreWhitespaceIndices!==this.yn.ignoreWhitespaceIndices&&this._c(),this.cc(),this.lc(),t.enableConflation===void 0&&t.conflationThresholdFactor===void 0||this.oc(),this.Xu.p()}Rn(t){return this.$u[t]?.time??null}en(t){return this.$u[t]??null}vc(t,i){if(this.$u.length<1)return null;if(this.xu.key(t)>this.xu.key(this.$u[this.$u.length-1].time))return i?this.$u.length-1:null;const e=_t(this.$u,this.xu.key(t),((s,r)=>this.xu.key(s.time)<r));return this.xu.key(t)<this.xu.key(this.$u[e].time)?i?e:null:e}Gi(){return this.C_===0||this.$u.length===0||this.Uu===null}mc(){return this.$u.length>0}Ee(){return this.wc(),this.Yu.Fu()}Mc(){return this.wc(),this.Yu.Wu()}gc(){const t=this.Ee();if(t===null)return null;const i={from:t.Oa(),to:t.bi()};return this.bc(i)}bc(t){const i=Math.round(t.from),e=Math.round(t.to),s=M(this.Sc()),r=M(this.xc());return{from:M(this.en(Math.max(s,i))),to:M(this.en(Math.min(r,e)))}}Cc(t){return{from:M(this.vc(t.from,!0)),to:M(this.vc(t.to,!0))}}nn(){return this.C_}N_(t){if(!isFinite(t)||t<=0||this.C_===t)return;const i=this.Mc(),e=this.C_;if(this.C_=t,this.Ku=!0,this.yn.lockVisibleTimeRangeOnResize&&e!==0){const s=this.hc*t/e;this.hc=s}if(this.yn.fixLeftEdge&&i!==null&&i.Oa()<=0){const s=e-t;this.rc-=Math.round(s/this.hc)+1,this.Ku=!0}this.yc(),this.kc()}jt(t){if(this.Gi()||!ti(t))return 0;const i=this.Pc()+this.rc-t;return this.C_-(i+.5)*this.hc-1}Tc(t,i){const e=this.Pc(),s=i===void 0?0:i.from,r=i===void 0?t.length:i.to;for(let h=s;h<r;h++){const o=t[h].wt,l=e+this.rc-o,a=this.C_-(l+.5)*this.hc-1;t[h]._t=a}}Rc(t,i){const e=Math.ceil(this.Dc(t));return i&&this.yn.ignoreWhitespaceIndices&&!this.Ic(e)?this.Vc(e):e}gs(t){this.Ku=!0,this.rc=t,this.kc(),this.sn.Bc(),this.sn.mr()}fl(){return this.hc}Ms(t){const i=this.hc;if(this.Ec(t),this.yn.rightOffsetPixels!==void 0&&i!==0){const e=this.rc*i/this.hc;this.rc=e}this.kc(),this.sn.Bc(),this.sn.mr()}Ac(){return this.rc}El(){if(this.Gi())return null;if(this.Qu!==null)return this.Qu;const t=this.hc,i=5*(this.sn.N().layout.fontSize+4)/8*(this.yn.tickMarkMaxCharacterLength||8),e=Math.round(i/t),s=M(this.Ee()),r=Math.max(s.Oa(),s.Oa()-e),h=Math.max(s.bi(),s.bi()-e),o=this.ju.Eu(t,i,this.yn.ignoreWhitespaceIndices,this.tc,this.nc),l=this.Sc()+e,a=this.xc()-e,c=this.Lc(),u=this.yn.fixLeftEdge||c,d=this.yn.fixRightEdge||c;let m=0;for(const p of o){if(!(r<=p.index&&p.index<=h))continue;let b;m<this.sc.length?(b=this.sc[m],b.coord=this.jt(p.index),b.label=this.zc(p),b.weight=p.weight):(b={needAlignCoordinate:!1,coord:this.jt(p.index),label:this.zc(p),weight:p.weight},this.sc.push(b)),this.hc>i/2&&!c?b.needAlignCoordinate=!1:b.needAlignCoordinate=u&&p.index<=l||d&&p.index>=a,m++}return this.sc.length=m,this.Qu=this.sc,this.sc}Oc(){let t;this.Ku=!0,this.Ms(this.yn.barSpacing),t=this.yn.rightOffsetPixels!==void 0?this.yn.rightOffsetPixels/this.fl():this.yn.rightOffset,this.gs(t)}Nc(t){this.Ku=!0,this.Uu=t,this.kc(),this.dc()}Fc(t,i){const e=this.Dc(t),s=this.fl(),r=s+i*(s/10);this.Ms(r),this.yn.rightBarStaysOnScroll||this.gs(this.Ac()+(e-this.Dc(t)))}l_(t){this.xo&&this.d_(),this.So===null&&this.Ju===null&&(this.Gi()||(this.So=t,this.Wc()))}o_(t){if(this.Ju===null)return;const i=At(this.C_-t,0,this.C_),e=At(this.C_-M(this.So),0,this.C_);i!==0&&e!==0&&this.Ms(this.Ju.fl*i/e)}__(){this.So!==null&&(this.So=null,this.Hc())}u_(t){this.xo===null&&this.Ju===null&&(this.Gi()||(this.xo=t,this.Wc()))}c_(t){if(this.xo===null)return;const i=(this.xo-t)/this.fl();this.rc=M(this.Ju).Ac+i,this.Ku=!0,this.kc()}d_(){this.xo!==null&&(this.xo=null,this.Hc())}Uc(){this.$c(this.yn.rightOffset)}$c(t,i=400){if(!isFinite(t))throw new RangeError("offset is required and must be finite number");if(!isFinite(i)||i<=0)throw new RangeError("animationDuration (optional) must be finite positive number");const e=this.rc,s=performance.now();this.sn.ps({jc:r=>(r-s)/i>=1,qc:r=>{const h=(r-s)/i;return h>=1?t:e+(t-e)*h}})}kt(t,i){this.Ku=!0,this.$u=t,this.ju.Vu(t,i),this.kc()}Yc(){return this.Zu}Kc(){return this.Gu}Zc(){return this.Xu}Pc(){return this.Uu||0}Gc(t,i){const e=t.Tu(),s=i&&this.yn.rightOffsetPixels||0;this.Ec((this.C_-s)/e),this.rc=t.bi()-this.Pc(),i&&(this.rc=s?s/this.fl():this.yn.rightOffset),this.kc(),this.Ku=!0,this.sn.Bc(),this.sn.mr()}Xc(){const t=this.Sc(),i=this.xc();if(t===null||i===null)return;const e=!this.yn.rightOffsetPixels&&this.yn.rightOffset||0;this.Gc(new Yt(t,i+e),!0)}Jc(t){const i=new Yt(t.from,t.to);this.Gc(i)}rn(t){return this.Po.timeFormatter!==void 0?this.Po.timeFormatter(t.originalTime):this.xu.formatHorzItem(t.time)}_c(){if(!this.yn.ignoreWhitespaceIndices)return;this.tc.clear();const t=this.sn.Jn();for(const i of t)for(const e of i.ul())this.tc.set(e,!0);this.nc++}Qc(){return this.ec}Ml(){const t=1/(window.devicePixelRatio||1),i=this.yn.minBarSpacing;if(i>=t)return[1];const e=[1];let s=2;
1for(;s<=512;)i<t/s&&e.push(s),s*=2;return e}Lc(){const t=this.sn.N().handleScroll,i=this.sn.N().handleScale;return!(t.horzTouchDrag||t.mouseWheel||t.pressedMouseMove||t.vertTouchDrag||i.axisDoubleClickReset.time||i.axisPressedMouseMove.time||i.mouseWheel||i.pinch)}Sc(){return this.$u.length===0?null:0}xc(){return this.$u.length===0?null:this.$u.length-1}td(t){return(this.C_-1-t)/this.hc}Dc(t){const i=this.td(t),e=this.Pc()+this.rc-i;return Math.round(1e6*e)/1e6}Ec(t){const i=this.hc;this.hc=t,this.yc(),i!==this.hc&&(this.Ku=!0,this.nd(),this.oc())}wc(){if(!this.Ku)return;if(this.Ku=!1,this.Gi())return void this.sd(Ft.Hu());const t=this.Pc(),i=this.C_/this.hc,e=this.rc+t,s=new Yt(e-i+1,e);this.sd(new Ft(s))}yc(){const t=At(this.hc,this.ed(),this.rd());this.hc!==t&&(this.hc=t,this.Ku=!0)}rd(){return this.yn.maxBarSpacing>0?this.yn.maxBarSpacing:.5*this.C_}ed(){return this.yn.fixLeftEdge&&this.yn.fixRightEdge&&this.$u.length!==0?this.C_/this.$u.length:this.yn.minBarSpacing}oc(){if(!this.yn.enableConflation)return void(this.ec=1);const t=1/(window.devicePixelRatio||1)*(this.yn.conflationThresholdFactor??1);if(this.hc>=t)return void(this.ec=1);const i=t/this.hc,e=Math.pow(2,Math.floor(Math.log2(i)));this.ec=Math.min(e,512)}kc(){const t=this.hd();t!==null&&this.rc<t&&(this.rc=t,this.Ku=!0);const i=this.ad();this.rc>i&&(this.rc=i,this.Ku=!0)}hd(){const t=this.Sc(),i=this.Uu;return t===null||i===null?null:t-i-1+(this.yn.fixLeftEdge?this.C_/this.hc:Math.min(2,this.$u.length))}ad(){return this.yn.fixRightEdge?0:this.C_/this.hc-Math.min(2,this.$u.length)}Wc(){this.Ju={fl:this.fl(),Ac:this.Ac()}}Hc(){this.Ju=null}zc(t){let i=this.qu.get(t.weight);return i===void 0&&(i=new oo((e=>this.ld(e)),this.xu),this.qu.set(t.weight,i)),i.Cu(t)}ld(t){return this.xu.formatTickmark(t,this.Po)}sd(t){const i=this.Yu;this.Yu=t,bs(i.Fu(),this.Yu.Fu())||this.Zu.p(),bs(i.Wu(),this.Yu.Wu())||this.Gu.p(),this.nd()}nd(){this.Qu=null}cc(){this.nd(),this.qu.clear()}lc(){this.xu.updateFormatter(this.Po)}dc(){if(!this.yn.fixLeftEdge)return;const t=this.Sc();if(t===null)return;const i=this.Ee();if(i===null)return;const e=i.Oa()-t;if(e<0){const s=this.rc-e-1;this.gs(s)}this.yc()}fc(){this.kc(),this.yc()}Ic(t){return!this.yn.ignoreWhitespaceIndices||this.tc.get(t)||!1}Vc(t){const i=(function*(s){const r=Math.round(s),h=r<s;let o=1;for(;;)h?(yield r+o,yield r-o):(yield r-o,yield r+o),o++})(t),e=this.xc();for(;e;){const s=i.next().value;if(this.tc.get(s))return s;if(s<0||s>e)break}return t}ac(t){if(t.rightOffsetPixels!==void 0){const i=t.rightOffsetPixels/(t.barSpacing||this.hc);this.sn.gs(i)}}}var ws,ys,Ms,fe,xs;(function(n){n[n.OnTouchEnd=0]="OnTouchEnd",n[n.OnNextTap=1]="OnNextTap"})(ws||(ws={}));class uo{constructor(t,i,e){this.od=[],this._d=[],this.ud=null,this.C_=0,this.dd=null,this.fd=new B,this.pd=new B,this.vd=null,this.md=t,this.yn=i,this.xu=e,this.To=new lh(this.yn.layout.colorParsers),this.wd=new oh(this),this.ia=new co(this,i.timeScale,this.yn.localization,e),this.Ct=new bh(this,i.crosshair),this.Md=new Yh(i.crosshair),i.addDefaultPane&&(this.gd(0),this.od[0].O_(2)),this.bd=this.Sd(0),this.xd=this.Sd(1)}Pa(){this.Cd(K.ys())}mr(){this.Cd(K.Cs())}qa(){this.Cd(new K(1))}Ta(t){const i=this.yd(t);this.Cd(i)}ou(){return this.dd}kd(t){if(this.dd?.lu===t?.lu&&this.dd?.wu?.te===t?.wu?.te&&this.dd?.wu?.ie===t?.wu?.ie&&this.dd?.mu===t?.mu&&this.dd?.ee===t?.ee)return;const i=this.dd;this.dd=t,i!==null&&this.Ta(i.lu),t!==null&&t.lu!==i?.lu&&this.Ta(t.lu)}N(){return this.yn}vr(t){it(this.yn,t),this.od.forEach((i=>i.E_(t))),t.timeScale!==void 0&&this.ia.vr(t.timeScale),t.localization!==void 0&&this.ia.uc(t.localization),(t.leftPriceScale||t.rightPriceScale)&&this.fd.p(),this.bd=this.Sd(0),this.xd=this.Sd(1),this.Pa()}Pd(t,i,e=0){const s=this.od[e];if(s===void 0)return;if(t==="left")return it(this.yn,{leftPriceScale:i}),s.E_({leftPriceScale:i}),this.fd.p(),void this.Pa();if(t==="right")return it(this.yn,{rightPriceScale:i}),s.E_({rightPriceScale:i}),this.fd.p(),void this.Pa();const r=this.Td(t,e);r!==null&&(r.Ft.vr(i),this.fd.p())}Td(t,i){const e=this.od[i];if(e===void 0)return null;const s=e.A_(t);return s!==null?{Kn:e,Ft:s}:null}Et(){return this.ia}Zn(){return this.od}Rd(){return this.Ct}Dd(){return this.pd}
1Id(t,i){t.Wo(i),this.Bc()}N_(t){this.C_=t,this.ia.N_(this.C_),this.od.forEach((i=>i.N_(t))),this.Bc()}Vd(t){this.od.length!==1&&(U(t>=0&&t<this.od.length,"Invalid pane index"),this.od.splice(t,1),this.Pa())}Bd(t,i){if(this.od.length<2)return;U(t>=0&&t<this.od.length,"Invalid pane index");const e=this.od[t],s=this.od.reduce(((u,d)=>u+d.z_()),0),r=this.od.reduce(((u,d)=>u+d.$t()),0),h=r-30*(this.od.length-1);i=Math.min(h,Math.max(30,i));const o=s/r,l=e.$t();e.O_(i*o);let a=i-l,c=this.od.length-1;for(const u of this.od)if(u!==e){const d=Math.min(h,Math.max(30,u.$t()-a/c));a-=u.$t()-d,c-=1;const m=d*o;u.O_(m)}this.Pa()}Ed(t,i){U(t>=0&&t<this.od.length&&i>=0&&i<this.od.length,"Invalid pane index");const e=this.od[t],s=this.od[i];this.od[t]=s,this.od[i]=e,this.Pa()}Ad(t,i){if(U(t>=0&&t<this.od.length&&i>=0&&i<this.od.length,"Invalid pane index"),t===i)return;const[e]=this.od.splice(t,1);this.od.splice(i,0,e),this.Pa()}G_(t,i,e){t.G_(i,e)}X_(t,i,e){t.X_(i,e),this.Ra(),this.Cd(this.Ld(t,2))}J_(t,i){t.J_(i),this.Cd(this.Ld(t,2))}Q_(t,i,e){i.Eo()||t.Q_(i,e)}tu(t,i,e){i.Eo()||(t.tu(i,e),this.Ra(),this.Cd(this.Ld(t,2)))}iu(t,i){i.Eo()||(t.iu(i),this.Cd(this.Ld(t,2)))}eu(t,i){t.eu(i),this.Cd(this.Ld(t,2))}zd(t){this.ia.l_(t)}Od(t,i){const e=this.Et();if(e.Gi()||i===0)return;const s=e.nn();t=Math.max(1,Math.min(t,s)),e.Fc(t,i),this.Bc()}Nd(t){this.Fd(0),this.Wd(t),this.Hd()}Ud(t){this.ia.o_(t),this.Bc()}$d(){this.ia.__(),this.mr()}Fd(t){this.ia.u_(t)}Wd(t){this.ia.c_(t),this.Bc()}Hd(){this.ia.d_(),this.mr()}Jn(){return this._d}Wn(){return this.ud===null&&(this.ud=this._d.filter((t=>t.It()))),this.ud}ka(){this.ud=null}jd(t,i,e,s,r){this.Ct.In(t,i);let h=NaN,o=this.ia.Rc(t,!0);const l=this.ia.Ee();l!==null&&(o=Math.min(Math.max(l.Oa(),o),l.bi())),o=this.Ct.Fn(o);const a=s.Pn(),c=a.Lt();if(c!==null&&(h=a.Tn(i,c)),h=this.Md.xl(h,o,s),this.Ct.An(o,h,s),this.qa(),!r){const u=Nn(s,t,i);this.kd(u&&{lu:u.lu,wu:u.wu,mu:u.mu||null,ee:u.ee}),this.pd.p(this.Ct.Bt(),{x:t,y:i},e)}}qd(t,i,e){const s=e.Pn(),r=s.Lt(),h=s.Nt(t,M(r)),o=this.ia.vc(i,!0),l=this.ia.jt(M(o));this.jd(l,h,null,e,!0)}Yd(t){this.Rd().zn(),this.qa(),t||this.pd.p(null,null,null)}Ra(){const t=this.Ct.Kn();if(t!==null){const i=this.Ct.Bn(),e=this.Ct.En();this.jd(i,e,null,t)}this.Ct.Nn()}Kd(t,i,e){const s=this.ia.Rn(0);i!==void 0&&e!==void 0&&this.ia.kt(i,e);const r=this.ia.Rn(0),h=this.ia.Pc(),o=this.ia.Ee();if(o!==null&&s!==null&&r!==null){const l=o.ze(h),a=this.xu.key(s)>this.xu.key(r),c=t!==null&&t>h&&!a,u=this.ia.N().allowShiftVisibleRangeOnWhitespaceReplacement,d=l&&(e!==void 0||u)&&this.ia.N().shiftVisibleRangeOnNewBar;if(c&&!d){const m=t-h;this.ia.gs(this.ia.Ac()-m)}}this.ia.Nc(t)}Va(t){t!==null&&t.hu()}Ks(t){if((function(e){return e instanceof ue})(t))return t;const i=this.od.find((e=>e.Dt().includes(t)));return i===void 0?null:i}Bc(){this.od.forEach((t=>t.hu())),this.Ra()}m(){this.od.forEach((t=>t.m())),this.od.length=0,this.yn.localization.priceFormatter=void 0,this.yn.localization.percentageFormatter=void 0,this.yn.localization.timeFormatter=void 0}Zd(){return this.wd}Js(){return this.wd.N()}L_(){return this.fd}Gd(t,i){const e=this.gd(i);this.Xd(t,e),this._d.push(t),this.ka(),this._d.length===1?this.Pa():this.mr()}Jd(t){const i=this.Ks(t),e=this._d.indexOf(t);U(e!==-1,"Series not found");const s=M(i);this._d.splice(e,1),s.r_(t),t.m&&t.m(),this.ka(),this.ia._c(),this.Qd(s)}ya(t,i){const e=M(this.Ks(t));e.r_(t,!0),e.s_(t,i,!0)}Xc(){const t=K.Cs();t.us(),this.Cd(t)}tf(t){const i=K.Cs();i.fs(t),this.Cd(i)}ws(){const t=K.Cs();t.ws(),this.Cd(t)}Ms(t){const i=K.Cs();i.Ms(t),this.Cd(i)}gs(t){const i=K.Cs();i.gs(t),this.Cd(i)}ps(t){const i=K.Cs();i.ps(t),this.Cd(i)}cs(){const t=K.Cs();t.cs(),this.Cd(t)}if(){const t=this.yn.defaultVisiblePriceScaleId,i=this.yn.leftPriceScale.visible;return i!==this.yn.rightPriceScale.visible?i?"left":"right":t}nf(t,i){if(U(i>=0,"Index should be greater or equal to 0"),i===this.sf(t))return;const e=M(this.Ks(t));e.r_(t);const s=this.gd(i);this.Xd(t,s);let r=!1;e.Cl().length===0&&(r=this.Qd(e)),r||this.Pa()}ef(){return this.xd}$(){return this.bd}Ut(t){const i=this.xd,e=this.bd;if(i===e)return i;if(t=Math.max(0,Math.min(100,Math.round(100*t))),this.vd===null||this.vd.ah!==e||this.vd.oh!==i)this.vd={ah:e,oh:i,rf:new Map};else{const r=this.vd.rf.get(t);if(r!==void 0)return r}const s=this.To.tt(e,i,t/100);return this.vd.rf.set(t,s),s}hf(t){return this.od.indexOf(t)}Xi(){return this.To}af(){return this.lf()}lf(t){const i=new ue(this.ia,this);this.od.push(i);const e=t??this.od.length-1,s=K.ys();return s.es(e,{rs:0,hs:!0}),this.Cd(s),i}gd(t){return U(t>=0,"Index should be greater or equal to 0"),(t=Math.min(this.od.length,t))<this.od.length?this.od[t]:this.lf(t)}sf(t){return this.od.findIndex((i=>i.U_().includes(t)))}Ld(t,i){const e=new K(i);if(t!==null){const s=this.od.indexOf(t);e.es(s,{rs:i})}return e}yd(t,i){return i===void 0&&(i=2),this.Ld(this.Ks(t),i)}
1Cd(t){this.md&&this.md(t),this.od.forEach((i=>i.pu().wr().kt()))}Xd(t,i){const e=t.N().priceScaleId,s=e!==void 0?e:this.if();i.s_(t,s),Li(s)||t.vr(t.N())}Sd(t){const i=this.yn.layout;return i.background.type==="gradient"?t===0?i.background.topColor:i.background.bottomColor:i.background.color}Qd(t){return!t.H_()&&t.Cl().length===0&&this.od.length>1&&(this.od.splice(this.hf(t),1),this.Pa(),!0)}}function Pn(n){if(n>=1)return 0;let t=0;for(;t<8;t++){const i=Math.round(n);if(Math.abs(i-n)<1e-8)return t;n*=10}return t}function me(n){return!Ot(n)&&!si(n)}function Tn(n){return Ot(n)}(function(n){n[n.Disabled=0]="Disabled",n[n.Continuous=1]="Continuous",n[n.OnDataUpdate=2]="OnDataUpdate"})(ys||(ys={})),(function(n){n[n.LastBar=0]="LastBar",n[n.LastVisible=1]="LastVisible"})(Ms||(Ms={})),(function(n){n.Solid="solid",n.VerticalGradient="gradient"})(fe||(fe={})),(function(n){n[n.Year=0]="Year",n[n.Month=1]="Month",n[n.DayOfMonth=2]="DayOfMonth",n[n.Time=3]="Time",n[n.TimeWithSeconds=4]="TimeWithSeconds"})(xs||(xs={}));const Ss=n=>n.getUTCFullYear();function fo(n,t,i){return t.replace(/yyyy/g,(e=>at(Ss(e),4))(n)).replace(/yy/g,(e=>at(Ss(e)%100,2))(n)).replace(/MMMM/g,((e,s)=>new Date(e.getUTCFullYear(),e.getUTCMonth(),1).toLocaleString(s,{month:"long"}))(n,i)).replace(/MMM/g,((e,s)=>new Date(e.getUTCFullYear(),e.getUTCMonth(),1).toLocaleString(s,{month:"short"}))(n,i)).replace(/MM/g,(e=>at((s=>s.getUTCMonth()+1)(e),2))(n)).replace(/dd/g,(e=>at((s=>s.getUTCDate())(e),2))(n))}class Rn{constructor(t="yyyy-MM-dd",i="default"){this._f=t,this.uf=i}Cu(t){return fo(t,this._f,this.uf)}}class mo{constructor(t){this.cf=t||"%h:%m:%s"}Cu(t){return this.cf.replace("%h",at(t.getUTCHours(),2)).replace("%m",at(t.getUTCMinutes(),2)).replace("%s",at(t.getUTCSeconds(),2))}}const po={df:"yyyy-MM-dd",ff:"%h:%m:%s",pf:" ",vf:"default"};class go{constructor(t={}){const i={...po,...t};this.mf=new Rn(i.df,i.vf),this.wf=new mo(i.ff),this.Mf=i.pf}Cu(t){return`${this.mf.Cu(t)}${this.Mf}${this.wf.Cu(t)}`}}function ai(n){return 60*n*60*1e3}function Ui(n){return 60*n*1e3}const ci=[{gf:(_s=1,1e3*_s),bf:10},{gf:Ui(1),bf:20},{gf:Ui(5),bf:21},{gf:Ui(30),bf:22},{gf:ai(1),bf:30},{gf:ai(3),bf:31},{gf:ai(6),bf:32},{gf:ai(12),bf:33}];var _s;function Cs(n,t){if(n.getUTCFullYear()!==t.getUTCFullYear())return 70;if(n.getUTCMonth()!==t.getUTCMonth())return 60;if(n.getUTCDate()!==t.getUTCDate())return 50;for(let i=ci.length-1;i>=0;--i)if(Math.floor(t.getTime()/ci[i].gf)!==Math.floor(n.getTime()/ci[i].gf))return ci[i].bf;return 0}function ji(n){let t=n;if(si(n)&&(t=Ce(n)),!me(t))throw new Error("time must be of type BusinessDay");const i=new Date(Date.UTC(t.year,t.month-1,t.day,0,0,0,0));return{Sf:Math.round(i.getTime()/1e3),xf:t}}function Es(n){if(!Tn(n))throw new Error("time must be of type isUTCTimestamp");return{Sf:n}}function Ce(n){const t=new Date(n);if(isNaN(t.getTime()))throw new Error(`Invalid date string=${n}, expected format=yyyy-mm-dd`);return{day:t.getUTCDate(),month:t.getUTCMonth()+1,year:t.getUTCFullYear()}}function ks(n){si(n.time)&&(n.time=Ce(n.time))}class zs{options(){return this.yn}setOptions(t){this.yn=t,this.updateFormatter(t.localization)}preprocessData(t){Array.isArray(t)?(function(i){i.forEach(ks)})(t):ks(t)}createConverterToInternalObj(t){return M((function(i){return i.length===0?null:me(i[0].time)||si(i[0].time)?ji:Es})(t))}key(t){return typeof t=="object"&&"Sf"in t?t.Sf:this.key(this.convertHorzItemToInternal(t))}cacheKey(t){const i=t;return i.xf===void 0?new Date(1e3*i.Sf).getTime():new Date(Date.UTC(i.xf.year,i.xf.month-1,i.xf.day)).getTime()}convertHorzItemToInternal(t){return Tn(i=t)?Es(i):me(i)?ji(i):ji(Ce(i));var i}updateFormatter(t){if(!this.yn)return;const i=t.dateFormat;this.yn.timeScale.timeVisible?this.Cf=new go({df:i,ff:this.yn.timeScale.secondsVisible?"%h:%m:%s":"%h:%m",pf:"   ",vf:t.locale}):this.Cf=new Rn(i,t.locale)}formatHorzItem(t){const i=t;return this.Cf.Cu(new Date(1e3*i.Sf))}formatTickmark(t,i){const e=(function(r,h,o){switch(r){case 0:case 10:return h?o?4:3:2;case 20:case 21:case 22:case 30:case 31:case 32:case 33:return h?3:2;case 50:return 2;case 60:return 1;case 70:return 0}})(t.weight,this.yn.timeScale.timeVisible,this.yn.timeScale.secondsVisible),s=this.yn.timeScale;if(s.tickMarkFormatter!==void 0){const r=s.tickMarkFormatter(t.originalTime,e,i.locale);if(r!==null)return r}return(function(r,h,o){const l={};switch(h){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 a=r.xf===void 0?new Date(1e3*r.Sf):new Date(Date.UTC(r.xf.year,r.xf.month-1,r.xf.day));return new Date(a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate(),a.getUTCHours(),a.getUTCMinutes(),a.getUTCSeconds(),a.getUTCMilliseconds()).toLocaleStr
1ing(o,l)})(t.time,e,i.locale)}maxTickMarkWeight(t){let i=t.reduce(ao,t[0]).weight;return i>30&&i<50&&(i=30),i}fillWeightsForPoints(t,i){(function(e,s=0){if(e.length===0)return;let r=s===0?null:e[s-1].time.Sf,h=r!==null?new Date(1e3*r):null,o=0;for(let l=s;l<e.length;++l){const a=e[l],c=new Date(1e3*a.time.Sf);h!==null&&(a.timeWeight=Cs(c,h)),o+=a.time.Sf-(r||a.time.Sf),r=a.time.Sf,h=c}if(s===0&&e.length>1){const l=Math.ceil(o/(e.length-1)),a=new Date(1e3*(e[0].time.Sf-l));e[0].timeWeight=Cs(new Date(1e3*e[0].time.Sf),a)}})(t,i)}static yf(t){return it({localization:{dateFormat:"dd MMM 'yy"}},t??{})}}const qt=typeof window<"u";function Is(){return!!qt&&window.navigator.userAgent.toLowerCase().indexOf("firefox")>-1}function Zi(){return!!qt&&/iPhone|iPad|iPod/.test(window.navigator.platform)}function vo(n,t){switch(n){case"custom":return t!==void 0?"custom-object":"series";case"price-line":return"custom-price-line";case"marker":return"series-marker";case"primitive":return"primitive";default:return"series"}}function pe(n){return n+n%2}function bo(n){qt&&window.chrome!==void 0&&n.addEventListener("mousedown",(t=>{if(t.button===1)return t.preventDefault(),!1}))}class Ti{constructor(t,i,e){this.kf=0,this.Pf=null,this.Tf={_t:Number.NEGATIVE_INFINITY,ut:Number.POSITIVE_INFINITY},this.Rf=0,this.Df=null,this.If={_t:Number.NEGATIVE_INFINITY,ut:Number.POSITIVE_INFINITY},this.Vf=null,this.Bf=!1,this.Ef=null,this.Af=null,this.Lf=!1,this.zf=!1,this.Of=!1,this.Nf=null,this.Ff=null,this.Wf=null,this.Hf=null,this.Uf=null,this.$f=null,this.jf=null,this.qf=0,this.Yf=!1,this.Kf=!1,this.Zf=!1,this.Gf=0,this.Xf=null,this.Jf=!Zi(),this.Qf=s=>{this.tp(s)},this.ip=s=>{if(this.np(s)){const r=this.sp(s);if(++this.Rf,this.Df&&this.Rf>1){const{ep:h}=this.rp(ot(s),this.If);h<30&&!this.Of&&this.hp(r,this.lp.ap),this.op()}}else{const r=this.sp(s);if(++this.kf,this.Pf&&this.kf>1){const{ep:h}=this.rp(ot(s),this.Tf);h<5&&!this.zf&&this._p(r,this.lp.up),this.cp()}}},this.dp=t,this.lp=i,this.yn=e,this.fp()}m(){this.Nf!==null&&(this.Nf(),this.Nf=null),this.Ff!==null&&(this.Ff(),this.Ff=null),this.Hf!==null&&(this.Hf(),this.Hf=null),this.Uf!==null&&(this.Uf(),this.Uf=null),this.$f!==null&&(this.$f(),this.$f=null),this.Wf!==null&&(this.Wf(),this.Wf=null),this.pp(),this.cp()}vp(t){this.Hf&&this.Hf();const i=this.mp.bind(this);if(this.Hf=()=>{this.dp.removeEventListener("mousemove",i)},this.dp.addEventListener("mousemove",i),this.np(t))return;const e=this.sp(t);this._p(e,this.lp.wp),this.Jf=!0}cp(){this.Pf!==null&&clearTimeout(this.Pf),this.kf=0,this.Pf=null,this.Tf={_t:Number.NEGATIVE_INFINITY,ut:Number.POSITIVE_INFINITY}}op(){this.Df!==null&&clearTimeout(this.Df),this.Rf=0,this.Df=null,this.If={_t:Number.NEGATIVE_INFINITY,ut:Number.POSITIVE_INFINITY}}mp(t){if(this.Zf||this.Af!==null||this.np(t))return;const i=this.sp(t);this._p(i,this.lp.Mp),this.Jf=!0}gp(t){const i=Gi(t.changedTouches,M(this.Xf));if(i===null||(this.Gf=ui(t),this.jf!==null)||this.Kf)return;this.Yf=!0;const e=this.rp(ot(i),M(this.Af)),{bp:s,Sp:r,ep:h}=e;
1if(this.Lf||!(h<5)){if(!this.Lf){const o=.5*s,l=r>=o&&!this.yn.xp(),a=o>r&&!this.yn.Cp();l||a||(this.Kf=!0),this.Lf=!0,this.Of=!0,this.pp(),this.op()}if(!this.Kf){const o=this.sp(t,i);this.hp(o,this.lp.yp),Nt(t)}}}kp(t){if(t.button!==0)return;const i=this.rp(ot(t),M(this.Ef)),{ep:e}=i;if(e>=5&&(this.zf=!0,this.cp()),this.zf){const s=this.sp(t);this._p(s,this.lp.Pp)}}rp(t,i){const e=Math.abs(i._t-t._t),s=Math.abs(i.ut-t.ut);return{bp:e,Sp:s,ep:e+s}}Tp(t){let i=Gi(t.changedTouches,M(this.Xf));if(i===null&&t.touches.length===0&&(i=t.changedTouches[0]),i===null)return;this.Xf=null,this.Gf=ui(t),this.pp(),this.Af=null,this.$f&&(this.$f(),this.$f=null);const e=this.sp(t,i);if(this.hp(e,this.lp.Rp),++this.Rf,this.Df&&this.Rf>1){const{ep:s}=this.rp(ot(i),this.If);s<30&&!this.Of&&this.hp(e,this.lp.ap),this.op()}else this.Of||(this.hp(e,this.lp.Dp),this.lp.Dp&&Nt(t));this.Rf===0&&Nt(t),t.touches.length===0&&this.Bf&&(this.Bf=!1,Nt(t))}tp(t){if(t.button!==0)return;const i=this.sp(t);if(this.Ef=null,this.Zf=!1,this.Uf&&(this.Uf(),this.Uf=null),Is()&&this.dp.ownerDocument.documentElement.removeEventListener("mouseleave",this.Qf),!this.np(t))if(this._p(i,this.lp.Ip),++this.kf,this.Pf&&this.kf>1){const{ep:e}=this.rp(ot(t),this.Tf);e<5&&!this.zf&&this._p(i,this.lp.up),this.cp()}else this.zf||this._p(i,this.lp.Vp)}pp(){this.Vf!==null&&(clearTimeout(this.Vf),this.Vf=null)}Bp(t){if(this.Xf!==null)return;const i=t.changedTouches[0];this.Xf=i.identifier,this.Gf=ui(t);const e=this.dp.ownerDocument.documentElement;this.Of=!1,this.Lf=!1,this.Kf=!1,this.Af=ot(i),this.$f&&(this.$f(),this.$f=null);{const r=this.gp.bind(this),h=this.Tp.bind(this);this.$f=()=>{e.removeEventListener("touchmove",r),e.removeEventListener("touchend",h)},e.addEventListener("touchmove",r,{passive:!1}),e.addEventListener("touchend",h,{passive:!1}),this.pp(),this.Vf=setTimeout(this.Ep.bind(this,t),240)}const s=this.sp(t,i);this.hp(s,this.lp.Ap),this.Df||(this.Rf=0,this.Df=setTimeout(this.op.bind(this),500),this.If=ot(i))}Lp(t){if(t.button!==0)return;const i=this.dp.ownerDocument.documentElement;Is()&&i.addEventListener("mouseleave",this.Qf),this.zf=!1,this.Ef=ot(t),this.Uf&&(this.Uf(),this.Uf=null);{const s=this.kp.bind(this),r=this.tp.bind(this);this.Uf=()=>{i.removeEventListener("mousemove",s),i.removeEventListener("mouseup",r)},i.addEventListener("mousemove",s),i.addEventListener("mouseup",r)}if(this.Zf=!0,this.np(t))return;const e=this.sp(t);this._p(e,this.lp.zp),this.Pf||(this.kf=0,this.Pf=setTimeout(this.cp.bind(this),500),this.Tf=ot(t))}fp(){this.dp.addEventListener("mouseenter",this.vp.bind(this)),this.dp.addEventListener("touchcancel",this.pp.bind(this));{const t=this.dp.ownerDocument,i=e=>{this.lp.Op&&(e.composed&&this.dp.contains(e.composedPath()[0])||e.target&&this.dp.contains(e.target)||this.lp.Op())};this.Ff=()=>{t.removeEventListener("touchstart",i)},this.Nf=()=>{t.removeEventListener("mousedown",i)},t.addEventListener("mousedown",i),t.addEventListener("touchstart",i,{passive:!0})}Zi()&&(this.Wf=()=>{this.dp.removeEventListener("dblclick",this.ip)},this.dp.addEventListener("dblclick",this.ip)),this.dp.addEventListener("mouseleave",this.Np.bind(this)),this.dp.addEventListener("touchstart",this.Bp.bind(this),{passive:!0}),bo(this.dp),this.dp.addEventListener("mousedown",this.Lp.bind(this)),this.Fp(),this.dp.addEventListener("touchmove",(()=>{}),{passive:!1})}Fp(){this.lp.Wp===void 0&&this.lp.Hp===void 0&&this.lp.Up===void 0||(this.dp.addEventListener("touchstart",(t=>this.$p(t.touches)),{passive:!0}),this.dp.addEventListener("touchmove",(t=>{if(t.touches.length===2&&this.jf!==null&&this.lp.Hp!==void 0){const i=Ls(t.touches[0],t.touches[1])/this.qf;this.lp.Hp(this.jf,i),Nt(t)}}),{passive:!1}),this.dp.addEventListener("touchend",(t=>{this.$p(t.touches)})))}$p(t){t.length===1&&(this.Yf=!1),t.length!==2||this.Yf||this.Bf?this.jp():this.qp(t)}qp(t){const i=this.dp.getBoundingClientRect()||{left:0,top:0};this.jf={_t:(t[0].clientX-i.left+(t[1].clientX-i.left))/2,ut:(t[0].clientY-i.top+(t[1].clientY-i.top))/2},this.qf=Ls(t[0],t[1]),this.lp.Wp!==void 0&&this.lp.Wp(),this.pp()}jp(){this.jf!==null&&(this.jf=null,this.lp.Up!==void 0&&this.lp.Up())}Np(t){if(this.Hf&&this.Hf(),this.np(t)||!this.Jf)return;const i=this.sp(t);this._p(i,this.lp.Yp),this.Jf=!Zi()}Ep(t){const i=Gi(t.touches,M(this.Xf));if(i===null)return;const e=this.sp(t,i);this.hp(e,this.lp.Kp),this.Of=!0,this.Bf=!0}np(t){return t.sourceCapabilities&&t.sourceCapabilities.firesTouchEvents!==void 0?t.sourceCapabilities.firesTouchEvents:ui(t)<this.Gf+500}hp(t,i){i&&i.call(this.lp,t)}_p(t,i){i&&i.call(this.lp,t)}sp(t,i){const e=i||t,s=this.dp.getBoundingClientRect()||{left:0,top:0};return{clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY,localX:e.clientX-s.left,localY:e.clientY-s.top,ctrlKey:t.ctrlKey,altKey:t.altKey,shiftKey:t.shiftKey,metaKey:t.metaKey,Zp:!t.type.startsWith("mouse")&&t.type!=="contextmenu"&&t.type!=="click",Gp:t.type,Xp:e.target,gu:t.view,Jp:()=>{t.type!=="touchstart"&&Nt(t)}}}}function Ls(n,t){const i=n.clientX-t.clientX,e=n.clientY-t.clientY;return Math.sqrt(i*i+e*e)}function Nt(n){n.cancelable&&n.preventDefault()}function ot(n){return{_t:n.pageX,ut:n.pageY}}function ui(n){return n.timeStamp||performance.now()}function Gi(n,t){for(let i=0;i<n.length;++i)if(n[i].identifier===t)return n[i];return null}class wo{constructor(t,i,e){this.Qp=null,this.tv=null,this.iv=!0,this.nv=null,this.sv=t,this.ev=t.rv()[i],this.hv=t.rv()[e],this.av=document.createElement("tr"),this.av.style.height="1px",this.lv=document.createElement("td"),this.lv.style.position="relative",this.lv.style.padding="0",this.lv.style.margin="0",this.lv.setAttribute("colspan","3"),this.ov(),this.av.appendChild(this.lv),this.iv=this.sv.N().layout.panes.enableResize,this.iv?this._v():(this.Qp=null,this.tv=null)}m(){this.tv!==null&&this.tv.m()}uv(){return this.av}cv(){return O({width:this.ev.cv().width,height:1})}dv(){return O({width:this.ev.dv().width,height:1*window.devicePixelRatio})}fv(t,i,e){const s=this.dv();t.fillStyle=this.sv.N().layout.panes.separatorColor,t.fillRect(i,e,s.width,s.height)}kt(){this.ov(),this.sv.N().layout.panes.enableResize!==this.iv&&(this.iv=this.sv.N().layout.panes.enableResize,this.iv?this._v():(this.Qp!==null&&(this.lv.removeChild(this.Qp.pv),this.lv.removeChild(this.Qp.vv),this.Qp=null),this.tv!==null&&(this.tv.m(),this.tv=null)))}_v(){const t=document.createElement("div"),i=t.style;i.position="fixed",i.display="none",i.zIndex="49",i.top="0",i.left="0",i.width="100%",i.height="100%",i.cursor="row-resize",this.lv.appendChild(t);const e=document.createElement("div"),s=e.style;s.position="absolute",s.zIndex="50",s.top="-4px",s.height="9px",s.width="100%",s.backgroundColor="",s.cursor="row-resize",this.lv.appendChild(e);const r={wp:this.mv.bind(this),Yp:this.wv.bind(this),zp:this.Mv.bind(this),Ap:this.Mv.bind(this),Pp:this.gv.bind(this),yp:this.gv.bind(this),Ip:this.bv.bind(this),Rp:this.bv.bind(this)};this.tv=new Ti(e,r,{xp:()=>!1,Cp:()=>!0}),this.Qp={vv:e,pv:t}}ov(){this.lv.style.background=this.sv.N().layout.panes.separatorColor}mv(t){this.Qp!==null&&(this.Qp.vv.style.backgroundColor=this.sv.N().layout.panes.separatorHoverColor)}wv(t){this.Qp!==null&&this.nv===null&&(this.Qp.vv.style.backgroundColor="")}Mv(t){if(this.Qp===null)return;const i=this.ev.Sv().z_()+this.hv.Sv().z_(),e=i/(this.ev.cv().height+this.hv.cv().height),s=30*e;i<=2*s||(this.nv={xv:t.pageY,Cv:this.ev.Sv().z_(),yv:i-s,kv:i,Pv:e,Tv:s},this.Qp.pv.style.display="block")}gv(t){const i=this.nv;if(i===null)return;const e=(t.pageY-i.xv)*i.Pv,s=At(i.Cv+e,i.Tv,i.yv);this.ev.Sv().O_(s),this.hv.Sv().O_(i.kv-s),this.sv.Qt().Pa()}bv(t){this.nv!==null&&this.Qp!==null&&(this.nv=null,this.Qp.pv.style.display="none")}}function Yi(n,t){return n.Rv-t.Rv}function Xi(n,t,i){const e=(n.Rv-t.Rv)/(n.wt-t.wt);return Math.sign(e)*Math.min(Math.abs(e),i)}class yo{constructor(t,i,e,s){this.Dv=null,this.Iv=null,this.Vv=null,this.Bv=null,this.Ev=null,this.Av=0,this.Lv=0,this.zv=t,this.Ov=i,this.Nv=e,this.ks=s}Fv(t,i){if(this.Dv!==null){if(this.Dv.wt===i)return void(this.Dv.Rv=t);if(Math.abs(this.Dv.Rv-t)<this.ks)return}this.Bv=this.Vv,this.Vv=this.Iv,this.Iv=this.Dv,this.Dv={wt:i,Rv:t}}me(t,i){if(this.Dv===null||this.Iv===null||i-this.Dv.wt>50)return;let e=0;const s=Xi(this.Dv,this.Iv,this.Ov),r=Yi(this.Dv,this.Iv),h=[s],o=[r];if(e+=r,this.Vv!==null){const a=Xi(this.Iv,this.Vv,this.Ov);if(Math.sign(a)===Math.sign(s)){const c=Yi(this.Iv,this.Vv);
1if(h.push(a),o.push(c),e+=c,this.Bv!==null){const u=Xi(this.Vv,this.Bv,this.Ov);if(Math.sign(u)===Math.sign(s)){const d=Yi(this.Vv,this.Bv);h.push(u),o.push(d),e+=d}}}}let l=0;for(let a=0;a<h.length;++a)l+=o[a]/e*h[a];Math.abs(l)<this.zv||(this.Ev={Rv:t,wt:i},this.Lv=l,this.Av=(function(a,c){const u=Math.log(c);return Math.log(1*u/-a)/u})(Math.abs(l),this.Nv))}qc(t){const i=M(this.Ev),e=t-i.wt;return i.Rv+this.Lv*(Math.pow(this.Nv,e)-1)/Math.log(this.Nv)}jc(t){return this.Ev===null||this.Wv(t)===this.Av}Wv(t){const i=t-M(this.Ev).wt;return Math.min(i,this.Av)}}class Mo{constructor(t,i){this.Hv=void 0,this.Uv=void 0,this.$v=void 0,this.vn=!1,this.jv=t,this.qv=i,this.Yv()}kt(){this.Yv()}Kv(){this.Hv&&this.jv.removeChild(this.Hv),this.Uv&&this.jv.removeChild(this.Uv),this.Hv=void 0,this.Uv=void 0}Zv(){return this.vn!==this.Gv()||this.$v!==this.Xv()}Xv(){return this.qv.Qt().Xi().J(this.qv.N().layout.textColor)>160?"dark":"light"}Gv(){return this.qv.N().layout.attributionLogo}Jv(){const t=new URL(location.href);return t.hostname?"&utm_source="+t.hostname+t.pathname:""}Yv(){this.Zv()&&(this.Kv(),this.vn=this.Gv(),this.vn&&(this.$v=this.Xv(),this.Uv=document.createElement("style"),this.Uv.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.Hv=document.createElement("a"),this.Hv.href=`https://www.tradingview.com/?utm_medium=lwc-link&utm_campaign=lwc-chart${this.Jv()}`,this.Hv.title="Charting by TradingView",this.Hv.id="tv-attr-logo",this.Hv.target="_blank",this.Hv.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" 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.Hv.toggleAttribute("data-dark",this.$v==="dark"),this.jv.appendChild(this.Uv),this.jv.appendChild(this.Hv)))}}function Ct(n,t){const i=M(n.ownerDocument).createElement("canvas");n.appendChild(i);const e=sh(i,{options:{allowResizeObserver:!0},transform:(s,r)=>({width:Math.max(s.width,r.width),height:Math.max(s.height,r.height)})});return e.resizeCanvasElement(t),e}function Et(n){n.width=1,n.height=1,n.getContext("2d")?.clearRect(0,0,1,1)}function ge(n,t,i,e){n.qh&&n.qh(t,i,e)}function pi(n,t,i,e){n.st(t,i,e)}function ve(n,t,i,e){const s=n(i,e);for(const r of s){const h=r.Tt(e);h!==null&&t(h)}}function Ji(n,t){return i=>(function(e){return e.Ft!==void 0})(i)?(i.Ft()?.cl()??"")!==t?[]:i.Ga?.(n)??[]:[]}function Ns(n,t,i,e){if(!n.length)return;let s=0;const r=n[0].$t(e,!0);let h=t===1?i/2-(n[0].Hi()-r/2):n[0].Hi()-r/2-i/2;h=Math.max(0,h);for(let o=1;o<n.length;o++){const l=n[o],a=n[o-1],c=a.$t(e,!1),u=l.Hi(),d=a.Hi();if(t===1?u>d-c:u<d+c){const m=d-c*t;l.Ui(m);const p=m-t*c/2;if((t===1?p<0:p>i)&&h>0){const b=t===1?-1-p:p-i,w=Math.min(b,h);for(let x=s;x<n.length;x++)n[x].Ui(n[x].Hi()+t*w);h-=w}}else s=o,h=t===1?d-c-u:u-(d+c)}}class Ps{constructor(t,i,e,s){this.Ki=null,this.Qv=null,this.tm=!1,this.im=new xi(200),this.nm=null,this.sm=0,this.rm=!1,this.hm=()=>{this.rm||this.yt.am().Qt().mr()},this.lm=()=>{this.rm||this.yt.am().Qt().mr()},this.yt=t,this.yn=i,this.ko=i.layout,this.wd=e,this.om=s==="left",this._m=Ji("normal",s),this.um=Ji("top",s),this.dm=Ji("bottom",s),this.lv=document.createElement("div"),this.lv.style.height="100%",this.lv.style.overflow="hidden",this.lv.style.width="25px",this.lv.style.left="0",this.lv.style.position="relative",this.fm=Ct(this.lv,O({width:16,height:16})),this.fm.subscribeSuggestedBitmapSizeChanged(this.hm);const r=this.fm.canvasElement;r.style.position="absolute",r.style.zIndex="1",r.style.left="0",r.style.top="0",this.pm=Ct(this.lv,O({width:16,height:16})),this.pm.subscribeSuggestedBitmapSizeChanged(this.lm);const h=this.pm.canvasElement;h.style.position="absolute",h.style.zIndex="2",h.style.left="0",h.style.top="0";const o={zp:this.Mv.bind(this),Ap:this.Mv.bind(this),Pp:this.gv.bind(this),yp:this.gv.bind(this),Op:this.vm.bind(this),Ip:this.bv.bind(this),Rp:this.bv.bind(this),up:this.wm.bind(this),ap:this.wm.bind(this),wp:this.Mm.bind(this),Yp:this.wv.bind(this)};this.tv=new Ti(this.pm.canvasElement,o,{xp:()=>!this.yn.handleScroll.vertTouchDrag,Cp:()=>!0})}m(){this.tv.m(),this.pm.unsubscribeSuggestedBitmapSizeChanged(this.lm),Et(this.pm.canvasElement),this.pm.dispose(),this.fm.unsubscribeSuggestedBitmapSizeChanged(this.hm),Et(this.fm.canvasElement),this.fm.dispose(),this.Ki!==null&&this.Ki.a_().u(this),this.Ki=null}uv(){return this.lv}k(){return this.ko.fontSize}gm(){const t=this.wd.N();return this.nm!==t.P&&(this.im.Os(),this.nm=t.P),t}bm(){if(this.Ki===null)return 0;let t=0;const i=this.gm(),e=M(this.fm.canvasElement.getContext("2d",{colorSpace:this.yt.am().N().layout.colorSpace}));e.save();const s=this.Ki.El();e.font=this.Sm(),s.length>0&&(t=Math.max(this.im.Ii(e,s[0].io),this.im.Ii(e,s[s.length-1].io)));const r=this.xm();for(let a=r.length;a--;){const c=this.im.Ii(e,r[a].ri());c>t&&(t=c)}const h=this.Ki.Lt();if(h!==null&&this.Qv!==null&&(o=this.yn.crosshair).mode!==2&&o.horzLine.visible&&o.horzLine.labelVisible){const a=this.Ki.Tn(1,h),c=this.Ki.Tn(this.Qv.height-2,h);
1t=Math.max(t,this.im.Ii(e,this.Ki.Ji(Math.floor(Math.min(a,c))+.11111111111111,h)),this.im.Ii(e,this.Ki.Ji(Math.ceil(Math.max(a,c))-.11111111111111,h)))}var o;e.restore();const l=t||34;return pe(Math.ceil(i.S+i.C+i.V+i.B+5+l))}Cm(t){this.Qv!==null&&xt(this.Qv,t)||(this.Qv=t,this.rm=!0,this.fm.resizeCanvasElement(t),this.pm.resizeCanvasElement(t),this.rm=!1,this.lv.style.width=`${t.width}px`,this.lv.style.height=`${t.height}px`)}ym(){return M(this.Qv).width}un(t){this.Ki!==t&&(this.Ki!==null&&this.Ki.a_().u(this),this.Ki=t,t.a_().i(this.po.bind(this),this))}Ft(){return this.Ki}Os(){const t=this.yt.Sv();this.yt.am().Qt().eu(t,M(this.Ft()))}km(t){if(this.Qv===null)return;const i={colorSpace:this.yt.am().N().layout.colorSpace};if(t!==1){this.Pm(),this.fm.applySuggestedBitmapSize();const s=St(this.fm,i);s!==null&&(s.useBitmapCoordinateSpace((r=>{this.Tm(r),this.Rm(r)})),this.yt.Dm(s,this.dm),this.Im(s),this.yt.Dm(s,this._m),this.Vm(s))}this.pm.applySuggestedBitmapSize();const e=St(this.pm,i);e!==null&&(e.useBitmapCoordinateSpace((({context:s,bitmapSize:r})=>{s.clearRect(0,0,r.width,r.height)})),this.Bm(e),this.yt.Dm(e,this.um))}dv(){return this.fm.bitmapSize}fv(t,i,e,s){const r=this.dv();if(r.width>0&&r.height>0&&(t.drawImage(this.fm.canvasElement,i,e),s)){const h=this.pm.canvasElement;t.drawImage(h,i,e)}}kt(){this.Ki?.El()}Mv(t){if(this.Ki===null||this.Ki.Gi()||!this.yn.handleScale.axisPressedMouseMove.price)return;const i=this.yt.am().Qt(),e=this.yt.Sv();this.tm=!0,i.G_(e,this.Ki,t.localY)}gv(t){if(this.Ki===null||!this.yn.handleScale.axisPressedMouseMove.price)return;const i=this.yt.am().Qt(),e=this.yt.Sv(),s=this.Ki;i.X_(e,s,t.localY)}vm(){if(this.Ki===null||!this.yn.handleScale.axisPressedMouseMove.price)return;const t=this.yt.am().Qt(),i=this.yt.Sv(),e=this.Ki;this.tm&&(this.tm=!1,t.J_(i,e))}bv(t){if(this.Ki===null||!this.yn.handleScale.axisPressedMouseMove.price)return;const i=this.yt.am().Qt(),e=this.yt.Sv();this.tm=!1,i.J_(e,this.Ki)}wm(t){this.yn.handleScale.axisDoubleClickReset.price&&this.Os()}Mm(t){this.Ki!==null&&(!this.yt.am().Qt().N().handleScale.axisPressedMouseMove.price||this.Ki.je()||this.Ki.Lo()||this.Em(1))}wv(t){this.Em(0)}xm(){const t=[],i=this.Ki===null?void 0:this.Ki;return(e=>{for(let s=0;s<e.length;++s){const r=e[s].qn(this.yt.Sv(),i);for(let h=0;h<r.length;h++)t.push(r[h])}})(this.yt.Sv().Dt()),t}Tm({context:t,bitmapSize:i}){const{width:e,height:s}=i,r=this.yt.Sv().Qt(),h=r.$(),o=r.ef();h===o?zi(t,0,0,e,s,h):yn(t,0,0,e,s,h,o)}Rm({context:t,bitmapSize:i,horizontalPixelRatio:e}){if(this.Qv===null||this.Ki===null||!this.Ki.N().borderVisible)return;t.fillStyle=this.Ki.N().borderColor;const s=Math.max(1,Math.floor(this.gm().S*e));let r;r=this.om?i.width-s:0,t.fillRect(r,0,s,i.height)}Im(t){if(this.Qv===null||this.Ki===null)return;const i=this.Ki.El(),e=this.Ki.N(),s=this.gm(),r=this.om?this.Qv.width-s.C:0;e.borderVisible&&e.ticksVisible&&t.useBitmapCoordinateSpace((({context:h,horizontalPixelRatio:o,verticalPixelRatio:l})=>{h.fillStyle=e.borderColor;const a=Math.max(1,Math.floor(l)),c=Math.floor(.5*l),u=Math.round(s.C*o);h.beginPath();for(const d of i)h.rect(Math.floor(r*o),Math.round(d.Rl*l)-c,u,a);h.fill()})),t.useMediaCoordinateSpace((({context:h})=>{h.font=this.Sm(),h.fillStyle=e.textColor??this.ko.textColor,h.textAlign=this.om?"right":"left",h.textBaseline="middle";const o=this.om?Math.round(r-s.V):Math.round(r+s.C+s.V),l=i.map((a=>this.im.Di(h,a.io)));for(let a=i.length;a--;){const c=i[a];h.fillText(c.io,o,c.Rl+l[a])}}))}Pm(){if(this.Qv===null||this.Ki===null)return;let t=this.Qv.height/2;const i=[],e=this.Ki.Dt().slice(),s=this.yt.Sv(),r=this.gm();this.Ki===s.Gs()&&this.yt.Sv().Dt().forEach((l=>{s.Zs(l)&&e.push(l)}));const h=this.Ki.Cl()[0],o=this.Ki;e.forEach((l=>{const a=l.qn(s,o);a.forEach((c=>{c.$i()&&c.Wi()===null&&(c.Ui(null),i.push(c))})),h===l&&a.length>0&&(t=a[0].Ei())})),this.Ki.N().alignLabels&&this.Am(i,r,t)}Am(t,i,e){if(this.Qv===null)return;const s=t.filter((h=>h.Ei()<=e)),r=t.filter((h=>h.Ei()>e));s.sort(((h,o)=>o.Ei()-h.Ei())),s.length&&r.length&&r.push(s[0]),r.sort(((h,o)=>h.Ei()-o.Ei()));for(const h of t){const o=Math.floor(h.$t(i)/2),l=h.Ei();l>
1-o&&l<o&&h.Ui(o),l>this.Qv.height-o&&l<this.Qv.height+o&&h.Ui(this.Qv.height-o)}Ns(s,1,this.Qv.height,i),Ns(r,-1,this.Qv.height,i)}Vm(t){if(this.Qv===null)return;const i=this.xm(),e=this.gm(),s=this.om?"right":"left";i.forEach((r=>{r.ji()&&r.Tt(M(this.Ki)).st(t,e,this.im,s)}))}Bm(t){if(this.Qv===null||this.Ki===null)return;const i=this.yt.am().Qt(),e=[],s=this.yt.Sv(),r=i.Rd().qn(s,this.Ki);r.length&&e.push(r);const h=this.gm(),o=this.om?"right":"left";e.forEach((l=>{l.forEach((a=>{a.Tt(M(this.Ki)).st(t,h,this.im,o)}))}))}Em(t){this.lv.style.cursor=t===1?"ns-resize":"default"}po(){const t=this.bm();this.sm<t&&this.yt.am().Qt().Pa(),this.sm=t}Sm(){return Mi(this.ko.fontSize,this.ko.fontFamily)}}function xo(n,t){return n.Ka?.(t)??[]}function Ts(n,t){return n.jn?.(t)??[]}function Rs(n,t){return n.cn?.(t)??[]}function So(n,t){return n.ja?.(t)??[]}class Ee{constructor(t,i){this.Qv=O({width:0,height:0}),this.Lm=null,this.zm=null,this.Om=null,this.Nm=null,this.Fm=!1,this.Wm=new B,this.Hm=new B,this.Um=0,this.$m=!1,this.jm=null,this.qm=!1,this.Ym=null,this.Km=null,this.rm=!1,this.hm=()=>{this.rm||this.Zm===null||this.sn().mr()},this.lm=()=>{this.rm||this.Zm===null||this.sn().mr()},this.qv=t,this.Zm=i,this.Zm.fu().i(this.Gm.bind(this),this,!0),this.Xm=document.createElement("td"),this.Xm.style.padding="0",this.Xm.style.position="relative";const e=document.createElement("div");e.style.width="100%",e.style.height="100%",e.style.position="relative",e.style.overflow="hidden",this.Jm=document.createElement("td"),this.Jm.style.padding="0",this.Qm=document.createElement("td"),this.Qm.style.padding="0",this.Xm.appendChild(e),this.fm=Ct(e,O({width:16,height:16})),this.fm.subscribeSuggestedBitmapSizeChanged(this.hm);const s=this.fm.canvasElement;s.style.position="absolute",s.style.zIndex="1",s.style.left="0",s.style.top="0",this.pm=Ct(e,O({width:16,height:16})),this.pm.subscribeSuggestedBitmapSizeChanged(this.lm);const r=this.pm.canvasElement;r.style.position="absolute",r.style.zIndex="2",r.style.left="0",r.style.top="0",this.av=document.createElement("tr"),this.av.appendChild(this.Jm),this.av.appendChild(this.Xm),this.av.appendChild(this.Qm),this.tw(),this.tv=new Ti(this.pm.canvasElement,this,{xp:()=>this.jm===null&&!this.qv.N().handleScroll.vertTouchDrag,Cp:()=>this.jm===null&&!this.qv.N().handleScroll.horzTouchDrag})}m(){this.Lm!==null&&this.Lm.m(),this.zm!==null&&this.zm.m(),this.Om=null,this.pm.unsubscribeSuggestedBitmapSizeChanged(this.lm),Et(this.pm.canvasElement),this.pm.dispose(),this.fm.unsubscribeSuggestedBitmapSizeChanged(this.hm),Et(this.fm.canvasElement),this.fm.dispose(),this.Zm!==null&&(this.Zm.fu().u(this),this.Zm.m()),this.tv.m()}Sv(){return M(this.Zm)}iw(t){this.Zm!==null&&this.Zm.fu().u(this),this.Zm=t,this.Zm!==null&&this.Zm.fu().i(Ee.prototype.Gm.bind(this),this,!0),this.tw(),this.qv.rv().indexOf(this)===this.qv.rv().length-1?(this.Om=this.Om??new Mo(this.Xm,this.qv),this.Om.kt()):(this.Om?.Kv(),this.Om=null)}am(){return this.qv}uv(){return this.av}tw(){if(this.Zm!==null&&(this.nw(),this.sn().Jn().length!==0)){if(this.Lm!==null){const t=this.Zm.K_();this.Lm.un(M(t))}if(this.zm!==null){const t=this.Zm.Z_();this.zm.un(M(t))}}}sw(){this.Lm!==null&&this.Lm.kt(),this.zm!==null&&this.zm.kt()}z_(){return this.Zm!==null?this.Zm.z_():0}O_(t){this.Zm&&this.Zm.O_(t)}wp(t){if(!this.Zm)return;this.ew();const i=t.localX,e=t.localY;this.rw(i,e,t)}zp(t){this.ew(),this.hw(),this.rw(t.localX,t.localY,t)}Mp(t){if(!this.Zm)return;this.ew();const i=t.localX,e=t.localY;this.rw(i,e,t)}Vp(t){this.Zm!==null&&(this.ew(),this.rw(t.localX,t.localY,t),this.aw(t))}up(t){this.Zm!==null&&this.lw(this.Hm,t)}ap(t){this.up(t)}Pp(t){this.ew(),this.ow(t),this.rw(t.localX,t.localY,t)}Ip(t){this.Zm!==null&&(this.ew(),this.$m=!1,this._w(t))}Dp(t){this.Zm!==null&&this.aw(t)}Kp(t){if(this.$m=!0,this.jm===null){const i={x:t.localX,y:t.localY};this.uw(i,i,t)}}Yp(t){this.Zm!==null&&(this.ew(),this.Zm.Qt().kd(null),this.cw())}dw(){return this.Wm}fw(){return this.Hm}Wp(){this.Um=1,this.sn().cs()}Hp(t,i){if(!this.qv.N().handleScale.pinch)return;const e=5*(i-this.Um);this.Um=i,this.sn().Od(t._t,e)}Ap(t){this.$m=!1,this.qm=this.jm!==null,this.hw();const i=this.sn().Rd();this.jm!==null&&i.It()&&(this.Ym={x:i.ni(),y:i.si()},this.jm={x:t.localX,y:t.localY})}yp(t){if(this.Zm===null)return;const i=t.localX,e=t.localY;if(this.jm===null)this.ow(t);else{this.qm=!1;const s=M(this.Ym),r=s.x+(i-this.jm.x),h=s.y+(e-this.jm.y);this.rw(r,h,t)}}Rp(t){this.am().N().trackingMode.exitMode===0&&(this.qm=!0),this.pw(),this._w(t)}Qs(t,i){const e=this.Zm;return e===null?null:Nn(e,t,i)}mw(t,i){M(i==="left"?this.Lm:this.zm).Cm(O({width:t,height:this.Qv.height}))}cv(){return this.Qv}Cm(t){xt(this.Qv,t)||(this.Qv=t,this.rm=!0,this.fm.resizeCanvasElement(t),this.pm.resizeCanvasElement(t),this.rm=!1,this.Xm.style.width=t.width+"px",this.Xm.style.height=t.height+"px")}ww(){const t=M(this.Zm);t.q_(t.K_()),t.q_(t.Z_());for(const i of t.Cl())if(t.Zs(i)){const e=i.Ft();e!==null&&t.q_(e),i.Nn()}for(const i of t.vu())i.Nn()}dv(){return this.fm.bitmapSize}fv(t,i,e,s){const r=this.dv();if(r.width>0&&r.height>0&&(t.drawImage(this.fm.canvasElement,i,e),s)){const h=this.pm.canvasElement;t!==null&&t.drawImage(h,i,e)}}km(t){if(t===0||this.Zm===null)return;t>1&&this.ww(),this.Lm!==null&&this.Lm.km(t),this.zm!==null&&this.zm.km(t);const i={colorSpace:this.qv.N().layout.colorSpace};if(t!==1){this.fm.applySuggestedBitmapSize();const s=St(this.fm,i);s!==null&&(s.useBitmapCoordinateSpace((r=>{this.Tm(r)})),this.Zm&&(this.Mw(s,xo),this.gw(s),this.Mw(s,Ts),this.Mw(s,Rs)))}this.pm.applySuggestedBitmapSize();const e=St(this.pm,i);e!==null&&(e.useBitmapCoordinateSpace((({context:s,bitmapSize:r})=>{s.clearRect(0,0,r.width,r.height)})),this.bw(e),this.Mw(e,So),this.Mw(e,Rs))}Sw(){return this.Lm}xw(){return this.zm}Dm(t,i){this.Mw(t,i)}Gm(){this.Zm!==null&&this.Zm.fu().u(this),this.Zm=null}aw(t){this.lw(this.Wm,t)}lw(t,i){const e=i.localX,s=i.localY;t.v()&&t.p(this.sn().Et().Rc(e),{x:e,y:s},i)}Tm({context:t,bitmapSize:i}){const{width:e,height:s}=i,r=this.sn(),h=r.$(),o=r.ef();h===o?zi(t,0,0,e,s,o):yn(t,0,0,e,s,h,o)}gw(t){const i=M(this.Zm),e=i.pu().wr().Tt(i);e!==null&&e.st(t,!1)}bw(t){this.Cw(t,Ts,pi,this.sn().Rd())}Mw(t,i){const e=M(this.Zm),s=e.au(),r=e.vu();for(const h of r)this.Cw(t,i,ge,h);for(const h of s)this.Cw(t,i,ge,h);for(const h of r)this.Cw(t,i,pi,h);for(const h of s)this.Cw(t,i,pi,h)}Cw(t,i,e,s){const r=M(this.Zm),h=r.Qt().ou(),o=h!==null&&h.lu===s,l=h!==null&&o&&h.wu!==void 0?h.wu.ie:void 0;ve(i,(a=>e(a,t,o,l)),s,r)}nw(){if(this.Zm===null)return;const t=this.qv,i=this.Zm.K_().N().visible,e=this.Zm.Z_().N().visible;i||this.Lm===null||(this.Jm.removeChild(this.Lm.uv()),this.Lm.m(),this.Lm=null),e||this.zm===null||(this.Qm.removeChild(this.zm.uv()),this.zm.m(),this.zm=null);const s=t.Qt().Zd();i&&this.Lm===null&&(this.Lm=new Ps(this,t.N(),s,"left"),this.Jm.appendChild(this.Lm.uv())),e&&this.zm===null&&(this.zm=new Ps(this,t.N(),s,"right"),this.Qm.appendChild(this.zm.uv()))}yw(t){return t.Zp&&this.$m||this.jm!==null}rw(t,i,e){t=Math.max(0,Math.min(t,this.Qv.width-1)),i=Math.max(0,Math.min(i,this.Qv.height-1)),this.sn().jd(t,i,e,M(this.Zm))}cw(){this.sn().Yd()}pw(){this.qm&&(this.jm=null,this.cw())}uw(t,i,e){this.jm=t,this.qm=!1,this.rw(i.x,i.y,e);const s=this.sn().Rd();this.Ym={x:s.ni(),y:s.si()}}sn(){return this.qv.Qt()}_w(t){if(!this.Fm)return;const i=this.sn(),e=this.Sv();if(i.iu(e,e.Pn()),this.Nm=null,this.Fm=!1,i.Hd(),this.Km!==null){const s=performance.now(),r=i.Et();this.Km.me(r.Ac(),s),this.Km.jc(s)||i.ps(this.Km)}}ew(){this.jm=null}hw(){if(this.Zm){if(this.sn().cs(),document.activeElement!==document.body&&document.activeElement!==document.documentElement)M(document.activeElement).blur();else{const t=document.getSelection();t!==null&&t.removeAllRanges()}!this.Zm.Pn().Gi()&&this.sn().Et().Gi()}}ow(t){if(this.Zm===null)return;const i=this.sn(),e=i.Et();if(e.Gi())return;const s=this.qv.N(),r=s.handleScroll,h=s.kineticScroll;if((!r.pressedMouseMove||t.Zp)&&(!r.horzTouchDrag&&!r.vertTouchDrag||!t.Zp))return;const o=this.Zm.Pn(),l=performance.now();if(this.Nm!==null||this.yw(t)||(this.Nm={x:t.clientX,y:t.clientY,Sf:l,kw:t.localX,Pw:t.localY}),this.Nm!==null&&!this.Fm&&(this.Nm.x!==t.clientX||this.Nm.y!==t.clientY)){if(t.Zp&&h.touch||!t.Zp&&h.mouse){const a=e.fl();this.Km=new yo(.2/a,7/a,.997,15/a),this.Km.Fv(e.Ac(),this.Nm.Sf)}else this.Km=null;o.Gi()||i.Q_(this.Zm,o,t.localY),i.Fd(t.localX),this.Fm=!0}this.Fm&&(o.Gi()||i.tu(this.Zm,o,t.localY),i.Wd(t.localX),this.Km!==null&&this.Km.Fv(e.Ac(),l))}}class As{constructor(t,i,e,s,r){this.xt=!0,this.Qv=O({width:0,height:0}),this.hm=()=>this.km(3),this.om=t==="left",this.wd=e.Zd,this.yn=i,this.Tw=s,this.Rw=r,this.lv=document.createElement("div"),this.lv.style.width="25px",this.lv.style.height="100%",this.lv.style.overflow="hidden",this.fm=Ct(this.lv,O({width:16,height:16})),this.fm.subscribeSuggestedBitmapSizeChanged(this.hm)}m(){this.fm.unsubscribeSuggestedBitmapSizeChanged(this.hm),Et(this.fm.canvasElement),this.fm.dispose()}uv(){return this.lv}cv(){return this.Qv}Cm(t){xt(this.Qv,t)||(this.Qv=t,this.fm.resizeCanvasElement(t),this.lv.style.width=`${t.width}px`,this.lv.style.height=`${t.height}px`,this.xt=!0)}km(t){if(t<3&&!this.xt||this.Qv.width===0||this.Qv.height===0)return;this.xt=!1,this.fm.applySuggestedBitmapSize();const i=St(this.fm,{colorSpace:this.yn.layout.colorSpace});i!==null&&i.useBitmapCoordinateSpace((e=>{this.Tm(e),this.Rm(e)}))}dv(){return this.fm.bitmapSize}fv(t,i,e){const s=this.dv();s.width>0&&s.height>0&&t.drawImage(this.fm.canvasElement,i,e)}Rm({context:t,bitmapSize:i,horizontalPixelRatio:e,verticalPixelRatio:s}){if(!this.Tw())return;t.fillStyle=this.yn.timeScale.borderColor;const r=Math.floor(this.wd.N().S*e),h=Math.floor(this.wd.N().S*s),o=this.om?i.width-r:0;
vendor: 5,067 bytes, line 1
1t.fillRect(o,0,r,h)}Tm({context:t,bitmapSize:i}){zi(t,0,0,i.width,i.height,this.Rw())}}function ke(n){return t=>t.Xa?.(n)??[]}const _o=ke("normal"),Co=ke("top"),Eo=ke("bottom");class ko{constructor(t,i){this.Dw=null,this.Iw=null,this.M=null,this.Vw=!1,this.Qv=O({width:0,height:0}),this.Bw=new B,this.im=new xi(5),this.rm=!1,this.hm=()=>{this.rm||this.qv.Qt().mr()},this.lm=()=>{this.rm||this.qv.Qt().mr()},this.qv=t,this.xu=i,this.yn=t.N().layout,this.Hv=document.createElement("tr"),this.Ew=document.createElement("td"),this.Ew.style.padding="0",this.Aw=document.createElement("td"),this.Aw.style.padding="0",this.lv=document.createElement("td"),this.lv.style.height="25px",this.lv.style.padding="0",this.Lw=document.createElement("div"),this.Lw.style.width="100%",this.Lw.style.height="100%",this.Lw.style.position="relative",this.Lw.style.overflow="hidden",this.lv.appendChild(this.Lw),this.fm=Ct(this.Lw,O({width:16,height:16})),this.fm.subscribeSuggestedBitmapSizeChanged(this.hm);const e=this.fm.canvasElement;e.style.position="absolute",e.style.zIndex="1",e.style.left="0",e.style.top="0",this.pm=Ct(this.Lw,O({width:16,height:16})),this.pm.subscribeSuggestedBitmapSizeChanged(this.lm);const s=this.pm.canvasElement;s.style.position="absolute",s.style.zIndex="2",s.style.left="0",s.style.top="0",this.Hv.appendChild(this.Ew),this.Hv.appendChild(this.lv),this.Hv.appendChild(this.Aw),this.zw(),this.qv.Qt().L_().i(this.zw.bind(this),this),this.tv=new Ti(this.pm.canvasElement,this,{xp:()=>!0,Cp:()=>!this.qv.N().handleScroll.horzTouchDrag})}m(){this.tv.m(),this.Dw!==null&&this.Dw.m(),this.Iw!==null&&this.Iw.m(),this.pm.unsubscribeSuggestedBitmapSizeChanged(this.lm),Et(this.pm.canvasElement),this.pm.dispose(),this.fm.unsubscribeSuggestedBitmapSizeChanged(this.hm),Et(this.fm.canvasElement),this.fm.dispose()}uv(){return this.Hv}Ow(){return this.Dw}Nw(){return this.Iw}zp(t){if(this.Vw)return;this.Vw=!0;const i=this.qv.Qt();!i.Et().Gi()&&this.qv.N().handleScale.axisPressedMouseMove.time&&i.zd(t.localX)}Ap(t){this.zp(t)}Op(){const t=this.qv.Qt();!t.Et().Gi()&&this.Vw&&(this.Vw=!1,this.qv.N().handleScale.axisPressedMouseMove.time&&t.$d())}Pp(t){const i=this.qv.Qt();!i.Et().Gi()&&this.qv.N().handleScale.axisPressedMouseMove.time&&i.Ud(t.localX)}yp(t){this.Pp(t)}Ip(){this.Vw=!1;const t=this.qv.Qt();t.Et().Gi()&&!this.qv.N().handleScale.axisPressedMouseMove.time||t.$d()}Rp(){this.Ip()}up(){this.qv.N().handleScale.axisDoubleClickReset.time&&this.qv.Qt().ws()}ap(){this.up()}wp(){this.qv.Qt().N().handleScale.axisPressedMouseMove.time&&this.Em(1)}Yp(){this.Em(0)}cv(){return this.Qv}Fw(){return this.Bw}Ww(t,i,e){xt(this.Qv,t)||(this.Qv=t,this.rm=!0,this.fm.resizeCanvasElement(t),this.pm.resizeCanvasElement(t),this.rm=!1,this.lv.style.width=`${t.width}px`,this.lv.style.height=`${t.height}px`,this.Bw.p(t)),this.Dw!==null&&this.Dw.Cm(O({width:i,height:t.height})),this.Iw!==null&&this.Iw.Cm(O({width:e,height:t.height}))}Hw(){const t=this.Uw();return Math.ceil(t.S+t.C+t.k+t.A+t.I+t.$w)}kt(){this.qv.Qt().Et().El()}dv(){return this.fm.bitmapSize}fv(t,i,e,s){const r=this.dv();if(r.width>0&&r.height>0&&(t.drawImage(this.fm.canvasElement,i,e),s)){const h=this.pm.canvasElement;t.drawImage(h,i,e)}}km(t){if(t===0)return;const i={colorSpace:this.yn.colorSpace};if(t!==1){this.fm.applySuggestedBitmapSize();const s=St(this.fm,i);s!==null&&(s.useBitmapCoordinateSpace((r=>{this.Tm(r),this.Rm(r),this.jw(s,Eo)})),this.Im(s),this.jw(s,_o)),this.Dw!==null&&this.Dw.km(t),this.Iw!==null&&this.Iw.km(t)}this.pm.applySuggestedBitmapSize();const e=St(this.pm,i);e!==null&&(e.useBitmapCoordinateSpace((({context:s,bitmapSize:r})=>{s.clearRect(0,0,r.width,r.height)})),this.qw([...this.qv.Qt().Jn(),this.qv.Qt().Rd()],e),this.jw(e,Co))}jw(t,i){const e=this.qv.Qt().Jn();for(const s of e)ve(i,(r=>ge(r,t,!1,void 0)),s,void 0);for(const s of e)ve(i,(r=>pi(r,t,!1,void 0)),s,void 0)}Tm({context:t,bitmapSize:i}){zi(t,0,0,i.width,i.height,this.qv.Qt().ef())}Rm({context:t,bitmapSize:i,verticalPixelRatio:e}){if(this.qv.N().timeScale.borderVisible){t.fillStyle=this.Yw();const s=Math.max(1,Math.floor(this.Uw().S*e));t.fillRect(0,0,i.width,s)}}Im(t){const i=this.qv.Qt().Et(),e=i.El();if(!e||e.length===0)return;const s=this.xu.maxTickMarkWeight(e),r=this.Uw(),h=i.N();h.borderVisible&&h.ticksVisible&&t.useBitmapCoordinateSpace((({context:o,horizontalPixelRatio:l,verticalPixelRatio:a})=>{o.strokeStyle=this.Yw(),o.fillStyle=this.Yw();const c=Math.max(1,Math.floor(l)),u=Math.floor(.5*l);o.beginPath();const d=Math.round(r.C*a);for(let m=e.length;m--;){const p=Math.round(e[m].coord*l);o.rect(p-u,0,c,d)}o.fill()})),t.useMediaCoordinateSpace((({context:o})=>{const l=r.S+r.C+r.A+r.k/2;o.textAlign="center",o.textBaseline="middle",o.fillStyle=this.H(),o.font=this.Sm();for(const a of e)if(a.weight<s){const c=a.needAlignCoordinate?this.Kw(o,a.coord,a.label):a.coord;o.fillText(a.label,c,l)}this.qv.N().timeScale.allowBoldLabels&&(o.font=this.Zw());for(const a of e)if(a.weight>=s){const c=a.needAlignCoordinate?this.Kw(o,a.coord,a.label):a.coord;o.fillText(a.label,c,l)}}
1))}Kw(t,i,e){const s=this.im.Ii(t,e),r=s/2,h=Math.floor(i-r)+.5;return h<0?i+=Math.abs(0-h):h+s>this.Qv.width&&(i-=Math.abs(this.Qv.width-(h+s))),i}qw(t,i){const e=this.Uw();for(const s of t)for(const r of s.dn())r.Tt().st(i,e)}Yw(){return this.qv.N().timeScale.borderColor}H(){return this.yn.textColor}F(){return this.yn.fontSize}Sm(){return Mi(this.F(),this.yn.fontFamily)}Zw(){return Mi(this.F(),this.yn.fontFamily,"bold")}Uw(){this.M===null&&(this.M={S:1,L:NaN,A:NaN,I:NaN,tn:NaN,C:5,k:NaN,P:"",Qi:new xi,$w:0});const t=this.M,i=this.Sm();if(t.P!==i){const e=this.F();t.k=e,t.P=i,t.A=3*e/12,t.I=3*e/12,t.tn=9*e/12,t.L=0,t.$w=4*e/12,t.Qi.Os()}return this.M}Em(t){this.lv.style.cursor=t===1?"ew-resize":"default"}zw(){const t=this.qv.Qt(),i=t.N();i.leftPriceScale.visible||this.Dw===null||(this.Ew.removeChild(this.Dw.uv()),this.Dw.m(),this.Dw=null),i.rightPriceScale.visible||this.Iw===null||(this.Aw.removeChild(this.Iw.uv()),this.Iw.m(),this.Iw=null);const e={Zd:this.qv.Qt().Zd()},s=()=>i.leftPriceScale.borderVisible&&t.Et().N().borderVisible,r=()=>t.ef();i.leftPriceScale.visible&&this.Dw===null&&(this.Dw=new As("left",i,e,s,r),this.Ew.appendChild(this.Dw.uv())),i.rightPriceScale.visible&&this.Iw===null&&(this.Iw=new As("right",i,e,s,r),this.Aw.appendChild(this.Iw.uv()))}}const zo=!!qt&&!!navigator.userAgentData&&navigator.userAgentData.brands.some((n=>n.brand.includes("Chromium")))&&!!qt&&(navigator?.userAgentData?.platform?navigator.userAgentData.platform==="Windows":navigator.userAgent.toLowerCase().indexOf("win")>=0);class Io{constructor(t,i,e){var s;this.Gw=[],this.Xw=[],this.Jw=0,this.ho=0,this.C_=0,this.Qw=0,this.tM=0,this.iM=null,this.nM=!1,this.Wm=new B,this.Hm=new B,this.pd=new B,this.sM=null,this.eM=null,this.jv=t,this.yn=i,this.xu=e,this.Hv=document.createElement("div"),this.Hv.classList.add("tv-lightweight-charts"),this.Hv.style.overflow="hidden",this.Hv.style.direction="ltr",this.Hv.style.width="100%",this.Hv.style.height="100%",(s=this.Hv).style.userSelect="none",s.style.webkitUserSelect="none",s.style.msUserSelect="none",s.style.MozUserSelect="none",s.style.webkitTapHighlightColor="transparent",this.rM=document.createElement("table"),this.rM.setAttribute("cellspacing","0"),this.Hv.appendChild(this.rM),this.hM=this.aM.bind(this),te(this.yn)&&this.lM(!0),this.sn=new uo(this.md.bind(this),this.yn,e),this.Qt().Dd().i(this.oM.bind(this),this),this._M=new ko(this,this.xu),this.rM.appendChild(this._M.uv());const r=i.autoSize&&this.uM();let h=this.yn.width,o=this.yn.height;if(r||h===0||o===0){const l=t.getBoundingClientRect();h=h||l.width,o=o||l.height}this.cM(h,o),this.dM(),t.appendChild(this.Hv),this.fM(),this.sn.Et().Zc().i(this.sn.Pa.bind(this.sn),this),this.sn.L_().i(this.sn.Pa.bind(this.sn),this)}Qt(){return this.sn}N(){return this.yn}rv(){return this.Gw}pM(){return this._M}m(){this.lM(!1),this.Jw!==0&&window.cancelAnimationFrame(this.Jw),this.sn.Dd().u(this),this.sn.Et().Zc().u(this),this.sn.L_().u(this),this.sn.m();for(const t of this.Gw)this.rM.removeChild(t.uv()),t.dw().u(this),t.fw().u(this),t.m();this.Gw=[];for(const t of this.Xw)this.vM(t);this.Xw=[],M(this._M).m(),this.Hv.parentElement!==null&&this.Hv.parentElement.removeChild(this.Hv),this.pd.m(),this.Wm.m(),this.Hm.m(),this.mM()}cM(t,i,e=!1){if(this.ho===i&&this.C_===t)return;const s=(function(o){const l=Math.floor(o.width),a=Math.floor(o.height);return O({width:l-l%2,height:a-a%2})})(O({width:t,height:i}));this.ho=s.height,this.C_=s.width;const r=this.ho+"px",h=this.C_+"px";if(this.wM()||(M(this.Hv).style.height=r,M(this.Hv).style.width=h),this.rM.style.height=r,this.rM.style.width=h,e){this.Jw!==0&&(window.cancelAnimationFrame(this.Jw),this.Jw=0),this.nM=!1;const o=K.ys();this.iM!==null&&(o.Ss(this.iM),this.iM=null),this.MM(o,performance.now())}else this.sn.Pa()}km(t){t===void 0&&(t=K.ys());for(let i=0;i<this.Gw.length;i++)this.Gw[i].km(t._s(i).rs);this.yn.timeScale.visible&&this._M.km(t.ls())}vr(t){const i=te(this.yn);this.sn.vr(t);const e=te(this.yn);e!==i&&this.lM(e),t.layout?.panes&&this.gM(),this.fM(),this.bM(t)}dw(){return this.Wm}fw(){return this.Hm}Dd(){return this.pd}SM(t=!1){this.iM!==null&&(this.MM(this.iM,performance.now()),this.iM=null);const i=this.xM(null),e=document.createElement("canvas");e.width=i.width,e.height=i.height;const s=M(e.getContext("2d"));return this.xM(s,t),e}CM(t){return t==="left"&&!this.yM()||t==="right"&&!this.kM()||this.Gw.length===0?0:M(t==="left"?this.Gw[0].Sw():this.Gw[0].xw()).ym()}wM(){return this.yn.autoSize&&this.sM!==null}vv(){return this.Hv}PM(t){this.eM=t,this.eM?this.vv().style.setProperty("cursor",t):this.vv().style.removeProperty("cursor")}TM(){return this.eM}RM(t){return J(this.Gw[t]).cv()}gM(){this.Xw.forEach((t=>{t.kt()}))}bM(t){(t.autoSize!==void 0||!this.sM||t.width===void 0&&t.height===void 0)&&(t.autoSize&&!this.sM&&this.uM(),t.autoSize===!1&&this.sM!==null&&this.mM(),t.autoSize||t.width===void 0&&t.height===void 0||this.cM(t.width||this.C_,t.height||this.ho))}xM(t,i){let e=0,s=0;const r=this.Gw[0],h=(l,a)=>{let c=0;for(let u=0;u<this.Gw.length;u++){const d=this.Gw[u],m=M(l==="left"?d.Sw():d.xw()),p=m.dv();if(t!==null&&m.fv(t,a,c,i),c+=p.height,u<this.Gw.length-1){const b=this.Xw[u],w=b.dv();t!==null&&b.fv(t,a,c),c+=w.height}}};this.yM()&&(h("left",0),e+=M(r.Sw()).dv().width);for(let l=0;l<this.Gw.length;l++){const a=this.Gw[l],c=a.dv();if(t!==null&&a.fv(t,e,s,i),s+=c.height,l<this.Gw.length-1){const u=this.Xw[l],d=u.dv();t!==null&&u.fv(t,e,s),s+=d.height}}e+=r.dv().width,this.kM()&&(h("right",e),e+=M(r.xw()).dv().width);const o=(l,a,c)=>{M(l==="left"?this._M.Ow():this._M.Nw()).fv(M(t),a,c)};if(this.yn.timeScale.visible){const l=this._M.dv();if(t!==null){let a=0;this.yM()&&(o("left",a,s),a=M(r.Sw()).dv().width),this._M.fv(t,a,s,i),a+=l.width,this.kM()&&o("right",a,s)}s+=l.height}return O({width:e,height:s})}DM(){let t=0,i=0,e=0;for(const w of this.Gw)this.yM()&&(i=Math.max(i,M(w.Sw()).bm(),this.yn.leftPriceScale.minimumWidth)),this.kM()&&(e=Math.max(e,M(w.xw()).bm(),this.yn.rightPriceScale.minimumWidth)),t+=w.z_();i=pe(i),e=pe(e);const s=this.C_,r=this.ho,h=Math.max(s-i-e,0),o=1*this.Xw.length,l=this.yn.timeScale.visible;let a=l?Math.max(this._M.Hw(),this.yn.timeScale.minimumHeight):0;var c;a=(c=a)+c%2;const u=o+a,d=r<u?0:r-u,m=d/t;let p=0;const b=window.devicePixelRatio||1;for(let w=0;w<this.Gw.length;++w){const x=this.Gw[w];x.iw(this.sn.Zn()[w]);let E=0,k=0;
1k=w===this.Gw.length-1?Math.ceil((d-p)*b)/b:Math.round(x.z_()*m*b)/b,E=Math.max(k,2),p+=E,x.Cm(O({width:h,height:E})),this.yM()&&x.mw(i,"left"),this.kM()&&x.mw(e,"right"),x.Sv()&&this.sn.Id(x.Sv(),E)}this._M.Ww(O({width:l?h:0,height:a}),l?i:0,l?e:0),this.sn.N_(h),this.Qw!==i&&(this.Qw=i),this.tM!==e&&(this.tM=e)}lM(t){t?this.Hv.addEventListener("wheel",this.hM,{passive:!1}):this.Hv.removeEventListener("wheel",this.hM)}IM(t){switch(t.deltaMode){case t.DOM_DELTA_PAGE:return 120;case t.DOM_DELTA_LINE:return 32}return zo?1/window.devicePixelRatio:1}aM(t){if(!(t.deltaX!==0&&this.yn.handleScroll.mouseWheel||t.deltaY!==0&&this.yn.handleScale.mouseWheel))return;const i=this.IM(t),e=i*t.deltaX/100,s=-i*t.deltaY/100;if(t.cancelable&&t.preventDefault(),s!==0&&this.yn.handleScale.mouseWheel){const r=Math.sign(s)*Math.min(1,Math.abs(s)),h=t.clientX-this.Hv.getBoundingClientRect().left;this.Qt().Od(h,r)}e!==0&&this.yn.handleScroll.mouseWheel&&this.Qt().Nd(-80*e)}MM(t,i){const e=t.ls();e===3&&this.VM(),e!==3&&e!==2||(this.BM(t),this.EM(t,i),this._M.kt(),this.Gw.forEach((s=>{s.sw()})),this.iM?.ls()===3&&(this.iM.Ss(t),this.VM(),this.BM(this.iM),this.EM(this.iM,i),t=this.iM,this.iM=null)),this.km(t)}EM(t,i){for(const e of t.bs())this.xs(e,i)}BM(t){const i=this.sn.Zn();for(let e=0;e<i.length;e++)t._s(e).hs&&i[e].ru()}xs(t,i){const e=this.sn.Et();switch(t.ds){case 0:e.Xc();break;case 1:e.Jc(t.Wt);break;case 2:e.Ms(t.Wt);break;case 3:e.gs(t.Wt);break;case 4:e.Oc();break;case 5:t.Wt.jc(i)||e.gs(t.Wt.qc(i))}}md(t){this.iM!==null?this.iM.Ss(t):this.iM=t,this.nM||(this.nM=!0,this.Jw=window.requestAnimationFrame((i=>{if(this.nM=!1,this.Jw=0,this.iM!==null){const e=this.iM;this.iM=null,this.MM(e,i);for(const s of e.bs())if(s.ds===5&&!s.Wt.jc(i)){this.Qt().ps(s.Wt);break}}})))}VM(){this.dM()}vM(t){this.rM.removeChild(t.uv()),t.m()}dM(){const t=this.sn.Zn(),i=t.length,e=this.Gw.length;for(let s=i;s<e;s++){const r=J(this.Gw.pop());this.rM.removeChild(r.uv()),r.dw().u(this),r.fw().u(this),r.m();const h=this.Xw.pop();h!==void 0&&this.vM(h)}for(let s=e;s<i;s++){const r=new Ee(this,t[s]);if(r.dw().i(this.AM.bind(this,r),this),r.fw().i(this.LM.bind(this,r),this),this.Gw.push(r),s>0){const h=new wo(this,s-1,s);this.Xw.push(h),this.rM.insertBefore(h.uv(),this._M.uv())}this.rM.insertBefore(r.uv(),this._M.uv())}for(let s=0;s<i;s++){const r=t[s],h=this.Gw[s];h.Sv()!==r?h.iw(r):h.tw()}this.fM(),this.DM()}zM(t,i,e,s){const r=new Map;
1t!==null&&this.sn.Jn().forEach((c=>{const u=c.Un().Hn(t);u!==null&&r.set(c,u)}));let h;if(t!==null){const c=this.sn.Et().en(t)?.originalTime;c!==void 0&&(h=c)}const o=this.Qt().ou(),l=this.OM(s),a=(function(c,u){const d=c!==null&&c.lu instanceof Pi?c.lu:void 0,m=c?.wu?.te,p=u!==void 0&&u!==-1?u:void 0;return c===null||c.ee===void 0?{NM:d,FM:m}:{NM:d,FM:m,WM:{ds:c.ee,HM:(b=c.lu,w=c.ee,b instanceof ue?"pane-primitive":w==="marker"||w==="primitive"?"series-primitive":"series"),UM:vo(c.ee,m),U_:d,$M:m,jM:p}};var b,w})(o,l);return{Qr:h,$n:t??void 0,qM:i??void 0,jM:l!==-1?l:void 0,NM:a.NM,YM:r,FM:a.FM,WM:a.WM,KM:e??void 0}}OM(t){let i=-1;if(t)i=this.Gw.indexOf(t);else{const e=this.Qt().Rd().Kn();e!==null&&(i=this.Qt().Zn().indexOf(e))}return i}AM(t,i,e,s){this.Wm.p((()=>this.zM(i,e,s,t)))}LM(t,i,e,s){this.Hm.p((()=>this.zM(i,e,s,t)))}oM(t,i,e){this.PM(this.Qt().ou()?.mu??null),this.pd.p((()=>this.zM(t,i,e)))}fM(){const t=this.yn.timeScale.visible?"":"none";this._M.uv().style.display=t}yM(){return this.Gw[0].Sv().K_().N().visible}kM(){return this.Gw[0].Sv().Z_().N().visible}uM(){return"ResizeObserver"in window&&(this.sM=new ResizeObserver((t=>{const i=t[t.length-1];if(!i)return;const e=i.contentRect.width,s=i.contentRect.height;this.cM(e,s,!0)})),this.sM.observe(this.jv,{box:"border-box"}),!0)}mM(){this.sM!==null&&this.sM.disconnect(),this.sM=null}}function te(n){return!!(n.handleScroll.mouseWheel||n.handleScale.mouseWheel)}function Lo(n){return n.open===void 0&&n.value===void 0}function No(n){return(function(t){return t.open!==void 0})(n)||(function(t){return t.value!==void 0})(n)}function Fs(n,t,i,e){const s=i.value,r={$n:t,wt:n,Wt:[s,s,s,s],Qr:e};return i.color!==void 0&&(r.R=i.color),r}function Po(n,t,i,e){const s=i.value,r={$n:t,wt:n,Wt:[s,s,s,s],Qr:e};return i.lineColor!==void 0&&(r.vt=i.lineColor),i.topColor!==void 0&&(r.ah=i.topColor),i.bottomColor!==void 0&&(r.oh=i.bottomColor),r}function To(n,t,i,e){const s=i.value,r={$n:t,wt:n,Wt:[s,s,s,s],Qr:e};return i.topLineColor!==void 0&&(r._h=i.topLineColor),i.bottomLineColor!==void 0&&(r.uh=i.bottomLineColor),i.topFillColor1!==void 0&&(r.dh=i.topFillColor1),i.topFillColor2!==void 0&&(r.fh=i.topFillColor2),i.bottomFillColor1!==void 0&&(r.ph=i.bottomFillColor1),i.bottomFillColor2!==void 0&&(r.mh=i.bottomFillColor2),r}function Ro(n,t,i,e){const s={$n:t,wt:n,Wt:[i.open,i.high,i.low,i.close],Qr:e};return i.color!==void 0&&(s.R=i.color),s}function Ao(n,t,i,e){const s={$n:t,wt:n,Wt:[i.open,i.high,i.low,i.close],Qr:e};return i.color!==void 0&&(s.R=i.color),i.borderColor!==void 0&&(s.Ht=i.borderColor),i.wickColor!==void 0&&(s.hh=i.wickColor),s}function Fo(n,t,i,e,s){const r=J(s)(i),h=Math.max(...r),o=Math.min(...r),l=r[r.length-1],a=[l,h,o,l],{time:c,color:u,...d}=i;return{$n:t,wt:n,Wt:a,Qr:e,ue:d,R:u}}function Pt(n){return n.Wt!==void 0}function Os(n,t){return t.customValues!==void 0&&(n.ZM=t.customValues),n}function Mt(n){return(t,i,e,s,r,h)=>(function(o,l){return l?l(o):Lo(o)})(e,h)?Os({wt:t,$n:i,Qr:s},e):Os(n(t,i,e,s,r),e)}function qs(n){return{Candlestick:Mt(Ao),Bar:Mt(Ro),Area:Mt(Po),Baseline:Mt(To),Histogram:Mt(Fs),Line:Mt(Fs),Custom:Mt(Fo)}[n]}function Ds(n){return{$n:0,GM:new Map,za:n}}function Qs(n,t){if(n!==void 0&&n.length!==0)return{XM:t.key(n[0].wt),JM:t.key(n[n.length-1].wt)}}function Bs(n){let t;return n.forEach((i=>{t===void 0&&(t=i.Qr)})),J(t)}class Oo{constructor(t){this.QM=new Map,this.tg=new Map,this.ig=new Map,this.ng=[],this.xu=t}m(){this.QM.clear(),this.tg.clear(),this.ig.clear(),this.ng=[]}sg(t,i){let e=this.QM.size!==0,s=!1;const r=this.tg.get(t);if(r!==void 0)if(this.tg.size===1)e=!1,s=!0,this.QM.clear();else for(const l of this.ng)l.pointData.GM.delete(t)&&(s=!0);let h=[];if(i.length!==0){const l=i.map((m=>m.time)),a=this.xu.createConverterToInternalObj(i),c=qs(t.bh()),u=t.ll(),d=t.ol();h=i.map(((m,p)=>{const b=a(m.time),w=this.xu.key(b);let x=this.QM.get(w);x===void 0&&(x=Ds(b),this.QM.set(w,x),s=!0);const E=c(b,x.$n,m,l[p],u,d);return x.GM.set(t,E),E}))}e&&this.eg(),this.rg(t,h);let o=-1;if(s){const l=[];this.QM.forEach((a=>{l.push({timeWeight:0,time:a.za,pointData:a,originalTime:Bs(a.GM)})})),l.sort(((a,c)=>this.xu.key(a.time)-this.xu.key(c.time))),o=this.hg(l)}return this.ag(t,o,(function(l,a,c){const u=Qs(l,c),d=Qs(a,c);if(u!==void 0&&d!==void 0)return{lg:!1,Ia:u.JM>=d.JM&&u.XM>=d.XM}})(this.tg.get(t),r,this.xu))}Jd(t){return this.sg(t,[])}og(t,i,e){if(e&&t.Na())throw new Error("Historical updates are not supported when conflation is enabled. Conflation requires data to be processed in order.");const s=i;(function(x){x.Qr===void 0&&(x.Qr=x.time)})(s),this.xu.preprocessData(i);const r=this.xu.createConverterToInternalObj([i])(i.time),h=this.ig.get(t);if(!e&&h!==void 0&&this.xu.key(r)<this.xu.key(h))throw new Error(`Cannot update oldest data, last time=${h}, new time=${r}`);let o=this.QM.get(this.xu.key(r));if(e&&o===void 0)throw new Error("Cannot update non-existing data point when historicalUpdate is true");const l=o===void 0;o===void 0&&(o=Ds(r),this.QM.set(this.xu.key(r),o));const a=qs(t.bh()),c=t.ll(),u=t.ol(),d=a(r,o.$n,i,s.Qr,c,u),m=!e&&!l&&h!==void 0&&this.xu.key(r)===this.xu.key(h);o.GM.set(t,d),e?this._g(t,d,o.$n):m&&t.Na()&&Pt(d)?(t.Rr(d),this.ug(t,d)):this.ug(t,d);
1const p={Ia:Pt(d),lg:e};if(!l)return this.ag(t,-1,p);const b={timeWeight:0,time:o.za,pointData:o,originalTime:Bs(o.GM)},w=_t(this.ng,this.xu.key(b.time),((x,E)=>this.xu.key(x.time)<E));this.ng.splice(w,0,b);for(let x=w;x<this.ng.length;++x)di(this.ng[x].pointData,x);return this.xu.fillWeightsForPoints(this.ng,w),this.ag(t,w,p)}cg(t,i){const e=this.tg.get(t);if(e===void 0||i<=0)return[[],this.dg()];i=Math.min(i,e.length);const s=e.splice(-i).reverse();e.length===0?this.ig.delete(t):this.ig.set(t,e[e.length-1].wt);for(const r of s){const h=this.QM.get(this.xu.key(r.wt));if(h&&(h.GM.delete(t),h.GM.size===0)){this.QM.delete(this.xu.key(h.za)),this.ng.splice(h.$n,1);for(let o=h.$n;o<this.ng.length;++o)di(this.ng[o].pointData,o)}}return[s,this.ag(t,this.ng.length-1,{lg:!1,Ia:!1})]}ug(t,i){let e=this.tg.get(t);e===void 0&&(e=[],this.tg.set(t,e));const s=e.length!==0?e[e.length-1]:null;s===null||this.xu.key(i.wt)>this.xu.key(s.wt)?Pt(i)&&e.push(i):Pt(i)?e[e.length-1]=i:e.splice(-1,1),this.ig.set(t,i.wt)}_g(t,i,e){const s=this.tg.get(t);if(s===void 0)return;const r=_t(s,e,((h,o)=>h.$n<o));Pt(i)?s[r]=i:s.splice(r,1)}rg(t,i){i.length!==0?(this.tg.set(t,i.filter(Pt)),this.ig.set(t,i[i.length-1].wt)):(this.tg.delete(t),this.ig.delete(t))}eg(){for(const t of this.ng)t.pointData.GM.size===0&&this.QM.delete(this.xu.key(t.time))}hg(t){let i=-1;for(let e=0;e<this.ng.length&&e<t.length;++e){const s=this.ng[e],r=t[e];if(this.xu.key(s.time)!==this.xu.key(r.time)){i=e;break}r.timeWeight=s.timeWeight,di(r.pointData,e)}if(i===-1&&this.ng.length!==t.length&&(i=Math.min(this.ng.length,t.length)),i===-1)return-1;for(let e=i;e<t.length;++e)di(t[e].pointData,e);return this.xu.fillWeightsForPoints(t,i),this.ng=t,i}fg(){if(this.tg.size===0)return null;let t=0;return this.tg.forEach((i=>{i.length!==0&&(t=Math.max(t,i[i.length-1].$n))})),t}ag(t,i,e){const s=this.dg();if(i!==-1)this.tg.forEach(((r,h)=>{s.U_.set(h,{ue:r,pg:h===t?e:void 0})})),this.tg.has(t)||s.U_.set(t,{ue:[],pg:e}),s.Et.vg=this.ng,s.Et.mg=i;else{const r=this.tg.get(t);s.U_.set(t,{ue:r||[],pg:e})}return s}dg(){return{U_:new Map,Et:{Pc:this.fg()}}}}function di(n,t){n.$n=t,n.GM.forEach((i=>{i.$n=t}))}function qo(n,t){return n._t<t}function Do(n,t){return t<n._t}function be(n,t,i,e){return _t(n,t,qo,i,e)}function we(n,t,i,e){return _e(n,t,Do,i,e)}function gi(n,t,i){return{ne:n,se:t,ee:i}}function $s(n,t,i,e){return n>=t-e&&n<=i+e}function Ut(n,t,i,e,s,r){const h=s-i,o=r-e;if(h===0&&o===0)return Math.hypot(n-i,t-e);const l=((n-i)*h+(t-e)*o)/(h*h+o*o),a=Math.max(0,Math.min(1,l)),c=i+h*a,u=e+o*a;return Math.hypot(n-c,t-u)}const ie=[0,0];function Qo(n,t,i){return t===void 0||t.wt!==n.wt-1?n._t-i/2:(t._t+n._t)/2}function Bo(n,t,i){return t===void 0||t.wt!==n.wt+1?n._t+i/2:(n._t+t._t)/2}function $o(n,t,i,e,s,r,h){if(t===null||t.from>=t.to||n.length===0)return null;const o=s/2+r,l=be(n,i-o,t.from,t.to),a=we(n,i+o,l,t.to);if(l>=a)return null;let c=Number.POSITIVE_INFINITY;for(let u=l;u<a;u++){const d=n[u],m=u>t.from?n[u-1]:void 0,p=u<t.to-1?n[u+1]:void 0,b=Qo(d,m,s)-r,w=Bo(d,p,s)+r;if(i<b||i>w)continue;h(d,ie);const x=ie[0],E=ie[1],k=Math.min(x,E),S=Math.max(x,E),I=k-r,z=S+r;if(e>=k&&e<=S)c=Math.min(c,0);else if(e>=I&&e<=z){const P=Math.min(Math.abs(e-k),Math.abs(S-e));c=Math.min(c,P)}}return Number.isFinite(c)?gi(c,0,"series-range"):null}function Wo(n,t){return n.wt<t}function Vo(n,t){return t<n.wt}function Ho(n,t,i){const e=t.Oa(),s=t.bi(),r=_t(n,e,Wo),h=_e(n,s,Vo);if(!i)return{from:r,to:h};let o=r,l=h;return r>0&&r<n.length&&n[r].wt>=e&&(o=r-1),h>0&&h<n.length&&n[h-1].wt<=s&&(l=h+1),{from:o,to:l}}class An{constructor(t,i,e){this.wg=!0,this.Mg=!0,this.gg=!0,this.bg=[],this.Sg=null,this.xg=-1,this.ae=t,this.le=i,this.Cg=e}kt(t){this.wg=!0,t==="data"&&(this.Mg=!0),t==="options"&&(this.gg=!0)}Tt(){return this.ae.It()?(this.yg(),this.Sg===null?null:this.kg):null}Qs(t,i){return this.ae.It()?(this.yg(),this.Sg===null?null:this.Pg(t,i)):null}Pg(t,i){return null}Tg(){this.bg=this.bg.map((t=>({...t,...this.ae.Sa().Sh(t.wt)})))}Rg(){this.Sg=null}yg(){const t=this.le.Et(),i=t.N().enableConflation?t.Qc():0;i!==this.xg&&(this.Mg=!0,this.xg=i),this.Mg&&(this.Dg(),this.Mg=!1),this.gg&&(this.Tg(),this.gg=!1),this.wg&&(this.Ig(),this.wg=!1)}Ig(){const t=this.ae.Ft(),i=this.le.Et();if(this.Rg(),i.Gi()||t.Gi())return;const e=i.Ee();if(e===null||this.ae.Un().Th()===0)return;const s=this.ae.Lt();s!==null&&(this.Sg=Ho(this.bg,e,this.Cg),this.Vg(t,i,s.Wt),this.Bg())}}class Ko{constructor(t,i){this.Eg=t,this.Ki=i}st(t,i,e){this.Eg.draw(t,this.Ki,i,e)}}function Uo(n){switch(n){case"point":return 2;case"range":return 0;default:return 1}}class jo extends An{constructor(t,i,e){super(t,i,!1),this.Yh=e,this.Eg=this.Yh.renderer(),this.kg=ne
1w Ko(this.Eg,(s=>this.Ag(s)))}get ga(){return this.Yh.conflationReducer}Wa(t){return this.Yh.priceValueBuilder(t)}_l(t){return this.Yh.isWhitespace(t)}Pg(t,i){const e=this.Eg.hitTest?.(t,i,(h=>this.Ag(h)));if(e!=null)return{ne:(s=e).distance,se:Uo(s.type),ee:"custom",mu:s.cursorStyle,te:s.objectId,ie:s.hitTestData};var s;const r=$o(this.bg,this.Sg,t,i,this.le.Et().fl(),this.ae.N().hitTestTolerance,((h,o)=>{const l=h.Lg;let a=NaN,c=NaN;if(l!==void 0&&!this.Yh.isWhitespace(l))for(const u of this.Yh.priceValueBuilder(l)){const d=this.Ag(u);d!==null&&(a=Number.isNaN(a)?d:Math.min(a,d),c=Number.isNaN(c)?d:Math.max(c,d))}o[0]=a,o[1]=c}));return r===null?null:{...r,ee:"custom"}}Dg(){const t=this.ae.Sa();this.bg=this.ae.Ha().Bh().map((i=>({wt:i.$n,_t:NaN,...t.Sh(i.$n),Lg:i.ue})))}Vg(t,i){i.Tc(this.bg,ce(this.Sg))}Bg(){this.Yh.update({bars:this.bg.map(Zo),barSpacing:this.le.Et().fl(),visibleRange:this.Sg,conflationFactor:this.le.Et().Qc()},this.ae.N())}Ag(t){const i=this.ae.Lt();return i===null?null:this.ae.Ft().Nt(t,i.Wt)}}function Zo(n){return{x:n._t,time:n.wt,originalData:n.Lg,barColor:n.sh}}const Go={color:"#2196f3"},Yo=(n,t,i)=>{const e=vt(i);return new jo(n,t,e)};function ze(n){const t={value:n.Wt[3],time:n.Qr};return n.ZM!==void 0&&(t.customValues=n.ZM),t}function Ws(n){const t=ze(n);return n.R!==void 0&&(t.color=n.R),t}function Xo(n){const t=ze(n);return n.vt!==void 0&&(t.lineColor=n.vt),n.ah!==void 0&&(t.topColor=n.ah),n.oh!==void 0&&(t.bottomColor=n.oh),t}function Jo(n){const t=ze(n);return n._h!==void 0&&(t.topLineColor=n._h),n.uh!==void 0&&(t.bottomLineColor=n.uh),n.dh!==void 0&&(t.topFillColor1=n.dh),n.fh!==void 0&&(t.topFillColor2=n.fh),n.ph!==void 0&&(t.bottomFillColor1=n.ph),n.mh!==void 0&&(t.bottomFillColor2=n.mh),t}function Fn(n){const t={open:n.Wt[0],high:n.Wt[1],low:n.Wt[2],close:n.Wt[3],time:n.Qr};return n.ZM!==void 0&&(t.customValues=n.ZM),t}function tl(n){const t=Fn(n);return n.R!==void 0&&(t.color=n.R),t}function il(n){const t=Fn(n),{R:i,Ht:e,hh:s}=n;return i!==void 0&&(t.color=i),e!==void 0&&(t.borderColor=e),s!==void 0&&(t.wickColor=s),t}function vi(n){return{Area:Xo,Line:Ws,Baseline:Jo,Histogram:Ws,Bar:tl,Candlestick:il,Custom:el}[n]}function el(n){const t=n.Qr;return{...n.ue,time:t}}const sl={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,doNotSnapToHiddenSeriesIndices:!1},nl={vertLines:{color:"#D6DCDE",style:0,visible:!0},horzLines:{color:"#D6DCDE",style:0,visible:!0}},rl={background:{type:"solid",color:"#FFFFFF"},textColor:"#191919",fontSize:12,fontFamily:bn,panes:{enableResize:!0,separatorColor:"#E0E3EB",separatorHoverColor:"rgba(178, 181, 189, 0.2)"},attributionLogo:!0,colorSpace:"srgb",colorParsers:[]},ee={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,ensureEdgeTickMarksVisible:!1,tickMarkDensity:2.5},hl={rightOffset:0,barSpacing:6,minBarSpacing:.5,maxBarSpacing:0,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,ignoreWhitespaceIndices:!1,enableConflation:!1,conflationThresholdFactor:1,precomputeConflationOnInit:!1,precomputeConflationPriority:"background"};function Vs(){return{addDefaultPane:!0,hoveredSeriesOnTop:!0,width:0,height:0,autoSize:!1,layout:rl,crosshair:sl,grid:nl,overlayPriceScales:{...ee},leftPriceScale:{...ee,visible:!1},rightPriceScale:{...ee,visible:!0},defaultVisiblePriceScaleId:"right",timeScale:hl,localization:{locale:qt?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 On{constructor(t,i,e){this.sv=t,this.zg=i,this.Og=e??0}applyOptions(t){this.sv.Qt().Pd(this.zg,t,this.Og)}options(){return this.Ki().N()}width(){return Li(this.zg)?this.sv.CM(this.zg):0}setVisibleRange(t){this.setAutoScale(!1),this.Ki().qo(new G(t.from,t.to))}getVisibleRange(){let t,i,e=this.Ki().ar();if(e===null)return null;if(this.Ki().so()){const s=this.Ki().M_(),r=Pn(s);e=Rt(e,this.Ki().ro()),t=Number((Math.round(e.Je()/s)*s).toFixed(r)),i=Number((Math.round(e.Qe()/s)*s).toFixed(r))}else t=e.Je(),i=e.Qe();return{from:t,to:i}}setAutoScale(t){this.applyOptions({autoScale:t})}Ki(){return M(this.sv.Qt().Td(this.zg,this.Og)).Ft}}class ol{constructor(t,i,e,s){this.sv=t,this.yt=e,this.Ng=i,this.Fg=s}getHeight(){return this.yt.$t()}setHeight(t){const i=this.sv.Qt(),e=i.hf(this.yt);i.Bd(e,t)}getStretchFactor(){return this.yt.z_()}setStretchFactor(t){this.yt.O_(t),this.sv.Qt().Pa()}paneIndex(){return this.sv.Qt().hf(this.yt)}moveTo(t){const i=this.paneIndex();i!==t&&(U(t>=0&&t<this.sv.rv().length,"Invalid pane index"),this.sv.Qt().Ad(i,t))}getSeries(){return this.yt.U_().map((t=>this.Ng(t)))??[]}getHTMLElement(){const t=this.sv.rv();return t&&t.length!==0&&t[this.paneIndex()]?t[this.paneIndex()].uv():null}attachPrimitive(t){this.yt.hl(t),t.attached&&t.attached({chart:this.Fg,requestUpdate:()=>this.yt.Qt().Pa()})}detachPrimitive(t){this.yt.al(t)}priceScale(t){if(this.yt.A_(t)===null)throw new Error(`Cannot find price scale with id: ${t}`);return new On(this.sv,t,this.paneIndex())}setPreserveEmptyPane(t){this.yt.W_(t)}preserveEmptyPane(){return this.yt.H_()}addCustomSeries(t,i={},e=0){return this.Fg.addCustomSeries(t,i,e)}addSeries(t,i={}){return this.Fg.addSeries(t,i,this.paneIndex())}}const ll={color:"#FF0000",price:0,lineStyle:2,lineWidth:1,lineVisible:!0,axisLabelVisible:!0,title:"",axisLabelColor:"",axisLabelTextColor:""};class Hs{constructor(t){this._r=t}applyOptions(t){this._r.vr(t)}options(){return this._r.N()}Wg(){return this._r}}class al{constructor(t,i,e,s,r,h){this.Hg=new B,this.ae=t,this.Ug=i,this.$g=e,this.xu=r,this.Fg=s,this.jg=h}m(){this.Hg.m()}priceFormatter(){return this.ae.tl()}priceToCoordinate(t){const i=this.ae.Lt();return i===null?null:this.ae.Ft().Nt(t,i.Wt)}coordinateToPrice(t){const i=this.ae.Lt();return i===null?null:this.ae.Ft().Tn(t,i.Wt)}barsInLogicalRange(t){if(t===null)return null;const i=new Ft(new Yt(t.from,t.to)).Fu(),e=this.ae.Un();if(e.Gi())return null;const s=e.Hn(i.Oa(),1),r=e.Hn(i.bi(),-1),h=M(e.Rh()),o=M(e.Qn());if(s!==null&&r!==null&&s.$n>r.$n)return{barsBefore:t.from-h,barsAfter:o-t.to};const l={barsBefore:s===null||s.$n===h?t.from-h:s.$n-h,barsAfter:r===null||r.$n===o?o-t.to:o-r.$n};return s!==null&&r!==null&&(l.from=s.Qr,l.to=r.Qr),l}setData(t){this.xu,this.ae.bh(),this.Ug.qg(this.ae,t),this.Yg("full")}update(t,i=!1){this.ae.bh(),this.Ug.Kg(this.ae,t,i),this.Yg("update")}pop(t=1){const i=this.Ug.Zg(this.ae,t);i.length!==0&&this.Yg("update");const e=vi(this.seriesType());return i.map((s=>e(s)))}dataByIndex(t,i){const e=this.ae.Un().Hn(t,i);return e===null?null:vi(this.seriesType())(e)}data(){const t=vi(this.seriesType());return this.ae.Un().Bh().map((i=>t(i)))}subscribeDataChanged(t){this.Hg.i(t)}unsubscribeDataChanged(t){this.Hg._(t)}applyOptions(t){this.ae.vr(t)}options(){return lt(this.ae.N())}priceScale(){return this.$g.priceScale(this.ae.Ft().cl(),this.getPane().paneIndex())}
1createPriceLine(t){const i=it(lt(ll),t),e=this.ae.Ba(i);return new Hs(e)}removePriceLine(t){this.ae.Ea(t.Wg())}priceLines(){return this.ae.Aa().map((t=>new Hs(t)))}seriesType(){return this.ae.bh()}lastValueData(t){const i=this.ae.Ae(t);return i.Le?{noData:!0}:{noData:!1,price:i.Mt,color:i.R}}attachPrimitive(t){this.ae.hl(t),t.attached&&t.attached({chart:this.Fg,series:this,requestUpdate:()=>this.ae.Qt().Pa(),horzScaleBehavior:this.xu})}detachPrimitive(t){this.ae.al(t),t.detached&&t.detached(),this.ae.Qt().Pa()}getPane(){const t=this.ae,i=M(this.ae.Qt().Ks(t));return this.jg(i)}moveToPane(t){this.ae.Qt().nf(this.ae,t)}seriesOrder(){const t=this.ae.Qt().Ks(this.ae);return t===null?-1:t.U_().indexOf(this.ae)}setSeriesOrder(t){const i=this.ae.Qt().Ks(this.ae);i!==null&&i.du(this.ae,t)}Yg(t){this.Hg.v()&&this.Hg.p(t)}}class cl{constructor(t,i,e){this.Gg=new B,this.Gu=new B,this.Bw=new B,this.sn=t,this.ia=t.Et(),this._M=i,this.ia.Yc().i(this.Xg.bind(this)),this.ia.Kc().i(this.Jg.bind(this)),this._M.Fw().i(this.Qg.bind(this)),this.xu=e}m(){this.ia.Yc().u(this),this.ia.Kc().u(this),this._M.Fw().u(this),this.Gg.m(),this.Gu.m(),this.Bw.m()}scrollPosition(){return this.ia.Ac()}scrollToPosition(t,i){i?this.ia.$c(t,1e3):this.sn.gs(t)}scrollToRealTime(){this.ia.Uc()}getVisibleRange(){const t=this.ia.gc();return t===null?null:{from:t.from.originalTime,to:t.to.originalTime}}setVisibleRange(t){const i={from:this.xu.convertHorzItemToInternal(t.from),to:this.xu.convertHorzItemToInternal(t.to)},e=this.ia.Cc(i);this.sn.tf(e)}getVisibleLogicalRange(){const t=this.ia.Mc();return t===null?null:{from:t.Oa(),to:t.bi()}}setVisibleLogicalRange(t){U(t.from<=t.to,"The from index cannot be after the to index."),this.sn.tf(t)}resetTimeScale(){this.sn.ws()}fitContent(){this.sn.Xc()}logicalToCoordinate(t){const i=this.sn.Et();return i.Gi()?null:i.jt(t)}coordinateToLogical(t){return this.ia.Gi()?null:this.ia.Rc(t)}timeToIndex(t,i){const e=this.xu.convertHorzItemToInternal(t);return this.ia.vc(e,i)}timeToCoordinate(t){const i=this.timeToIndex(t,!1);return i===null?null:this.ia.jt(i)}coordinateToTime(t){const i=this.sn.Et(),e=i.Rc(t),s=i.en(e);return s===null?null:s.originalTime}width(){return this._M.cv().width}height(){return this._M.cv().height}subscribeVisibleTimeRangeChange(t){this.Gg.i(t)}unsubscribeVisibleTimeRangeChange(t){this.Gg._(t)}subscribeVisibleLogicalRangeChange(t){this.Gu.i(t)}unsubscribeVisibleLogicalRangeChange(t){this.Gu._(t)}subscribeSizeChange(t){this.Bw.i(t)}unsubscribeSizeChange(t){this.Bw._(t)}applyOptions(t){this.ia.vr(t)}options(){return{...lt(this.ia.N()),barSpacing:this.ia.fl()}}Xg(){this.Gg.v()&&this.Gg.p(this.getVisibleRange())}Jg(){this.Gu.v()&&this.Gu.p(this.getVisibleLogicalRange())}Qg(t){this.Bw.p(t.width,t.height)}}function Ks(n){return(function(t){if(ri(t.handleScale)){const e=t.handleScale;t.handleScale={axisDoubleClickReset:{time:e,price:e},axisPressedMouseMove:{time:e,price:e},mouseWheel:e,pinch:e}}else if(t.handleScale!==void 0){const{axisPressedMouseMove:e,axisDoubleClickReset:s}=t.handleScale;ri(e)&&(t.handleScale.axisPressedMouseMove={time:e,price:e}),ri(s)&&(t.handleScale.axisDoubleClickReset={time:s,price:s})}const i=t.handleScroll;ri(i)&&(t.handleScroll={horzTouchDrag:i,vertTouchDrag:i,mouseWheel:i,pressedMouseMove:i})})(n),n}class ul{constructor(t,i,e){this.tb=new Map,this.ib=new Map,this.nb=new B,this.sb=new B,this.eb=new B,this.od=new WeakMap,this.rb=new Oo(i);const s=e===void 0?lt(Vs()):it(lt(Vs()),Ks(e));this.hb=i,this.sv=new Io(t,s,i),this.sv.dw().i((h=>{this.nb.v()&&this.nb.p(this.ab(h()))}),this),this.sv.fw().i((h=>{this.sb.v()&&this.sb.p(this.ab(h()))}),this),this.sv.Dd().i((h=>{this.eb.v()&&this.eb.p(this.ab(h()))}),this);const r=this.sv.Qt();this.lb=new cl(r,this.sv.pM(),this.hb)}remove(){this.sv.dw().u(this),this.sv.fw().u(this),this.sv.Dd().u(this),this.lb.m(),this.sv.m(),this.tb.clear(),this.ib.clear(),this.nb.m(),this.sb.m(),this.eb.m(),this.rb.m()}resize(t,i,e){this.autoSizeActive()||this.sv.cM(t,i,e)}addCustomSeries(t,i={},e=0){const s=(r=>({type:"Custom",isBuiltIn:!1,defaultOptions:{...Go,...r.defaultOptions()},ob:Yo,_b:r}))(vt(t));return this.ub(s,i,e)}addSeries(t,i={},e=0){return this.ub(t,i,e)}removeSeries(t){const i=J(this.tb.get(t)),e=this.rb.Jd(i);this.sv.Qt().Jd(i),this.cb(e),this.tb.delete(t),this.ib.delete(i)}qg(t,i){this.cb(this.rb.sg(t,i))}Kg(t,i,e){this.cb(this.rb.og(t,i,e))}Zg(t,i){const[e,s]=this.rb.cg(t,i);return e.length!==0&&this.cb(s),e}subscribeClick(t){this.nb.i(t)}unsubscribeClick(t){this.nb._(t)}subscribeCrosshairMove(t){this.eb.i(t)}unsubscribeCrosshairMove(t){this.eb._(t)}subscribeDblClick(t){this.sb.i(t)}unsubscribeDblClick(t){this.sb._(t)}priceScale(t,i=0){return new On(this.sv,t,i)}timeScale(){return this.lb}applyOptions(t){this.sv.vr(Ks(t))}options(){return this.sv.N()}takeScreenshot(t=!1,i=!1){let e,s;try{i||(e=this.sv.Qt().N().crosshair.mode,this.sv.vr({crosshair:{mode:2}})),s=this.sv.SM(t)}finally{i||e===void 0||this.sv.Qt().vr({crosshair:{mode:e}})}return s}addPane(t=!1){const i=this.sv.Qt().af();return i.W_(t),this.fb(i)}removePane(t){this.sv.Qt().Vd(t)}swapPanes(t,i){this.sv.Qt().Ed(t,i)}autoSizeActive(){return this.sv.wM()}chartElement(){return this.sv.vv()}panes(){return this.sv.Qt().Zn().map((t=>this.fb(t)))}paneSize(t=0){const i=this.sv.RM(t);return{height:i.height,width:i.width}}setCrosshairPosition(t,i,e){const s=this.tb.get(e);if(s===void 0)return;const r=this.sv.Qt().Ks(s);r!==null&&this.sv.Qt().qd(t,i,r)}clearCrosshairPosition(){this.sv.Qt().Yd(!0)}horzBehaviour(){return this.hb}ub(t,i={},e=0){U(t.ob!==void 0),(function(l){if(l===void 0||l.type==="custom")return;const a=l;a.minMove!==void 0&&a.precision===void 0&&(a.precision=Pn(a.minMove))})(i.priceFormat),t.type==="Candlestick"&&(function(l){l.borderColor!==void 0&&(l.borderUpColor=l.borderColor,l.borderDownColor=l.borderColor),l.wickColor!==void 0&&(l.wickUpColor=l.wickColor,l.wickDownColor=l.wickColor)})(i);const s=it(lt(gn),lt(t.defaultOptions),i),r=t.ob,h=new Pi(this.sv.Qt(),t.type,s,r,t._b);this.sv.Qt().Gd(h,e);const o=new al(h,this,this,this,this.hb,(l=>this.fb(l)));return this.tb.set(o,h),this.ib.set(h,o),o}cb(t){const i=this.sv.Qt();i.Kd(t.Et.Pc,t.Et.vg,t.Et.mg),t.U_.forEach(((e,s)=>
1s.ht(e.ue,e.pg))),i.Et()._c(),i.Bc()}pb(t){return J(this.ib.get(t))}mb(t){return t!==void 0&&this.ib.has(t)?this.pb(t):void 0}ab(t){const i=new Map;t.YM.forEach(((r,h)=>{const o=h.bh(),l=vi(o)(r);if(o!=="Custom")U(No(l));else{const a=h.ol();U(!a||a(l)===!1)}i.set(this.pb(h),l)}));const e=this.mb(t.NM),s=t.WM===void 0?void 0:{type:t.WM.ds,sourceKind:t.WM.HM,objectKind:t.WM.UM,series:this.mb(t.WM.U_),objectId:t.WM.$M,paneIndex:t.WM.jM};return{time:t.Qr,logical:t.$n,point:t.qM,paneIndex:t.jM,hoveredInfo:s,hoveredSeries:e,hoveredObjectId:t.FM,seriesData:i,sourceEvent:t.KM}}fb(t){let i=this.od.get(t);return i||(i=new ol(this.sv,(e=>this.pb(e)),t,this),this.od.set(t,i)),i}}function dl(n){if(si(n)){const t=document.getElementById(n);return U(t!==null,`Cannot find element in DOM with id=${n}`),t}return n}function fl(n,t,i){const e=dl(n),s=new ul(e,t,i);return t.setOptions(s.options()),s}function ml(n,t){return fl(n,new zs,zs.yf(t))}function Kt(n,t,i,e){return Math.hypot(i-n,e-t)}function qn(n,t,i,e,s,r,h,o=0){if(t.length===0||e.from>=t.length||e.to<=0)return;const{context:l,horizontalPixelRatio:a,verticalPixelRatio:c}=n,u=t[e.from];let d=r(n,u),m=u;if(e.to-e.from<2){const p=s/2;l.beginPath();const b={_t:u._t-p,ut:u.ut},w={_t:u._t+p,ut:u.ut};l.moveTo(b._t*a,b.ut*c),l.lineTo(w._t*a,w.ut*c),h(n,d,b,w)}else{const p=o>0;let b=0;const w=(E,k)=>{if(h(n,d,m,k),l.beginPath(),d=E,m=k,p){const S=b%o;l.lineDashOffset=S,b=S}};let x=m;l.beginPath(),l.moveTo(u._t*a,u.ut*c);for(let E=e.from+1;E<e.to;++E){x=t[E];const k=x._t*a,S=x.ut*c,I=r(n,x);switch(i){case 0:if(l.lineTo(k,S),p){const z=t[E-1],P=z._t*a,A=z.ut*c;b+=Kt(P,A,k,S)}break;case 1:{const z=t[E-1],P=z.ut*c;l.lineTo(k,P),p&&(b+=Math.abs(x._t-z._t)*a),I!==d&&(w(I,x),l.lineTo(k,P)),l.lineTo(k,S),p&&(b+=Math.abs(x.ut-z.ut)*c);break}case 2:{const[z,P]=Ie(t,E-1,E),A=z._t*a,F=z.ut*c,Q=P._t*a,nt=P.ut*c;if(l.bezierCurveTo(A,F,Q,nt,k,S),p){const Y=t[E-1],ut=Y._t*a,dt=Y.ut*c,ft=Kt(ut,dt,k,S),zt=Kt(ut,dt,A,F)+Kt(A,F,Q,nt)+Kt(Q,nt,k,S);b+=(ft+zt)/2}break}}i!==1&&I!==d&&(w(I,x),l.moveTo(k,S))}(m!==x||m===x&&i===1)&&h(n,d,m,x),p&&(l.lineDashOffset=0)}}const Us=6;function se(n,t){return{_t:n._t-t._t,ut:n.ut-t.ut}}function js(n,t){return{_t:n._t/t,ut:n.ut/t}}function Ie(n,t,i){const e=Math.max(0,t-1),s=Math.min(n.length-1,i+1);var r,h;return[(r=n[t],h=js(se(n[i],n[e]),Us),{_t:r._t+h._t,ut:r.ut+h.ut}),se(n[i],js(se(n[s],n[t]),Us))]}function pl(n,t){const i=n.context;i.strokeStyle=t,i.stroke()}class gl extends kt{constructor(){super(...arguments),this.rt=null}ht(t){this.rt=t}et(t){if(this.rt===null)return;const{ot:i,lt:e,wb:s,Mb:r,ct:h,Zt:o,gb:l}=this.rt;if(e===null)return;const a=t.context;a.lineCap="butt",a.lineWidth=h*t.verticalPixelRatio;const c=bt(a,o);a.lineJoin="round";const u=this.bb.bind(this),d=(function(m){return m.reduce(((p,b)=>p+b),0)})(c);r!==void 0&&qn(t,i,r,e,s,u,pl,d),l&&(function(m,p,b,w,x){if(w.to-w.from<=0)return;const{horizontalPixelRatio:E,verticalPixelRatio:k,context:S}=m;let I=null;const z=Math.max(1,Math.floor(E))%2/2,P=b*k+z;for(let A=w.to-1;A>=w.from;--A){const F=p[A];if(F){const Q=x(m,F);Q!==I&&(I!==null&&S.fill(),S.beginPath(),S.fillStyle=Q,I=Q);const nt=Math.round(F._t*E)+z,Y=F.ut*k;S.moveTo(nt,Y),S.arc(nt,Y,P,0,2*Math.PI)}}S.fill()})(t,i,l,e,u)}}class vl extends gl{bb(t,i){return i.vt}}function Zs(n,t,i,e,s){const r=1-s;return r*r*r*n+3*r*r*s*t+3*r*s*s*i+s*s*s*e}function bl(n,t,i,e,s){if(i===2){const[r,h]=Ie(e,s-1,s);return[Math.min(n._t,t._t,r._t,h._t),Math.max(n._t,t._t,r._t,h._t)]}return[Math.min(n._t,t._t),Math.max(n._t,t._t)]}function wl(n,t,i,e,s,r,h,o){switch(s){case 1:{const l=Ut(n,t,i._t,i.ut,e._t,i.ut),a=Ut(n,t,e._t,i.ut,e._t,e.ut),c=Math.min(l,a);return c<=o?c:null}case 2:{const[l,a]=Ie(r,h-1,h),c=(function(u,d,m){let p=Number.POSITIVE_INFINITY,b=m[0];for(let w=1;w<=12;w++){const x=w/12,E={_t:Zs(m[0]._t,m[1]._t,m[2]._t,m[3]._t,x),ut:Zs(m[0].ut,m[1].ut,m[2].ut,m[3].ut,x)};p=Math.min(p,Ut(u,d,b._t,b.ut,E._t,E.ut)),b=E}return p})(n,t,[i,l,a,e]);return c<=o?c:null}default:{const l=Ut(n,t,i._t,i.ut,e._t,e.ut);return l<=o?l:null}}}class yl extends An{constructor(t,i){super(t,i,!0)}Vg(t,i,e){i.Tc(this.bg,ce(this.Sg)),t.Zo(this.bg,e,ce(this.Sg))}Sb(t,i){return{wt:t,Mt:i,_t:NaN,ut:NaN}}Dg(){const t=this.ae.Sa();this.bg=this.ae.Ha().Bh().map((i=>{let e;if((i.Zr??1)>1){const s=i.Wt[1],r=i.Wt[2],h=i.Wt[3];e=Math.abs(s-h)>Math.abs(r-h)?s:r}else e=i.Wt[3];return this.xb(i.$n,e,t)}))}}
1class Ml extends yl{Pg(t,i){const e=this.ae.N();return(function(s,r,h,o,l,a,c,u=0,d=0){if(r===null||r.from>=r.to||s.length===0)return null;const m=Math.max(a/2,c??0)+d;let p=Number.POSITIVE_INFINITY;if(c!==void 0){const S=c+d,I=be(s,h-S,r.from,r.to),z=we(s,h+S,I,r.to);for(let P=I;P<z;P++){const A=s[P];if(!$s(h,A._t,A._t,c+d))continue;const F=Math.hypot(h-A._t,o-A.ut);F<=c+d&&(p=Math.min(p,F))}}if(r.to-r.from<2){const S=s[r.from],I=Math.max(u/2,m),z=Ut(h,o,S._t-I,S.ut,S._t+I,S.ut);return z<=m&&(p=Math.min(p,z)),Number.isFinite(p)?gi(p,2,"series-point"):null}let b=Number.POSITIVE_INFINITY;const w=be(s,h-m,r.from,r.to),x=we(s,h+m,w,r.to),E=Math.max(r.from+1,w),k=Math.min(r.to,x+1);for(let S=E;S<k;S++){const I=s[S-1],z=s[S],[P,A]=bl(I,z,l,s,S);if(!$s(h,P,A,m))continue;const F=wl(h,o,I,z,l,s,S,m);F!==null&&(b=Math.min(b,F))}return Number.isFinite(p)?gi(p,2,"series-point"):Number.isFinite(b)?gi(b,1,"series-line"):null})(this.bg,this.Sg,t,i,e.lineType,e.lineVisible?e.lineWidth:1,e.pointMarkersVisible?e.pointMarkersRadius||e.lineWidth/2+2:void 0,this.le.Et().fl(),e.hitTestTolerance)}}function xl(n,t,i,e,s){const{context:r,horizontalPixelRatio:h,verticalPixelRatio:o}=t;r.lineTo(s._t*h,n*o),r.lineTo(e._t*h,n*o),r.closePath(),r.fillStyle=i,r.fill()}class Sl extends kt{constructor(){super(...arguments),this.rt=null}ht(t){this.rt=t}et(t){if(this.rt===null)return;const{ot:i,lt:e,wb:s,ct:r,Zt:h,Mb:o}=this.rt,l=this.rt.Db??(this.rt.Ib?0:t.mediaSize.height);if(e===null)return;const a=t.context;a.lineCap="butt",a.lineJoin="round",a.lineWidth=r,bt(a,h),a.lineWidth=1,qn(t,i,o,e,s,this.Vb.bind(this),xl.bind(null,l))}}class _l{Bb(t,i){const e=this.Eb,{Ab:s,Lb:r,zb:h,Ob:o,Db:l,Nb:a,Fb:c}=i;if(this.Wb===void 0||e===void 0||e.Ab!==s||e.Lb!==r||e.zb!==h||e.Ob!==o||e.Db!==l||e.Nb!==a||e.Fb!==c){const{verticalPixelRatio:u}=t,d=l||a>0?u:1,m=a*d,p=c===t.bitmapSize.height?c:c*d,b=(l??0)*d,w=t.context.createLinearGradient(0,m,0,p);if(w.addColorStop(0,s),l!=null){const x=At((b-m)/(p-m),0,1);w.addColorStop(x,r),w.addColorStop(x,h)}w.addColorStop(1,o),this.Wb=w,this.Eb=i}return this.Wb}}class Cl extends Sl{constructor(){super(...arguments),this.Hb=new _l}Vb(t,i){return this.Hb.Bb(t,{Ab:i.ah,Lb:"",zb:"",Ob:i.oh,Nb:this.rt?.Nb??0,Fb:t.bitmapSize.height})}}class El extends Ml{constructor(t,i){super(t,i),this.kg=new wn,this.qb=new Cl,this.Yb=new vl,this.kg.nt([this.qb,this.Yb])}xb(t,i,e){return{...this.Sb(t,i),...e.Sh(t)}}Bg(){const t=this.ae.N();if(this.Sg===null||this.bg.length===0)return;let i;if(t.relativeGradient){i=this.bg[this.Sg.from].ut;for(let e=this.Sg.from;e<this.Sg.to;e++){const s=this.bg[e];s.ut<i&&(i=s.ut)}}this.qb.ht({Mb:t.lineType,ot:this.bg,Zt:t.lineStyle,ct:t.lineWidth,Db:null,Nb:i,Ib:t.invertFilledArea,lt:this.Sg,wb:this.le.Et().fl()}),this.Yb.ht({Mb:t.lineVisible?t.lineType:void 0,ot:this.bg,Zt:t.lineStyle,ct:t.lineWidth,lt:this.Sg,wb:this.le.Et().fl(),gb:t.pointMarkersVisible?t.pointMarkersRadius||t.lineWidth/2+2:void 0})}}const kl={type:"Area",isBuiltIn:!0,defaultOptions:{topColor:"rgba( 46, 220, 135, 0.4)",bottomColor:"rgba( 40, 221, 100, 0)",invertFilledArea:!1,relativeGradient:!1,lineColor:"#33D778",lineStyle:0,lineWidth:3,lineType:0,lineVisible:!0,crosshairMarkerVisible:!0,crosshairMarkerRadius:4,crosshairMarkerBorderColor:"",crosshairMarkerBorderWidth:2,crosshairMarkerBackgroundColor:"",lastPriceAnimation:0,pointMarkersVisible:!1},ob:(n,t)=>new El(n,t)};({...gn});(function(){const n=window.loobizLive||{},t=window.loobizI18n||{},i=t.locale||document.documentElement.lang||"fr-FR";document.documentElement.lang;const e=new Map,s=new Map;let r=null,h=null,o=null,l=null,a=null,c={points:[],maxPoints:180};const u=new WeakMap,d="/api/live/currencies",m="loobiz.currencyCatalog.v1",p="loobiz.quoteCache.v1",b="loobiz.pwaInstallDismissed.v1",w=40,x=document.getElementById("language-modal-btn"),E=document.getElementById("language-modal");x&&E&&typeof E.showModal=="function"&&x.addEventListener("click",()=>{E.open||E.showModal()});const k=(f,v)=>{const g=Number(f);return Number.isFinite(g)?new Intl.NumberFormat(i,{minimumFractionDigits:v,maximumFractionDigits:v}).format(g):"-"},S=f=>{if(!f)return t.updateUnavailable||"mise à jour indisponible";const v=new Date(f);if(Number.isNaN(v.getTime()))return t.updateUnavailable||"mise à jour indisponible";const g=v.toLocaleTimeString(i,{hour:"2-digit",minute:"2-digit"});return(t.updatedAt||"màj {0}").replace("{0}",g)},I=(f,v)=>`${String(f||"").toUpperCase()}/${String(v||"").toUpperCase()}`,z=f=>{if(!f)return null;const v=String(f.baseCurrency??f.BaseCurrency??"").trim().toUpperCase(),g=String(f.quoteCurrency??f.QuoteCurrency??"").trim().toUpperCase(),y=Number(f.rate??f.Rate);return!v||!g||!Number.isFinite(y)||y<=0?null:{baseCurrency:v,quoteCurrency:g,amount:Number(f.amount??f.Amount??1),rate:y,convertedAmount:Number(f.convertedAmount??f.ConvertedAmount??y),observedAtUtc:f.observedAtUtc??f.ObservedAtUtc??new Date().toISOString(),source:f.source??f.Source??"cache local",isIndicative:f.isIndicative??f.IsIndicative??!0,cachedAtUtc:f.cachedAtUtc??f.CachedAtUtc??new Date().toISOString()}},P=()=>{try{const f=JSON.parse(localStorage.getItem(p)||"{}");return f&&typeof f=="object"?f:{}}catch{return{}}},A=(f,v)=>{const g=P();return z(g[I(f,v)])},F=f=>{const v=z(f);if(!v)return null;try{const g=P();g[I(v.baseCurrency,v.quoteCurrency)]={...v,cachedAtUtc:new Date().toISOString()};const y=Object.fromEntries(Object.entries(g).sort((_,L)=>new Date(L[1]?.cachedAtUtc||0).getTime()-new Date(_[1]?.cachedAtUtc||0).getTime()).slice(0,w));localStorage.setItem(p,JSON.stringify(y))}catch{}return v},Q=Object.freeze({EUR:"circle-flags:eu",USD:"circle-flags:us",GBP:"circle-flags:gb",CHF:"circle-flags:ch",JPY:"circle-flags:jp",THB:"circle-flags:th",AED:"circle-flags:ae",VUV:"circle-flags:vu",BCH:"cryptocurrency-color:bch",BTC:"cryptocurrency-color:btc",ETH:"cryptocurrency-color:eth",LTC:"cryptocurrency-color:ltc",USDT:"cryptocurrency-color:usdt"}),nt=new Set(Object.values(Q)),Y=(f,v,g=v,y=null)=>{if(!f)return;const _=String(v||"").toUpperCase(),L=y||f.dataset.currencyIcon||Q[_];if(!L){f.classList.remove("has-icon"),f.textContent=g||_;return}const N=document.createElement("iconify-icon");N.setAttribute("icon",L),N.setAttribute("width","100%"),N.setAttribute("height","100%"),N.setAttribute("aria-hidden","true"),nt.has(L)&&N.setAttribute("noobserver",""),f.replaceChildren(N),f.classList.add("has-icon")},ut=()=>{Array.from(document.querySelectorAll("[data-currency-visual]")).forEac
1h(v=>{Y(v,v.dataset.currencyVisual,v.dataset.currencyFallback,v.dataset.currencyIcon)})},dt=f=>(Array.isArray(f?.currencies)?f.currencies:Array.isArray(f?.Currencies)?f.Currencies:[]).map(g=>{const y=String(g.code??g.Code??"").trim().toUpperCase();return y?{code:y,name:String(g.name??g.Name??y).trim()||y,symbol:String(g.symbol??g.Symbol??y).trim()||y,flagIconName:String(g.flagIconName??g.FlagIconName??"").trim(),isCrypto:!!(g.isCrypto??g.IsCrypto)}:null}).filter(Boolean).sort((g,y)=>g.code.localeCompare(y.code,"fr")),ft=()=>{try{return dt(JSON.parse(localStorage.getItem(m)||"{}"))}catch{return[]}},zt=f=>{const v=dt(f);if(v.length===0)return[];try{localStorage.setItem(m,JSON.stringify({cachedAtUtc:new Date().toISOString(),currencies:v}))}catch{}return v},mt=f=>{if(!Array.isArray(f)||f.length===0)return;Array.from(document.querySelectorAll("[data-convert-from], [data-convert-to]")).forEach(g=>{const y=new Set(Array.from(g.options).map(L=>L.value.toUpperCase())),_=document.createDocumentFragment();f.forEach(L=>{if(y.has(L.code))return;const N=document.createElement("option");N.value=L.code,N.textContent=L.code,N.dataset.symbol=L.symbol,N.dataset.name=L.name,L.flagIconName&&(N.dataset.icon=L.flagIconName),_.append(N),y.add(L.code)}),_.childNodes.length>0&&(g.append(_),rt(g))})},Dt=()=>{mt(ft()),fetch(d,{headers:{Accept:"application/json"}}).then(f=>f.ok?f.json():null).then(f=>mt(zt(f))).catch(()=>{})},Qt=f=>f.selectedOptions?.[0]||null,rt=f=>{const v=u.get(f),g=Qt(f);if(!v||!g)return;const y=String(g.value||f.value).toUpperCase(),_=g.dataset.name||g.textContent?.replace(y,"").replace(/^\s*[-–—]\s*/,"").trim()||y,L=g.dataset.symbol||y;Y(v.visual,y,L,g.dataset.icon),v.code.textContent=y,v.name.textContent=_,v.button.removeAttribute("aria-label")},Dn=()=>{const f=document.querySelector("#currency-picker-dialog"),v=f?.querySelector("[data-currency-picker-options]"),g=f?.querySelector("[data-currency-picker-close]"),y=f?.querySelector("[data-currency-picker-context]"),_=Array.from(document.querySelectorAll("[data-convert-from], [data-convert-to]"));if(!f||!v||!g||typeof f.showModal!="function"||_.length===0)return;let L=null;const N=()=>{f.open&&f.close()},q=(T,V)=>{T.value=V,rt(T),T.dispatchEvent(new Event("change",{bubbles:!0})),N(),L?.focus()},W=(T,V)=>{L=V,v.replaceChildren(),y&&(y.textContent=T.getAttribute("aria-label")||"Sélectionnez une devise."),Array.from(T.options).forEach(D=>{const H=String(D.value).toUpperCase(),pt=D.dataset.name||D.textContent?.replace(H,"").replace(/^\s*[-–—]\s*/,"").trim()||H,ht=D.dataset.symbol||H,wt=D.selected,j=document.createElement("button"),et=document.createElement("span"),X=document.createElement("span"),Bt=document.createElement("strong"),$t=document.createElement("small"),yt=document.createElement("span");j.type="button",j.className="currency-picker-option",j.dataset.currencyPickerValue=H,j.setAttribute("aria-pressed",String(wt)),et.className="currency-visual currency-visual--lg currency-picker-option__visual",et.setAttribute("aria-hidden","true"),Y(et,H,ht,D.dataset.icon),X.className="currency-picker-option__identity",Bt.textContent=H,$t.textContent=pt,X.append(Bt,$t),yt.className="currency-picker-option__check",yt.textContent=wt?"✓":"",yt.setAttribute("aria-hidden","true"),j.append(et,X,yt),j.addEventListener("click",()=>q(T,D.value)),v.append(j)}),f.showModal(),requestAnimationFrame(()=>{v.querySelector('[aria-pressed="true"]')?.focus()})};_.forEach((T,V)=>{if(u.has(T)||!T.parentElement)return;const D=document.createElement("button"),H=document.createElement("span"),pt=document.createElement("span"),ht=document.createElement("strong"),wt=document.createElement("small");D.type="button",D.id=`${T.id||`currency-${V}`}-picker`,D.className="currency-picker-trigger",D.setAttribute("aria-haspopup","dialog"),D.setAttribute("aria-controls",f.id),["aria-invalid","aria-describedby"].forEach(j=>{const et=T.getAttribute(j);et&&D.setAttribute(j,et)}),H.className="currency-visual currency-picker-trigger__visual",H.setAttribute("aria-hidden","true"),pt.className="currency-picker-trigger__identity",pt.append(ht,wt),D.append(H,pt),T.parentElement.insertBefore(D,T),T.parentElement.classList.add("is-currency-picker-enhanced"),T.tabIndex=-1,Array.from(T.labels||[]).forEac
1h(j=>{j.htmlFor=D.id}),u.set(T,{button:D,visual:H,code:ht,name:wt}),rt(T),D.addEventListener("click",()=>W(T,D)),T.addEventListener("change",()=>rt(T))}),g.addEventListener("click",N),f.addEventListener("click",T=>{T.target===f&&N()}),f.addEventListener("close",()=>{L?.focus()})},Ri=(f,v)=>{const g=getComputedStyle(document.documentElement).getPropertyValue(f).trim();return!g||g.includes("oklch(")||g.includes("color-mix(")||g.includes("var(")?v:g},Le=f=>{if(!Array.isArray(f)||f.length===0)return[];const v=f.map(g=>{const y=Number(g.value??g.Value??g.price);if(!Number.isFinite(y))return null;const _=g.timestampUtc??g.TimestampUtc??g.date??g.Date;if(!_)return null;const L=typeof _=="number"?_:new Date(_).getTime(),N=typeof _=="number"&&_<1e10?Math.floor(_):Math.floor(L/1e3);return Number.isFinite(N)?{time:N,value:y,source:g.source??g.Source??"",isIndicative:g.isIndicative??g.IsIndicative??!0}:null}).filter(Boolean).sort((g,y)=>g.time-y.time);return Array.from(new Map(v.map(g=>[g.time,g])).values()).sort((g,y)=>g.time-y.time)},Qn=(f,v,g)=>{const y=new Map(f.map(_=>[_.time,_]));return v.forEach(_=>y.set(_.time,_)),Array.from(y.values()).sort((_,L)=>_.time-L.time).slice(-g)},Ne=f=>f.map(v=>({time:v.time,value:v.value})),Bn=()=>{const f=document.createElement("div");f.className="offline-status",f.setAttribute("role","status"),document.body.appendChild(f);const v=()=>{navigator.onLine?(f.textContent=t.online||"En ligne",f.classList.remove("is-offline"),f.classList.add("is-online")):(f.textContent=t.offline||"Hors ligne",f.classList.remove("is-online"),f.classList.add("is-offline"))};window.addEventListener("online",v),window.addEventListener("offline",v),v()},$n=()=>{const f=document.querySelector("[data-pwa-install]"),v=f?.querySelector("[data-pwa-install-action]"),g=f?.querySelector("[data-pwa-install-close]"),y=f?.querySelector("[data-pwa-install-copy]");if(!f||!v||!g)return;const _=window.matchMedia("(display-mode: standalone)").matches||window.navigator.standalone===!0,L=/iphone|ipad|ipod/i.test(window.navigator.userAgent||"");let N=!1;try{N=localStorage.getItem(b)==="true"}catch{N=!1}let q=null;const W=(V=!1)=>{if(f.setAttribute("data-pwa-install-hidden",""),V)try{localStorage.setItem(b,"true")}catch{}},T=()=>{!_&&!N&&f.removeAttribute("data-pwa-install-hidden")};if(_||N){W();return}L&&(v.textContent="Compris",y&&(y.textContent="Sur iPhone : touchez Partager, puis “Ajouter à l’écran d’accueil”. Le convertisseur restera accessible comme une app."),window.setTimeout(T,1800)),window.addEventListener("beforeinstallprompt",V=>{V.preventDefault(),q=V,v.textContent=t.install||v.textContent,y&&(y.textContent=t.installCopy||y.textContent),T()}),v.addEventListener("click",async()=>{if(!q){W(!0);return}q.prompt();const V=await q.userChoice.catch(()=>null);q=null,V?.outcome==="accepted"&&W(!0)}),g.addEventListener("click",()=>W(!0)),window.addEventListener("appinstalled",()=>W(!0))},Wn=()=>{const f=document.querySelector("[data-menu-toggle]"),v=document.querySelector("[data-menu]");!f||!v||f.addEventListener("click",()=>{const g=f.getAttribute("aria-expanded")==="true";f.setAttribute("aria-expanded",String(!g)),v.classList.toggle("is-open",!g)})},Pe=async f=>{const v=encodeURIComponent(f.base),g=encodeURIComponent(f.quote),y=f.owners.has("chart"),_=fetch(`/api/live/rates/${v}/${g}`,{headers:{Accept:"application/json"},cache:"no-store"}),L=y?fetch(`/api/live/ticks/${v}/${g}?limit=24`,{headers:{Accept:"application/json"},cache:"no-store"}):Promise.resolve(null),[N,q]=await Promise.all([_,L]);if(!N.ok)throw new Error(`Quote request failed with ${N.status}`);const W=await N.json(),T=q?.ok?await q.json():[];Gn({...W,ticks:T})},Vn=async()=>{const f=Array.from(s.values());await Promise.allSettled(f.map(Pe))},Hn=()=>{r||s.size===0||(r=window.setInterval(Vn,6e4))},Ai=async(f,v,g="anonymous")=>{const y=I(f,v);let _=s.get(y);if(_||(_={base:f,quote:v,owners:new Set,refreshPromise:null},s.set(y,_)),_.owners.has(g))return;const L=_.owners.size===0;if(_.owners.add(g),!L){_.refreshPromise&&await _.refreshPromise;return}_.refreshPromise=Pe(_);try{await _.refreshPromise}finally{_.refreshPromise=null}Hn()},Kn=async(f,v,g="anonymous")=>{const y=I(f,v),_=s.get(y);!_||!_.owners.delete(g)||_.owners.size>0||(s.delete(y),s.size===0&&r&&(window.clearInterval(r),r=null))},Un=()=>{const f=document.querySelector("[data-live-converter]");if(!f)return;const v=f.querySelector("[data-convert-amount]"),g=f.querySelector("[data-convert-from]"),y=f.querySelector("[data-convert-to]"),_=f.querySelector("[data-convert-button]"),L=f.querySelector("[data-convert-status]"),N=document.querySelector("[data-convert-result]"),q=document.querySelector("[data-convert-meta]"),W=f.querySelector("[data-convert-swap]"),T=f.querySelector("[data-convert-pair]"),V=f.querySelector("[data-convert-from-symbol]"),D=f.querySelector("[data-convert-to-symbol]"),H=f.querySelector("[data-convert-detail]"),pt=Array.from(f.querySelectorAll("[data-convert-quick]")),ht=f.hasAttribute("data-split-result"),wt=ne
1w Set(String(f.dataset.knownPairs||"").split(",").map(C=>C.trim().toLowerCase()).filter(Boolean));if(!v||!g||!y||!_||!L||!N||!q)return;let j=0,et={base:g.value,quote:y.value};const X=(C,R)=>{f.setAttribute("data-connection-state",C),f.setAttribute("aria-busy",String(C==="pending")),_.disabled=C==="pending",_.setAttribute("aria-busy",String(C==="pending")),L.textContent=R},Bt=C=>(C.selectedOptions&&C.selectedOptions[0])?.dataset.symbol||C.value,$t=C=>(C.selectedOptions&&C.selectedOptions[0])?.dataset.icon||null,yt=()=>{const C=Number(v.value);pt.forEach(R=>{const $=Number(R.dataset.convertQuick)===C;R.setAttribute("aria-pressed",String($))})},Te=()=>{const C=g.value,R=y.value;if(T&&(T.textContent=`${C} → ${R}`),V&&Y(V,C,Bt(g),$t(g)),D&&Y(D,R,Bt(y),$t(y)),rt(g),rt(y),H){const $=`${C.toLowerCase()}-${R.toLowerCase()}`,st=g.selectedOptions?.[0]?.dataset.slug||C.toLowerCase(),tt=y.selectedOptions?.[0]?.dataset.slug||R.toLowerCase(),Z=wt.has($);H.hidden=!Z,H.setAttribute("aria-hidden",String(!Z)),Z&&(H.href=`/converter/${st}/${tt}`,H.setAttribute("aria-label",(t.viewPairDetails||"Voir le détail de la paire {0} vers {1}").replace("{0}",C).replace("{1}",R)))}},It=C=>{const R=Number(v.value),$=Number(C.rate),st=String(C.baseCurrency||g.value).toUpperCase(),tt=String(C.quoteCurrency||y.value).toUpperCase(),Z=String(C.source||"").trim(),Lt=Z?` · ${Z}`:"",Oe=C.isIndicative?t.indicative||"indicatif":t.direct||"direct";if(!Number.isFinite(R)||R<=0){v.setAttribute("aria-invalid","true"),N.textContent="—",q.textContent=t.positiveAmount||"Entrez un montant strictement positif.",X("error",t.positiveAmount||"Entrez un montant strictement positif.");return}if(v.removeAttribute("aria-invalid"),!Number.isFinite($)||$<=0){N.textContent=ht?"—":`${k(R,2)} ${st} ≈ — ${tt}`,q.textContent=t.noLiveRate||"Aucune cotation live disponible pour cette paire.",X("error",t.liveUnavailable||"Le flux de marché est indisponible.");return}const ni=R*$,qe=ht?Math.abs(ni)>=100?2:Math.abs(ni)>=1?4:8:4;N.textContent=ht?k(ni,qe):`${k(R,2)} ${st} ≈ ${k(ni,qe)} ${tt}`,q.textContent=ht?`1 ${st} = ${k($,6)} ${tt} · ${S(C.observedAtUtc)} · ${Oe}${Lt}`:`${k($,6)} · ${S(C.observedAtUtc)} · ${Oe}${Lt}`,X("live",t.liveActive||"Flux temps réel actif.")},Re=async(C=h)=>{if(!C)return;const R=++j,$=I(C.base,C.quote),st=A(C.base,C.quote);if(X("pending",t.refreshing||"Actualisation du taux…"),!navigator.onLine&&st){e.set($,st),It(st),X("live",t.offlineLastRate||"Hors ligne · dernier taux connu");return}try{const tt=new URLSearchParams({from:C.base,to:C.quote,amount:"1"}),Z=await fetch(`/api/live/convert?${tt}`,{headers:{Accept:"application/json"}});if(!Z.ok)throw new Error(`Quote request failed with ${Z.status}`);const Lt=await Z.json();if(R!==j||$!==I(h?.base,h?.quote))return;e.set($,Lt),F(Lt),It(Lt)}catch{if(R!==j)return;const tt=e.get($)||st||A(C.base,C.quote);if(tt){It(tt),X("live",navigator.onLine?t.lastAvailableRate||"Dernier taux disponible":t.offlineLastRate||"Hors ligne · dernier taux connu");return}N.textContent=ht?"—":`${k(v.value,2)} ${C.base} ≈ — ${C.quote}`,q.textContent=t.liveUnavailable||"Le flux de marché est indisponible.",X("error",t.liveUnavailable||"Le flux de marché est indisponible.")}},Ae=async()=>{const C={base:g.value,quote:y.value},R=h;h=C,et=C,Te();const $=Re(C);R&&I(R.base,R.quote)!==I(C.base,C.quote)&&await Kn(R.base,R.quote,"converter");try{await Ai(C.base,C.quote,"converter")}catch{}await $},Xn=C=>{if(g.value!==y.value)return;const R=C===g?et.base:et.quote,$=C===g?y:g,tt=Array.from($.options).find(Z=>Z.value===R&&Z.value!==C.value)||Array.from($.options).find(Z=>Z.value!==C.value);tt&&($.value=tt.value)},Fi=C=>{Xn(C),Ae().catch(()=>{X("error","Impossible d’actualiser ce taux")})},Fe=()=>{yt();const C=h;if(!C)return;const R=e.get(I(C.base,C.quote));R?It(R):(!Number.isFinite(Number(v.value))||Number(v.value)<=0)&&It({baseCurrency:C.base,quoteCurrency:C.quote,rate:0})};_.addEventListener("click",()=>{Re().catch(()=>{X("error","Impossible d’actualiser ce taux")})}),g.addEventListener("change",()=>Fi(g)),y.addEventListener("change",()=>Fi(y)),v.addEventListener("input",Fe),W&&W.addEventListener("click",()=>{const C=g.value;g.value=y.value,y.value=C,W.classList.remove("is-swapping"),requestAnimationFrame(()=>W.classList.add("is-swapping")),Fi(g)}),pt.forEach(C=>{C.addEventListener("click",()=>{v.value=C.dataset.convertQuick||v.value,Fe()})}),e.set("converter:renderer",It),Te(),yt(),Ae().catch(()=>{X("error","Impossible d’actualiser ce taux")})},jn=()=>
1{if(!n.rates)return;Array.from(document.querySelectorAll("[data-live-pair-card]")).forEach(v=>{const g=v.getAttribute("data-base"),y=v.getAttribute("data-quote"),_=I(g,y),L=`card:${_}`,N=e.get(L)||[];N.push({rateNode:v.querySelector("[data-live-rate]"),updatedNode:v.querySelector("[data-live-updated]"),inverseNode:v.querySelector("[data-live-inverse]"),providerNode:v.querySelector("[data-live-provider]"),indicatorNode:v.querySelector("[data-live-indicator]")}),e.set(L,N),Ai(g,y,`rate-card:${_}`).catch(()=>{const q=v.querySelector("[data-live-updated]");q&&(q.textContent=t.liveUnavailable||"Cotation indisponible.")})})},Zn=()=>{const f=n.chart,v=document.querySelector("[data-live-chart]");if(!f||!v)return;const g=f.base||v.dataset.base,y=f.quote||v.dataset.quote,_=Number(f.maxPoints||v.dataset.maxPoints||180);c={points:[],maxPoints:Math.min(500,Math.max(50,Number.isFinite(_)?_:180))};const L=Ri("--color-primary","#f59e0b"),N=Ri("--color-base-content","#1f2937"),q=Ri("--color-base-200","#f3f4f6");l=ml(v,{autoSize:!0,height:380,layout:{background:{type:fe.Solid,color:"transparent"},textColor:N},grid:{vertLines:{color:"rgba(120, 120, 120, 0.14)"},horzLines:{color:"rgba(120, 120, 120, 0.14)"}},rightPriceScale:{borderColor:"rgba(120, 120, 120, 0.24)"},timeScale:{borderColor:"rgba(120, 120, 120, 0.24)",timeVisible:!0,secondsVisible:!1},crosshair:{mode:1}}),a=l.addSeries(kl,{lineColor:L,topColor:"rgba(245, 158, 11, 0.32)",bottomColor:"rgba(245, 158, 11, 0.02)",lineWidth:2,priceLineColor:L,lastValueVisible:!0});const W=document.querySelector("[data-chart-history]");if(W)try{const T=Le(JSON.parse(W.textContent||"[]"));T.length>0&&(c.points=T.slice(-c.maxPoints),a.setData(Ne(c.points)),l.timeScale().fitContent())}catch{}v.style.background=q,o={base:g,quote:y},Ai(o.base,o.quote,"chart").catch(()=>{})},Gn=f=>{const v=I(f.baseCurrency,f.quoteCurrency);if(e.set(v,f),F(f),(e.get(`card:${v}`)||[]).forEach(y=>{if(y.rateNode){const L=Number(f.rate)>=100?2:6;y.rateNode.textContent=f.rate==null?"-":k(f.rate,L)}y.updatedNode&&(y.updatedNode.textContent=S(f.observedAtUtc));const _=Number(f.rate);y.inverseNode&&Number.isFinite(_)&&_>0&&(y.inverseNode.textContent=k(1/_,6)),y.providerNode&&(y.providerNode.textContent=f.source||t.updateUnavailable||"source indisponible"),y.indicatorNode&&(y.indicatorNode.textContent=f.isIndicative?t.indicative||"indicatif":t.direct||"direct")}
1),h&&v===I(h.base,h.quote)){const y=e.get("converter:renderer");typeof y=="function"&&y(f)}o&&v===I(o.base,o.quote)&&Yn(f)},Yn=f=>{const v=document.querySelector("[data-chart-status]");if(!l||!a||!v)return;const g=Array.isArray(f.ticks)?[...f.ticks]:[];if(f.rate!=null&&f.observedAtUtc&&g.push({timestampUtc:f.observedAtUtc,value:f.rate,source:f.source,isIndicative:f.isIndicative}),g.length===0)return;const y=Le(g);if(y.length===0)return;c.points=Qn(c.points,y,c.maxPoints),a.setData(Ne(c.points));const _=c.points.some(V=>V.isIndicative!==!1),L=Array.from(new Set(c.points.map(V=>V.source).filter(Boolean))).join(", "),N=c.points.at(-1),q=N?new Date(N.time*1e3).toISOString():null,W=_?"Données indicatives":"Données de marché",T=L?` · ${L}`:"";v.textContent=`${W} · ${S(q)}${T}`};Bn(),$n(),Wn(),Dt(),ut(),Dn(),Un(),jn(),Zn()})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.