PageSourceSearch

https://www.cbd.fr/themes/alysum/assets/js/theme.js?v=1790061811

js cbd.fr collected 2026-09-26 15:48:27 UTC 343,614 bytes, 5,180 lines download raw bytes

1!function () {
2    var n = {
3        46: function () {
4            function l(e) {
5                return (l = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
6                    return typeof e
7                } : function (e) {
8                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
9                })(e)
10            }
11
12            !function (s) {
13                function a(e, t) {
14                    this.options = t, this.$elementFilestyle = [], this.$element = s(e)
15                }
16
17                var r = 0;
18                a.prototype = {
19                    clear: function () {
20                        this.$element.val(""), this.$elementFilestyle.find(":text").val(""), this.$elementFilestyle.find(".badge").remove()
21                    }, destroy: function () {
22                        this.$element.removeAttr("style").removeData("filestyle"), this.$elementFilestyle.remove()
23                    }, disabled: function (e) {
24                        if (!0 === e) this.options.disabled || (this.$element.attr("disabled", "true"), this.$elementFilestyle.find("label").attr("disabled", "true"), this.options.disabled = !0); else {
25                            if (!1 !== e) return this.options.disabled;
26                            this.options.disabled && (this.$element.removeAttr("disabled"), this.$elementFilestyle.find("label").removeAttr("disabled"), this.options.disabled = !1)
27                        }
28                    }, buttonBefore: function (e) {
29                        if (!0 === e) this.options.buttonBefore || (this.options.buttonBefore = !0, this.options.input && (this.$elementFilestyle.remove(), this.constructor(), this.pushNameFiles())); else {
30                            if (!1 !== e) return this.options.buttonBefore;
31                            this.options.buttonBefore && (this.options.buttonBefore = !1, this.options.input && (this.$elementFilestyle.remove(), this.constructor(), this.pushNameFiles()))
32                        }
33                    }, icon: function (e) {
34                        if (!0 === e) this.options.icon || (this.options.icon = !0, this.$elementFilestyle.find("label").prepend(this.htmlIcon())); else {
35                            if (!1 !== e) return this.options.icon;
36                            this.options.icon && (this.options.icon = !1, this.$elementFilestyle.find(".icon-span-filestyle").remove())
37                        }
38                    }, input: function (e) {
39                        if (!0 === e) this.options.input || (this.options.input = !0, this.options.buttonBefore ? this.$elementFilestyle.append(this.htmlInput()) : this.$elementFilestyle.prepend(this.htmlInput()), this.$elementFilestyle.find(".badge").remove(), this.pushNameFiles(), this.$elementFilestyle.find(".group-span-filestyle").addClass("input-group-btn")); else {
40                            if (!1 !== e) return this.options.input;
41                            this.options.input && (this.options.input = !1, this.$elementFilestyle.find(":text").remove(), 0 < (e = this.pushNameFiles()).length && this.options.badge && this.$elementFilestyle.find("label").append(' <span class="badge">' + e.length + "</span>"), this.$elementFilestyle.find(".group-span-filestyle").removeClass("input-group-btn"))
42                        }
43                    }, size: function (e) {
44                        if (void 0 === e) return this.options.size;
45                        var t = this.$elementFilestyle.find("label"), n = this.$elementFilestyle.find("input");
46                        t.removeClass("btn-lg btn-sm"), n.removeClass("input-lg input-sm"), "nr" != e && (t.addClass("btn-" + e), n.addClass("input-" + e))
47                    }, placeholder: function (e) {
48                        if (void 0 === e) return this.options.placeholder;
49                        this.options.placeholder = e, this.$elementFilestyle.find("input").attr("placeholder", e)
50                    }, buttonText: function (e) {
51                        if (void 0 === e) return this.options.buttonText;
52                        this.options.buttonText = e, this.$elementFilestyle.find("label .buttonText").html(this.options.buttonText)
53                    }, buttonName: function (e) {
54                        if (void 0 === e) return this.options.buttonName;
55                        this.options.buttonName = e, this.$elementFilestyle.find("label").attr({class: "btn " + this.options.buttonName})
56                    }, iconName: function (e) {
57                        if (void 0 === e) return this.options.iconName;
58                        this.$elementFilestyle.find(".icon-span-filestyle").attr({class: "icon-span-filestyle " + this.options.iconName})
59                    }, htmlIcon: function () {
60                        return this.options.icon ? '<span class="icon-span-filestyle ' + this.options.iconName + '"></span> ' : ""
61                    }, htmlInput: function () {
62                        return this.options.input ? '<input type="text" class="form-control ' + ("nr" == this.options.size ? "" : "input-" + this.options.size) + '" placeholder="' + this.options.placeholder + '" disabled> ' : ""
63                    }, pushNameFiles: function () {
64                        var e = "", t = [];
65                        void 0 === this.$element[0].files ? t[0] = {name: this.$element[0] && this.$element[0].value} : t = this.$element[0].files;
66                        for (var n = 0; n < t.length; n++) e += t[n].name.split("\\").pop() + ", ";
67                        return "" !== e ? this.$elementFilestyle.find(":text").val(e.replace(/\, $/g, "")) : this.$elementFilestyle.find(":text").val(""), t
68                    }, constructor: function () {
69                        var e, t, n = this, i = n.$element.attr("id");
70                        "" !== i && i || (n.$element.attr({id: i = "filestyle-" + r}), r++), t = '<span class="group-span-filestyle ' + (n.options.input ? "input-group-btn" : "") + '"><label for="' + i + '" class="btn ' + n.options.buttonName + " " + ("nr" == n.options.size ? "" : "btn-" + n.options.size) + '" ' + (n.options.disabled ? 'disabled="true"' : "") + ">" + n.htmlIcon() + '<span class="buttonText">' + n.options.buttonText + "</span></label></span>", e = n.options.buttonBefore ? t + n.htmlInput() : n.htmlInput() + t, n.$elementFilestyle = s('<div class="bootstrap-filestyle input-group">' + e + "</div>"), n.$elementFilestyle.find(".group-span-filestyle").attr("tabindex", "0").keypress(function (e) {
71                            if (13 === e.keyCode || 32 === e.charCode) return n.$elementFilestyle.find("label").click(), !1
72                        }), n.$element.css({
73                            position: "absolute",
74                            clip: "rect(0px 0px 0px 0px)"
75                        }).attr("tabindex", "-1").after(n.$elementFilestyle), n.options.disabled && n.$element.attr("disabled", "true"), n.$element.change(function () {
76                            var e = n.pushNameFiles();
77                            0 == n.options.input && n.options.badge ? 0 == n.$elementFilestyle.find(".badge").length ? n.$elementFilestyle.find("label").append(' <span class="badge">' + e.length + "</span>") : 0 == e.length ? n.$elementFilestyle.find(".badge").remove() : n.$elementFilestyle.find(".badge").html(e.length) : n.$elementFilestyle.find(".badge").remove()
78                        }
78), -1 < window.navigator.userAgent.search(/firefox/i) && n.$elementFilestyle.find("label").click(function () {
79                            return n.$element.click(), !1
80                        })
81                    }
82                };
83                var e = s.fn.filestyle;
84                s.fn.filestyle = function (i, r) {
85                    var o = "", e = this.each(function () {
86                        var e, t, n;
87                        "file" === s(this).attr("type") && (t = (e = s(this)).data("filestyle"), n = s.extend({}, s.fn.filestyle.defaults, i, "object" === l(i) && i), t || (e.data("filestyle", t = new a(this, n)), t.constructor()), "string" == typeof i && (o = t[i](r)))
88                    });
89                    return void 0 !== l(o) ? o : e
90                }, s.fn.filestyle.defaults = {
91                    buttonText: "Choose file",
92                    iconName: "glyphicon glyphicon-folder-open",
93                    buttonName: "btn-default",
94                    size: "nr",
95                    input: !0,
96                    badge: !0,
97                    icon: !0,
98                    buttonBefore: !1,
99                    disabled: !1,
100                    placeholder: ""
101                }, s.fn.filestyle.noConflict = function () {
102                    return s.fn.filestyle = e, this
103                }, s(function () {
104                    s(".filestyle").each(function () {
105                        var e = s(this), t = {
106                            input: "false" !== e.attr("data-input"),
107                            icon: "false" !== e.attr("data-icon"),
108                            buttonBefore: "true" === e.attr("data-buttonBefore"),
109                            disabled: "true" === e.attr("data-disabled"),
110                            size: e.attr("data-size"),
111                            buttonText: e.attr("data-buttonText"),
112                            buttonName: e.attr("data-buttonName"),
113                            iconName: e.attr("data-iconName"),
114                            badge: "false" !== e.attr("data-badge"),
115                            placeholder: e.attr("data-placeholder")
116                        };
117                        e.filestyle(t)
118                    })
119                })
120            }(window.jQuery)
121        }, 356: function () {
122            var g;
123            (g = jQuery).fn.scrollbox = function (m) {
124                return (m = g.extend({
125                    linear: !1,
126                    startDelay: 2,
127                    delay: 3,
128                    step: 5,
129                    speed: 32,
130                    switchItems: 1,
131                    direction: "vertical",
132                    distance: "auto",
133                    autoPlay: !0,
134                    onMouseOverPause: !0,
135                    paused: !1,
136                    queue: null,
137                    listElement: "ul",
138                    listItemElement: "li",
139                    infiniteLoop: !0,
140                    switchAmount: 0,
141                    afterForward: null,
142                    afterBackward: null,
143                    triggerStackable: !1
144                }, m)).scrollOffset = "vertical" === m.direction ? "scrollTop" : "scrollLeft", m.queue && (m.queue = g("#" + m.queue)), this.each(function () {
145                    var i, r, e, o, t, n, s, a, l, c = g(this), u = null, f = null, d = !1, p = 0, h = 0;
146                    m.onMouseOverPause && (c.bind("mouseover", function () {
147                        d = !0
148                    }), c.bind("mouseout", function () {
149                        d = !1
150                    })), i = c.children(m.listElement + ":first-child"), !1 === m.infiniteLoop && 0 === m.switchAmount && (m.switchAmount = i.children().length), n = function () {
151                        if (!d) {
152                            var e, t = i.children(m.listItemElement + ":first-child"),
153                                t = "auto" !== m.distance ? m.distance : "vertical" === m.direction ? t.outerHeight(!0) : t.outerWidth(!0),
154                                n = m.linear ? Math.min(c[0][m.scrollOffset] + m.step, t) : (n = Math.max(3, parseInt(.3 * (t - c[0][m.scrollOffset]), 10)), Math.min(c[0][m.scrollOffset] + n, t));
155                            if (t <= (c[0][m.scrollOffset] = n)) {
156                                for (e = 0; e < m.switchItems; e++) m.queue && 0 < m.queue.find(m.listItemElement).length ? (i.append(m.queue.find(m.listItemElement)[0]), i.children(m.listItemElement + ":first-child").remove()) : i.append(i.children(m.listItemElement + ":first-child")), ++p;
157                                c[0][m.scrollOffset] = 0, clearInterval(u), u = null, g.isFunction(m.afterForward) && m.afterForward.call(c, {
158                                    switchCount: p,
159                                    currentFirstChild: i.children(m.listItemElement + ":first-child")
160                                }), m.triggerStackable && 0 !== h ? r() : !1 === m.infiniteLoop && p >= m.switchAmount || m.autoPlay && (f = setTimeout(o, 1e3 * m.delay))
161                            }
162                        }
163                    }, s = function () {
164                        if (!d) {
165                            var e, t, n;
166                            if (0 === c[0][m.scrollOffset]) {
167                                for (e = 0; e < m.switchItems; e++) i.children(m.listItemElement + ":last-child").insertBefore(i.children(m.listItemElement + ":first-child"));
168                                t = i.children(m.listItemElement + ":first-child"), t = "auto" !== m.distance ? m.distance : "vertical" === m.direction ? t.height() : t.width(), c[0][m.scrollOffset] = t
169                            }
170                            n = m.linear ? Math.max(c[0][m.scrollOffset] - m.step, 0) : (n = Math.max(3, parseInt(.3 * c[0][m.scrollOffset], 10)), Math.max(c[0][m.scrollOffset] - n, 0)), 0 === (c[0][m.scrollOffset] = n) && (--p, clearInterval(u), u = null, g.isFunction(m.afterBackward) && m.afterBackward.call(c, {
171                                switchCount: p,
172                                currentFirstChild: i.children(m.listItemElement + ":first-child")
173                            }), m.triggerStackable && 0 !== h ? r() : m.autoPlay && (f = setTimeout(o, 1e3 * m.delay)))
174                        }
175                    }, r = function () {
176                        0 !== h && (f = 0 < h ? (h--, setTimeout(o, 0)) : (h++, setTimeout(e, 0)))
177                    }, o = function () {
178                        clearInterval(u), u = setInterval(n, m.speed)
179                    }, e = function () {
180                        clearInterval(u), u = setInterval(s, m.speed)
181                    }, a = function () {
182                        m.autoPlay = !0, d = !1, clearInterval(u), u = setInterval(n, m.speed)
183                    }, l = function () {
184                        d = !0
185                    }, t = function (e) {
186                        m.delay = e || m.delay, clearTimeout(f), m.autoPlay && (f = setTimeout(o, 1e3 * m.delay))
187                    }, m.autoPlay && (f = setTimeout(o, 1e3 * m.startDelay)), c.bind("resetClock", function (e) {
188                        t(e)
189                    }), c.bind("forward", function () {
190                        m.triggerStackable ? null !== u ? h++ : o() : (clearTimeout(f), o())
191                    }), c.bind("backward", function () {
192                        m.triggerStackable ? null !== u ? h-- : e() : (clearTimeout(f), e())
193                    }), c.bind("pauseHover", function () {
194                        l()
195                    }), c.bind("forwardHover", function () {
196                        a()
197                    }), c.bind("speedUp", function (e, t) {
198                        "undefined" === t && (t = Math.max(1, parseInt(m.speed / 2, 10))), m.speed = t
199                    }), c.bind("speedDown", function (e, t) {
200                        "undefined" === t && (t = 2 * m.speed), m.speed = t
201                    }), c.bind("updateConfig", function (e, t) {
202                        m = g.extend(m, t)
203                    })
204                })
205            }
206        }, 650: function () {
207            !function (x) {
208                "use strict";
209                var _ = 0;
210
211                function T(e, t) {
212                    return x.map(e, function (e) {
213                        return e + ".touchspin_" + t
214                    })
215                }
216
217                x.fn.TouchSpin = function (b) {
218                    if ("destroy" !== b) {
219                        var w = {
220                            min: 0,
221                            max: 100,
222                            initval: "",
223                            replacementval: "",
224                            step: 1,
225                            decimals: 0,
226                            stepinterval: 100,
227                            forcestepdivisibility: "round",
228                            stepintervaldelay: 500,
229                            verticalbuttons: !1,
230                            verticalupclass: "glyphicon glyphicon-chevron-up",
231                            verticaldownclass: "glyphicon glyphicon-chevron-down",
232                            prefix: "",
233                            postfix: "",
234                            prefix_extraclass: "",
235                            postfix_extraclass: "",
236                            booster: !0,
237                            boostat: 10,
238                            maxboostedstep: !1,
239                            mousewheel: !0,
240                            buttondown_class: "btn btn-default",
241                            buttonup_class: "btn btn-default",
242                            buttondown_txt: "-",
243                            buttonup_txt: "+"
244                        }, S = {
245                            min: "min",
246                            max: "max",
247                            initval: "init-val",
248                            replacementval: "replacement-val",
249                            step: "step",
250                            decimals: "decimals",
251                            stepinterval: "step-interval",
252                            verticalbuttons: "vertical-buttons",
253                            verticalupclass: "vertical-up-class",
254                            verticaldownclass: "vertical-down-class",
255                            forcestepdivisibility: "force-step-divisibility",
256                            stepintervaldelay: "step-interval-delay",
257                            prefix: "prefix",
258                            postfix: "postfix",
259                            prefix_extraclass: "prefix-extra-class",
260                            postfix_extraclass: "postfix-extra-class",
261                            booster: "booster",
262                            boostat: "boostat",
263                            maxboostedstep: "max-boosted-step",
264                            mousewheel: "mouse-wheel",
265                            buttondown_class: "button-down-class",
266                            buttonup_class: "button-up-class",
267                            buttondown_txt: "button-down-txt",
268                            buttonup_txt: "button-up-txt"
269                        };
270                        return this.each(function () {
271                            var a, l, n, i, e, t, r, o, c = x(this), s = c.data(), u = 0, f = !1;
272
273                            function d() {
274                                var e, t, n = c.val();
275                                "" !== n ? 0 < a.decimals && "." === n || (e = parseFloat(n), (t = e = isNaN(e) ? "" !== a.replacementval ? a.replacementval : 0 : e).toString() !== n && (t = e), e < a.min && (t = a.min), t = function (e) {
276                                    switch (a.forcestepdivisibility) {
277                                        case"round":
278                                            return (Math.round(e / a.step) * a.step).toFixed(a.decimals);
279                                        case"floor":
280                                            return (Math.floor(e / a.step) * a.step).toFixed(a.decimals);
281                                        case"ceil":
282                                            return (Math.ceil(e / a.step) * a.step).toFixed(a.decimals);
283                                        default:
284                                            return e
285                                    }
286                                }(t = e > a.max ? a.max : t), Number(n).toString() !== t.toString() && (c.val(t), c.trigger("change"))) : "" !== a.replacementval && (c.val(a.replacementval), c.trigger("change"))
287                            }
288
289                            function p() {
290                                if (a.booster) {
291                                    var e = Math.pow(2, Math.floor(u / a.boostat)) * a.step;
292                                    return a.maxboostedstep && e > a.maxboostedstep && (e = a.maxboostedstep, i = Math.round(i / e) * e), Math.max(a.step, e)
293                                }
294                                return a.step
295                            }
296
297                            function h() {
298                                d(), i = parseFloat(n.input.val());
299                                var e = i = isNaN(i) ? 0 : i, t = p();
300                                (i += t) > a.max && (i = a.max, c.trigger("touchspin.on.max"), v()), n.input.val(Number(i).toFixed(a.decimals)), e !== i && c.trigger("change")
301                            }
302
303                            function m() {
304                                d(), i = parseFloat(n.input.val());
305                                var e = i = isNaN(i) ? 0 : i, t = p();
306                                (i -= t) < a.min && (i = a.min, c.trigger("touchspin.on.min"), v()), n.input.val(i.toFixed(a.decimals)), e !== i && c.trigger("change")
307                            }
308
309                            function g() {
310                                v(), u = 0, f = "down", c.trigger("touchspin.on.startspin"), c.trigger("touchspin.on.startdownspin"), r = setTimeout(function () {
311                                    e = setInterval(function () {
312                                        u++, m()
313                                    }, a.stepinterval)
314                                }, a.stepintervaldelay)
315                            }
316
317                            function y() {
318                                v(), u = 0, f = "up", c.trigger("touchspin.on.startspin"), c.trigger("touchspin.on.startupspin"), o = setTimeout(function () {
319                                    t = setInterval(function () {
320                                        u++, h()
321                                    }, a.stepinterval)
322                                }, a.stepintervaldelay)
323                            }
324
325                            function v() {
326                                switch (clearTimeout(r), clearTimeout(o), clearInterval(e), clearInterval(t), f) {
327                                    case"up":
328                                        c.trigger("touchspin.on.stopupspin"), c.trigger("touchspin.on.stopspin");
329                                        break;
330                                    case"down":
331                                        c.trigger("touchspin.on.stopdownspin"), c.trigger("touchspin.on.stopspin")
332                                }
333                                u = 0, f = !1
334                            }
335
336                            c.data("alreadyinitialized") || (c.data("alreadyinitialized", !0), _ += 1, c.data("spinnerid", _), c.is("input") && ("" !== (a = x.extend({}, w, s, function () {
337                                var n = {};
338                                return x.each(S, function (e, t) {
339                                    t = "bts-" + t;
340                                    c.is("[data-" + t + "]") && (n[e] = c.data(t))
341                                }), n
342                            }(), b)).initval && "" === c.val() && c.val(a.initval), d(), function () {
343                                var e = c.val(), t = c.parent();
344                                "" !== e && (e = Number(e).toFixed(a.decimals));
345                                c.data("initvalue", e).val(e), c.addClass("form-control"), t.hasClass("input-group") ? function (e) {
346                                    e.addClass("bootstrap-touchspin");
347                                    var t, n, i = c.prev(), r = c.next(),
348        
348                                o = '<span class="input-group-addon bootstrap-touchspin-prefix">' + a.prefix + "</span>",
349                                        s = '<span class="input-group-addon bootstrap-touchspin-postfix">' + a.postfix + "</span>";
350                                    i.hasClass("input-group-btn") ? (t = '<button class="' + a.buttondown_class + ' bootstrap-touchspin-down" type="button">' + a.buttondown_txt + "</button>", i.append(t)) : (t = '<span class="input-group-btn"><button class="' + a.buttondown_class + ' bootstrap-touchspin-down" type="button">' + a.buttondown_txt + "</button></span>", x(t).insertBefore(c));
351                                    r.hasClass("input-group-btn") ? (n = '<button class="' + a.buttonup_class + ' bootstrap-touchspin-up" type="button">' + a.buttonup_txt + "</button>", r.prepend(n)) : (n = '<span class="input-group-btn"><button class="' + a.buttonup_class + ' bootstrap-touchspin-up" type="button">' + a.buttonup_txt + "</button></span>", x(n).insertAfter(c));
352                                    x(o).insertBefore(c), x(s).insertAfter(c), l = e
353                                }(t) : function () {
354                                    var e;
355                                    e = a.verticalbuttons ? '<div class="input-group bootstrap-touchspin"><span class="input-group-addon bootstrap-touchspin-prefix">' + a.prefix + '</span><span class="input-group-addon bootstrap-touchspin-postfix">' + a.postfix + '</span><span class="input-group-btn-vertical"><button class="' + a.buttondown_class + ' bootstrap-touchspin-up" type="button"><i class="' + a.verticalupclass + '"></i></button><button class="' + a.buttonup_class + ' bootstrap-touchspin-down" type="button"><i class="' + a.verticaldownclass + '"></i></button></span></div>' : '<div class="input-group bootstrap-touchspin"><span class="input-group-btn"><button class="' + a.buttondown_class + ' bootstrap-touchspin-down" type="button">' + a.buttondown_txt + '</button></span><span class="input-group-addon bootstrap-touchspin-prefix">' + a.prefix + '</span><span class="input-group-addon bootstrap-touchspin-postfix">' + a.postfix + '</span><span class="input-group-btn"><button class="' + a.buttonup_class + ' bootstrap-touchspin-up" type="button">' + a.buttonup_txt + "</button></span></div>";
356                                    l = x(e).insertBefore(c), x(".bootstrap-touchspin-prefix", l).after(c), c.hasClass("input-sm") ? l.addClass("input-group-sm") : c.hasClass("input-lg") && l.addClass("input-group-lg")
357                                }()
358                            }(), n = {
359                                down: x(".bootstrap-touchspin-down", l),
360                                up: x(".bootstrap-touchspin-up", l),
361                                input: x("input", l),
362                                prefix: x(".bootstrap-touchspin-prefix", l).addClass(a.prefix_extraclass),
363                                postfix: x(".bootstrap-touchspin-postfix", l).addClass(a.postfix_extraclass)
364                            }, function () {
365                                "" === a.prefix && n.prefix.hide();
366                                "" === a.postfix && n.postfix.hide()
367                            }(), c.on("keydown", function (e) {
368                                var t = e.keyCode || e.which;
369                                38 === t ? ("up" !== f && (h(), y()), e.preventDefault()) : 40 === t && ("down" !== f && (m(), g()), e.preventDefault())
370                            }), c.on("keyup", function (e) {
371                                e = e.keyCode || e.which;
372                                38 !== e && 40 !== e || v()
373                            }), c.on("blur", function () {
374                                d()
375                            }), n.down.on("keydown", function (e) {
376                                var t = e.keyCode || e.which;
377                                32 !== t && 13 !== t || ("down" !== f && (m(), g()), e.preventDefault())
378                            }), n.down.on("keyup", function (e) {
379                                e = e.keyCode || e.which;
380                                32 !== e && 13 !== e || v()
381                            }), n.up.on("keydown", function (e) {
382                                var t = e.keyCode || e.which;
383                                32 !== t && 13 !== t || ("up" !== f && (h(), y()), e.preventDefault())
384                            }), n.up.on("keyup", function (e) {
385                                e = e.keyCode || e.which;
386                                32 !== e && 13 !== e || v()
387                            }), n.down.on("mousedown.touchspin", function (e) {
388                                n.down.off("touchstart.touchspin"), c.is(":disabled") || (m(), g(), e.preventDefault(), e.stopPropagation())
389                            }), n.down.on("touchstart.touchspin", function (e) {
390                                n.down.off("mousedown.touchspin"), c.is(":disabled") || (m(), g(), e.preventDefault(), e.stopPropagation())
391                            }), n.up.on("mousedown.touchspin", function (e) {
392                                n.up.off("touchstart.touchspin"), c.is(":disabled") || (h(), y(), e.preventDefault(), e.stopPropagation())
393                            }), n.up.on("touchstart.touchspin", function (e) {
394                                n.up.off("mousedown.touchspin"), c.is(":disabled") || (h(), y(), e.preventDefault(), e.stopPropagation())
395                            }), n.up.on("mouseout touchleave touchend touchcancel", function (e) {
396                                f && (e.stopPropagation(), v())
397                            }), n.down.on("mouseout touchleave touchend touchcancel", function (e) {
398                                f && (e.stopPropagation(), v())
399                            }), n.down.on("mousemove touchmove", function (e) {
400                                f && (e.stopPropagation(), e.preventDefault())
401                            }), n.up.on("mousemove touchmove", function (e) {
402                                f && (e.stopPropagation(), e.preventDefault())
403                            }), x(document).on(T(["mouseup", "touchend", "touchcancel"], _).join(" "), function (e) {
404                                f && (e.preventDefault(), v())
405                            }), x(document).on(T(["mousemove", "touchmove", "scroll", "scrollstart"], _).join(" "), function (e) {
406                                f && (e.preventDefault(), v())
407                            }), c.on("mousewheel DOMMouseScroll", function (e) {
408                                var t;
409                                a.mousewheel && c.is(":focus") && (t = e.originalEvent.wheelDelta || -e.originalEvent.deltaY || -e.originalEvent.detail, e.stopPropagation(), e.preventDefault(), (t < 0 ? m : h)())
410                            }), c.on("touchspin.uponce", function () {
411                                v(), h()
412                            }), c.on("touchspin.downonce", function () {
413                                v(), m()
414                            }), c.on("touchspin.startupspin", function () {
415                                y()
416                            }), c.on("touchspin.startdownspin", function () {
417                                g()
418                            }), c.on("touchspin.stopspin", function () {
419                                v()
420                            }), c.on("touchspin.updatesettings", function (e, t) {
421                                !function (e) {
422                                    (function (e) {
423                                        a = x.extend({}, a, e)
424                                    })(e), d();
425                                    e = n.input.val();
426                                    "" !== e && (e = Number(n.input.val()), n.input.val(e.toFixed(a.decimals)))
427                                }(t)
428                            }), n.input.css("display", "block")))
429                        })
430                    }
431                    this.each(function () {
432                        var e = x(this).data();
433                        x(document).off(T(["mouseup", "touchend", "touchcancel", "mousemove", "touchmove", "scroll", "scrollstart"], e.spinnerid).join(" "))
434                    })
435                }
436            }(jQuery)
437        }, 249: function () {
438            function m(e) {
439                return (m = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
440                    return typeof e
441                } : function (e) {
442                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
443                })(e)
444            }
445
446            if ("undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery");
447
448            function w(e, t) {
449                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
450            }
451
452            function e(e) {
453                var t = this, n = !1;
454                return r(this).one(o.TRANSITION_END, function () {
455                    n = !0
456                }), setTimeout(function () {
457                    n || o.triggerTransitionEnd(t)
458                }, e), this
459            }
460
461            function i(e, t) {
462                for (var n = 0; n < t.length; n++) {
463                    var i = t[n];
464                    i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
465                }
466            }
467
468            var r, t, n, o, S, x, _, g;
469            !function () {
470                var e = jQuery.fn.jquery.split(" ")[0].split(".");
471                if (e[0] < 2 && e[1] < 9 || 1 == e[0] && 9 == e[1] && e[2] < 1 || 4 <= e[0]) throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")
472            }(), S = "function" == typeof Symbol && "symbol" == m(Symbol.iterator) ? function (e) {
473                return m(e)
474            } : function (e) {
475                return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : m(e)
476            }, r = jQuery, t = !(x = function (e, t, n) {
477                return t && i(e.prototype, t), n && i(e, n), e
478            }), n = {
479                WebkitTransition: "webkitTransitionEnd",
480                MozTransition: "transitionend",
481                OTransition: "oTransitionEnd otransitionend",
482                transition: "transitionend"
483            }, o = {
484                TRANSITION_END: "bsTransitionEnd", getUID: function (e) {
485                    for (; e += ~~(1e6 * Math.random()), document.getElementById(e);) ;
486                    return e
487                }, getSelectorFromElement: function (e) {
488                    var t = e.getAttribute("data-target");
489                    return t || (t = e.getAttribute("href") || "", t = /^#[a-z]/i.test(t) ? t : null), t
490                }, reflow: function (e) {
491                    new Function("bs", "return bs")(e.offsetHeight)
492                }, triggerTransitionEnd: function (e) {
493                    r(e).trigger(t.end)
494                }, supportsTransitionEnd: function () {
495                    return Boolean(t)
496                }, typeCheckConfig: function (e, t, n) {
497                    for (var i in n) if (n.hasOwnProperty(i)) {
498                        var r = n[i], o = t[i],
499                            s = o && ((a = o)[0] || a).nodeType ? "element" : (o = o, {}.toString.call(o).match(/\s([a-zA-Z]+)/)[1].toLowerCase());
500                        if (!new RegExp(r).test(s)) throw new Error(e.toUpperCase() + ': Option "' + i + '" provided type "' + s + '" but expected type "' + r + '".')
501                    }
502                    var a
503                }
504            }, t = function () {
505                if (window.QUnit) return !1;
506                var e, t = document.createElement("bootstrap");
507                for (e in n) if (void 0 !== t.style[e]) return {end: n[e]};
508                return !1
509            }(), r.fn.emulateTransitionEnd = e, o.supportsTransitionEnd() && (r.event.special[o.TRANSITION_END] = {
510                bindType: t.end,
511                delegateType: t.end,
512                handle: function (e) {
513                    if (r(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)
514                }
515            }), _ = o, function (i) {
516                var e = "alert", r = "bs.alert", t = "." + r, n = i.fn[e],
517                    o = {CLOSE: "close" + t, CLOSED: "closed" + t, CLICK_DATA_API: "click" + t + ".data-api"},
518                    s = "alert", a = "fade", l = "in", c = (u.prototype.close = function (e) {
519                        e = e || this._element;
520                        e = this._getRootElement(e);
521                        this._triggerCloseEvent(e).isDefaultPrevented() || this._removeElement(e)
522                    }, u.prototype.dispose = function () {
523                        i.removeData(this._element, r), this._element = null
524                    }, u.prototype._getRootElement = function (e) {
525                        var t = _.getSelectorFromElement(e), n = !1;
526                        return n = (n = t ? i(t)[0] : n) || i(e).closest("." + s)[0]
527                    }, u.prototype._triggerCloseEvent = function (e) {
528                        var t = i.Event(o.CLOSE);
529                        return i(e).trigger(t), t
530                    }, u.prototype._removeElement = function (e) {
531                        return i(e).removeClass(l), _.supportsTransitionEnd() && i(e).hasClass(a) ? void i(e).one(_.TRANSITION_END, i.proxy(this._destroyElement, this, e)).emulateTransitionEnd(150) : void this._destroyElement(e)
532                    }, u.prototype._destroyElement = function (e) {
533                        i(e).detach().trigger(o.CLOSED).remove()
534                    }, u._jQueryInterface = function (n) {
535                        return this.each(function () {
536                            var e = i(this), t = e.data(r);
537                            t || (t = new u(this), e.data(r, t)), "close" === n && t[n](this)
538                        })
539                    }, u._handleDismiss = function (t) {
540                        return function (e) {
541                            e && e.preventDefault(), t.close(this)
542                        }
543                    }, x(u, null, [{
544                        key: "VERSION", get: function () {
545                            return "4.0.0-alpha.5"
546                        }
547                    }]), u);
548
549                function u(e) {
550                    w(this, u), this._element = e
551                }
552
553                i(document).on(o.CLICK_DATA_API, '[data-dismiss="alert"]', c._handleDismiss(new c)), i.fn[e] = c._jQueryInterface, i.fn[e].Constructor = c, i.fn[e].noConflict = function () {
554                    return i.fn[e] = n, c._jQueryInterface
555                }
556            }(jQuery), function (i) {
557                var e = "button", n = "bs.button", t = "." + n, r = ".data-api", o = i.fn[e], s = "active", a = "btn",
558                    l = "focus", c = '[data-toggle^="button"]', u = '[data-toggle="buttons"]', f = "input",
559                    d = ".active", p = ".btn",
560                    r = {CLICK_DATA_API: "click" + t + r, FOCUS_BLUR_DATA_API: "focus" + t + r + " blur" + t + r},
561                    h = (m.prototype.toggle = function () {
562                        var e, t = !0, n = i(this._element).closest(u)[0];
563                        n ? (e = i(this._element).find(f)[0]) && ("radio" === e.type && (e.checked && i(this._element).hasClass(s) ? t = !1 : (n = i(n).find(d)[0]) && i(n).removeClass(s)), t && (e.checked = !i(this._element).hasClass(s), i(this._element).trigger("change")), e.focus()) : this._element.setAttribute("aria-pressed", !i(this._element).hasClass(s)), t && i(this._element).toggleClass(s)
564                    }, m.prototype.dispose = function () {
565                        i.removeData(this._element, n), this._element = null
566                    }, m._jQueryInterface = function (t) {
567                        return this.each(function () {
568                            var e = i(this).data(n);
569                            e || (e = new m(this), i(this).data(n, e)), "toggle" === t && e[t]()
570                        })
571                    }, x(m, null, [{
572                        key: "VERSION", get: function () {
573                            return "4.0.0-alpha.5"
574                        }
575                    }]), m);
576
577                function m(e) {
578                    w(this, m), this._element = e
579                }
580
581                i(document).on(r.CLICK_DATA_API, c, function (e) {
582                    e.preventDefault();
583                    e = e.target;
584                    i(e).hasClass(a) || (e = i(e).closest(p)), h._jQueryInterface.call(i(e), "toggle")
585                }).on(r.FOCUS_BLUR_DATA_API, c, function (e) {
586                    var t = i(e.target).closest(p)[0];
587                    i(t).toggleClass(l, /^focus(in)?$/.test(e.type))
588                }), i.fn[e] = h._jQueryInterface, i.fn[e].Constructor = h, i.fn[e].noConflict = function () {
589                    return i.fn[e] = o, h._jQueryInterface
590                }
591            }(jQuery), function (a) {
592                var t = "carousel", r = "bs.carousel", e = "." + r, n = ".data-api", i = a.fn[t],
593                    o = {interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0}, s = {
594                        interval: "(number|boolean)",
595                        keyboard: "boolean",
596                        slide: "(boolean|string)",
597                        pause: "(string|boolean)",
598                        wrap: "boolean"
599                    }, l = "next", c = "prev", u = {
600                        SLIDE: "slide" + e,
601                        SLID: "slid" + e,
602                        KEYDOWN: "keydown" + e,
603                        MOUSEENTER: "mouseenter" + e,
604                        MOUSELEAVE: "mouseleave" + e,
605                        LOAD_DATA_API: "load" + e + n,
606                        CLICK_DATA_API: "click" + e + n
607                    }, f = "carousel", d = "active", p = "slide", h = "right", m = "left", g = {
608                        ACTIVE: ".active",
609                        ACTIVE_ITEM: ".active.carousel-item",
610                        ITEM: ".carousel-item",
611                        NEXT_PREV: ".next, .prev",
612                        INDICATORS: ".carousel-indicators",
613                        DATA_SLIDE: "[data-slide], [data-slide-to]",
614                        DATA_RIDE: '[data-ride="carousel"]'
615                    }, y = (v.prototype.next = function () {
616                        this._isSliding || this._slide(l)
617                    }, v.prototype.nextWhenVisible = function () {
618                        document.hidden || this.next()
619                    }, v.prototype.prev = function () {
620                        this._isSliding || this._slide(c)
621                    }, v.prototype.pause = function (e) {
622                        e || (this._isPaused = !0), a(this._element).find(g.NEXT_PREV)[0] && _.supportsTransitionEnd() && (_.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null
623                    }, v.prototype.cycle = function (e) {
624                        e || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config.interval && !this._isPaused && (this._interval = setInterval(a.proxy(document.visibilityState ? this.nextWhenVisible : this.next, this), this._config.interval))
625                    }, v.prototype.to = function (e) {
626                        var t = this;
627                        this._activeElement = a(this._element).find(g.ACTIVE_ITEM)[0];
628                        var n = this._getItemIndex(this._activeElement);
629                        if (!(e > this._items.length - 1 || e < 0)) if (this._isSliding) a(this._element).one(u.SLID, function () {
630                            return t.to(e)
631                        }); else {
632                            if (n === e) return this.pause(), void this.cycle();
633                            this._slide(n < e ? l : c, this._items[e])
634                        }
635                    }, v.prototype.dispose = function () {
636                        a(this._element).off(e), a.removeData(this._element, r), this._items = null, this._config = null, this._element = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null
637                    }, v.prototype._getConfig = function (e) {
638                        return e = a.extend({}, o, e), _.typeCheckConfig(t, e, s), e
639                    }, v.prototype._addEventListeners = function () {
640                        this._config.keyboard && a(this._element).on(u.KEYDOWN, a.proxy(this._keydown, this)), "hover" !== this._config.pause || "ontouchstart" in document.documentElement || a(this._element).on(u.MOUSEENTER, a.proxy(this.pause, this)).on(u.MOUSELEAVE, a.proxy(this.cycle, this))
641                    }, v.prototype._keydown = function (e) {
642                        if (e.preventDefault(), !/input|textarea/i.test(e.target.tagName)) switch (e.which) {
643                            case 37:
644                                this.prev();
645                                break;
646                            case 39:
647                                this.next();
648                                break;
649                            default:
650                                return
651                        }
652                    }, v.prototype._getItemIndex = function (e) {
653                        return this._items = a.makeArray(a(e).parent().find(g.ITEM)), this._items.indexOf(e)
654                    }, v.prototype._getItemByDirection = function (e, t) {
655                        var n = e === l, i = e === c, r = this._getItemIndex(t), o = this._items.length - 1;
656                        if ((i && 0 === r || n && r === o) && !this._config.wrap) return t;
657                        e = (r + (e === c ? -1 : 1)) % this._items.length;
658                        return -1 == e ? this._items[this._items.length - 1] : this._items[e]
659                    }, v.prototype._triggerSlideEvent = function (e, t) {
660                        t = a.Event(u.SLIDE, {relatedTarget: e, direction: t});
661                        return a(this._element).trigger(t), t
662                    }, v.prototype._setActiveIndicatorElement = function (e) {
663                        this._indicatorsElement && (a(this._indicatorsElement).find(g.ACTIVE).removeClass(d), (e = this._indicatorsElement.children[this._getItemIndex(e)]) && a(e).addClass(d))
664                    }, v.prototype._slide = function (e, t) {
665                        var n, i = this, r = a(this._element).find(g.ACTIVE_ITEM)[0],
666                            o = t || r && this._getItemByDirection(e, r), t = Boolean(this._interval), s = e === l ? m : h;
667                        o && a(o).hasClass(d) ? this._isSliding = !1 : !this._triggerSlideEvent(o, s).isDefaultPrevented() && r && o && (this._isSliding = !0, t && this.pause(), this._setActiveIndicatorElement(o), n = a.Event(u.SLID, {
668                            relatedTarget: o,
669                            direction: s
670                        }), _.supportsTransitionEnd() && a(this._element).hasClass(p) ? (a(o).addClass(e), _.reflow(o), a(r).addClass(s), a(o).addClass(s), a(r).one(_.TRANSITION_END, function () {
671                            a(o).removeClass(s).removeClass(e), a(o).addClass(d), a(r).removeClass(d).removeClass(e).removeClass(s), i._isSli
671ding = !1, setTimeout(function () {
672                                return a(i._element).trigger(n)
673                            }, 0)
674                        }).emulateTransitionEnd(600)) : (a(r).removeClass(d), a(o).addClass(d), this._isSliding = !1, a(this._element).trigger(n)), t && this.cycle())
675                    }, v._jQueryInterface = function (i) {
676                        return this.each(function () {
677                            var e = a(this).data(r), t = a.extend({}, o, a(this).data());
678                            "object" === (void 0 === i ? "undefined" : S(i)) && a.extend(t, i);
679                            var n = "string" == typeof i ? i : t.slide;
680                            if (e || (e = new v(this, t), a(this).data(r, e)), "number" == typeof i) e.to(i); else if ("string" == typeof n) {
681                                if (void 0 === e[n]) throw new Error('No method named "' + n + '"');
682                                e[n]()
683                            } else t.interval && (e.pause(), e.cycle())
684                        })
685                    }, v._dataApiClickHandler = function (e) {
686                        var t, n, i = _.getSelectorFromElement(this);
687                        !i || (t = a(i)[0]) && a(t).hasClass(f) && (n = a.extend({}, a(t).data(), a(this).data()), (i = this.getAttribute("data-slide-to")) && (n.interval = !1), v._jQueryInterface.call(a(t), n), i && a(t).data(r).to(i), e.preventDefault())
688                    }, x(v, null, [{
689                        key: "VERSION", get: function () {
690                            return "4.0.0-alpha.5"
691                        }
692                    }, {
693                        key: "Default", get: function () {
694                            return o
695                        }
696                    }]), v);
697
698                function v(e, t) {
699                    w(this, v), this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this._config = this._getConfig(t), this._element = a(e)[0], this._indicatorsElement = a(this._element).find(g.INDICATORS)[0], this._addEventListeners()
700                }
701
702                a(document).on(u.CLICK_DATA_API, g.DATA_SLIDE, y._dataApiClickHandler), a(window).on(u.LOAD_DATA_API, function () {
703                    a(g.DATA_RIDE).each(function () {
704                        var e = a(this);
705                        y._jQueryInterface.call(e, e.data())
706                    })
707                }), a.fn[t] = y._jQueryInterface, a.fn[t].Constructor = y, a.fn[t].noConflict = function () {
708                    return a.fn[t] = i, y._jQueryInterface
709                }
710            }(jQuery), function (o) {
711                var t = "collapse", s = "bs.collapse", e = "." + s, n = o.fn[t], r = {toggle: !0, parent: ""},
712                    i = {toggle: "boolean", parent: "string"}, a = {
713                        SHOW: "show" + e,
714                        SHOWN: "shown" + e,
715                        HIDE: "hide" + e,
716                        HIDDEN: "hidden" + e,
717                        CLICK_DATA_API: "click" + e + ".data-api"
718                    }, l = "in", c = "collapse", u = "collapsing", f = "collapsed", d = "width", p = "height",
719                    h = ".card > .in, .card > .collapsing", e = '[data-toggle="collapse"]',
720                    m = (g.prototype.toggle = function () {
721                        o(this._element).hasClass(l) ? this.hide() : this.show()
722                    }, g.prototype.show = function () {
723                        var e, t, n, i, r = this;
724                        this._isTransitioning || o(this._element).hasClass(l) || (n = i = void 0, this._parent && ((i = o.makeArray(o(h))).length || (i = null)), i && ((n = o(i).data(s)) && n._isTransitioning) || (e = o.Event(a.SHOW), o(this._element).trigger(e), e.isDefaultPrevented() || (i && (g._jQueryInterface.call(o(i), "hide"), n || o(i).data(s, null)), t = this._getDimension(), o(this._element).removeClass(c).addClass(u), this._element.style[t] = 0, this._element.setAttribute("aria-expanded", !0), this._triggerArray.length && o(this._triggerArray).removeClass(f).attr("aria-expanded", !0), this.setTransitioning(!0), n = function () {
725                            o(r._element).removeClass(u).addClass(c).addClass(l), r._element.style[t] = "", r.setTransitioning(!1), o(r._element).trigger(a.SHOWN)
726                        }, _.supportsTransitionEnd() ? (i = "scroll" + (t[0].toUpperCase() + t.slice(1)), o(this._element).one(_.TRANSITION_END, n).emulateTransitionEnd(600), this._element.style[t] = this._element[i] + "px") : n())))
727                    }, g.prototype.hide = function () {
728                        var e = this;
729                        if (!this._isTransitioning && o(this._element).hasClass(l)) {
730                            var t = o.Event(a.HIDE);
731                            if (o(this._element).trigger(t), !t.isDefaultPrevented()) {
732                                var n = this._getDimension();
733                                this._element.style[n] = this._element[n === d ? "offsetWidth" : "offsetHeight"] + "px", _.reflow(this._element), o(this._element).addClass(u).removeClass(c).removeClass(l), this._element.setAttribute("aria-expanded", !1), this._triggerArray.length && o(this._triggerArray).addClass(f).attr("aria-expanded", !1), this.setTransitioning(!0);
734                                t = function () {
735                                    e.setTransitioning(!1), o(e._element).removeClass(u).addClass(c).trigger(a.HIDDEN)
736                                };
737                                return this._element.style[n] = "", _.supportsTransitionEnd() ? void o(this._element).one(_.TRANSITION_END, t).emulateTransitionEnd(600) : void t()
738                            }
739                        }
740                    }, g.prototype.setTransitioning = function (e) {
741                        this._isTransitioning = e
742                    }, g.prototype.dispose = function () {
743                        o.removeData(this._element, s), this._config = null, this._parent = null, this._element = null, this._triggerArray = null, this._isTransitioning = null
744                    }, g.prototype._getConfig = function (e) {
745                        return (e = o.extend({}, r, e)).toggle = Boolean(e.toggle), _.typeCheckConfig(t, e, i), e
746                    }, g.prototype._getDimension = function () {
747                        return o(this._element).hasClass(d) ? d : p
748                    }, g.prototype._getParent = function () {
749                        var n = this, e = o(this._config.parent)[0],
750                            t = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]';
751                        return o(e).find(t).each(function (e, t) {
752                            n._addAriaAndCollapsedClass(g._getTargetFromElement(t), [t])
753                        }), e
754                    }, g.prototype._addAriaAndCollapsedClass = function (e, t) {
755                        var n;
756                        e && (n = o(e).hasClass(l), e.setAttribute("aria-expanded", n), t.length && o(t).toggleClass(f, !n).attr("aria-expanded", n))
757                    }, g._getTargetFromElement = function (e) {
758                        e = _.getSelectorFromElement(e);
759                        return e ? o(e)[0] : null
760                    }, g._jQueryInterface = function (i) {
761                        return this.each(function () {
762                            var e = o(this), t = e.data(s),
763                                n = o.extend({}, r, e.data(), "object" === (void 0 === i ? "undefined" : S(i)) && i);
764                            if (!t && n.toggle && /show|hide/.test(i) && (n.toggle = !1), t || (t = new g(this, n), e.data(s, t)), "string" == typeof i) {
765                                if (void 0 === t[i]) throw new Error('No method n
765amed "' + i + '"');
766                                t[i]()
767                            }
768                        })
769                    }, x(g, null, [{
770                        key: "VERSION", get: function () {
771                            return "4.0.0-alpha.5"
772                        }
773                    }, {
774                        key: "Default", get: function () {
775                            return r
776                        }
777                    }]), g);
778
779                function g(e, t) {
780                    w(this, g), this._isTransitioning = !1, this._element = e, this._config = this._getConfig(t), this._triggerArray = o.makeArray(o('[data-toggle="collapse"][href="#' + e.id + '"],[data-toggle="collapse"][data-target="#' + e.id + '"]')), this._parent = this._config.parent ? this._getParent() : null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle()
781                }
782
783                o(document).on(a.CLICK_DATA_API, e, function (e) {
784                    e.preventDefault();
785                    var t = m._getTargetFromElement(this), e = o(t).data(s) ? "toggle" : o(this).data();
786                    m._jQueryInterface.call(o(t), e)
787                }), o.fn[t] = m._jQueryInterface, o.fn[t].Constructor = m, o.fn[t].noConflict = function () {
788                    return o.fn[t] = n, m._jQueryInterface
789                }
790            }(jQuery), function (a) {
791                var e = "dropdown", n = "bs.dropdown", t = "." + n, i = ".data-api", r = a.fn[e], l = {
792                        HIDE: "hide" + t,
793                        HIDDEN: "hidden" + t,
794                        SHOW: "show" + t,
795                        SHOWN: "shown" + t,
796                        CLICK: "click" + t,
797                        CLICK_DATA_API: "click" + t + i,
798                        KEYDOWN_DATA_API: "keydown" + t + i
799                    }, o = "dropdown-backdrop", s = "disabled", c = "open", u = ".dropdown-backdrop",
800                    f = '[data-toggle="dropdown"]', d = ".dropdown form", p = '[role="menu"]', i = '[role="listbox"]',
801                    h = ".navbar-nav", m = '[role="menu"] li:not(.disabled) a, [role="listbox"] li:not(.disabled) a',
802                    g = (y.prototype.toggle = function () {
803                        if (this.disabled || a(this).hasClass(s)) return !1;
804                        var e = y._getParentFromElement(this), t = a(e).hasClass(c);
805                        if (y._clearMenus(), t) return !1;
806                        "ontouchstart" in document.documentElement && !a(e).closest(h).length && ((n = document.createElement("div")).className = o, a(n).insertBefore(this), a(n).on("click", y._clearMenus));
807                        var t = {relatedTarget: this}, n = a.Event(l.SHOW, t);
808                        return a(e).trigger(n), !n.isDefaultPrevented() && (this.focus(), this.setAttribute("aria-expanded", "true"), a(e).toggleClass(c), a(e).trigger(a.Event(l.SHOWN, t)), !1)
809                    }, y.prototype.dispose = function () {
810                        a.removeData(this._element, n), a(this._element).off(t), this._element = null
811                    }, y.prototype._addEventListeners = function () {
812                        a(this._element).on(l.CLICK, this.toggle)
813                    }, y._jQueryInterface = function (t) {
814                        return this.each(function () {
815                            var e = a(this).data(n);
816                            if (e || a(this).data(n, e = new y(this)), "string" == typeof t) {
817                                if (void 0 === e[t]) throw new Error('No method named "' + t + '"');
818                                e[t].call(this)
819                            }
820                        })
821                    }, y._clearMenus = function (e) {
822                        if (!e || 3 !== e.which) {
823                            var t = a(u)[0];
824                            t && t.parentNode.removeChild(t);
825                            for (var n = a.makeArray(a(f)), i = 0; i < n.length; i++) {
826                                var r, o = y._getParentFromElement(n[i]), s = {relatedTarget: n[i]};
827                                !a(o).hasClass(c) || e && "click" === e.type && /input|textarea/i.test(e.target.tagName) && a.contains(o, e.target) || (r = a.Event(l.HIDE, s), a(o).trigger(r), r.isDefaultPrevented() || (n[i].setAttribute("aria-expanded", "false"), a(o).removeClass(c).trigger(a.Event(l.HIDDEN, s))))
828                            }
829                        }
830                    }, y._getParentFromElement = function (e) {
831                        var t = void 0, n = _.getSelectorFromElement(e);
832                        return (t = n ? a(n)[0] : t) || e.parentNode
833                    }, y._dataApiKeydownHandler = function (e) {
834                        if (/(38|40|27|32)/.test(e.which) && !/input|textarea/i.test(e.target.tagName) && (e.preventDefault(), e.stopPropagation(), !this.disabled && !a(this).hasClass(s))) {
835                            var t = y._getParentFromElement(this), n = a(t).hasClass(c);
836                            if (!n && 27 !== e.which || n && 27 === e.which) return 27 === e.which && (i = a(t).find(f)[0], a(i).trigger("focus")), void a(this).trigger("click");
837                            var i, t = a.makeArray(a(m));
838                            (t = t.filter(function (e) {
839                                return e.offsetWidth || e.offsetHeight
840                            })).length && (i = t.indexOf(e.target), 38 === e.which && 0 < i && i--, 40 === e.which && i < t.length - 1 && i++, t[i = i < 0 ? 0 : i].focus())
841                        }
842                    }, x(y, null, [{
843                        key: "VERSION", get: function () {
844                            return "4.0.0-alpha.5"
845                        }
846                    }]), y);
847
848                function y(e) {
849                    w(this, y), this._element = e, this._addEventListeners()
850                }
851
852                a(document).on(l.KEYDOWN_DATA_API, f, g._dataApiKeydownHandler).on(l.KEYDOWN_DATA_API, p, g._dataApiKeydownHandler).on(l.KEYDOWN_DATA_API, i, g._dataApiKeydownHandler).on(l.CLICK_DATA_API, g._clearMenus).on(l.CLICK_DATA_API, f, g.prototype.toggle).on(l.CLICK_DATA_API, d, function (e) {
853                    e.stopPropagation()
854                }), a.fn[e] = g._jQueryInterface, a.fn[e].Constructor = g, a.fn[e].noConflict = function () {
855                    return a.fn[e] = r, g._jQueryInterface
856                }
857            }(jQuery), function (o) {
858                var t = "modal", s = "bs.modal", e = "." + s, n = o.fn[t],
859                    i = {backdrop: !0, keyboard: !0, focus: !0, show: !0},
860                    r = {backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean", show: "boolean"}, a = {
861                        HIDE: "hide" + e,
862                        HIDDEN: "hidden" + e,
863                        SHOW: "show" + e,
864                        SHOWN: "shown" + e,
865                        FOCUSIN: "focusin" + e,
866                        RESIZE: "resize" + e,
867                        CLICK_DISMISS: "click.dismiss" + e,
868                        KEYDOWN_DISMISS: "keydown.dismiss" + e,
869                        MOUSEUP_DISMISS: "mouseup.dismiss" + e,
870                        MOUSEDOWN_DISMISS: "mousedown.dismiss" + e,
871                        CLICK_DATA_API: "click" + e + ".data-api"
872                    }
872, l = "modal-scrollbar-measure", c = "modal-backdrop", u = "modal-open", f = "fade", d = "in", p = {
873                        DIALOG: ".modal-dialog",
874                        DATA_TOGGLE: '[data-toggle="modal"]',
875                        DATA_DISMISS: '[data-dismiss="modal"]',
876                        FIXED_CONTENT: ".navbar-fixed-top, .navbar-fixed-bottom, .is-fixed"
877                    }, h = (m.prototype.toggle = function (e) {
878                        return this._isShown ? this.hide() : this.show(e)
879                    }, m.prototype.show = function (e) {
880                        var t = this, n = o.Event(a.SHOW, {relatedTarget: e});
881                        o(this._element).trigger(n), this._isShown || n.isDefaultPrevented() || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), o(document.body).addClass(u), this._setEscapeEvent(), this._setResizeEvent(), o(this._element).on(a.CLICK_DISMISS, p.DATA_DISMISS, o.proxy(this.hide, this)), o(this._dialog).on(a.MOUSEDOWN_DISMISS, function () {
882                            o(t._element).one(a.MOUSEUP_DISMISS, function (e) {
883                                o(e.target).is(t._element) && (t._ignoreBackdropClick = !0)
884                            })
885                        }), this._showBackdrop(o.proxy(this._showElement, this, e)))
886                    }, m.prototype.hide = function (e) {
887                        e && e.preventDefault();
888                        e = o.Event(a.HIDE);
889                        o(this._element).trigger(e), this._isShown && !e.isDefaultPrevented() && (this._isShown = !1, this._setEscapeEvent(), this._setResizeEvent(), o(document).off(a.FOCUSIN), o(this._element).removeClass(d), o(this._element).off(a.CLICK_DISMISS), o(this._dialog).off(a.MOUSEDOWN_DISMISS), _.supportsTransitionEnd() && o(this._element).hasClass(f) ? o(this._element).one(_.TRANSITION_END, o.proxy(this._hideModal, this)).emulateTransitionEnd(300) : this._hideModal())
890                    }, m.prototype.dispose = function () {
891                        o.removeData(this._element, s), o(window).off(e), o(document).off(e), o(this._element).off(e), o(this._backdrop).off(e), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._originalBodyPadding = null, this._scrollbarWidth = null
892                    }, m.prototype._getConfig = function (e) {
893                        return e = o.extend({}, i, e), _.typeCheckConfig(t, e, r), e
894                    }, m.prototype._showElement = function (e) {
895                        var t = this, n = _.supportsTransitionEnd() && o(this._element).hasClass(f);
896                        this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.scrollTop = 0, n && _.reflow(this._element), o(this._element).addClass(d), this._config.focus && this._enforceFocus();
897                        var i = o.Event(a.SHOWN, {relatedTarget: e}), e = function () {
898                            t._config.focus && t._element.focus(), o(t._element).trigger(i)
899                        };
900                        n ? o(this._dialog).one(_.TRANSITION_END, e).emulateTransitionEnd(300) : e()
901                    }, m.prototype._enforceFocus = function () {
902                        var t = this;
903                        o(document).off(a.FOCUSIN).on(a.FOCUSIN, function (e) {
904                            document === e.target || t._element === e.target || o(t._element).has(e.target).length || t._element.focus()
905                        })
906                    }, m.prototype._setEscapeEvent = function () {
907                        var t = this;
908                        this._isShown && this._config.keyboard ? o(this._element).on(a.KEYDOWN_DISMISS, function (e) {
909                            27 === e.which && t.hide()
910                        }) : this._isShown || o(this._element).off(a.KEYDOWN_DISMISS)
911                    }, m.prototype._setResizeEvent = function () {
912                        this._isShown ? o(window).on(a.RESIZE, o.proxy(this._handleUpdate, this)) : o(window).off(a.RESIZE)
913                    }, m.prototype._hideModal = function () {
914                        var e = this;
915                        this._element.style.display = "none", this._element.setAttribute("aria-hidden", "true"), this._showBackdrop(function () {
916                            o(document.body).removeClass(u), e._resetAdjustments(), e._resetScrollbar(), o(e._element).trigger(a.HIDDEN)
917                        })
918                    }, m.prototype._removeBackdrop = function () {
919                        this._backdrop && (o(this._backdrop).remove(), this._backdrop = null)
920                    }, m.prototype._showBackdrop = function (e) {
921                        var t, n = this, i = o(this._element).hasClass(f) ? f : "";
922                        this._isShown && this._config.backdrop ? (t = _.supp
922ortsTransitionEnd() && i, this._backdrop = document.createElement("div"), this._backdrop.className = c, i && o(this._backdrop).addClass(i), o(this._backdrop).appendTo(document.body), o(this._element).on(a.CLICK_DISMISS, function (e) {
923                            return n._ignoreBackdropClick ? void (n._ignoreBackdropClick = !1) : void (e.target === e.currentTarget && ("static" === n._config.backdrop ? n._element.focus() : n.hide()))
924                        }), t && _.reflow(this._backdrop), o(this._backdrop).addClass(d), e && (t ? o(this._backdrop).one(_.TRANSITION_END, e).emulateTransitionEnd(150) : e())) : !this._isShown && this._backdrop ? (o(this._backdrop).removeClass(d), t = function () {
925                            n._removeBackdrop(), e && e()
926                        }, _.supportsTransitionEnd() && o(this._element).hasClass(f) ? o(this._backdrop).one(_.TRANSITION_END, t).emulateTransitionEnd(150) : t()) : e && e()
927                    }, m.prototype._handleUpdate = function () {
928                        this._adjustDialog()
929                    }, m.prototype._adjustDialog = function () {
930                        var e = this._element.scrollHeight > document.documentElement.clientHeight;
931                        !this._isBodyOverflowing && e && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !e && (this._element.style.paddingRight = this._scrollbarWidth + "px")
932                    }, m.prototype._resetAdjustments = function () {
933                        this._element.style.paddingLeft = "", this._element.style.paddingRight = ""
934                    }, m.prototype._checkScrollbar = function () {
935                        this._isBodyOverflowing = document.body.clientWidth < window.innerWidth, this._scrollbarWidth = this._getScrollbarWidth()
936                    }, m.prototype._setScrollbar = function () {
937                        var e = parseInt(o(p.FIXED_CONTENT).css("padding-right") || 0, 10);
938                        this._originalBodyPadding = document.body.style.paddingRight || "", this._isBodyOverflowing && (document.body.style.paddingRight = e + this._scrollbarWidth + "px")
939                    }, m.prototype._resetScrollbar = function () {
940                        document.body.style.paddingRight = this._originalBodyPadding
941                    }, m.prototype._getScrollbarWidth = function () {
942                        var e = document.createElement("div");
943                        e.className = l, document.body.appendChild(e);
944                        var t = e.offsetWidth - e.clientWidth;
945                        return document.body.removeChild(e), t
946                    }, m._jQueryInterface = function (n, i) {
947                        return this.each(function () {
948                            var e = o(this).data(s),
949                                t = o.extend({}, m.Default, o(this).data(), "object" === (void 0 === n ? "undefined" : S(n)) && n);
950                            if (e || (e = new m(this, t), o(this).data(s, e)), "string" == typeof n) {
951                                if (void 0 === e[n]) throw new Error('No method named "' + n + '"');
952                                e[n](i)
953                            } else t.show && e.show(i)
954                        })
955                    }, x(m, null, [{
956                        key: "VERSION", get: function () {
957                            return "4.0.0-alpha.5"
958                        }
959                    }, {
960                        key: "Default", get: function () {
961                            return i
962                        }
963                    }]), m);
964
965                function m(e, t) {
966                    w(this, m), this._config = this._getConfig(t), this._element = e, this._dialog = o(e).find(p.DIALOG)[0], this._backdrop = null, this._isShown = !1, this._isBodyOverflowing = !1, this._ignoreBackdropClick = !1, this._originalBodyPadding = 0, this._scrollbarWidth = 0
967                }
968
969                o(document).on(a.CLICK_DATA_API, p.DATA_TOGGLE, function (e) {
970                    var t = this, n = void 0, i = _.getSelectorFromElement(this);
971                    i && (n = o(i)[0]);
972                    i = o(n).data(s) ? "toggle" : o.extend({}, o(n).data(), o(this).data());
973                    "A" === this.tagName && e.preventDefault();
974                    var r = o(n).one(a.SHOW, function (e) {
975                        e.isDefaultPrevented() || r.one(a.HIDDEN, function () {
976                            o(t).is(":visible") && t.focus()
977                        })
978                    });
979                    h._jQueryInterface.call(o(n), i, this)
980                }
980), o.fn[t] = h._jQueryInterface, o.fn[t].Constructor = h, o.fn[t].noConflict = function () {
981                    return o.fn[t] = n, h._jQueryInterface
982                }
983            }(jQuery), function (r) {
984                var n = "scrollspy", i = "bs.scrollspy", e = "." + i, t = r.fn[n],
985                    o = {offset: 10, method: "auto", target: ""},
986                    s = {offset: "number", method: "string", target: "(string|element)"},
987                    a = {ACTIVATE: "activate" + e, SCROLL: "scroll" + e, LOAD_DATA_API: "load" + e + ".data-api"},
988                    l = "dropdown-item", c = "active", u = {
989                        DATA_SPY: '[data-spy="scroll"]',
990                        ACTIVE: ".active",
991                        LIST_ITEM: ".list-item",
992                        LI: "li",
993                        LI_DROPDOWN: "li.dropdown",
994                        NAV_LINKS: ".nav-link",
995                        DROPDOWN: ".dropdown",
996                        DROPDOWN_ITEMS: ".dropdown-item",
997                        DROPDOWN_TOGGLE: ".dropdown-toggle"
998                    }, f = "offset", d = "position", p = (h.prototype.refresh = function () {
999                        var t = this, e = this._scrollElement !== this._scrollElement.window ? d : f,
1000                            n = "auto" === this._config.method ? e : this._config.method,
1001                            i = n === d ? this._getScrollTop() : 0;
1002                        this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), r.makeArray(r(this._selector)).map(function (e) {
1003                            var t = void 0, e = _.getSelectorFromElement(e);
1004                            return (t = e ? r(e)[0] : t) && (t.offsetWidth || t.offsetHeight) ? [r(t)[n]().top + i, e] : null
1005                        }).filter(function (e) {
1006                            return e
1007                        }).sort(function (e, t) {
1008                            return e[0] - t[0]
1009                        }
1009).forEach(function (e) {
1010                            t._offsets.push(e[0]), t._targets.push(e[1])
1011                        })
1012                    }, h.prototype.dispose = function () {
1013                        r.removeData(this._element, i), r(this._scrollElement).off(e), this._element = null, this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null
1014                    }, h.prototype._getConfig = function (e) {
1015                        var t;
1016                        return "string" != typeof (e = r.extend({}, o, e)).target && ((t = r(e.target).attr("id")) || (t = _.getUID(n), r(e.target).attr("id", t)), e.target = "#" + t), _.typeCheckConfig(n, e, s), e
1017                    }, h.prototype._getScrollTop = function () {
1018                        return this._scrollElement === window ? this._scrollElement.scrollY : this._scrollElement.scrollTop
1019                    }, h.prototype._getScrollHeight = function () {
1020                        return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)
1021                    }, h.prototype._process = function () {
1022                        var e = this._getScrollTop() + this._config.offset, t = this._getScrollHeight(),
1023                            n = this._config.offset + t - this._scrollElement.offsetHeight;
1024                        if (this._scrollHeight !== t && this.refresh(), n <= e && (n = this._targets[this._targets.length - 1], this._activeTarget !== n && this._activate(n)), this._activeTarget && e < this._offsets[0]) return this._activeTarget = null, void this._clear();
1025                        for (var i = this._offsets.length; i--;) this._activeTarget !== this._targets[i] && e >= this._offsets[i] && (void 0 === this._offsets[i + 1] || e < this._offsets[i + 1]) && this._activate(this._targets[i])
1026                    }, h.prototype._activate = function (t) {
1027                        this._activeTarget = t, this._clear();
1028                        var e = (e = this._selector.split(",")).map(function (e) {
1029                            return e + '[data-target="' + t + '"],' + e + '[href="' + t + '"]'
1030                        }), e = r(e.join(","));
1031                        e.hasClass(l) ? (e.closest(u.DROPDOWN).find(u.DROPDOWN_TOGGLE).addClass(c), e.addClass(c)) : e.parents(u.LI).find(u.NAV_LINKS).addClass(c), r(this._scrollElement).trigger(a.ACTIVATE, {relatedTarget: t})
1032                    }, h.prototype._clear = function () {
1033                        r(this._selector).filter(u.ACTIVE).removeClass(c)
1034                    }, h._jQueryInterface = function (n) {
1035                        return this.each(function () {
1036                            var e = r(this).data(i), t = "object" === (void 0 === n ? "undefined" : S(n)) && n || null;
1037                            if (e || (e = new h(this, t), r(this).data(i, e)), "string" == typeof n) {
1038                                if (void 0 === e[n]) throw new Error('No method named "' + n + '"');
1039                                e[n]()
1040                            }
1041                        })
1042                    }, x(h, null, [{
1043                        key: "VERSION", get: function () {
1044                            return "4.0.0-alpha.5"
1045                        }
1046                    }, {
1047                        key: "Default", get: function () {
1048                            return o
1049                        }
1050                    }]), h);
1051
1052                function h(e, t) {
1053                    w(this, h), this._element = e, this._scrollElement = "BODY" === e.tagName ? window : e, this._config = this._getConfig(t), this._selector = this._config.target + " " + u.NAV_LINKS + "," + this._config.target + " " + u.DROPDOWN_ITEMS, this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, r(this._scrollElement).on(a.SCROLL, r.proxy(this._process, this)), this.refresh(), this._process()
1054                }
1055
1056                r(window).on(a.LOAD_DATA_API, function () {
1057                    for (var e = r.makeArray(r(u.DATA_SPY)), t = e.length; t--;) {
1058                        var n = r(e[t]);
1059                        p._jQueryInterface.call(n, n.data())
1060                    }
1061                }
1061), r.fn[n] = p._jQueryInterface, r.fn[n].Constructor = p, r.fn[n].noConflict = function () {
1062                    return r.fn[n] = t, p._jQueryInterface
1063                }
1064            }(jQuery), function (a) {
1065                var i = "bs.tab", e = "." + i, t = a.fn.tab, l = {
1066                        HIDE: "hide" + e,
1067                        HIDDEN: "hidden" + e,
1068                        SHOW: "show" + e,
1069                        SHOWN: "shown" + e,
1070                        CLICK_DATA_API: "click" + e + ".data-api"
1071                    }, o = "dropdown-menu", c = "active", s = "fade", u = "in", f = ".dropdown",
1072                    d = "ul:not(.dropdown-menu)", r = "> .nav-item .fade, > .fade", p = ".active",
1073                    h = "> .nav-item > .active, > .active", e = '[data-toggle="tab"], [data-toggle="pill"]',
1074                    m = ".dropdown-toggle", g = "> .dropdown-menu .active", n = (y.prototype.show = function () {
1075                        var e, n, t, i, r, o, s = this;
1076                        this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && a(this._element).hasClass(c) || (n = e = void 0, o = a(this._element).closest(d)[0], t = _.getSelectorFromElement(this._element), o && (n = (n = a.makeArray(a(o).find(p)))[n.length - 1]), i = a.Event(l.HIDE, {relatedTarget: this._element}), r = a.Event(l.SHOW, {relatedTarget: n}), n && a(n).trigger(i), a(this._element).trigger(r), r.isDefaultPrevented() || i.isDefaultPrevented() || (t && (e = a(t)[0]), this._activate(this._element, o), o = function () {
1077                            var e = a.Event(l.HIDDEN, {relatedTarget: s._element}),
1078                                t = a.Event(l.SHOWN, {relatedTarget: n});
1079                            a(n).trigger(e), a(s._element).trigger(t)
1080                        }, e ? this._activate(e, e.parentNode, o) : o()))
1081                    }, y.prototype.dispose = function () {
1082                        a.removeClass(this._element, i), this._element = null
1083                    }, y.prototype._activate = function (e, t, n) {
1084                        var i = a(t).find(h)[0],
1085                            t = n && _.supportsTransitionEnd() && (i && a(i).hasClass(s) || Boolean(a(t).find(r)[0])),
1086                            n = a.proxy(this._transitionComplete, this, e, i, t, n);
1087                        i && t ? a(i).one(_.TRANSITION_END, n).emulateTransitionEnd(150) : n(), i && a(i).removeClass(u)
1088                    }, y.prototype._transitionComplete = function (e, t, n, i) {
1089                        var r;
1090                        t && (a(t).removeClass(c), (r = a(t).find(g)[0]) && a(r).removeClass(c), t.setAttribute("aria-expanded", !1)), a(e).addClass(c), e.setAttribute("aria-expanded", !0), n ? (_.reflow(e), a(e).addClass(u)) : a(e).removeClass(s), e.parentNode && a(e.parentNode).hasClass(o) && ((n = a(e).closest(f)[0]) && a(n).find(m).addClass(c), e.setAttribute("aria-expanded", !0)), i && i()
1091                    }, y._jQueryInterface = function (n) {
1092                        return this.each(function () {
1093                            var e = a(this), t = e.data(i);
1094                            if (t || (t = new y(this), e.data(i, t)), "string" == typeof n) {
1095                                if (void 0 === t[n]) throw new Error('No method named "' + n + '"');
1096                                t[n]()
1097                            }
1098                        })
1099                    }, x(y, null, [{
1100                        key: "VERSION", get: function () {
1101                            return "4.0.0-alpha.5"
1102                        }
1103                    }]), y);
1104
1105                function y(e) {
1106                    w(this, y), this._element = e
1107                }
1108
1109                a(document).on(l.CLICK_DATA_API, e, function (e) {
1110                    e.preventDefault(), n._jQueryInterface.call(a(this), "show")
1111                }), a.fn.tab = n._jQueryInterface, a.fn.tab.Constructor = n, a.fn.tab.noConflict = function () {
1112                    return a.fn.tab = t, n._jQueryInterface
1113                }
1114            }(jQuery), g = function (o) {
1115                if (void 0 === window.Tether) throw new Error("Bootstrap tooltips require Tether (http://tether.io/)");
1116                var t = "tooltip", i = "bs.tooltip", e = "." + i, n = o.fn[t], r = {
1117                        animation: !0,
1118                        template: '<div class="tooltip" role="tooltip"><div class="tooltip-inner"></div></div>',
1119                        trigger: "hover focus",
1120                        title: "",
1121                        delay: 0,
1122                        html: !1,
1123                        selector: !1,
1124                        placement: "top",
1125                        offset: "0 0",
1126                        constraints: []
1127                    }, s = {
1128                        animation: "boolean",
1129                        template: "string",
1130                        title: "(string|element|function)",
1131                        trigger: "string",
1132                        delay: "(number|object)",
1133                        html: "boolean",
1134                        selector: "(string|boolean)",
1135                        placement: "(string|function)",
1136                        offset: "string",
1137                        constraints: "array"
1138                    }, a = {TOP: "bottom center", RIGHT: "middle left", BOTTOM: "top center", LEFT: "middle right"},
1139                    l = "in", c = "out", u = {
1140                        HIDE: "hide" + e,
1141                        HIDDEN: "hidden" + e,
1142                        SHOW: "show" + e,
1143                        SHOWN: "shown" + e,
1144                        INSERTED: "inserted" + e,
1145                        CLICK: "click" + e,
1146                        FOCUSIN: "focusin" + e,
1147                        FOCUSOUT: "focusout" + e,
1148                        MOUSEENTER: "mouseenter" + e,
1149                        MOUSELEAVE: "mouseleave" + e
1150                    }, f = "fade", d = "in", p = ".tooltip-inner", h = {element: !1, enabled: !1}, m = "hover", g = "focus",
1151                    y = "manual", v = (b.prototype.enable = function () {
1152                        this._isEnabled = !0
1153                    }, b.prototype.disable = function () {
1154                        this._isEnabled = !1
1155                    }, b.prototype.toggleEnabled = function () {
1156                        this._isEnabled = !this._isEnabled
1157                    }, b.prototype.toggle = function (e) {
1158                        var t, n;
1159                        e ? (t = this.constructor.DATA_KEY, (n = o(e.currentTarget).data(t)) || (n = new this.constructor(e.currentTarget, this._getDelegateConfig()), o(e.currentTarget).data(t, n)), n._activeTrigger.click = !n._activeTrigger.click, n._isWithActiveTrigger() ? n._enter(null, n) : n._leave(null, n)) : o(this.getTipElement()).hasClass(d) ? this._leave(null, this) : this._enter(null, this)
1160                    }, b.prototype.dispose = function () {
1161                        clearTimeout(this._timeout), this.cleanupTether(), o.removeData(this.element, this.constructor.DATA_KEY), o(this.element).off(this.constructor.EVENT_KEY), this.tip && o(this.tip).remove(), this._isEnabled = null, this._timeout = null, this._hoverState = null, this._activeTrigger = null, this._tether = null, this.element = null, this.config = null, this.tip = null
1162                    }, b.prototype.show = function () {
1163                        var e, t = this, n = o.Event(this.constructor.Event.SHOW);
1164                        this.isWithContent() && this._isEnabled && (o(this.element).trigger(n), e = o.contains(this.element.ownerDocument.documentElement, this.element), !n.isDefaultPrevented() && e && (n = this.getTipElement(), e = _.getUID(this.constructor.NAME), n.setAttribute("id", e), this.element.setAttribute("aria-describedby", e), this.setContent(), this.config.animation && o(n).addClass(f), e = "function" == typeof this.config.placement ? this.config.placement.call(this, n, this.element) : this.config.placement, e = this._getAttachment(e), o(n).data(this.constructor.DATA_KEY, this).appendTo(document.body), o(this.element).trigger(this.constructor.Event.INSERTED), this._tether = new Tether({
1165                            attachment: e,
1166                            element: n,
1167                            target: this.element,
1168                            classes: h,
1169                            classPrefix: "bs-tether",
1170                            offset: this.config.offset,
1171                            constraints: this.config.constraints,
1172                            addTargetClasses: !1
1173                        }), _.reflow(n), this._tether.position(), o(n).addClass(d), n = function () {
1174                            var e = t._hoverState;
1175                            t._hoverState = null, o(t.element).trigger(t.constructor.Event.SHOWN), e === c && t._leave(null, t)
1176                        }, _.supportsTransitionEnd() && o(this.tip).hasClass(f) ? o(this.tip).one(_.TRANSITION_END, n).emulateTransitionEnd(b._TRANSITION_DURATION) : n()))
1177                    }, b.prototype.hide = function (e) {
1178                        function t() {
1179                            n._hoverState !== l && i.parentNode && i.parentNode.removeChild(i), n.element.removeAttribute("aria-describedby"), o(n.element).trigger(n.constructor.Event.HIDDEN), n.cleanupTether(), e && e()
1180                        }
1181
1182                        var n = this, i = this.getTipElement(), r = o.Event(this.constructor.Event.HIDE);
1183                        o(this.element).trigger(r), r.isDefaultPrevented() || (o(i).removeClass(d), _.supportsTransitionEnd() && o(this.tip).hasClass(f) ? o(i).one(_.TRANSITION_END, t).emulateTransitionEnd(150) : t(), this._hoverState = "")
1184                    }, b.prototype.isWithContent = function () {
1185                        return Boolean(this.getTitle())
1186                    }, b.prototype.getTipElement = function () {
1187                        return this.tip = this.tip || o(this.config.template)[0]
1188                    }, b.prototype.setContent = function () {
1189                        var e = o(this.getTipElement());
1190                        this.setElementContent(e.find(p), this.getTitle()), e.removeClass(f).removeClass(d), this.cleanupTether()
1191                    }, b.prototype.setElementContent = function (e, t) {
1192                        var n = this.config.html;
1193                        "object" === (void 0 === t ? "undefined" : S(t)) && (t.nodeType || t.jquery) ? n ? o(t).parent().is(e) || e.empty().append(t) : e.text(o(t).text()) : e[n ? "html" : "text"](t)
1194                    }, b.prototype.getTitle = function () {
1195                        return this.element.getAttribute("data-original-title") || ("function" == typeof this.config.title ? this.config.title.call(this.element) : this.config.title)
1196                    }, b.prototype.cleanupTether = function () {
1197                        this._tether && this._tether.destroy()
1198                    }, b.prototype._getAttachment = function (e) {
1199                        return a[e.toUpperCase()]
1200                    }, b.prototype._setListeners = function () {
1201                        var n = this;
1202                        this.config.trigger.split(" ").forEach(function (e) {
1203                            var t;
1204                            "click" === e ? o(n.element).on(n.constructor.Event.CLICK, n.config.selector, o.proxy(n.toggle, n)) : e !== y && (t = e === m ? n.constructor.Event.MOUSEENTER : n.constructor.Event.FOCUSIN, e = e === m ? n.constructor.Event.MOUSELEAVE : n.constructor.Event.FOCUSOUT, o(n.element).on(t, n.config.selector, o.proxy(n._enter, n)).on(e, n.config.selector, o.proxy(n._leave, n)))
1205                        }), this.config.selector ? this.config = o.extend({}, this.config, {
1206                            trigger: "manual",
1207                            selector: ""
1208                        }) : this._fixTitle()
1209                    }, b.prototype._fixTitle = function () {
1210                        var e = S(this.element.getAttribute("data-original-title"));
1211                        !this.element.getAttribute("title") && "string" === e || (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", ""))
1212                    }, b.prototype._enter = function (e, t) {
1213                        var n = this.constructor.DATA_KEY;
1214                        return (t = t || o(e.currentTarget).data(n)) || (t = new this.constructor(e.currentTarget, this._getDelegateConfig()), o(e.currentTarget).data(n, t)), e && (t._activeTrigger["focusin" === e.type ? g : m] = !0), o(t.getTipElement()).hasClass(d) || t._hoverState === l ? void (t._hoverState = l) : (clearTimeout(t._timeout), t._hoverState = l, t.config.delay && t.config.delay.show ? void (t._timeout = setTimeout(function () {
1215                            t._hoverState === l && t.show()
1216                        }, t.config.delay.show)) : void t.show())
1217                    }, b.prototype._leave = function (e, t) {
1218                        var n = this.constructor.DATA_KEY;
1219                        if ((t = t || o(e.currentTarget).data(n)) || (t = new this.constructor(e.currentTarget, this._getDelegateConfig()), o(e.currentTarget).data(n, t)), e && (t._activeTrigger["focusout" === e.type ? g : m] = !1), !t._isWithActiveTrigger()) return clearTimeout(t._timeout), t._hoverState = c, t.config.delay && t.config.delay.hide ? void (t._timeout = setTimeout(function () {
1220                            t._hoverState === c && t.hide()
1221                        }, t.config.delay.hide)) : void t.hide()
1222                    }, b.prototype._isWithActiveTrigger = function () {
1223                        for (var e in this._activeTrigger) if (this._activeTrigger[e]) return !0;
1224                        return !1
1225                    }, b.prototype._getConfig = function (e) {
1226                        return (e = o.extend({}, this.constructor.Default, o(this.element).data(), e)).delay && "number" == typeof e.delay && (e.delay = {
1227                            show: e.delay,
1228                            hide: e.delay
1229                        }), _.typeCheckConfig(t, e, this.constructor.DefaultType), e
1230                    }, b.prototype._getDelegateConfig = function () {
1231                        var e = {};
1232                        if (this.config) for (var t in this.config) this.constructor.Default[t] !== this.config[t] && (e[t] = this.config[t]);
1233                        return e
1234                    }, b._jQueryInterface = function (n) {
1235                        return this.each(function () {
1236                            var e = o(this).data(i), t = "object" === (void 0 === n ? "undefined" : S(n)) ? n : null;
1237                            if ((e || !/dispose|hide/.test(n)) && (e || (e = new b(this, t), o(this).data(i, e)), "string" == typeof n)) {
1238                                if (void 0 === e[n]) throw new Error('No method n
1238amed "' + n + '"');
1239                                e[n]()
1240                            }
1241                        })
1242                    }, x(b, null, [{
1243                        key: "VERSION", get: function () {
1244                            return "4.0.0-alpha.5"
1245                        }
1246                    }, {
1247                        key: "Default", get: function () {
1248                            return r
1249                        }
1250                    }, {
1251                        key: "NAME", get: function () {
1252                            return t
1253                        }
1254                    }, {
1255                        key: "DATA_KEY", get: function () {
1256                            return i
1257                        }
1258                    }, {
1259                        key: "Event", get: function () {
1260                            return u
1261                        }
1262                    }, {
1263                        key: "EVENT_KEY", get: function () {
1264                            return e
1265                        }
1266                    }, {
1267                        key: "DefaultType", get: function () {
1268                            return s
1269                        }
1270                    }]), b);
1271
1272                function b(e, t) {
1273                    w(this, b), this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._tether = null, this.element = e, this.config = this._getConfig(t), this.tip = null, this._setListeners()
1274                }
1275
1276                return o.fn[t] = v._jQueryInterface, o.fn[t].Constructor = v, o.fn[t].noConflict = function () {
1277                    return o.fn[t] = n, v._jQueryInterface
1278                }, v
1279            }(jQuery), function (i) {
1280                var e, t = "popover", r = "bs.popover", n = "." + r, o = i.fn[t], s = i.extend({}, g.Default, {
1281                        placement: "right",
1282                        trigger: "click",
1283                        content: "",
1284                        template: '<div class="popover" role="tooltip"><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
1285                    }), a = i.extend({}, g.DefaultType, {content: "(string|element|function)"}), l = "fade", c = "in",
1286                    u = ".popover-title", f = ".popover-content", d = {
1287                        HIDE: "hide" + n,
1288                        HIDDEN: "hidden" + n,
1289                        SHOW: "show" + n,
1290                        SHOWN: "shown" + n,
1291                        INSERTED: "inserted" + n,
1292                        CLICK: "click" + n,
1293                        FOCUSIN: "focusin" + n,
1294                        FOCUSOUT: "focusout" + n,
1295                        MOUSEENTER: "mouseenter" + n,
1296                        MOUSELEAVE: "mouseleave" + n
1297                    }, p = (function (e, t) {
1298                        if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + m(t));
1299                        e.prototype = Object.create(t && t.prototype, {
1300                            constructor: {
1301                                value: e,
1302                                enumerable: !1,
1303                                writable: !0,
1304                                configurable: !0
1305                            }
1306                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
1307                    }(h, e = g), h.prototype.isWithContent = function () {
1308                        return this.getTitle() || this._getContent()
1309                    }, h.prototype.getTipElement = function () {
1310                        return this.tip = this.tip || i(this.config.template)[0]
1311                    }, h.prototype.setContent = function () {
1312                        var e = i(this.getTipElement());
1313                        this.setElementContent(e.find(u), this.getTitle()), this.setElementContent(e.find(f), this._getContent()), e.removeClass(l).removeClass(c), this.cleanupTether()
1314                    }, h.prototype._getContent = function () {
1315                        return this.element.getAttribute("data-content") || ("function" == typeof this.config.content ? this.config.content.call(this.element) : this.config.content)
1316                    }, h._jQueryInterface = function (n) {
1317                        return this.each(function () {
1318                            var e = i(this).data(r), t = "object" === (void 0 === n ? "undefined" : S(n)) ? n : null;
1319                            if ((e || !/destroy|hide/.test(n)) && (e || (e = new h(this, t), i(this).data(r, e)), "string" == typeof n)) {
1320                                if (void 0 === e[n]) throw new Error('No method n
1320amed "' + n + '"');
1321                                e[n]()
1322                            }
1323                        })
1324                    }, x(h, null, [{
1325                        key: "VERSION", get: function () {
1326                            return "4.0.0-alpha.5"
1327                        }
1328                    }, {
1329                        key: "Default", get: function () {
1330                            return s
1331                        }
1332                    }, {
1333                        key: "NAME", get: function () {
1334                            return t
1335                        }
1336                    }, {
1337                        key: "DATA_KEY", get: function () {
1338                            return r
1339                        }
1340                    }, {
1341                        key: "Event", get: function () {
1342                            return d
1343                        }
1344                    }, {
1345                        key: "EVENT_KEY", get: function () {
1346                            return n
1347                        }
1348                    }, {
1349                        key: "DefaultType", get: function () {
1350                            return a
1351                        }
1352                    }]), h);
1353
1354                function h() {
1355                    return w(this, h), function (e, t) {
1356                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
1357                        return !t || "object" != m(t) && "function" != typeof t ? e : t
1358                    }(this, e.apply(this, arguments))
1359                }
1360
1361                i.fn[t] = p._jQueryInterface, i.fn[t].Constructor = p, i.fn[t].noConflict = function () {
1362                    return i.fn[t] = o, p._jQueryInterface
1363                }
1364            }(jQuery)
1365        }, 291: function (e) {
1366            function t(e) {
1367                return (t = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
1368                    return typeof e
1369                } : function (e) {
1370                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
1371                })(e)
1372            }
1373
1374            function i() {
1375                this._events = this._events || {}, this._maxListeners = this._maxListeners || void 0
1376            }
1377
1378            function l(e) {
1379                return "function" == typeof e
1380            }
1381
1382            function c(e) {
1383                return "object" === t(e) && null !== e
1384            }
1385
1386            function u(e) {
1387                return void 0 === e
1388            }
1389
1390            ((e.exports = i).EventEmitter = i).prototype._events = void 0, i.prototype._maxListeners = void 0, i.defaultMaxListeners = 10, i.prototype.setMaxListeners = function (e) {
1391                if ("number" != typeof e || e < 0 || isNaN(e)) throw TypeError("n must be a positive number");
1392                return this._maxListeners = e, this
1393            }, i.prototype.emit = function (e) {
1394                var t, n, i, r, o, s;
1395                if (this._events || (this._events = {}), "error" === e && (!this._events.error || c(this._events.error) && !this._events.error.length)) {
1396                    if ((t = arguments[1]) instanceof Error) throw t;
1397                    var a = new Error('Uncaught, unspecified "error" event. (' + t + ")");
1398                    throw a.context = t, a
1399                }
1400                if (u(n = this._events[e])) return !1;
1401                if (l(n)) switch (arguments.length) {
1402                    case 1:
1403                        n.call(this);
1404                        break;
1405                    case 2:
1406                        n.call(this, arguments[1]);
1407                        break;
1408                    case 3:
1409                        n.call(this, arguments[1], arguments[2]);
1410                        break;
1411                    default:
1412                        r = Array.prototype.slice.call(arguments, 1), n.apply(this, r)
1413                } else if (c(n)) for (r = Array.prototype.slice.call(arguments, 1), i = (s = n.slice()).length, o = 0; o < i; o++) s[o].apply(this, r);
1414                return !0
1415            }, i.prototype.on = i.prototype.addListener = function (e, t) {
1416                var n;
1417                if (!l(t)) throw TypeError("listener must be a function");
1418                return this._events || (this._events = {}
1418), this._events.newListener && this.emit("newListener", e, l(t.listener) ? t.listener : t), this._events[e] ? c(this._events[e]) ? this._events[e].push(t) : this._events[e] = [this._events[e], t] : this._events[e] = t, c(this._events[e]) && !this._events[e].warned && (n = u(this._maxListeners) ? i.defaultMaxListeners : this._maxListeners) && 0 < n && this._events[e].length > n && (this._events[e].warned = !0, console.trace), this
1419            }, i.prototype.once = function (e, t) {
1420                if (!l(t)) throw TypeError("listener must be a function");
1421                var n = !1;
1422
1423                function i() {
1424                    this.removeListener(e, i), n || (n = !0, t.apply(this, arguments))
1425                }
1426
1427                return i.listener = t, this.on(e, i), this
1428            }, i.prototype.removeListener = function (e, t) {
1429                var n, i, r, o;
1430                if (!l(t)) throw TypeError("listener must be a function");
1431                if (!this._events || !this._events[e]) return this;
1432                if (r = (n = this._events[e]).length, i = -1, n === t || l(n.listener) && n.listener === t) delete this._events[e], this._events.removeListener && this.emit("removeListener", e, t); else if (c(n)) {
1433                    for (o = r; 0 < o--;) if (n[o] === t || n[o].listener && n[o].listener === t) {
1434                        i = o;
1435                        break
1436                    }
1437                    if (i < 0) return this;
1438                    1 === n.length ? (n.length = 0, delete this._events[e]) : n.splice(i, 1), this._events.removeListener && this.emit("removeListener", e, t)
1439                }
1440                return this
1441            }, i.prototype.removeAllListeners = function (e) {
1442                var t, n;
1443                if (!this._events) return this;
1444                if (!this._events.removeListener) return 0 === arguments.length ? this._events = {} : this._events[e] && delete this._events[e], this;
1445                if (0 === arguments.length) {
1446                    for (t in this._events) "removeListener" !== t && this.removeAllListeners(t);
1447                    return this.removeAllListeners("removeListener"), this._events = {}, this
1448                }
1449                if (l(n = this._events[e])) this.removeListener(e, n); else if (n) for (; n.length;) this.removeListener(e, n[n.length - 1]);
1450                return delete this._events[e], this
1451            }, i.prototype.listeners = function (e) {
1452                e = this._events && this._events[e] ? l(this._events[e]) ? [this._events[e]] : this._events[e].slice() : [];
1453                return e
1454            }, i.prototype.listenerCount = function (e) {
1455                if (this._events) {
1456                    e = this._events[e];
1457                    if (l(e)) return 1;
1458                    if (e) return e.length
1459                }
1460                return 0
1461            }, i.listenerCount = function (e, t) {
1462                return e.listenerCount(t)
1463            }
1464        }, 144: function (e, t) {
1465            var n;
1466
1467            function i(e) {
1468                return (i = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
1469                    return typeof e
1470                } : function (e) {
1471                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
1472                })(e)
1473            }
1474
1475            n = function () {
1476                return function i(r, o, s) {
1477                    function a(n, e) {
1478                        if (!o[n]) {
1479                            if (!r[n]) {
1480                                if (0, l) return l(n, !0);
1481                                var t = new Error("Cannot find module '" + n + "'");
1482                                throw t.code = "MODULE_NOT_FOUND", t
1483                            }
1484                            t = o[n] = {exports: {}};
1485                            r[n][0].call(t.exports, function (e) {
1486                                var t = r[n][1][e];
1487                                return a(t || e)
1488                            }
1488, t, t.exports, i, r, o, s)
1489                        }
1490                        return o[n].exports
1491                    }
1492
1493                    for (var l = void 0, e = 0; e < s.length; e++) a(s[e]);
1494                    return a
1495                }({
1496                    1: [function (e, t, n) {
1497                        t.exports = function (e) {
1498                            var t, n, i, r = -1;
1499                            if (1 < e.lines.length && "flex-start" === e.style.alignContent) for (t = 0; i = e.lines[++r];) i.crossStart = t, t += i.cross; else if (1 < e.lines.length && "flex-end" === e.style.alignContent) for (t = e.flexStyle.crossSpace; i = e.lines[++r];) i.crossStart = t, t += i.cross; else if (1 < e.lines.length && "center" === e.style.alignContent) for (t = e.flexStyle.crossSpace / 2; i = e.lines[++r];) i.crossStart = t, t += i.cross; else if (1 < e.lines.length && "space-between" === e.style.alignContent) for (n = e.flexStyle.crossSpace / (e.lines.length - 1), t = 0; i = e.lines[++r];) i.crossStart = t, t += i.cross + n; else if (1 < e.lines.length && "space-around" === e.style.alignContent) for (t = (n = 2 * e.flexStyle.crossSpace / (2 * e.lines.length)) / 2; i = e.lines[++r];) i.crossStart = t, t += i.cross + n; else for (n = e.flexStyle.crossSpace / e.lines.length, t = e.flexStyle.crossInnerBefore; i = e.lines[++r];) i.crossStart = t, i.cross += n, t += i.cross
1500                        }
1501                    }, {}], 2: [function (e, t, n) {
1502                        t.exports = function (e) {
1503                            for (var t, n = -1; line = e.lines[++n];) for (t = -1; child = line.children[++t];) {
1504                                var i = child.style.alignSelf;
1505                                "flex-start" === (i = "auto" === i ? e.style.alignItems : i) ? child.flexStyle.crossStart = line.crossStart : "flex-end" === i ? child.flexStyle.crossStart = line.crossStart + line.cross - child.flexStyle.crossOuter : "center" === i ? child.flexStyle.crossStart = line.crossStart + (line.cross - child.flexStyle.crossOuter) / 2 : (child.flexStyle.crossStart = line.crossStart, child.flexStyle.crossOuter = line.cross, child.flexStyle.cross = child.flexStyle.crossOuter - child.flexStyle.crossBefore - child.flexStyle.crossAfter)
1506                            }
1507                        }
1508                    }, {}], 3: [function (e, t, n) {
1509                        t.exports = function (e, t) {
1510                            var n = "row" === t || "row-reverse" === t, i = e.mainAxis;
1511                            i ? n && "inline" === i || !n && "block" === i || (e.flexStyle = {
1512                                main: e.flexStyle.cross,
1513                                cross: e.flexStyle.main,
1514                                mainOffset: e.flexStyle.crossOffset,
1515                                crossOffset: e.flexStyle.mainOffset,
1516                                mainBefore: e.flexStyle.crossBefore,
1517                                mainAfter: e.flexStyle.crossAfter,
1518                                crossBefore: e.flexStyle.mainBefore,
1519                                crossAfter: e.flexStyle.mainAfter,
1520                                mainInnerBefore: e.flexStyle.crossInnerBefore,
1521                                mainInnerAfter: e.flexStyle.crossInnerAfter,
1522                                crossInnerBefore: e.flexStyle.mainInnerBefore,
1523                                crossInnerAfter: e.flexStyle.mainInnerAfter,
1524                                mainBorderBefore: e.flexStyle.crossBorderBefore,
1525                                mainBorderAfter: e.flexStyle.crossBorderAfter,
1526                                crossBorderBefore: e.flexStyle.mainBorderBefore,
1527                                crossBorderAfter: e.flexStyle.mainBorderAfter
1528                            }) : (e.flexStyle = n ? {
1529                                main: e.style.width,
1530                                cross: e.style.height,
1531                                mainOffset: e.style.offsetWidth,
1532                                crossOffset: e.style.offsetHeight,
1533                                mainBefore: e.style.marginLeft,
1534                                mainAfter: e.style.marginRight,
1535                                crossBefore: e.style.marginTop,
1536                                crossAfter: e.style.marginBottom,
1537                                mainInnerBefore: e.style.paddingLeft,
1538                                mainInnerAfter: e.style.paddingRight,
1539                                crossInnerBefore: e.style.paddingTop,
1540                                crossInnerAfter: e.style.paddingBottom,
1541                                mainBorderBefore: e.style.borderLeftWidth,
1542                                mainBorderAfter: e.style.borderRightWidth,
1543                                crossBorderBefore: e.style.borderTopWidth,
1544                                crossBorderAfter: e.style.borderBottomWidth
1545                            } : {
1546                                main: e.style.height,
1547                                cross: e.style.width,
1548                                mainOffset: e.style.offsetHeight,
1549                                crossOffset: e.style.offsetWidth,
1550                                mainBefore: e.style.marginTop,
1551                                mainAfter: e.style.marginBottom,
1552                                crossBefore: e.style.marginLeft,
1553                                crossAfter: e.style.marginRight,
1554                                mainInnerBefore: e.style.paddingTop,
1555                                mainInnerAfter: e.style.paddingBottom,
1556                                crossInnerBefore: e.style.paddingLeft,
1557                                crossInnerAfter: e.style.paddingRight,
1558                                mainBorderBefore: e.style.borderTopWidth,
1559                                mainBorderAfter: e.style.borderBottomWidth,
1560                                crossBorderBefore: e.style.borderLeftWidth,
1561                                crossBorderAfter: e.style.borderRightWidth
1562                            }, "content-box" === e.style.boxSizing && ("number" == typeof e.flexStyle.main && (e.flexStyle.main += e.flexStyle.mainInnerBefore + e.flexStyle.mainInnerAfter + e.flexStyle.mainBorderBefore + e.flexStyle.mainBorderAfter), "number" == typeof e.flexStyle.cross && (e.flexStyle.cross += e.flexStyle.crossInnerBefore + e.flexStyle.crossInnerAfter + e.flexStyle.crossBorderBefore + e.flexStyle.crossBorderAfter))), e.mainAxis = n ? "inline" : "block", e.crossAxis = n ? "block" : "
1562inline", "number" == typeof e.style.flexBasis && (e.flexStyle.main = e.style.flexBasis + e.flexStyle.mainInnerBefore + e.flexStyle.mainInnerAfter + e.flexStyle.mainBorderBefore + e.flexStyle.mainBorderAfter), e.flexStyle.mainOuter = e.flexStyle.main, e.flexStyle.crossOuter = e.flexStyle.cross, "auto" === e.flexStyle.mainOuter && (e.flexStyle.mainOuter = e.flexStyle.mainOffset), "auto" === e.flexStyle.crossOuter && (e.flexStyle.crossOuter = e.flexStyle.crossOffset), "number" == typeof e.flexStyle.mainBefore && (e.flexStyle.mainOuter += e.flexStyle.mainBefore), "number" == typeof e.flexStyle.mainAfter && (e.flexStyle.mainOuter += e.flexStyle.mainAfter), "number" == typeof e.flexStyle.crossBefore && (e.flexStyle.crossOuter += e.flexStyle.crossBefore), "number" == typeof e.flexStyle.crossAfter && (e.flexStyle.crossOuter += e.flexStyle.crossAfter)
1563                        }
1564                    }, {}], 4: [function (e, t, n) {
1565                        var r = e("../reduce");
1566                        t.exports = function (n) {
1567                            var i;
1568                            0 < n.mainSpace && (0 < (i = r(n.children, function (e, t) {
1569                                return e + parseFloat(t.style.flexGrow)
1570                            }, 0)) && (n.main = r(n.children, function (e, t) {
1571                                return "auto" === t.flexStyle.main ? t.flexStyle.main = t.flexStyle.mainOffset + parseFloat(t.style.flexGrow) / i * n.mainSpace : t.flexStyle.main += parseFloat(t.style.flexGrow) / i * n.mainSpace, t.flexStyle.mainOuter = t.flexStyle.main + t.flexStyle.mainBefore + t.flexStyle.mainAfter, e + t.flexStyle.mainOuter
1572                            }, 0), n.mainSpace = 0))
1573                        }
1574                    }, {"../reduce": 12}], 5: [function (e, t, n) {
1575                        var r = e("../reduce");
1576                        t.exports = function (n) {
1577                            var i;
1578                            n.mainSpace < 0 && (0 < (i = r(n.children, function (e, t) {
1579                                return e + parseFloat(t.style.flexShrink)
1580                            }, 0)) && (n.main = r(n.children, function (e, t) {
1581                                return t.flexStyle.main += parseFloat(t.style.flexShrink) / i * n.mainSpace, t.flexStyle.mainOuter = t.flexStyle.main + t.flexStyle.mainBefore + t.flexStyle.mainAfter, e + t.flexStyle.mainOuter
1582                            }, 0), n.mainSpace = 0))
1583                        }
1584                    }, {"../reduce": 12}], 6: [function (e, t, n) {
1585                        var r = e("../reduce");
1586                        t.exports = function (e) {
1587                            var t;
1588                            e.lines = [t = {main: 0, cross: 0, children: []}];
1589                            for (var n, i = -1; n = e.children[++i];) "nowrap" === e.style.flexWrap || 0 === t.children.length || "auto" === e.flexStyle.main || e.flexStyle.main - e.flexStyle.mainInnerBefore - e.flexStyle.mainInnerAfter - e.flexStyle.mainBorderBefore - e.flexStyle.mainBorderAfter >= t.main + n.flexStyle.mainOuter ? (t.main += n.flexStyle.mainOuter, t.cross = Math.max(t.cross, n.flexStyle.crossOuter)) : e.lines.push(t = {
1590                                main: n.flexStyle.mainOuter,
1591                                cross: n.flexStyle.crossOuter,
1592                                children: []
1593                            }), t.children.push(n);
1594                            e.flexStyle.mainLines = r(e.lines, function (e, t) {
1595                                return Math.max(e, t.main)
1596                            }, 0), e.flexStyle.crossLines = r(e.lines, function (e, t) {
1597                                return e + t.cross
1598                            }, 0), "auto" === e.flexStyle.main && (e.flexStyle.main = Math.max(e.flexStyle.mainOffset, e.flexStyle.mainLines + e.flexStyle.mainInnerBefore + e.flexStyle.mainInnerAfter + e.flexStyle.mainBorderBefore + e.flexStyle.mainBorderAfter)), "auto" === e.flexStyle.cross && (e.flexStyle.cross = Math.max(e.flexStyle.crossOffset, e.flexStyle.crossLines + e.flexStyle.crossInnerBefore + e.flexStyle.crossInnerAfter + e.flexStyle.crossBorderBefore + e.flexStyle.crossBorderAfter)), e.flexStyle.crossSpace = e.flexStyle.cross - e.flexStyle.crossInnerBefore - e.flexStyle.crossInnerAfter - e.flexStyle.crossBorderBefore - e.flexStyle.crossBorderAfter - e.flexStyle.crossLines, e.flexStyle.mainOuter = e.flexStyle.main + e.flexStyle.mainBefore + e.flexStyle.mainAfter, e.flexStyle.crossOuter = e.flexStyle.cross + e.flexStyle.crossBefore + e.flexStyle.crossAfter
1599                        }
1600                    }, {"../reduce": 12}], 7: [function (r, e, t) {
1601                        e.exports = function (e) {
1602                            for (var t, n, i = -1; t = e.children[++i];) r("./flex-direction")(t, e.style.flexDirection);
1603                            for (r("./flex-direction")(e, e.style.flexDirection), r("./order")(e), r("./flexbox-lines")(e), r("./align-content")(e), i = 
1603-1; n = e.lines[++i];) n.mainSpace = e.flexStyle.main - e.flexStyle.mainInnerBefore - e.flexStyle.mainInnerAfter - e.flexStyle.mainBorderBefore - e.flexStyle.mainBorderAfter - n.main, r("./flex-grow")(n), r("./flex-shrink")(n), r("./margin-main")(n), r("./margin-cross")(n), r("./justify-content")(n, e.style.justifyContent, e);
1604                            r("./align-items")(e)
1605                        }
1606                    }, {
1607                        "./align-content": 1,
1608                        "./align-items": 2,
1609                        "./flex-direction": 3,
1610                        "./flex-grow": 4,
1611                        "./flex-shrink": 5,
1612                        "./flexbox-lines": 6,
1613                        "./justify-content": 8,
1614                        "./margin-cross": 9,
1615                        "./margin-main": 10,
1616                        "./order": 11
1617                    }], 8: [function (e, t, n) {
1618                        t.exports = function (e, t, n) {
1619                            var i, r, o, n = n.flexStyle.mainInnerBefore, s = -1;
1620                            if ("flex-end" === t) for (i = e.mainSpace, i += n; o = e.children[++s];) o.flexStyle.mainStart = i, i += o.flexStyle.mainOuter; else if ("center" === t) for (i = e.mainSpace / 2, i += n; o = e.children[++s];) o.flexStyle.mainStart = i, i += o.flexStyle.mainOuter; else if ("space-between" === t) for (r = e.mainSpace / (e.children.length - 1), i = 0, i += n; o = e.children[++s];) o.flexStyle.mainStart = i, i += o.flexStyle.mainOuter + r; else if ("space-around" === t) for (i = (r = 2 * e.mainSpace / (2 * e.children.length)) / 2, i += n; o = e.children[++s];) o.flexStyle.mainStart = i, i += o.flexStyle.mainOuter + r; else for (i = 0, i += n; o = e.children[++s];) o.flexStyle.mainStart = i, i += o.flexStyle.mainOuter
1621                        }
1622                    }, {}], 9: [function (e, t, n) {
1623                        t.exports = function (e) {
1624                            for (var t, n = -1; t = e.children[++n];) {
1625                                var i = 0;
1626                                "auto" === t.flexStyle.crossBefore && ++i, "auto" === t.flexStyle.crossAfter && ++i;
1627                                var r = e.cross - t.flexStyle.crossOuter;
1628                                "auto" === t.flexStyle.crossBefore && (t.flexStyle.crossBefore = r / i), "auto" === t.flexStyle.crossAfter && (t.flexStyle.crossAfter = r / i), "auto" === t.flexStyle.cross ? t.flexStyle.crossOuter = t.flexStyle.crossOffset + t.flexStyle.crossBefore + t.flexStyle.crossAfter : t.flexStyle.crossOuter = t.flexStyle.cross + t.flexStyle.crossBefore + t.flexStyle.crossAfter
1629                            }
1630                        }
1631                    }, {}], 10: [function (e, t, n) {
1632                        t.exports = function (e) {
1633                            for (var t, n = 0, i = -1; t = e.children[++i];) "auto" === t.flexStyle.mainBefore && ++n, "auto" === t.flexStyle.mainAfter && ++n;
1634                            if (0 < n) {
1635                                for (i = -1; t = e.children[++i];) "auto" === t.flexStyle.mainBefore && (t.flexStyle.mainBefore = e.mainSpace / n), "auto" === t.flexStyle.mainAfter && (t.flexStyle.mainAfter = e.mainSpace / n), "auto" === t.flexStyle.main ? t.flexStyle.mainOuter = t.flexStyle.mainOffset + t.flexStyle.mainBefore + t.flexStyle.mainAfter : t.flexStyle.mainOuter = t.flexStyle.main + t.flexStyle.mainBefore + t.flexStyle.mainAfter;
1636                                e.mainSpace = 0
1637                            }
1638                        }
1639                    }, {}], 11: [function (e, t, n) {
1640                        var i = /^(column|row)-reverse$/;
1641                        t.exports = function (e) {
1642                            e.children.sort(function (e, t) {
1643                                return e.style.order - t.style.order || e.index - t.index
1644                            }), i.test(e.style.flexDirection) && e.children.reverse()
1645                        }
1646                    }, {}], 12: [function (e, t, n) {
1647                        t.exports = function (e, t, n) {
1648                            for (var i = e.length, r = -1; ++r < i;) r in e && (n = t(n, e[r], r));
1649                            return n
1650                        }
1651                    }, {}], 13: [function (e, t, n) {
1652                        var i = e("./read"), r = e("./write"), o = e("./readAll"), s = e("./writeAll");
1653                        t.exports = function (e) {
1654                            s(o(e))
1655                        }
1655, t.exports.read = i, t.exports.write = r, t.exports.readAll = o, t.exports.writeAll = s
1656                    }, {"./read": 15, "./readAll": 16, "./write": 17, "./writeAll": 18}], 14: [function (e, t, n) {
1657                        t.exports = function (e, t) {
1658                            var n = String(e).match(r);
1659                            if (!n) return e;
1660                            var i = n[1];
1661                            return "px" === (n = n[2]) ? +i : "cm" === n ? .3937 * i * 96 : "in" === n ? 96 * i : "mm" === n ? .3937 * i * 96 / 10 : "pc" === n ? 12 * i * 96 / 72 : "pt" === n ? 96 * i / 72 : "rem" === n ? 16 * i : function (e, t) {
1662                                o.style.cssText = "border:none!important;clip:rect(0 0 0 0)!important;display:block!important;font-size:1em!important;height:0!important;margin:0!important;padding:0!important;position:relative!important;width:" + e + "!important", t.parentNode.insertBefore(o, t.nextSibling);
1663                                e = o.offsetWidth;
1664                                return t.parentNode.removeChild(o), e
1665                            }(e, t)
1666                        };
1667                        var r = /^([-+]?\d*\.?\d+)(%|[a-z]+)$/, o = document.createElement("div")
1668                    }, {}], 15: [function (e, t, n) {
1669                        t.exports = function (e) {
1670                            var t = {
1671                                alignContent: "stretch",
1672                                alignItems: "stretch",
1673                                alignSelf: "auto",
1674                                borderBottomWidth: 0,
1675                                borderLeftWidth: 0,
1676                                borderRightWidth: 0,
1677                                borderTopWidth: 0,
1678                                boxSizing: "content-box",
1679                                display: "inline",
1680                                flexBasis: "auto",
1681                                flexDirection: "row",
1682                                flexGrow: 0,
1683                                flexShrink: 1,
1684                                flexWrap: "nowrap",
1685                                justifyContent: "flex-start",
1686                                height: "auto",
1687                                marginTop: 0,
1688                                marginRight: 0,
1689                                marginLeft: 0,
1690                                marginBottom: 0,
1691                                paddingTop: 0,
1692                                paddingRight: 0,
1693                                paddingLeft: 0,
1694                                paddingBottom: 0,
1695                                maxHeight: "none",
1696                                maxWidth: "none",
1697                                minHeight: 0,
1698                                minWidth: 0,
1699                                order: 0,
1700                                position: "static",
1701                                width: "auto"
1702                            };
1703                            if (e instanceof Element) {
1704                                var n, i = e.hasAttribute("data-style"),
1705                                    r = i ? e.getAttribute("data-style") : e.getAttribute("style") || "";
1706                                for (n in i || e.setAttribute("data-style", r), function (e, t) {
1707                                    for (var n in e) n in t && !/^(alignSelf|height|width)$/.test(n) && (e[n] = t[n])
1708                                }(t, window.getComputedStyle && getComputedStyle(e) || {}), function (e, t) {
1709                                    for (var n in e) {
1710                                        var i;
1711                                        n in t ? e[n] = t[n] : (i = n.replace(/[A-Z]/g, "-$&").toLowerCase()) in t && (e[n] = t[i])
1712                                    }
1713                                    "-js-display" in t && (e.dis
1713play = t["-js-display"])
1714                                }(t, e.currentStyle || {}), function (e, t) {
1715                                    for (var n; n = o.exec(t);) {
1716                                        var i = n[1].toLowerCase().replace(/-[a-z]/g, function (e) {
1717                                            return e.slice(1).toUpperCase()
1718                                        });
1719                                        e[i] = n[2]
1720                                    }
1721                                }(t, r), t) t[n] = s(t[n], e);
1722                                r = e.getBoundingClientRect();
1723                                t.offsetHeight = r.height || e.offsetHeight, t.offsetWidth = r.width || e.offsetWidth
1724                            }
1725                            return {element: e, style: t}
1726                        };
1727                        var o = /([^\s:;]+)\s*:\s*([^;]+?)\s*(;|$)/g, s = e("./getComputedLength")
1728                    }, {"./getComputedLength": 14}], 16: [function (e, t, n) {
1729                        function u(e) {
1730                            var t = e instanceof Element, n = t && e.getAttribute("data-style"),
1731                                e = t && e.currentStyle && e.currentStyle["-js-display"];
1732                            return i.test(n) || r.test(e)
1733                        }
1734
1735                        t.exports = function (e) {
1736                            var t = [];
1737                            return function e(t, n) {
1738                                for (var i, r = u(t), o = [], s = -1; i = t.childNodes[++s];) {
1739                                    var a = 3 === i.nodeType && !/^\s*$/.test(i.nodeValue);
1740                                    r && a && (l = i, (i = t.insertBefore(document.createElement("flex-item"), l)).appendChild(l));
1741                                    var l, a = i instanceof Element;
1742                                    a && (l = e(i, n), r && ((a = i.style).display = "inline-block", a.position = "absolute", l.style = f(i).style, o.push(l)))
1743                                }
1744                                var c = {element: t, children: o};
1745                                return r && (c.style = f(t).style, n.push(c)), c
1746                            }(e, t), t
1747                        };
1748                        var f = e("../read"), i = /(^|;)\s*display\s*:\s*(inline-)?flex\s*(;|$)/i,
1749                            r = /^(inline-)?flex$/i
1750                    }, {"../read": 15}], 17: [function (e, t, n) {
1751                        function a(e) {
1752                            return "string" == typeof e ? e : Math.max(e, 0) + "px"
1753                        }
1754
1755                        t.exports = function (e) {
1756                            l(e);
1757                            var t = e.element.style,
1758                                n = "inline" === e.mainAxis ? ["main", "cross"] : ["cross", "main"];
1759                            t.boxSizing = "content-box", t.display = "block", t.position = "relative", t.width = a(e.flexStyle[n[0]] - e.flexStyle[n[0] + "InnerBefore"] - e.flexStyle[n[0] + "InnerAfter"] - e.flexStyle[n[0] + "BorderBefore"] - e.flexStyle[n[0] + "BorderAfter"]), t.height = a(e.flexStyle[n[1]] - e.flexStyle[n[1] + "InnerBefore"] - e.flexStyle[n[1] + "InnerAfter"] - e.flexStyle[n[1] + "BorderBefore"] - e.flexStyle[n[1] + "BorderAfter"]);
1760                            for (var i, r = -1; i = e.children[++r];) {
1761                                var o = i.element.style,
1762                                    s = "inline" === i.mainAxis ? ["main", "cross"] : ["cross", "main"];
1763                                o.boxSizing = "content-box", o.display = "block", o.position = "absolute", "auto" !== i.flexStyle[s[0]] && (o.width = a(i.flexStyle[s[0]] - i.flexStyle[s[0] + "InnerBefore"] - i.flexStyle[s[0] + "InnerAfter"] - i.flexStyle[s[0] + "BorderBefore"] - i.flexStyle[s[0] + "BorderAfter"])), "auto" !== i.flexStyle[s[1]] && (o.height = a(i.flexStyle[s[1]] - i.flexStyle[s[1] + "InnerBefore"] - i.flexStyle[s[1] + "InnerAfter"] - i.flexStyle[s[1] + "BorderBefore"] - i.flexStyle[s[1] + "BorderAfter"])), o.top = a(i.flexStyle[s[1] + "Start"]), o.left = a(i.flexStyle[s[0] + "Start"]), o.marginTop = a(i.flexStyle[s[1] + "Before"]), o.marginRight = a(i.flexStyle[s[0] + "After"]), o.marginBottom = a(i.flexStyle[s[1] + "After"]), o.marginLeft = a(i.flexStyle[s[0] + "Before"])
1764                            }
1765                        };
1766                        var l = e("../flexbox")
1767                    }, {"../flexbox": 7}], 18: [function (e, t, n) {
1768                        t.exports = function (e) {
1769                            for (var t, n = -1; t = e[++n];) i(t)
1770                        };
1771                        var i = e("../write")
1772                    }, {"../write": 17}]
1773                }, {}, [13])(13)
1774            }, "object" == i(t) ? e.exports = n() : void 0 === (n = "function" == typeof (n = n) ? n.apply(t, []) : n) || (e.exports = n)
1775        }, 653: function (e, t, n) {
1776            var i, r, o;
1777
1778            function Ne(e) {
1779                return (Ne = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
1780                    return typeof e
1781                } : function (e) {
1782                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
1783                })(e)
1784            }
1785
1786            o = function (ae) {
1787                "use strict";
1788
1789                function i(e, s) {
1790                    function t(e) {
1791                        if (!(!0 === X.data(De + "_intouch") || 0 < ae(e.target).closest(s.excludedElements, X).length)) {
1792                            var t = e.originalEvent || e;
1793                            if (!t.pointerType || "mouse" != t.pointerType || 0 != s.fallbackToMouseEvents) {
1794                                var n, i = t.touches, r = i ? i[0] : t;
1795                                return G = Ce, i ? Z = i.length : !1 !== s.preventDefaultEvents && e.preventDefault(), Y = R = H = null, $ = 1, Q = U = z = q = W = 0, (e = {})[le] = O(le), e[ce] = O(ce), e[ue] = O(ue), e[fe] = O(fe), K = e, _(), E(0, r), !i || Z === s.fingers || s.fingers === _e || m(
1795) ? (ee = N(), 2 == Z && (E(1, i[1]), z = U = P(J[0].start, J[1].start)), (s.swipeStatus || s.pinchStatus) && (n = c(t, G))) : n = !1, !1 === n ? (c(t, G = ke), n) : (s.hold && (se = setTimeout(ae.proxy(function () {
1796                                    X.trigger("hold", [t.target]), s.hold && (n = s.hold.call(X, t, t.target))
1797                                }, this), s.longTapThreshold)), C(!0), null)
1798                            }
1799                        }
1800                    }
1801
1802                    function n(e) {
1803                        var t, n, i, r, o = e.originalEvent || e;
1804                        G === Ae || G === ke || T() || (t = A((n = o.touches) ? n[0] : o), te = N(), n && (Z = n.length), s.hold && clearTimeout(se), G = Ee, 2 == Z && (0 == z ? (E(1, n[1]), z = U = P(J[0].start, J[1].start)) : (A(n[1]), U = P(J[0].end, J[1].end), J[0].end, J[1].end, Y = $ < 1 ? pe : de), $ = (U / z * 1).toFixed(2), Q = Math.abs(z - U)), Z === s.fingers || s.fingers === _e || !n || m() ? (H = D(t.start, t.end), function (e, t) {
1805                            if (!1 !== s.preventDefaultEvents) if (s.allowPageScroll === he) e.preventDefault(); else {
1806                                var n = s.allowPageScroll === me;
1807                                switch (t) {
1808                                    case le:
1809                                        (s.swipeLeft && n || !n && s.allowPageScroll != Se) && e.preventDefault();
1810                                        break;
1811                                    case ce:
1812                                        (s.swipeRight && n || !n && s.allowPageScroll != Se) && e.preventDefault();
1813                                        break;
1814                                    case ue:
1815                                        (s.swipeUp && n || !n && s.allowPageScroll != xe) && e.preventDefault();
1816                                        break;
1817                                    case fe:
1818                                        (s.swipeDown && n || !n && s.allowPageScroll != xe) && e.preventDefault()
1819                                }
1820                            }
1821                        }(e, R = D(t.last, t.end)), i = t.start, r = t.end, W = Math.round(Math.sqrt(Math.pow(r.x - i.x, 2) + Math.pow(r.y - i.y, 2))), q = I(), n = W, (e = H) != he && (n = Math.max(n, k(e)), K[e].distance = n), r = c(o, G), s.triggerOnTouchEnd && !s.triggerOnTouchLeave || (i = !0, s.triggerOnTouchLeave && (e = {
1822                            left: (n = (e = ae(e = this)).offset()).left,
1823                            right: n.left + e.outerWidth(),
1824                            top: n.top,
1825                            bottom: n.top + e.outerHeight()
1826                        }, t = t.end, e = e, i = t.x > e.left && t.x < e.right && t.y > e.top && t.y < e.bottom), !s.triggerOnTouchEnd && i ? G = l(Ee) : s.triggerOnTouchLeave && !i && (G = l(Ae)), G != ke && G != Ae || c(o, G))) : c(o, G = ke), !1 === r && c(o, G = ke))
1827                    }
1828
1829                    function i(e) {
1830                        var t, n = e.originalEvent || e, i = n.touches;
1831                        if (i) {
1832                            if (i.length && !T()) return t = n, ne = N(), ie = t.touches.length + 1, !0;
1833                            if (i.length && T()) return !0
1834                        }
1835                        return T() && (Z = ie), te = N(), q = I(), d() || !f() ? c(n, G = ke) : s.triggerOnTouchEnd || !1 === s.triggerOnTouchEnd && G === Ee ? (!1 !== s.preventDefaultEvents && !1 !== e.cancelable && e.preventDefault(), c(n, G = Ae)) : !s.triggerOnTouchEnd && w() ? u(n, G = Ae, ve) : G === Ee && c(n, G = ke), C(!1), null
1836                    }
1837
1838                    function r() {
1839                        U = z = ee = te = Z = 0, _(), C(!($ = 1))
1840                    }
1841
1842                    function o(e) {
1843                        e = e.originalEvent || e;
1844                        s.triggerOnTouchLeave && c(e, G = l(Ae))
1845                    }
1846
1847                    function a() {
1848                        X.off(B, t), X.off(M, r), X.off(F, n), X.off(L, i), V && X.off(V, o), C(!1)
1849                    }
1850
1851                    function l(e) {
1852                        var t = e, n = p(), i = f(), r = d();
1853                        return !n || r ? t = ke : !i || e != Ee || s.triggerOnTouchEnd && !s.triggerOnTouchLeave ? !i && e == Ae && s.triggerOnTouchLeave && (t = ke) : t = Ae, t
1854                    }
1855
1856                    function c(e, t) {
1857                        var n, i = e.touches;
1858                        return (g() && y() || y()) && (n = u(e, t, ge)), (h() && m() || m()) && !1 !== n && (n = u(e, t, ye)), x() && S() && !1 !== n ? n = u(e, t, be) : q > s.longTapThreshold && W < Te && s.longTap && !1 !== n ? n = u(e, t, we) : 1 !== Z && Oe || !(isNaN(W) || W < s.threshold) || !w() || !1 === n || (n = u(e, t, ve)), t === ke && r(), t === Ae && (i && i.length || r()), n
1859                    }
1860
1861                    function u(e, t, n) {
1862                        var i;
1863                        if (n == ge) {
1864                            if (X.trigger("swipeStatus", [t, H || null, W || 0, q || 0, Z, J, R]), s.swipeStatus && !1 === (i = s.swipeStatus.call(X, e, t, H || null, W || 0, q || 0, Z, J, R))) return !1;
1865                            if (t == Ae && g()) {
1866                                if (clearTimeout(oe), clearTimeout(se), X.trigger("swipe", [H, W, q, Z, J, R]), s.swipe && !1 === (i = s.swipe.call(X, e, H, W, q, Z, J, R))) return !1;
1867                                switch (H) {
1868                                    case le:
1869                                        X.trigger("swipeLeft", [H, W, q, Z, J, R]), s.swipeLeft && (i = s.swipeLeft.call(X, e, H, W, q, Z, J, R));
1870                                        break;
1871                                    case ce:
1872                                        X.trigger("swipeRight", [H, W, q, Z, J, R]), s.swipeRight && (i = s.swipeRight.call(X, e, H, W, q, Z, J, R));
1873                                        break;
1874                                    case ue:
1875                                        X.trigger("swipeUp", [H, W, q, Z, J, R]), s.swipeUp && (i = s.swipeUp.call(X, e, H, W, q, Z, J, R));
1876                                        break;
1877                                    case fe:
1878                                        X.trigger("swipeDown", [H, W, q, Z, J, R]), s.swipeDown && (i = s.swipeDown.call(X, e, H, W, q, Z, J, R))
1879                                }
1880                            }
1881                        }
1882                        if (n == ye) {
1883                            if (X.trigger("pinchStatus", [t, Y || null, Q || 0, q || 0, Z, $, J]), s.pinchStatus && !1 === (i = s.pinchStatus.call(X, e, t, Y || null, Q || 0, q || 0, Z, $, J))) return !1;
1884                            if (t == Ae && h()) switch (Y) {
1885                                case de:
1886                                    X.trigger("pinchIn", [Y || null, Q || 0, q || 0, Z, $, J]), s.pinchIn && (i = s.pinchIn.call(X, e, Y || null, Q || 0, q || 0, Z, $, J));
1887                                    break;
1888                                case pe:
1889                                    X.trigger("pinchOut", [Y || null, Q || 0, q || 0, Z, $, J]), s.pinchOut && (i = s.pinchOut.call(X, e, Y || null, Q || 0, q || 0, Z, $, J))
1890                            }
1891                        }
1892                        return n == ve ? t !== ke && t !== Ae || (clearTimeout(oe), clearTimeout(se), S() && !x() ? (re = N(), oe = setTimeout(ae.proxy(function () {
1893                            re = null, X.trigger("tap", [e.target]), s.tap && (i = s.tap.call(X, e, e.target))
1894                        }, this), s.doubleTapThreshold)) : (re = null, X.trigger("tap", [e.target]), s.tap && (i = s.tap.call(X, e, e.target)))) : n == be ? t !== ke && t !== Ae || (clearTimeout(oe), clearTimeout(se), re = null, X.trigger("doubletap", [e.target]), s.doubleTap && (i = s.doubleTap.call(X, e, e.target))) : n == we && (t !== ke && t !== Ae || (clearTimeout(oe), re = null, X.trigger("longtap", [e.target]), s.longTap && (i = s.longTap.call(X, e, e.target)))), i
1895                    }
1896
1897                    function f() {
1898                        var e = !0;
1899                        return e = null !== s.threshold ? W >= s.threshold : e
1900                    }
1901
1902                    function d() {
1903                        var e = !1;
1904                        return e = null !== s.cancelThreshold && null !== H ? k(H) - W >= s.cancelThreshold : e
1905                    }
1906
1907                    function p() {
1908                        return !s.maxTimeThreshold || !(q >= s.maxTimeThreshold)
1909                    }
1910
1911                    function h() {
1912                        var e = v(), t = b(), n = null === s.pinchThreshold || Q >= s.pinchThreshold;
1913                        return e && t && n
1914                    }
1915
1916                    function m() {
1917                        return s.pinchStatus || s.pinchIn || s.pinchOut
1918                    }
1919
1920                    function g() {
1921                        var e = p(), t = f(), n = v(), i = b();
1922                        return !d() && i && n && t && e
1923                    }
1924
1925                    function y() {
1926                        return s.swipe || s.swipeStatus || s.swipeLeft || s.swipeRight || s.swipeUp || s.swipeDown
1927                    }
1928
1929                    function v() {
1930                        return Z === s.fingers || s.fingers === _e || !Oe
1931                    }
1932
1933                    function b() {
1934                        return 0 !== J[0].end.x
1935                    }
1936
1937                    function w() {
1938                        return s.tap
1939                    }
1940
1941                    function S() {
1942                        return !!s.doubleTap
1943                    }
1944
1945                    function x() {
1946                        if (null == re) return !1;
1947                        var e = N();
1948                        return S() && e - re <= s.doubleTapThreshold
1949                    }
1950
1951                    function _() {
1952                        ie = ne = 0
1953                    }
1954
1955                    function T() {
1956                        var e = !1;
1957                        return e = ne && N() - ne <= s.fingerReleaseThreshold ? !0 : e
1958                    }
1959
1960                    function C(e) {
1961                        X && (!0 === e ? (X.on(F, n), X.on(L, i), V && X.on(V, o)) : (X.off(F, n, !1), X.off(L, i, !1), V && X.off(V, o, !1)), X.data(De + "_intouch", !0 === e))
1962                    }
1963
1964                    function E(e, t) {
1965                        var n = {start: {x: 0, y: 0}, last: {x: 0, y: 0}, end: {x: 0, y: 0}};
1966                        return n.start.x = n.last.x = n.end.x = t.pageX || t.clientX, n.start.y = n.last.y = n.end.y = t.pageY || t.clientY, J[e] = n
1967                    }
1968
1969                    function A(e) {
1970                        var t = void 0 !== e.identifier ? e.identifier : 0, n = J[t] || null;
1971                        return (n = null === n ? E(t, e) : n).last.x = n.end.x, n.last.y = n.end.y, n.end.x = e.pageX || e.clientX, n.end.y = e.pageY || e.clientY, n
1972                    }
1973
1974                    function k(e) {
1975                        return K[e] ? K[e].distance : void 0
1976                    }
1977
1978                    function O(e) {
1979                        return {direction: e, distance: 0}
1980                    }
1981
1982                    function I() {
1983                        return te - ee
1984                    }
1985
1986                    function P(e, t) {
1987                        var n = Math.abs(e.x - t.x), t = Math.abs(e.y - t.y);
1988                        return Math.round(Math.sqrt(n * n + t * t))
1989                    }
1990
1991                    function D(e, t) {
1992                        if (i = t, (n = e).x == i.x && n.y == i.y) return he;
1993                        var n, i,
1994                            e = (i = t, e = (t = e).x - i.x, t = i.y - t.y, e = Math.atan2(t, e), e = (e = Math.round(180 * e / Math.PI)) < 0 ? 360 - Math.abs(e) : e);
1995                        return e <= 45 && 0 <= e || e <= 360 && 315 <= e ? le : 135 <= e && e <= 225 ? ce : 45 < e && e < 135 ? fe : ue
1996                    }
1997
1998                    function N() {
1999                        return (new Date).getTime()
2000                    }
2001
2002                    var s = ae.extend({}, s), j = Oe || Pe || !s.fallbackToMouseEvents,
2003                        B = j ? Pe ? Ie ? "MSPointerDown" : "pointerdown" : "touchstart" : "mousedown",
2004                        F = j ? Pe ? Ie ? "MSPointerMove" : "pointermove" : "touchmove" : "mousemove",
2005                        L = j ? Pe ? Ie ? "MSPointerUp" : "pointerup" : "touchend" : "mouseup",
2006                        V = !j || Pe ? "mouseleave" : null,
2007                        M = Pe ? Ie ? "MSPointerCancel" : "pointercancel" : "touchcancel", W = 0, H = null, R = null,
2008                        q = 0, z = 0, U = 0, $ = 1, Q = 0, Y = 0, K = null, X = ae(e), G = "start", Z = 0, J = {},
2009                        ee = 0, te = 0, ne = 0, ie = 0, re = 0, oe = null, se = null;
2010                    try {
2011                        X.on(B, t), X.on(M, r)
2012                    } catch (e) {
2013                        ae.error("events not supported " + B + "," + M + " on jQuery.swipe")
2014                    }
2015                    this.enable = function () {
2016                        return this.disable(), X.on(B, t), X.on(M, r), X
2017                    }, this.disable = function () {
2018                        return a(), X
2019                    }, this.destroy = function () {
2020                        a(), X.data(De, null), X = null
2021                    }, this.option = function (e, t) {
2022                        if ("object" == Ne(e)) s = ae.extend(s, e); else if (void 0 !== s[e]) {
2023                            if (void 0 === t) return s[e];
2024                            s[e] = t
2025                        } else {
2026                            if (!e) return s;
2027                            ae.error("Option " + e + " does not exist on jQuery.swipe.options")
2028                        }
2029                        return null
2030                    }
2031                }
2032
2033                var le = "left", ce = "right", ue = "up", fe = "down", de = "in", pe = "out", he = "none", me = "auto",
2034                    ge = "swipe", ye = "pinch", ve = "tap", be = "doubletap", we = "longtap", Se = "horizontal",
2035                    xe = "vertical", _e = "all", Te = 10, Ce = "start", Ee = "move", Ae = "end", ke = "cancel",
2036                    Oe = "ontouchstart" in window,
2037                    Ie = window.navigator.msPointerEnabled && !window.PointerEvent && !Oe,
2038                    Pe = (window.PointerEvent || window.navigator.msPointerEnabled) && !Oe, De = "TouchSwipe";
2039                ae.fn.swipe = function (e) {
2040                    var t = ae(this), n = t.data(De);
2041                    if (n && "string" == typeof e) {
2042                        if (n[e]) return n[e].apply(n, Array.prototype.slice.call(arguments, 1));
2043                        ae.error("Method " + e + " does not exist on jQuery.swipe")
2044                    } else if (n && "object" == Ne(e)) n.option.apply(n, arguments); else if (!(n || "object" != Ne(e) && e)) return function (n) {
2045                        return !n || void 0 !== n.allowPageScroll || void 0 === n.swipe && void 0 === n.swipeStatus || (n.allowPageScroll = he), void 0 !== n.click && void 0 === n.tap && (n.tap = n.click), n = ae.extend({}, ae.fn.swipe.defaults, n = n || {}), this.each(function () {
2046                            var e = ae(this), t = e.data(De);
2047                            t || (t = new i(this, n), e.data(De, t))
2048                        })
2049                    }.apply(this, arguments);
2050                    return t
2051                }, ae.fn.swipe.version = "1.6.18", ae.fn.swipe.defaults = {
2052                    fingers: 1,
2053                    threshold: 75,
2054                    cancelThreshold: null,
2055                    pinchThreshold: 20,
2056                    maxTimeThreshold: null,
2057                    fingerReleaseThreshold: 250,
2058                    longTapThreshold: 500,
2059                    doubleTapThreshold: 200,
2060                    swipe: null,
2061                    swipeLeft: null,
2062                    swipeRight: null,
2063                    swipeUp: null,
2064                    swipeDown: null,
2065                    swipeStatus: null,
2066                    pinchIn: null,
2067                    pinchOut: null,
2068                    pinchStatus: null,
2069                    click: null,
2070                    tap: null,
2071                    doubleTap: null,
2072                    longTap: null,
2073                    hold: null,
2074                    triggerOnTouchEnd: !0,
2075                    triggerOnTouchLeave: !1,
2076                    allowPageScroll: "auto",
2077                    fallbackToMouseEvents: !0,
2078                    excludedElements: ".noSwipe",
2079                    preventDefaultEvents: !0
2080                }, ae.fn.swipe.phases = {
2081                    PHASE_START: Ce,
2082                    PHASE_MOVE: Ee,
2083                    PHASE_END: Ae,
2084                    PHASE_CANCEL: ke
2085                }, ae.fn.swipe.directions = {
2086                    LEFT: le,
2087                    RIGHT: ce,
2088                    UP: ue,
2089                    DOWN: fe,
2090                    IN: de,
2091                    OUT: pe
2092                }, ae.fn.swipe.pageScroll = {
2093                    NONE: he,
2094                    HORIZONTAL: Se,
2095                    VERTICAL: xe,
2096                    AUTO: me
2097                }, ae.fn.swipe.fingers = {ONE: 1, TWO: 2, THREE: 3, FOUR: 4, FIVE: 5, ALL: _e}
2098            }, n.amdO.jQuery ? (i = [n(609)], void 0 === (r = "function" == typeof (r = o) ? r.apply(t, i) : r) || (e.exports = r)) : o(e.exports ? n(609) : jQuery)
2099        }, 158: function (e, t) {
2100            var n;
2101
2102            function Q(e) {
2103                return (Q = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
2104                    return typeof e
2105                } : function (e) {
2106                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
2107                })(e)
2108            }
2109
2110            void 0 === (n = "function" == typeof (n = function () {
2111                "use strict";
2112                var t = function () {
2113                    function i(e, t) {
2114                        for (var n = 0; n < t.length; n++) {
2115                            var i = t[n];
2116                            i.enumerable = i.enumerable || false;
2117                            i.configurable = true;
2118                            if ("value" in i) i.writable = true;
2119                            Object.defineProperty(e, i.key, i)
2120                        }
2121                    }
2122
2123                    return function (e, t, n) {
2124                        if (t) i(e.prototype, t);
2125                        if (n) i(e, n);
2126                        return e
2127                    }
2128                }();
2129
2130                function i(e, t) {
2131                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
2132                }
2133
2134                var _ = undefined;
2135                if (typeof _ === "undefined") _ = {modules: []};
2136                var r = null;
2137
2138                function s(e) {
2139                    var t = e.getBoundingClientRect();
2140                    var n = {};
2141                    for (var i in t) n[i] = t[i];
2142                    try {
2143                        if (e.ownerDocument !== document) {
2144                            var r = e.ownerDocument.defaultView.frameElement;
2145                            if (r) {
2146                                var o = s(r);
2147                                n.top += o.top;
2148                                n.bottom += o.top;
2149                                n.left += o.left;
2150                                n.right += o.left
2151                            }
2152                        }
2153                    } catch (e) {
2154                    }
2155                    return n
2156                }
2157
2158                function c(e) {
2159                    var t = getComputedStyle(e) || {};
2160                    var n = t.position;
2161                    var i = [];
2162                    if (n === "fixed") return [e];
2163                    var r = e;
2164                    while ((r = r.parentNode) && r && r.nodeType === 1) {
2165                        var o = undefined;
2166                        try {
2167                            o = getComputedStyle(r)
2168                        } catch (e) {
2169                        }
2170                        if (typeof o === "undefined" || o === null) {
2171                            i.push(r);
2172                            return i
2173                        }
2174                        var s = o;
2175                        var a = s.overflow;
2176                        var l = s.overflowX;
2177                        var c = s.overflowY;
2178                        if (/(auto|scroll|overlay)/.test(a + c + l)) if (n !== "absolute" || ["relative", "absolute", "fixed"].indexOf(o.position) >= 0) i.push(r)
2179                    }
2180                    i.push(e.ownerDocument.body);
2181                    if (e.ownerDocument !== document) i.push(e.ownerDocument.defaultView);
2182                    return i
2183                }
2184
2185                var o = function () {
2186                    var e = 0;
2187                    return function () {
2188                        return ++e
2189                    }
2190                }(), a = {}, l = function e() {
2191                    var t = r;
2192                    if (!t || !document.body.contains(t)) {
2193                        t = document.createElement("div");
2194                        t.setAttribute("data-tether-id", o());
2195                        x(t.style, {top: 0, left: 0, position: "absolute"});
2196                        document.body.appendChild(t);
2197                        r = t
2198                    }
2199                    var n = t.getAttribute("data-tether-id");
2200                    if (typeof a[n] === "undefined") {
2201                        a[n] = s(t);
2202                        k(function () {
2203                            delete a[n]
2204                        })
2205                    }
2206                    return a[n]
2207                };
2208
2209                function u() {
2210                    if (r) document.body.removeChild(r);
2211                    r = null
2212                }
2213
2214                function T(e) {
2215                    var t = undefined;
2216                    if (e === document) {
2217                        t = document;
2218                        e = document.documentElement
2219                    } else t = e.ownerDocument;
2220                    var n = t.documentElement;
2221                    var i = s(e);
2222                    var r = l();
2223                    i.top -= r.top;
2224                    i.left -= r.left;
2225                    if (typeof i.width === "undefined") i.width = document.body.scrollWidth - i.left - i.right;
2226                    if (typeof i.height === "undefined") i.height = document.body.scrollHeight - i.top - i.bottom;
2227                    i.top = i.top - n.clientTop;
2228                    i.left = i.left - n.clientLeft;
2229                    i.right = t.body.clientWidth - i.width - i.left;
2230                    i.bottom = t.body.clientHeight - i.height - i.top;
2231                    return i
2232                }
2233
2234                function C(e) {
2235                    return e.offsetParent || document.documentElement
2236                }
2237
2238                var f = null;
2239
2240                function E() {
2241                    if (f) return f;
2242                    var e = document.createElement("div");
2243                    e.style.width = "100%";
2244                    e.style.height = "200px";
2245                    var t = document.createElement("div");
2246                    x(t.style, {
2247                        position: "absolute",
2248                        top: 0,
2249                        left: 0,
2250                        pointerEvents: "none",
2251                        visibility: "hidden",
2252                        width: "200px",
2253                        height: "150px",
2254                        overflow: "hidden"
2255                    });
2256                    t.appendChild(e);
2257                    document.body.appendChild(t);
2258                    var n = e.offsetWidth;
2259                    t.style.overflow = "scroll";
2260                    var i = e.offsetWidth;
2261                    if (n === i) i = t.clientWidth;
2262                    document.body.removeChild(t);
2263                    var r = n - i;
2264                    f = {width: r, height: r};
2265                    return f
2266                }
2267
2268                function x() {
2269                    var n = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
2270                    var e = [];
2271                    Array.prototype.push.apply(e, arguments);
2272                    e.slice(1).forEach(function (e) {
2273                        if (e) for (var t in e) if ({}.hasOwnProperty.call(e, t)) n[t] = e[t]
2274                    });
2275                    return n
2276                }
2277
2278                function d(t, e) {
2279                    if (typeof t.classList !== "undefined") e.split(" ").forEach(function (e) {
2280                        if (e.trim()) t.classList.remove(e)
2281                    }); else {
2282                        var n = new RegExp("(^| )" + e.split(" ").join("|") + "( |$)", "gi");
2283                        var i = m(t).replace(n, " ");
2284                        g(t, i)
2285                    }
2286                }
2287
2288                function p(t, e) {
2289                    if (typeof t.classList !== "undefined") e.split(" ").forEach(function (e) {
2290                        if (e.trim()) t.classList.add(e)
2291                    }); else {
2292                        d(t, e);
2293                        var n = m(t) + (" " + e);
2294                        g(t, n)
2295                    }
2296                }
2297
2298                function h(e, t) {
2299                    if (typeof e.classList !== "undefined") return e.classList.contains(t);
2300                    var n = m(e);
2301                    return new RegExp("(^| )" + t + "( |$)", "gi").test(n)
2302                }
2303
2304                function m(e) {
2305                    if (e.className instanceof e.ownerDocument.defaultView.SVGAnimatedString) return e.className.baseVal;
2306                    return e.className
2307                }
2308
2309                function g(e, t) {
2310                    e.setAttribute("class", t)
2311                }
2312
2313                function A(t, n, e) {
2314                    e.forEach(function (e) {
2315                        if (n.indexOf(e) === -1 && h(t, e)) d(t, e)
2316                    });
2317                    n.forEach(function (e) {
2318                        if (!h(t, e)) p(t, e)
2319                    })
2320                }
2321
2322                var n = [], k = function e(t) {
2323                    n.push(t)
2324                }, O = function e() {
2325                    var t = undefined;
2326                    while (t = n.pop()) t()
2327                }, e = function () {
2328                    function e() {
2329                        i(this, e)
2330                    }
2331
2332                    t(e, [{
2333                        key: "on", value: function e(t, n, i) {
2334                            var r = arguments.length <= 3 || arguments[3] === undefined ? false : arguments[3];
2335                            if (typeof this.bindings === "undefined") this.bindings = {};
2336                            if (typeof this.bindings[t] === "undefined") this.bindings[t] = [];
2337                            this.bindings[t].push({handler: n, ctx: i, once: r})
2338                        }
2339                    }, {
2340                        key: "once", value: function e(t, n, i) {
2341                            this.on(t, n, i, true)
2342                        }
2343                    }, {
2344                        key: "off", value: function e(t, n) {
2345                            if (typeof this.bindings === "undefined" || typeof this.bindings[t] === "undefined") return;
2346                            if (typeof n === "undefined") delete this.bindings[t]; else {
2347                                var i = 0;
2348                                while (i < this.bindings[t].length) if (this.bindings[t][i].handler === n) this.bindings[t].splice(i, 1); else ++i
2349                            }
2350                        }
2351                    }, {
2352                        key: "trigger", value: function e(t) {
2353                            if (typeof this.bindings !== "undefined" && this.bindings[t]) {
2354                                var n = 0;
2355                                for (var i = arguments.length, r = Array(i > 1 ? i - 1 : 0), o = 1; o < i; o++) r[o - 1] = arguments[o];
2356                                while (n < this.bindings[t].length) {
2357                                    var s = this.bindings[t][n];
2358                                    var a = s.handler;
2359                                    var l = s.ctx;
2360                                    var c = s.once;
2361                                    var u = l;
2362                                    if (typeof u === "undefined") u = this;
2363                                    a.apply(u, r);
2364                                    if (c) this.bindings[t].splice(n, 1); else ++n
2365                                }
2366                            }
2367                        }
2368                    }]);
2369                    return e
2370                }();
2371                _.Utils = {
2372                    getActualBoundingClientRect: s,
2373                    getScrollParents: c,
2374                    getBounds: T,
2375                    getOffsetParent: C,
2376                    extend: x,
2377                    addClass: p,
2378                    removeClass: d,
2379                    hasClass: h,
2380                    updateClasses: A,
2381                    defer: k,
2382                    flush: O,
2383                    uniqueId: o,
2384                    Evented: e,
2385                    getScrollBarSize: E,
2386                    removeUtilElements: u
2387                };
2388                var I = function () {
2389                    function n(e, t) {
2390                        var n = [];
2391                        var i = true;
2392                        var r = false;
2393                        var o = undefined;
2394                        try {
2395                            for (var s = e[Symbol.iterator](), a; !(i = (a = s.next()).done); i = true) {
2396                                n.push(a.value);
2397                                if (t && n.length === t) break
2398                            }
2399                        } catch (e) {
2400                            r = true;
2401                            o = e
2402                        } finally {
2403                            try {
2404                                if (!i && s["return"]) s["return"]()
2405                            } finally {
2406                                if (r) throw o
2407                            }
2408                        }
2409                        return n
2410                    }
2411
2412                    return function (e, t) {
2413                        if (Array.isArray(e)) return e; else if (Symbol.iterator in Object(e)) return n(e, t); else throw new TypeError("Invalid attempt to destructure non-iterable instance")
2414                    }
2415                }(), t = function () {
2416                    function i(e, t) {
2417                        for (var n = 0; n < t.length; n++) {
2418                            var i = t[n];
2419                            i.enumerable = i.enumerable || false;
2420                            i.configurable = true;
2421                            if ("value" in i) i.writable = true;
2422                            Object.defineProperty(e, i.key, i)
2423                        }
2424                    }
2425
2426                    return function (e, t, n) {
2427                        if (t) i(e.prototype, t);
2428                        if (n) i(e, n);
2429                        return e
2430                    }
2431                }(), y = function e(t, n, i) {
2432                    var r = true;
2433                    e:while (r) {
2434                        var o = t, s = n, a = i;
2435                        r = false;
2436                        if (o === null) o = Function.prototype;
2437                        var l = Object.getOwnPropertyDescriptor(o, s);
2438                        if (l === undefined) {
2439                            var c = Object.getPrototypeOf(o);
2440                            if (c === null) return undefined; else {
2441                                t = c;
2442                                n = s;
2443                                i = a;
2444                                r = true;
2445                                l = c = undefined;
2446                                continue e
2447                            }
2448                        } else if ("value" in l) return l.value; else {
2449                            var u = l.get;
2450                            if (u === undefined) return undefined;
2451                            return u.call(a)
2452                        }
2453                    }
2454                };
2455
2456                function i(e, t) {
2457                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
2458                }
2459
2460                function v(e, t) {
2461                    if (typeof t !== "function" && t !== null) throw new TypeError("Super expression must either be null or a function, not " + Q(t));
2462                    e.prototype = Object.create(t && t.prototype, {
2463                        constructor: {
2464                            value: e,
2465                            enumerable: false,
2466                            writable: true,
2467                            configurable: true
2468                        }
2469                    });
2470                    if (t) Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t
2471                }
2472
2473                if (typeof _ === "undefined") throw new Error("You must include the utils.js file before tether.js");
2474                var b = _.Utils, c = b.getScrollParents, T = b.getBounds, C = b.getOffsetParent, x = b.extend,
2475                    p = b.addClass, d = b.removeClass, A = b.updateClasses, k = b.defer, O = b.flush,
2476                    E = b.getScrollBarSize, u = b.removeUtilElements;
2477
2478                function w(e, t) {
2479                    var n = arguments.length <= 2 || arguments[2] === undefined ? 1 : arguments[2];
2480                    return e + n >= t && t >= e - n
2481                }
2482
2483                var S = function () {
2484                    if (typeof document === "undefined") return "";
2485                    var e = document.createElement("div");
2486                    var t = ["transform", "WebkitTransform", "OTransform", "MozTransform", "msTransform"];
2487                    for (var n = 0; n < t.length; ++n) {
2488                        var i = t[n];
2489                        if (e.style[i] !== undefined) return i
2490                    }
2491                }(), P = [], D = function e() {
2492                    P.forEach(function (e) {
2493                        e.position(false)
2494                    });
2495                    O()
2496                };
2497
2498                function N() {
2499                    if ((typeof performance === "undefined" ? "undefined" : Q(performance)) === "object" && typeof performance.now === "function") return performance.now();
2500                    return +new Date
2501                }
2502
2503                (function () {
2504                    var t = null;
2505                    var n = null;
2506                    var i = null;
2507                    var r = function e() {
2508                        if (typeof n !== "undefined" && n > 16) {
2509                            n = Math.min(n - 16, 250);
2510                            i = setTimeout(e, 250);
2511                            return
2512                        }
2513                        if (typeof t !== "undefined" && N() - t < 10) return;
2514                        if (i != null) {
2515                            clearTimeout(i);
2516                            i = null
2517                        }
2518                        t = N();
2519                        D();
2520                        n = N() - t
2521                    };
2522                    if (typeof window !== "undefined" && typeof window.addEventListener !== "undefined") ["resize", "scroll", "touchmove"].forEach(function (e) {
2523                        window.addEventListener(e, r)
2524                    })
2525                })();
2526                var j = {center: "center", left: "right", right: "left"},
2527                    B = {middle: "middle", top: "bottom", bottom: "top"},
2528                    F = {top: 0, left: 0, middle: "50%", center: "50%", bottom: "100%", right: "100%"},
2529                    L = function e(t, n) {
2530                        var i = t.left;
2531                        var r = t.top;
2532                        if (i === "auto") i = j[n.left];
2533                        if (r === "auto") r = B[n.top];
2534                        return {left: i, top: r}
2535                    }, V = function e(t) {
2536                        var n = t.left;
2537                        var i = t.top;
2538                        if (typeof F[t.left] !== "undefined") n = F[t.left];
2539                        if (typeof F[t.top] !== "undefined") i = F[t.top];
2540                        return {left: n, top: i}
2541                    };
2542
2543                function M() {
2544                    var i = {top: 0, left: 0};
2545                    for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];
2546                    t.forEach(function (e) {
2547                        var t = e.top;
2548                        var n = e.left;
2549                        if (typeof t === "string") t = parseFloat(t, 10);
2550                        if (typeof n === "string") n = parseFloat(n, 10);
2551                        i.top += t;
2552                        i.left += n
2553                    });
2554                    return i
2555                }
2556
2557                function W(e, t) {
2558                    if (typeof e.left === "string" && e.left.indexOf("%") !== -1) e.left = parseFloat(e.left, 10) / 100 * t.width;
2559                    if (typeof e.top === "string" && e.top.indexOf("%") !== -1) e.top = parseFloat(e.top, 10) / 100 * t.height;
2560                    return e
2561                }
2562
2563                var H = function e(t) {
2564                    var n = t.split(" ");
2565                    var i = I(n, 2);
2566                    var r = i[0];
2567                    var o = i[1];
2568                    return {top: r, left: o}
2569                }, R = H, q = function (e) {
2570                    v(n, e);
2571
2572                    function n(e) {
2573                        var t = this;
2574                        i(this, n);
2575                        y(Object.getPrototypeOf(n.prototype), "constructor", this).call(this);
2576                        this.position = this.position.bind(this);
2577                        P.push(this);
2578                        this.history = [];
2579                        this.setOptions(e, false);
2580                        _.modules.forEach(function (e) {
2581                            if (typeof e.initialize !== "undefined") e.initialize.call(t)
2582                        });
2583                        this.position()
2584                    }
2585
2586                    t(n, [{
2587                        key: "getClass", value: function e() {
2588                            var t = arguments.length <= 0 || arguments[0] === undefined ? "" : arguments[0];
2589                            var n = this.options.classes;
2590                            if (typeof n !== "undefined" && n[t]) return this.options.classes[t]; else if (this.options.classPrefix) return this.options.classPrefix + "-" + t; else return t
2591                        }
2592                    }, {
2593                        key: "setOptions", value: function e(t) {
2594                            var n = this;
2595                            var i = arguments.length <= 1 || arguments[1] === undefined ? true : arguments[1];
2596                            var r = {
2597                                offset: "0 0",
2598                                targetOffset: "0 0",
2599                                targetAttachment: "auto auto",
2600                                classPrefix: "tether"
2601                            };
2602                            this.options = x(r, t);
2603                            var o = this.options;
2604                            var s = o.element;
2605                            var a = o.target;
2606                            var l = o.targetModifier;
2607                            this.element = s;
2608                            this.target = a;
2609                            this.targetModifier = l;
2610                            if (this.target === "viewport") {
2611                                this.target = document.body;
2612                                this.targetModifier = "visible"
2613                            } else if (this.target === "scroll-handle") {
2614                                this.target = document.body;
2615                                this.targetModifier = "scroll-handle"
2616                            }
2617                            ["element", "target"].forEach(function (e) {
2618                                if (typeof n[e] === "undefined") throw new Error("Tether Error: Both element and target must be defined");
2619                                if (typeof n[e].jquery !== "undefined") n[e] = n[e][0]; else if (typeof n[e] === "string") n[e] = document.querySelector(n[e])
2620                            });
2621                            p(this.element, this.getClass("element"));
2622                            if (!(this.options.addTargetClasses === false)) p(this.target, this.getClass("target"));
2623                            if (!this.options.attachment) throw new Error("Tether Error: You must provide an attachment");
2624                            this.targetAttachment = R(this.options.targetAttachment);
2625                            this.attachment = R(this.options.attachment);
2626                            this.offset = H(this.options.offset);
2627                            this.targetOffset = H(this.options.targetOffset);
2628                            if (typeof this.scrollParents !== "undefined") this.disable();
2629                            if (this.targetModifier === "scroll-handle") this.scrollParents = [this.target]; else this.scrollParents = c(this.target);
2630                            if (!(this.options.enabled === false)) this.enable(i)
2631                        }
2632                    }, {
2633                        key: "getTargetBounds", value: function e() {
2634                            if (typeof this.targetModifier !== "undefined") {
2635                                if (this.targetModifier === "visible") if (this.target === document.body) return {
2636                                    top: pageYOffset,
2637                                    left: pageXOffset,
2638                                    height: innerHeight,
2639                                    width: innerWidth
2640                                }; else {
2641                                    var t = T(this.target);
2642                                    var n = {height: t.height, width: t.width, top: t.top, left: t.left};
2643                                    n.height = Math.min(n.height, t.height - (pageYOffset - t.top));
2644                                    n.height = Math.min(n.height, t.height - (t.top + t.height - (pageYOffset + innerHe
2644ight)));
2645                                    n.height = Math.min(innerHeight, n.height);
2646                                    n.height -= 2;
2647                                    n.width = Math.min(n.width, t.width - (pageXOffset - t.left));
2648                                    n.width = Math.min(n.width, t.width - (t.left + t.width - (pageXOffset + innerWidth)));
2649                                    n.width = Math.min(innerWidth, n.width);
2650                                    n.width -= 2;
2651                                    if (n.top < pageYOffset) n.top = pageYOffset;
2652                                    if (n.left < pageXOffset) n.left = pageXOffset;
2653                                    return n
2654                                } else if (this.targetModifier === "scroll-handle") {
2655                                    var t = undefined;
2656                                    var i = this.target;
2657                                    if (i === document.body) {
2658                                        i = document.documentElement;
2659                                        t = {
2660                                            left: pageXOffset,
2661                                            top: pageYOffset,
2662                                            height: innerHeight,
2663                                            width: innerWidth
2664                                        }
2665                                    } else t = T(i);
2666                                    var r = getComputedStyle(i);
2667                                    var o = i.scrollWidth > i.clientWidth || [r.overflow, r.overflowX].indexOf("scroll") >= 0 || this.target !== document.body;
2668                                    var s = 0;
2669                                    if (o) s = 15;
2670                                    var a = t.height - parseFloat(r.borderTopWidth) - parseFloat(r.borderBottomWidth) - s;
2671                                    var n = {
2672                                        width: 15,
2673                                        height: a * .975 * (a / i.scrollHeight),
2674                                        left: t.left + t.width - parseFloat(r.borderLeftWidth) - 15
2675                                    };
2676                                    var l = 0;
2677                                    if (a < 408 && this.target === document.body) l = -11e-5 * Math.pow(a, 2) - .00727 * a + 22.58;
2678                                    if (this.target !== document.body) n.height = Math.max(n.height, 24);
2679                                    var c = this.target.scrollTop / (i.scrollHeight - a);
2680                                    n.top = c * (a - n.height - l) + t.top + parseFloat(r.borderTopWidth);
2681                                    if (this.target === document.body) n.height = Math.max(n.height, 24);
2682                                    return n
2683                                }
2684                            } else return T(this.target)
2685                        }
2686                    }, {
2687                        key: "clearCache", value: function e() {
2688                            this._cache = {}
2689                        }
2690                    }, {
2691                        key: "cache", value: function e(t, n) {
2692                            if (typeof this._cache === "undefined") this._cache = {};
2693                            if (typeof this._cache[t] === "undefined") this._cache[t] = n.call(this);
2694                            return this._cache[t]
2695                        }
2696                    }, {
2697                        key: "enable", value: function e() {
2698                            var t = this;
2699                            var n = arguments.length <= 0 || arguments[0] === undefined ? true : arguments[0];
2700                            if (!(this.options.addTargetClasses === false)) p(this.target, this.getClass("enabled"));
2701                            p(this.element, this.getClass("enabled"));
2702                            this.enabled = true;
2703                            this.scrollParents.forEach(function (e) {
2704                                if (e !== t.target.ownerDocument) e.addEventListener("scroll", t.position)
2705                            });
2706                            if (n) this.position()
2707                        }
2708                    }, {
2709                        key: "disable", value: function e() {
2710                            var t = this;
2711                            d(this.target, this.getClass("enabled"));
2712                            d(this.element, this.getClass("enabled"));
2713                            this.enabled = false;
2714                            if (typeof this.scrollParents !== "undefined") this.scrollParents.forEach(function (e) {
2715                                e.removeEventListener("scroll", t.position)
2716                            })
2717                        }
2718                    }, {
2719                        key: "destroy", value: function e() {
2720                            var n = this;
2721                            this.disable();
2722                            P.forEach(function (e, t) {
2723                                if (e === n) P.splice(t, 1)
2724                            });
2725                            if (P.length === 0) u()
2726                        }
2727                    }, {
2728                        key: "updateAttachClasses", value: function e(t, n) {
2729                            var i = this;
2730                            t = t || this.attachment;
2731                            n = n || this.targetAttachment;
2732                            var r = ["left", "top", "bottom", "right", "middle", "center"];
2733                            if (typeof this._addAttachClasses !== "undefined" && this._addAttachClasses.length) this._addAttachClasses.splice(0, this._addAttachClasses.length);
2734                            if (typeof this._addAttachClasses === "undefined") this._addAttachClasses = [];
2735                            var o = this._addAttachClasses;
2736                            if (t.top) o.push(this.getClass("element-attached") + "-" + t.top);
2737                            if (t.left) o.push(this.getClass("element-attached") + "-" + t.left);
2738                            if (n.top) o.push(this.getClass("target-attached") + "-" + n.top);
2739                            if (n.left) o.push(this.getClass("target-attached") + "-" + n.left);
2740                            var s = [];
2741                            r.forEach(function (e) {
2742                                s.push(i.getClass("element-attached") + "-" + e);
2743                                s.push(i.getClass("target-attached") + "-" + e)
2744                            });
2745                            k(function () {
2746                                if (!(typeof i._addAttachClasses !== "undefined")) return;
2747                                A(i.element, i._addAttachClasses, s);
2748                                if (!(i.options.addTargetClasses === false)) A(i.target, i._addAttachClasses, s);
2749                                delete i._addAttachClasses
2750                            })
2751                        }
2752                    }, {
2753                        key: "position", value: function e() {
2754                            var a = this;
2755                            var t = arguments.length <= 0 || arguments[0] === undefined ? true : arguments[0];
2756                            if (!this.enabled) return;
2757                            this.clearCache();
2758                            var n = L(this.targetAttachment, this.attachment);
2759                            this.updateAttachClasses(this.attachment, n);
2760                            var i = this.cache("element-bounds", function () {
2761                                return T(a.element)
2762                            });
2763                            var r = i.width;
2764                            var o = i.height;
2765                            if (r === 0 && o === 0 && typeof this.lastSize !== "undefined") {
2766                                var s = this.lastSize;
2767                                r = s.width;
2768                                o = s.height
2769                            } else this.lastSize = {width: r, height: o};
2770                            var l = this.cache("target-bounds", function () {
2771                                return a.getTargetBounds()
2772                            });
2773                            var c = l;
2774                            var u = W(V(this.attachment), {width: r, height: o});
2775                            var f = W(V(n), c);
2776                            var d = W(this.offset, {width: r, height: o});
2777                            var p = W(this.targetOffset, c);
2778                            u = M(u, d);
2779                            f = M(f, p);
2780                            var h = l.left + f.left - u.left;
2781                            var m = l.top + f.top - u.top;
2782                            for (var g = 0; g < _.modules.length; ++g) {
2783                                var y = _.modules[g];
2784                                var v = y.position.call(this, {
2785                                    left: h,
2786                                    top: m,
2787                                    targetAttachment: n,
2788                                    targetPos: l,
2789                                    elementPos: i,
2790                                    offset: u,
2791                                    targetOffset: f,
2792                                    manualOffset: d,
2793                                    manualTargetOffset: p,
2794                                    scrollbarSize: x,
2795                                    attachment: this.attachment
2796                                });
2797                                if (v === false) return false; else if (typeof v === "undefined" || Q(v) !== "object") continue; else {
2798                                    m = v.top;
2799                                    h = v.left
2800                                }
2801                            }
2802                            var b = {
2803                                page: {top: m, left: h},
2804                                viewport: {
2805                                    top: m - pageYOffset,
2806                                    bottom: pageYOffset - m - o + innerHe
2806ight,
2807                                    left: h - pageXOffset,
2808                                    right: pageXOffset - h - r + innerWidth
2809                                }
2810                            };
2811                            var w = this.target.ownerDocument;
2812                            var S = w.defaultView;
2813                            var x = undefined;
2814                            if (S.innerHeight > w.documentElement.clientHeight) {
2815                                x = this.cache("scrollbar-size", E);
2816                                b.viewport.bottom -= x.height
2817                            }
2818                            if (S.innerWidth > w.documentElement.clientWidth) {
2819                                x = this.cache("scrollbar-size", E);
2820                                b.viewport.right -= x.width
2821                            }
2822                            if (["", "static"].indexOf(w.body.style.position) === -1 || ["", "static"].indexOf(w.body.parentElement.style.position) === -1) {
2823                                b.page.bottom = w.body.scrollHeight - m - o;
2824                                b.page.right = w.body.scrollWidth - h - r
2825                            }
2826                            if (typeof this.options.optimizations !== "undefined" && this.options.optimizations.moveElement !== false && !(typeof this.targetModifier !== "undefined")) (function () {
2827                                var e = a.cache("target-offsetparent", function () {
2828                                    return C(a.target)
2829                                });
2830                                var t = a.cache("target-offsetparent-bounds", function () {
2831                                    return T(e)
2832                                });
2833                                var n = getComputedStyle(e);
2834                                var i = t;
2835                                var r = {};
2836                                ["Top", "Left", "Bottom", "Right"].forEach(function (e) {
2837                                    r[e.toLowerCase()] = parseFloat(n["border" + e + "Width"])
2838                                });
2839                                t.right = w.body.scrollWidth - t.left - i.width + r.right;
2840                                t.bottom = w.body.scrollHeight - t.top - i.height + r.bottom;
2841                                if (b.page.top >= t.top + r.top && b.page.bottom >= t.bottom) if (b.page.left >= t.left + r.left && b.page.right >= t.right) {
2842                                    var o = e.scrollTop;
2843                                    var s = e.scrollLeft;
2844                                    b.offset = {
2845                                        top: b.page.top - t.top + o - r.top,
2846                                        left: b.page.left - t.left + s - r.left
2847                                    }
2848                                }
2849                            })();
2850                            this.move(b);
2851                            this.history.unshift(b);
2852                            if (this.history.length > 3) this.history.pop();
2853                            if (t) O();
2854                            return true
2855                        }
2856                    }, {
2857                        key: "move", value: function e(t) {
2858                            var a = this;
2859                            if (!(typeof this.element.parentNode !== "undefined")) return;
2860                            var n = {};
2861                            for (var i in t) {
2862                                n[i] = {};
2863                                for (var r in t[i]) {
2864                                    var o = false;
2865                                    for (var s = 0; s < this.history.length; ++s) {
2866                                        var l = this.history[s];
2867                                        if (typeof l[i] !== "undefined" && !w(l[i][r], t[i][r])) {
2868                                            o = true;
2869                                            break
2870                                        }
2871                                    }
2872                                    if (!o) n[i][r] = true
2873                                }
2874                            }
2875                            var c = {top: "", left: "", right: "", bottom: ""};
2876                            var u = function e(t, n) {
2877                                var i = typeof a.options.optimizations !== "undefined";
2878                                var r = i ? a.options.optimizations.gpu : null;
2879                                if (r !== false) {
2880                                    var o = undefined, s = undefined;
2881                                    if (t.top) {
2882                                        c.top = 0;
2883                                        o = n.top
2884                                    } else {
2885                                        c.bottom = 0;
2886                                        o = -n.bottom
2887                                    }
2888                                    if (t.left) {
2889                                        c.left = 0;
2890                                        s = n.left
2891                                    } else {
2892                                        c.right = 0;
2893                                        s = -n.right
2894                                    }
2895                                    if (typeof window.devicePixelRatio === "number" && devicePixelRatio % 1 === 0) {
2896                                        s = Math.round(s * devicePixelRatio) / devicePixelRatio;
2897                                        o = Math.round(o * devicePixelRatio) / devicePixelRatio
2898                                    }
2899                                    c[S] = "translateX(" + s + "px) translateY(" + o + "px)";
2900                                    if (S !== "msTransform") c[S] += " translateZ(0)"
2901                                } else {
2902                                    if (t.top) c.top = n.top + "px"; else c.bottom = n.bottom + "px";
2903                                    if (t.left) c.left = n.left + "px"; else c.right = n.right + "px"
2904                                }
2905                            };
2906                            var f = false;
2907                            if ((n.page.top || n.page.bottom) && (n.page.left || n.page.right)) {
2908                                c.position = "absolute";
2909                                u(n.page, t.page)
2910                            } else if ((n.viewport.top || n.viewport.bottom) && (n.viewport.left || n.viewport.right)) {
2911                                c.position = "fixed";
2912                                u(n.viewport, t.viewport)
2913                            } else if (typeof n.offset !== "undefined" && n.offset.top && n.offset.left) (function () {
2914                                c.position = "absolute";
2915                                var e = a.cache("target-offsetparent", function () {
2916                                    return C(a.target)
2917                                });
2918                                if (C(a.element) !== e) k(function () {
2919                                    a.element.parentNode.removeChild(a.element);
2920                                    e.appendChild(a.element)
2921                                });
2922                                u(n.offset, t.offset);
2923                                f = true
2924                            })(); else {
2925                                c.position = "absolute";
2926                                u({top: true, left: true}, t.page)
2927                            }
2928                            if (!f) if (this.options.bodyElement) {
2929                                if (this.element.parentNode !== this.options.bodyElement) this.options.bodyElement.appendChild(this.element)
2930                            } else {
2931                                var d = function e(t) {
2932                                    var n = t.ownerDocument;
2933                                    var i = n.fullscreenElement || n.webkitFullscreenElement || n.mozFullScreenElement || n.msFullscreenElement;
2934                                    return i === t
2935                                };
2936                                var p = true;
2937                                var h = this.element.parentNode;
2938                                while (h && h.nodeType === 1 && h.tagName !== "BODY" && !d(h)) {
2939                                    if (getComputedStyle(h).position !== "static") {
2940                                        p = false;
2941                                        break
2942                                    }
2943                                    h = h.parentNode
2944                                }
2945                                if (!p) {
2946                                    this.element.parentNode.removeChild(this.element);
2947                                    this.element.ownerDocument.body.appendChild(this.element)
2948                                }
2949                            }
2950                            var m = {};
2951                            var g = false;
2952                            for (var r in c) {
2953                                var y = c[r];
2954                                var v = this.element.style[r];
2955                                if (v !== y) {
2956                                    g = true;
2957                                    m[r] = y
2958                                }
2959                            }
2960                            if (g) k(function () {
2961                                x(a.element.style, m);
2962                                a.trigger("repositioned")
2963                            })
2964                        }
2965                    }]);
2966                    return n
2967                }(e);
2968                q.modules = [], _.position = D;
2969                var z = x(q, _);
2970                "use strict";
2971                var I = function () {
2972                        function n(e, t) {
2973                            var n = [];
2974                            var i = true;
2975                            var r = false;
2976                            var o = undefined;
2977                            try {
2978                                for (var s = e[Symbol.iterator](), a; !(i = (a = s.next()).done); i = true) {
2979                                    n.push(a.value);
2980                                    if (t && n.length === t) break
2981                                }
2982                            } catch (e) {
2983                                r = true;
2984                                o = e
2985                            } finally {
2986                                try {
2987                                    if (!i && s["return"]) s["return"]()
2988                                } finally {
2989                                    if (r) throw o
2990                                }
2991                            }
2992                            return n
2993                        }
2994
2995                        return function (e, t) {
2996                            if (Array.isArray(e)) return e; else if (Symbol.iterator in Object(e)) return n(e, t); else throw new TypeError("Invalid attempt to destructure non-iterable instance")
2997                        }
2998                    }(), b, T = (b = _.Utils).getBounds, x = b.extend, A = b.updateClasses, k = b.defer,
2999                    U = ["left", "top", "right", "bottom"];
3000
3001                function $(e, o) {
3002                    if (o === "scrollParent") o = e.scrollParents[0]; else if (o === "window") o = [pageXOffset, pageYOffset, innerWidth + pageXOffset, innerHeight + pageYOffset];
3003                    if (o === document) o = o.documentElement;
3004                    if (typeof o.nodeType !== "undefined") (function () {
3005                        var e = o;
3006                        var t = T(o);
3007                        var n = t;
3008                        var i = getComputedStyle(o);
3009                        o = [n.left, n.top, t.width + n.left, t.height + n.top];
3010                        if (e.ownerDocument !== document) {
3011                            var r = e.ownerDocument.defaultView;
3012                            o[0] += r.pageXOffset;
3013                            o[1] += r.pageYOffset;
3014                            o[2] += r.pageXOffset;
3015                            o[3] += r.pageYOffset
3016                        }
3017                        U.forEach(function (e, t) {
3018                            e = e[0].toUpperCase() + e.substr(1);
3019                            if (e === "Top" || e === "Left") o[t] += parseFloat(i["border" + e + "Width"]); else o[t] -= parseFloat(i["border" + e + "Width"])
3020                        })
3021                    })();
3022                    return o
3023                }
3024
3025                _.modules.push({
3026                    position: function e(t) {
3027                        var f = this;
3028                        var d = t.top;
3029                        var p = t.left;
3030                        var h = t.targetAttachment;
3031                        if (!this.options.constraints) return true;
3032                        var n = this.cache("element-bounds", function () {
3033                            return T(f.element)
3034                        });
3035                        var m = n.height;
3036                        var g = n.width;
3037                        if (g === 0 && m === 0 && typeof this.lastSize !== "undefined") {
3038                            var i = this.lastSize;
3039                            g = i.width;
3040                            m = i.height
3041                        }
3042                        var r = this.cache("target-bounds", function () {
3043                            return f.getTargetBounds()
3044                        });
3045                        var y = r.height;
3046                        var v = r.width;
3047                        var o = [this.getClass("pinned"), this.getClass("out-of-bounds")];
3048                        this.options.constraints.forEach(function (e) {
3049                            var t = e.outOfBoundsClass;
3050                            var n = e.pinnedClass;
3051                            if (t) o.push(t);
3052                            if (n) o.push(n)
3053                        });
3054                        o.forEach(function (t) {
3055                            ["left", "top", "right", "bottom"].forEach(function (e) {
3056                                o.push(t + "-" + e)
3057                            })
3058                        });
3059                        var b = [];
3060                        var w = x({}, h);
3061                        var S = x({}, this.attachment);
3062                        this.options.constraints.forEach(function (e) {
3063                            var t = e.to;
3064                            var n = e.attachment;
3065                            var i = e.pin;
3066                            if (typeof n === "undefined") n = "";
3067                            var r = undefined, o = undefined;
3068                            if (n.indexOf(" ") >= 0) {
3069                                var s = n.split(" ");
3070                                var a = I(s, 2);
3071                                o = a[0];
3072                                r = a[1]
3073                            } else r = o = n;
3074                            var l = $(f, t);
3075                            if (o === "target" || o === "both") {
3076                                if (d < l[1] && w.top === "top") {
3077                                    d += y;
3078                                    w.top = "bottom"
3079                                }
3080                                if (d + m > l[3] && w.top === "bottom") {
3081                                    d -= y;
3082                                    w.top = "top"
3083                                }
3084                            }
3085                            if (o === "together") {
3086                                if (w.top === "top") if (S.top === "bottom" && d < l[1]) {
3087                                    d += y;
3088                                    w.top = "bottom";
3089                                    d += m;
3090                                    S.top = "top"
3091                                } else if (S.top === "top" && d + m > l[3] && d - (m - y) >= l[1]) {
3092                                    d -= m - y;
3093                                    w.top = "bottom";
3094                                    S.top = "bottom"
3095                                }
3096                                if (w.top === "bottom") if (S.top === "top" && d + m > l[3]) {
3097                                    d -= y;
3098                                    w.top = "top";
3099                                    d -= m;
3100                                    S.top = "bottom"
3101                                } else if (S.top === "bottom" && d < l[1] && d + (m * 2 - y) <= l[3]) {
3102                                    d += m - y;
3103                                    w.top = "top";
3104                                    S.top = "top"
3105                                }
3106                                if (w.top === "middle") if (d + m > l[3] && S.top === "top") {
3107                                    d -= m;
3108                                    S.top = "bottom"
3109                                } else if (d < l[1] && S.top === "bottom") {
3110                                    d += m;
3111                                    S.top = "top"
3112                                }
3113                            }
3114                            if (r === "target" || r === "both") {
3115                                if (p < l[0] && w.left === "left") {
3116                                    p += v;
3117                                    w.left = "right"
3118                                }
3119                                if (p + g > l[2] && w.left === "right") {
3120                                    p -= v;
3121                                    w.left = "left"
3122                                }
3123                            }
3124                            if (r === "together") if (p < l[0] && w.left === "left") {
3125                                if (S.left === "right") {
3126                                    p += v;
3127                                    w.left = "right";
3128                                    p += g;
3129                                    S.left = "left"
3130                                } else if (S.left === "left") {
3131                                    p += v;
3132                                    w.left = "right";
3133                                    p -= g;
3134                                    S.left = "right"
3135                                }
3136                            } else if (p + g > l[2] && w.left === "right") {
3137                                if (S.left === "left") {
3138                                    p -= v;
3139                                    w.left = "left";
3140                                    p -= g;
3141                                    S.left = "right"
3142                                } else if (S.left === "right") {
3143                                    p -= v;
3144                                    w.left = "left";
3145                                    p += g;
3146                                    S.left = "left"
3147                                }
3148                            } else if (w.left === "center") if (p + g > l[2] && S.left === "left") {
3149                                p -= g;
3150                                S.left = "right"
3151                            } else if (p < l[0] && S.left === "right") {
3152                                p += g;
3153                                S.left = "left"
3154                            }
3155                            if (o === "element" || o === "both") {
3156                                if (d < l[1] && S.top === "bottom") {
3157                                    d += m;
3158                                    S.top = "top"
3159                                }
3160                                if (d + m > l[3] && S.top === "top") {
3161                                    d -= m;
3162                                    S.top = "bottom"
3163                                }
3164                            }
3165                            if (r === "element" || r === "both") {
3166                                if (p < l[0]) if (S.left === "right") {
3167                                    p += g;
3168                                    S.left = "left"
3169                                } else if (S.left === "center") {
3170                                    p += g / 2;
3171                                    S.left = "left"
3172                                }
3173                                if (p + g > l[2]) if (S.left === "left") {
3174                                    p -= g;
3175                                    S.left = "right"
3176                                } else if (S.left === "center") {
3177                                    p -= g / 2;
3178                                    S.left = "right"
3179                                }
3180                            }
3181                            if (typeof i === "string") i = i.split(",").map(function (e) {
3182                                return e.trim()
3183                            }); else if (i === true) i = ["top", "left", "right", "bottom"];
3184                            i = i || [];
3185                            var c = [];
3186                            var u = [];
3187                            if (d < l[1]) if (i.indexOf("top") >= 0) {
3188                                d = l[1];
3189                                c.push("top")
3190                            } else u.push("top");
3191                            if (d + m > l[3]) if (i.indexOf("bottom") >= 0) {
3192                                d = l[3] - m;
3193                                c.push("bottom")
3194                            } else u.push("bottom");
3195                            if (p < l[0]) if (i.indexOf("left") >= 0) {
3196                                p = l[0];
3197                                c.push("left")
3198                            } else u.push("left");
3199                            if (p + g > l[2]) if (i.indexOf("right") >= 0) {
3200                                p = l[2] - g;
3201                                c.push("right")
3202                            } else u.push("right");
3203                            if (c.length) (function () {
3204                                var t = undefined;
3205                                if (typeof f.options.pinnedClass !== "undefined") t = f.options.pinnedClass; else t = f.getClass("pinned");
3206                                b.push(t);
3207                                c.forEach(function (e) {
3208                                    b.push(t + "-" + e)
3209                                })
3210                            })();
3211                            if (u.length) (function () {
3212                                var t = undefined;
3213                                if (typeof f.options.outOfBoundsClass !== "undefined") t = f.options.outOfBoundsClass; else t = f.getClass("out-of-bounds");
3214                                b.push(t);
3215                                u.forEach(function (e) {
3216                                    b.push(t + "-" + e)
3217                                })
3218                            })();
3219                            if (c.indexOf("left") >= 0 || c.indexOf("right") >= 0) S.left = w.left = false;
3220                            if (c.indexOf("top") >= 0 || c.indexOf("bottom") >= 0) S.top = w.top = false;
3221                            if (w.top !== h.top || w.left !== h.left || S.top !== f.attachment.top || S.left !== f.attachment.left) {
3222                                f.updateAttachClasses(S, w);
3223                                f.trigger("update", {attachment: S, targetAttachment: w})
3224                            }
3225                        });
3226                        k(function () {
3227                            if (!(f.options.addTargetClasses === false)) A(f.target, b, o);
3228                            A(f.element, b, o)
3229                        });
3230                        return {top: d, left: p}
3231                    }
3232                });
3233                var b, T = (b = _.Utils).getBounds, A = b.updateClasses, k = b.defer;
3234                _.modules.push({
3235                    position: function e(t) {
3236                        var n = this;
3237                        var i = t.top;
3238                        var r = t.left;
3239                        var o = this.cache("element-bounds", function () {
3240                            return T(n.element)
3241                        });
3242                        var s = o.height;
3243                        var a = o.width;
3244                        var l = this.getTargetBounds();
3245                        var c = i + s;
3246                        var u = r + a;
3247                        var f = [];
3248                        if (i <= l.bottom && c >= l.top) ["left", "right"].forEach(function (e) {
3249                            var t = l[e];
3250                            if (t === r || t === u) f.push(e)
3251                        });
3252                        if (r <= l.right && u >= l.left) ["top", "bottom"].forEach(function (e) {
3253                            var t = l[e];
3254                            if (t === i || t === c) f.push(e)
3255                        });
3256                        var d = [];
3257                        var p = [];
3258                        var h = ["left", "top", "right", "bottom"];
3259                        d.push(this.getClass("abutted"));
3260                        h.forEach(function (e) {
3261                            d.push(n.getClass("abutted") + "-" + e)
3262                        });
3263                        if (f.length) p.push(this.getClass("abutted"));
3264                        f.forEach(function (e) {
3265                            p.push(n.getClass("abutted") + "-" + e)
3266                        });
3267                        k(function () {
3268                            if (!(n.options.addTargetClasses === false)) A(n.target, p, d);
3269                            A(n.element, p, d)
3270                        });
3271                        return true
3272                    }
3273                });
3274                var I = function () {
3275                    function n(e, t) {
3276                        var n = [];
3277                        var i = true;
3278                        var r = false;
3279                        var o = undefined;
3280                        try {
3281                            for (var s = e[Symbol.iterator](), a; !(i = (a = s.next()).done); i = true) {
3282                                n.push(a.value);
3283                                if (t && n.length === t) break
3284                            }
3285                        } catch (e) {
3286                            r = true;
3287                            o = e
3288                        } finally {
3289                            try {
3290                                if (!i && s["return"]) s["return"]()
3291                            } finally {
3292                                if (r) throw o
3293                            }
3294                        }
3295                        return n
3296                    }
3297
3298                    return function (e, t) {
3299                        if (Array.isArray(e)) return e; else if (Symbol.iterator in Object(e)) return n(e, t);
3299 else throw new TypeError("Invalid attempt to destructure non-iterable instance")
3300                    }
3301                }();
3302                return _.modules.push({
3303                    position: function e(t) {
3304                        var n = t.top;
3305                        var i = t.left;
3306                        if (!this.options.shift) return;
3307                        var r = this.options.shift;
3308                        if (typeof this.options.shift === "function") r = this.options.shift.call(this, {
3309                            top: n,
3310                            left: i
3311                        });
3312                        var o = undefined, s = undefined;
3313                        if (typeof r === "string") {
3314                            r = r.split(" ");
3315                            r[1] = r[1] || r[0];
3316                            var a = r;
3317                            var l = I(a, 2);
3318                            o = l[0];
3319                            s = l[1];
3320                            o = parseFloat(o, 10);
3321                            s = parseFloat(s, 10)
3322                        } else {
3323                            o = r.top;
3324                            s = r.left
3325                        }
3326                        n += o;
3327                        i += s;
3328                        return {top: n, left: i}
3329                    }
3330                }), z
3331            }) ? n.apply(t, []) : n) || (e.exports = n)
3332        }, 225: function (t, n, i) {
3333            var r;
3334
3335            function u(e) {
3336                return (u = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
3337                    return typeof e
3338                } : function (e) {
3339                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
3340                })(e)
3341            }
3342
3343            t = i.nmd(t), function (t) {
3344                "use strict";
3345                if (!t.jQuery) {
3346                    var c = function e(t, n) {
3347                        return new e.fn.init(t, n)
3348                    };
3349                    c.isWindow = function (e) {
3350                        return e && e === e.window
3351                    }, c.type = function (e) {
3352                        return e ? "object" === u(e) || "function" == typeof e ? n[o.call(e)] || "object" : u(e) : e + ""
3353                    }, c.isArray = Array.isArray || function (e) {
3354                        return "array" === c.type(e)
3355                    }, c.isPlainObject = function (e) {
3356                        if (!e || "object" !== c.type(e) || e.nodeType || c.isWindow(e)) return !1;
3357                        try {
3358                            if (e.constructor && !i.call(e, "constructor") && !i.call(e.constructor.prototype, "isPrototypeOf")) return !1
3359                        } catch (e) {
3360                            return !1
3361                        }
3362                        for (var t in e) ;
3363                        return void 0 === t || i.call(e, t)
3364                    }, c.each = function (e, t, n) {
3365                        var i = 0, r = e.length, o = a(e);
3366                        if (n) {
3367                            if (o) for (; i < r && !1 !== t.apply(e[i], n); i++) ; else for (i in e) if (e.hasOwnProperty(i) && !1 === t.apply(e[i], n)) break
3368                        } else if (o) for (; i < r && !1 !== t.call(e[i], i, e[i]); i++) ; else for (i in e) if (e.hasOwnProperty(i) && !1 === t.call(e[i], i, e[i])) break;
3369                        return e
3370                    }, c.data = function (e, t, n) {
3371                        if (void 0 === n) {
3372                            var i = e[c.expando], i = i && r[i];
3373                            return void 0 === t ? i : i && t in i ? i[t] : void 0
3374                        }
3375                        if (void 0 !== t) {
3376                            e = e[c.expando] || (e[c.expando] = ++c.uuid);
3377                            return r[e] = r[e] || {}, r[e][t] = n
3378                        }
3379                    }, c.removeData = function (e, t) {
3380                        var e = e[c.expando], n = e && r[e];
3381                        n && (t ? c.each(t, function (e, t) {
3382                            delete n[t]
3383                        }) : delete r[e])
3384                    }, c.extend = function () {
3385                        var e, t, n, i, r, o = arguments[0] || {}, s = 1, a = arguments.length, l = !1;
3386                        for ("boolean" == typeof o && (l = o, o = arguments[s] || {}, s++), "object" !== u(o) && "function" !== c.type(o) && (o = {}), s === a && (o = this, s--); s < a; s++) if (i = arguments[s]) for (n in i) i.hasOwnProperty(n) && (r = o[n], o !== (t = i[n]) && (l && t && (c.isPlainObject(t) || (e = c.isArray(t))) ? (r = e ? (e = !1, r && c.isArray(r) ? r : []) : r && c.isPlainObject(r) ? r : {}, o[n] = c.extend(l, r, t)) : void 0 !== t && (o[n] = t)));
3387                        return o
3388                    }, c.queue = function (e, t, n) {
3389                        function i(e, t) {
3390                            t = t || [];
3391                            return e && (a(Object(e)) ? function (e, t) {
3392                                for (var n = +t.length, i = 0, r = e.length; i < n;) e[r++] = t[i++];
3393                                if (n != n) for (; void 0 !== t[i];) e[r++] = t[i++];
3394                                e.length = r
3395                            }(t, "string" == typeof e ? [e] : e) : [].push.call(t, e)), t
3396                        }
3397
3398                        if (e) {
3399                            var r = c.data(e, t = (t || "fx") + "queue");
3400                            return n ? (!r || c.isArray(n) ? r = c.data(e, t, i(n)) : r.push(n), r) : r || []
3401                        }
3402                    }, c.dequeue = function (e, r) {
3403                        c.each(e.nodeType ? [e] : e, function (e, t) {
3404                            r = r || "fx";
3405                            var n = c.queue(t, r), i = n.shift();
3406                            (i = "inprogress" === i ? n.shift() : i) && ("fx" === r && n.unshift("inprogress"), i.call(t, function () {
3407                                c.dequeue(t, r)
3408                            }))
3409                        })
3410                    }, c.fn = c.prototype = {
3411                        init: function (e) {
3412                            if (e.nodeType) return this[0] = e, this;
3413                            throw new Error("Not a DOM node.")
3414                        }, offset: function () {
3415                            var e = this[0].getBoundingClientRect ? this[0].getBoundingClientRect() : {top: 0, left: 0};
3416                            return {
3417                                top: e.top + (t.pageYOffset || document.scrollTop || 0) - (document.clientTop || 0),
3418                                left: e.left + (t.pageXOffset || document.scrollLeft || 0) - (document.clientLeft || 0)
3419                            }
3420                        }, position: function () {
3421                            var e = this[0], t = function (e) {
3422                                    for (var t = e.offsetParent; t && "html" !== t.nodeName.toLowerCase() && t.style && "static" === t.style.position;) t = t.offsetParent;
3423                                    return t || document
3424                                }(e), n = this.offset(),
3425                                i = /^(?:body|html)$/i.test(t.no
3425deName) ? {top: 0, left: 0} : c(t).offset();
3426                            return n.top -= parseFloat(e.style.marginTop) || 0, n.left -= parseFloat(e.style.marginLeft) || 0, t.style && (i.top += parseFloat(t.style.borderTopWidth) || 0, i.left += parseFloat(t.style.borderLeftWidth) || 0), {
3427                                top: n.top - i.top,
3428                                left: n.left - i.left
3429                            }
3430                        }
3431                    };
3432                    var r = {};
3433                    c.expando = "velocity" + (new Date).getTime(), c.uuid = 0;
3434                    for (var n = {}, i = n.hasOwnProperty, o = n.toString, e = "Boolean Number String Function Array Date RegExp Object Error".split(" "), s = 0; s < e.length; s++) n["[object " + e[s] + "]"] = e[s].toLowerCase();
3435                    c.fn.init.prototype = c.fn, t.Velocity = {Utilities: c}
3436                }
3437
3438                function a(e) {
3439                    var t = e.length, n = c.type(e);
3440                    return "function" !== n && !c.isWindow(e) && (!(1 !== e.nodeType || !t) || ("array" === n || 0 === t || "number" == typeof t && 0 < t && t - 1 in e))
3441                }
3442            }(window), function (e) {
3443                "use strict";
3444                "object" === u(t) && "object" === u(t.exports) ? t.exports = e() : void 0 === (r = "function" == typeof (r = e) ? r.call(n, i, n, t) : r) || (t.exports = r)
3445            }(function () {
3446                "use strict";
3447                return function (e, H, R, q) {
3448                    var i, t, T = function () {
3449                            if (R.documentMode) return R.documentMode;
3450                            for (var e = 7; 4 < e; e--) {
3451                                var t = R.createElement("div");
3452                                if (t.innerHTML = "\x3c!--[if IE " + e + "]><span></span><![endif]--\x3e", t.getElementsByTagName("span").length) return t = null, e
3453                            }
3454                            return q
3455                        }(), n = (i = 0, H.webkitRequestAnimationFrame || H.mozRequestAnimationFrame || function (e) {
3456                            var t = (new Date).getTime(), n = Math.max(0, 16 - (t - i));
3457                            return i = t + n, setTimeout(function () {
3458                                e(t + n)
3459                            }, n)
3460                        }),
3461                        C = ("function" != typeof (l = H.performance || {}).now && (t = l.timing && l.timing.navigationStart ? l.timing.navigationStart : (new Date).getTime(), l.now = function () {
3462                            return (new Date).getTime() - t
3463                        }), l);
3464
3465                    function z() {
3466                        return Array.prototype.includes ? function (e, t) {
3467                            return e.includes(t)
3468                        } : Array.prototype.indexOf ? function (e, t) {
3469                            return 0 <= e.indexOf(t)
3470                        } : function (e, t) {
3471                            for (var n = 0; n < e.length; n++) if (e[n] === t) return !0;
3472                            return !1
3473                        }
3474                    }
3475
3476                    var r = function () {
3477                        var a = Array.prototype.slice;
3478                        try {
3479                            return a.call(R.documentElement), a
3480                        } catch (e) {
3481                            return function (e, t) {
3482                                var n = this.length;
3483                                if ("number" != typeof e && (e = 0), "number" != typeof t && (t = n), this.slice) return a.call(this, e, t);
3484                                var i, r = [], o = 0 <= e ? e : Math.max(0, n + e),
3485                                    s = (t < 0 ? n + t : Math.min(t, n)) - o;
3486                                if (0 < s) if (r = new Array(s), this.charAt) for (i = 0; i < s; i++) r[i] = this.charAt(o + i); else for (i = 0; i < s; i++) r[i] = this[o + i];
3487                                return r
3488                            }
3489                        }
3490                    }();
3491
3492                    function y(e) {
3493                        return $.isWrapped(e) ? e = r.call(e) : $.isNode(e) && (e = [e]), e
3494                    }
3495
3496                    var U, $ = {
3497                        isNumber: function (e) {
3498                            return "number" == typeof e
3499                        }, isString: function (e) {
3500                            return "string" == typeof e
3501                        }, isArray: Array.isArray || function (e) {
3502                            return "[object Array]" === Object.prototype.toString.call(e)
3503                        }, isFunction: function (e) {
3504                            return "[object Function]" === Object.prototype.toString.call(e)
3505                        }, isNode: function (e) {
3506                            return e && e.nodeType
3507                        }, isWrapped: function (e) {
3508                            return e && e !== H && $.isNumber(e.length) && !$.isString(e) && !$.isFunction(e) && !$.isNode(e) && (0 === e.length || $.isNode(e[0]))
3509                        }, isSVG: function (e) {
3510                            return H.SVGElement && e instanceof H.SVGElement
3511                        }, isEmptyObject: function (e) {
3512                            for (var t in e) if (e.hasOwnProperty(t)) return !1;
3513                            return !0
3514                        }
3515                    }, o = !1;
3516                    if (e.fn && e.fn.jquery ? (U = e, o = !0) : U = H.Velocity.Utilities, T <= 8 && !o) throw new Error("Velocity: IE8 and below require jQuery to be loaded before Velocity.");
3517                    if (!(T <= 7)) {
3518                        var s = "swing", Q = {
3519                            State: {
3520                                isMobile: /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),
3521                                isAndroid: /Android/i.test(navigator.userAgent),
3522                                isGingerbread: /Android 2\.3\.[3-7]/i.test(navigator.userAgent),
3523                                isChrome: H.chrome,
3524                                isFirefox: /Firefox/i.test(navigator.userAgent),
3525                                prefixElement: R.createElement("div"),
3526                                prefixMatches: {},
3527                                scrollAnchor: null,
3528                                scrollPropertyLeft: null,
3529                                scrollPropertyTop: null,
3530                                isTicking: !1,
3531                                calls: [],
3532                                delayedElements: {count: 0}
3533                            },
3534                            CSS: {},
3535                            Utilities: U,
3536                            Redirects: {},
3537                            Easings: {},
3538                            Promise: H.Promise,
3539                            defaults: {
3540                                queue: "",
3541                                duration: 400,
3542                                easing: s,
3543                                begin: q,
3544                                complete: q,
3545                                progress: q,
3546                                display: q,
3547                                visibility: q,
3548                                loop: !1,
3549                                delay: !1,
3550                                mobileHA: !0,
3551                                _cacheValues: !0,
3552                                promiseRejectEmpty: !0
3553                            },
3554                            init: function (e) {
3555                                U.data(e, "velocity", {
3556                                    isSVG: $.isSVG(e),
3557                                    isAnimating: !1,
3558                                    computedStyle: null,
3559                                    tweensContainer: null,
3560                                    rootPropertyValueCache: {},
3561                                    transformCache: {}
3562                                })
3563                            },
3564                            hook: null,
3565                            mock: !1,
3566                            version: {major: 1, minor: 5, patch: 0},
3567                            debug: !1,
3568                            timestamp: !0,
3569                            pauseAll: function (n) {
3570                                var i = (new Date).getTime();
3571                                U.each(Q.State.calls, function (e, t) {
3572                                    if (t) {
3573                                        if (n !== q && (t[2].queue !== n || !1 === t[2].queue)) return !0;
3574                                        t[5] = {resume: !1}
3575                                    }
3576                                }), U.each(Q.State.delayedElements, function (e, t) {
3577                                    t && v(t, i)
3578                                })
3579                            },
3580                            resumeAll: function (n) {
3581                                var e = (new Date).getTime();
3582                                U.each(Q.State.calls, function (e, t) {
3583                                    if (t) {
3584                                        if (n !== q && (t[2].queue !== n || !1 === t[2].queue)) return !0;
3585                                        t[5] && (t[5].resume = !0)
3586                                    }
3587                                }), U.each(Q.State.delayedElements, function (e, t) {
3588                                    t && b(t)
3589                                })
3590                            }
3591                        };
3592                        H.pageYOffset !== q ? (Q.State.scrollAnchor = H, Q.State.scrollPropertyLeft = "pageXOffset", Q.State.scrollPropertyTop = "pageYOffset") : (Q.State.scrollAnchor = R.documentElement || R.body.parentNode || R.body, Q.State.scrollPropertyLeft = "scrollLeft", Q.State.scrollPropertyTop = "scrollTop");
3593                        var a = function e(t, n, i) {
3594                            var r, o, s, a, l, c, u, f, d, p, h = {x: -1, v: 0, tension: null, friction: null}, m = [0],
3595                                g = 0;
3596                            for (t = parseFloat(t) || 500, n = parseFloat(n) || 20, i = i || null, h.tension = t, h.friction = n, o = (r = null !== i) ? (g = e(t, n)) / i * .016 : .016; l = o, d = p = d = f = u = c = void 0, c = {
3597                                dx: (a = s || h).v,
3598                                dv: w(a)
3599                            }, u = S(a, .5 * l, c), f = S(a, .5 * l, u), d = S(a, l, f), p = 1 / 6 * (c.dx + 2 * (u.dx + f.dx) + d.dx), d = 1 / 6 * (c.dv + 2 * (u.dv + f.dv) + d.dv), a.x = a.x + p * l, a.v = a.v + d * l, m.push(1 + (s = a).x), g += 16, 1e-4 < Math.abs(s.x) && 1e-4 < Math.abs(s.v);) ;
3600                            return r ? function (e) {
3601                                return m[e * (m.length - 1) | 0]
3602                            } : g
3603                        };
3604                        Q.Easings = {
3605                            linear: function (e) {
3606                                return e
3607                            }, swing: function (e) {
3608                                return .5 - Math.cos(e * Math.PI) / 2
3609                            }, spring: function (e) {
3610                                return 1 - Math.cos(4.5 * e * Math.PI) * Math.exp(6 * -e)
3611                            }
3612                        }, U.each([["ease", [.25, .1, .25, 1]], ["ease-in", [.42, 0, 1, 1]], ["ease-out", [0, 0, .58, 1]], ["ease-in-out", [.42, 0, .58, 1]], ["easeInSine", [.47, 0, .745, .715]], ["easeOutSine", [.39, .575, .565, 1]], ["easeInOutSine", [.445, .05, .55, .95]], ["easeInQuad", [.55, .085, .68, .53]], ["easeOutQuad", [.25, .46, .45, .94]], ["easeInOutQuad", [.455, .03, .515, .955]], ["easeInCubic", [.55, .055, .675, .19]], ["easeOutCubic", [.215, .61, .355, 1]], ["easeInOutCubic", [.645, .045, .355, 1]], ["easeInQuart", [.895, .03, .685, .22]], ["easeOutQuart", [.165, .84, .44, 1]], ["easeInOutQuart", [.77, 0, .175, 1]], ["easeInQuint", [.755, .05, .855, .06]], ["easeOutQuint", [.23, 1, .32, 1]], ["easeInOutQuint", [.86, 0, .07, 1]], ["easeInExpo", [.95, .05, .795, .035]], ["easeOutExpo", [.19, 1, .22, 1]], ["easeInOutExpo", [1, 0, 0, 1]], ["easeInCirc", [.6, .04, .98, .335]], ["easeOutCirc", [.075, .82, .165, 1]], ["easeInOutCirc", [.785, .135, .15, .86]]], function (e, t) {
3613                            Q.Easings[t[0]] = c.apply(null, t[1])
3614                        });
3615                        var Y = Q.CSS = {
3616                            RegEx: {
3617                                isHex: /^#([A-f\d]{3}){1,2}$/i,
3618                                valueUnwrap: /^[A-z]+\((.*)\)$/i,
3619                                wrappedValueAlreadyExtracted: /[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/,
3620                                valueSplit: /([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi
3621                            }, Lists: {
3622                                colors: ["fill", "stroke", "stopColor", "color", "backgroundColor", "borderColor", "borderTopColor", "borderRightColor", "borderBottomColor", "borderLeftColor", "outlineColor"],
3623                                transformsBase: ["translateX", "translateY", "scale", "scaleX", "scaleY", "skewX", "skewY", "rotateZ"],
3624                                transforms3D: ["transformPerspective", "translateZ", "scaleZ", "rotateX", "rotateY"],
3625                                units: ["%", "em", "ex", "ch", "rem", "vw", "vh", "vmin", "vmax", "cm", "mm", "Q", "in", "pc", "pt", "px", "deg", "grad", "rad", "turn", "s", "ms"],
3626                                colorNames: {
3627                                    aliceblue: "240,248,255",
3628                                    antiquewhite: "250,235,215",
3629                                    aquamarine: "127,255,212",
3630                                    aqua: "0,255,255",
3631                                    azure: "240,255,255",
3632                                    beige: "245,245,220",
3633                                    bisque: "255,228,196",
3634                                    black: "0,0,0",
3635                                    blanchedalmond: "255,235,205",
3636                                    blueviolet: "138,43,226",
3637                                    blue: "0,0,255",
3638                                    brown: "165,42,42",
3639                                    burlywood: "222,184,135",
3640                                    cadetblue: "95,158,160",
3641                                    chartreuse: "127,255,0",
3642                                    chocolate: "210,105,30",
3643                                    coral: "255,127,80",
3644                                    cornflowerblue: "100,149,237",
3645                                    cornsilk: "255,248,220",
3646                                    crimson: "220,20,60",
3647                                    cyan: "0,255,255",
3648                                    darkblue: "0,0,139",
3649                                    darkcyan: "0,139,139",
3650                                    darkgoldenrod: "184,134,11",
3651                                    darkgray: "169,169,169",
3652                                    darkgrey: "169,169,169",
3653                                    darkgreen: "0,100,0",
3654                                    darkkhaki: "189,183,107",
3655                                    darkmagenta: "139,0,139",
3656                                    darkolivegreen: "85,107,47",
3657                                    darkorange: "255,140,0",
3658                                    darkorchid: "153,50,204",
3659                                    darkred: "139,0,0",
3660                                    darksalmon: "233,150,122",
3661                                    darkseagreen: "143,188,143",
3662                                    darkslateblue: "72,61,139",
3663                                    darkslategray: "47,79,79",
3664                                    darkturquoise: "0,206,209",
3665                                    darkviolet: "148,0,211",
3666                                    deeppink: "255,20,147",
3667                                    deepskyblue: "0,191,255",
3668                                    dimgray: "105,105,105",
3669                                    dimgrey: "105,105,105",
3670                                    dodgerblue: "30,144,255",
3671                                    firebrick: "178,34,34",
3672                                    floralwhite: "255,250,240",
3673                                    forestgreen: "34,139,34",
3674                                    fuchsia: "255,0,255",
3675                                    gainsboro: "220,220,220",
3676                                    ghostwhite: "248,248,255",
3677                                    gold: "255,215,0",
3678                                    goldenrod: "218,165,32",
3679                                    gray: "128,128,128",
3680                                    grey: "128,128,128",
3681                                    greenyellow: "173,255,47",
3682                                    green: "0,128,0",
3683                                    honeydew: "240,255,240",
3684                                    hotpink: "255,105,180",
3685                                    indianred: "205,92,92",
3686                                    indigo: "75,0,130",
3687                                    ivory: "255,255,240",
3688                                    khaki: "240,230,140",
3689                                    lavenderblush: "255,240,245",
3690                                    lavender: "230,230,250",
3691                                    lawngreen: "124,252,0",
3692                                    lemonchiffon: "255,250,205",
3693                                    lightblue: "173,216,230",
3694                                    lightcoral: "240,128,128",
3695                                    lightcyan: "224,255,255",
3696                                    lightgoldenrodyellow: "250,250,210",
3697                                    lightgray: "211,211,211",
3698                                    lightgrey: "211,211,211",
3699                                    lightgreen: "144,238,144",
3700                                    lightpink: "255,182,193",
3701                                    lightsalmon: "255,160,122",
3702                                    lightseagreen: "32,178,170",
3703                                    lightskyblue: "135,206,250",
3704                                    lightslategray: "119,136,153",
3705                                    lightsteelblue: "176,196,222",
3706                                    lightyellow: "255,255,224",
3707                                    limegreen: "50,205,50",
3708                                    lime: "0,255,0",
3709                                    linen: "250,240,230",
3710                                    magenta: "255,0,255",
3711                                    maroon: "128,0,0",
3712                                    mediumaquamarine: "102,205,170",
3713                                    mediumblue: "0,0,205",
3714                                    mediumorchid: "186,85,211",
3715                                    mediumpurple: "147,112,219",
3716                                    mediumseagreen: "60,179,113",
3717                                    mediumslateblue: "123,104,238",
3718                                    mediumspringgreen: "0,250,154",
3719                                    mediumturquoise: "72,209,204",
3720                                    mediumvioletred: "199,21,133",
3721                                    midnightblue: "25,25,112",
3722                                    mintcream: "245,255,250",
3723                                    mistyrose: "255,228,225",
3724                                    moccasin: "255,228,181",
3725                                    navajowhite: "255,222,173",
3726                                    navy: "0,0,128",
3727                                    oldlace: "253,245,230",
3728                                    olivedrab: "107,142,35",
3729                                    olive: "128,128,0",
3730                                    orangered: "255,69,0",
3731                                    orange: "255,165,0",
3732                                    orchid: "218,112,214",
3733                                    palegoldenrod: "238,232,170",
3734                                    palegreen: "152,251,152",
3735                                    paleturquoise: "175,238,238",
3736                                    palevioletred: "219,112,147",
3737                                    papayawhip: "255,239,213",
3738                                    peachpuff: "255,218,185",
3739                                    peru: "205,133,63",
3740                                    pink: "255,192,203",
3741                                    plum: "221,160,221",
3742                                    powderblue: "176,224,230",
3743                                    purple: "128,0,128",
3744                                    red: "255,0,0",
3745                                    rosybrown: "188,143,143",
3746                                    royalblue: "65,105,225",
3747                                    saddlebrown: "139,69,19",
3748                                    salmon: "250,128,114",
3749                                    sandybrown: "244,164,96",
3750                                    seagreen: "46,139,87",
3751                                    seashell: "255,245,238",
3752                                    sienna: "160,82,45",
3753                                    silver: "192,192,192",
3754                                    skyblue: "135,206,235",
3755                                    slateblue: "106,90,205",
3756                                    slategray: "112,128,144",
3757                                    snow: "255,250,250",
3758                                    springgreen: "0,255,127",
3759                                    steelblue: "70,130,180",
3760                                    tan: "210,180,140",
3761                                    teal: "0,128,128",
3762                                    thistle: "216,191,216",
3763                                    tomato: "255,99,71",
3764                                    turquoise: "64,224,208",
3765                                    violet: "238,130,238",
3766                                    wheat: "245,222,179",
3767                                    whitesmoke: "245,245,245",
3768                                    white: "255,255,255",
3769                                    yellowgreen: "154,205,50",
3770                                    yellow: "255,255,0"
3771                                }
3772                            }, Hooks: {
3773                                templates: {
3774                                    textShadow: ["Color X Y Blur", "black 0px 0px 0px"],
3775                                    boxShadow: ["Color X Y Blur Spread", "black 0px 0px 0px 0px"],
3776                                    clip: ["Top Right Bottom Left", "0px 0px 0px 0px"],
3777                                    backgroundPosition: ["X Y", "0% 0%"],
3778                                    transformOrigin: ["X Y Z", "50% 50% 0px"],
3779                                    perspectiveOrigin: ["X Y", "50% 50%"]
3780                                }, registered: {}, register: function () {
3781                                    for (var e, t, n, i, r, o = 0; o < Y.Lists.colors.length; o++) {
3782                                        var s = "color" === Y.Lists.colors[o] ? "0 0 0 1" : "255 255 255 1";
3783                                        Y.Hooks.templates[Y.Lists.colors[o]] = ["Red Green Blue Alpha", s]
3784                                    }
3785                                    if (T) for (e in Y.Hooks.templates) Y.Hooks.templates.hasOwnProperty(e) && (n = (t = Y.Hooks.templates[e])[0].split(" "), i = t[1].match(Y.RegEx.valueSplit), "Color" === n[0] && (n.push(n.shift()), i.push(i.shift()), Y.Hooks.templates[e] = [n.join(" "), i.join(" ")]));
3786                                    for (e in Y.Hooks.templates) if (Y.Hooks.templates.hasOwnProperty(e)) for (var a in n = (t = Y.Hooks.templates[e])[0].split(" ")) n.hasOwnProperty(a) && (r = e + n[a], Y.Hooks.registered[r] = [e, a])
3787                                }, getRoot: function (e) {
3788                                    var t = Y.Hooks.registered[e];
3789                                    return t ? t[0] : e
3790                                }, getUnit: function (e, t) {
3791                                    t = (e.substr(t || 0, 5).match(/^[a-z%]+/) || [])[0] || "";
3792                                    return t && z(Y.Lists.units) ? t : ""
3793                                }, fixColors: function (e) {
3794                                    return e.replace(/(rgba?\(\s*)?(\b[a-z]+\b)/g, function (e, t, n) {
3795                                        return Y.Lists.colorNames.hasOwnProperty(n) ? (t || "rgba(") + Y.Lists.colorNames[n] + (t ? "" : ",1)") : t + n
3796                                    })
3797                                }, cleanRootPropertyValue: function (e, t) {
3798                                    return Y.RegEx.valueUnwrap.test(t) && (t = t.match(Y.RegEx.valueUnwrap
3798)[1]), t = Y.Values.isCSSNullValue(t) ? Y.Hooks.templates[e][1] : t
3799                                }, extractValue: function (e, t) {
3800                                    var n = Y.Hooks.registered[e];
3801                                    if (n) {
3802                                        e = n[0], n = n[1];
3803                                        return (t = Y.Hooks.cleanRootPropertyValue(e, t)).toString().match(Y.RegEx.valueSplit)[n]
3804                                    }
3805                                    return t
3806                                }, injectValue: function (e, t, n) {
3807                                    var i = Y.Hooks.registered[e];
3808                                    if (i) {
3809                                        e = i[0], i = i[1];
3810                                        return (e = (n = Y.Hooks.cleanRootPropertyValue(e, n)).toString().match(Y.RegEx.valueSplit))[i] = t, e.join(" ")
3811                                    }
3812                                    return n
3813                                }
3814                            }, Normalizations: {
3815                                registered: {
3816                                    clip: function (e, t, n) {
3817                                        switch (e) {
3818                                            case"name":
3819                                                return "clip";
3820                                            case"extract":
3821                                                var i = !Y.RegEx.wrappedValueAlreadyExtracted.test(n) && (i = n.toString().match(Y.RegEx.valueUnwrap)) ? i[1].replace(/,(\s+)?/g, " ") : n;
3822                                                return i;
3823                                            case"inject":
3824                                                return "rect(" + n + ")"
3825                                        }
3826                                    }, blur: function (e, t, n) {
3827                                        switch (e) {
3828                                            case"name":
3829                                                return Q.State.isFirefox ? "filter" : "-webkit-filter";
3830                                            case"extract":
3831                                                var i, r = parseFloat(n);
3832                                                return r = !r && 0 !== r ? (i = n.toString().match(/blur\(([0-9]+[A-z]+)\)/i)) ? i[1] : 0 : r;
3833                                            case"inject":
3834                                                return parseFloat(n) ? "blur(" + n + ")" : "none"
3835                                        }
3836                                    }, opacity: function (e, t, n) {
3837                                        if (T <= 8) switch (e) {
3838                                            case"name":
3839                                                return "filter";
3840                                            case"extract":
3841                                                var i = n.toString().match(/alpha\(opacity=(.*)\)/i);
3842                                                return n = i ? i[1] / 100 : 1;
3843                                            case"inject":
3844                                                return (t.style.zoom = 1) <= parseFloat(n) ? "" : "alpha(opacity=" + parseInt(100 * parseFloat(n), 10) + ")"
3845                                        } else switch (e) {
3846                                            case"name":
3847                                                return "opacity";
3848                                            case"extract":
3849                                            case"inject":
3850                                                return n
3851                                        }
3852                                    }
3853                                }, register: function () {
3854                                    T && !(9 < T) || Q.State.isGingerbread || (Y.Lists.transformsBase = Y.Lists.transformsBase.concat(Y.Lists.transforms3D));
3855                                    for (var e = 0; e < Y.Lists.transformsBase.length; e++) !function () {
3856                                        var r = Y.Lists.transformsBase[e];
3857                                        Y.Normalizations.registered[r] = function (e, t, n) {
3858                                            switch (e) {
3859                                                case"name":
3860                                                    return "transform";
3861                                                case"extract":
3862                                                    return K(t) === q || K(t).transformCache[r] === q ? /^scale/i.test(r) ? 1 : 0 : K(t).transformCache[r].replace(/[()]/g, "");
3863                                                case"inject":
3864                                                    var i = !1;
3865                                                    switch (r.substr(0, r.length - 1)) {
3866                                                        case"translate":
3867                                                            i = !/(%|px|em|rem|vw|vh|\d)$/i.test(n);
3868                                                            break;
3869                                                        case"scal":
3870                                                        case"scale":
3871                                                            Q.State.isAndroid && K(t).transformCache[r] === q && n < 1 && (n = 1), i = !/(\d)$/i.test(n);
3872                                                            break;
3873                                                        case"skew":
3874                                                        case"rotate":
3875                                                            i = !/(deg|\d)$/i.test(n)
3876                                                    }
3877                                                    return i || (K(t).transformCache[r] = "(" + n + ")"), K(t).transformCache[r]
3878                                            }
3879                                        }
3880                                    }();
3881                                    for (var t = 0; t < Y.Lists.colors.length; t++) !function () {
3882                                        var o = Y.Lists.colors[t];
3883                                        Y.Normalizations.registered[o] = function (e, t, n) {
3884                                            switch (e) {
3885                                                case"name":
3886                                                    return o;
3887                                                case"extract":
3888                                                    var i, r = Y.RegEx.wrappedValueAlreadyExtracted.test(n) ? n : (i = {
3889                                                        black: "rgb(0, 0, 0)",
3890                                                        blue: "rgb(0, 0, 255)",
3891                                                        gray: "rgb(128, 128, 128)",
3892                                                        green: "rgb(0, 128, 0)",
3893                                                        red: "rgb(255, 0, 0)",
3894                                                        white: "rgb(255, 255, 255)"
3895                                                    }, /^[A-z]+$/i.test(n) ? r = i[n] !== q ? i[n] : i.black : Y.RegEx.isHex.test(n) ? r = "rgb(" + Y.Values.hexToRgb(n).join(" ") + ")" : /^rgba?\(/i.test(n) || (r = i.black), (r || n).toString().match(Y.RegEx.valueUnwrap
3895)[1].replace(/,(\s+)?/g, " "));
3896                                                    return (!T || 8 < T) && 3 === r.split(" ").length && (r += " 1"), r;
3897                                                case"inject":
3898                                                    return /^rgb/.test(n) ? n : (T <= 8 ? 4 === n.split(" ").length && (n = n.split(/\s+/).slice(0, 3).join(" ")) : 3 === n.split(" ").length && (n += " 1"), (T <= 8 ? "rgb" : "rgba") + "(" + n.replace(/\s+/g, ",").replace(/\.(\d)+(?=,)/g, "") + ")")
3899                                            }
3900                                        }
3901                                    }();
3902
3903                                    function o(e, t, n) {
3904                                        if ("border-box" === Y.getPropertyValue(t, "boxSizing").toString().toLowerCase() !== (n || !1)) return 0;
3905                                        for (var i, r = 0, e = "width" === e ? ["Left", "Right"] : ["Top", "Bottom"], o = ["padding" + e[0], "padding" + e[1], "border" + e[0] + "Width", "border" + e[1] + "Width"], s = 0; s < o.length; s++) i = parseFloat(Y.getPropertyValue(t, o[s])), isNaN(i) || (r += i);
3906                                        return n ? -r : r
3907                                    }
3908
3909                                    function n(i, r) {
3910                                        return function (e, t, n) {
3911                                            switch (e) {
3912                                                case"name":
3913                                                    return i;
3914                                                case"extract":
3915                                                    return parseFloat(n) + o(i, t, r);
3916                                                case"inject":
3917                                                    return parseFloat(n) - o(i, t, r) + "px"
3918                                            }
3919                                        }
3920                                    }
3921
3922                                    Y.Normalizations.registered.innerWidth = n("width", !0), Y.Normalizations.registered.innerHeight = n("height", !0), Y.Normalizations.registered.outerWidth = n("width"), Y.Normalizations.registered.outerHeight = n("height")
3923                                }
3924                            }, Names: {
3925                                camelCase: function (e) {
3926                                    return e.replace(/-(\w)/g, function (e, t) {
3927                                        return t.toUpperCase()
3928                                    })
3929                                }, SVGAttribute: function (e) {
3930                                    var t = "width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2";
3931                                    return (T || Q.State.isAndroid && !Q.State.isChrome) && (t += "|transform"), new RegExp("^(" + t + ")$", "i").test(e)
3932                                }, prefixCheck: function (e) {
3933                                    if (Q.State.prefixMatches[e]) return [Q.State.prefixMatches[e], !0];
3934                                    for (var t = ["", "Webkit", "Moz", "ms", "O"], n = 0, i = t.length; n < i; n++) {
3935                                        var r = 0 === n ? e : t[n] + e.replace(/^\w/, function (e) {
3936                                            return e.toUpperCase()
3937                                        });
3938                                        if ($.isString(Q.State.prefixElement.style[r])) return [Q.State.prefixMatches[e] = r, !0]
3939                                    }
3940                                    return [e, !1]
3941                                }
3942                            }, Values: {
3943                                hexToRgb: function (e) {
3944                                    return e = e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, function (e, t, n, i) {
3945                                        return t + t + n + n + i + i
3946                                    }), (e = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e)) ? [parseInt(e[1], 16), parseInt(e[2], 16), parseInt(e[3], 16)] : [0, 0, 0]
3947                                }, isCSSNullValue: function (e) {
3948                                    return !e || /^(none|auto|transparent|(rgba\(0, ?0, ?0, ?0\)))$/i.test(e)
3949                                }, getUnitType: function (e) {
3950                                    return /^(rotate|skew)/i.test(e) ? "deg" : /(^(scale|scaleX|scaleY|scaleZ|alpha|flexGrow|flexHeight|zIndex|fontWeight)$)|((opacity|red|green|blue|alpha)$)/i.test(e) ? "" : "px"
3951                                }, getDisplayType: function (e) {
3952                                    e = e && e.tagName.toString().toLowerCase();
3953                                    return /^(b|big|i|small|tt|abbr|acronym|cite|code|dfn|em|kbd|strong|samp|var|a|bdo|br|img|map|object|q|script|span|sub|sup|button|input|label|select|textarea)$/i.test(e) ? "inline" : /^(li)$/i.test(e) ? "list-item" : /^(tr)$/i.test(e) ? "table-row" : /^(table)$/i.test(e) ? "table" : /^(tbody)$/i.test(e) ? "table-row-group" : "block"
3954                                }, addClass: function (e, t) {
3955                                    var n;
3956                                    e && (e.classList ? e.classList.add(t) : $.isString(e.className) ? e.className += (e.className.length ? " " : "") + t : (n = e.getAttribute(T <= 7 ? "className" : "class") || "", e.setAttribute("class", n + (n ? " " : "") + t)))
3957                                }, removeClass: function (e, t) {
3958                                    var n;
3959                                    e && (e.classList ? e.classList.remove(t) : $.isString(e.className) ? e.className = e.className.toString().replace(new RegExp("(^|\\s)" + t.split(" ").join("|") + "(\\s|$)", "gi"), " ") : (n = e.getAttribute(T <= 7 ? "className" : "class") || "", e.setAttribute("class", n.replace(new RegExp("(^|s)" + t.split(" ").join("|") + "(s|$)", "gi"), " "))))
3960                                }
3961                            }, getPropertyValue: function (e, t, n, a) {
3962                                function l(e, t) {
3963                                    var n = 0;
3964                                    if (T <= 8) n = U.css(e, t); else {
3965                                        var i = !1;
3966                                        /^(width|height)$/.test(t) && 0 === Y.getPropertyValue(e, "display") && (i = !0, Y.setPropertyValue(e, "display", Y.Values.getDisplayType(e)));
3967                                        var r = function () {
3968                                            i && Y.setPropertyValue(e, "display", "none")
3969                                        };
3970                                        if (!a) {
3971                                            if ("height" === t && "border-box" !== Y.getPropertyValue(e, "boxSizing").toString().toLowerCase()) {
3972                                                var o = e.offsetHeight - (parseFloat(Y.getPropertyValue(e, "borderTopWidth")) || 0) - (parseFloat(Y.getPropertyValue(e, "borderBottomWidth")) || 0) - (parseFloat(Y.getPropertyValue(e, "paddingTop")) || 0) - (parseFloat(Y.getPropertyValue(e, "paddingBottom")) || 0);
3973                                                return r(), o
3974                                            }
3975                                            if ("width" === t && "border-box" !== Y.getPropertyValue(e, "boxSizing").toString().toLowerCase()) {
3976                                                var s = e.offsetWidth - (parseFloat(Y.getPropertyValue(e, "borderLeftWidth")) || 0) - (parseFloat(Y.getPropertyValue(e, "borderRightWidth")) || 0) - (parseFloat(Y.getPropertyValue(e, "paddingLeft")) || 0) - (parseFloat(Y.getPropertyValue(e, "paddingRight")) || 0);
3977                                                return r(), s
3978                                            }
3979                                        }
3980                                        s = K(e) === q ? H.getComputedStyle(e, null) : K(e).computedStyle ? K(e).computedStyle : K(e).computedStyle = H.getComputedStyle(e, null), "borderColor" === t && (t = "borderTopColor"), "" !== (n = 9 === T && "filter" === t ? s.getPropertyValue(t) : s[t]) && null !== n || (n = e.style[t]), r()
3981                                    }
3982                                    return "auto" !== n || !/^(top|right|bottom|left)$/i.test(t) || ("fixed" === (r = l(e, "position")) || "absolute" === r && /top|left/i.test(t)) && (n = U(e).position()[t] + "px"), n
3983                                }
3984
3985                                var i, r;
3986                                if (Y.Hooks.registered[t] ? (r = Y.Hooks.getRoot(i = t), n === q && (n = Y.getPropertyValue(e, Y.Names.prefixCheck(r)[0])), Y.Normalizations.registered[r] && (n = Y.Normalizations.registered[r]("extract", e, n)), i = Y.Hooks.extractValue(i, n)) : Y.Normalizations.registered[t] && ("transform" !== (n = Y.Normalizations.registered[t]("name", e)) && (o = l(e, Y.Names.prefixCheck(n)[0]), Y.Values.isCSSNullValue(o) && Y.Hooks.templates[t] && (o = Y.Hooks.templates[t][1])), i = Y.Normalizations.registered[t]("extract", e, o)), !/^[\d-]/.test(i)) {
3987                                    var o = K(e);
3988                                    if (o && o.isSVG && Y.Names.SVGAttribute(t)) if (/^(height|width)$/i.test(t)) try {
3989                                        i = e.getBBox()[t]
3990                                    } catch (e) {
3991                                        i = 0
3992                                    } else i = e.getAttribute(t); else i = l(e, Y.Names.prefixCheck(t)[0])
3993                                }
3994                                return Y.Values.isCSSNullValue(i) && (i = 0), Q.debug, i
3995                            }, setPropertyValue: function (e, t, n, i, r) {
3996                                var o = t;
3997                                if ("scroll" === t) r.container ? r.container["scroll" + r.direction] = n : "Left" === r.direction ? H.scrollTo(n, r.alternateValue) : H.scrollTo(r.alternateValue, n); else if (Y.Normalizations.registered[t] && "transform" === Y.Normalizations.registered[t]("name", e)) Y.Normalizations.registered[t]("inject", e, n), o = "transform", n = K(e).transformCache[t]; else {
3998                                    if (Y.Hooks.registered[t] && (s = Y.Hooks.getRoot(r = t), i = i || Y.getPropertyValue(e, s), n = Y.Hooks.injectValue(r, n, i), t = s), Y.Normalizations.registered[t] && (n = Y.Normalizations.registered[t]("inject", e, n), t = Y.Normalizations.registered[t]("name", e)), o = Y.Names.prefixCheck(t)[0], T <= 8) try {
3999                                        e.style[o] = n
4000                                    } catch (e) {
4001                                        Q.debug
4002                                    } else {
4003                                        var s = K(e);
4004                                        s && s.isSVG && Y.Names.SVGAttribute(t) ? e.setAttribute(t, n) : e.style[o] = n
4005                                    }
4006                                    Q.debug
4007                                }
4008                                return [o, n]
4009                            }, flushTransformCache: function (t) {
4010                                var n, i, r, o = "", e = K(t);
4011                                (T || Q.State.isAndroid && !Q.State.isChrome) && e && e.isSVG ? (n = {
4012                                    translate: [(e = function (e) {
4013                                        return parseFloat(Y.getPropertyValue(t, e))
4014                                    })("translateX"), e("translateY")],
4015                                    skewX: [e("skewX")],
4016                                    skewY: [e("skewY")],
4017                                    scale: 1 !== e("scale") ? [e("scale"), e("scale")] : [e("scaleX"), e("scaleY")],
4018                                    rotate: [e("rotateZ"), 0, 0]
4019                                }, U.each(K(t).transformCache, function (e) {
4020                                    /^translate/i.test(e) ? e = "translate" : /^scale/i.test(e) ? e = "scale" : /^rotate/i.test(e) && (e = "rotate"), n[e] && (o += e + "(" + n[e].join(" ") + ") ", delete n[e])
4021                                })) : (U.each(K(t).transformCache, function (e) {
4022                                    return i = K(t).transformCache[e], "transformPerspective" === e ? (r = i, !0) : void (o += (e = 9 === T && "rotateZ" === e ? "rotate" : e) + i + " ")
4023                                }), r && (o = "perspective" + r + " " + o)), Y.setPropertyValue(t, "transform", o)
4024                            }
4025                        };
4026                        Y.Hooks.register(), Y.Normalizations.register(), Q.hook = function (e, i, r) {
4027                            var o;
4028                            return e = y(e), U.each(e, function (e, t) {
4029                                var n;
4030                                K(t) === q && Q.init(t), r === q ? o === q && (o = Y.getPropertyValue(t, i)) : ("transform" === (n = Y.setPropertyValue(t, i, r))[0] && Q.CSS.flushTransformCache(t), o = n)
4031                            }), o
4032                        };
4033                        var l = function e() {
4034                            function t() {
4035                                return n ? k.promise || null : i
4036                            }
4037
4038                            var n, i, r, E, A,
4039                                o = arguments[0] && (arguments[0].p || U.isPlainObject(arguments[0].properties) && !arguments[0].properties.names || $.isString(arguments[0].properties));
4040                            $.isWrapped(this) ? (n = !1, r = 0, i = E = this) : (n = !0, r = 1, E = o ? arguments[0].elements || arguments[0].e : arguments[0]);
4041                            var k = {promise: null, resolver: null, rejecter: null};
4042                            if (n && Q.Promise && (k.promise = new Q.Promise(function (e, t) {
4043                                k.resolver = e, k.rejecter = t
4044                            })), V = o ? (A = arguments[0].properties || arguments[0].p, arguments[0].options || arguments[0].o) : (A = arguments[r], arguments[r + 1]), E = y(E)) {
4045                                var B, F = E.length, L = 0;
4046                                if (!/^(stop|finish|finishAll|pause|resume)$/i.test(A) && !U.isPlainObject(V)) for (var V = {}, s = r + 1; s < arguments.length; s++) $.isArray(arguments[s]) || !/^(fast|normal|slow)$/i.test(arguments[s]) && !/^\d/.test(arguments[s]) ? $.isString(arguments[s]) || $.isArray(arguments[s]) ? V.easing = arguments[s] : $.isFunction(arguments[s]) && (V.complete = arguments[s]) : V.duration = arguments[s];
4047                                switch (A) {
4048                                    case"scroll":
4049                                        B = "scroll";
4050                                        break;
4051                                    case"reverse":
4052                                        B = "reverse";
4053                                        break;
4054                                    case"pause":
4055                                        var a = (new Date).getTime();
4056                                        return U.each(E, function (e, t) {
4057                                            v(t, a)
4058                                        }), U.each(Q.State.calls, function (e, i) {
4059                                            var r = !1;
4060                                            i && U.each(i[1], function (e, n) {
4061                                                var t = V === q ? "" : V;
4062                                                return !0 !== t && i[2].queue !== t && (V !== q || !1 !== i[2].queue) || (U.each(E, function (e, t) {
4063                                                    if (t === n) return i[5] = {resume: !1}, !(r = !0)
4064                                                }), !r && void 0)
4065                                            })
4066                                        }), t();
4067                                    case"resume":
4068                                        return U.each(E, function (e, t) {
4069                                            b(t)
4070                                        }), U.each(Q.State.calls, function (e, i) {
4071                                            var r = !1;
4072                                            i && U.each(i[1], function (e, n) {
4073                                                var t = V === q ? "" : V;
4074                                                return !0 !== t && i[2].queue !== t && (V !== q || !1 !== i[2].queue) || (!i[5] || (U.each(E, function (e, t) {
4075                                                    if (t === n) return i[5].resume = !0, !(r = !0)
4076                                                }), !r && void 0))
4077                                            })
4078                                        }), t();
4079                                    case"finish":
4080                                    case"finishAll":
4081                                    case"stop":
4082                                        U.each(E, function (e, t) {
4083                                            K(t) && K(t).delayTimer && (clearTimeout(K(t).delayTimer.setTimeout), K(t).delayTimer.next && K(t).delayTimer.next(), delete K(t).delayTimer), "finishAll" !== A || !0 !== V && !$.isString(V) || (U.each(U.queue(t, $.isString(V) ? V : ""), function (e, t) {
4084                                                $.isFunction(t) && t()
4085                                            }), U.queue(t, $.isString(V) ? V : "", []))
4086                                        });
4087                                        var l = [];
4088                                        return U.each(Q.State.calls, function (r, o) {
4089                                            o && U.each(o[1], function (e, n) {
4090                                                var i = V === q ? "" : V;
4091                                                if (!0 !== i && o[2].queue !== i && (V !== q || !1 !== o[2].queue)) return !0;
4092                                                U.each(E, function (e, t) {
4093                                                    t === n && (!0 !== V && !$.isString(V) || (U.each(U.queue(t, $.isString(V) ? V : ""), function (e, t) {
4094                                                        $.isFunction(t) && t(null, !0)
4095                                                    }), U.queue(t, $.isString(V) ? V : "", [])), "stop" === A ? ((t = K(t)) && t.tweensContainer && !1 !== i && U.each(t.tweensContainer, function (e, t) {
4096                                                        t.endValue = t.currentValue
4097                                                    }), l.push(r)) : "finish" !== A && "finishAll" !== A || (o[2].duration = 1))
4098                                                })
4099                                            })
4100                                        }), "stop" === A && (U.each(l, function (e, t) {
4101                                            O(t, !0)
4102                                        }), k.promise && k.resolver(E)), t();
4103                                    default:
4104                                        if (!U.isPlainObject(A) || $.isEmptyObject(A)) {
4105                                            if ($.isString(A) && Q.Redirects[A]) {
4106                                                var c, u = (c = U.extend({}, V)).duration, f = c.delay || 0;
4107                                                return !0 === c.backwards && (E = U.extend(!0, [], E).reverse()), U.each(E, function (e, t) {
4108                                                    parseFloat(c.stagger) ? c.delay 
4108= f + parseFloat(c.stagger) * e : $.isFunction(c.stagger) && (c.delay = f + c.stagger.call(t, e, F)), c.drag && (c.duration = parseFloat(u) || (/^(callout|transition)/.test(A) ? 1e3 : 400), c.duration = Math.max(c.duration * (c.backwards ? 1 - e / F : (e + 1) / F), .75 * c.duration, 200)), Q.Redirects[A].call(t, t, c || {}, e, F, E, k.promise ? k : q)
4109                                                }), t()
4110                                            }
4111                                            var d = "Velocity: First argument (" + A + ") was not a property map, a known action, or a registered redirect. Aborting.";
4112                                            return k.promise ? k.rejecter(new Error(d)) : H.console, t()
4113                                        }
4114                                        B = "start"
4115                                }
4116                                var M = {
4117                                    lastParent: null,
4118                                    lastPosition: null,
4119                                    lastFontSize: null,
4120                                    lastPercentToPxWidth: null,
4121                                    lastPercentToPxHeight: null,
4122                                    lastEmToPx: null,
4123                                    remToPx: null,
4124                                    vwToPx: null,
4125                                    vhToPx: null
4126                                }, W = [];
4127                                U.each(E, function (e, t) {
4128                                    $.isNode(t) && g(t, e)
4129                                }), (c = U.extend({}, Q.defaults, V)).loop = parseInt(c.loop, 10);
4130                                var p = 2 * c.loop - 1;
4131                                if (c.loop) for (var h = 0; h < p; h++) {
4132                                    var m = {delay: c.delay, progress: c.progress};
4133                                    h === p - 1 && (m.display = c.display, m.visibility = c.visibility, m.complete = c.complete), e(E, "reverse", m)
4134                                }
4135                                return t()
4136                            }
4137
4138                            function g(P, C) {
4139                                var D, e, t, N = U.extend({}, Q.defaults, V), j = {};
4140                                switch (K(P) === q && Q.init(P), parseFloat(N.delay) && !1 !== N.queue && U.queue(P, N.queue, function (e) {
4141                                    Q.velocityQueueEntryFlag = !0;
4142                                    var t = Q.State.delayedElements.count++;
4143                                    Q.State.delayedElements[t] = P;
4144                                    var n, t = (n = t, function () {
4145                                        Q.State.delayedElements[n] = !1, e()
4146                                    });
4147                                    K(P).delayBegin = (new Date).getTime(), K(P).delay = parseFloat(N.delay), K(P).delayTimer = {
4148                                        setTimeout: setTimeout(e, parseFloat(N.delay)),
4149                                        next: t
4150                                    }
4151                                }), N.duration.toString().toLowerCase()) {
4152                                    case"fast":
4153                                        N.duration = 200;
4154                                        break;
4155                                    case"normal":
4156                                        N.duration = 400;
4157                                        break;
4158                                    case"slow":
4159                                        N.duration = 600;
4160                                        break;
4161                                    default:
4162                                        N.duration = parseFloat(N.duration) || 1
4163                                }
4164
4165                                function n(e) {
4166                                    var O, I, t, n, i, r, o, s;
4167                                    if (N.begin && 0 === L) try {
4168                                        N.begin.call(E, E)
4169                                    } catch (e) {
4170                                        setTimeout(function () {
4171                                            throw e
4172                                        }, 1)
4173                                    }
4174                                    if ("scroll" === B) {
4175                                        var a, l, c, u = /^x$/i.test(N.axis) ? "Left" : "Top",
4176                                            f = parseFloat(N.offset) || 0;
4177                                        N.container ? $.isWrapped(N.container) || $.isNode(N.container) ? (N.container = N.container[0] || N.c
4177ontainer, c = (a = N.container["scroll" + u]) + U(P).position()[u.toLowerCase()] + f) : N.container = null : (a = Q.State.scrollAnchor[Q.State["scrollProperty" + u]], l = Q.State.scrollAnchor[Q.State["scrollProperty" + ("Left" === u ? "Top" : "Left")]], c = U(P).offset()[u.toLowerCase()] + f), j = {
4178                                            scroll: {
4179                                                rootPropertyValue: !1,
4180                                                startValue: a,
4181                                                currentValue: a,
4182                                                endValue: c,
4183                                                unitType: "",
4184                                                easing: N.easing,
4185                                                scrollData: {container: N.container, direction: u, alternateValue: l}
4186                                            }, element: P
4187                                        }, Q.debug
4188                                    } else if ("reverse" === B) {
4189                                        if (!(O = K(P))) return;
4190                                        if (!O.tweensContainer) return void U.dequeue(P, N.queue);
4191                                        for (var d in "none" === O.opts.display && (O.opts.display = "auto"), "hidden" === O.opts.visibility && (O.opts.visibility = "visible"), O.opts.loop = !1, O.opts.begin = null, O.opts.complete = null, V.easing || delete N.easing, V.duration || delete N.duration, N = U.extend({}, O.opts, N), I = U.extend(!0, {}, O ? O.tweensContainer : null)) I.hasOwnProperty(d) && "element" !== d && (t = I[d].startValue, I[d].startValue = I[d].currentValue = I[d].endValue, I[d].endValue = t, $.isEmptyObject(V) || (I[d].easing = N.easing), Q.debug);
4192                                        j = I
4193                                    } else if ("start" === B) {
4194                                        (O = K(P)) && O.tweensContainer && !0 === O.isAnimating && (I = O.tweensContainer);
4195                                        var p, h = function (e, t) {
4196                                            var n = Y.Hooks.getRoot(e), i = !1, r = t[0], o = t[1], s = t[2];
4197                                            if (O && O.isSVG || "tween" === n || !1 !== Y.Names.prefixCheck(n)[1] || Y.Normalizations.registered[n] !== q) {
4198                                                (N.display !== q && null !== N.display && "none" !== N.display || N.visibility !== q && "hidden" !== N.visibility) && /opacity|filter/.test(e) && !s && 0 !== r && (s = 0), N._cacheValues && I && I[e] ? (s === q && (s = I[e].endValue + I[e].unitType), i = O.rootPropertyValueCache[n]) : Y.Hooks.registered[e] ? s === q ? (i = Y.getPropertyValue(P, n), s = Y.getPropertyValue(P, e, i)) : i = Y.Hooks.templates[n][1] : s === q && (s = Y.getPropertyValue(P, e));
4199                                                var a, l, c = !1, t = function (e, t) {
4200                                                    var t = (t || "0").toString().toLowerCase().replace(/[%A-z]+$/, function (e) {
4201                                                        return n = e, ""
4202                                                    }), n = n || Y.Values.getUnitType(e);
4203                                                    return [t, n]
4204                                                };
4205                                                if (s !== r && $.isString(s) && $.isString(r)) {
4206                                                    for (var u = "", f = 0, d = 0, p = [], h = [], m = 0, g = 0, y = 0, s = Y.Hooks.fixColors(s), r = Y.Hooks.fixColors(r); f < s.length && d < r.length;) {
4207                                                        var v = s[f], b = r[d];
4208                                                        if (/[\d\.-]/.test(v) && /[\d\.-]/.test(b)) {
4209                                                            for (var w = v, S = b, x = ".", _ = "."; ++f < s.length;) {
4210                                                                if ((v = s[f]) === x) x = ".."; else if (!/\d/.test(v)) break;
4211                                                                w += v
4212                                                            }
4213                                                            for (; ++d < r.length;) {
4214                                                                if ((b = r[d]) === _) _ = ".."; else if (!/\d/.test(b)) break;
4215                                                                S += b
4216                                                            }
4217                                                            var T, C, E = Y.Hooks.getUnit(s, f),
4218                                                                A = Y.Hooks.getUnit(r, d);
4219                                                            f += E.length, d += A.length, E === A ? w === S ? u += w + E : (u += "{" + p.length + (g ? "!" : "") + "}" + E, p.push(parseFloat(w)), h.push(parseFloat(S))) : (T = parseFloat(w), C = parseFloat(S), u += (m < 5 ? "calc" : "") + "(" + (T ? "{" + p.length + (g ? "!" : "") + "}" : "0") + E + " + " + (C ? "{" + (p.length + (T ? 1 : 0)) + (g ? "!" : "") + "}" : "0") + A + ")", T && (p.push(T), h.push(0)), C && (p.push(0), h.push(C)))
4220                                                        } else {
4221                                                            if (v !== b) {
4222                                                                m = 0;
4223                                                                break
4224                                                            }
4225                                                            u += v, f++, d++, 0 === m && "c" === v || 1 === m && "a" === v || 2 === m && "l" === v || 3 === m && "c" === v || 4 <= m && "(" === v ? m++ : (m && m < 5 || 4 <= m && ")" === v && --m < 5) && (m = 0), 0 === g && "r" === v || 1 === g && "g" === v || 2 === g && "b" === v || 3 === g && "a" === v || 3 <= g && "(" === v ? (3 === g && "a" === v && (y = 1), g++) : y && "," === v ? 3 < ++y && (g = y = 0) : (y && g < (y ? 5 : 4) || (y ? 4 : 3) <= g && ")" === v && --g < (y ? 5 : 4)) && (g = y = 0)
4226                                                        }
4227                                                    }
4228                                                    f === s.length && d === r.length || (Q.debug, u = q), u && (p.length ? (Q.debug, s = p, r = h, a = l = "") : u = q)
4229                                                }
4230                                                u || (s = (n = t(e, s))[0], l = n[1], r = (n = t(e, r))[0].replace(/^([+-\/*])=/, function (e, t) {
4231                                                    return c = t, ""
4232                                                }), a = n[1], s = parseFloat(s) || 0, r = parseFloat(r) || 0, "%" === a && (/^(fontSize|lineHeight)$/.test(e) ? (r /= 100, a = "em") : /^scale/.test(e) ? (r /= 100, a = "") : /(Red|Green|Blue)$/i.test(e) && (r = r / 100 * 255, a = "")));
4233                                                if (/[\/*]/.test(c)) a = l; else if (l !== a && 0 !== s) if (0 === r) a = l; else {
4234                                                    D = D || function () {
4235                                                        var e = {
4236                                                                myParent: P.parentNode || R.body,
4237                                                                position: Y.getPropertyValue(P, "position"),
4238                                                                fontSize: Y.getPropertyValue(P, "fontSize")
4239                                                            },
4240                                                            t = e.position === M.lastPosition && e.myParent === M.lastParent,
4241                                                            n = e.fontSize === M.lastFontSize;
4242                                                        M.lastParent = e.myParent, M.lastPosition = e.position, M.lastFontSize = e.fontSize;
4243                                                        var i, r = {};
4244                                                        return n && t ? (r.emToPx = M.lastEmToPx, r.percentToPxWidth = M.lastPercentToPxWidth, r.percentToPxHeight = M.lastPercentToPxHeight) : (i = O && O.isSVG ? R.createElementNS("http://www.w3.org/2000/svg", "rect") : R.createElement("div"), Q.init(i), e.myParent.appendChild(i), U.each(["overflow", "overflowX", "overflowY"], function (e, t) {
4245                                                            Q.CSS.setPropertyValue(i, t, "hidden")
4246                                                        }), Q.CSS.setPropertyValue(i, "position", e.position), Q.CSS.setPropertyValue(i, "fontSize", e.fontSize), Q.CSS.setPropertyValue(i, "boxSizing", "content-box"), U.each(["minWidth", "maxWidth", "width", "minHeight", "maxHeight", "height"], function (e, t) {
4247                                                            Q.CSS.setPropertyValue(i, t, "100%")
4248                                                        }), Q.CSS.setPropertyValue(i, "paddingLeft", "100em"), r.percentToPxWidth = M.lastPercentToPxWidth = (parseFloat(Y.getPropertyValue(i, "width", null, !0)) || 1) / 100, r.percentToPxHeight = M.lastPercentToPxHeight = (parseFloat(Y.getPropertyValue(i, "height", null, !0)) || 1) / 100, r.emToPx = M.lastEmToPx = (parseFloat(Y.getPropertyValue(i, "paddingLeft")) || 1) / 100, e.myParent.removeChild(i)), null === M.remToPx && (M.remToPx = parseFloat(Y.getPropertyValue(R.body, "fontSize")) || 16), null === M.vwToPx && (M.vwToPx = parseFloat(H.innerWidth) / 100, M.vhToPx = parseFloat(H.innerHeight) / 100), r.remToPx = M.remToPx, r.vwToPx = M.vwToPx, r.vhToPx = M.vhToPx, Q.debug, r
4249                                                    }();
4250                                                    var k = /margin|padding|left|right|width|text|word|letter/i.test(e) || /X$/.test(e) || "x" === e ? "x" : "y";
4251                                                    switch (l) {
4252                                                        case"%":
4253                                                            s *= "x" == k ? D.percentToPxWidth : D.percentToPxHeight;
4254                                                            break;
4255                                                        case"px":
4256                                                            break;
4257                                                        default:
4258                                                            s *= D[l + "ToPx"]
4259                                                    }
4260                                                    switch (a) {
4261                                                        case"%":
4262                                                            s *= 1 / ("x" == k ? D.percentToPxWidth : D.percentToPxHeight);
4263                                                            break;
4264                                                        case"px":
4265                                                            break;
4266                                                        default:
4267                                                            s *= 1 / D[a + "ToPx"]
4268                                                    }
4269                                                }
4270                                                switch (c) {
4271                                                    case"+":
4272                                                        r = s + r;
4273                                                        break;
4274                                                    case"-":
4275                                                        r = s - r;
4276                                                        break;
4277                                                    case"*":
4278                                                        r *= s;
4279                                                        break;
4280                                                    case"/":
4281                                                        r = s / r
4282                                                }
4283                                                j[e] = {
4284                                                    rootPropertyValue: i,
4285                                                    startValue: s,
4286                                                    currentValue: s,
4287                                                    endValue: r,
4288                                                    unitType: a,
4289                                                    easing: o
4290                                                }, u && (j[e].pattern = u), Q.debug
4291                                            } else Q.debug
4292                                        };
4293                                        for (p in A) if (A.hasOwnProperty(p)) {
4294                                            var m = Y.Names.camel
4294Case(p),
4295                                                g = (n = A[p], s = o = r = i = void 0, $.isFunction(n) && (n = n.call(P, C, F)), $.isArray(n) ? (r = n[0], s = !$.isArray(n[1]) && /^[\d-]/.test(n[1]) || $.isFunction(n[1]) || Y.RegEx.isHex.test(n[1]) ? n[1] : $.isString(n[1]) && !Y.RegEx.isHex.test(n[1]) && Q.Easings[n[1]] || $.isArray(n[1]) ? (o = i ? n[1] : X(n[1], N.duration), n[2]) : n[1] || n[2]) : r = n, i || (o = o || N.easing), [(r = $.isFunction(r) ? r.call(P, C, F) : r) || 0, o, s = $.isFunction(s) ? s.call(P, C, F) : s]);
4296                                            if (z(Y.Lists.colors)) {
4297                                                var y = g[0], v = g[1], b = g[2];
4298                                                if (Y.RegEx.isHex.test(y)) {
4299                                                    for (var w = ["Red", "Green", "Blue"], S = Y.Values.hexToRgb(y), x = b ? Y.Values.hexToRgb(b) : q, _ = 0; _ < w.length; _++) {
4300                                                        var T = [S[_]];
4301                                                        v && T.push(v), x !== q && T.push(x[_]), h(m + w[_], T)
4302                                                    }
4303                                                    continue
4304                                                }
4305                                            }
4306                                            h(m, g)
4307                                        }
4308                                        j.element = P
4309                                    }
4310                                    j.element && (Y.Values.addClass(P, "velocity-animating"), W.push(j), (O = K(P)) && ("" === N.queue && (O.tweensContainer = j, O.opts = N), O.isAnimating = !0), L === F - 1 ? (Q.State.calls.push([W, E, N, null, k.resolver, null, 0]), !1 === Q.State.isTicking && (Q.State.isTicking = !0, G())) : L++)
4311                                }
4312
4313                                !1 !== Q.mock && (!0 === Q.mock ? N.duration = N.delay = 1 : (N.duration *= parseFloat(Q.mock) || 1, N.delay *= parseFloat(Q.mock) || 1)), N.easing = X(N.easing, N.duration), N.begin && !$.isFunction(N.begin) && (N.begin = null), N.progress && !$.isFunction(N.progress) && (N.progress = null), N.complete && !$.isFunction(N.complete) && (N.complete = null), N.display !== q && null !== N.display && (N.display = N.display.toString().toLowerCase(), "auto" === N.display && (N.display = Q.CSS.Values.getDisplayType(P))), N.visibility !== q && null !== N.visibility && (N.visibility = N.visibility.toString().toLowerCase()), N.mobileHA = N.mobileHA && Q.State.isMobile && !Q.State.isGingerbread, !1 === N.queue ? N.delay ? (e = Q.State.delayedElements.count++, Q.State.delayedElements[e] = P, t = e, e = function () {
4314                                    Q.State.delayedElements[t] = !1, n()
4315                                }, K(P).delayBegin = (new Date).getTime(), K(P).delay = parseFloat(N.delay), K(P).delayTimer = {
4316                                    setTimeout: setTimeout(n, parseFloat(N.delay)),
4317                                    next: e
4318                                }) : n() : U.queue(P, N.queue, function (e, t) {
4319                                    return !0 === t ? (k.promise && k.resolver(E), !0) : (Q.velocityQueueEntryFlag = !0, void n())
4320                                }), "" !== N.queue && "fx" !== N.queue || "inprogress" === U.queue(P)[0] || U.dequeue(P)
4321                            }
4322
4323                            k.promise && (A && V && !1 === V.promiseRejectEmpty ? k.resolver() : k.rejecter())
4324                        };
4325                        (Q = U.extend(l, Q)).animate = l;
4326                        var E = H.requestAnimationFrame || n;
4327                        return Q.State.isMobile || R.hidden === q || ((o = function () {
4328                            R.hidden ? (E = function (e) {
4329                                return setTimeout(function () {
4330                                    e(!0)
4331                                }, 16)
4332                            }, G()) : E = H.requestAnimationFrame || n
4333                        })(), R.addEventListener("visibilitychange", o)), e.Velocity = Q, e !== H && (e.fn.velocity = l, e.fn.velocity.defaults = Q.defaults), U.each(["Down", "Up"], function (e, u) {
4334                            Q.Redirects["slide" + u] = function (n, e, i, t, r, o) {
4335                                var e = U.extend({}, e), s = e.begin, a = e.complete, l = {}, c = {
4336                                    height: "",
4337                                    marginTop: "",
4338                                    marginBottom: "",
4339                                    paddingTop: "",
4340                                    paddingBottom: ""
4341                                };
4342                                e.display === q && (e.display = "Down" === u ? "inline" === Q.CSS.Values.getDisplayType(n) ? "inline-block" : "block" : "none"), e.begin = function () {
4343                                    for (var e in 0 === i && s && s.call(r, r), c) {
4344                                        var t;
4345                                        c.hasOwnProperty(e) && (l[e] = n.style[e], t = Y.getPropertyValue(n, e), c[e] = "Down" === u ? [t, 0] : [0, t])
4346                                    }
4347                                    l.overflow = n.style.overflow, n.style.overflow = "hidden"
4348                                }, e.complete = function () {
4349                                    for (var e in l) l.hasOwnProperty(e) && (n.style[e] = l[e]);
4350                                    i === t - 1 && (a && a.call(r, r), o && o.resolver(r))
4351                                }, Q(n, c, e)
4352                            }
4353                        }), U.each(["In", "Out"], function (e, l) {
4354                            Q.Redirects["fade" + l] = function (e, t, n, i, r, o) {
4355                                var s = U.extend({}, t), a = s.complete, t = {opacity: "In" === l ? 1 : 0};
4356                                0 !== n && (s.begin = null), s.complete = n !== i - 1 ? null : function () {
4357                                    a && a.call(r, r), o && o.resolver(r)
4358                                }, s.display === q && (s.display = "In" === l ? "auto" : "none"), Q(this, t, s)
4359                            }
4360                        }), Q
4361                    }
4362
4363                    function K(e) {
4364                        e = U.data(e, "velocity");
4365                        return null === e ? q : e
4366                    }
4367
4368                    function v(e, t) {
4369                        e = K(e);
4370                        e && e.delayTimer && !e.delayPaused && (e.delayRemaining = e.delay - t + e.delayBegin, e.delayPaused = !0, clearTimeout(e.delayTimer.setTimeout))
4371                    }
4372
4373                    function b(e) {
4374                        e = K(e);
4375                        e && e.delayTimer && e.delayPaused && (e.delayPaused = !1, e.delayTimer.setTimeout = setTimeout(e.delayTimer.next, e.delayRemaining))
4376                    }
4377
4378                    function c(s, t, a, n) {
4379                        var l = 4, c = 1e-7, u = 10, f = 11, d = 1 / (f - 1), e = "Float32Array" in H;
4380                        if (4 !== arguments.length) return !1;
4381                        for (var i = 0; i < 4; ++i) if ("number" != typeof arguments[i] || isNaN(arguments[i]) || !isFinite(arguments[i])) return !1;
4382                        s = Math.min(s, 1), a = Math.min(a, 1), s = Math.max(s, 0), a = Math.max(a, 0);
4383                        var p = new (e ? Float32Array : Array)(f);
4384
4385                        function r(e, t) {
4386                            return 1 - 3 * t + 3 * e
4387                        }
4388
4389                        function h(e, t, n) {
4390                            return ((r(t, n) * e + (3 * n - 6 * t)) * e + 3 * t) * e
4391                        }
4392
4393                        function m(e, t, n) {
4394                            return 3 * r(t, n) * e * e + 2 * (3 * n - 6 * t) * e + 3 * t
4395                        }
4396
4397                        function o(e) {
4398                            for (var t = 0, n = 1, i = f - 1; n !== i && p[n] <= e; ++n) t += d;
4399                            var r = t + (e - p[--n]) / (p[n + 1] - p[n]) * d, o = m(r, s, a);
4400                            return .001 <= o ? function (e, t) {
4401                                for (var n = 0; n < l; ++n) {
4402                                    var i = m(t, s, a);
4403                                    if (0 === i) return t;
4404                                    t -= (h(t, s, a) - e) / i
4405                                }
4406                                return t
4407                            }(e, r) : 0 === o ? r : function (e, t, n) {
4408                                for (var i, r, o = 0; 0 < (i = h(r = t + (n - t) / 2, s, a) - e) ? n = r : t = r, Math.abs(i) > c && ++o < u;) ;
4409                                return r
4410                            }(e, t, t + d)
4411                        }
4412
4413                        var g = !1;
4414
4415                        function y() {
4416                            g = !0, s === t && a === n || function () {
4417                                for (var e = 0; e < f; ++e) p[e] = h(e * d, s, a)
4418                            }()
4419                        }
4420
4421                        e = function (e) {
4422                            return g || y(), s === t && a === n ? e : 0 === e ? 0 : 1 === e ? 1 : h(o(e), t, n)
4423                        };
4424                        e.getControlPoints = function () {
4425                            return [{x: s, y: t}, {x: a, y: n}]
4426                        };
4427                        var v = "generateBezier(" + [s, t, a, n] + ")";
4428                        return e.toString = function () {
4429                            return v
4430                        }, e
4431                    }
4432
4433                    function w(e) {
4434                        return -e.tension * e.x - e.friction * e.v
4435                    }
4436
4437                    function S(e, t, n) {
4438                        e = {x: e.x + n.dx * t, v: e.v + n.dv * t, tension: e.tension, friction: e.friction};
4439                        return {dx: e.v, dv: w(e)}
4440                    }
4441
4442                    function X(e, t) {
4443                        var n = e;
4444                        return $.isString(e) ? Q.Easings[e] || (n = !1) : n = $.isArray(e) && 1 === e.length ? function (t) {
4445                            return function (e) {
4446                                return Math.round(e * t) * (1 / t)
4447                            }
4448                        }.apply(null, e) : $.isArray(e) && 2 === e.length ? a.apply(null, e.concat([t])) : !(!$.isArray(e) || 4 !== e.length) && c.apply(null, e), n = !1 === n ? Q.Easings[Q.defaults.easing] ? Q.defaults.easing : s : n
4449                    }
4450
4451                    function G(e) {
4452                        if (e) {
4453                            var t = Q.timestamp && !0 !== e ? e : C.now(), n = Q.State.calls.length;
4454                            1e4 < n && (Q.State.calls = function (e) {
4455                                for (var t = -1, n = e ? e.length : 0, i = []; ++t < n;) {
4456                                    var r = e[t];
4457                                    r && i.push(r)
4458                                }
4459                                return i
4460                            }(Q.State.calls), n = Q.State.calls.length);
4461                            for (var i = 0; i < n; i++) if (Q.State.calls[i]) {
4462                                var r = Q.State.calls[i], o = r[0], s = r[2], a = !!(f = r[3]), l = null, c = r[5],
4463                                    u = r[6], f = f || (Q.State.calls[i][3] = t - 16);
4464                                if (c) {
4465                                    if (!0 !== c.resume) continue;
4466                                    f = r[3] = Math.round(t - u - 16), r[5] = null
4467                                }
4468                                for (var u = r[6] = t - f, d = Math.min(u / s.duration, 1), p = 0, h = o.length; p < h; p++) {
4469                                    var m = o[p], g = m.element;
4470                                    if (K(g)) {
4471                                        var y, v, b, w, S, x, _ = !1;
4472                                        for (y in s.display !== q && null !== s.display && "none" !== s.display && ("flex" === s.display && U.each(["-webkit-box", "-moz-box", "-ms-flexbox", "-webkit-flex"], function (e, t) {
4473                                            Y.setPropertyValue(g, "display", t)
4474                                        }
4474), Y.setPropertyValue(g, "display", s.display)), s.visibility !== q && "hidden" !== s.visibility && Y.setPropertyValue(g, "visibility", s.visibility), m) m.hasOwnProperty(y) && "element" !== y && (v = m[y], b = $.isString(v.easing) ? Q.Easings[v.easing] : v.easing, x = $.isString(v.pattern) ? v.pattern.replace(/{(\d+)(!)?}/g, 1 === d ? function (e, t, n) {
4475                                            t = v.endValue[t];
4476                                            return n ? Math.round(t) : t
4477                                        } : function (e, t, n) {
4478                                            var i = v.startValue[t], t = v.endValue[t] - i, t = i + t * b(d, s, t);
4479                                            return n ? Math.round(t) : t
4480                                        }) : 1 === d ? v.endValue : (S = v.endValue - v.startValue, v.startValue + S * b(d, s, S)), !a && x === v.currentValue || (v.currentValue = x, "tween" === y ? l = x : (Y.Hooks.registered[y] && (w = Y.Hooks.getRoot(y), (S = K(g).rootPropertyValueCache[w]) && (v.rootPropertyValue = S)), x = Y.setPropertyValue(g, y, v.currentValue + (T < 9 && 0 === parseFloat(x) ? "" : v.unitType), v.rootPropertyValue, v.scrollData), Y.Hooks.registered[y] && (Y.Normalizations.registered[w] ? K(g).rootPropertyValueCache[w] = Y.Normalizations.registered[w]("extract", null, x[1]) : K(g).rootPropertyValueCache[w] = x[1]), "transform" === x[0] && (_ = !0))));
4481                                        s.mobileHA && K(g).transformCache.translate3d === q && (K(g).transformCache.translate3d = "(0px, 0px, 0px)", _ = !0), _ && Y.flushTransformCache(g)
4482                                    }
4483                                }
4484                                s.display !== q && "none" !== s.display && (Q.State.calls[i][2].display = !1), s.visibility !== q && "hidden" !== s.visibility && (Q.State.calls[i][2].visibility = !1), s.progress && s.progress.call(r[1], r[1], d, Math.max(0, f + s.duration - t), f, l), 1 === d && O(i)
4485                            }
4486                        }
4487                        Q.State.isTicking && E(G)
4488                    }
4489
4490                    function O(e, t) {
4491                        if (Q.State.calls[e]) {
4492                            for (var n = Q.State.calls[e][0], i = Q.State.calls[e][1], r = Q.State.calls[e][2], o = Q.State.calls[e][4], s = !1, a = 0, l = n.length; a < l; a++) {
4493                                var c = n[a].element;
4494                                t || r.loop || ("none" === r.display && Y.setPropertyValue(c, "display", r.display), "hidden" === r.visibility && Y.setPropertyValue(c, "visibility", r.visibility));
4495                                var u, f = K(c);
4496                                if (!0 === r.loop || U.queue(c)[1] !== q && /\.velocityQueueEntryFlag/i.test(U.queue(c)[1]) || f && (f.isAnimating = !1, u = !(f.rootPropertyValueCache = {}), U.each(Y.Lists.transforms3D, function (e, t) {
4497                                    var n = /^scale/.test(t) ? 1 : 0, i = f.transformCache[t];
4498                                    f.transformCache[t] !== q && new RegExp("^\\(" + n + "[^.]").test(i) && (u = !0, delete f.transformCache[t])
4499                                }), r.mobileHA && (u = !0, delete f.transformCache.translate3d), u && Y.flushTransformCache(c), Y.Values.removeClass(c, "velocity-animating")), !t && r.complete && !r.loop && a === l - 1) try {
4500                                    r.complete.call(i, i)
4501                                } catch (e) {
4502                                    setTimeout(function () {
4503                                        throw e
4504                                    }, 1)
4505                                }
4506                                o && !0 !== r.loop && o(i), f && !0 === r.loop && !t && (U.each(f.tweensContainer, function (e, t) {
4507                                    var n;
4508                                    /^rotate/.test(e) && (parseFloat(t.startValue) - parseFloat(t.endValue)) % 360 == 0 && (n = t.startValue, t.startValue = t.endValue, t.endValue = n), /^backgroundPosition/.test(e) && 100 === parseFloat(t.endValue) && "%" === t.unitType && (t.endValue = 0, t.startValue = 100)
4509                                }), Q(c, "reverse", {
4510                                    loop: !0,
4511                                    delay: r.delay
4512                                })), !1 !== r.queue && U.dequeue(c, r.queue)
4513                            }
4514                            Q.State.calls[e] = !1;
4515                            for (var d = 0, p = Q.State.calls.length; d < p; d++) if (!1 !== Q.State.calls[d]) {
4516                                s = !0;
4517                                break
4518                            }
4519                            !1 === s && (Q.State.isTicking = !1, delete Q.State.calls, Q.State.calls = [])
4520                        }
4521                    }
4522
4523                    jQuery.fn.velocity = jQuery.fn.animate
4524                }(window.jQuery || window.Zepto || window, window, window ? window.document : void 0)
4525            })
4526        }, 226: function (e, t, n) {
4527            e.exports = n.g.Tether = n(158)
4528        }, 609: function (e) {
4529            "use strict";
4530            e.exports = jQuery
4531        }
4532    }, i = {};
4533
4534    function k(e) {
4535        var t = i[e];
4536        if (void 0 !== t) return t.exports;
4537        t = i[e] = {id: e, loaded: !1, exports: {}};
4538        return n[e].call(t.exports, t, t.exports, k), t.loaded = !0, t.exports
4539    }
4540
4541    k.amdO = {}, k.n = function (e) {
4542        var t = e && e.__esModule ? function () {
4543            return e.default
4544        } : function () {
4545            return e
4546        };
4547        return k.d(t, {a: t}), t
4548    }, k.d = function (e, t) {
4549        for (var n in t) k.o(t, n) && !k.o(e, n) && Object.defineProperty(e, n, {enumerable: !0, get: t[n]})
4550    }, k.g = function () {
4551        if ("object" == typeof globalThis) return globalThis;
4552        try {
4553            return this || new Function("return this")()
4554        } catch (e) {
4555            if ("object" == typeof window) return window
4556        }
4557    }(), k.o = function (e, t) {
4558        return Object.prototype.hasOwnProperty.call(e, t)
4559    }, k.nmd = function (e) {
4560        return e.paths = [], e.children || (e.children = []), e
4561    };
4562    !function () {
4563        "use strict";
4564        k(226), k(249), k(144), k(650), k(653);
4565        var e = prestashop, a = k.n(e), e = k(609), l = k.n(e);
4566
4567        function i(e, t) {
4568            var n = t.children().detach();
4569            t.empty().append(e.children().detach()), e.append(n)
4570        }
4571
4572        function r() {
4573            a().responsive.mobile ? l()("*[id^='_desktop_']").each(function (e, t) {
4574                var n = l()("#".concat(t.id.replace("_desktop_", "_mobile_")));
4575                n.length && i(l()(t), n)
4576            }) : l()("*[id^='_mobile_']").each(function (e, t) {
4577                var n = l()("#".concat(t.id.replace("_mobile_", "_desktop_")));
4578                n.length && i(l()(t), n)
4579            }), a().emit("responsive update", {mobile: a().responsive.mobile})
4580        }
4581
4582        a().themeSelectors = {
4583            product: {
4584                tabs: ".tabs .nav-link",
4585                activeNavClass: "js-product-nav-active",
4586                activeTabClass: "js-product-tab-active",
4587                activeTabs: ".tabs .nav-link.active, .js-product-nav-active",
4588                imagesModal: ".js-product-images-modal",
4589                thumb: ".js-thumb",
4590                thumbContainer: ".thumb-container, .js-thumb-container",
4591                arrows: ".js-arrows",
4592                selected: ".selected, .js-thumb-selected",
4593                modalProductCover: ".js-modal-product-cover",
4594                cover: ".js-qv-product-cover"
4595            },
4596            listing: {
4597                searchFilterToggler: "#search_filter_toggler, .js-search-toggler",
4598                searchFiltersWrapper: "#search_filters_wrapper",
4599                searchFilterControls: "#search_filter_controls",
4600                searchFilters: "#search_filters",
4601                activeSearchFilters: "#js-active-search-filters",
4602                listTop: "#js-product-list-top",
4603                product: ".js-product",
4604                list: "#js-product-list",
4605                listBottom: "#js-product-list-bottom",
4606                listHeader: "#js-product-list-header",
4607                searchFiltersClearAll: ".js-search-filters-clear-all",
4608                searchLink: ".js-search-link"
4609            },
4610            order: {returnForm: "#order-return-form, .js-order-return-form"},
4611            arrowDown: ".arrow-down, .js-arrow-down",
4612            arrowUp: ".arrow-up, .js-arrow-up",
4613            clear: ".clear",
4614            fileInput: ".js-file-input",
4615            contentWrapper: "#content-wrapper, .js-content-wrapper",
4616            footer: "#footer, .js-footer",
4617            modalContent: ".js-modal-content",
4618            modal: "#modal, .js-checkout-modal",
4619            touchspin: ".js-touchspin",
4620            checkout: {
4621                termsLink: ".js-terms a",
4622                giftCheckbox: ".js-gift-checkbox",
4623                imagesLink: ".card-block .cart-summary-products p a, .js-show-details",
4624                carrierExtraContent: ".carrier-extra-content, .js-carrier-extra-content"
4625            }
4626        }, l()(document).ready(function () {
4627            a().emit("themeSelectorsInit")
4628        }), a().responsive = a().responsive || {}, a().responsive.current_width = window.innerWidth, a().responsive.min_width = 768, a().responsive.mobile = a().responsive.current_width < a().responsive.min_width, l()(window).on("resize", function () {
4629            var e = a().responsive.current_width, t = a().responsive.min_width, n = window.innerWidth,
4630                t = t <= e && n < t || e < t && t <= n;
4631            a().responsive.current_width = n, a().responsive.mobile = a().responsive.current_width < a().responsive.min_width, t && r()
4632        }), l()(document).ready(function () {
4633            a().responsive.mobile && r()
4634        }), l()(document).ready(function () {
4635            1 === l()("body#checkout").length && (l()(a().themeSelectors.checkout.termsLink).on("click", function (e) {
4636                e.preventDefault();
4637                e = l()(e.target).attr("href");
4638                e && (e += "?content_only=1", l().get(e, function (e) {
4639                    l()(a().themeSelectors.modal).find(a().themeSelectors.modalContent).html(l()(e).find(".page-cms").contents())
4640                }).fail(function (e) {
4641                    a().emit("handleError", {eventType: "clickTerms", resp: e})
4642                })), l()(a().themeSelectors.modal).modal("show")
4643            }), l()(a().themeSelectors.checkout.giftCheckbox).on("click", function () {
4644                l()("#gift").collapse("toggle")
4645            }), l()(a().themeSelectors.checkout.imagesLink).on("click", function () {
4646                var e = l()(this).find("i.material-icons");
4647                "expand_more" === e.text() ? e.text("expand_less") : e.text("expand_more")
4648            })), a().on("updatedDeliveryForm", function (e) {
4649                void 0 !== e.deliveryOption && 0 !== e.deliveryOption.length && (l()(a().themeSelectors.checkout.carrierExtraContent).hide(), e.deliveryOption.next(a().themeSelectors.checkout.carrierExtraContent).slideDown())
4650            })
4651        }), l()(document).ready(function () {
4652            l()("body#order-detail") && l()("".concat(a().themeSelectors.order.returnForm, " table thead input[type=checkbox]")).on("click", function () {
4653                var n = l()(this).prop("checked");
4654                l()("".concat(a().themeSelectors.order.returnForm, " table tbody input[type=checkbox]")).each(function (e, t) {
4655                    l()(t).prop("checked", n)
4656                })
4657            })
4658        });
4659        k(225);
4660
4661        function o(e, t) {
4662            for (var n = 0; n < t.length; n++) {
4663                var i = t[n];
4664                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
4665            }
4666        }
4667
4668        var s = function () {
4669            function e() {
4670                !function (e, t) {
4671                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
4672                }(this, e)
4673            }
4674
4675            var t, n, i;
4676            return t = e, (n = [{
4677                key: "init", value: function () {
4678                    l()(".js-product-miniature").each(function (e, t) {
4679                        var n;
4680                        5 < l()(t).find(".color").length && (n = 0, l()(t).find(".color").each(function (e, t) {
4681                            4 < e && (l()(t).hide(), n += 1)
4682                        }), l()(t).find(".js-count").append("+".concat(n)))
4683                    })
4684                }
4685            }]) && o(t.prototype, n), i && o(t, i), Object.defineProperty(t, "prototype", {writable: !1}), e
4686        }();
4687
4688        function c(e, t) {
4689            for (var n = 0; n < t.length; n++) {
4690                var i = t[n];
4691                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
4692            }
4693        }
4694
4695        l()(document).ready(function () {
4696            var t = window.location.href;
4697            a().on("clickQuickView", function (e) {
4698                e = {
4699                    action: "quickview",
4700                    id_product: e.dataset.idProduct,
4701                    id_product_attribute: e.dataset.idProductAttribute
4702                };
4703                l().post(a().urls.pages.product, e, null, "json").then(function (e) {
4704                    l()("body").append(e.quickview_html);
4705                    l()(".modal-backdrop").remove();
4706                    var t = l()("#quickview-modal-".concat(e.product.id, "-").concat(e.product.id_product_attribute));
4707                    t.modal("show"), n(t), t.on("hidden.bs.modal", function () {
4708                        t.remove()
4709                    })
4710                }).fail(function (e) {
4711                    a().emit("handleError", {eventType: "clickQuickView", resp: e})
4712                })
4713            });
4714            var n = function (e) {
4715                var t = l()(a().themeSelectors.product.arrows), n = e.find(".js-qv-product-images");
4716                l()(a().themeSelectors.product.thumb).on("click", function (e) {
4717                    l()(a().themeSelectors.product.thumb).hasClass("selected") && l()(a().themeSelectors.product.thumb).removeClass("selected"), l()(e.currentTarget).addClass("selected"), l()(a().themeSelectors.product.cover).attr("src", l()(e.target).data("image-large-src"))
4718                }), n.find("li").length <= 4 ? t.hide() : t.on("click", function (e) {
4719                    l()(e.target).hasClass("arrow-up") && l()(".js-qv-product-images").position().top < 0 ? (i("up"), l()(a().themeSelectors.arrowDown).css("opacity", "1")) : l()(e.target).hasClass("arrow-down") && n.position().top + n.height() > l()(".js-qv-mask").height() && (i("down"), l()(a().themeSelectors.arrowUp).css("opacity", "1"))
4720                }), e.find(a().selectors.quantityWanted).TouchSpin({
4721                    verticalbuttons: !0,
4722                    verticalupclass: "material-icons touchspin-up",
4723                    verticaldownclass: "material-icons touchspin-down",
4724                    buttondown_class: "btn btn-touchspin js-touchspin",
4725                    buttonup_class: "btn btn-touchspin js-touchspin",
4726                    min: 1,
4727                    max: 1e6
4728                }), l()(a().themeSelectors.touchspin).off("touchstart.touchspin")
4729            }, i = function (e) {
4730                var t = l()(".js-qv-product-images"), n = l()(".js-qv-product-images li img").height() + 20,
4731                    i = t.position().top;
4732                t.velocity({translateY: "up" === e ? i + n : i - n}, function () {
4733                    0 <= t.position().top ? l()(".arrow-up").css("opacity", ".2") : t.position().top + t.height() <= l()(".js-qv-mask").height() && l()(".arrow-down").css("opacity", ".2")
4734                })
4735            };
4736            l()("body").on("click", a().themeSelectors.listing.searchFilterToggler, function () {
4737                l()(a().themeSelectors.listing.searchFiltersWrapper).removeClass("hidden-sm-down"), l()(a().themeSelectors.contentWrapper).addClass("hidden-sm-down"), l()(a().themeSelectors.footer).addClass("hidden-sm-down")
4738            }), l()("".concat(a().themeSelectors.listing.searchFilterControls, " ").concat(a().themeSelectors.clear)).on("click", function () {
4739                l()(a().themeSelectors.listing.searchFiltersWrapper).addClass("hidden-sm-down"), l()(a().themeSelectors.contentWrapper).removeClass("hidden-sm-down"), l()(a().themeSelectors.footer).removeClass("hidden-sm-down")
4740            }), l()("".concat(a().themeSelectors.listing.searchFilterControls, " .ok")).on("click", function () {
4741                l()(a().themeSelectors.listing.searchFiltersWrapper).addClass("hidden-sm-down"), l()(a().themeSelectors.contentWrapper).removeClass("hidden-sm-down"), l()(a().themeSelectors.footer).removeClass("hidden-sm-down")
4742            });
4743
4744            function r(e) {
4745                if (void 0 !== e.target.dataset.searchUrl) return e.target.dataset.searchUrl;
4746                if (void 0 === l()(e.target).parent()[0].dataset.searchUrl) throw new Error("Can not parse search U
4746RL");
4747                return l()(e.target).parent()[0].dataset.searchUrl
4748            }
4749
4750            l()("body").on("change", "".concat(a().themeSelectors.listing.searchFilters, " input[data-search-url]"), function (e) {
4751                a().emit("updateFacets", r(e))
4752            }), l()("body").on("click", a().themeSelectors.listing.searchFiltersClearAll, function (e) {
4753                a().emit("updateFacets", r(e))
4754            }), l()("body").on("click", a().themeSelectors.listing.searchLink, function (e) {
4755                e.preventDefault(), a().emit("updateFacets", l()(e.target).closest("a").get(0).href)
4756            }), l()(a().themeSelectors.listing.list).length && window.addEventListener("popstate", function (e) {
4757                e = e.state;
4758                window.location.href = e && e.current_url ? e.current_url : t
4759            }), l()("body").on("change", "".concat(a().themeSelectors.listing.searchFilters, " select"), function (e) {
4760                e = l()(e.target).closest("form");
4761                a().emit("updateFacets", "?".concat(e.serialize()))
4762            }), a().on("updateProductList", function (e) {
4763                !function (e) {
4764                    l()(a().themeSelectors.listing.searchFilters).replaceWith(e.rendered_facets), l()(a().themeSelectors.listing.activeSearchFilters).replaceWith(e.rendered_active_filters), l()(a().themeSelectors.listing.listTop).replaceWith(e.rendered_products_top);
4765                    var t = l()(e.rendered_products), n = l()(a().themeSelectors.listing.product, t);
4766                    0 < n.length && n.removeClass().addClass(l()(a().themeSelectors.listing.product).first().attr("class"));
4767                    l()(a().themeSelectors.listing.list).replaceWith(t), l()(a().themeSelectors.listing.listBottom).replaceWith(e.rendered_products_bottom), e.rendered_products_header && l()(a().themeSelectors.listing.listHeader).replaceWith(e.rendered_products_header);
4768                    (new s).init()
4769                }(e), window.scrollTo(0, 0)
4770            })
4771        });
4772        var u = function () {
4773            function e() {
4774                !function (e, t) {
4775                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
4776                }(this, e)
4777            }
4778
4779            var t, n, i;
4780            return t = e, (n = [{
4781                key: "init", value: function () {
4782                    var t = this, e = l()(".js-modal-arrows"), n = l()(".js-modal-product-images");
4783                    l()("body").on("click", ".js-modal-thumb", function (e) {
4784                        l()(".js-modal-thumb").hasClass("selected") && l()(".js-modal-thumb").removeClass("selected"), l()(e.currentTarget).addClass("selected"), l()(".js-modal-product-cover").attr("src", l()(e.target).data("image-large-src")), l()(".js-modal-product-cover").attr("title", l()(e.target).attr("title")), l()(".js-modal-product-cover").attr("alt", l()(e.target).attr("alt"))
4785                    }).on("click", "aside#thumbnails", function (e) {
4786                        "thumbnails" === e.target.id && l()("#product-modal").modal("hide")
4787                    }), l()(".js-modal-product-images li").length <= 5 ? e.css("opacity", ".2") : e.on("click", function (e) {
4788                        l()(e.target).hasClass("arrow-up") && n.position().top < 0 ? (t.move("up"), l()(".js-modal-arrow-down").css("opacity", "1")) : l()(e.target).hasClass("arrow-down") && n.position().top + n.height() > l()(".js-modal-mask").height() && (t.move("down"), l()(".js-modal-arrow-up").css("opacity", "1"))
4789                    })
4790                }
4791            }, {
4792                key: "move", value: function (e) {
4793                    var t = l()(".js-modal-product-images"), n = l()(".js-modal-product-images li img").height() + 10,
4794                        i = t.position().top;
4795                    t.velocity({translateY: "up" === e ? i + n : i - n}, function () {
4796                        0 <= t.position().top ? l()(".js-modal-arrow-up").css("opacity", ".2") : t.position().top + t.height() <= l()(".js-modal-mask").height() && l()(".js-modal-arrow-down").css("opacity", ".2")
4797                    })
4798                }
4799            }]) && c(t.prototype, n), i && c(t, i), Object.defineProperty(t, "prototype", {writable: !1}), e
4800        }();
4801        l()(document).ready(function () {
4802            var t, e;
4803
4804            function i() {
4805                function i(e, t) {
4806                    t = t.find(a().themeSelectors.product.thumb), l()(a().themeSelectors.product.modalProductCover).attr("src", t.data("image-large-src")), e.removeClass("selected"), t.addClass("selected"), n.prop("src", t.data("image-medium-src"))
4807                }
4808
4809                var n = l()(a().themeSelectors.product.cover), r = l()(a().themeSelectors.product.selected);
4810                l()(a().themeSelectors.product.thumb).on("click", function (e) {
4811                    r = l()(a().themeSelectors.product.selected), i(r, l()(e.target).closest(a().themeSelectors.product.thumbContainer))
4812                }), n.swipe({
4813                    swipe: function (e, t) {
4814                        var n = (r = l()(a().themeSelectors.product.selected)).closest(a().themeSelectors.product.thumbContainer);
4815                        "right" === t ? 0 < n.prev().length ? i(r, n.prev()) : 0 < n.next().length && i(r, n.next()) : "left" === t && (0 < n.next().length ? i(r, n.next()) : 0 < n.prev().length && i(r, n.prev()))
4816                    }, allowPageScroll: "vertical"
4817                })
4818            }
4819
4820            function r() {
4821                2 < l()("#main .js-qv-product-images li").length ? (l()("#main .js-qv-mask").addClass("scroll"), l()(".scroll-box-arrows").addClass("scroll"), l()("#main .js-qv-mask").scrollbox({
4822                    direction: "h",
4823                    distance: 113,
4824                    autoPlay: !1
4825                }), l()(".scroll-box-arrows .left").click(function () {
4826                    l()("#main .js-qv-mask").trigger("backward")
4827                }), l()(".scroll-box-arrows .right").click(function () {
4828                    l()("#main .js-qv-mask").trigger("forward")
4829                })) : (l()("#main .js-qv-mask").removeClass("scroll"), l()(".scroll-box-arrows").removeClass("scroll"))
4830            }
4831
4832            function o() {
4833                l()(a().themeSelectors.fileInput).on("change", function (e) {
4834                    var t;
4835                    (e = l()(e.currentTarget)[0]) && (t = e.files[0]) && l()(e).prev().text(t.name)
4836                })
4837            }
4838
4839            (t = l()(a().selectors.quantityWanted)).TouchSpin({
4840                verticalbuttons: !0,
4841                verticalupclass: "material-icons touchspin-up",
4842                verticaldownclass: "material-icons touchspin-down",
4843                buttondown_class: "btn btn-touchspin js-touchspin",
4844                buttonup_class: "btn btn-touchspin js-touchspin",
4845                min: parseInt(t.attr("min"), 10),
4846                max: 1e6
4847            }), l()(a().themeSelectors.touchspin).off("touchstart.touchspin"), t.focusout(function () {
4848                ("" === t.val() || t.val() < t.attr("min")) && (t.val(t.attr("min")), t.trigger("change"))
4849            }), l()("body").on("change keyup", a().selectors.quantityWanted, function (e) {
4850                "" !== t.val() && (l()(e.currentTarget).trigger("touchspin.stopspin"), a().emit("updateProduct", {
4851                    eventType: "updatedProductQuantity",
4852                    event: e
4853                }))
4854            }), o(), i(), r(), (e = l()(a().themeSelectors.product.tabs)).on("show.bs.tab", function (e) {
4855                e = l()(e.target);
4856                e.addClass(a().themeSelectors.product.activeNavClass), l()(e.attr("href")).addClass(a().themeSelectors.product.activeTabClass)
4857            }), e.on("hide.bs.tab", function (e) {
4858                e = l()(e.target);
4859                e.removeClass(a().themeSelectors.product.activeNavClass), l()(e.attr("href")).removeClass(a().themeSelectors.product.activeTabClass)
4860            }), a().on("updatedProduct", function (e) {
4861                var t, n;
4862                o(), i(), e && e.product_minimal_quantity && (t = parseInt(e.product_minimal_quantity, 10), n = a().selectors.quantityWanted, l()(n).trigger("touchspin.updatesettings", {min: t})), r(), l()(l()(a().themeSelectors.product.activeTabs).attr("href")).addClass("active").removeClass("fade"), l()(a().themeSelectors.product.imagesModal).replaceWith(e.product_images_modal), (new u).init()
4863            })
4864        }), a().cart = a().cart || {}, a().cart.active_inputs = null;
4865        var f = 'input[name="product-quantity-spin"]', n = !1, d = !1, p = "";
4866
4867        function h() {
4868            l().each(l()(f), function (e, t) {
4869                l()(t).TouchSpin({
4870                    verticalbuttons: !0,
4871                    verticalupclass: "material-icons touchspin-up",
4872                    verticaldownclass: "material-icons touchspin-down",
4873                    buttondown_class: "btn btn-touchspin js-touchspin js-increase-product-quantity",
4874                    buttonup_class: "btn btn-touchspin js-touchspin js-decrease-product-quantity",
4875                    min: parseInt(l()(t).attr("min"), 10),
4876                    max: 1e6
4877                })
4878            }), l()(a().themeSelectors.touchspin).off("touchstart.touchspin"), m.switchErrorStat()
4879        }
4880
4881        l()(document).ready(function () {
4882            var i = ".js-cart-line-product-quantity", o = [];
4883            a().on("updateCart", function () {
4884                l()(".quickview").modal("hide")
4885            }), a().on("updatedCart", function () {
4886                h()
4887            }), h();
4888            var e = l()("body");
4889
4890            function r(e, t) {
4891                if ("on.startupspin" !== (n = t) && "on.startdownspin" !== n) return {
4892                    url: e.attr("href"),
4893                    type: function (e) {
4894                        for (var t, n = e.split("-"), i = "", r = 0; r < n.length; r += 1) t = n[r], i += t = 0 !== r ? t.substring(0, 1).toUpperCase() + t.substring(1) : t;
4895                        return i
4896                    }(e.data("link-action"))
4897                };
4898                var n, e = (e = (e = e).parents(".bootstrap-touchspin").find(i)).is(":focus") ? null : e;
4899                if (!e) return !1;
4900                return "on.startupspin" === t ? {
4901                    url: e.data("up-url"),
4902                    type: "increaseProductQuantity"
4903                } : {url: e.data("down-url"), type: "decreaseProductQuantity"}
4904            }
4905
4906            function t(e) {
4907                e.preventDefault();
4908                var n = l()(e.currentTarget), i = e.currentTarget.dataset, t = r(n, e.namespace);
4909                t && (s(), l().ajax({
4910                    url: t.url,
4911                    method: "POST",
4912                    data: {ajax: "1", action: "update"},
4913                    dataType: "json",
4914                    beforeSend: function (e) {
4915                        o.push(e)
4916                    }
4917                }).then(function (e) {
4918                    var t;
4919                    m.checkUpdateOpertation(e), (t = n, l()(t.parents(".bootstrap-touchspin").find("input"))).val(e.quantity), a().emit("updateCart", {
4920                        reason: i,
4921                        resp: e
4922                    })
4923                }).fail(function (e) {
4924                    a().emit("handleError", {eventType: "updateProductInCart", resp: e, cartAction: t.type})
4925                }))
4926            }
4927
4928            var s = function () {
4929                for (; 0 < o.length;) o.pop().abort()
4930            };
4931
4932            function n(e) {
4933                var n, t = l()(e.currentTarget), i = t.data("update-url"), r = t.attr("value"), e = t.val();
4934                e != parseInt(e, 10) || e < 0 || isNaN(e) ? t.val(r) : 0 != (r = e - r) && (t.attr("value", e), i = i, r = r, r = {
4935                    ajax: "1",
4936                    qty: Math.abs(r),
4937                    action: "update",
4938                    op: 0 < r ? "up" : "down"
4939                }, n = t, s(), l().ajax({
4940                    url: i, method: "POST", data: r, dataType: "json", beforeSend: function (e) {
4941                        o.push(e)
4942                    }
4943                }).then(function (e) {
4944                    var t;
4945                    m.checkUpdateOpertation(e), n.val(e.quantity), t = n && n.dataset ? n.dataset : e, a().emit("updateCart", {
4946                        reason: t,
4947                        resp: e
4948                    })
4949                }).fail(function (e) {
4950                    a().emit("handleError", {eventType: "updateProductQuantityInCart", resp: e})
4951                }))
4952            }
4953
4954            e.on("click", '[data-link-action="delete-from-cart"], [data-link-action="remove-voucher"]', t), e.on("touchspin.on.startdownspin", f, t), e.on("touchspin.on.startupspin", f, t), e.on("focusout keyup", i, function (e) {
4955                return ("keyup" !== e.type || 13 === e.keyCode) && n(e), !1
4956            });
4957            e.on("hidden.bs.collapse", "#promo-code", function () {
4958                l()(".display-promo").show(400)
4959            }), e.on("click", ".promo-code-button", function (e) {
4960                e.preventDefault(), l()("#promo-code").collapse("toggle")
4961            }), e.on("click", ".display-promo", function (e) {
4962                l()(e.currentTarget).hide(400)
4963            }), e.on("click", ".js-discount .code", function (e) {
4964                e.stopPropagation();
4965                e = l()(e.currentTarget);
4966                return l()("[name=discount_name]").val(e.text()), l()("#promo-code").collapse("show"), l()(".display-promo").hide(400), !1
4967            })
4968        });
4969        var m = {
4970            switchErrorStat: function () {
4971                var e, t = l()(".checkout a");
4972                (l()("#notifications article.alert-danger").length || "" !== p && !n) && t.addClass("disabled"), "" 
4972!== p ? (e = ' <article class="alert alert-danger" role="alert" data-alert="danger"><ul><li>'.concat(p, "</li></ul></article>"), l()("#notifications .container").html(e), p = "", d = !1, n && t.removeClass("disabled")) : !n && d && (d = n = !1, l()("#notifications .container").html(""), t.removeClass("disabled"))
4973            }, checkUpdateOpertation: function (e) {
4974                n = e.hasOwnProperty("hasError");
4975                e = e.errors || "";
4976                p = e instanceof Array ? e.join(" ") : e, d = !0
4977            }
4978        }, e = k(291), t = k.n(e);
4979
4980        function g(e, t) {
4981            for (var n = 0; n < t.length; n++) {
4982                var i = t[n];
4983                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
4984            }
4985        }
4986
4987        var y = function () {
4988            function t(e) {
4989                !function (e, t) {
4990                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
4991                }(this, t), this.el = e
4992            }
4993
4994            var e, n, i;
4995            return e = t, (n = [{
4996                key: "init", value: function () {
4997                    this.el.on("show.bs.dropdown", function (e, t) {
4998                        (t ? l()("#".concat(t)) : l()(e.target)).find(".dropdown-menu").first().stop(!0, !0).slideDown()
4999                    }), this.el.on("hide.bs.dropdown", function (e, t) {
5000                        (t ? l()("#".concat(t)) : l()(e.target)).find(".dropdown-menu").first().stop(!0, !0).slideUp()
5001                    }), this.el.find("select.link").each(function (e, t) {
5002                        l()(t).on("change", function () {
5003                            window.location = l()(this).val()
5004                        })
5005                    })
5006                }
5007            }]) && g(e.prototype, n), i && g(e, i), Object.defineProperty(e, "prototype", {writable: !1}), t
5008        }();
5009
5010        function v(e, t) {
5011            for (var n = 0; n < t.length; n++) {
5012                var i = t[n];
5013                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
5014            }
5015        }
5016
5017        var b = function () {
5018            function e() {
5019                !function (e, t) {
5020                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
5021                }(this, e)
5022            }
5023
5024            var t, n, i;
5025            return t = e, (n = [{
5026                key: "init", value: function () {
5027                    this.parentFocus(), this.togglePasswordVisibility()
5028                }
5029            }, {
5030                key: "parentFocus", value: function () {
5031                    l()(".js-child-focus").focus(function () {
5032                        l()(this).closest(".js-parent-focus").addClass("focus")
5033                    }), l()(".js-child-focus").focusout(function () {
5034                        l()(this).closest(".js-parent-focus").removeClass("focus")
5035                    })
5036                }
5037            }, {
5038                key: "togglePasswordVisibility", value: function () {
5039                    l()('button[data-action="show-password"]').on("click", function () {
5040                        var e = l()(this).closest(".input-group").children("input.js-visible-password");
5041                        "password" === e.attr("type") ? (e.attr("type", "text"), l()(this).text(l()(this).data("textHide"))) : (e.attr("type", "password"), l()(this).text(l()(this).data("textShow")))
5042                    })
5043                }
5044            }]) && v(t.prototype, n), i && v(t, i), Object.defineProperty(t, "prototype", {writable: !1}), e
5045        }();
5046
5047        function w(e) {
5048            return (w = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
5049                return typeof e
5050            } : function (e) {
5051                return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
5052            })(e)
5053        }
5054
5055        function S(e, t) {
5056            for (var n = 0; n < t.length; n++) {
5057                var i = t[n];
5058                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
5059            }
5060        }
5061
5062        function x() {
5063            return (x = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function (e, t, n) {
5064                var i = function (e, t) {
5065                    for (; !Object.prototype.hasOwnProperty.call(e, t) && null !== (e = C(e));) ;
5066                    return e
5067                }(e, t);
5068                if (i) {
5069                    t = Object.getOwnPropertyDescriptor(i, t);
5070                    return t.get ? t.get.call(arguments.length < 3 ? e : n) : t.value
5071                }
5072            }).apply(this, arguments)
5073        }
5074
5075        function _(e, t) {
5076            return (_ = Object.setPrototypeOf || function (e, t) {
5077                return e.__proto__ = t, e
5078            })(e, t)
5079        }
5080
5081        function T(n) {
5082            var i = function () {
5083                if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
5084                if (Reflect.construct.sham) return !1;
5085                if ("function" == typeof Proxy) return !0;
5086                try {
5087                    return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {
5088                    })), !0
5089                } catch (e) {
5090                    return !1
5091                }
5092            }();
5093            return function () {
5094                var e, t = C(n);
5095                return function (e, t) {
5096                    {
5097                        if (t && ("object" === w(t) || "function" == typeof t)) return t;
5098                        if (void 0 !== t) throw new TypeError("Derived constructors may only return object or undefined")
5099                    }
5100                    return function (e) {
5101                        if (void 0 !== e) return e;
5102                        throw new ReferenceError("this hasn't been initialised - super() hasn't been called")
5103                    }(e)
5104                }(this, i ? (e = C(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments))
5105            }
5106        }
5107
5108        function C(e) {
5109            return (C = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
5110                return e.__proto__ || Object.getPrototypeOf(e)
5111            })(e)
5112        }
5113
5114        var E, A = function () {
5115            !function (e, t) {
5116                if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
5117                Object.defineProperty(e, "prototype", {
5118                    value: Object.create(t && t.prototype, {
5119                        constructor: {
5120                            value: e,
5121                            writable: !0,
5122                            configurable: !0
5123                        }
5124                    }), writable: !1
5125                }), t && _(e, t)
5126            }(r, y);
5127            var e, t, n, i = T(r);
5128
5129            function r() {
5130                return function (e, t) {
5131                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
5132                }(this, r), i.apply(this, arguments)
5133            }
5134
5135            return e = r, (t = [{
5136                key: "init", value: function () {
5137                    var n, i = this, e = this;
5138                    this.el.find("li").hover(function (e) {
5139                        var t;
5140                        i.el.parent().hasClass("mobile") || (t = l()(e.currentTarget).attr("class"), n !== t && (t = Array.prototype.slice.call(e.currentTarget.classList).map(function (e) {
5141                            return "string" == typeof e && ".".concat(e)
5142                        }), (n = t.join("")) && 0 === l()(e.target).data("depth") && l()("".concat(n, " .js-sub-menu")).css({top: l()("".concat(n)).height() + l()("".concat(n)).position().top})))
5143                    }), l()("#menu-icon").on("click", function () {
5144                        l()("#mobile_top_menu_wrapper").toggle(), e.toggleMobileMenu()
5145                    }), this.el.on("click", function (e) {
5146                        i.el.parent().hasClass("mobile") || e.stopPropagation()
5147                    }), a().on("responsive update", function () {
5148                        l()(".js-sub-menu").removeAttr("style"), e.toggleMobileMenu()
5149                    }), x(C(r.prototype), "init", this).call(this)
5150                }
5151            }, {
5152                key: "toggleMobileMenu", value: function () {
5153                    l()("#header").toggleClass("is-open"), l()("#mobile_top_menu_wrapper").is(":visible") ? l()("#notifications, #wrapper, #footer").hide() : l()("#notifications, #wrapper, #footer").show()
5154                }
5155            }]) && S(e.prototype, t), n && S(e, n), Object.defineProperty(e, "prototype", {writable: !1}), r
5156        }();
5157        k(46), k(356);
5158        for (E in a().blockcart = a().blockcart || {}, a().blockcart.showModal = function (e) {
5159            function t() {
5160                return l()("#blockcart-modal")
5161            }
5162
5163            var n = t();
5164            n.length && n.remove(), l()(".modal-backdrop").remove(), l()("body").append(e), (n = t()).modal("show").on("hidden.bs.modal", function (e) {
5165                a().emit("updateProduct", {reason: e.currentTarget.dataset, event: e})
5166            })
5167        }, t().prototype) a()[E] = t().prototype[E];
5168        l()(document).on("show.bs.modal", ".modal", function () {
5169            l()(".modal-backdrop").remove()
5170        }), l()(document).ready(function () {
5171            var e = l()(".js-dropdown"), t = new b, n = l()('.js-top-menu ul[data-depth="0"]'), i = new y(e),
5172                r = new A(n), e = new s, n = new u;
5173            i.init(), t.init(), r.init(), e.init(), n.init(), l()('.carousel[data-touch="true"]').swipe({
5174                swipe: function (e, t) {
5175                    "left" === t && l()(this).carousel("next"), "right" === t && l()(this).carousel("prev")
5176                }, allowPageScroll: "vertical"
5177            })
5178        })
5179    }()
5180}();

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.