(self.webpackChunktradingview = self.webpackChunktradingview || []).push([
    [36683], {
        24654: e => {
            "use strict";
            e.exports = function(e) {
                for (var i = [], s = e.length, n = 0; n < s; n++) {
                    var a = e.charCodeAt(n);
                    if (a >= 55296 && a <= 56319 && s > n + 1) {
                        var t = e.charCodeAt(n + 1);
                        t >= 56320 && t <= 57343 && (a = 1024 * (a - 55296) + t - 56320 + 65536, n += 1)
                    }
                    a < 128 ? i.push(a) : a < 2048 ? (i.push(a >> 6 | 192), i.push(63 & a | 128)) : a < 55296 || a >= 57344 && a < 65536 ? (i.push(a >> 12 | 224), i.push(a >> 6 & 63 | 128), i.push(63 & a | 128)) : a >= 65536 && a <= 1114111 ? (i.push(a >> 18 | 240), i.push(a >> 12 & 63 | 128), i.push(a >> 6 & 63 | 128), i.push(63 & a | 128)) : i.push(239, 191, 189)
                }
                return new Uint8Array(i).buffer
            }
        },
        9995: (e, i, s) => {
            var n = s(939340);
            e.exports = function(e) {
                return e = n(e ^= e >>> 16, 2246822507), e = n(e ^= e >>> 13, 3266489909), (e ^= e >>> 16) >>> 0
            }
        },
        939340: e => {
            "use strict";
            e.exports = Math.imul || function(e, i) {
                var s = 65535 & e,
                    n = 65535 & i;
                return s * n + ((e >>> 16 & 65535) * n + s * (i >>> 16 & 65535) << 16 >>> 0) | 0
            }
        },
        855385: (e, i, s) => {
            var n = s(939340),
                a = s(9995),
                t = s(24654),
                c = new Uint32Array([3432918353, 461845907]);

            function o(e, i) {
                return e << i | e >>> 32 - i
            }
            e.exports = function(e, i) {
                if (i = i ? 0 | i : 0, "string" == typeof e && (e = t(e)), !(e instanceof ArrayBuffer)) throw new TypeError("Expected key to be ArrayBuffer or string");
                var s = new Uint32Array([i]);
                return function(e, i) {
                        for (var s = e.byteLength / 4 | 0, a = new Uint32Array(e, 0, s), t = 0; t < s; t++) a[t] = n(a[t], c[0]), a[t] = o(a[t], 15), a[t] = n(a[t], c[1]), i[0] = i[0] ^ a[t], i[0] = o(i[0], 13), i[0] = n(i[0], 5) + 3864292196
                    }(e, s),
                    function(e, i) {
                        var s = e.byteLength / 4 | 0,
                            a = e.byteLength % 4,
                            t = 0,
                            r = new Uint8Array(e, 4 * s, a);
                        switch (a) {
                            case 3:
                                t ^= r[2] << 16;
                            case 2:
                                t ^= r[1] << 8;
                            case 1:
                                t ^= r[0] << 0, t = o(t = n(t, c[0]), 15), t = n(t, c[1]), i[0] = i[0] ^ t
                        }
                    }(e, s),
                    function(e, i) {
                        i[0] = i[0] ^ e.byteLength, i[0] = a(i[0])
                    }(e, s), s.buffer
            }
        },
        251954: (e, i, s) => {
            "use strict";
            s.d(i, {
                emit: () => m,
                emitOnce: () => g,
                on: () => r,
                subscribe: () => l,
                unsubscribe: () => o
            });
            var n = s(942634);
            const a = {},
                t = [],
                c = {};

            function o(e, i, s) {
                a[e].unsubscribe(s, i)
            }

            function r(e, i, s) {
                l(e, i, s)
            }

            function l(e, i, s, t) {
                a.hasOwnProperty(e) || (a[e] = new n.Delegate), c[e] ? i.call(s) : a[e].subscribe(s, i, t)
            }

            function m(e, ...i) {
                const s = [e].concat(i);
                t.forEach((e => {
                    e.apply(null, s)
                })), a.hasOwnProperty(e) && a[e].fire.apply(a[e], i)
            }

            function g(e) {
                c[e] && console.warn(`Something went wrong: emitOnce called multiple times with same event (${e})`), c[e] = !0, m.apply(null, arguments)
            }
        },
        314802: (e, i, s) => {
            "use strict";
            s.d(i, {
                isOnMobileAppPage: () => a,
                urlWithMobileAppParams: () => t
            });
            var n = s(181706);

            function a(e, i = !1) {
                const {
                    searchParams: s
                } = new URL(String(location));
                let a = "true" === s.get("mobileapp_new"),
                    t = "true" === s.get("mobileapp");
                if (!i) {
                    const e = n.get("tv_app") || "";
                    a || (a = ["android", "android_nps"].includes(e)), t || (t = "ios" === e)
                }
                return !("new" !== e && "any" !== e || !a) || !("new" === e || !t)
            }

            function t(e, i = !1) {
                if (a("new", i)) {
                    const i = new URL(e, location.href);
                    i.searchParams.set("mobileapp_new", "true"), e = i.toString()
                }
                if (a("old", i)) {
                    const i = new URL(e, location.href);
                    i.searchParams.set("mobileapp", "true"), e = i.toString()
                }
                return e
            }
        },
        638456: (e, i, s) => {
            "use strict";
            s.r(i), s.d(i, {
                CheckMobile: () => _,
                appVersion: () => g,
                checkPageType: () => u,
                desktopAppVersion: () => m,
                isChrome: () => w,
                isDesktopApp: () => r,
                isEdge: () => v,
                isFF: () => p,
                isLinux: () => o,
                isMac: () => t,
                isSafari: () => b,
                isSymphonyEmbed: () => l,
                isWindows: () => c,
                onGoPro: () => k,
                onMainPage: () => f,
                onWidget: () => d,
                supportTouch: () => h
            });
            var n = s(167175);
            const a = window.TradingView = window.TradingView || {};

            function t() {
                return n.isMac
            }

            function c() {
                return n.isWindows
            }

            function o() {
                return n.isLinux
            }

            function r() {
                return /TVDesktop/i.test(navigator.userAgent)
            }

            function l() {
                return a.isSymphony || !1
            }

            function m() {
                const e = navigator.userAgent.match(/TVDesktop\/([^\s]+)/);
                return e && e[1]
            }

            function g() {
                const e = navigator.userAgent.match(/TradingView\/([^\s]+)/);
                return e && e[1]
            }
            const _ = {
                Android: () => n.isAndroid,
                BlackBerry: () => n.isBlackBerry,
                iOS: () => n.isIOS,
                Opera: () => n.isOperaMini,
                isIPad: () => n.isIPad,
                any: () => n.isAnyMobile
            };

            function d() {
                const e = ["^widgetembed/?$", "^cmewidgetembed/?$", "^([0-9a-zA-Z-]+)/widgetembed/?$", "^([0-9a-zA-Z-]+)/widgetstatic/?$", "^([0-9a-zA-Z-]+)?/?mediumwidgetembed/?$", "^twitter-chart/?$", "^embed/([0-9a-zA-Z]{8})/?$", "^widgetpopup/?$", "^extension/?$", "^idea-popup/?$", "^hotlistswidgetembed/?$", "^([0-9a-zA-Z-]+)/hotlistswidgetembed/?$", "^marketoverviewwidgetembed/?$", "^([0-9a-zA-Z-]+)/marketoverviewwidgetembed/?$", "^eventswidgetembed/?$", "^tickerswidgetembed/?$", "^forexcrossrateswidgetembed/?$", "^forexheatmapwidgetembed/?$", "^marketquoteswidgetembed/?$", "^screenerwidget/?$", "^cryptomktscreenerwidget/?$", "^([0-9a-zA-Z-]+)/cryptomktscreenerwidget/?$", "^([0-9a-zA-Z-]+)/marketquoteswidgetembed/?$", "^technical-analysis-widget-embed/$", "^singlequotewidgetembed/?$", "^([0-9a-zA-Z-]+)/singlequotewidgetembed/?$", "^embed-widget/([0-9a-zA-Z-]+)/(([0-9a-zA-Z-]+)/)?$"],
                    i = window.location.pathname.replace(/^\//, "");
                let s;
                for (let n = e.length - 1; n >= 0; n--)
                    if (s = new RegExp(e[n]), s.test(i)) return !0;
                return !1
            }

            function h() {
                return n.mobiletouch || n.touch || n.isAnyMobile
            }

            function u(e) {
                return new URLSearchParams(window.location.search).get("page_type") === e
            }
            a.isMobile = _, a.onWidget = d;
            const w = n.isChrome,
                p = n.isFF,
                v = n.isEdge,
                b = n.isSafari;

            function k() {
                return "/pricing/" === window.location.pathname
            }

            function f() {
                return "/" === window.location.pathname
            }
        },
        188526: (e, i, s) => {
            "use strict";
            s.d(i, {
                getSettings: () => d
            });
            var n = s(251954),
                a = s(638456),
                t = s(314802),
                c = s(261030),
                o = s(54845),
                r = s(125226);
            const l = window.initData.snowplowSettings;
            let m, g = "web",
                _ = "";

            function d() {
                if (m) return m
            }(0, a.isDesktopApp)() && (g = "pc", _ = "_desktop"), (0, t.isOnMobileAppPage)("old") ? (g = "mob", _ = "_ios") : (0, t.isOnMobileAppPage)("new") && (g = "mob", _ = "_android"), l && l.params && l.enabled && (m = {
                collectorId: l.collectorId,
                url: l.url,
                params: {
                    appId: l.params.appId + _,
                    platform: g,
                    discoverRootDomain: !0,
                    contexts: {
                        webPage: !0
                    },
                    eventMethod: "get",
                    maxLocalStorageQueueSize: 30,
                    anonymousTracking: !(0, r.isFeatureEnabled)("snowplow_settings_override") && !(0, c.getCookieSetting)(c.CookieSettings.Analytics) && {
                        withSessionTracking: !0
                    },
                    sessionCookieTimeout: (0, c.getCookieSetting)(c.CookieSettings.Analytics) ? 1800 : 7776e3
                }
            }), n.subscribe(c.cookieSettingsChangeEvent, ((e, i) => {
                (0, r.isFeatureEnabled)("snowplow_settings_override") || e === c.CookieSettings.Analytics && (i ? o.SnowplowTrackerClient.disableAnonymousTracking() : o.SnowplowTrackerClient.enableAnonymousTracking())
            }), null)
        },
        469449: (e, i, s) => {
            "use strict";
            s.r(i), s.d(i, {
                SnowplowEmbedWidgetTracker: () => _,
                getTrackerInstance: () => g
            });
            var n = s(347915),
                a = s(188526),
                t = s(54845);
            const c = {
                host: "_unknown",
                path: ""
            };

            function o(e) {
                if (e) try {
                    const i = new URL(e);
                    return {
                        host: i.hostname || i.host || "_unknown",
                        path: i.pathname
                    }
                } catch (e) {
                    return
                }
            }

            function r() {
                var e;
                return o(function() {
                    var e, i;
                    const s = null === (i = null === (e = window.initData) || void 0 === e ? void 0 : e.hashSettings) || void 0 === i ? void 0 : i["page-uri"];
                    if (s) return "https://" + s
                }()) || o(document.referrer) || o(null === (e = location.ancestorOrigins) || void 0 === e ? void 0 : e[0]) || c
            }

            function l(e) {
                const i = r();
                return {
                    host: i.host,
                    path: i.path,
                    widget_id: e
                }
            }
            let m = null;

            function g() {
                if (null === m) {
                    const e = (0, a.getSettings)();
                    void 0 !== e && (m = new _(e, {
                        widget_tv_link_click: n.widget_tv_link_click,
                        widgets_without_websocket: n.widgets_without_websocket,
                        widget_load_meta_info: n.widget_load_meta_info
                    }))
                }
                return m
            }
            class _ extends t.SnowplowTrackerBase {
                trackWidgetTVLinkClick(e) {
                    this._trackSelfDescribingEvent("widget_tv_link_click", e)
                }
                trackWidgetPageView(e) {
                    setTimeout((() => {
                        const i = { ...l(e),
                            event_name: "page_view"
                        };
                        this._trackSelfDescribingEvent("widgets_without_websocket", i)
                    }), 0)
                }
                trackWidgetLoadMetaInfo(e) {
                    const i = { ...e,
                        ...l(e.widget_id),
                        event_name: "widget_load_meta_info"
                    };
                    this._trackSelfDescribingEvent("widget_load_meta_info", i)
                }
            }
        },
        54845: (e, i, s) => {
            "use strict";
            s.d(i, {
                SnowplowTrackerBase: () => m,
                SnowplowTrackerClient: () => l
            });
            var n = s(125226),
                a = s(638456),
                t = s(573034),
                c = s(570056);
            const o = new Set,
                r = {
                    v3: {
                        trackPageView: t.trackPageView,
                        trackSelfDescribingEvent: t.trackSelfDescribingEvent,
                        discardBrace: t.discardBrace,
                        disableAnonymousTracking: t.disableAnonymousTracking,
                        enableActivityTrackingCallback: t.enableActivityTrackingCallback,
                        disableActivityTracking: t.disableActivityTracking,
                        newTracker: e => (0, t.newTracker)(e.collectorId, e.url, e.params),
                        setUserId: e => (0, t.setUserId)(e ? `${e}` : null),
                        enableAnonymousTracking: () => (0, t.enableAnonymousTracking)({
                            options: {
                                withSessionTracking: !0
                            }
                        })
                    },
                    v2: {
                        newTracker: e => {
                            o.has(e.collectorId) || ((0, c.snowplowTracker)("newTracker", e.collectorId, e.url, e.params), o.add(e.collectorId))
                        },
                        discardBrace: e => (0, c.snowplowTracker)("discardBrace", e),
                        setUserId: e => (0, c.snowplowTracker)("setUserId", (0, a.isSymphonyEmbed)() ? void 0 : e),
                        trackPageView: () => (0, c.snowplowTracker)("trackPageView"),
                        trackSelfDescribingEvent: e => (0, c.snowplowTracker)("trackSelfDescribingEvent", e.event),
                        disableAnonymousTracking: () => (0, c.snowplowTracker)("disableAnonymousTracking"),
                        enableAnonymousTracking: () => (0, c.snowplowTracker)("enableAnonymousTracking", {
                            withSessionTracking: !0
                        }),
                        enableActivityTrackingCallback: e => (0, c.snowplowTracker)("enableActivityTrackingCallback", e.minimumVisitLength, e.heartbeatDelay, e.callback),
                        disableActivityTracking: () => {}
                    }
                },
                l = new Proxy(r, {
                    get: (e, i, s) => e[(0, n.isFeatureEnabled)("snowplow_3") ? "v3" : "v2"][i]
                });
            class m {
                constructor(e, i) {
                    this._version = (0, n.isFeatureEnabled)("snowplow_3") ? "v3" : "v2", "v2" === this._version && (e.params.pageUnloadTimer = 10), l.newTracker(e), this._schemes = i, this._collectorId = e.collectorId, this._setDiscardBrace(!0)
                }
                trackPageView() {
                    l.trackPageView()
                }
                setUserId(e) {
                    l.setUserId((0, a.isSymphonyEmbed)() ? void 0 : e)
                }
                _setDiscardBrace(e) {
                    l.discardBrace(e)
                }
                _startActivityWatcher(e) {
                    let i = 0;
                    return l.enableActivityTrackingCallback({
                        minimumVisitLength: e.minimumVisitLength,
                        heartbeatDelay: e.heartbeatDelay,
                        callback: () => {
                            i++
                        }
                    }), {
                        disableTracking: () => {
                            l.disableActivityTracking()
                        },
                        flushTrackingResult: () => {
                            const s = i * e.heartbeatDelay;
                            return i = 0, s
                        }
                    }
                }
                _trackSelfDescribingEvent(e, i) {
                    const s = this._schemes[e];
                    if (!s) throw new Error("SelfDescribingEvent must have a schema");
                    const n = {
                        event: {
                            data: i,
                            schema: s.schema
                        }
                    };
                    l.trackSelfDescribingEvent(n)
                }
            }
        },
        942634: (e, i, s) => {
            "use strict";
            s.r(i), s.d(i, {
                Delegate: () => t
            });
            const n = (0, s(692558).getLogger)("Common.Delegate");

            function a(e) {
                return !e.singleShot
            }
            class t {
                constructor() {
                    this.fire = this._fireImpl.bind(this), this._listeners = []
                }
                subscribe(e, i, s) {
                    this._listeners.push({
                        object: e,
                        member: i,
                        singleShot: !!s,
                        skip: !1
                    })
                }
                unsubscribe(e, i) {
                    for (let s = 0; s < this._listeners.length; ++s) {
                        const n = this._listeners[s];
                        if (n.object === e && n.member === i) {
                            n.skip = !0, this._listeners.splice(s, 1);
                            break
                        }
                    }
                }
                unsubscribeAll(e) {
                    for (let i = this._listeners.length - 1; i >= 0; --i) {
                        const s = this._listeners[i];
                        s.object === e && (s.skip = !0, this._listeners.splice(i, 1))
                    }
                }
                destroy() {
                    this._listeners = []
                }
                _fireImpl(...e) {
                    const i = this._listeners;
                    this._listeners = this._listeners.filter(a);
                    const s = i.length;
                    for (let a = 0; a < s; ++a) {
                        const s = i[a];
                        if (!s.skip) try {
                            s.member.apply(s.object || null, e)
                        } catch (e) {
                            n.logError(`${e&&(e.stack||e.message)}`)
                        }
                    }
                }
            }
        },
        181706: (e, i, s) => {
            "use strict";

            function n(e, i, s, n, a) {
                let t = "";
                if (n = n ? "; path=" + n : "", a = a ? "; domain=" + a : "", s) {
                    const e = new Date;
                    e.setTime(e.getTime() + 24 * s * 60 * 60 * 1e3), t = "; expires=" + e.toUTCString()
                } else t = "";
                document.cookie = e + "=" + i + t + a + n
            }

            function a(e) {
                const i = e + "=",
                    s = document.cookie.split(";");
                for (let e = 0; e < s.length; e++) {
                    let n = s[e];
                    for (;
                        " " === n.charAt(0);) n = n.substring(1, n.length);
                    if (0 === n.indexOf(i)) return n.substring(i.length, n.length)
                }
                return null
            }
            s.d(i, {
                get: () => a,
                set: () => n
            })
        },
        347915: e => {
            "use strict";
            e.exports = JSON.parse('{"permission_dialogs":{"schema":"iglu:com.tradingview/permission_dialogs/jsonschema/1-0-0"},"studies_analytics":{"schema":"iglu:com.tradingview/studies_analytics_v2/jsonschema/1-0-0"},"drawings_analytics":{"schema":"iglu:com.tradingview/drawings_analytics/jsonschema/1-0-0"},"bar_replay_analytics":{"schema":"iglu:com.tradingview/bar_replay_analytics/jsonschema/1-0-0"},"chart_api_drawing_creation":{"schema":"iglu:com.tradingview/chart_api_drawing_creation/jsonschema/1-0-0"},"chart_symbols":{"schema":"iglu:com.tradingview/chart_symbols/jsonschema/1-0-0"},"chart_styles":{"schema":"iglu:com.tradingview/chart_styles/jsonschema/1-0-0"},"dino_dialog":{"schema":"iglu:com.tradingview/dino_dialog/jsonschema/1-0-0"},"solutions_watch":{"schema":"iglu:com.tradingview/solutions_watch/jsonschema/1-0-3"},"solutions_send_ticket":{"schema":"iglu:com.tradingview/solutions_send_ticket/jsonschema/1-0-0"},"solutions_nodes_watch":{"schema":"iglu:com.tradingview/solutions_nodes_watch/jsonschema/1-0-0"},"solutions_skip":{"schema":"iglu:com.tradingview/solutions_skip/jsonschema/1-0-0"},"solutions_reactions":{"schema":"iglu:com.tradingview/solutions_reactions/jsonschema/1-0-0"},"user_signup":{"schema":"iglu:com.tradingview/user_signup/jsonschema/1-0-1"},"trials":{"schema":"iglu:com.tradingview/trials/jsonschema/1-0-2"},"refund_transactions":{"schema":"iglu:com.tradingview/refund_transactions/jsonschema/1-0-1"},"billing":{"schema":"iglu:com.tradingview/billing/jsonschema/1-0-1"},"subscription_renewal":{"schema":"iglu:com.tradingview/subscription_renewal/jsonschema/1-0-1"},"subscription_removal":{"schema":"iglu:com.tradingview/subscription_removal/jsonschema/1-0-0"},"chargeback":{"schema":"iglu:com.tradingview/chargeback/jsonschema/1-0-0"},"news_clicks":{"schema":"iglu:com.tradingview/news_clicks/jsonschema/1-0-0"},"news_events":{"schema":"iglu:com.tradingview/news_events/jsonschema/1-0-0"},"gopro_visits":{"schema":"iglu:com.tradingview/gopro_visits/jsonschema/1-0-0"},"logins":{"schema":"iglu:com.tradingview/logins/jsonschema/1-0-1"},"referral_signup":{"schema":"iglu:com.tradingview/referral_signup/jsonschema/1-0-0"},"referral_income":{"schema":"iglu:com.tradingview/referral_income/jsonschema/1-0-0"},"referral_spending":{"schema":"iglu:com.tradingview/referral_spending/jsonschema/1-0-0"},"referral_ref_link":{"schema":"iglu:com.tradingview/referral_ref_link/jsonschema/1-0-0"},"referral_visits":{"schema":"iglu:com.tradingview/referral_visits/jsonschema/1-0-0"},"follow":{"schema":"iglu:com.tradingview/follow/jsonschema/1-0-0"},"full_featured_chart_button":{"schema":"iglu:com.tradingview/full_featured_chart_button/jsonschema/1-0-0"},"publish_ideas":{"schema":"iglu:com.tradingview/publish_ideas/jsonschema/1-0-0"},"idea_update_created":{"schema":"iglu:com.tradingview/idea_update_created/jsonschema/1-0-0"},"idea_posting_comments":{"schema":"iglu:com.tradingview/idea_posting_comments/jsonschema/1-0-0"},"publish_scripts":{"schema":"iglu:com.tradingview/publish_scripts/jsonschema/1-0-0"},"idea_likes":{"schema":"iglu:com.tradingview/idea_likes/jsonschema/1-0-0"},"trading_broker_connection_status":{"schema":"iglu:com.tradingview/trading_broker_connection_status/jsonschema/1-0-1"},"trading_order_status":{"schema":"iglu:com.tradingview/trading_order_status/jsonschema/1-0-4"},"trading_order_widget":{"schema":"iglu:com.tradingview/trading_order_widget/jsonschema/1-0-4"},"switch_year_to_month_after_fail":{"schema":"iglu:com.tradingview/switch_year_to_month_after_fail/jsonschema/1-0-0"},"switching_yearly_to_monthly":{"schema":"iglu:com.tradingview/switching_yearly_to_monthly/jsonschema/1-0-0"},"phone_verification_dialog":{"schema":"iglu:com.tradingview/phone_verification_dialog/jsonschema/1-0-0"},"copy_reserve_codes":{"schema":"iglu:com.tradingview/copy_reserve_codes/jsonschema/1-0-0"},"tv_coins_dialog_watch":{"schema":"iglu:com.tradingview/tv_coins_dialog_watch/jsonschema/1-0-0"},"set_script_permission":{"schema":"iglu:com.tradingview/set_script_permission/jsonschema/1-0-0"},"remove_script_permission":{"schema":"iglu:com.tradingview/remove_script_permission/jsonschema/1-0-0"},"change_pro_plan":{"schema":"iglu:com.tradingview/change_pro_plan/jsonschema/1-0-0"},"unsubscribe_feedback":{"schema":"iglu:com.tradingview/unsubscribe_feedback/jsonschema/1-0-0"},"unsubscribe_dialog":{"schema":"iglu:com.tradingview/unsubscribe_dialog/jsonschema/1-0-0"},"fail_on_duplicate_bt_payment_method":{"schema":"iglu:com.tradingview/fail_on_duplicate_bt_payment_method/jsonschema/1-0-0"},"trial_block_event":{"schema":"iglu:com.tradingview/trial_block_event/jsonschema/1-0-0"},"chat":{"schema":"iglu:com.tradingview/chat/jsonschema/1-0-0"},"broker_brandig_banner":{"schema":"iglu:com.tradingview/broker_brandig_banner/jsonschema/1-0-0"},"broker_profile_links_click":{"schema":"iglu:com.tradingview/broker_profile_links_click/jsonschema/1-0-0"},"streams_actions":{"schema":"iglu:com.tradingview/streams_actions/jsonschema/1-0-0"},"streams_settings_created":{"schema":"iglu:com.tradingview/streams_settings_created/jsonschema/1-0-0"},"streams_viewing_duration":{"schema":"iglu:com.tradingview/streams_viewing_duration/jsonschema/1-0-0"},"broker_open_account":{"schema":"iglu:com.tradingview/broker_open_account/jsonschema/1-0-3"},"financials_dialog":{"schema":"iglu:com.tradingview/financials_dialog/jsonschema/1-0-0"},"payment_order_dialog_initial":{"schema":"iglu:com.tradingview/payment_order_dialog_initial/jsonschema/1-0-0"},"payment_order_dialog_changes":{"schema":"iglu:com.tradingview/payment_order_dialog_changes/jsonschema/1-0-0"},"gopro_cards_clicks":{"schema":"iglu:com.tradingview/gopro_cards_clicks/jsonschema/1-0-0"},"search_toolbar":{"schema":"iglu:com.tradingview/search_toolbar/jsonschema/1-0-1"},"change_symbol":{"schema":"iglu:com.tradingview/change_symbol/jsonschema/1-0-0"},"burger_menu_click":{"schema":"iglu:com.tradingview/burger_menu_click/jsonschema/1-0-0"},"app_banner":{"schema":"iglu:com.tradingview/app_banner/jsonschema/1-0-0"},"app_link":{"schema":"iglu:com.tradingview/app_link/jsonschema/1-0-0"},"screener_high_level":{"schema":"iglu:com.tradingview/screener_high_level/jsonschema/1-0-0"},"screener_new_clicks":{"schema":"iglu:com.tradingview/screener_new_clicks/jsonschema/1-0-0"},"widget_tv_link_click":{"schema":"iglu:com.tradingview/widget_tv_link_click/jsonschema/1-0-0"},"widgets_without_websocket":{"schema":"iglu:com.tradingview/widgets_without_websocket/jsonschema/1-0-0"},"widget_load_meta_info":{"schema":"iglu:com.tradingview/widget_load_meta_info/jsonschema/1-0-0"},"page_unload":{"schema":"iglu:com.tradingview/page_unload/jsonschema/1-0-0"},"idea_events":{"schema":"iglu:com.tradingview/idea_events/jsonschema/1-0-0"},"idea_rec_feed":{"schema":"iglu:com.tradingview/web_test/jsonschema/1-0-0"},"market_heatmap_events":{"schema":"iglu:com.tradingview/market_heatmap_events/jsonschema/1-0-0"},"toast_dialog":{"schema":"iglu:com.tradingview/toast_dialog/jsonschema/1-0-0"},"ad_dialog":{"schema":"iglu:com.tradingview/ad_dialog/jsonschema/1-0-0"},"toolbar_button_click":{"schema":"iglu:com.tradingview/toolbar_button_click/jsonschema/1-0-0"},"sparks":{"schema":"iglu:com.tradingview/sparks/jsonschema/1-0-0"},"longer_billing_cycle_offer":{"schema":"iglu:com.tradingview/longer_billing_cycle_offer/jsonschema/1-0-0"},"market_data_solution":{"schema":"iglu:com.tradingview/market_data_solution/jsonschema/1-0-0"},"pine_editor_events":{"schema":"iglu:com.tradingview/pine_editor_events/jsonschema/1-0-0"},"backtesting_events":{"schema":"iglu:com.tradingview/backtesting_events/jsonschema/1-0-0"},"three_d_secure":{"schema":"iglu:com.tradingview/three_d_secure/jsonschema/1-0-0"},"careers_link_click":{"schema":"iglu:com.tradingview/careers_link_click/jsonschema/1-0-0"},"featured_placement":{"schema":"iglu:com.tradingview/featured_placement/jsonschema/1-0-1"},"toolbar_indicators":{"schema":"iglu:com.tradingview/toolbar_indicators/jsonschema/1-0-1"},"ui_events":{"schema":"iglu:com.tradingview/ui_events/jsonschema/1-0-0"},"mind_events":{"schema":"iglu:com.tradingview/mind_events/jsonschema/1-0-0"},"signup_popup_dialog":{"schema":"iglu:com.tradingview/signup_popup_dialog/jsonschema/1-0-0"},"solutions_search_events":{"schema":"iglu:com.tradingview/help_desk/jsonschema/1-0-0"},"trading_general_events":{"schema":"iglu:com.tradingview/trading_general_events/jsonschema/1-0-1"},"whats_new_event":{"schema":"iglu:com.tradingview/whats_new/jsonschema/1-0-0"},"get_widget_button":{"schema":"iglu:com.tradingview/get_widget_button/jsonschema/1-0-0"},"device_check_decline":{"schema":"iglu:com.tradingview/device_check_decline/jsonschema/1-0-0"},"run_or_signin_with_feature":{"schema":"iglu:com.tradingview/run_or_signin_with_feature/jsonschema/1-0-0"},"user_declaration_event":{"schema":"iglu:com.tradingview/user_declaration_event/jsonschema/1-0-0"},"partial_refund_offer_event":{"schema":"iglu:com.tradingview/partial_refund_offer_event/jsonschema/1-0-0"},"paper_competition_event":{"schema":"iglu:com.tradingview/paper_competition_event/jsonschema/1-0-2"},"language_selector":{"schema":"iglu:com.tradingview/language_selector/jsonschema/1-0-0"},"promo_banner_event":{"schema":"iglu:com.tradingview/promo_banner/jsonschema/1-0-3"},"ai_news_summary":{"schema":"iglu:com.tradingview/ai_news_summary/jsonschema/1-0-0"},"alerts_creation":{"schema":"iglu:com.tradingview/alerts_creation/jsonschema/1-0-0"},"login_required":{"schema":"iglu:com.tradingview/login_required/jsonschema/1-0-0"},"assistant_chat_action":{"schema":"iglu:com.tradingview/assistant_chat_action/jsonschema/1-0-0"},"options_event":{"schema":"iglu:com.tradingview/options_event/jsonschema/1-0-0"}}')
        }
    }
]);