PageSourceSearch

https://christian-schmidt.de/js/berlin2020/scripts.js?7892

js christian-schmidt.de collected 2026-10-02 20:50:20 UTC 342,921 bytes, 7,989 lines download raw bytes

vendor: 22,613 bytes, lines 1-483
1! function(e, t) {
2    "use strict";
3    "object" == typeof module && "object" == typeof module.exports ? module.exports = e.document ? t(e, !0) : function(e) {
4        if (!e.document) throw new Error("Fehler: jQuery erfordert ein Fenster mit Dokument");
5        return t(e);
6    } : t(e)
7}("undefined" != typeof window ? window : this, function(C, e) {
8    "use strict";
9    var t = [],
10        E = C.document,
11        r = Object.getPrototypeOf,
12        s = t.slice,
13        g = t.concat,
14        u = t.push,
15        i = t.indexOf,
16        n = {},
17        o = n.toString,
18        v = n.hasOwnProperty,
19        a = v.toString,
20        l = a.call(Object),
21        y = {},
22        m = function(e) {
23            return "function" == typeof e && "number" != typeof e.nodeType;
24        },
25        x = function(e) {
26            return null != e && e === e.window;
27        },
28        c = {
29            type: !0,
30            src: !0,
31            nonce: !0,
32            noModule: !0
33        };
34
35    function b(e, t, n) {
36        var r, i, o = (n = n || E).createElement("script");
37        if (o.text = e, t)
38            for (r in c)(i = t[r] || t.getAttribute && t.getAttribute(r)) && o.setAttribute(r, i);
39        n.head.appendChild(o).parentNode.removeChild(o)
40    }
41
42    function w(e) {
43        return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? n[o.call(e)] || "object" : typeof e
44    }
45    var f = "3.4.1",
46        k = function(e, t) {
47            return new k.fn.init(e, t)
48        },
49        p = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
50
51    function d(e) {
52        var t = !!e && "length" in e && e.length,
53            n = w(e);
54        return !m(e) && !x(e) && ("array" === n || 0 === t || "number" == typeof t && 0 < t && t - 1 in e);
55    }
56    k.fn = k.prototype = {
57        jquery: f,
58        constructor: k,
59        length: 0,
60        toArray: function() {
61            return s.call(this)
62        },
63        get: function(e) {
64            return null == e ? s.call(this) : e < 0 ? this[e + this.length] : this[e];
65        },
66        pushStack: function(e) {
67            var t = k.merge(this.constructor(), e);
68            return t.prevObject = this, t;
69        },
70        each: function(e) {
71            return k.each(this, e);
72        },
73        map: function(n) {
74            return this.pushStack(k.map(this, function(e, t) {
75                return n.call(e, t, e);
76            }))
77        },
78        slice: function() {
79            return this.pushStack(s.apply(this, arguments));
80        },
81        first: function() {
82            return this.eq(0);
83        },
84        last: function() {
85            return this.eq(-1);
86        },
87        eq: function(e) {
88            var t = this.length,
89                n = +e + (e < 0 ? t : 0);
90            return this.pushStack(0 <= n && n < t ? [this[n]] : []);
91        },
92        end: function() {
93            return this.prevObject || this.constructor();
94        },
95        push: u,
96        sort: t.sort,
97        splice: t.splice
98    }, k.extend = k.fn.extend = function() {
99        var e, t, n, r, i, o, a = arguments[0] || {},
100            s = 1,
101            u = arguments.length,
102            l = !1;
103        for ("boolean" == typeof a && (l = a, a = arguments[s] || {}, s++), "object" == typeof a || m(a) || (a = {}), s === u && (a = this, s--); s < u; s++)
104            if (null != (e = arguments[s]))
105                for (t in e) r = e[t], "__proto__" !== t && a !== r && (l && r && (k.isPlainObject(r) || (i = Array.isArray(r))) ? (n = a[t], o = i && !Array.isArray(n) ? [] : i || k.isPlainObject(n) ? n : {}, i = !1, a[t] = k.extend(l, o, r)) : void 0 !== r && (a[t] = r));
106        return a
107    }, k.extend({
108        expando: "jQuery" + (f + Math.random()).replace(/\D/g, ""),
109        isReady: !0,
110        error: function(e) {
111            throw new Error(e)
112        },
113        noop: function() {},
114        isPlainObject: function(e) {
115            var t, n;
116            return !(!e || "[object Object]" !== o.call(e)) && (!(t = r(e)) || "function" == typeof(n = v.call(t, "constructor") && t.constructor) && a.call(n) === l)
117        },
118        isEmptyObject: function(e) {
119            var t;
120            for (t in e) return !1;
121            return !0
122        },
123        globalEval: function(e, t) {
124            b(e, {
125                nonce: t && t.nonce
126            })
127        },
128        each: function(e, t) {
129            var n, r = 0;
130            if (d(e)) {
131                for (n = e.length; r < n; r++)
132                    if (!1 === t.call(e[r], r, e[r])) break
133            } else
134                for (r in e)
135                    if (!1 === t.call(e[r], r, e[r])) break; return e
136        },
137        trim: function(e) {
138            return null == e ? "" : (e + "").replace(p, "")
139        },
140        makeArray: function(e, t) {
141            var n = t || [];
142            return null != e && (d(Object(e)) ? k.merge(n, "string" == typeof e ? [e] : e) : u.call(n, e)), n
143        },
144        inArray: function(e, t, n) {
145            return null == t ? -1 : i.call(t, e, n)
146        },
147        merge: function(e, t) {
148            for (var n = +t.length, r = 0, i = e.length; r < n; r++) e[i++] = t[r];
149            return e.length = i, e
150        },
151        grep: function(e, t, n) {
152            for (var r = [], i = 0, o = e.length, a = !n; i < o; i++) !t(e[i], i) !== a && r.push(e[i]);
153            return r
154        },
155        map: function(e, t, n) {
156            var r, i, o = 0,
157                a = [];
158            if (d(e))
159                for (r = e.length; o < r; o++) null != (i = t(e[o], o, n)) && a.push(i);
160            else
161                for (o in e) null != (i = t(e[o], o, n)) && a.push(i);
162            return g.apply([], a)
163        },
164        guid: 1,
165        support: y
166    }), "function" == typeof Symbol && (k.fn[Symbol.iterator] = t[Symbol.iterator]), k.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(e, t) {
167        n["[object " + t + "]"] = t.toLowerCase()
168    });
169    var h = function(n) {
170        var e, d, b, o, i, h, f, g, w, u, l, T, C, a, E, v, s, c, y, k = "sizzle" + 1 * new Date,
171            m = n.document,
172            S = 0,
173            r = 0,
174            p = ue(),
175            x = ue(),
176            N = ue(),
177            A = ue(),
178            D = function(e, t) {
179                return e === t && (l = !0), 0
180            },
181            j = {}.hasOwnProperty,
182            t = [],
183            q = t.pop,
184            L = t.push,
185            H = t.push,
186            O = t.slice,
187            P = function(e, t) {
188                for (var n = 0, r = e.length; n < r; n++)
189                    if (e[n] === t) return n;
190                return -1
191            },
192            R = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
193            M = "[\\x20\\t\\r\\n\\f]",
194            I = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
195            W = "\\[" + M + "*(" + I + ")(?:" + M + "*([*^$|!~]?=)" + M + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + I + "))|)" + M + "*\\]",
196            $ = ":(" + I + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + W + ")*)|.*)\\)|)",
197            F = new RegExp(M + "+", "g"),
198            B = new RegExp("^" + M + "+|((?:^|[^\\\\])(?:\\\\.)*)" + M + "+$", "g"),
199            _ = new RegExp("^" + M + "*," + M + "*"),
200            z = new RegExp("^" + M + "*([>+~]|" + M + ")" + M + "*"),
201            U = new RegExp(M + "|>"),
202            X = new RegExp($),
203            V = new RegExp("^" + I + "$"),
204            G = {
205                ID: new RegExp("^#(" + I + ")"),
206                CLASS: new RegExp("^\\.(" + I + ")"),
207                TAG: new RegExp("^(" + I + "|[*])"),
208                ATTR: new RegExp("^" + W),
209                PSEUDO: new RegExp("^" + $),
210                CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + M + "*(even|odd|(([+-]|)(\\d*)n|)" + M + "*(?:([+-]|)" + M + "*(\\d+)|))" + M + "*\\)|)", "i"),
211                bool: new RegExp("^(?:" + R + ")$", "i"),
212                needsContext: new RegExp("^" + M + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + M + "*((?:-\\d)?\\d*)" + M + "*\\)|)(?=[^-]|$)", "i")
213            },
214            Y = /HTML$/i,
215            Q = /^(?:input|select|textarea|button)$/i,
216            J = /^h\d$/i,
217            K = /^[^{]+\{\s*\[native \w/,
218            Z = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
219            ee = /[+~]/,
220            te = new RegExp("\\\\([\\da-f]{1,6}" + M + "?|(" + M + ")|.)", "ig"),
221            ne = function(e, t, n) {
222                var r = "0x" + t - 65536;
223                return r != r || n ? t : r < 0 ? String.fromCharCode(r + 65536) : String.fromCharCode(r >> 10 | 55296, 1023 & r | 56320)
224            },
225            re = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
226            ie = function(e, t) {
227                return t ? "\0" === e ? "\ufffd" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e
228            },
229            oe = function() {
230                T()
231            },
232            ae = be(function(e) {
233                return !0 === e.disabled && "fieldset" === e.nodeName.toLowerCase()
234            }, {
235                dir: "parentNode",
236                next: "legend"
237            });
238        try {
239            H.apply(t = O.call(m.childNodes), m.childNodes), t[m.childNodes.length].nodeType
240        } catch (e) {
241            H = {
242                apply: t.length ? function(e, t) {
243                    L.apply(e, O.call(t))
244                } : function(e, t) {
245                    var n = e.length,
246                        r = 0;
247                    while (e[n++] = t[r++]);
248                    e.length = n - 1
249                }
250            }
251        }
252
253        function se(t, e, n, r) {
254            var i, o, a, s, u, l, c, f = e && e.ownerDocument,
255                p = e ? e.nodeType : 9;
256            if (n = n || [], "string" != typeof t || !t || 1 !== p && 9 !== p && 11 !== p) return n;
257            if (!r && ((e ? e.ownerDocument || e : m) !== C && T(e), e = e || C, E)) {
258                if (11 !== p && (u = Z.exec(t)))
259                    if (i = u[1]) {
260                        if (9 === p) {
261                            if (!(a = e.getElementById(i))) return n;
262                            if (a.id === i) return n.push(a), n
263                        } else if (f && (a = f.getElementById(i)) && y(e, a) && a.id === i) return n.push(a), n
264                    } else {
265                        if (u[2]) return H.apply(n, e.getElementsByTagName(t)), n;
266                        if ((i = u[3]) && d.getElementsByClassName && e.getElementsByClassName) return H.apply(n, e.getElementsByClassName(i)), n
267                    }
268                if (d.qsa && !A[t + " "] && (!v || !v.test(t)) && (1 !== p || "object" !== e.nodeName.toLowerCase())) {
269                    if (c = t, f = e, 1 === p && U.test(t)) {
270                        (s = e.getAttribute("id")) ? s = s.replace(re, ie): e.setAttribute("id", s = k), o = (l = h(t)).length;
271                        while (o--) l[o] = "#" + s + " " + xe(l[o]);
272                        c = l.join(","), f = ee.test(t) && ye(e.parentNode) || e
273                    }
274                    try {
275                        return H.apply(n, f.querySelectorAll(c)), n
276                    } catch (e) {
277                        A(t, !0)
278                    } finally {
279                        s === k && e.removeAttribute("id")
280                    }
281                }
282            }
283            return g(t.replace(B, "$1"), e, n, r)
284        }
285
286        function ue() {
287            var r = [];
288            return function e(t, n) {
289                return r.push(t + " ") > b.cacheLength && delete e[r.shift()], e[t + " "] = n
290            }
291        }
292
293        function le(e) {
294            return e[k] = !0, e
295        }
296
297        function ce(e) {
298            var t = C.createElement("fieldset");
299            try {
300                return !!e(t)
301            } catch (e) {
302                return !1
303            } finally {
304                t.parentNode && t.parentNode.removeChild(t), t = null
305            }
306        }
307
308        function fe(e, t) {
309            var n = e.split("|"),
310                r = n.length;
311            while (r--) b.attrHandle[n[r]] = t
312        }
313
314        function pe(e, t) {
315            var n = t && e,
316                r = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex;
317            if (r) return r;
318            if (n)
319                while (n = n.nextSibling)
320                    if (n === t) return -1;
321            return e ? 1 : -1
322        }
323
324        function de(t) {
325            return function(e) {
326                return "input" === e.nodeName.toLowerCase() && e.type === t
327            }
328        }
329
330        function he(n) {
331            return function(e) {
332                var t = e.nodeName.toLowerCase();
333                return ("input" === t || "button" === t) && e.type === n
334            }
335        }
336
337        function ge(t) {
338            return function(e) {
339                return "form" in e ? e.parentNode && !1 === e.disabled ? "label" in e ? "label" in e.parentNode ? e.parentNode.disabled === t : e.disabled === t : e.isDisabled === t || e.isDisabled !== !t && ae(e) === t : e.disabled === t : "label" in e && e.disabled === t
340            }
341        }
342
343        function ve(a) {
344            return le(function(o) {
345                return o = +o, le(function(e, t) {
346                    var n, r = a([], e.length, o),
347                        i = r.length;
348                    while (i--) e[n = r[i]] && (e[n] = !(t[n] = e[n]))
349                })
350            })
351        }
352
353        function ye(e) {
354            return e && "undefined" != typeof e.getElementsByTagName && e
355        }
356        for (e in d = se.support = {}, i = se.isXML = function(e) {
357                var t = e.namespaceURI,
358                    n = (e.ownerDocument || e).documentElement;
359                return !Y.test(t || n && n.nodeName || "HTML")
360            }, T = se.setDocument = function(e) {
361                var t, n, r = e ? e.ownerDocument || e : m;
362                return r !== C && 9 === r.nodeType && r.documentElement && (a = (C = r).documentElement, E = !i(C), m !== C && (n = C.defaultView) && n.top !== n && (n.addEventListener ? n.addEventListener("unload", oe, !1) : n.attachEvent && n.attachEvent("onunload", oe)), d.attributes = ce(function(e) {
363                    return e.className = "i", !e.getAttribute("className")
364                }), d.getElementsByTagName = ce(function(e) {
365                    return e.appendChild(C.createComment("")), !e.getElementsByTagName("*").length
366                }), d.getElementsByClassName = K.test(C.getElementsByClassName), d.getById = ce(function(e) {
367                    return a.appendChild(e).id = k, !C.getElementsByName || !C.getElementsByName(k).length
368                }), d.getById ? (b.filter.ID = function(e) {
369                    var t = e.replace(te, ne);
370                    return function(e) {
371                        return e.getAttribute("id") === t
372                    }
373                }, b.find.ID = function(e, t) {
374                    if ("undefined" != typeof t.getElementById && E) {
375                        var n = t.getElementById(e);
376                        return n ? [n] : []
377                    }
378                }) : (b.filter.ID = function(e) {
379                    var n = e.replace(te, ne);
380                    return function(e) {
381                        var t = "undefined" != typeof e.getAttributeNode && e.getAttributeNode("id");
382                        return t && t.value === n
383                    }
384                }, b.find.ID = function(e, t) {
385                    if ("undefined" != typeof t.getElementById && E) {
386                        var n, r, i, o = t.getElementById(e);
387                        if (o) {
388                            if ((n = o.getAttributeNode("id")) && n.value === e) return [o];
389                            i = t.getElementsByName(e), r = 0;
390                            while (o = i[r++])
391                                if ((n = o.getAttributeNode("id")) && n.value === e) return [o]
392                        }
393                        return []
394                    }
395                }), b.find.TAG = d.getElementsByTagName ? function(e, t) {
396                    return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e) : d.qsa ? t.querySelectorAll(e) : void 0
397                } : function(e, t) {
398                    var n, r = [],
399                        i = 0,
400                        o = t.getElementsByTagName(e);
401                    if ("*" === e) {
402                        while (n = o[i++]) 1 === n.nodeType && r.push(n);
403                        return r
404                    }
405                    return o
406                }, b.find.CLASS = d.getElementsByClassName && function(e, t) {
407                    if ("undefined" != typeof t.getElementsByClassName && E) return t.getElementsByClassName(e)
408                }, s = [], v = [], (d.qsa = K.test(C.querySelectorAll)) && (ce(function(e) {
409                    a.appendChild(e).innerHTML = "<a id='" + k + "'></a><select id='" + k + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && v.push("[*^$]=" + M + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || v.push("\\[" + M + "*(?:value|" + R + ")"), e.querySelectorAll("[id~=" + k + "-]").length || v.push("~="), e.querySelectorAll(":checked").length || v.push(":checked"), e.querySelectorAll("a#" + k + "+*").length || v.push(".#.+[+~]")
410                }), ce(function(e) {
411                    e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
412                    var t = C.createElement("input");
413                    t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && v.push("name" + M + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && v.push(":enabled", ":disabled"), a.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && v.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), v.push(",.*:")
414                })), (d.matchesSelector = K.test(c = a.matches || a.webkitMatchesSelector || a.mozMatchesSelector || a.oMatchesSelector || a.msMatchesSelector)) && ce(function(e) {
415                    d.disconnectedMatch = c.call(e, "*"), c.call(e, "[s!='']:x"), s.push("!=", $)
416                }), v = v.length && new RegExp(v.join("|")), s = s.length && new RegExp(s.join("|")), t = K.test(a.compareDocumentPosition), y = t || K.test(a.contains) ? function(e, t) {
417                    var n = 9 === e.nodeType ? e.documentElement : e,
418                        r = t && t.parentNode;
419                    return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)))
420                } : function(e, t) {
421                    if (t)
422                        while (t = t.parentNode)
423                            if (t === e) return !0;
424                    return !1
425                }, D = t ? function(e, t) {
426                    if (e === t) return l = !0, 0;
427                    var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
428                    return n || (1 & (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !d.sortDetached && t.compareDocumentPosition(e) === n ? e === C || e.ownerDocument === m && y(m, e) ? -1 : t === C || t.ownerDocument === m && y(m, t) ? 1 : u ? P(u, e) - P(u, t) : 0 : 4 & n ? -1 : 1)
429                } : function(e, t) {
430                    if (e === t) return l = !0, 0;
431                    var n, r = 0,
432                        i = e.parentNode,
433                        o = t.parentNode,
434                        a = [e],
435                        s = [t];
436                    if (!i || !o) return e === C ? -1 : t === C ? 1 : i ? -1 : o ? 1 : u ? P(u, e) - P(u, t) : 0;
437                    if (i === o) return pe(e, t);
438                    n = e;
439                    while (n = n.parentNode) a.unshift(n);
440                    n = t;
441                    while (n = n.parentNode) s.unshift(n);
442                    while (a[r] === s[r]) r++;
443                    return r ? pe(a[r], s[r]) : a[r] === m ? -1 : s[r] === m ? 1 : 0
444                }), C
445            }, se.matches = function(e, t) {
446                return se(e, null, null, t)
447            }, se.matchesSelector = function(e, t) {
448                if ((e.ownerDocument || e) !== C && T(e), d.matchesSelector && E && !A[t + " "] && (!s || !s.test(t)) && (!v || !v.test(t))) try {
449                    var n = c.call(e, t);
450                    if (n || d.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n
451                } catch (e) {
452                    A(t, !0)
453                }
454                return 0 < se(t, C, null, [e]).length
455            }, se.contains = function(e, t) {
456                return (e.ownerDocument || e) !== C && T(e), y(e, t)
457            }, se.attr = function(e, t) {
458                (e.ownerDocument || e) !== C && T(e);
459                var n = b.attrHandle[t.toLowerCase()],
460                    r = n && j.call(b.attrHandle, t.toLowerCase()) ? n(e, t, !E) : void 0;
461                return void 0 !== r ? r : d.attributes || !E ? e.getAttribute(t) : (r = e.getAttributeNode(t)) && r.specified ? r.value : null
462            }, se.escape = function(e) {
463                return (e + "").replace(re, ie)
464            }, se.error = function(e) {
465                throw new Error("Syntax error, unrecognized expression: " + e)
466            }, se.uniqueSort = function(e) {
467                var t, n = [],
468                    r = 0,
469                    i = 0;
470                if (l = !d.detectDuplicates, u = !d.sortStable && e.slice(0), e.sort(D), l) {
471                    while (t = e[i++]) t === e[i] && (r = n.push(i));
472                    while (r--) e.splice(n[r], 1)
473                }
474                return u = null, e
475            }, o = se.getText = function(e) {
476                var t, n = "",
477                    r = 0,
478                    i = e.nodeType;
479                if (i) {
480                    if (1 === i || 9 === i || 11 === i) {
481                        if ("string" == typeof e.textContent) return e.textContent;
482                        for (e = e.firstChild; e; e = e.nextSibling) n += o(e)
483                    }
vendor: 12,300 bytes, lines 483-727
483 else if (3 === i || 4 === i) return e.nodeValue
484                } else
485                    while (t = e[r++]) n += o(t);
486                return n
487            }, (b = se.selectors = {
488                cacheLength: 50,
489                createPseudo: le,
490                match: G,
491                attrHandle: {},
492                find: {},
493                relative: {
494                    ">": {
495                        dir: "parentNode",
496                        first: !0
497                    },
498                    " ": {
499                        dir: "parentNode"
500                    },
501                    "+": {
502                        dir: "previousSibling",
503                        first: !0
504                    },
505                    "~": {
506                        dir: "previousSibling"
507                    }
508                },
509                preFilter: {
510                    ATTR: function(e) {
511                        return e[1] = e[1].replace(te, ne), e[3] = (e[3] || e[4] || e[5] || "").replace(te, ne), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4)
512                    },
513                    CHILD: function(e) {
514                        return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || se.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && se.error(e[0]), e
515                    },
516                    PSEUDO: function(e) {
517                        var t, n = !e[6] && e[2];
518                        return G.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && X.test(n) && (t = h(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3))
519                    }
520                },
521                filter: {
522                    TAG: function(e) {
523                        var t = e.replace(te, ne).toLowerCase();
524                        return "*" === e ? function() {
525                            return !0
526                        } : function(e) {
527                            return e.nodeName && e.nodeName.toLowerCase() === t
528                        }
529                    },
530                    CLASS: function(e) {
531                        var t = p[e + " "];
532                        return t || (t = new RegExp("(^|" + M + ")" + e + "(" + M + "|$)")) && p(e, function(e) {
533                            return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute("class") || "")
534                        })
535                    },
536                    ATTR: function(n, r, i) {
537                        return function(e) {
538                            var t = se.attr(e, n);
539                            return null == t ? "!=" === r : !r || (t += "", "=" === r ? t === i : "!=" === r ? t !== i : "^=" === r ? i && 0 === t.indexOf(i) : "*=" === r ? i && -1 < t.indexOf(i) : "$=" === r ? i && t.slice(-i.length) === i : "~=" === r ? -1 < (" " + t.replace(F, " ") + " ").indexOf(i) : "|=" === r && (t === i || t.slice(0, i.length + 1) === i + "-"))
540                        }
541                    },
542                    CHILD: function(h, e, t, g, v) {
543                        var y = "nth" !== h.slice(0, 3),
544                            m = "last" !== h.slice(-4),
545                            x = "of-type" === e;
546                        return 1 === g && 0 === v ? function(e) {
547                            return !!e.parentNode
548                        } : function(e, t, n) {
549                            var r, i, o, a, s, u, l = y !== m ? "nextSibling" : "previousSibling",
550                                c = e.parentNode,
551                                f = x && e.nodeName.toLowerCase(),
552                                p = !n && !x,
553                                d = !1;
554                            if (c) {
555                                if (y) {
556                                    while (l) {
557                                        a = e;
558                                        while (a = a[l])
559                                            if (x ? a.nodeName.toLowerCase() === f : 1 === a.nodeType) return !1;
560                                        u = l = "only" === h && !u && "nextSibling"
561                                    }
562                                    return !0
563                                }
564                                if (u = [m ? c.firstChild : c.lastChild], m && p) {
565                                    d = (s = (r = (i = (o = (a = c)[k] || (a[k] = {}))[a.uniqueID] || (o[a.uniqueID] = {}))[h] || [])[0] === S && r[1]) && r[2], a = s && c.childNodes[s];
566                                    while (a = ++s && a && a[l] || (d = s = 0) || u.pop())
567                                        if (1 === a.nodeType && ++d && a === e) {
568                                            i[h] = [S, s, d];
569                                            break
570                                        }
571                                } else if (p && (d = s = (r = (i = (o = (a = e)[k] || (a[k] = {}))[a.uniqueID] || (o[a.uniqueID] = {}))[h] || [])[0] === S && r[1]), !1 === d)
572                                    while (a = ++s && a && a[l] || (d = s = 0) || u.pop())
573                                        if ((x ? a.nodeName.toLowerCase() === f : 1 === a.nodeType) && ++d && (p && ((i = (o = a[k] || (a[k] = {}))[a.uniqueID] || (o[a.uniqueID] = {}))[h] = [S, d]), a === e)) break;
574                                return (d -= v) === g || d % g == 0 && 0 <= d / g
575                            }
576                        }
577                    },
578                    PSEUDO: function(e, o) {
579                        var t, a = b.pseudos[e] || b.setFilters[e.toLowerCase()] || se.error("unsupported pseudo: " + e);
580                        return a[k] ? a(o) : 1 < a.length ? (t = [e, e, "", o], b.setFilters.hasOwnProperty(e.toLowerCase()) ? le(function(e, t) {
581                            var n, r = a(e, o),
582                                i = r.length;
583                            while (i--) e[n = P(e, r[i])] = !(t[n] = r[i])
584                        }) : function(e) {
585                            return a(e, 0, t)
586                        }) : a
587                    }
588                },
589                pseudos: {
590                    not: le(function(e) {
591                        var r = [],
592                            i = [],
593                            s = f(e.replace(B, "$1"));
594                        return s[k] ? le(function(e, t, n, r) {
595                            var i, o = s(e, null, r, []),
596                                a = e.length;
597                            while (a--)(i = o[a]) && (e[a] = !(t[a] = i))
598                        }) : function(e, t, n) {
599                            return r[0] = e, s(r, null, n, i), r[0] = null, !i.pop()
600                        }
601                    }),
602                    has: le(function(t) {
603                        return function(e) {
604                            return 0 < se(t, e).length
605                        }
606                    }),
607                    contains: le(function(t) {
608                        return t = t.replace(te, ne),
609                            function(e) {
610                                return -1 < (e.textContent || o(e)).indexOf(t)
611                            }
612                    }),
613                    lang: le(function(n) {
614                        return V.test(n || "") || se.error("unsupported lang: " + n), n = n.replace(te, ne).toLowerCase(),
615                            function(e) {
616                                var t;
617                                do {
618                                    if (t = E ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) return (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-")
619                                } while ((e = e.parentNode) && 1 === e.nodeType);
620                                return !1
621                            }
622                    }),
623                    target: function(e) {
624                        var t = n.location && n.location.hash;
625                        return t && t.slice(1) === e.id
626                    },
627                    root: function(e) {
628                        return e === a
629                    },
630                    focus: function(e) {
631                        return e === C.activeElement && (!C.hasFocus || C.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
632                    },
633                    enabled: ge(!1),
634                    disabled: ge(!0),
635                    checked: function(e) {
636                        var t = e.nodeName.toLowerCase();
637                        return "input" === t && !!e.checked || "option" === t && !!e.selected
638                    },
639                    selected: function(e) {
640                        return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected
641                    },
642                    empty: function(e) {
643                        for (e = e.firstChild; e; e = e.nextSibling)
644                            if (e.nodeType < 6) return !1;
645                        return !0
646                    },
647                    parent: function(e) {
648                        return !b.pseudos.empty(e)
649                    },
650                    header: function(e) {
651                        return J.test(e.nodeName)
652                    },
653                    input: function(e) {
654                        return Q.test(e.nodeName)
655                    },
656                    button: function(e) {
657                        var t = e.nodeName.toLowerCase();
658                        return "input" === t && "button" === e.type || "button" === t
659                    },
660                    text: function(e) {
661                        var t;
662                        return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase())
663                    },
664                    first: ve(function() {
665                        return [0]
666                    }),
667                    last: ve(function(e, t) {
668                        return [t - 1]
669                    }),
670                    eq: ve(function(e, t, n) {
671                        return [n < 0 ? n + t : n]
672                    }),
673                    even: ve(function(e, t) {
674                        for (var n = 0; n < t; n += 2) e.push(n);
675                        return e
676                    }),
677                    odd: ve(function(e, t) {
678                        for (var n = 1; n < t; n += 2) e.push(n);
679                        return e
680                    }),
681                    lt: ve(function(e, t, n) {
682                        for (var r = n < 0 ? n + t : t < n ? t : n; 0 <= --r;) e.push(r);
683                        return e
684                    }),
685                    gt: ve(function(e, t, n) {
686                        for (var r = n < 0 ? n + t : n; ++r < t;) e.push(r);
687                        return e
688                    })
689                }
690            }).pseudos.nth = b.pseudos.eq, {
691                radio: !0,
692                checkbox: !0,
693                file: !0,
694                password: !0,
695                image: !0
696            }) b.pseudos[e] = de(e);
697        for (e in {
698                submit: !0,
699                reset: !0
700            }) b.pseudos[e] = he(e);
701
702        function me() {}
703
704        function xe(e) {
705            for (var t = 0, n = e.length, r = ""; t < n; t++) r += e[t].value;
706            return r
707        }
708
709        function be(s, e, t) {
710            var u = e.dir,
711                l = e.next,
712                c = l || u,
713                f = t && "parentNode" === c,
714                p = r++;
715            return e.first ? function(e, t, n) {
716                while (e = e[u])
717                    if (1 === e.nodeType || f) return s(e, t, n);
718                return !1
719            } : function(e, t, n) {
720                var r, i, o, a = [S, p];
721                if (n) {
722                    while (e = e[u])
723                        if ((1 === e.nodeType || f) && s(e, t, n)) return !0
724                } else
725                    while (e = e[u])
726                        if (1 === e.nodeType || f)
727                            if (i = (o = e[k] || (e[k] = {}))[e.uniqueID] || (o[e.uniqueID] = {}
vendor: 5,218 bytes, lines 727-835
727), l && l === e.nodeName.toLowerCase()) e = e[u] || e;
728                            else {
729                                if ((r = i[c]) && r[0] === S && r[1] === p) return a[2] = r[2];
730                                if ((i[c] = a)[2] = s(e, t, n)) return !0
731                            } return !1
732            }
733        }
734
735        function we(i) {
736            return 1 < i.length ? function(e, t, n) {
737                var r = i.length;
738                while (r--)
739                    if (!i[r](e, t, n)) return !1;
740                return !0
741            } : i[0]
742        }
743
744        function Te(e, t, n, r, i) {
745            for (var o, a = [], s = 0, u = e.length, l = null != t; s < u; s++)(o = e[s]) && (n && !n(o, r, i) || (a.push(o), l && t.push(s)));
746            return a
747        }
748
749        function Ce(d, h, g, v, y, e) {
750            return v && !v[k] && (v = Ce(v)), y && !y[k] && (y = Ce(y, e)), le(function(e, t, n, r) {
751                var i, o, a, s = [],
752                    u = [],
753                    l = t.length,
754                    c = e || function(e, t, n) {
755                        for (var r = 0, i = t.length; r < i; r++) se(e, t[r], n);
756                        return n
757                    }(h || "*", n.nodeType ? [n] : n, []),
758                    f = !d || !e && h ? c : Te(c, s, d, n, r),
759                    p = g ? y || (e ? d : l || v) ? [] : t : f;
760                if (g && g(f, p, n, r), v) {
761                    i = Te(p, u), v(i, [], n, r), o = i.length;
762                    while (o--)(a = i[o]) && (p[u[o]] = !(f[u[o]] = a))
763                }
764                if (e) {
765                    if (y || d) {
766                        if (y) {
767                            i = [], o = p.length;
768                            while (o--)(a = p[o]) && i.push(f[o] = a);
769                            y(null, p = [], i, r)
770                        }
771                        o = p.length;
772                        while (o--)(a = p[o]) && -1 < (i = y ? P(e, a) : s[o]) && (e[i] = !(t[i] = a))
773                    }
774                } else p = Te(p === t ? p.splice(l, p.length) : p), y ? y(null, t, p, r) : H.apply(t, p)
775            })
776        }
777
778        function Ee(e) {
779            for (var i, t, n, r = e.length, o = b.relative[e[0].type], a = o || b.relative[" "], s = o ? 1 : 0, u = be(function(e) {
780                    return e === i
781                }, a, !0), l = be(function(e) {
782                    return -1 < P(i, e)
783                }, a, !0), c = [function(e, t, n) {
784                    var r = !o && (n || t !== w) || ((i = t).nodeType ? u(e, t, n) : l(e, t, n));
785                    return i = null, r
786                }]; s < r; s++)
787                if (t = b.relative[e[s].type]) c = [be(we(c), t)];
788                else {
789                    if ((t = b.filter[e[s].type].apply(null, e[s].matches))[k]) {
790                        for (n = ++s; n < r; n++)
791                            if (b.relative[e[n].type]) break;
792                        return Ce(1 < s && we(c), 1 < s && xe(e.slice(0, s - 1).concat({
793                            value: " " === e[s - 2].type ? "*" : ""
794                        })).replace(B, "$1"), t, s < n && Ee(e.slice(s, n)), n < r && Ee(e = e.slice(n)), n < r && xe(e))
795                    }
796                    c.push(t)
797                }
798            return we(c)
799        }
800        return me.prototype = b.filters = b.pseudos, b.setFilters = new me, h = se.tokenize = function(e, t) {
801            var n, r, i, o, a, s, u, l = x[e + " "];
802            if (l) return t ? 0 : l.slice(0);
803            a = e, s = [], u = b.preFilter;
804            while (a) {
805                for (o in n && !(r = _.exec(a)) || (r && (a = a.slice(r[0].length) || a), s.push(i = [])), n = !1, (r = z.exec(a)) && (n = r.shift(), i.push({
806                        value: n,
807                        type: r[0].replace(B, " ")
808                    }), a = a.slice(n.length)), b.filter) !(r = G[o].exec(a)) || u[o] && !(r = u[o](r)) || (n = r.shift(), i.push({
809                    value: n,
810                    type: o,
811                    matches: r
812                }), a = a.slice(n.length));
813                if (!n) break
814            }
815            return t ? a.length : a ? se.error(e) : x(e, s).slice(0)
816        }, f = se.compile = function(e, t) {
817            var n, v, y, m, x, r, i = [],
818                o = [],
819                a = N[e + " "];
820            if (!a) {
821                t || (t = h(e)), n = t.length;
822                while (n--)(a = Ee(t[n]))[k] ? i.push(a) : o.push(a);
823                (a = N(e, (v = o, m = 0 < (y = i).length, x = 0 < v.length, r = function(e, t, n, r, i) {
824                    var o, a, s, u = 0,
825                        l = "0",
826                        c = e && [],
827                        f = [],
828                        p = w,
829                        d = e || x && b.find.TAG("*", i),
830                        h = S += null == p ? 1 : Math.random() || .1,
831                        g = d.length;
832                    for (i && (w = t === C || t || i); l !== g && null != (o = d[l]); l++) {
833                        if (x && o) {
834                            a = 0, t || o.ownerDocument === C || (T(o), n = !E);
835                            while (s = v[a++])
vendor: 6,185 bytes, lines 836-962
836                                if (s(o, t || C, n)) {
837                                    r.push(o);
838                                    break
839                                }
840                            i && (S = h)
841                        }
842                        m && ((o = !s && o) && u--, e && c.push(o))
843                    }
844                    if (u += l, m && l !== u) {
845                        a = 0;
846                        while (s = y[a++]) s(c, f, t, n);
847                        if (e) {
848                            if (0 < u)
849                                while (l--) c[l] || f[l] || (f[l] = q.call(r));
850                            f = Te(f)
851                        }
852                        H.apply(r, f), i && !e && 0 < f.length && 1 < u + y.length && se.uniqueSort(r)
853                    }
854                    return i && (S = h, w = p), c
855                }, m ? le(r) : r))).selector = e
856            }
857            return a
858        }, g = se.select = function(e, t, n, r) {
859            var i, o, a, s, u, l = "function" == typeof e && e,
860                c = !r && h(e = l.selector || e);
861            if (n = n || [], 1 === c.length) {
862                if (2 < (o = c[0] = c[0].slice(0)).length && "ID" === (a = o[0]).type && 9 === t.nodeType && E && b.relative[o[1].type]) {
863                    if (!(t = (b.find.ID(a.matches[0].replace(te, ne), t) || [])[0])) return n;
864                    l && (t = t.parentNode), e = e.slice(o.shift().value.length)
865                }
866                i = G.needsContext.test(e) ? 0 : o.length;
867                while (i--) {
868                    if (a = o[i], b.relative[s = a.type]) break;
869                    if ((u = b.find[s]) && (r = u(a.matches[0].replace(te, ne), ee.test(o[0].type) && ye(t.parentNode) || t))) {
870                        if (o.splice(i, 1), !(e = r.length && xe(o))) return H.apply(n, r), n;
871                        break
872                    }
873                }
874            }
875            return (l || f(e, c))(r, t, !E, n, !t || ee.test(e) && ye(t.parentNode) || t), n
876        }, d.sortStable = k.split("").sort(D).join("") === k, d.detectDuplicates = !!l, T(), d.sortDetached = ce(function(e) {
877            return 1 & e.compareDocumentPosition(C.createElement("fieldset"))
878        }), ce(function(e) {
879            return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href")
880        }) || fe("type|href|height|width", function(e, t, n) {
881            if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
882        }), d.attributes && ce(function(e) {
883            return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
884        }) || fe("value", function(e, t, n) {
885            if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue
886        }), ce(function(e) {
887            return null == e.getAttribute("disabled")
888        }) || fe(R, function(e, t, n) {
889            var r;
890            if (!n) return !0 === e[t] ? t.toLowerCase() : (r = e.getAttributeNode(t)) && r.specified ? r.value : null
891        }), se
892    }(C);
893    k.find = h, k.expr = h.selectors, k.expr[":"] = k.expr.pseudos, k.uniqueSort = k.unique = h.uniqueSort, k.text = h.getText, k.isXMLDoc = h.isXML, k.contains = h.contains, k.escapeSelector = h.escape;
894    var T = function(e, t, n) {
895            var r = [],
896                i = void 0 !== n;
897            while ((e = e[t]) && 9 !== e.nodeType)
898                if (1 === e.nodeType) {
899                    if (i && k(e).is(n)) break;
900                    r.push(e)
901                }
902            return r
903        },
904        S = function(e, t) {
905            for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
906            return n
907        },
908        N = k.expr.match.needsContext;
909
910    function A(e, t) {
911        return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
912    }
913    var D = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;
914
915    function j(e, n, r) {
916        return m(n) ? k.grep(e, function(e, t) {
917            return !!n.call(e, t, e) !== r
918        }) : n.nodeType ? k.grep(e, function(e) {
919            return e === n !== r
920        }) : "string" != typeof n ? k.grep(e, function(e) {
921            return -1 < i.call(n, e) !== r
922        }) : k.filter(n, e, r)
923    }
924    k.filter = function(e, t, n) {
925        var r = t[0];
926        return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === r.nodeType ? k.find.matchesSelector(r, e) ? [r] : [] : k.find.matches(e, k.grep(t, function(e) {
927            return 1 === e.nodeType
928        }))
929    }, k.fn.extend({
930        find: function(e) {
931            var t, n, r = this.length,
932                i = this;
933            if ("string" != typeof e) return this.pushStack(k(e).filter(function() {
934                for (t = 0; t < r; t++)
935                    if (k.contains(i[t], this)) return !0
936            }));
937            for (n = this.pushStack([]), t = 0; t < r; t++) k.find(e, i[t], n);
938            return 1 < r ? k.uniqueSort(n) : n
939        },
940        filter: function(e) {
941            return this.pushStack(j(this, e || [], !1))
942        },
943        not: function(e) {
944            return this.pushStack(j(this, e || [], !0))
945        },
946        is: function(e) {
947            return !!j(this, "string" == typeof e && N.test(e) ? k(e) : e || [], !1).length
948        }
949    });
950    var q, L = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;
951    (k.fn.init = function(e, t, n) {
952        var r, i;
953        if (!e) return this;
954        if (n = n || q, "string" == typeof e) {
955            if (!(r = "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length ? [null, e, null] : L.exec(e)) || !r[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e);
956            if (r[1]) {
957                if (t = t instanceof k ? t[0] : t, k.merge(this, k.parseHTML(r[1], t && t.nodeType ? t.ownerDocument || t : E, !0)), D.test(r[1]) && k.isPlainObject(t))
958                    for (r in t) m(this[r]) ? this[r](t[r]) : this.attr(r, t[r]);
959                return this
960            }
961            return (i = E.getElementById(r[2])) && (this[0] = i, this.length = 1), this
962        }
vendor: 8,048 bytes, lines 963-1169
963        return e.nodeType ? (this[0] = e, this.length = 1, this) : m(e) ? void 0 !== n.ready ? n.ready(e) : e(k) : k.makeArray(e, this)
964    }).prototype = k.fn, q = k(E);
965    var H = /^(?:parents|prev(?:Until|All))/,
966        O = {
967            children: !0,
968            contents: !0,
969            next: !0,
970            prev: !0
971        };
972
973    function P(e, t) {
974        while ((e = e[t]) && 1 !== e.nodeType);
975        return e
976    }
977    k.fn.extend({
978        has: function(e) {
979            var t = k(e, this),
980                n = t.length;
981            return this.filter(function() {
982                for (var e = 0; e < n; e++)
983                    if (k.contains(this, t[e])) return !0
984            })
985        },
986        closest: function(e, t) {
987            var n, r = 0,
988                i = this.length,
989                o = [],
990                a = "string" != typeof e && k(e);
991            if (!N.test(e))
992                for (; r < i; r++)
993                    for (n = this[r]; n && n !== t; n = n.parentNode)
994                        if (n.nodeType < 11 && (a ? -1 < a.index(n) : 1 === n.nodeType && k.find.matchesSelector(n, e))) {
995                            o.push(n);
996                            break
997                        }
998            return this.pushStack(1 < o.length ? k.uniqueSort(o) : o)
999        },
1000        index: function(e) {
1001            return e ? "string" == typeof e ? i.call(k(e), this[0]) : i.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
1002        },
1003        add: function(e, t) {
1004            return this.pushStack(k.uniqueSort(k.merge(this.get(), k(e, t))))
1005        },
1006        addBack: function(e) {
1007            return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
1008        }
1009    }), k.each({
1010        parent: function(e) {
1011            var t = e.parentNode;
1012            return t && 11 !== t.nodeType ? t : null
1013        },
1014        parents: function(e) {
1015            return T(e, "parentNode")
1016        },
1017        parentsUntil: function(e, t, n) {
1018            return T(e, "parentNode", n)
1019        },
1020        next: function(e) {
1021            return P(e, "nextSibling")
1022        },
1023        prev: function(e) {
1024            return P(e, "previousSibling")
1025        },
1026        nextAll: function(e) {
1027            return T(e, "nextSibling")
1028        },
1029        prevAll: function(e) {
1030            return T(e, "previousSibling")
1031        },
1032        nextUntil: function(e, t, n) {
1033            return T(e, "nextSibling", n)
1034        },
1035        prevUntil: function(e, t, n) {
1036            return T(e, "previousSibling", n)
1037        },
1038        siblings: function(e) {
1039            return S((e.parentNode || {}).firstChild, e)
1040        },
1041        children: function(e) {
1042            return S(e.firstChild)
1043        },
1044        contents: function(e) {
1045            return "undefined" != typeof e.contentDocument ? e.contentDocument : (A(e, "template") && (e = e.content || e), k.merge([], e.childNodes))
1046        }
1047    }, function(r, i) {
1048        k.fn[r] = function(e, t) {
1049            var n = k.map(this, i, e);
1050            return "Until" !== r.slice(-5) && (t = e), t && "string" == typeof t && (n = k.filter(t, n)), 1 < this.length && (O[r] || k.uniqueSort(n), H.test(r) && n.reverse()), this.pushStack(n)
1051        }
1052    });
1053    var R = /[^\x20\t\r\n\f]+/g;
1054
1055    function M(e) {
1056        return e
1057    }
1058
1059    function I(e) {
1060        throw e
1061    }
1062
1063    function W(e, t, n, r) {
1064        var i;
1065        try {
1066            e && m(i = e.promise) ? i.call(e).done(t).fail(n) : e && m(i = e.then) ? i.call(e, t, n) : t.apply(void 0, [e].slice(r))
1067        } catch (e) {
1068            n.apply(void 0, [e])
1069        }
1070    }
1071    k.Callbacks = function(r) {
1072        var e, n;
1073        r = "string" == typeof r ? (e = r, n = {}, k.each(e.match(R) || [], function(e, t) {
1074            n[t] = !0
1075        }), n) : k.extend({}, r);
1076        var i, t, o, a, s = [],
1077            u = [],
1078            l = -1,
1079            c = function() {
1080                for (a = a || r.once, o = i = !0; u.length; l = -1) {
1081                    t = u.shift();
1082                    while (++l < s.length) !1 === s[l].apply(t[0], t[1]) && r.stopOnFalse && (l = s.length, t = !1)
1083                }
1084                r.memory || (t = !1), i = !1, a && (s = t ? [] : "")
1085            },
1086            f = {
1087                add: function() {
1088                    return s && (t && !i && (l = s.length - 1, u.push(t)), function n(e) {
1089                        k.each(e, function(e, t) {
1090                            m(t) ? r.unique && f.has(t) || s.push(t) : t && t.length && "string" !== w(t) && n(t)
1091                        })
1092                    }(arguments), t && !i && c()), this
1093                },
1094                remove: function() {
1095                    return k.each(arguments, function(e, t) {
1096                        var n;
1097                        while (-1 < (n = k.inArray(t, s, n))) s.splice(n, 1), n <= l && l--
1098                    }), this
1099                },
1100                has: function(e) {
1101                    return e ? -1 < k.inArray(e, s) : 0 < s.length
1102                },
1103                empty: function() {
1104                    return s && (s = []), this
1105                },
1106                disable: function() {
1107                    return a = u = [], s = t = "", this
1108                },
1109                disabled: function() {
1110                    return !s
1111                },
1112                lock: function() {
1113                    return a = u = [], t || i || (s = t = ""), this
1114                },
1115                locked: function() {
1116                    return !!a
1117                },
1118                fireWith: function(e, t) {
1119                    return a || (t = [e, (t = t || []).slice ? t.slice() : t], u.push(t), i || c()), this
1120                },
1121                fire: function() {
1122                    return f.fireWith(this, arguments), this
1123                },
1124                fired: function() {
1125                    return !!o
1126                }
1127            };
1128        return f
1129    }, k.extend({
1130        Deferred: function(e) {
1131            var o = [
1132                    ["notify", "progress", k.Callbacks("memory"), k.Callbacks("memory"), 2],
1133                    ["resolve", "done", k.Callbacks("once memory"), k.Callbacks("once memory"), 0, "resolved"],
1134                    ["reject", "fail", k.Callbacks("once memory"), k.Callbacks("once memory"), 1, "rejected"]
1135                ],
1136                i = "pending",
1137                a = {
1138                    state: function() {
1139                        return i
1140                    },
1141                    always: function() {
1142                        return s.done(arguments).fail(arguments), this
1143                    },
1144                    "catch": function(e) {
1145                        return a.then(null, e)
1146                    },
1147                    pipe: function() {
1148                        var i = arguments;
1149                        return k.Deferred(function(r) {
1150                            k.each(o, function(e, t) {
1151                                var n = m(i[t[4]]) && i[t[4]];
1152                                s[t[1]](function() {
1153                                    var e = n && n.apply(this, arguments);
1154                                    e && m(e.promise) ? e.promise().progress(r.notify).done(r.resolve).fail(r.reject) : r[t[0] + "With"](this, n ? [e] : arguments)
1155                                })
1156                            }), i = null
1157                        }).promise()
1158                    },
1159                    then: function(t, n, r) {
1160                        var u = 0;
1161
1162                        function l(i, o, a, s) {
1163                            return function() {
1164                                var n = this,
1165                                    r = arguments,
1166                                    e = function() {
1167                                        var e, t;
1168                                        if (!(i < u)) {
1169                                            if ((e = a.apply(n, r)) === o.promise()) throw new TypeError("Thenable self
vendor: 9,387 bytes, lines 1169-1391
1169-resolution");
1170                                            t = e && ("object" == typeof e || "function" == typeof e) && e.then, m(t) ? s ? t.call(e, l(u, o, M, s), l(u, o, I, s)) : (u++, t.call(e, l(u, o, M, s), l(u, o, I, s), l(u, o, M, o.notifyWith))) : (a !== M && (n = void 0, r = [e]), (s || o.resolveWith)(n, r))
1171                                        }
1172                                    },
1173                                    t = s ? e : function() {
1174                                        try {
1175                                            e()
1176                                        } catch (e) {
1177                                            k.Deferred.exceptionHook && k.Deferred.exceptionHook(e, t.stackTrace), u <= i + 1 && (a !== I && (n = void 0, r = [e]), o.rejectWith(n, r))
1178                                        }
1179                                    };
1180                                i ? t() : (k.Deferred.getStackHook && (t.stackTrace = k.Deferred.getStackHook()), C.setTimeout(t))
1181                            }
1182                        }
1183                        return k.Deferred(function(e) {
1184                            o[0][3].add(l(0, e, m(r) ? r : M, e.notifyWith)), o[1][3].add(l(0, e, m(t) ? t : M)), o[2][3].add(l(0, e, m(n) ? n : I))
1185                        }).promise()
1186                    },
1187                    promise: function(e) {
1188                        return null != e ? k.extend(e, a) : a
1189                    }
1190                },
1191                s = {};
1192            return k.each(o, function(e, t) {
1193                var n = t[2],
1194                    r = t[5];
1195                a[t[1]] = n.add, r && n.add(function() {
1196                    i = r
1197                }, o[3 - e][2].disable, o[3 - e][3].disable, o[0][2].lock, o[0][3].lock), n.add(t[3].fire), s[t[0]] = function() {
1198                    return s[t[0] + "With"](this === s ? void 0 : this, arguments), this
1199                }, s[t[0] + "With"] = n.fireWith
1200            }), a.promise(s), e && e.call(s, s), s
1201        },
1202        when: function(e) {
1203            var n = arguments.length,
1204                t = n,
1205                r = Array(t),
1206                i = s.call(arguments),
1207                o = k.Deferred(),
1208                a = function(t) {
1209                    return function(e) {
1210                        r[t] = this, i[t] = 1 < arguments.length ? s.call(arguments) : e, --n || o.resolveWith(r, i)
1211                    }
1212                };
1213            if (n <= 1 && (W(e, o.done(a(t)).resolve, o.reject, !n), "pending" === o.state() || m(i[t] && i[t].then))) return o.then();
1214            while (t--) W(i[t], a(t), o.reject);
1215            return o.promise()
1216        }
1217    });
1218    var $ = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
1219    k.Deferred.exceptionHook = function(e, t) {
1220        C.console && C.console.warn && e && $.test(e.name) && C.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t)
1221    }, k.readyException = function(e) {
1222        C.setTimeout(function() {
1223            throw e
1224        })
1225    };
1226    var F = k.Deferred();
1227
1228    function B() {
1229        E.removeEventListener("DOMContentLoaded", B), C.removeEventListener("load", B), k.ready()
1230    }
1231    k.fn.ready = function(e) {
1232        return F.then(e)["catch"](function(e) {
1233            k.readyException(e)
1234        }), this
1235    }, k.extend({
1236        isReady: !1,
1237        readyWait: 1,
1238        ready: function(e) {
1239            (!0 === e ? --k.readyWait : k.isReady) || (k.isReady = !0) !== e && 0 < --k.readyWait || F.resolveWith(E, [k])
1240        }
1241    }), k.ready.then = F.then, "complete" === E.readyState || "loading" !== E.readyState && !E.documentElement.doScroll ? C.setTimeout(k.ready) : (E.addEventListener("DOMContentLoaded", B), C.addEventListener("load", B));
1242    var _ = function(e, t, n, r, i, o, a) {
1243            var s = 0,
1244                u = e.length,
1245                l = null == n;
1246            if ("object" === w(n))
1247                for (s in i = !0, n) _(e, t, s, n[s], !0, o, a);
1248            else if (void 0 !== r && (i = !0, m(r) || (a = !0), l && (a ? (t.call(e, r), t = null) : (l = t, t = function(e, t, n) {
1249                    return l.call(k(e), n)
1250                })), t))
1251                for (; s < u; s++) t(e[s], n, a ? r : r.call(e[s], s, t(e[s], n)));
1252            return i ? e : l ? t.call(e) : u ? t(e[0], n) : o
1253        },
1254        z = /^-ms-/,
1255        U = /-([a-z])/g;
1256
1257    function X(e, t) {
1258        return t.toUpperCase()
1259    }
1260
1261    function V(e) {
1262        return e.replace(z, "ms-").replace(U, X)
1263    }
1264    var G = function(e) {
1265        return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType
1266    };
1267
1268    function Y() {
1269        this.expando = k.expando + Y.uid++
1270    }
1271    Y.uid = 1, Y.prototype = {
1272        cache: function(e) {
1273            var t = e[this.expando];
1274            return t || (t = {}, G(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, {
1275                value: t,
1276                configurable: !0
1277            }))), t
1278        },
1279        set: function(e, t, n) {
1280            var r, i = this.cache(e);
1281            if ("string" == typeof t) i[V(t)] = n;
1282            else
1283                for (r in t) i[V(r)] = t[r];
1284            return i
1285        },
1286        get: function(e, t) {
1287            return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][V(t)]
1288        },
1289        access: function(e, t, n) {
1290            return void 0 === t || t && "string" == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t)
1291        },
1292        remove: function(e, t) {
1293            var n, r = e[this.expando];
1294            if (void 0 !== r) {
1295                if (void 0 !== t) {
1296                    n = (t = Array.isArray(t) ? t.map(V) : (t = V(t)) in r ? [t] : t.match(R) || []).length;
1297                    while (n--) delete r[t[n]]
1298                }(void 0 === t || k.isEmptyObject(r)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando])
1299            }
1300        },
1301        hasData: function(e) {
1302            var t = e[this.expando];
1303            return void 0 !== t && !k.isEmptyObject(t)
1304        }
1305    };
1306    var Q = new Y,
1307        J = new Y,
1308        K = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
1309        Z = /[A-Z]/g;
1310
1311    function ee(e, t, n) {
1312        var r, i;
1313        if (void 0 === n && 1 === e.nodeType)
1314            if (r = "data-" + t.replace(Z, "-$&").toLowerCase(), "string" == typeof(n = e.getAttribute(r))) {
1315                try {
1316                    n = "true" === (i = n) || "false" !== i && ("null" === i ? null : i === +i + "" ? +i : K.test(i) ? JSON.parse(i) : i)
1317                } catch (e) {}
1318                J.set(e, t, n)
1319            } else n = void 0;
1320        return n
1321    }
1322    k.extend({
1323        hasData: function(e) {
1324            return J.hasData(e) || Q.hasData(e)
1325        },
1326        data: function(e, t, n) {
1327            return J.access(e, t, n)
1328        },
1329        removeData: function(e, t) {
1330            J.remove(e, t)
1331        },
1332        _data: function(e, t, n) {
1333            return Q.access(e, t, n)
1334        },
1335        _removeData: function(e, t) {
1336            Q.remove(e, t)
1337        }
1338    }), k.fn.extend({
1339        data: function(n, e) {
1340            var t, r, i, o = this[0],
1341                a = o && o.attributes;
1342            if (void 0 === n) {
1343                if (this.length && (i = J.get(o), 1 === o.nodeType && !Q.get(o, "hasDataAttrs"))) {
1344                    t = a.length;
1345                    while (t--) a[t] && 0 === (r = a[t].name).indexOf("data-") && (r = V(r.slice(5)), ee(o, r, i[r]));
1346                    Q.set(o, "hasDataAttrs", !0)
1347                }
1348                return i
1349            }
1350            return "object" == typeof n ? this.each(function() {
1351                J.set(this, n)
1352            }) : _(this, function(e) {
1353                var t;
1354                if (o && void 0 === e) return void 0 !== (t = J.get(o, n)) ? t : void 0 !== (t = ee(o, n)) ? t : void 0;
1355                this.each(function() {
1356                    J.set(this, n, e)
1357                })
1358            }, null, e, 1 < arguments.length, null, !0)
1359        },
1360        removeData: function(e) {
1361            return this.each(function() {
1362                J.remove(this, e)
1363            })
1364        }
1365    }), k.extend({
1366        queue: function(e, t, n) {
1367            var r;
1368            if (e) return t = (t || "fx") + "queue", r = Q.get(e, t), n && (!r || Array.isArray(n) ? r = Q.access(e, t, k.makeArray(n)) : r.push(n)), r || []
1369        },
1370        dequeue: function(e, t) {
1371            t = t || "fx";
1372            var n = k.queue(e, t),
1373                r = n.length,
1374                i = n.shift(),
1375                o = k._queueHooks(e, t);
1376            "inprogress" === i && (i = n.shift(), r--), i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, function() {
1377                k.dequeue(e, t)
1378            }, o)), !r && o && o.empty.fire()
1379        },
1380        _queueHooks: function(e, t) {
1381            var n = t + "queueHooks";
1382            return Q.get(e, n) || Q.access(e, n, {
1383                empty: k.Callbacks("once memory").add(function() {
1384                    Q.remove(e, [t + "queue", n])
1385                })
1386            })
1387        }
1388    }), k.fn.extend({
1389        queue: function(t, n) {
1390            var e = 2;
1391            return "string" != typeof t && (n = t, t = "fx", e--), arguments.length < e ? k.queue(this[0], t) : void 0 === n ? this 
vendor: 21,031 bytes, lines 1391-1845
1391: this.each(function() {
1392                var e = k.queue(this, t, n);
1393                k._queueHooks(this, t), "fx" === t && "inprogress" !== e[0] && k.dequeue(this, t)
1394            })
1395        },
1396        dequeue: function(e) {
1397            return this.each(function() {
1398                k.dequeue(this, e)
1399            })
1400        },
1401        clearQueue: function(e) {
1402            return this.queue(e || "fx", [])
1403        },
1404        promise: function(e, t) {
1405            var n, r = 1,
1406                i = k.Deferred(),
1407                o = this,
1408                a = this.length,
1409                s = function() {
1410                    --r || i.resolveWith(o, [o])
1411                };
1412            "string" != typeof e && (t = e, e = void 0), e = e || "fx";
1413            while (a--)(n = Q.get(o[a], e + "queueHooks")) && n.empty && (r++, n.empty.add(s));
1414            return s(), i.promise(t)
1415        }
1416    });
1417    var te = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
1418        ne = new RegExp("^(?:([+-])=|)(" + te + ")([a-z%]*)$", "i"),
1419        re = ["Top", "Right", "Bottom", "Left"],
1420        ie = E.documentElement,
1421        oe = function(e) {
1422            return k.contains(e.ownerDocument, e)
1423        },
1424        ae = {
1425            composed: !0
1426        };
1427    ie.getRootNode && (oe = function(e) {
1428        return k.contains(e.ownerDocument, e) || e.getRootNode(ae) === e.ownerDocument
1429    });
1430    var se = function(e, t) {
1431            return "none" === (e = t || e).style.display || "" === e.style.display && oe(e) && "none" === k.css(e, "display")
1432        },
1433        ue = function(e, t, n, r) {
1434            var i, o, a = {};
1435            for (o in t) a[o] = e.style[o], e.style[o] = t[o];
1436            for (o in i = n.apply(e, r || []), t) e.style[o] = a[o];
1437            return i
1438        };
1439
1440    function le(e, t, n, r) {
1441        var i, o, a = 20,
1442            s = r ? function() {
1443                return r.cur()
1444            } : function() {
1445                return k.css(e, t, "")
1446            },
1447            u = s(),
1448            l = n && n[3] || (k.cssNumber[t] ? "" : "px"),
1449            c = e.nodeType && (k.cssNumber[t] || "px" !== l && +u) && ne.exec(k.css(e, t));
1450        if (c && c[3] !== l) {
1451            u /= 2, l = l || c[3], c = +u || 1;
1452            while (a--) k.style(e, t, c + l), (1 - o) * (1 - (o = s() / u || .5)) <= 0 && (a = 0), c /= o;
1453            c *= 2, k.style(e, t, c + l), n = n || []
1454        }
1455        return n && (c = +c || +u || 0, i = n[1] ? c + (n[1] + 1) * n[2] : +n[2], r && (r.unit = l, r.start = c, r.end = i)), i
1456    }
1457    var ce = {};
1458
1459    function fe(e, t) {
1460        for (var n, r, i, o, a, s, u, l = [], c = 0, f = e.length; c < f; c++)(r = e[c]).style && (n = r.style.display, t ? ("none" === n && (l[c] = Q.get(r, "display") || null, l[c] || (r.style.display = "")), "" === r.style.display && se(r) && (l[c] = (u = a = o = void 0, a = (i = r).ownerDocument, s = i.nodeName, (u = ce[s]) || (o = a.body.appendChild(a.createElement(s)), u = k.css(o, "display"), o.parentNode.removeChild(o), "none" === u && (u = "block"), ce[s] = u)))) : "none" !== n && (l[c] = "none", Q.set(r, "display", n)));
1461        for (c = 0; c < f; c++) null != l[c] && (e[c].style.display = l[c]);
1462        return e
1463    }
1464    k.fn.extend({
1465        show: function() {
1466            return fe(this, !0)
1467        },
1468        hide: function() {
1469            return fe(this)
1470        },
1471        toggle: function(e) {
1472            return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function() {
1473                se(this) ? k(this).show() : k(this).hide()
1474            })
1475        }
1476    });
1477    var pe = /^(?:checkbox|radio)$/i,
1478        de = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i,
1479        he = /^$|^module$|\/(?:java|ecma)script/i,
1480        ge = {
1481            option: [1, "<select multiple='multiple'>", "</select>"],
1482            thead: [1, "<table>", "</table>"],
1483            col: [2, "<table><colgroup>", "</colgroup></table>"],
1484            tr: [2, "<table><tbody>", "</tbody></table>"],
1485            td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
1486            _default: [0, "", ""]
1487        };
1488
1489    function ve(e, t) {
1490        var n;
1491        return n = "undefined" != typeof e.getElementsByTagName ? e.getElementsByTagName(t || "*") : "undefined" != typeof e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && A(e, t) ? k.merge([e], n) : n
1492    }
1493
1494    function ye(e, t) {
1495        for (var n = 0, r = e.length; n < r; n++) Q.set(e[n], "globalEval", !t || Q.get(t[n], "globalEval"))
1496    }
1497    ge.optgroup = ge.option, ge.tbody = ge.tfoot = ge.colgroup = ge.caption = ge.thead, ge.th = ge.td;
1498    var me, xe, be = /<|&#?\w+;/;
1499
1500    function we(e, t, n, r, i) {
1501        for (var o, a, s, u, l, c, f = t.createDocumentFragment(), p = [], d = 0, h = e.length; d < h; d++)
1502            if ((o = e[d]) || 0 === o)
1503                if ("object" === w(o)) k.merge(p, o.nodeType ? [o] : o);
1504                else if (be.test(o)) {
1505            a = a || f.appendChild(t.createElement("div")), s = (de.exec(o) || ["", ""])[1].toLowerCase(), u = ge[s] || ge._default, a.innerHTML = u[1] + k.htmlPrefilter(o) + u[2], c = u[0];
1506            while (c--) a = a.lastChild;
1507            k.merge(p, a.childNodes), (a = f.firstChild).textContent = ""
1508        } else p.push(t.createTextNode(o));
1509        f.textContent = "", d = 0;
1510        while (o = p[d++])
1511            if (r && -1 < k.inArray(o, r)) i && i.push(o);
1512            else if (l = oe(o), a = ve(f.appendChild(o), "script"), l && ye(a), n) {
1513            c = 0;
1514            while (o = a[c++]) he.test(o.type || "") && n.push(o)
1515        }
1516        return f
1517    }
1518    me = E.createDocumentFragment().appendChild(E.createElement("div")), (xe = E.createElement("input")).setAttribute("type", "radio"), xe.setAttribute("checked", "checked"), xe.setAttribute("name", "t"), me.appendChild(xe), y.checkClone = me.cloneNode(!0).cloneNode(!0).lastChild.checked, me.innerHTML = "<textarea>x</textarea>", y.noCloneChecked = !!me.cloneNode(!0).lastChild.defaultValue;
1519    var Te = /^key/,
1520        Ce = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
1521        Ee = /^([^.]*)(?:\.(.+)|)/;
1522
1523    function ke() {
1524        return !0
1525    }
1526
1527    function Se() {
1528        return !1
1529    }
1530
1531    function Ne(e, t) {
1532        return e === function() {
1533            try {
1534                return E.activeElement
1535            } catch (e) {}
1536        }() == ("focus" === t)
1537    }
1538
1539    function Ae(e, t, n, r, i, o) {
1540        var a, s;
1541        if ("object" == typeof t) {
1542            for (s in "string" != typeof n && (r = r || n, n = void 0), t) Ae(e, s, n, r, t[s], o);
1543            return e
1544        }
1545        if (null == r && null == i ? (i = n, r = n = void 0) : null == i && ("string" == typeof n ? (i = r, r = void 0) : (i = r, r = n, n = void 0)), !1 === i) i = Se;
1546        else if (!i) return e;
1547        return 1 === o && (a = i, (i = function(e) {
1548            return k().off(e), a.apply(this, arguments)
1549        }).guid = a.guid || (a.guid = k.guid++)), e.each(function() {
1550            k.event.add(this, t, i, r, n)
1551        })
1552    }
1553
1554    function De(e, i, o) {
1555        o ? (Q.set(e, i, !1), k.event.add(e, i, {
1556            namespace: !1,
1557            handler: function(e) {
1558                var t, n, r = Q.get(this, i);
1559                if (1 & e.isTrigger && this[i]) {
1560                    if (r.length)(k.event.special[i] || {}).delegateType && e.stopPropagation();
1561                    else if (r = s.call(arguments), Q.set(this, i, r), t = o(this, i), this[i](), r !== (n = Q.get(this, i)) || t ? Q.set(this, i, !1) : n = {}, r !== n) return e.stopImmediatePropagation(), e.preventDefault(), n.value
1562                } else r.length && (Q.set(this, i, {
1563                    value: k.event.trigger(k.extend(r[0], k.Event.prototype), r.slice(1), this)
1564                }), e.stopImmediatePropagation())
1565            }
1566        })) : void 0 === Q.get(e, i) && k.event.add(e, i, ke)
1567    }
1568    k.event = {
1569        global: {},
1570        add: function(t, e, n, r, i) {
1571            var o, a, s, u, l, c, f, p, d, h, g, v = Q.get(t);
1572            if (v) {
1573                n.handler && (n = (o = n).handler, i = o.selector), i && k.find.matchesSelector(ie, i), n.guid || (n.guid = k.guid++), (u = v.events) || (u = v.events = {}), (a = v.handle) || (a = v.handle = function(e) {
1574                    return "undefined" != typeof k && k.event.triggered !== e.type ? k.event.dispatch.apply(t, arguments) : void 0
1575                }), l = (e = (e || "").match(R) || [""]).length;
1576                while (l--) d = g = (s = Ee.exec(e[l]) || [])[1], h = (s[2] || "").split(".").sort(), d && (f = k.event.special[d] || {}, d = (i ? f.delegateType : f.bindType) || d, f = k.event.special[d] || {}, c = k.extend({
1577                    type: d,
1578                    origType: g,
1579                    data: r,
1580                    handler: n,
1581                    guid: n.guid,
1582                    selector: i,
1583                    needsContext: i && k.expr.match.needsContext.test(i),
1584                    namespace: h.join(".")
1585                }, o), (p = u[d]) || ((p = u[d] = []).delegateCount = 0, f.setup && !1 !== f.setup.call(t, r, h, a) || t.addEventListener && t.addEventListener(d, a)), f.add && (f.add.call(t, c), c.handler.guid || (c.handler.guid = n.guid)), i ? p.splice(p.delegateCount++, 0, c) : p.push(c), k.event.global[d] = !0)
1586            }
1587        },
1588        remove: function(e, t, n, r, i) {
1589            var o, a, s, u, l, c, f, p, d, h, g, v = Q.hasData(e) && Q.get(e);
1590            if (v && (u = v.events)) {
1591                l = (t = (t || "").match(R) || [""]).length;
1592                while (l--)
1593                    if (d = g = (s = Ee.exec(t[l]) || [])[1], h = (s[2] || "").split(".").sort(), d) {
1594                        f = k.event.special[d] || {}, p = u[d = (r ? f.delegateType : f.bindType) || d] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), a = o = p.length;
1595                        while (o--) c = p[o], !i && g !== c.origType || n && n.guid !== c.guid || s && !s.test(c.namespace) || r && r !== c.selector && ("**" !== r || !c.selector) || (p.splice(o, 1), c.selector && p.delegateCount--, f.remove && f.remove.call(e, c));
1596                        a && !p.length && (f.teardown && !1 !== f.teardown.call(e, h, v.handle) || k.removeEvent(e, d, v.handle), delete u[d])
1597                    } else
1598                        for (d in u) k.event.remove(e, d + t[l], n, r, !0);
1599                k.isEmptyObject(u) && Q.remove(e, "handle events")
1600            }
1601        },
1602        dispatch: function(e) {
1603            var t, n, r, i, o, a, s = k.event.fix(e),
1604                u = new Array(arguments.length),
1605                l = (Q.get(this, "events") || {})[s.type] || [],
1606                c = k.event.special[s.type] || {};
1607            for (u[0] = s, t = 1; t < arguments.length; t++) u[t] = arguments[t];
1608            if (s.delegateTarget = this, !c.preDispatch || !1 !== c.preDispatch.call(this, s)) {
1609                a = k.event.handlers.call(this, s, l), t = 0;
1610                while ((i = a[t++]) && !s.isPropagationStopped()) {
1611                    s.currentTarget = i.elem, n = 0;
1612                    while ((o = i.handlers[n++]) && !s.isImmediatePropagationStopped()) s.rnamespace && !1 !== o.namespace && !s.rnamespace.test(o.namespace) || (s.handleObj = o, s.data = o.data, void 0 !== (r = ((k.event.special[o.origType] || {}).handle || o.handler).apply(i.elem, u)) && !1 === (s.result = r) && (s.preventDefault(), s.stopPropagation()))
1613                }
1614                return c.postDispatch && c.postDispatch.call(this, s), s.result
1615            }
1616        },
1617        handlers: function(e, t) {
1618            var n, r, i, o, a, s = [],
1619                u = t.delegateCount,
1620                l = e.target;
1621            if (u && l.nodeType && !("click" === e.type && 1 <= e.button))
1622                for (; l !== this; l = l.parentNode || this)
1623                    if (1 === l.nodeType && ("click" !== e.type || !0 !== l.disabled)) {
1624                        for (o = [], a = {}, n = 0; n < u; n++) void 0 === a[i = (r = t[n]).selector + " "] && (a[i] = r.needsContext ? -1 < k(i, this).index(l) : k.find(i, this, null, [l]).length), a[i] && o.push(r);
1625                        o.length && s.push({
1626                            elem: l,
1627                            handlers: o
1628                        })
1629                    }
1630            return l = this, u < t.length && s.push({
1631                elem: l,
1632                handlers: t.slice(u)
1633            }), s
1634        },
1635        addProp: function(t, e) {
1636            Object.defineProperty(k.Event.prototype, t, {
1637                enumerable: !0,
1638                configurable: !0,
1639                get: m(e) ? function() {
1640                    if (this.originalEvent) return e(this.originalEvent)
1641                } : function() {
1642                    if (this.originalEvent) return this.originalEvent[t]
1643                },
1644                set: function(e) {
1645                    Object.defineProperty(this, t, {
1646                        enumerable: !0,
1647                        configurable: !0,
1648                        writable: !0,
1649                        value: e
1650                    })
1651                }
1652            })
1653        },
1654        fix: function(e) {
1655            return e[k.expando] ? e : new k.Event(e)
1656        },
1657        special: {
1658            load: {
1659                noBubble: !0
1660            },
1661            click: {
1662                setup: function(e) {
1663                    var t = this || e;
1664                    return pe.test(t.type) && t.click && A(t, "input") && De(t, "click", ke), !1
1665                },
1666                trigger: function(e) {
1667                    var t = this || e;
1668                    return pe.test(t.type) && t.click && A(t, "input") && De(t, "click"), !0
1669                },
1670                _default: function(e) {
1671                    var t = e.target;
1672                    return pe.test(t.type) && t.click && A(t, "input") && Q.get(t, "click") || A(t, "a")
1673                }
1674            },
1675            beforeunload: {
1676                postDispatch: function(e) {
1677                    void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)
1678                }
1679            }
1680        }
1681    }, k.removeEvent = function(e, t, n) {
1682        e.removeEventListener && e.removeEventListener(t, n)
1683    }, k.Event = function(e, t) {
1684        if (!(this instanceof k.Event)) return new k.Event(e, t);
1685        e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? ke : Se, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && k.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[k.expando] = !0
1686    }, k.Event.prototype = {
1687        constructor: k.Event,
1688        isDefaultPrevented: Se,
1689        isPropagationStopped: Se,
1690        isImmediatePropagationStopped: Se,
1691        isSimulated: !1,
1692        preventDefault: function() {
1693            var e = this.originalEvent;
1694            this.isDefaultPrevented = ke, e && !this.isSimulated && e.preventDefault()
1695        },
1696        stopPropagation: function() {
1697            var e = this.originalEvent;
1698            this.isPropagationStopped = ke, e && !this.isSimulated && e.stopPropagation()
1699        },
1700        stopImmediatePropagation: function() {
1701            var e = this.originalEvent;
1702            this.isImmediatePropagationStopped = ke, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation()
1703        }
1704    }, k.each({
1705        altKey: !0,
1706        bubbles: !0,
1707        cancelable: !0,
1708        changedTouches: !0,
1709        ctrlKey: !0,
1710        detail: !0,
1711        eventPhase: !0,
1712        metaKey: !0,
1713        pageX: !0,
1714        pageY: !0,
1715        shiftKey: !0,
1716        view: !0,
1717        "char": !0,
1718        code: !0,
1719        charCode: !0,
1720        key: !0,
1721        keyCode: !0,
1722        button: !0,
1723        buttons: !0,
1724        clientX: !0,
1725        clientY: !0,
1726        offsetX: !0,
1727        offsetY: !0,
1728        pointerId: !0,
1729        pointerType: !0,
1730        screenX: !0,
1731        screenY: !0,
1732        targetTouches: !0,
1733        toElement: !0,
1734        touches: !0,
1735        which: function(e) {
1736            var t = e.button;
1737            return null == e.which && Te.test(e.type) ? null != e.charCode ? e.charCode : e.keyCode : !e.which && void 0 !== t && Ce.test(e.type) ? 1 & t ? 1 : 2 & t ? 3 : 4 & t ? 2 : 0 : e.which
1738        }
1739    }, k.event.addProp), k.each({
1740        focus: "focusin",
1741        blur: "focusout"
1742    }, function(e, t) {
1743        k.event.special[e] = {
1744            setup: function() {
1745                return De(this, e, Ne), !1
1746            },
1747            trigger: function() {
1748                return De(this, e), !0
1749            },
1750            delegateType: t
1751        }
1752    }), k.each({
1753        mouseenter: "mouseover",
1754        mouseleave: "mouseout",
1755        pointerenter: "pointerover",
1756        pointerleave: "pointerout"
1757    }, function(e, i) {
1758        k.event.special[e] = {
1759            delegateType: i,
1760            bindType: i,
1761            handle: function(e) {
1762                var t, n = e.relatedTarget,
1763                    r = e.handleObj;
1764                return n && (n === this || k.contains(this, n)) || (e.type = r.origType, t = r.handler.apply(this, arguments), e.type = i), t
1765            }
1766        }
1767    }), k.fn.extend({
1768        on: function(e, t, n, r) {
1769            return Ae(this, e, t, n, r)
1770        },
1771        one: function(e, t, n, r) {
1772            return Ae(this, e, t, n, r, 1)
1773        },
1774        off: function(e, t, n) {
1775            var r, i;
1776            if (e && e.preventDefault && e.handleObj) return r = e.handleObj, k(e.delegateTarget).off(r.namespace ? r.origType + "." + r.namespace : r.origType, r.selector, r.handler), this;
1777            if ("object" == typeof e) {
1778                for (i in e) this.off(i, t, e[i]);
1779                return this
1780            }
1781            return !1 !== t && "function" != typeof t || (n = t, t = void 0), !1 === n && (n = Se), this.each(function() {
1782                k.event.remove(this, e, n, t)
1783            })
1784        }
1785    });
1786    var je = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
1787        qe = /<script|<style|<link/i,
1788        Le = /checked\s*(?:[^=]|=\s*.checked.)/i,
1789        He = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
1790
1791    function Oe(e, t) {
1792        return A(e, "table") && A(11 !== t.nodeType ? t : t.firstChild, "tr") && k(e).children("tbody")[0] || e
1793    }
1794
1795    function Pe(e) {
1796        return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e
1797    }
1798
1799    function Re(e) {
1800        return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e
1801    }
1802
1803    function Me(e, t) {
1804        var n, r, i, o, a, s, u, l;
1805        if (1 === t.nodeType) {
1806            if (Q.hasData(e) && (o = Q.access(e), a = Q.set(t, o), l = o.events))
1807                for (i in delete a.handle, a.events = {}, l)
1808                    for (n = 0, r = l[i].length; n < r; n++) k.event.add(t, i, l[i][n]);
1809            J.hasData(e) && (s = J.access(e), u = k.extend({}, s), J.set(t, u))
1810        }
1811    }
1812
1813    function Ie(n, r, i, o) {
1814        r = g.apply([], r);
1815        var e, t, a, s, u, l, c = 0,
1816            f = n.length,
1817            p = f - 1,
1818            d = r[0],
1819            h = m(d);
1820        if (h || 1 < f && "string" == typeof d && !y.checkClone && Le.test(d)) return n.each(function(e) {
1821            var t = n.eq(e);
1822            h && (r[0] = d.call(this, e, t.html())), Ie(t, r, i, o)
1823        });
1824        if (f && (t = (e = we(r, n[0].ownerDocument, !1, n, o)).firstChild, 1 === e.childNodes.length && (e = t), t || o)) {
1825            for (s = (a = k.map(ve(e, "script"), Pe)).length; c < f; c++) u = e, c !== p && (u = k.clone(u, !0, !0), s && k.merge(a, ve(u, "script"))), i.call(n[c], u, c);
1826            if (s)
1827                for (l = a[a.length - 1].ownerDocument, k.map(a, Re), c = 0; c < s; c++) u = a[c], he.test(u.type || "") && !Q.access(u, "globalEval") && k.contains(l, u) && (u.src && "module" !== (u.type || "").toLowerCase() ? k._evalUrl && !u.noModule && k._evalUrl(u.src, {
1828                    nonce: u.nonce || u.getAttribute("nonce")
1829                }) : b(u.textContent.replace(He, ""), u, l))
1830        }
1831        return n
1832    }
1833
1834    function We(e, t, n) {
1835        for (var r, i = t ? k.filter(t, e) : e, o = 0; null != (r = i[o]); o++) n || 1 !== r.nodeType || k.cleanData(ve(r)), r.parentNode && (n && oe(r) && ye(ve(r, "script")), r.parentNode.removeChild(r));
1836        return e
1837    }
1838    k.extend({
1839        htmlPrefilter: function(e) {
1840            return e.replace(je, "<$1></$2>")
1841        },
1842        clone: function(e, t, n) {
1843            var r, i, o, a, s, u, l, c = e.cloneNode(!0),
1844                f = oe(e);
1845            if (!(y.noCloneChecked || 1 !== e.nodeType && 11 !== e.
vendor: 4,153 bytes, lines 1845-1941
1845nodeType || k.isXMLDoc(e)))
1846                for (a = ve(c), r = 0, i = (o = ve(e)).length; r < i; r++) s = o[r], u = a[r], void 0, "input" === (l = u.nodeName.toLowerCase()) && pe.test(s.type) ? u.checked = s.checked : "input" !== l && "textarea" !== l || (u.defaultValue = s.defaultValue);
1847            if (t)
1848                if (n)
1849                    for (o = o || ve(e), a = a || ve(c), r = 0, i = o.length; r < i; r++) Me(o[r], a[r]);
1850                else Me(e, c);
1851            return 0 < (a = ve(c, "script")).length && ye(a, !f && ve(e, "script")), c
1852        },
1853        cleanData: function(e) {
1854            for (var t, n, r, i = k.event.special, o = 0; void 0 !== (n = e[o]); o++)
1855                if (G(n)) {
1856                    if (t = n[Q.expando]) {
1857                        if (t.events)
1858                            for (r in t.events) i[r] ? k.event.remove(n, r) : k.removeEvent(n, r, t.handle);
1859                        n[Q.expando] = void 0
1860                    }
1861                    n[J.expando] && (n[J.expando] = void 0)
1862                }
1863        }
1864    }), k.fn.extend({
1865        detach: function(e) {
1866            return We(this, e, !0)
1867        },
1868        remove: function(e) {
1869            return We(this, e)
1870        },
1871        text: function(e) {
1872            return _(this, function(e) {
1873                return void 0 === e ? k.text(this) : this.empty().each(function() {
1874                    1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e)
1875                })
1876            }, null, e, arguments.length)
1877        },
1878        append: function() {
1879            return Ie(this, arguments, function(e) {
1880                1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || Oe(this, e).appendChild(e)
1881            })
1882        },
1883        prepend: function() {
1884            return Ie(this, arguments, function(e) {
1885                if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
1886                    var t = Oe(this, e);
1887                    t.insertBefore(e, t.firstChild)
1888                }
1889            })
1890        },
1891        before: function() {
1892            return Ie(this, arguments, function(e) {
1893                this.parentNode && this.parentNode.insertBefore(e, this)
1894            })
1895        },
1896        after: function() {
1897            return Ie(this, arguments, function(e) {
1898                this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)
1899            })
1900        },
1901        empty: function() {
1902            for (var e, t = 0; null != (e = this[t]); t++) 1 === e.nodeType && (k.cleanData(ve(e, !1)), e.textContent = "");
1903            return this
1904        },
1905        clone: function(e, t) {
1906            return e = null != e && e, t = null == t ? e : t, this.map(function() {
1907                return k.clone(this, e, t)
1908            })
1909        },
1910        html: function(e) {
1911            return _(this, function(e) {
1912                var t = this[0] || {},
1913                    n = 0,
1914                    r = this.length;
1915                if (void 0 === e && 1 === t.nodeType) return t.innerHTML;
1916                if ("string" == typeof e && !qe.test(e) && !ge[(de.exec(e) || ["", ""])[1].toLowerCase()]) {
1917                    e = k.htmlPrefilter(e);
1918                    try {
1919                        for (; n < r; n++) 1 === (t = this[n] || {}).nodeType && (k.cleanData(ve(t, !1)), t.innerHTML = e);
1920                        t = 0
1921                    } catch (e) {}
1922                }
1923                t && this.empty().append(e)
1924            }, null, e, arguments.length)
1925        },
1926        replaceWith: function() {
1927            var n = [];
1928            return Ie(this, arguments, function(e) {
1929                var t = this.parentNode;
1930                k.inArray(this, n) < 0 && (k.cleanData(ve(this)), t && t.replaceChild(e, this))
1931            }, n)
1932        }
1933    }), k.each({
1934        appendTo: "append",
1935        prependTo: "prepend",
1936        insertBefore: "before",
1937        insertAfter: "after",
1938        replaceAll: "replaceWith"
1939    }, function(e, a) {
1940        k.fn[e] = function(e) {
1941            for (var t, n = [], r = k(e), i = r.length - 1, o = 0; o <= i;
vendor: 6,631 bytes, lines 1941-2096
1941 o++) t = o === i ? this : this.clone(!0), k(r[o])[a](t), u.apply(n, t.get());
1942            return this.pushStack(n)
1943        }
1944    });
1945    var $e = new RegExp("^(" + te + ")(?!px)[a-z%]+$", "i"),
1946        Fe = function(e) {
1947            var t = e.ownerDocument.defaultView;
1948            return t && t.opener || (t = C), t.getComputedStyle(e)
1949        },
1950        Be = new RegExp(re.join("|"), "i");
1951
1952    function _e(e, t, n) {
1953        var r, i, o, a, s = e.style;
1954        return (n = n || Fe(e)) && ("" !== (a = n.getPropertyValue(t) || n[t]) || oe(e) || (a = k.style(e, t)), !y.pixelBoxStyles() && $e.test(a) && Be.test(t) && (r = s.width, i = s.minWidth, o = s.maxWidth, s.minWidth = s.maxWidth = s.width = a, a = n.width, s.width = r, s.minWidth = i, s.maxWidth = o)), void 0 !== a ? a + "" : a
1955    }
1956
1957    function ze(e, t) {
1958        return {
1959            get: function() {
1960                if (!e()) return (this.get = t).apply(this, arguments);
1961                delete this.get
1962            }
1963        }
1964    }! function() {
1965        function e() {
1966            if (u) {
1967                s.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", u.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", ie.appendChild(s).appendChild(u);
1968                var e = C.getComputedStyle(u);
1969                n = "1%" !== e.top, a = 12 === t(e.marginLeft), u.style.right = "60%", o = 36 === t(e.right), r = 36 === t(e.width), u.style.position = "absolute", i = 12 === t(u.offsetWidth / 3), ie.removeChild(s), u = null
1970            }
1971        }
1972
1973        function t(e) {
1974            return Math.round(parseFloat(e))
1975        }
1976        var n, r, i, o, a, s = E.createElement("div"),
1977            u = E.createElement("div");
1978        u.style && (u.style.backgroundClip = "content-box", u.cloneNode(!0).style.backgroundClip = "", y.clearCloneStyle = "content-box" === u.style.backgroundClip, k.extend(y, {
1979            boxSizingReliable: function() {
1980                return e(), r
1981            },
1982            pixelBoxStyles: function() {
1983                return e(), o
1984            },
1985            pixelPosition: function() {
1986                return e(), n
1987            },
1988            reliableMarginLeft: function() {
1989                return e(), a
1990            },
1991            scrollboxSize: function() {
1992                return e(), i
1993            }
1994        }))
1995    }();
1996    var Ue = ["Webkit", "Moz", "ms"],
1997        Xe = E.createElement("div").style,
1998        Ve = {};
1999
2000    function Ge(e) {
2001        var t = k.cssProps[e] || Ve[e];
2002        return t || (e in Xe ? e : Ve[e] = function(e) {
2003            var t = e[0].toUpperCase() + e.slice(1),
2004                n = Ue.length;
2005            while (n--)
2006                if ((e = Ue[n] + t) in Xe) return e
2007        }(e) || e)
2008    }
2009    var Ye = /^(none|table(?!-c[ea]).+)/,
2010        Qe = /^--/,
2011        Je = {
2012            position: "absolute",
2013            visibility: "hidden",
2014            display: "block"
2015        },
2016        Ke = {
2017            letterSpacing: "0",
2018            fontWeight: "400"
2019        };
2020
2021    function Ze(e, t, n) {
2022        var r = ne.exec(t);
2023        return r ? Math.max(0, r[2] - (n || 0)) + (r[3] || "px") : t
2024    }
2025
2026    function et(e, t, n, r, i, o) {
2027        var a = "width" === t ? 1 : 0,
2028            s = 0,
2029            u = 0;
2030        if (n === (r ? "border" : "content")) return 0;
2031        for (; a < 4; a += 2) "margin" === n && (u += k.css(e, n + re[a], !0, i)), r ? ("content" === n && (u -= k.css(e, "padding" + re[a], !0, i)), "margin" !== n && (u -= k.css(e, "border" + re[a] + "Width", !0, i))) : (u += k.css(e, "padding" + re[a], !0, i), "padding" !== n ? u += k.css(e, "border" + re[a] + "Width", !0, i) : s += k.css(e, "border" + re[a] + "Width", !0, i));
2032        return !r && 0 <= o && (u += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - u - s - .5)) || 0), u
2033    }
2034
2035    function tt(e, t, n) {
2036        var r = Fe(e),
2037            i = (!y.boxSizingReliable() || n) && "border-box" === k.css(e, "boxSizing", !1, r),
2038            o = i,
2039            a = _e(e, t, r),
2040            s = "offset" + t[0].toUpperCase() + t.slice(1);
2041        if ($e.test(a)) {
2042            if (!n) return a;
2043            a = "auto"
2044        }
2045        return (!y.boxSizingReliable() && i || "auto" === a || !parseFloat(a) && "inline" === k.css(e, "display", !1, r)) && e.getClientRects().length && (i = "border-box" === k.css(e, "boxSizing", !1, r), (o = s in e) && (a = e[s])), (a = parseFloat(a) || 0) + et(e, t, n || (i ? "border" : "content"), o, r, a) + "px"
2046    }
2047
2048    function nt(e, t, n, r, i) {
2049        return new nt.prototype.init(e, t, n, r, i)
2050    }
2051    k.extend({
2052        cssHooks: {
2053            opacity: {
2054                get: function(e, t) {
2055                    if (t) {
2056                        var n = _e(e, "opacity");
2057                        return "" === n ? "1" : n
2058                    }
2059                }
2060            }
2061        },
2062        cssNumber: {
2063            animationIterationCount: !0,
2064            columnCount: !0,
2065            fillOpacity: !0,
2066            flexGrow: !0,
2067            flexShrink: !0,
2068            fontWeight: !0,
2069            gridArea: !0,
2070            gridColumn: !0,
2071            gridColumnEnd: !0,
2072            gridColumnStart: !0,
2073            gridRow: !0,
2074            gridRowEnd: !0,
2075            gridRowStart: !0,
2076            lineHeight: !0,
2077            opacity: !0,
2078            order: !0,
2079            orphans: !0,
2080            widows: !0,
2081            zIndex: !0,
2082            zoom: !0
2083        },
2084        cssProps: {},
2085        style: function(e, t, n, r) {
2086            if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
2087                var i, o, a, s = V(t),
2088                    u = Qe.test(t),
2089                    l = e.style;
2090                if (u || (t = Ge(s)), a = k.cssHooks[t] || k.cssHooks[s], void 0 === n) return a && "get" in a && void 0 !== (i = a.get(e, !1, r)) ? i : l[t];
2091                "string" === (o = typeof n) && (i = ne.exec(n)) && i[1] && (n = le(e, t, i), o = "number"), null != n && n == n && ("number" !== o || u || (n += i && i[3] || (k.cssNumber[s] ? "" : "px")), y.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (l[t] = "inherit"), a && "set" in a && void 0 === (n = a.set(e, n, r)) || (u ? l.setProperty(t, n) : l[t] = n))
2092            }
2093        },
2094        css: function(e, t, n, r) {
2095            var i, o, a, s = V(t);
2096            return Qe.test(t) || (t = Ge(s)), (a = k.cssHooks[t] || k.cssHooks[s]) && "get" in a && (i = a.get(e, !0, n)), void 0 === i && (i = _e(e, t, r)), "n
vendor: 4,288 bytes, lines 2096-2182
2096ormal" === i && t in Ke && (i = Ke[t]), "" === n || n ? (o = parseFloat(i), !0 === n || isFinite(o) ? o || 0 : i) : i
2097        }
2098    }), k.each(["height", "width"], function(e, u) {
2099        k.cssHooks[u] = {
2100            get: function(e, t, n) {
2101                if (t) return !Ye.test(k.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? tt(e, u, n) : ue(e, Je, function() {
2102                    return tt(e, u, n)
2103                })
2104            },
2105            set: function(e, t, n) {
2106                var r, i = Fe(e),
2107                    o = !y.scrollboxSize() && "absolute" === i.position,
2108                    a = (o || n) && "border-box" === k.css(e, "boxSizing", !1, i),
2109                    s = n ? et(e, u, n, a, i) : 0;
2110                return a && o && (s -= Math.ceil(e["offset" + u[0].toUpperCase() + u.slice(1)] - parseFloat(i[u]) - et(e, u, "border", !1, i) - .5)), s && (r = ne.exec(t)) && "px" !== (r[3] || "px") && (e.style[u] = t, t = k.css(e, u)), Ze(0, t, s)
2111            }
2112        }
2113    }), k.cssHooks.marginLeft = ze(y.reliableMarginLeft, function(e, t) {
2114        if (t) return (parseFloat(_e(e, "marginLeft")) || e.getBoundingClientRect().left - ue(e, {
2115            marginLeft: 0
2116        }, function() {
2117            return e.getBoundingClientRect().left
2118        })) + "px"
2119    }), k.each({
2120        margin: "",
2121        padding: "",
2122        border: "Width"
2123    }, function(i, o) {
2124        k.cssHooks[i + o] = {
2125            expand: function(e) {
2126                for (var t = 0, n = {}, r = "string" == typeof e ? e.split(" ") : [e]; t < 4; t++) n[i + re[t] + o] = r[t] || r[t - 2] || r[0];
2127                return n
2128            }
2129        }, "margin" !== i && (k.cssHooks[i + o].set = Ze)
2130    }), k.fn.extend({
2131        css: function(e, t) {
2132            return _(this, function(e, t, n) {
2133                var r, i, o = {},
2134                    a = 0;
2135                if (Array.isArray(t)) {
2136                    for (r = Fe(e), i = t.length; a < i; a++) o[t[a]] = k.css(e, t[a], !1, r);
2137                    return o
2138                }
2139                return void 0 !== n ? k.style(e, t, n) : k.css(e, t)
2140            }, e, t, 1 < arguments.length)
2141        }
2142    }), ((k.Tween = nt).prototype = {
2143        constructor: nt,
2144        init: function(e, t, n, r, i, o) {
2145            this.elem = e, this.prop = n, this.easing = i || k.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = o || (k.cssNumber[n] ? "" : "px")
2146        },
2147        cur: function() {
2148            var e = nt.propHooks[this.prop];
2149            return e && e.get ? e.get(this) : nt.propHooks._default.get(this)
2150        },
2151        run: function(e) {
2152            var t, n = nt.propHooks[this.prop];
2153            return this.options.duration ? this.pos = t = k.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : nt.propHooks._default.set(this), this
2154        }
2155    }).init.prototype = nt.prototype, (nt.propHooks = {
2156        _default: {
2157            get: function(e) {
2158                var t;
2159                return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = k.css(e.elem, e.prop, "")) && "auto" !== t ? t : 0
2160            },
2161            set: function(e) {
2162                k.fx.step[e.prop] ? k.fx.step[e.prop](e) : 1 !== e.elem.nodeType || !k.cssHooks[e.prop] && null == e.elem.style[Ge(e.prop)] ? e.elem[e.prop] = e.now : k.style(e.elem, e.prop, e.now + e.unit)
2163            }
2164        }
2165    }).scrollTop = nt.propHooks.scrollLeft = {
2166        set: function(e) {
2167            e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)
2168        }
2169    }, k.easing = {
2170        linear: function(e) {
2171            return e
2172        },
2173        swing: function(e) {
2174            return .5 - Math.cos(e * Math.PI) / 2
2175        },
2176        _default: "swing"
2177    }, k.fx = nt.prototype.init, k.fx.step = {};
2178    var rt, it, ot, at, st = /^(?:toggle|show|hide)$/,
2179        ut = /queueHooks$/;
2180
2181    function lt() {
2182        it && (!1 === E.hidden && C.requestAnimationFrame ? C.requestAnimationFrame(lt) 
vendor: 9,768 bytes, lines 2182-2391
2182: C.setTimeout(lt, k.fx.interval), k.fx.tick())
2183    }
2184
2185    function ct() {
2186        return C.setTimeout(function() {
2187            rt = void 0
2188        }), rt = Date.now()
2189    }
2190
2191    function ft(e, t) {
2192        var n, r = 0,
2193            i = {
2194                height: e
2195            };
2196        for (t = t ? 1 : 0; r < 4; r += 2 - t) i["margin" + (n = re[r])] = i["padding" + n] = e;
2197        return t && (i.opacity = i.width = e), i
2198    }
2199
2200    function pt(e, t, n) {
2201        for (var r, i = (dt.tweeners[t] || []).concat(dt.tweeners["*"]), o = 0, a = i.length; o < a; o++)
2202            if (r = i[o].call(n, t, e)) return r
2203    }
2204
2205    function dt(o, e, t) {
2206        var n, a, r = 0,
2207            i = dt.prefilters.length,
2208            s = k.Deferred().always(function() {
2209                delete u.elem
2210            }),
2211            u = function() {
2212                if (a) return !1;
2213                for (var e = rt || ct(), t = Math.max(0, l.startTime + l.duration - e), n = 1 - (t / l.duration || 0), r = 0, i = l.tweens.length; r < i; r++) l.tweens[r].run(n);
2214                return s.notifyWith(o, [l, n, t]), n < 1 && i ? t : (i || s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l]), !1)
2215            },
2216            l = s.promise({
2217                elem: o,
2218                props: k.extend({}, e),
2219                opts: k.extend(!0, {
2220                    specialEasing: {},
2221                    easing: k.easing._default
2222                }, t),
2223                originalProperties: e,
2224                originalOptions: t,
2225                startTime: rt || ct(),
2226                duration: t.duration,
2227                tweens: [],
2228                createTween: function(e, t) {
2229                    var n = k.Tween(o, l.opts, e, t, l.opts.specialEasing[e] || l.opts.easing);
2230                    return l.tweens.push(n), n
2231                },
2232                stop: function(e) {
2233                    var t = 0,
2234                        n = e ? l.tweens.length : 0;
2235                    if (a) return this;
2236                    for (a = !0; t < n; t++) l.tweens[t].run(1);
2237                    return e ? (s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l, e])) : s.rejectWith(o, [l, e]), this
2238                }
2239            }),
2240            c = l.props;
2241        for (! function(e, t) {
2242                var n, r, i, o, a;
2243                for (n in e)
2244                    if (i = t[r = V(n)], o = e[n], Array.isArray(o) && (i = o[1], o = e[n] = o[0]), n !== r && (e[r] = o, delete e[n]), (a = k.cssHooks[r]) && "expand" in a)
2245                        for (n in o = a.expand(o), delete e[r], o) n in e || (e[n] = o[n], t[n] = i);
2246                    else t[r] = i
2247            }(c, l.opts.specialEasing); r < i; r++)
2248            if (n = dt.prefilters[r].call(l, o, c, l.opts)) return m(n.stop) && (k._queueHooks(l.elem, l.opts.queue).stop = n.stop.bind(n)), n;
2249        return k.map(c, pt, l), m(l.opts.start) && l.opts.start.call(o, l), l.progress(l.opts.progress).done(l.opts.done, l.opts.complete).fail(l.opts.fail).always(l.opts.always), k.fx.timer(k.extend(u, {
2250            elem: o,
2251            anim: l,
2252            queue: l.opts.queue
2253        })), l
2254    }
2255    k.Animation = k.extend(dt, {
2256        tweeners: {
2257            "*": [function(e, t) {
2258                var n = this.createTween(e, t);
2259                return le(n.elem, e, ne.exec(t), n), n
2260            }]
2261        },
2262        tweener: function(e, t) {
2263            m(e) ? (t = e, e = ["*"]) : e = e.match(R);
2264            for (var n, r = 0, i = e.length; r < i; r++) n = e[r], dt.tweeners[n] = dt.tweeners[n] || [], dt.tweeners[n].unshift(t)
2265        },
2266        prefilters: [function(e, t, n) {
2267            var r, i, o, a, s, u, l, c, f = "width" in t || "height" in t,
2268                p = this,
2269                d = {},
2270                h = e.style,
2271                g = e.nodeType && se(e),
2272                v = Q.get(e, "fxshow");
2273            for (r in n.queue || (null == (a = k._queueHooks(e, "fx")).unqueued && (a.unqueued = 0, s = a.empty.fire, a.empty.fire = function() {
2274                    a.unqueued || s()
2275                }), a.unqueued++, p.always(function() {
2276                    p.always(function() {
2277                        a.unqueued--, k.queue(e, "fx").length || a.empty.fire()
2278                    })
2279                })), t)
2280                if (i = t[r], st.test(i)) {
2281                    if (delete t[r], o = o || "toggle" === i, i === (g ? "hide" : "show")) {
2282                        if ("show" !== i || !v || void 0 === v[r]) continue;
2283                        g = !0
2284                    }
2285                    d[r] = v && v[r] || k.style(e, r)
2286                }
2287            if ((u = !k.isEmptyObject(t)) || !k.isEmptyObject(d))
2288                for (r in f && 1 === e.nodeType && (n.overflow = [h.overflow, h.overflowX, h.overflowY], null == (l = v && v.display) && (l = Q.get(e, "display")), "none" === (c = k.css(e, "display")) && (l ? c = l : (fe([e], !0), l = e.style.display || l, c = k.css(e, "display"), fe([e]))), ("inline" === c || "inline-block" === c && null != l) && "none" === k.css(e, "float") && (u || (p.done(function() {
2289                        h.display = l
2290                    }), null == l && (c = h.display, l = "none" === c ? "" : c)), h.display = "inline-block")), n.overflow && (h.overflow = "hidden", p.always(function() {
2291                        h.overflow = n.overflow[0], h.overflowX = n.overflow[1], h.overflowY = n.overflow[2]
2292                    })), u = !1, d) u || (v ? "hidden" in v && (g = v.hidden) : v = Q.access(e, "fxshow", {
2293                    display: l
2294                }), o && (v.hidden = !g), g && fe([e], !0), p.done(function() {
2295                    for (r in g || fe([e]), Q.remove(e, "fxshow"), d) k.style(e, r, d[r])
2296                })), u = pt(g ? v[r] : 0, r, p), r in v || (v[r] = u.start, g && (u.end = u.start, u.start = 0))
2297        }],
2298        prefilter: function(e, t) {
2299            t ? dt.prefilters.unshift(e) : dt.prefilters.push(e)
2300        }
2301    }), k.speed = function(e, t, n) {
2302        var r = e && "object" == typeof e ? k.extend({}, e) : {
2303            complete: n || !n && t || m(e) && e,
2304            duration: e,
2305            easing: n && t || t && !m(t) && t
2306        };
2307        return k.fx.off ? r.duration = 0 : "number" != typeof r.duration && (r.duration in k.fx.speeds ? r.duration = k.fx.speeds[r.duration] : r.duration = k.fx.speeds._default), null != r.queue && !0 !== r.queue || (r.queue = "fx"), r.old = r.complete, r.complete = function() {
2308            m(r.old) && r.old.call(this), r.queue && k.dequeue(this, r.queue)
2309        }, r
2310    }, k.fn.extend({
2311        fadeTo: function(e, t, n, r) {
2312            return this.filter(se).css("opacity", 0).show().end().animate({
2313                opacity: t
2314            }, e, n, r)
2315        },
2316        animate: function(t, e, n, r) {
2317            var i = k.isEmptyObject(t),
2318                o = k.speed(e, n, r),
2319                a = function() {
2320                    var e = dt(this, k.extend({}, t), o);
2321                    (i || Q.get(this, "finish")) && e.stop(!0)
2322                };
2323            return a.finish = a, i || !1 === o.queue ? this.each(a) : this.queue(o.queue, a)
2324        },
2325        stop: function(i, e, o) {
2326            var a = function(e) {
2327                var t = e.stop;
2328                delete e.stop, t(o)
2329            };
2330            return "string" != typeof i && (o = e, e = i, i = void 0), e && !1 !== i && this.queue(i || "fx", []), this.each(function() {
2331                var e = !0,
2332                    t = null != i && i + "queueHooks",
2333                    n = k.timers,
2334                    r = Q.get(this);
2335                if (t) r[t] && r[t].stop && a(r[t]);
2336                else
2337                    for (t in r) r[t] && r[t].stop && ut.test(t) && a(r[t]);
2338                for (t = n.length; t--;) n[t].elem !== this || null != i && n[t].queue !== i || (n[t].anim.stop(o), e = !1, n.splice(t, 1));
2339                !e && o || k.dequeue(this, i)
2340            })
2341        },
2342        finish: function(a) {
2343            return !1 !== a && (a = a || "fx"), this.each(function() {
2344                var e, t = Q.get(this),
2345                    n = t[a + "queue"],
2346                    r = t[a + "queueHooks"],
2347                    i = k.timers,
2348                    o = n ? n.length : 0;
2349                for (t.finish = !0, k.queue(this, a, []), r && r.stop && r.stop.call(this, !0), e = i.length; e--;) i[e].elem === this && i[e].queue === a && (i[e].anim.stop(!0), i.splice(e, 1));
2350                for (e = 0; e < o; e++) n[e] && n[e].finish && n[e].finish.call(this);
2351                delete t.finish
2352            })
2353        }
2354    }), k.each(["toggle", "show", "hide"], function(e, r) {
2355        var i = k.fn[r];
2356        k.fn[r] = function(e, t, n) {
2357            return null == e || "boolean" == typeof e ? i.apply(this, arguments) : this.animate(ft(r, !0), e, t, n)
2358        }
2359    }), k.each({
2360        slideDown: ft("show"),
2361        slideUp: ft("hide"),
2362        slideToggle: ft("toggle"),
2363        fadeIn: {
2364            opacity: "show"
2365        },
2366        fadeOut: {
2367            opacity: "hide"
2368        },
2369        fadeToggle: {
2370            opacity: "toggle"
2371        }
2372    }, function(e, r) {
2373        k.fn[e] = function(e, t, n) {
2374            return this.animate(r, e, t, n)
2375        }
2376    }), k.timers = [], k.fx.tick = function() {
2377        var e, t = 0,
2378            n = k.timers;
2379        for (rt = Date.now(); t < n.length; t++)(e = n[t])() || n[t] !== e || n.splice(t--, 1);
2380        n.length || k.fx.stop(), rt = void 0
2381    }, k.fx.timer = function(e) {
2382        k.timers.push(e), k.fx.start()
2383    }, k.fx.interval = 13, k.fx.start = function() {
2384        it || (it = !0, lt())
2385    }, k.fx.stop = function() {
2386        it = null
2387    }, k.fx.speeds = {
2388        slow: 600,
2389        fast: 200,
2390        _default: 400
2391    }
vendor: 5,931 bytes, lines 2391-2526
2391, k.fn.delay = function(r, e) {
2392        return r = k.fx && k.fx.speeds[r] || r, e = e || "fx", this.queue(e, function(e, t) {
2393            var n = C.setTimeout(e, r);
2394            t.stop = function() {
2395                C.clearTimeout(n)
2396            }
2397        })
2398    }, ot = E.createElement("input"), at = E.createElement("select").appendChild(E.createElement("option")), ot.type = "checkbox", y.checkOn = "" !== ot.value, y.optSelected = at.selected, (ot = E.createElement("input")).value = "t", ot.type = "radio", y.radioValue = "t" === ot.value;
2399    var ht, gt = k.expr.attrHandle;
2400    k.fn.extend({
2401        attr: function(e, t) {
2402            return _(this, k.attr, e, t, 1 < arguments.length)
2403        },
2404        removeAttr: function(e) {
2405            return this.each(function() {
2406                k.removeAttr(this, e)
2407            })
2408        }
2409    }), k.extend({
2410        attr: function(e, t, n) {
2411            var r, i, o = e.nodeType;
2412            if (3 !== o && 8 !== o && 2 !== o) return "undefined" == typeof e.getAttribute ? k.prop(e, t, n) : (1 === o && k.isXMLDoc(e) || (i = k.attrHooks[t.toLowerCase()] || (k.expr.match.bool.test(t) ? ht : void 0)), void 0 !== n ? null === n ? void k.removeAttr(e, t) : i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : (e.setAttribute(t, n + ""), n) : i && "get" in i && null !== (r = i.get(e, t)) ? r : null == (r = k.find.attr(e, t)) ? void 0 : r)
2413        },
2414        attrHooks: {
2415            type: {
2416                set: function(e, t) {
2417                    if (!y.radioValue && "radio" === t && A(e, "input")) {
2418                        var n = e.value;
2419                        return e.setAttribute("type", t), n && (e.value = n), t
2420                    }
2421                }
2422            }
2423        },
2424        removeAttr: function(e, t) {
2425            var n, r = 0,
2426                i = t && t.match(R);
2427            if (i && 1 === e.nodeType)
2428                while (n = i[r++]) e.removeAttribute(n)
2429        }
2430    }), ht = {
2431        set: function(e, t, n) {
2432            return !1 === t ? k.removeAttr(e, n) : e.setAttribute(n, n), n
2433        }
2434    }, k.each(k.expr.match.bool.source.match(/\w+/g), function(e, t) {
2435        var a = gt[t] || k.find.attr;
2436        gt[t] = function(e, t, n) {
2437            var r, i, o = t.toLowerCase();
2438            return n || (i = gt[o], gt[o] = r, r = null != a(e, t, n) ? o : null, gt[o] = i), r
2439        }
2440    });
2441    var vt = /^(?:input|select|textarea|button)$/i,
2442        yt = /^(?:a|area)$/i;
2443
2444    function mt(e) {
2445        return (e.match(R) || []).join(" ")
2446    }
2447
2448    function xt(e) {
2449        return e.getAttribute && e.getAttribute("class") || ""
2450    }
2451
2452    function bt(e) {
2453        return Array.isArray(e) ? e : "string" == typeof e && e.match(R) || []
2454    }
2455    k.fn.extend({
2456        prop: function(e, t) {
2457            return _(this, k.prop, e, t, 1 < arguments.length)
2458        },
2459        removeProp: function(e) {
2460            return this.each(function() {
2461                delete this[k.propFix[e] || e]
2462            })
2463        }
2464    }), k.extend({
2465        prop: function(e, t, n) {
2466            var r, i, o = e.nodeType;
2467            if (3 !== o && 8 !== o && 2 !== o) return 1 === o && k.isXMLDoc(e) || (t = k.propFix[t] || t, i = k.propHooks[t]), void 0 !== n ? i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : e[t] = n : i && "get" in i && null !== (r = i.get(e, t)) ? r : e[t]
2468        },
2469        propHooks: {
2470            tabIndex: {
2471                get: function(e) {
2472                    var t = k.find.attr(e, "tabindex");
2473                    return t ? parseInt(t, 10) : vt.test(e.nodeName) || yt.test(e.nodeName) && e.href ? 0 : -1
2474                }
2475            }
2476        },
2477        propFix: {
2478            "for": "htmlFor",
2479            "class": "className"
2480        }
2481    }), y.optSelected || (k.propHooks.selected = {
2482        get: function(e) {
2483            var t = e.parentNode;
2484            return t && t.parentNode && t.parentNode.selectedIndex, null
2485        },
2486        set: function(e) {
2487            var t = e.parentNode;
2488            t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex)
2489        }
2490    }), k.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() {
2491        k.propFix[this.toLowerCase()] = this
2492    }), k.fn.extend({
2493        addClass: function(t) {
2494            var e, n, r, i, o, a, s, u = 0;
2495            if (m(t)) return this.each(function(e) {
2496                k(this).addClass(t.call(this, e, xt(this)))
2497            });
2498            if ((e = bt(t)).length)
2499                while (n = this[u++])
2500                    if (i = xt(n), r = 1 === n.nodeType && " " + mt(i) + " ") {
2501                        a = 0;
2502                        while (o = e[a++]) r.indexOf(" " + o + " ") < 0 && (r += o + " ");
2503                        i !== (s = mt(r)) && n.setAttribute("class", s)
2504                    }
2505            return this
2506        },
2507        removeClass: function(t) {
2508            var e, n, r, i, o, a, s, u = 0;
2509            if (m(t)) return this.each(function(e) {
2510                k(this).removeClass(t.call(this, e, xt(this)))
2511            });
2512            if (!arguments.length) return this.attr("class", "");
2513            if ((e = bt(t)).length)
2514                while (n = this[u++])
2515                    if (i = xt(n), r = 1 === n.nodeType && " " + mt(i) + " ") {
2516                        a = 0;
2517                        while (o = e[a++])
2518                            while (-1 < r.indexOf(" " + o + " ")) r = r.replace(" " + o + " ", " ");
2519                        i !== (s = mt(r)) && n.setAttribute("class", s)
2520                    }
2521            return this
2522        },
2523        toggleClass: function(i, t) {
2524            var o = typeof i,
2525                a = "string" === o || Array.isArray(i);
2526            return "boolean" == typeof t && a ? t ? this.addClass(i) : this.removeClass(i) : m(i) ? this.each(function(e) {
vendor: 30,418 bytes, lines 2527-3164
2527                k(this).toggleClass(i.call(this, e, xt(this), t), t)
2528            }) : this.each(function() {
2529                var e, t, n, r;
2530                if (a) {
2531                    t = 0, n = k(this), r = bt(i);
2532                    while (e = r[t++]) n.hasClass(e) ? n.removeClass(e) : n.addClass(e)
2533                } else void 0 !== i && "boolean" !== o || ((e = xt(this)) && Q.set(this, "__className__", e), this.setAttribute && this.setAttribute("class", e || !1 === i ? "" : Q.get(this, "__className__") || ""))
2534            })
2535        },
2536        hasClass: function(e) {
2537            var t, n, r = 0;
2538            t = " " + e + " ";
2539            while (n = this[r++])
2540                if (1 === n.nodeType && -1 < (" " + mt(xt(n)) + " ").indexOf(t)) return !0;
2541            return !1
2542        }
2543    });
2544    var wt = /\r/g;
2545    k.fn.extend({
2546        val: function(n) {
2547            var r, e, i, t = this[0];
2548            return arguments.length ? (i = m(n), this.each(function(e) {
2549                var t;
2550                1 === this.nodeType && (null == (t = i ? n.call(this, e, k(this).val()) : n) ? t = "" : "number" == typeof t ? t += "" : Array.isArray(t) && (t = k.map(t, function(e) {
2551                    return null == e ? "" : e + ""
2552                })), (r = k.valHooks[this.type] || k.valHooks[this.nodeName.toLowerCase()]) && "set" in r && void 0 !== r.set(this, t, "value") || (this.value = t))
2553            })) : t ? (r = k.valHooks[t.type] || k.valHooks[t.nodeName.toLowerCase()]) && "get" in r && void 0 !== (e = r.get(t, "value")) ? e : "string" == typeof(e = t.value) ? e.replace(wt, "") : null == e ? "" : e : void 0
2554        }
2555    }), k.extend({
2556        valHooks: {
2557            option: {
2558                get: function(e) {
2559                    var t = k.find.attr(e, "value");
2560                    return null != t ? t : mt(k.text(e))
2561                }
2562            },
2563            select: {
2564                get: function(e) {
2565                    var t, n, r, i = e.options,
2566                        o = e.selectedIndex,
2567                        a = "select-one" === e.type,
2568                        s = a ? null : [],
2569                        u = a ? o + 1 : i.length;
2570                    for (r = o < 0 ? u : a ? o : 0; r < u; r++)
2571                        if (((n = i[r]).selected || r === o) && !n.disabled && (!n.parentNode.disabled || !A(n.parentNode, "optgroup"))) {
2572                            if (t = k(n).val(), a) return t;
2573                            s.push(t)
2574                        }
2575                    return s
2576                },
2577                set: function(e, t) {
2578                    var n, r, i = e.options,
2579                        o = k.makeArray(t),
2580                        a = i.length;
2581                    while (a--)((r = i[a]).selected = -1 < k.inArray(k.valHooks.option.get(r), o)) && (n = !0);
2582                    return n || (e.selectedIndex = -1), o
2583                }
2584            }
2585        }
2586    }), k.each(["radio", "checkbox"], function() {
2587        k.valHooks[this] = {
2588            set: function(e, t) {
2589                if (Array.isArray(t)) return e.checked = -1 < k.inArray(k(e).val(), t)
2590            }
2591        }, y.checkOn || (k.valHooks[this].get = function(e) {
2592            return null === e.getAttribute("value") ? "on" : e.value
2593        })
2594    }), y.focusin = "onfocusin" in C;
2595    var Tt = /^(?:focusinfocus|focusoutblur)$/,
2596        Ct = function(e) {
2597            e.stopPropagation()
2598        };
2599    k.extend(k.event, {
2600        trigger: function(e, t, n, r) {
2601            var i, o, a, s, u, l, c, f, p = [n || E],
2602                d = v.call(e, "type") ? e.type : e,
2603                h = v.call(e, "namespace") ? e.namespace.split(".") : [];
2604            if (o = f = a = n = n || E, 3 !== n.nodeType && 8 !== n.nodeType && !Tt.test(d + k.event.triggered) && (-1 < d.indexOf(".") && (d = (h = d.split(".")).shift(), h.sort()), u = d.indexOf(":") < 0 && "on" + d, (e = e[k.expando] ? e : new k.Event(d, "object" == typeof e && e)).isTrigger = r ? 2 : 3, e.namespace = h.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : k.makeArray(t, [e]), c = k.event.special[d] || {}, r || !c.trigger || !1 !== c.trigger.apply(n, t))) {
2605                if (!r && !c.noBubble && !x(n)) {
2606                    for (s = c.delegateType || d, Tt.test(s + d) || (o = o.parentNode); o; o = o.parentNode) p.push(o), a = o;
2607                    a === (n.ownerDocument || E) && p.push(a.defaultView || a.parentWindow || C)
2608                }
2609                i = 0;
2610                while ((o = p[i++]) && !e.isPropagationStopped()) f = o, e.type = 1 < i ? s : c.bindType || d, (l = (Q.get(o, "events") || {})[e.type] && Q.get(o, "handle")) && l.apply(o, t), (l = u && o[u]) && l.apply && G(o) && (e.result = l.apply(o, t), !1 === e.result && e.preventDefault());
2611                return e.type = d, r || e.isDefaultPrevented() || c._default && !1 !== c._default.apply(p.pop(), t) || !G(n) || u && m(n[d]) && !x(n) && ((a = n[u]) && (n[u] = null), k.event.triggered = d, e.isPropagationStopped() && f.addEventListener(d, Ct), n[d](), e.isPropagationStopped() && f.removeEventListener(d, Ct), k.event.triggered = void 0, a && (n[u] = a)), e.result
2612            }
2613        },
2614        simulate: function(e, t, n) {
2615            var r = k.extend(new k.Event, n, {
2616                type: e,
2617                isSimulated: !0
2618            });
2619            k.event.trigger(r, null, t)
2620        }
2621    }), k.fn.extend({
2622        trigger: function(e, t) {
2623            return this.each(function() {
2624                k.event.trigger(e, t, this)
2625            })
2626        },
2627        triggerHandler: function(e, t) {
2628            var n = this[0];
2629            if (n) return k.event.trigger(e, t, n, !0)
2630        }
2631    }), y.focusin || k.each({
2632        focus: "focusin",
2633        blur: "focusout"
2634    }, function(n, r) {
2635        var i = function(e) {
2636            k.event.simulate(r, e.target, k.event.fix(e))
2637        };
2638        k.event.special[r] = {
2639            setup: function() {
2640                var e = this.ownerDocument || this,
2641                    t = Q.access(e, r);
2642                t || e.addEventListener(n, i, !0), Q.access(e, r, (t || 0) + 1)
2643            },
2644            teardown: function() {
2645                var e = this.ownerDocument || this,
2646                    t = Q.access(e, r) - 1;
2647                t ? Q.access(e, r, t) : (e.removeEventListener(n, i, !0), Q.remove(e, r))
2648            }
2649        }
2650    });
2651    var Et = C.location,
2652        kt = Date.now(),
2653        St = /\?/;
2654    k.parseXML = function(e) {
2655        var t;
2656        if (!e || "string" != typeof e) return null;
2657        try {
2658            t = (new C.DOMParser).parseFromString(e, "text/xml")
2659        } catch (e) {
2660            t = void 0
2661        }
2662        return t && !t.getElementsByTagName("parsererror").length || k.error("Invalid XML: " + e), t
2663    };
2664    var Nt = /\[\]$/,
2665        At = /\r?\n/g,
2666        Dt = /^(?:submit|button|image|reset|file)$/i,
2667        jt = /^(?:input|select|textarea|keygen)/i;
2668
2669    function qt(n, e, r, i) {
2670        var t;
2671        if (Array.isArray(e)) k.each(e, function(e, t) {
2672            r || Nt.test(n) ? i(n, t) : qt(n + "[" + ("object" == typeof t && null != t ? e : "") + "]", t, r, i)
2673        });
2674        else if (r || "object" !== w(e)) i(n, e);
2675        else
2676            for (t in e) qt(n + "[" + t + "]", e[t], r, i)
2677    }
2678    k.param = function(e, t) {
2679        var n, r = [],
2680            i = function(e, t) {
2681                var n = m(t) ? t() : t;
2682                r[r.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n)
2683            };
2684        if (null == e) return "";
2685        if (Array.isArray(e) || e.jquery && !k.isPlainObject(e)) k.each(e, function() {
2686            i(this.name, this.value)
2687        });
2688        else
2689            for (n in e) qt(n, e[n], t, i);
2690        return r.join("&")
2691    }, k.fn.extend({
2692        serialize: function() {
2693            return k.param(this.serializeArray())
2694        },
2695        serializeArray: function() {
2696            return this.map(function() {
2697                var e = k.prop(this, "elements");
2698                return e ? k.makeArray(e) : this
2699            }).filter(function() {
2700                var e = this.type;
2701                return this.name && !k(this).is(":disabled") && jt.test(this.nodeName) && !Dt.test(e) && (this.checked || !pe.test(e))
2702            }).map(function(e, t) {
2703                var n = k(this).val();
2704                return null == n ? null : Array.isArray(n) ? k.map(n, function(e) {
2705                    return {
2706                        name: t.name,
2707                        value: e.replace(At, "\r\n")
2708                    }
2709                }) : {
2710                    name: t.name,
2711                    value: n.replace(At, "\r\n")
2712                }
2713            }).get()
2714        }
2715    });
2716    var Lt = /%20/g,
2717        Ht = /#.*$/,
2718        Ot = /([?&])_=[^&]*/,
2719        Pt = /^(.*?):[ \t]*([^\r\n]*)$/gm,
2720        Rt = /^(?:GET|HEAD)$/,
2721        Mt = /^\/\//,
2722        It = {},
2723        Wt = {},
2724        $t = "*/".concat("*"),
2725        Ft = E.createElement("a");
2726
2727    function Bt(o) {
2728        return function(e, t) {
2729            "string" != typeof e && (t = e, e = "*");
2730            var n, r = 0,
2731                i = e.toLowerCase().match(R) || [];
2732            if (m(t))
2733                while (n = i[r++]) "+" === n[0] ? (n = n.slice(1) || "*", (o[n] = o[n] || []).unshift(t)) : (o[n] = o[n] || []).push(t)
2734        }
2735    }
2736
2737    function _t(t, i, o, a) {
2738        var s = {},
2739            u = t === Wt;
2740
2741        function l(e) {
2742            var r;
2743            return s[e] = !0, k.each(t[e] || [], function(e, t) {
2744                var n = t(i, o, a);
2745                return "string" != typeof n || u || s[n] ? u ? !(r = n) : void 0 : (i.dataTypes.unshift(n), l(n), !1)
2746            }), r
2747        }
2748        return l(i.dataTypes[0]) || !s["*"] && l("*")
2749    }
2750
2751    function zt(e, t) {
2752        var n, r, i = k.ajaxSettings.flatOptions || {};
2753        for (n in t) void 0 !== t[n] && ((i[n] ? e : r || (r = {}))[n] = t[n]);
2754        return r && k.extend(!0, e, r), e
2755    }
2756    Ft.href = Et.href, k.extend({
2757        active: 0,
2758        lastModified: {},
2759        etag: {},
2760        ajaxSettings: {
2761            url: Et.href,
2762            type: "GET",
2763            isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Et.protocol),
2764            global: !0,
2765            processData: !0,
2766            async: !0,
2767            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
2768            accepts: {
2769                "*": $t,
2770                text: "text/plain",
2771                html: "text/html",
2772                xml: "application/xml, text/xml",
2773                json: "application/json, text/javascript"
2774            },
2775            contents: {
2776                xml: /\bxml\b/,
2777                html: /\bhtml/,
2778                json: /\bjson\b/
2779            },
2780            responseFields: {
2781                xml: "responseXML",
2782                text: "responseText",
2783                json: "responseJSON"
2784            },
2785            converters: {
2786                "* text": String,
2787                "text html": !0,
2788                "text json": JSON.parse,
2789                "text xml": k.parseXML
2790            },
2791            flatOptions: {
2792                url: !0,
2793                context: !0
2794            }
2795        },
2796        ajaxSetup: function(e, t) {
2797            return t ? zt(zt(e, k.ajaxSettings), t) : zt(k.ajaxSettings, e)
2798        },
2799        ajaxPrefilter: Bt(It),
2800        ajaxTransport: Bt(Wt),
2801        ajax: function(e, t) {
2802            "object" == typeof e && (t = e, e = void 0), t = t || {};
2803            var c, f, p, n, d, r, h, g, i, o, v = k.ajaxSetup({}, t),
2804                y = v.context || v,
2805                m = v.context && (y.nodeType || y.jquery) ? k(y) : k.event,
2806                x = k.Deferred(),
2807                b = k.Callbacks("once memory"),
2808                w = v.statusCode || {},
2809                a = {},
2810                s = {},
2811                u = "canceled",
2812                T = {
2813                    readyState: 0,
2814                    getResponseHeader: function(e) {
2815                        var t;
2816                        if (h) {
2817                            if (!n) {
2818                                n = {};
2819                                while (t = Pt.exec(p)) n[t[1].toLowerCase() + " "] = (n[t[1].toLowerCase() + " "] || []).concat(t[2])
2820                            }
2821                            t = n[e.toLowerCase() + " "]
2822                        }
2823                        return null == t ? null : t.join(", ")
2824                    },
2825                    getAllResponseHeaders: function() {
2826                        return h ? p : null
2827                    },
2828                    setRequestHeader: function(e, t) {
2829                        return null == h && (e = s[e.toLowerCase()] = s[e.toLowerCase()] || e, a[e] = t), this
2830                    },
2831                    overrideMimeType: function(e) {
2832                        return null == h && (v.mimeType = e), this
2833                    },
2834                    statusCode: function(e) {
2835                        var t;
2836                        if (e)
2837                            if (h) T.always(e[T.status]);
2838                            else
2839                                for (t in e) w[t] = [w[t], e[t]];
2840                        return this
2841                    },
2842                    abort: function(e) {
2843                        var t = e || u;
2844                        return c && c.abort(t), l(0, t), this
2845                    }
2846                };
2847            if (x.promise(T), v.url = ((e || v.url || Et.href) + "").replace(Mt, Et.protocol + "//"), v.type = t.method || t.type || v.method || v.type, v.dataTypes = (v.dataType || "*").toLowerCase().match(R) || [""], null == v.crossDomain) {
2848                r = E.createElement("a");
2849                try {
2850                    r.href = v.url, r.href = r.href, v.crossDomain = Ft.protocol + "//" + Ft.host != r.protocol + "//" + r.host
2851                } catch (e) {
2852                    v.crossDomain = !0
2853                }
2854            }
2855            if (v.data && v.processData && "string" != typeof v.data && (v.data = k.param(v.data, v.traditional)), _t(It, v, t, T), h) return T;
2856            for (i in (g = k.event && v.global) && 0 == k.active++ && k.event.trigger("ajaxStart"), v.type = v.type.toUpperCase(), v.hasContent = !Rt.test(v.type), f = v.url.replace(Ht, ""), v.hasContent ? v.data && v.processData && 0 === (v.contentType || "").indexOf("application/x-www-form-urlencoded") && (v.data = v.data.replace(Lt, "+")) : (o = v.url.slice(f.length), v.data && (v.processData || "string" == typeof v.data) && (f += (St.test(f) ? "&" : "?") + v.data, delete v.data), !1 === v.cache && (f = f.replace(Ot, "$1"), o = (St.test(f) ? "&" : "?") + "_=" + kt++ + o), v.url = f + o), v.ifModified && (k.lastModified[f] && T.setRequestHeader("If-Modified-Since", k.lastModified[f]), k.etag[f] && T.setRequestHeader("If-None-Match", k.etag[f])), (v.data && v.hasContent && !1 !== v.contentType || t.contentType) && T.setRequestHeader("Content-Type", v.contentType), T.setRequestHeader("Accept", v.dataTypes[0] && v.accepts[v.dataTypes[0]] ? v.accepts[v.dataTypes[0]] + ("*" !== v.dataTypes[0] ? ", " + $t + "; q=0.01" : "") : v.accepts["*"]), v.headers) T.setRequestHeader(i, v.headers[i]);
2857            if (v.beforeSend && (!1 === v.beforeSend.call(y, T, v) || h)) return T.abort();
2858            if (u = "abort", b.add(v.complete), T.done(v.success), T.fail(v.error), c = _t(Wt, v, t, T)) {
2859                if (T.readyState = 1, g && m.trigger("ajaxSend", [T, v]), h) return T;
2860                v.async && 0 < v.timeout && (d = C.setTimeout(function() {
2861                    T.abort("timeout")
2862                }, v.timeout));
2863                try {
2864                    h = !1, c.send(a, l)
2865                } catch (e) {
2866                    if (h) throw e;
2867                    l(-1, e)
2868                }
2869            } else l(-1, "No Transport");
2870
2871            function l(e, t, n, r) {
2872                var i, o, a, s, u, l = t;
2873                h || (h = !0, d && C.clearTimeout(d), c = void 0, p = r || "", T.readyState = 0 < e ? 4 : 0, i = 200 <= e && e < 300 || 304 === e, n && (s = function(e, t, n) {
2874                    var r, i, o, a, s = e.contents,
2875                        u = e.dataTypes;
2876                    while ("*" === u[0]) u.shift(), void 0 === r && (r = e.mimeType || t.getResponseHeader("Content-Type"));
2877                    if (r)
2878                        for (i in s)
2879                            if (s[i] && s[i].test(r)) {
2880                                u.unshift(i);
2881                                break
2882                            }
2883                    if (u[0] in n) o = u[0];
2884                    else {
2885                        for (i in n) {
2886                            if (!u[0] || e.converters[i + " " + u[0]]) {
2887                                o = i;
2888                                break
2889                            }
2890                            a || (a = i)
2891                        }
2892                        o = o || a
2893                    }
2894                    if (o) return o !== u[0] && u.unshift(o), n[o]
2895                }(v, T, n)), s = function(e, t, n, r) {
2896                    var i, o, a, s, u, l = {},
2897                        c = e.dataTypes.slice();
2898                    if (c[1])
2899                        for (a in e.converters) l[a.toLowerCase()] = e.converters[a];
2900                    o = c.shift();
2901                    while (o)
2902                        if (e.responseFields[o] && (n[e.responseFields[o]] = t), !u && r && e.dataFilter && (t = e.dataFilter(t, e.dataType)), u = o, o = c.shift())
2903                            if ("*" === o) o = u;
2904                            else if ("*" !== u && u !== o) {
2905                        if (!(a = l[u + " " + o] || l["* " + o]))
2906                            for (i in l)
2907                                if ((s = i.split(" "))[1] === o && (a = l[u + " " + s[0]] || l["* " + s[0]])) {
2908                                    !0 === a ? a = l[i] : !0 !== l[i] && (o = s[0], c.unshift(s[1]));
2909                                    break
2910                                }
2911                        if (!0 !== a)
2912                            if (a && e["throws"]) t = a(t);
2913                            else try {
2914                                t = a(t)
2915                            } catch (e) {
2916                                return {
2917                                    state: "parsererror",
2918                                    error: a ? e : "No conversion from " + u + " to " + o
2919                                }
2920                            }
2921                    }
2922                    return {
2923                        state: "success",
2924                        data: t
2925                    }
2926                }(v, s, T, i), i ? (v.ifModified && ((u = T.getResponseHeader("Last-Modified")) && (k.lastModified[f] = u), (u = T.getResponseHeader("etag")) && (k.etag[f] = u)), 204 === e || "HEAD" === v.type ? l = "nocontent" : 304 === e ? l = "notmodified" : (l = s.state, o = s.data, i = !(a = s.error))) : (a = l, !e && l || (l = "error", e < 0 && (e = 0))), T.status = e, T.statusText = (t || l) + "", i ? x.resolveWith(y, [o, l, T]) : x.rejectWith(y, [T, l, a]), T.statusCode(w), w = void 0, g && m.trigger(i ? "ajaxSuccess" : "ajaxError", [T, v, i ? o : a]), b.fireWith(y, [T, l]), g && (m.trigger("ajaxComplete", [T, v]), --k.active || k.event.trigger("ajaxStop")))
2927            }
2928            return T
2929        },
2930        getJSON: function(e, t, n) {
2931            return k.get(e, t, n, "json")
2932        },
2933        getScript: function(e, t) {
2934            return k.get(e, void 0, t, "script")
2935        }
2936    }), k.each(["get", "post"], function(e, i) {
2937        k[i] = function(e, t, n, r) {
2938            return m(t) && (r = r || n, n = t, t = void 0), k.ajax(k.extend({
2939                url: e,
2940                type: i,
2941                dataType: r,
2942                data: t,
2943                success: n
2944            }, k.isPlainObject(e) && e))
2945        }
2946    }), k._evalUrl = function(e, t) {
2947        return k.ajax({
2948            url: e,
2949            type: "GET",
2950            dataType: "script",
2951            cache: !0,
2952            async: !1,
2953            global: !1,
2954            converters: {
2955                "text script": function() {}
2956            },
2957            dataFilter: function(e) {
2958                k.globalEval(e, t)
2959            }
2960        })
2961    }, k.fn.extend({
2962        wrapAll: function(e) {
2963            var t;
2964            return this[0] && (m(e) && (e = e.call(this[0])), t = k(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function() {
2965                var e = this;
2966                while (e.firstElementChild) e = e.firstElementChild;
2967                return e
2968            }).append(this)), this
2969        },
2970        wrapInner: function(n) {
2971            return m(n) ? this.each(function(e) {
2972                k(this).wrapInner(n.call(this, e))
2973            }) : this.each(function() {
2974                var e = k(this),
2975                    t = e.contents();
2976                t.length ? t.wrapAll(n) : e.append(n)
2977            })
2978        },
2979        wrap: function(t) {
2980            var n = m(t);
2981            return this.each(function(e) {
2982                k(this).wrapAll(n ? t.call(this, e) : t)
2983            })
2984        },
2985        unwrap: function(e) {
2986            return this.parent(e).not("body").each(function() {
2987                k(this).replaceWith(this.childNodes)
2988            }), this
2989        }
2990    }), k.expr.pseudos.hidden = function(e) {
2991        return !k.expr.pseudos.visible(e)
2992    }, k.expr.pseudos.visible = function(e) {
2993        return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length)
2994    }, k.ajaxSettings.xhr = function() {
2995        try {
2996            return new C.XMLHttpRequest
2997        } catch (e) {}
2998    };
2999    var Ut = {
3000            0: 200,
3001            1223: 204
3002        },
3003        Xt = k.ajaxSettings.xhr();
3004    y.cors = !!Xt && "withCredentials" in Xt, y.ajax = Xt = !!Xt, k.ajaxTransport(function(i) {
3005        var o, a;
3006        if (y.cors || Xt && !i.crossDomain) return {
3007            send: function(e, t) {
3008                var n, r = i.xhr();
3009                if (r.open(i.type, i.url, i.async, i.username, i.password), i.xhrFields)
3010                    for (n in i.xhrFields) r[n] = i.xhrFields[n];
3011                for (n in i.mimeType && r.overrideMimeType && r.overrideMimeType(i.mimeType), i.crossDomain || e["X-Requested-With"] || (e["X-Requested-With"] = "XMLHttpRequest"), e) r.setRequestHeader(n, e[n]);
3012                o = function(e) {
3013                    return function() {
3014                        o && (o = a = r.onload = r.onerror = r.onabort = r.ontimeout = r.onreadystatechange = null, "abort" === e ? r.abort() : "error" === e ? "number" != typeof r.status ? t(0, "error") : t(r.status, r.statusText) : t(Ut[r.status] || r.status, r.statusText, "text" !== (r.responseType || "text") || "string" != typeof r.responseText ? {
3015                            binary: r.response
3016                        } : {
3017                            text: r.responseText
3018                        }, r.getAllResponseHeaders()))
3019                    }
3020                }, r.onload = o(), a = r.onerror = r.ontimeout = o("error"), void 0 !== r.onabort ? r.onabort = a : r.onreadystatechange = function() {
3021                    4 === r.readyState && C.setTimeout(function() {
3022                        o && a()
3023                    })
3024                }, o = o("abort");
3025                try {
3026                    r.send(i.hasContent && i.data || null)
3027                } catch (e) {
3028                    if (o) throw e
3029                }
3030            },
3031            abort: function() {
3032                o && o()
3033            }
3034        }
3035    }), k.ajaxPrefilter(function(e) {
3036        e.crossDomain && (e.contents.script = !1)
3037    }), k.ajaxSetup({
3038        accepts: {
3039            script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
3040        },
3041        contents: {
3042            script: /\b(?:java|ecma)script\b/
3043        },
3044        converters: {
3045            "text script": function(e) {
3046                return k.globalEval(e), e
3047            }
3048        }
3049    }), k.ajaxPrefilter("script", function(e) {
3050        void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET")
3051    }), k.ajaxTransport("script", function(n) {
3052        var r, i;
3053        if (n.crossDomain || n.scriptAttrs) return {
3054            send: function(e, t) {
3055                r = k("<script>").attr(n.scriptAttrs || {}).prop({
3056                    charset: n.scriptCharset,
3057                    src: n.url
3058                }).on("load error", i = function(e) {
3059                    r.remove(), i = null, e && t("error" === e.type ? 404 : 200, e.type)
3060                }), E.head.appendChild(r[0])
3061            },
3062            abort: function() {
3063                i && i()
3064            }
3065        }
3066    });
3067    var Vt, Gt = [],
3068        Yt = /(=)\?(?=&|$)|\?\?/;
3069    k.ajaxSetup({
3070        jsonp: "callback",
3071        jsonpCallback: function() {
3072            var e = Gt.pop() || k.expando + "_" + kt++;
3073            return this[e] = !0, e
3074        }
3075    }), k.ajaxPrefilter("json jsonp", function(e, t, n) {
3076        var r, i, o, a = !1 !== e.jsonp && (Yt.test(e.url) ? "url" : "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && Yt.test(e.data) && "data");
3077        if (a || "jsonp" === e.dataTypes[0]) return r = e.jsonpCallback = m(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, a ? e[a] = e[a].replace(Yt, "$1" + r) : !1 !== e.jsonp && (e.url += (St.test(e.url) ? "&" : "?") + e.jsonp + "=" + r), e.converters["script json"] = function() {
3078            return o || k.error(r + " was not called"), o[0]
3079        }, e.dataTypes[0] = "json", i = C[r], C[r] = function() {
3080            o = arguments
3081        }, n.always(function() {
3082            void 0 === i ? k(C).removeProp(r) : C[r] = i, e[r] && (e.jsonpCallback = t.jsonpCallback, Gt.push(r)), o && m(i) && i(o[0]), o = i = void 0
3083        }), "script"
3084    }), y.createHTMLDocument = ((Vt = E.implementation.createHTMLDocument("").body).innerHTML = "<form></form><form></form>", 2 === Vt.childNodes.length), k.parseHTML = function(e, t, n) {
3085        return "string" != typeof e ? [] : ("boolean" == typeof t && (n = t, t = !1), t || (y.createHTMLDocument ? ((r = (t = E.implementation.createHTMLDocument("")).createElement("base")).href = E.location.href, t.head.appendChild(r)) : t = E), o = !n && [], (i = D.exec(e)) ? [t.createElement(i[1])] : (i = we([e], t, o), o && o.length && k(o).remove(), k.merge([], i.childNodes)));
3086        var r, i, o
3087    }, k.fn.load = function(e, t, n) {
3088        var r, i, o, a = this,
3089            s = e.indexOf(" ");
3090        return -1 < s && (r = mt(e.slice(s)), e = e.slice(0, s)), m(t) ? (n = t, t = void 0) : t && "object" == typeof t && (i = "POST"), 0 < a.length && k.ajax({
3091            url: e,
3092            type: i || "GET",
3093            dataType: "html",
3094            data: t
3095        }).done(function(e) {
3096            o = arguments, a.html(r ? k("<div>").append(k.parseHTML(e)).find(r) : e)
3097        }).always(n && function(e, t) {
3098            a.each(function() {
3099                n.apply(this, o || [e.responseText, t, e])
3100            })
3101        }), this
3102    }, k.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(e, t) {
3103        k.fn[t] = function(e) {
3104            return this.on(t, e)
3105        }
3106    }), k.expr.pseudos.animated = function(t) {
3107        return k.grep(k.timers, function(e) {
3108            return t === e.elem
3109        }).length
3110    }, k.offset = {
3111        setOffset: function(e, t, n) {
3112            var r, i, o, a, s, u, l = k.css(e, "position"),
3113                c = k(e),
3114                f = {};
3115            "static" === l && (e.style.position = "relative"), s = c.offset(), o = k.css(e, "top"), u = k.css(e, "left"), ("absolute" === l || "fixed" === l) && -1 < (o + u).indexOf("auto") ? (a = (r = c.position()).top, i = r.left) : (a = parseFloat(o) || 0, i = parseFloat(u) || 0), m(t) && (t = t.call(e, n, k.extend({}, s))), null != t.top && (f.top = t.top - s.top + a), null != t.left && (f.left = t.left - s.left + i), "using" in t ? t.using.call(e, f) : c.css(f)
3116        }
3117    }, k.fn.extend({
3118        offset: function(t) {
3119            if (arguments.length) return void 0 === t ? this : this.each(function(e) {
3120                k.offset.setOffset(this, t, e)
3121            });
3122            var e, n, r = this[0];
3123            return r ? r.getClientRects().length ? (e = r.getBoundingClientRect(), n = r.ownerDocument.defaultView, {
3124                top: e.top + n.pageYOffset,
3125                left: e.left + n.pageXOffset
3126            }) : {
3127                top: 0,
3128                left: 0
3129            } : void 0
3130        },
3131        position: function() {
3132            if (this[0]) {
3133                var e, t, n, r = this[0],
3134                    i = {
3135                        top: 0,
3136                        left: 0
3137                    };
3138                if ("fixed" === k.css(r, "position")) t = r.getBoundingClientRect();
3139                else {
3140                    t = this.offset(), n = r.ownerDocument, e = r.offsetParent || n.documentElement;
3141                    while (e && (e === n.body || e === n.documentElement) && "static" === k.css(e, "position")) e = e.parentNode;
3142                    e && e !== r && 1 === e.nodeType && ((i = k(e).offset()).top += k.css(e, "borderTopWidth", !0), i.left += k.css(e, "borderLeftWidth", !0))
3143                }
3144                return {
3145                    top: t.top - i.top - k.css(r, "marginTop", !0),
3146                    left: t.left - i.left - k.css(r, "marginLeft", !0)
3147                }
3148            }
3149        },
3150        offsetParent: function() {
3151            return this.map(function() {
3152                var e = this.offsetParent;
3153                while (e && "static" === k.css(e, "position")) e = e.offsetParent;
3154                return e || ie
3155            })
3156        }
3157    }), k.each({
3158        scrollLeft: "pageXOffset",
3159        scrollTop: "pageYOffset"
3160    }, function(t, i) {
3161        var o = "pageYOffset" === i;
3162        k.fn[t] = function(e) {
3163            return _(this, function(e, t, n) {
3164                var r;
3165                if (x(e) ? r = e : 9 === e.nodeType && (r = e.defaultView), void 0 === n) return r ? r[i] : e[t];
3166                r ? r.scrollTo(o ? r.pageXOffset : n, o ? n : r.pageYOffset) : e[t] = n
3167            }, t, e, arguments.length)
3168        }
3169    }), k.each(["top", "left"], function(e, n) {
3170        k.cssHooks[n] = ze(y.pixelPosition, function(e, t) {
3171            if (t) return t = _e(e, n), $e.test(t) ? k(e).position()[n] + "px" : t
3172        })
3173    }), k.each({
3174        Height: "height",
3175        Width: "width"
3176    }, function(a, s) {
3177        k.each({
3178            padding: "inner" + a,
3179            content: s,
3180            "": "outer" + a
3181        }, function(r, o) {
3182            k.fn[o] = function(e, t) {
3183                var n = arguments.length && (r || "boolean" != typeof e),
3184                    i = r || (!0 === e || !0 === t ? "margin" : "border");
3185                return _(this, function(e, t, n) {
3186                    var r;
3187                    return x(e) ? 0 === o.indexOf("outer") ? e["inner" + a] : e.document.documentElement["client" + a] : 9 === e.nodeType ? (r = e.documentElement, Math.max(e.body["scroll" + a], r["scroll" + a], e.body["offset" + a], r["offset" + a], r["client" + a])) : void 0 === n ? k.css(e, t, i) : k.style(e, t, n, i)
3188                }, s, n ? e : void 0, n)
3189            }
3190        })
3191    }), k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function(e, n) {
3192        k.fn[n] = function(e, t) {
3193            return 0 < arguments.length ? this.on(n, null, e, t) : this.trigger(n)
3194        }
3195    }), k.fn.extend({
3196        hover: function(e, t) {
3197            return this.mouseenter(e).mouseleave(t || e)
3198        }
3199    }), k.fn.extend({
3200        bind: function(e, t, n) {
3201            return this.on(e, null, t, n)
3202        },
3203        unbind: function(e, t) {
3204            return this.off(e, null, t)
3205        },
3206        delegate: function(e, t, n, r) {
3207            return this.on(t, e, n, r)
3208        },
3209        undelegate: function(e, t, n) {
3210            return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n)
3211        }
3212    }), k.proxy = function(e, t) {
3213        var n, r, i;
3214        if ("string" == typeof t && (n = e[t], t = e, e = n), m(e)) return r = s.call(arguments, 2), (i = function() {
3215            return e.apply(t || this, r.concat(s.call(arguments)))
3216        }).guid = e.guid = e.guid || k.guid++, i
3217    }, k.holdReady = function(e) {
3218        e ? k.readyWait++ : k.ready(!0)
3219    }, k.isArray = Array.isArray, k.parseJSON = JSON.parse, k.nodeName = A, k.isFunction = m, k.isWindow = x, k.camelCase = V, k.type = w, k.now = Date.now, k.isNumeric = function(e) {
3220        var t = k.type(e);
3221        return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e))
3222    }, "function" == typeof define && define.amd && define("jquery", [], function() {
3223        return k
3224    });
3225    var Qt = C.jQuery,
3226        Jt = C.$;
3227    return k.noConflict = function(e) {
3228        return C.$ === k && (C.$ = Jt), e && C.jQuery === k && (C.jQuery = Qt), k
3229    }, e || (C.jQuery = C.$ = k), k
3230});
3231(function(factory) {
3232    'use strict';
3233    if (typeof define === 'function' && define.amd) {
3234        define(['jquery'], factory)
3235    } else if (typeof exports !== 'undefined') {
3236        module.exports = factory(require('jquery'))
3237    } else {
3238        factory(jQuery)
3239    }
3240}(function($) {
3241    'use strict';
3242    var Slick = window.Slick || {};
3243    Slick = (function() {
3244        var instanceUid = 0;
3245
3246        function Slick(element, settings) {
3247            var _ = this,
3248                dataSettings;
3249            _.defaults = {
3250                accessibility: !0,
3251                adaptiveHeight: !1,
3252                appendArrows: $(element),
3253                appendDots: $(element),
3254                arrows: !0,
3255                asNavFor: null,
3256                prevArrow: '<button class="slick-prev" aria-label="Previous" type="button">Zur&uuml;ck</button>',
3257                nextArrow: '<button class="slick-next" aria-label="Next" type="button">Weiter</button>',
3258                autoplay: !1,
3259                autoplaySpeed: 3000,
3260                centerMode: !1,
3261                centerPadding: '50px',
3262                cssEase: 'ease',
3263                customPaging: function(slider, i) {
3264                    return $('<button type="button" />').text(i + 1)
3265                },
3266                dots: !1,
3267                dotsClass: 'slick-dots',
3268                draggable: !0,
3269                easing: 'linear',
3270                edgeFriction: 0.35,
3271                fade: !1,
3272                focusOnSelect: !1,
3273                focusOnChange: !1,
3274                infinite: !0,
3275                initialSlide: 0,
3276                lazyLoad: 'ondemand',
3277                mobileFirst: !1,
3278                pauseOnHover: !0,
3279                pauseOnFocus: !0,
3280                pauseOnDotsHover: !1,
3281                respondTo: 'window',
3282                responsive: null,
3283                rows: 1,
3284                rtl: !1,
3285                slide: '',
3286                slidesPerRow: 1,
3287                slidesToShow: 1,
3288                slidesToScroll: 1,
3289                speed: 500,
3290                swipe: !0,
3291                swipeToSlide: !1,
3292                touchMove: !0,
3293                touchThreshold: 5,
3294                useCSS: !0,
3295                useTransform: !0,
3296                variableWidth: !1,
3297                vertical: !1,
3298                verticalSwiping: !1,
3299                waitForAnimate: !0,
3300                zIndex: 1000
3301            };
3302            _.initials = {
3303                animating: !1,
3304                dragging: !1,
3305                autoPlayTimer: null,
3306                currentDirection: 0,
3307                currentLeft: null,
3308                currentSlide: 0,
3309                direction: 1,
3310                $dots: null,
3311                listWidth: null,
3312                listHeight: null,
3313                loadIndex: 0,
3314                $nextArrow: null,
3315                $prevArrow: null,
3316                scrolling: !1,
3317                slideCount: null,
3318                slideWidth: null,
3319                $slideTrack: null,
3320                $slides: null,
3321                sliding: !1,
3322                slideOffset: 0,
3323                swipeLeft: null,
3324                swiping: !1,
3325                $list: null,
3326                touchObject: {},
3327                transformsEnabled: !1,
3328                unslicked: !1
3329            };
3330            $.extend(_, _.initials);
3331            _.activeBreakpoint = null;
3332            _.animType = null;
3333            _.animProp = null;
3334            _.breakpoints = [];
3335            _.breakpointSettings = [];
3336            _.cssTransitions = !1;
3337            _.focussed = !1;
3338            _.interrupted = !1;
3339            _.hidden = 'hidden';
3340            _.paused = !0;
3341            _.positionProp = null;
3342            _.respondTo = null;
3343            _.rowCount = 1;
3344            _.shouldClick = !0;
3345            _.$slider = $(element);
3346            _.$slidesCache = null;
3347            _.transformType = null;
3348            _.transitionType = null;
3349            _.visibilityChange = 'visibilitychange';
3350            _.windowWidth = 0;
3351            _.windowTimer = null;
3352            dataSettings = $(element).data('slick') || {};
3353            _.options = $.extend({}, _.defaults, settings, dataSettings);
3354            _.currentSlide = _.options.initialSlide;
3355            _.originalSettings = _.options;
3356            if (typeof document.mozHidden !== 'undefined') {
3357                _.hidden = 'mozHidden';
3358                _.visibilityChange = 'mozvisibilitychange'
3359            } else if (typeof document.webkitHidden !== 'undefined') {
3360                _.hidden = 'webkitHidden';
3361                _.visibilityChange = 'webkitvisibilitychange'
3362            }
3363            _.autoPlay = $.proxy(_.autoPlay, _);
3364            _.autoPlayClear = $.proxy(_.autoPlayClear, _);
3365            _.autoPlayIterator = $.proxy(_.autoPlayIterator, _);
3366            _.changeSlide = $.proxy(_.changeSlide, _);
3367            _.clickHandler = $.proxy(_.clickHandler, _);
3368            _.selectHandler = $.proxy(_.selectHandler, _);
3369            _.setPosition = $.proxy(_.setPosition, _);
3370            _.swipeHandler = $.proxy(_.swipeHandler, _);
3371            _.dragHandler = $.proxy(_.dragHandler, _);
3372            _.keyHandler = $.proxy(_.keyHandler, _);
3373            _.instanceUid = instanceUid++;
3374            _.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/;
3375            _.registerBreakpoints();
3376            _.init(!0)
3377        }
3378        return Slick
3379    }());
3380    Slick.prototype.activateADA = function() {
3381        var _ = this;
3382        _.$slideTrack.find('.slick-active').attr({
3383            'aria-hidden': 'false'
3384        }).find('a, input, button, select').attr({
3385            'tabindex': '0'
3386        })
3387    };
3388    Slick.prototype.addSlide = Slick.prototype.slickAdd = function(markup, index, addBefore) {
3389        var _ = this;
3390        if (typeof(index) === 'boolean') {
3391            addBefore = index;
3392            index = null
3393        } else if (index < 0 || (index >= _.slideCount)) {
3394            return !1
3395        }
3396        _.unload();
3397        if (typeof(index) === 'number') {
3398            if (index === 0 && _.$slides.length === 0) {
3399                $(markup).appendTo(_.$slideTrack)
3400            } else if (addBefore) {
3401                $(markup).insertBefore(_.$slides.eq(index))
3402            } else {
3403                $(markup).insertAfter(_.$slides.eq(index))
3404            }
3405        } else {
3406            if (addBefore === !0) {
3407                $(markup).prependTo(_.$slideTrack)
3408            } else {
3409                $(markup).appendTo(_.$slideTrack)
3410            }
3411        }
3412        _.$slides = _.$slideTrack.children(this.options.slide);
3413        _.$slideTrack.children(this.options.slide).detach();
3414        _.$slideTrack.append(_.$slides);
3415        _.$slides.each(function(index, element) {
3416            $(element).attr('data-slick-index', index)
3417        });
3418        _.$slidesCache = _.$slides;
3419        _.reinit()
3420    };
3421    Slick.prototype.animateHeight = function() {
3422        var _ = this;
3423        if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === !0 && _.options.vertical === !1) {
3424            var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(!0);
3425            _.$list.animate({
3426                height: targetHeight
3427            }, _.options.speed)
3428        }
3429    };
3430    Slick.prototype.animateSlide = function(targetLeft, callback) {
3431        var animProps = {},
3432            _ = this;
3433        _.animateHeight();
3434        if (_.options.rtl === !0 && _.options.vertical === !1) {
3435            targetLeft = -targetLeft
3436        }
3437        if (_.transformsEnabled === !1) {
3438            if (_.options.vertical === !1) {
3439                _.$slideTrack.animate({
3440                    left: targetLeft
3441                }, _.options.speed, _.options.easing, callback)
3442            } else {
3443                _.$slideTrack.animate({
3444                    top: targetLeft
3445                }, _.options.speed, _.options.easing, callback)
3446            }
3447        } else {
3448            if (_.cssTransitions === !1) {
3449                if (_.options.rtl === !0) {
3450                    _.currentLeft = -(_.currentLeft)
3451                }
3452                $({
3453                    animStart: _.currentLeft
3454                }).animate({
3455                    animStart: targetLeft
3456                }, {
3457                    duration: _.options.speed,
3458                    easing: _.options.easing,
3459                    step: function(now) {
3460                        now = Math.ceil(now);
3461                        if (_.options.vertical === !1) {
3462                            animProps[_.animType] = 'translate(' + now + 'px, 0px)';
3463                            _.$slideTrack.css(animProps)
3464                        } else {
3465                            animProps[_.animType] = 'translate(0px,' + now + 'px)';
3466                            _.$slideTrack.css(animProps)
3467                        }
3468                    },
3469                    complete: function() {
3470                        if (callback) {
3471                            callback.call()
3472                        }
3473                    }
3474                })
3475            } else {
3476                _.applyTransition();
3477                targetLeft = Math.ceil(targetLeft);
3478                if (_.options.vertical === !1) {
3479                    animProps[_.animType] = 'translate3d(' + targetLeft + 'px, 0px, 0px)'
3480                } else {
3481                    animProps[_.animType] = 'translate3d(0px,' + targetLeft + 'px, 0px)'
3482                }
3483                _.$slideTrack.css(animProps);
3484                if (callback) {
3485                    setTimeout(function() {
3486                        _.disableTransition();
3487                        callback.call()
3488                    }, _.options.speed)
3489                }
3490            }
3491        }
3492    };
3493    Slick.prototype.getNavTarget = function() {
3494        var _ = this,
3495            asNavFor = _.options.asNavFor;
3496        if (asNavFor && asNavFor !== null) {
3497            asNavFor = $(asNavFor).not(_.$slider)
3498        }
3499        return asNavFor
3500    };
3501    Slick.prototype.asNavFor = function(index) {
3502        var _ = this,
3503            asNavFor = _.getNavTarget();
3504        if (asNavFor !== null && typeof asNavFor === 'object') {
3505            asNavFor.each(function() {
3506                var target = $(this).slick('getSlick');
3507                if (!target.unslicked) {
3508                    target.slideHandler(index, !0)
3509                }
3510            })
3511        }
3512    };
3513    Slick.prototype.applyTransition = function(slide) {
3514        var _ = this,
3515            transition = {};
3516        if (_.options.fade === !1) {
3517            transition[_.transitionType] = _.transformType + ' ' + _.options.speed + 'ms ' + _.options.cssEase
3518        } else {
3519            transition[_.transitionType] = 'opacity ' + _.options.speed + 'ms ' + _.options.cssEase
3520        }
3521        if (_.options.fade === !1) {
3522            _.$slideTrack.css(transition)
3523        } else {
3524            _.$slides.eq(slide).css(transition)
3525        }
3526    };
3527    Slick.prototype.autoPlay = function() {
3528        var _ = this;
3529        _.autoPlayClear();
3530        if (_.slideCount > _.options.slidesToShow) {
3531            _.autoPlayTimer = setInterval(_.autoPlayIterator, _.options.autoplaySpeed)
3532        }
3533    };
3534    Slick.prototype.autoPlayClear = function() {
3535        var _ = this;
3536        if (_.autoPlayTimer) {
3537            clearInterval(_.autoPlayTimer)
3538        }
3539    };
3540    Slick.prototype.autoPlayIterator = function() {
3541        var _ = this,
3542            slideTo = _.currentSlide + _.options.slidesToScroll;
3543        if (!_.paused && !_.interrupted && !_.focussed) {
3544            if (_.options.infinite === !1) {
3545                if (_.direction === 1 && (_.currentSlide + 1) === (_.slideCount - 1)) {
3546                    _.direction = 0
3547                } else if (_.direction === 0) {
3548                    slideTo = _.currentSlide - _.options.slidesToScroll;
3549                    if (_.currentSlide - 1 === 0) {
3550                        _.direction = 1
3551                    }
3552                }
3553            }
3554            _.slideHandler(slideTo)
3555        }
3556    };
3557    Slick.prototype.buildArrows = function() {
3558        var _ = this;
3559        if (_.options.arrows === !0) {
3560            _.$prevArrow = $(_.options.prevArrow).addClass('slick-arrow');
3561            _.$nextArrow = $(_.options.nextArrow).addClass('slick-arrow');
3562            if (_.slideCount > _.options.slidesToShow) {
3563                _.$prevArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');
3564                _.$nextArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');
3565                if (_.htmlExpr.test(_.options.prevArrow)) {
3566                    _.$prevArrow.prependTo(_.options.appendArrows)
3567                }
3568                if (_.htmlExpr.test(_.options.nextArrow)) {
3569                    _.$nextArrow.appendTo(_.options.appendArrows)
3570                }
3571                if (_.options.infinite !== !0) {
3572                    _.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true')
3573                }
3574            } else {
3575                _.$prevArrow.add(_.$nextArrow).addClass('slick-hidden').attr({
3576                    'aria-disabled': 'true',
3577                    'tabindex': '-1'
3578                })
3579            }
3580        }
3581    };
3582    Slick.prototype.buildDots = function() {
3583        var _ = this,
3584            i, dot;
3585        if (_.options.dots === !0 && _.slideCount > _.options.slidesToShow) {
3586            _.$slider.addClass('slick-dotted');
3587            dot = $('<ul />').addClass(_.options.dotsClass);
3588            for (i = 0; i <= _.getDotCount(); i += 1) {
3589                dot.append($('<li />').append(_.options.customPaging.call(this, _, i)))
3590            }
3591            _.$dots = dot.appendTo(_.options.appendDots);
3592            _.$dots.find('li').first().addClass('slick-active')
3593        }
3594    };
3595    Slick.prototype.buildOut = function() {
3596        var _ = this;
3597        _.$slides = _.$slider.children(_.options.slide + ':not(.slick-cloned)').addClass('slick-slide');
3598        _.slideCount = _.$slides.length;
3599        _.$slides.each(function(index, element) {
3600            $(element).attr('data-slick-index', index).data('originalStyling', $(element).attr('style') || '')
3601        });
3602        _.$slider.addClass('slick-slider');
3603        _.$slideTrack = (_.slideCount === 0) ? $('<div class="slick-track"/>').appendTo(_.$slider) : _.$slides.wrapAll('<div class="slick-track"/>').parent();
3604        _.$list = _.$slideTrack.wrap('<div class="slick-list"/>').parent();
3605        _.$slideTrack.css('opacity', 0);
3606        if (_.options.centerMode === !0 || _.options.swipeToSlide === !0) {
3607            _.options.slidesToScroll = 1
3608        }
3609        $('img[data-lazy]', _.$slider).not('[src]').addClass('slick-loading');
3610        _.setupInfinite();
3611        _.buildArrows();
3612        _.buildDots();
3613        _.updateDots();
3614        _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);
3615        if (_.options.draggable === !0) {
3616            _.$list.addClass('draggable')
3617        }
3618    };
3619    Slick.prototype.buildRows = function() {
3620        var _ = this,
3621            a, b, c, newSlides, numOfSlides, originalSlides, slidesPerSection;
3622        newSlides = document.createDocumentFragment();
3623        originalSlides = _.$slider.children();
3624        if (_.options.rows > 0) {
3625            slidesPerSection = _.options.slidesPerRow * _.options.rows;
3626            numOfSlides = Math.ceil(originalSlides.length / slidesPerSection);
3627            for (a = 0; a < numOfSlides; a++) {
3628                var slide = document.createElement('div');
3629                for (b = 0; b < _.options.rows; b++) {
3630                    var row = document.createElement('div');
3631                    for (c = 0; c < _.options.slidesPerRow; c++) {
3632                        var target = (a * slidesPerSection + ((b * _.options.slidesPerRow) + c));
3633                        if (originalSlides.get(target)) {
3634                            row.appendChild(originalSlides.get(target))
3635                        }
3636                    }
3637                    slide.appendChild(row)
3638                }
3639                newSlides.appendChild(slide)
3640            }
3641            _.$slider.empty().append(newSlides);
3642            _.$slider.children().children().children().css({
3643                'width': (100 / _.options.slidesPerRow) + '%',
3644                'display': 'inline-block'
3645            })
3646        }
3647    };
3648    Slick.prototype.checkResponsive = function(initial, forceUpdate) {
3649        var _ = this,
3650            breakpoint, targetBreakpoint, respondToWidth, triggerBreakpoint = !1;
3651        var sliderWidth = _.$slider.width();
3652        var windowWidth = window.innerWidth || $(window).width();
3653        if (_.respondTo === 'window') {
3654            respondToWidth = windowWidth
3655        } else if (_.respondTo === 'slider') {
3656            respondToWidth = sliderWidth
3657        } else if (_.respondTo === 'min') {
3658            respondToWidth = Math.min(windowWidth, sliderWidth)
3659        }
3660        if (_.options.responsive && _.options.responsive.length && _.options.responsive !== null) {
3661            targetBreakpoint = null;
3662            for (breakpoint in _.breakpoints) {
3663                if (_.breakpoints.hasOwnProperty(breakpoint)) {
3664                    if (_.originalSettings.mobileFirst === !1) {
3665                        if (respondToWidth < _.breakpoints[breakpoint]) {
3666                            targetBreakpoint = _.breakpoints[breakpoint]
3667                        }
3668                    } else {
3669                        if (respondToWidth > _.breakpoints[breakpoint]) {
3670                            targetBreakpoint = _.breakpoints[breakpoint]
3671                        }
3672                    }
3673                }
3674            }
3675            if (targetBreakpoint !== null) {
3676                if (_.activeBreakpoint !== null) {
3677                    if (targetBreakpoint !== _.activeBreakpoint || forceUpdate) {
3678                        _.activeBreakpoint = targetBreakpoint;
3679                        if (_.breakpointSettings[targetBreakpoint] === 'unslick') {
3680                            _.unslick(targetBreakpoint)
3681                        } else {
3682                            _.options = $.extend({}, _.originalSettings, _.breakpointSettings[targetBreakpoint]);
3683                            if (initial === !0) {
3684                                _.currentSlide = _.options.initialSlide
3685                            }
3686                            _.refresh(initial)
3687                        }
3688                        triggerBreakpoint = targetBreakpoint
3689                    }
3690                } else {
3691                    _.activeBreakpoint = targetBreakpoint;
3692                    if (_.breakpointSettings[targetBreakpoint] === 'unslick') {
3693                        _.unslick(targetBreakpoint)
3694                    } else {
3695                        _.options = $.extend({}, _.originalSettings, _.breakpointSettings[targetBreakpoint]);
3696                        if (initial === !0) {
3697                            _.currentSlide = _.options.initialSlide
3698                        }
3699                        _.refresh(initial)
3700                    }
3701                    triggerBreakpoint = targetBreakpoint
3702                }
3703            } else {
3704                if (_.activeBreakpoint !== null) {
3705                    _.activeBreakpoint = null;
3706                    _.options = _.originalSettings;
3707                    if (initial === !0) {
3708                        _.currentSlide = _.options.initialSlide
3709                    }
3710                    _.refresh(initial);
3711                    triggerBreakpoint = targetBreakpoint
3712                }
3713            }
3714            if (!initial && triggerBreakpoint !== !1) {
3715                _.$slider.trigger('breakpoint', [_, triggerBreakpoint])
3716            }
3717        }
3718    };
3719    Slick.prototype.changeSlide = function(event, dontAnimate) {
3720        var _ = this,
3721            $target = $(event.currentTarget),
3722            indexOffset, slideOffset, unevenOffset;
3723        if ($target.is('a')) {
3724            event.preventDefault()
3725        }
3726        if (!$target.is('li')) {
3727            $target = $target.closest('li')
3728        }
3729        unevenOffset = (_.slideCount % _.options.slidesToScroll !== 0);
3730        indexOffset = unevenOffset ? 0 : (_.slideCount - _.currentSlide) % _.options.slidesToScroll;
3731        switch (event.data.message) {
3732            case 'previous':
3733                slideOffset = indexOffset === 0 ? _.options.slidesToScroll : _.options.slidesToShow - indexOffset;
3734                if (_.slideCount > _.options.slidesToShow) {
3735                    _.slideHandler(_.currentSlide - slideOffset, !1, dontAnimate)
3736                }
3737                break;
3738            case 'next':
3739                slideOffset = indexOffset === 0 ? _.options.slidesToScroll : indexOffset;
3740                if (_.slideCount > _.options.slidesToShow) {
3741                    _.slideHandler(_.currentSlide + slideOffset, !1, dontAnimate)
3742                }
3743                break;
3744            case 'index':
3745                var index = event.data.index === 0 ? 0 : event.data.index || $target.index() * _.options.slidesToScroll;
3746                _.slideHandler(_.checkNavigable(index), !1, dontAnimate);
3747                $target.children().trigger('focus');
3748                break;
3749            default:
3750                return
3751        }
3752    };
3753    Slick.prototype.checkNavigable = function(index) {
3754        var _ = this,
3755            navigables, prevNavigable;
3756        navigables = _.getNavigableIndexes();
3757        prevNavigable = 0;
3758        if (index > navigables[navigables.length - 1]) {
3759            index = navigables[navigables.length - 1]
3760        } else {
3761            for (var n in navigables) {
3762                if (index < navigables[n]) {
3763                    index = prevNavigable;
3764                    break
3765                }
3766                prevNavigable = navigables[n]
3767            }
3768        }
3769        return index
3770    };
3771    Slick.prototype.cleanUpEvents = function() {
3772        var _ = this;
3773        if (_.options.dots && _.$dots !== null) {
3774            $('li', _.$dots).off('click.slick', _.changeSlide).off('mouseenter.slick', $.proxy(_.interrupt, _, !0)).off('mouseleave.slick', $.proxy(_.interrupt, _, !1));
3775            if (_.options.accessibility === !0) {
3776                _.$dots.off('keydown.slick', _.keyHandler)
3777            }
3778        }
3779        _.$slider.off('focus.slick blur.slick');
3780        if (_.options.arrows === !0 && _.slideCount > _.options.slidesToShow) {
3781            _.$prevArrow && _.$prevArrow.off('click.slick', _.changeSlide);
3782            _.$nextArrow && _.$nextArrow.off('click.slick', _.changeSlide);
3783            if (_.options.accessibility === !0) {
3784                _.$prevArrow && _.$prevArrow.off('keydown.slick', _.keyHandler);
3785                _.$nextArrow && _.$nextArrow.off('keydown.slick', _.keyHandler)
3786            }
3787        }
3788        _.$list.off('touchstart.slick mousedown.slick', _.swipeHandler);
3789        _.$list.off('touchmove.slick mousemove.slick', _.swipeHandler);
3790        _.$list.off('touchend.slick mouseup.slick', _.swipeHandler);
3791        _.$list.off('touchcancel.slick mouseleave.slick', _.swipeHandler);
3792        _.$list.off('click.slick', _.clickHandler);
3793        $(document).off(_.visibilityChange, _.visibility);
3794        _.cleanUpSlideEvents();
3795        if (_.options.accessibility === !0) {
3796            _.$list.off('keydown.slick', _.keyHandler)
3797        }
3798        if (_.options.focusOnSelect === !0) {
3799            $(_.$slideTrack).children().off('click.slick', _.selectHandler)
3800        }
3801        $(window).off('orientationchange.slick.slick-' + _.instanceUid, _.orientationChange);
3802        $(window).off('resize.slick.slick-' + _.instanceUid, _.resize);
3803        $('[draggable!=true]', _.$slideTrack).off('dragstart', _.preventDefault);
3804        $(window).off('load.slick.slick-' + _.instanceUid, _.setPosition)
3805    };
3806    Slick.prototype.cleanUpSlideEvents = function() {
3807        var _ = this;
3808        _.$list.off('mouseenter.slick', $.proxy(_.interrupt, _, !0));
3809        _.$list.off('mouseleave.slick', $.proxy(_.interrupt, _, !1))
3810    };
3811    Slick.prototype.cleanUpRows = function() {
3812        var _ = this,
3813            originalSlides;
3814        if (_.options.rows > 0) {
3815            originalSlides = _.$slides.children().children();
3816            originalSlides.removeAttr('style');
3817            _.$slider.empty().append(originalSlides)
3818        }
3819    };
3820    Slick.prototype.clickHandler = function(event) {
3821        var _ = this;
3822        if (_.shouldClick === !1) {
3823            event.stopImmediatePropagation();
3824            event.stopPropagation();
3825            event.preventDefault()
3826        }
3827    };
3828    Slick.prototype.destroy = function(refresh) {
3829        var _ = this;
3830        _.autoPlayClear();
3831        _.touchObject = {};
3832        _.cleanUpEvents();
3833        $('.slick-cloned', _.$slider).detach();
3834        if (_.$dots) {
3835            _.$dots.remove()
3836        }
3837        if (_.$prevArrow && _.$prevArrow.length) {
3838            _.$prevArrow.removeClass('slick-disabled slick-arrow slick-hidden').removeAttr('aria-hidden aria-disabled tabindex').css('display', '');
3839            if (_.htmlExpr.test(_.options.prevArrow)) {
3840                _.$prevArrow.remove()
3841            }
3842        }
3843        if (_.$nextArrow && _.$nextArrow.length) {
3844            _.$nextArrow.removeClass('slick-disabled slick-arrow slick-hidden').removeAttr('aria-hidden aria-disabled tabindex').css('display', '');
3845            if (_.htmlExpr.test(_.options.nextArrow)) {
3846                _.$nextArrow.remove()
3847            }
3848        }
3849        if (_.$slides) {
3850            _.$slides.removeClass('slick-slide slick-active slick-center slick-visible slick-current').removeAttr('aria-hidden').removeAttr('data-slick-index').each(function() {
3851                $(this).attr('style', $(this).data('originalStyling'))
3852            });
3853            _.$slideTrack.children(this.options.slide).detach();
3854            _.$slideTrack.detach();
3855            _.$list.detach();
3856            _.$slider.append(_.$slides)
3857        }
3858        _.cleanUpRows();
3859        _.$slider.removeClass('slick-slider');
3860        _.$slider.removeClass('slick-initialized');
3861        _.$slider.removeClass('slick-dotted');
3862        _.unslicked = !0;
3863        if (!refresh) {
3864            _.$slider.trigger('destroy', [_])
3865        }
3866    };
3867    Slick.prototype.disableTransition = function(slide) {
3868        var _ = this,
3869            transition = {};
3870        transition[_.transitionType] = '';
3871        if (_.options.fade === !1) {
3872            _.$slideTrack.css(transition)
3873        } else {
3874            _.$slides.eq(slide).css(transition)
3875        }
3876    };
3877    Slick.prototype.fadeSlide = function(slideIndex, callback) {
3878        var _ = this;
3879        if (_.cssTransitions === !1) {
3880            _.$slides.eq(slideIndex).css({
3881                zIndex: _.options.zIndex
3882            });
3883            _.$slides.eq(slideIndex).animate({
3884                opacity: 1
3885            }, _.options.speed, _.options.easing, callback)
3886        } else {
3887            _.applyTransition(slideIndex);
3888            _.$slides.eq(slideIndex).css({
3889                opacity: 1,
3890                zIndex: _.options.zIndex
3891            });
3892            if (callback) {
3893                setTimeout(function() {
3894                    _.disableTransition(slideIndex);
3895                    callback.call()
3896                }, _.options.speed)
3897            }
3898        }
3899    };
3900    Slick.prototype.fadeSlideOut = function(slideIndex) {
3901        var _ = this;
3902        if (_.cssTransitions === !1) {
3903            _.$slides.eq(slideIndex).animate({
3904                opacity: 0,
3905                zIndex: _.options.zIndex - 2
3906            }, _.options.speed, _.options.easing)
3907        } else {
3908            _.applyTransition(slideIndex);
3909            _.$slides.eq(slideIndex).css({
3910                opacity: 0,
3911                zIndex: _.options.zIndex - 2
3912            })
3913        }
3914    };
3915    Slick.prototype.filterSlides = Slick.prototype.slickFilter = function(filter) {
3916        var _ = this;
3917        if (filter !== null) {
3918            _.$slidesCache = _.$slides;
3919            _.unload();
3920            _.$slideTrack.children(this.options.slide).detach();
3921            _.$slidesCache.filter(filter).appendTo(_.$slideTrack);
3922            _.reinit()
3923        }
3924    };
3925    Slick.prototype.focusHandler = function() {
3926        var _ = this;
3927        _.$slider.off('focus.slick blur.slick').on('focus.slick', '*', function(event) {
3928            var $sf = $(this);
3929            setTimeout(function() {
3930                if (_.options.pauseOnFocus) {
3931                    if ($sf.is(':focus')) {
3932                        _.focussed = !0;
3933                        _.autoPlay()
3934                    }
3935                }
3936            }, 0)
3937        }).on('blur.slick', '*', function(event) {
3938            var $sf = $(this);
3939            if (_.options.pauseOnFocus) {
3940                _.focussed = !1;
3941                _.autoPlay()
3942            }
3943        })
3944    };
3945    Slick.prototype.getCurrent = Slick.prototype.slickCurrentSlide = function() {
3946        var _ = this;
3947        return _.currentSlide
3948    };
3949    Slick.prototype.getDotCount = function() {
3950        var _ = this;
3951        var breakPoint = 0;
3952        var counter = 0;
3953        var pagerQty = 0;
3954        if (_.options.infinite === !0) {
3955            if (_.slideCount <= _.options.slidesToShow) {
3956                ++pagerQty
3957            } else {
3958                while (breakPoint < _.slideCount) {
3959                    ++pagerQty;
3960                    breakPoint = counter + _.options.slidesToScroll;
3961                    counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow
3962                }
3963            }
3964        } else if (_.options.centerMode === !0) {
3965            pagerQty = _.slideCount
3966        } else if (!_.options.asNavFor) {
3967            pagerQty = 1 + Math.ceil((_.slideCount - _.options.slidesToShow) / _.options.slidesToScroll)
3968        } else {
3969            while (breakPoint < _.slideCount) {
3970                ++pagerQty;
3971                breakPoint = counter + _.options.slidesToScroll;
3972                counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow
3973            }
3974        }
3975        return pagerQty - 1
3976    };
3977    Slick.prototype.getLeft = function(slideIndex) {
3978        var _ = this,
3979            targetLeft, verticalHeight, verticalOffset = 0,
3980            targetSlide, coef;
3981        _.slideOffset = 0;
3982        verticalHeight = _.$slides.first().outerHeight(!0);
3983        if (_.options.infinite === !0) {
3984            if (_.slideCount > _.options.slidesToShow) {
3985                _.slideOffset = (_.slideWidth * _.options.slidesToShow) * -1;
3986                coef = -1
3987                if (_.options.vertical === !0 && _.options.centerMode === !0) {
3988                    if (_.options.slidesToShow === 2) {
3989                        coef = -1.5
3990                    } else if (_.options.slidesToShow === 1) {
3991                        coef = -2
3992                    }
3993                }
3994                verticalOffset = (verticalHeight * _.options.slidesToShow) * coef
3995            }
3996            if (_.slideCount % _.options.slidesToScroll !== 0) {
3997                if (slideIndex + _.options.slidesToScroll > _.slideCount && _.slideCount > _.options.slidesToShow) {
3998                    if (slideIndex > _.slideCount) {
3999                        _.slideOffset = ((_.options.slidesToShow - (sl
3999ideIndex - _.slideCount)) * _.slideWidth) * -1;
4000                        verticalOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * verticalHeight) * -1
4001                    } else {
4002                        _.slideOffset = ((_.slideCount % _.options.slidesToScroll) * _.slideWidth) * -1;
4003                        verticalOffset = ((_.slideCount % _.options.slidesToScroll) * verticalHeight) * -1
4004                    }
4005                }
4006            }
4007        } else {
4008            if (slideIndex + _.options.slidesToShow > _.slideCount) {
4009                _.slideOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * _.slideWidth;
4010                verticalOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * verticalHeight
4011            }
4012        }
4013        if (_.slideCount <= _.options.slidesToShow) {
4014            _.slideOffset = 0;
4015            verticalOffset = 0
4016        }
4017        if (_.options.centerMode === !0 && _.slideCount <= _.options.slidesToShow) {
4018            _.slideOffset = ((_.slideWidth * Math.floor(_.options.slidesToShow)) / 2) - ((_.slideWidth * _.slideCount) / 2)
4019        } else if (_.options.centerMode === !0 && _.options.infinite === !0) {
4020            _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2) - _.slideWidth
4021        } else if (_.options.centerMode === !0) {
4022            _.slideOffset = 0;
4023            _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2)
4024        }
4025        if (_.options.vertical === !1) {
4026            targetLeft = ((slideIndex * _.slideWidth) * -1) + _.slideOffset
4027        } else {
4028            targetLeft = ((slideIndex * verticalHeight) * -1) + verticalOffset
4029        }
4030        if (_.options.variableWidth === !0) {
4031            if (_.slideCount <= _.options.slidesToShow || _.options.infinite === !1) {
4032                targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex)
4033            } else {
4034                targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow)
4035            }
4036            if (_.options.rtl === !0) {
4037                if (targetSlide[0]) {
4038                    targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1
4039                } else {
4040                    targetLeft = 0
4041                }
4042            } else {
4043                targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0
4044            }
4045            if (_.options.centerMode === !0) {
4046                if (_.slideCount <= _.options.slidesToShow || _.options.infinite === !1) {
4047                    targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex)
4048                } else {
4049                    targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow + 1)
4050                }
4051                if (_.options.rtl === !0) {
4052                    if (targetSlide[0]) {
4053                        targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1
4054                    } else {
4055                        targetLeft = 0
4056                    }
4057                } else {
4058                    targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0
4059                }
4060                targetLeft += (_.$list.width() - targetSlide.outerWidth()) / 2
4061            }
4062        }
4063        return targetLeft
4064    };
4065    Slick.prototype.getOption = Slick.prototype.slickGetOption = function(option) {
4066        var _ = this;
4067        return _.options[option]
4068    };
4069    Slick.prototype.getNavigableIndexes = function() {
4070        var _ = this,
4071            breakPoint = 0,
4072            counter = 0,
4073            indexes = [],
4074            max;
4075        if (_.options.infinite === !1) {
4076            max = _.slideCount
4077        } else {
4078            breakPoint = _.options.slidesToScroll * -1;
4079            counter = _.options.slidesToScroll * -1;
4080            max = _.slideCount * 2
4081        }
4082        while (breakPoint < max) {
4083            indexes.push(breakPoint);
4084            breakPoint = counter + _.options.slidesToScroll;
4085            counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow
4086        }
4087        return indexes
4088    };
4089    Slick.prototype.getSlick = function() {
4090        return this
4091    };
4092    Slick.prototype.getSlideCount = function() {
4093        var _ = this,
4094            slidesTraversed, swipedSlide, swipeTarget, centerOffset;
4095        centerOffset = _.options.centerMode === !0 ? Math.floor(_.$list.width() / 2) : 0;
4096        swipeTarget = (_.swipeLeft * -1) + centerOffset;
4097        if (_.options.swipeToSlide === !0) {
4098            _.$slideTrack.find('.slick-slide').each(function(index, slide) {
4099                var slideOuterWidth, slideOffset, slideRightBoundary;
4100                slideOuterWidth = $(slide).outerWidth();
4101                slideOffset = slide.offsetLeft;
4102                if (_.options.centerMode !== !0) {
4103                    slideOffset += (slideOuterWidth / 2)
4104                }
4105                slideRightBoundary = slideOffset + (slideOuterWidth);
4106                if (swipeTarget < slideRightBoundary) {
4107                    swipedSlide = slide;
4108                    return !1
4109                }
4110            });
4111            slidesTraversed = Math.abs($(swipedSlide).attr('data-slick-index') - _.currentSlide) || 1;
4112            return slidesTraversed
4113        } else {
4114            return _.options.slidesToScroll
4115        }
4116    };
4117    Slick.prototype.goTo = Slick.prototype.slickGoTo = function(slide, dontAnimate) {
4118        var _ = this;
4119        _.changeSlide({
4120            data: {
4121                message: 'index',
4122                index: parseInt(slide)
4123            }
4124        }, dontAnimate)
4125    };
4126    Slick.prototype.init = function(creation) {
4127        var _ = this;
4128        if (!$(_.$slider).hasClass('slick-initialized')) {
4129            $(_.$slider).addClass('slick-initialized');
4130            _.buildRows();
4131            _.buildOut();
4132            _.setProps();
4133            _.startLoad();
4134            _.loadSlider();
4135            _.initializeEvents();
4136            _.updateArrows();
4137            _.updateDots();
4138            _.checkResponsive(!0);
4139            _.focusHandler()
4140        }
4141        if (creation) {
4142            _.$slider.trigger('init', [_])
4143        }
4144        if (_.options.accessibility === !0) {
4145            _.initADA()
4146        }
4147        if (_.options.autoplay) {
4148            _.paused = !1;
4149            _.autoPlay()
4150        }
4151    };
4152    Slick.prototype.initADA = function() {
4153        var _ = this,
4154            numDotGroups = Math.ceil(_.slideCount / _.options.slidesToShow),
4155            tabControlIndexes = _.getNavigableIndexes().filter(function(val) {
4156                return (val >= 0) && (val < _.slideCount)
4157            });
4158        _.$slides.add(_.$slideTrack.find('.slick-cloned')).attr({
4159            'aria-hidden': 'true',
4160            'tabindex': '-1'
4161        }).find('a, input, button, select').attr({
4162            'tabindex': '-1'
4163        });
4164        if (_.$dots !== null) {
4165            _.$slides.not(_.$slideTrack.find('.slick-cloned')).each(function(i) {
4166                var slideControlIndex = tabControlIndexes.indexOf(i);
4167                $(this).attr({
4168                    'role': 'tabpanel',
4169                    'id': 'slick-slide' + _.instanceUid + i,
4170                    'tabindex': -1
4171                });
4172                if (slideControlIndex !== -1) {
4173                    var ariaButtonControl = 'slick-slide-control' + _.instanceUid + slideControlIndex
4174                    if ($('#' + ariaButtonControl).length) {
4175                        $(this).attr({
4176                            'aria-describedby': ariaButtonControl
4177                        })
4178                    }
4179                }
4180            });
4181            _.$dots.attr('role', 'tablist').find('li').each(function(i) {
4182                var mappedSlideIndex = tabControlIndexes[i];
4183                $(this).attr({
4184                    'role': 'presentation'
4185                });
4186                $(this).find('button').first().attr({
4187                    'role': 'tab',
4188                    'id': 'slick-slide-control' + _.instanceUid + i,
4189                    'aria-controls': 'slick-slide' + _.instanceUid + mappedSlideIndex,
4190                    'aria-label': (i + 1) + ' of ' + numDotGroups,
4191                    'aria-selected': null,
4192                    'tabindex': '-1'
4193                })
4194            }).eq(_.currentSlide).find('button').attr({
4195                'aria-selected': 'true',
4196                'tabindex': '0'
4197            }).end()
4198        }
4199        for (var i = _.currentSlide, max = i + _.options.slidesToShow; i < max; i++) {
4200            if (_.options.focusOnChange) {
4201                _.$slides.eq(i).attr({
4202                    'tabindex': '0'
4203                })
4204            } else {
4205                _.$slides.eq(i).removeAttr('tabindex')
4206            }
4207        }
4208        _.activateADA()
4209    };
4210    Slick.prototype.initArrowEvents = function() {
4211        var _ = this;
4212        if (_.options.arrows === !0 && _.slideCount > _.options.slidesToShow) {
4213            _.$prevArrow.off('click.slick').on('click.slick', {
4214                message: 'previous'
4215            }, _.changeSlide);
4216            _.$nextArrow.off('click.slick').on('click.slick', {
4217                message: 'next'
4218            }, _.changeSlide);
4219            if (_.options.accessibility === !0) {
4220                _.$prevArrow.on('keydown.slick', _.keyHandler);
4221                _.$nextArrow.on('keydown.slick', _.keyHandler)
4222            }
4223        }
4224    };
4225    Slick.prototype.initDotEvents = function() {
4226        var _ = this;
4227        if (_.options.dots === !0 && _.slideCount > _.options.slidesToShow) {
4228            $('li', _.$dots).on('click.slick', {
4229                message: 'index'
4230            }, _.changeSlide);
4231            if (_.options.accessibility === !0) {
4232                _.$dots.on('keydown.slick', _.keyHandler)
4233            }
4234        }
4235        if (_.options.dots === !0 && _.options.pauseOnDotsHover === !0 && _.slideCount > _.options.slidesToShow) {
4236            $('li', _.$dots).on('mouseenter.slick', $.proxy(_.interrupt, _, !0)).on('mouseleave.slick', $.proxy(_.interrupt, _, !1))
4237        }
4238    };
4239    Slick.prototype.initSlideEvents = function() {
4240        var _ = this;
4241        if (_.options.pauseOnHover) {
4242            _.$list.on('mouseenter.slick', $.proxy(_.interrupt, _, !0));
4243            _.$list.on('mouseleave.slick', $.proxy(_.interrupt, _, !1))
4244        }
4245    };
4246    Slick.prototype.initializeEvents = function() {
4247        var _ = this;
4248        _.initArrowEvents();
4249        _.initDotEvents();
4250        _.initSlideEvents();
4251        _.$list.on('touchstart.slick mousedown.slick', {
4252            action: 'start'
4253        }, _.swipeHandler);
4254        _.$list.on('touchmove.slick mousemove.slick', {
4255            action: 'move'
4256        }, _.swipeHandler);
4257        _.$list.on('touchend.slick mouseup.slick', {
4258            action: 'end'
4259        }, _.swipeHandler);
4260        _.$list.on('touchcancel.slick mouseleave.slick', {
4261            action: 'end'
4262        }, _.swipeHandler);
4263        _.$list.on('click.slick', _.clickHandler);
4264        $(document).on(_.visibilityChange, $.proxy(_.visibility, _));
4265        if (_.options.accessibility === !0) {
4266            _.$list.on('keydown.slick', _.keyHandler)
4267        }
4268        if (_.options.focusOnSelect === !0) {
4269            $(_.$slideTrack).children().on('click.slick', _.selectHandler)
4270        }
4271        $(window).on('orientationchange.slick.slick-' + _.instanceUid, $.proxy(_.orientationChange, _));
4272        $(window).on('resize.slick.slick-' + _.instanceUid, $.proxy(_.resize, _));
4273        $('[draggable!=true]', _.$slideTrack).on('dragstart', _.preventDefault);
4274        $(window).on('load.slick.slick-' + _.instanceUid, _.setPosition);
4275        $(_.setPosition)
4276    };
4277    Slick.prototype.initUI = function() {
4278        var _ = this;
4279        if (_.options.arrows === !0 && _.slideCount > _.options.slidesToShow) {
4280            _.$prevArrow.show();
4281            _.$nextArrow.show()
4282        }
4283        if (_.options.dots === !0 && _.slideCount > _.options.slidesToShow) {
4284            _.$dots.show()
4285        }
4286    };
4287    Slick.prototype.keyHandler = function(event) {
4288        var _ = this;
4289        if (!event.target.tagName.match('TEXTAREA|INPUT|SELECT')) {
4290            if (event.keyCode === 37 && _.options.accessibility === !0) {
4291                _.changeSlide({
4292                    data: {
4293                        message: _.options.rtl === !0 ? 'next' : 'previous'
4294                    }
4295                })
4296            } else if (event.keyCode === 39 && _.options.accessibility === !0) {
4297                _.changeSlide({
4298                    data: {
4299                        message: _.options.rtl === !0 ? 'previous' : 'next'
4300                    }
4301                })
4302            }
4303        }
4304    };
4305    Slick.prototype.lazyLoad = function() {
4306        var _ = this,
4307            loadRange, cloneRange, rangeStart, rangeEnd;
4308
4309        function loadImages(imagesScope) {
4310            $('img[data-lazy]', imagesScope).each(function() {
4311                var image = $(this),
4312                    imageSource = $(this).attr('data-lazy'),
4313                    imageSrcSet = $(this).attr('data-srcset'),
4314                    imageSizes = $(this).attr('data-sizes') || _.$slider.attr('data-sizes'),
4315                    imageToLoad = document.createElement('img');
4316                imageToLoad.onload = function() {
4317                    image.animate({
4318                        opacity: 0
4319                    }, 100, function() {
4320                        if (imageSrcSet) {
4321                            image.attr('srcset', imageSrcSet);
4322                            if (imageSizes) {
4323                                image.attr('sizes', imageSizes)
4324                            }
4325                        }
4326                        image.attr('src', imageSource).animate({
4327                            opacity: 1
4328                        }, 200, function() {
4329                            image.removeAttr('data-lazy data-srcset data-sizes').removeClass('slick-loading')
4330                        });
4331                        _.$slider.trigger('lazyLoaded', [_, image, imageSource])
4332                    })
4333                };
4334                imageToLoad.onerror = function() {
4335                    image.removeAttr('data-lazy').removeClass('slick-loading').addClass('slick-lazyload-error');
4336                    _.$slider.trigger('lazyLoadError', [_, image, imageSource])
4337                };
4338                imageToLoad.src = imageSource
4339            })
4340        }
4341        if (_.options.centerMode === !0) {
4342            if (_.options.infinite === !0) {
4343                rangeStart = _.currentSlide + (_.options.slidesToShow / 2 + 1);
4344                rangeEnd = rangeStart + _.options.slidesToShow + 2
4345            } else {
4346                rangeStart = Math.max(0, _.currentSlide - (_.options.slidesToShow / 2 + 1));
4347                rangeEnd = 2 + (_.options.slidesToShow / 2 + 1) + _.currentSlide
4348            }
4349        } else {
4350            rangeStart = _.options.infinite ? _.options.slidesToShow + _.currentSlide : _.currentSlide;
4351            rangeEnd = Math.ceil(rangeStart + _.options.slidesToShow);
4352            if (_.options.fade === !0) {
4353                if (rangeStart > 0) rangeStart--;
4354                if (rangeEnd <= _.slideCount) rangeEnd++
4355            }
4356        }
4357        loadRange = _.$slider.find('.slick-slide').slice(rangeStart, rangeEnd);
4358        if (_.options.lazyLoad === 'anticipated') {
4359            var prevSlide = rangeStart - 1,
4360                nextSlide = rangeEnd,
4361                $slides = _.$slider.find('.slick-slide');
4362            for (var i = 0; i < _.options.slidesToScroll; i++) {
4363                if (prevSlide < 0) prevSlide = _.slideCount - 1;
4364                loadRange = loadRange.add($slides.eq(prevSlide));
4365                loadRange = loadRange.add($slides.eq(nextSlide));
4366                prevSlide--;
4367                nextSlide++
4368            }
4369        }
4370        loadImages(loadRange);
4371        if (_.slideCount <= _.options.slidesToShow) {
4372            cloneRange = _.$slider.find('.slick-slide');
4373            loadImages(cloneRange)
4374        } else if (_.currentSlide >= _.slideCount - _.options.slidesToShow) {
4375            cloneRange = _.$slider.find('.slick-cloned').slice(0, _.options.slidesToShow);
4376            loadImages(cloneRange)
4377        } else if (_.currentSlide === 0) {
4378            cloneRange = _.$slider.find('.slick-cloned').slice(_.options.slidesToShow * -1);
4379            loadImages(cloneRange)
4380        }
4381    };
4382    Slick.prototype.loadSlider = function() {
4383        var _ = this;
4384        _.setPosition();
4385        _.$slideTrack.css({
4386            opacity: 1
4387        });
4388        _.$slider.removeClass('slick-loading');
4389        _.initUI();
4390        if (_.options.lazyLoad === 'progressive') {
4391            _.progressiveLazyLoad()
4392        }
4393    };
4394    Slick.prototype.next = Slick.prototype.slickNext = function() {
4395        var _ = this;
4396        _.changeSlide({
4397            data: {
4398                message: 'next'
4399            }
4400        })
4401    };
4402    Slick.prototype.orientationChange = function() {
4403        var _ = this;
4404        _.checkResponsive();
4405        _.setPosition()
4406    };
4407    Slick.prototype.pause = Slick.prototype.slickPause = function() {
4408        var _ = this;
4409        _.autoPlayClear();
4410        _.paused = !0
4411    };
4412    Slick.prototype.play = Slick.prototype.slickPlay = function() {
4413        var _ = this;
4414        _.autoPlay();
4415        _.options.autoplay = !0;
4416        _.paused = !1;
4417        _.focussed = !1;
4418        _.interrupted = !1
4419    };
4420    Slick.prototype.postSlide = function(index) {
4421        var _ = this;
4422        if (!_.unslicked) {
4423            _.$slider.trigger('afterChange', [_, index]);
4424            _.animating = !1;
4425            if (_.slideCount > _.options.slidesToShow) {
4426                _.setPosition()
4427            }
4428            _.swipeLeft = null;
4429            if (_.options.autoplay) {
4430                _.autoPlay()
4431            }
4432            if (_.options.accessibility === !0) {
4433                _.initADA();
4434                if (_.options.focusOnChange) {
4435                    var $currentSlide = $(_.$slides.get(_.currentSlide));
4436                    $currentSlide.attr('tabindex', 0).focus()
4437                }
4438            }
4439        }
4440    };
4441    Slick.prototype.prev = Slick.prototype.slickPrev = function() {
4442        var _ = this;
4443        _.changeSlide({
4444            data: {
4445                message: 'previous'
4446            }
4447        })
4448    };
4449    Slick.prototype.preventDefault = function(event) {
4450        event.preventDefault()
4451    };
4452    Slick.prototype.progressiveLazyLoad = function(tryCount) {
4453        tryCount = tryCount || 1;
4454        var _ = this,
4455            $imgsToLoad = $('img[data-lazy]', _.$slider),
4456            image, imageSource, imageSrcSet, imageSizes, imageToLoad;
4457        if ($imgsToLoad.length) {
4458            image = $imgsToLoad.first();
4459            imageSource = image.attr('data-lazy');
4460            imageSrcSet = image.attr('data-srcset');
4461            imageSizes = image.attr('data-sizes') || _.$slider.attr('data-sizes');
4462            imageToLoad = document.createElement('img');
4463            imageToLoad.onload = function() {
4464                if (imageSrcSet) {
4465                    image.attr('srcset', imageSrcSet);
4466                    if (imageSizes) {
4467                        image.attr('sizes', imageSizes)
4468                    }
4469                }
4470                image.attr('src', imageSource).removeAttr('data-lazy data-srcset data-sizes').removeClass('slick-loading');
4471                if (_.options.adaptiveHeight === !0) {
4472                    _.setPosition()
4473                }
4474                _.$slider.trigger('lazyLoaded', [_, image, imageSource]);
4475                _.progressiveLazyLoad()
4476            };
4477            imageToLoad.onerror = function() {
4478                if (tryCount < 3) {
4479                    setTimeout(function() {
4480                        _.progressiveLazyLoad(tryCount + 1)
4481                    }, 500)
4482                } else {
4483                    image.removeAttr('data-lazy').removeClass('slick-loading').addClass('slick-lazyload-error');
4484                    _.$slider.trigger('lazyLoadError', [_, image, imageSource]);
4485                    _.progressiveLazyLoad()
4486                }
4487            };
4488            imageToLoad.src = imageSource
4489        } else {
4490            _.$slider.trigger('allImagesLoaded', [_])
4491        }
4492    };
4493    Slick.prototype.refresh = function(initializing) {
4494        var _ = this,
4495            currentSlide, lastVisibleIndex;
4496        lastVisibleIndex = _.slideCount - _.options.slidesToShow;
4497        if (!_.options.infinite && (_.currentSlide > lastVisibleIndex)) {
4498            _.currentSlide = lastVisibleIndex
4499        }
4500        if (_.slideCount <= _.options.slidesToShow) {
4501            _.currentSlide = 0
4502        }
4503        currentSlide = _.currentSlide;
4504        _.destroy(!0);
4505        $.extend(_, _.initials, {
4506            currentSlide: currentSlide
4507        });
4508        _.init();
4509        if (!initializing) {
4510            _.changeSlide({
4511                data: {
4512                    message: 'index',
4513                    index: currentSlide
4514                }
4515            }, !1)
4516        }
4517    };
4518    Slick.prototype.registerBreakpoints = function() {
4519        var _ = this,
4520            breakpoint, currentBreakpoint, l, responsiveSettings = _.options.responsive || null;
4521        if ($.type(responsiveSettings) === 'array' && responsiveSettings.length) {
4522            _.respondTo = _.options.respondTo || 'window';
4523            for (breakpoint in responsiveSettings) {
4524                l = _.breakpoints.length - 1;
4525                if (responsiveSettings.hasOwnProperty(breakpoint)) {
4526                    currentBreakpoint = responsiveSettings[breakpoint].breakpoint;
4527                    while (l >= 0) {
4528                        if (_.breakpoints[l] && _.breakpoints[l] === currentBreakpoint) {
4529                            _.breakpoints.splice(l, 1)
4530                        }
4531                        l--
4532                    }
4533                    _.breakpoints.push(currentBreakpoint);
4534                    _.breakpointSettings[currentBreakpoint] = responsiveSettings[breakpoint].settings
4535                }
4536            }
4537            _.breakpoints.sort(function(a, b) {
4538                return (_.options.mobileFirst) ? a - b : b - a
4539            })
4540        }
4541    };
4542    Slick.prototype.reinit = function() {
4543        var _ = this;
4544        _.$slides = _.$slideTrack.children(_.options.slide).addClass('slick-slide');
4545        _.slideCount = _.$slides.length;
4546        if (_.currentSlide >= _.slideCount && _.currentSlide !== 0) {
4547            _.currentSlide = _.currentSlide - _.options.slidesToScroll
4548        }
4549        if (_.slideCount <= _.options.slidesToShow) {
4550            _.currentSlide = 0
4551        }
4552        _.registerBreakpoints();
4553        _.setProps();
4554        _.setupInfinite();
4555        _.buildArrows();
4556        _.updateArrows();
4557        _.initArrowEvents();
4558        _.buildDots();
4559        _.updateDots();
4560        _.initDotEvents();
4561        _.cleanUpSlideEvents();
4562        _.initSlideEvents();
4563        _.checkResponsive(!1, !0);
4564        if (_.options.focusOnSelect === !0) {
4565            $(_.$slideTrack).children().on('click.slick', _.selectHandler)
4566        }
4567        _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);
4568        _.setPosition();
4569        _.focusHandler();
4570        _.paused = !_.options.autoplay;
4571        _.autoPlay();
4572        _.$slider.trigger('reInit', [_])
4573    };
4574    Slick.prototype.resize = function() {
4575        var _ = this;
4576        if ($(window).width() !== _.windowWidth) {
4577            clearTimeout(_.windowDelay);
4578            _.windowDelay = window.setTimeout(function() {
4579                _.windowWidth = $(window).width();
4580                _.checkResponsive();
4581                if (!_.unslicked) {
4582                    _.setPosition()
4583                }
4584            }, 50)
4585        }
4586    };
4587    Slick.prototype.removeSlide = Slick.prototype.slickRemove = function(index, removeBefore, removeAll) {
4588        var _ = this;
4589        if (typeof(index) === 'boolean') {
4590            removeBefore = index;
4591            index = removeBefore === !0 ? 0 : _.slideCount - 1
4592        } else {
4593            index = removeBefore === !0 ? --index : index
4594        }
4595        if (_.slideCount < 1 || index < 0 || index > _.slideCount - 1) {
4596            return !1
4597        }
4598        _.unload();
4599        if (removeAll === !0) {
4600            _.$slideTrack.children().remove()
4601        } else {
4602            _.$slideTrack.children(this.options.slide).eq(index).remove()
4603        }
4604        _.$slides = _.$slideTrack.children(this.options.slide);
4605        _.$slideTrack.children(this.options.slide).detach();
4606        _.$slideTrack.append(_.$slides);
4607        _.$slidesCache = _.$slides;
4608        _.reinit()
4609    };
4610    Slick.prototype.setCSS = function(position) {
4611        var _ = this,
4612            positionProps = {},
4613            x, y;
4614        if (_.options.rtl === !0) {
4615            position = -position
4616        }
4617        x = _.positionProp == 'left' ? Math.ceil(position) + 'px' : '0px';
4618        y = _.positionProp == 'top' ? Math.ceil(position) + 'px' : '0px';
4619        positionProps[_.positionProp] = position;
4620        if (_.transformsEnabled === !1) {
4621            _.$slideTrack.css(positionProps)
4622        } else {
4623            positionProps = {};
4624            if (_.cssTransitions === !1) {
4625                positionProps[_.animType] = 'translate(' + x + ', ' + y + ')';
4626                _.$slideTrack.css(positionProps)
4627            } else {
4628                positionProps[_.animType] = 'translate3d(' + x + ', ' + y + ', 0px)';
4629                _.$slideTrack.css(positionProps)
4630            }
4631        }
4632    };
4633    Slick.prototype.setDimensions = function() {
4634        var _ = this;
4635        if (_.options.vertical === !1) {
4636            if (_.options.centerMode === !0) {
4637                _.$list.css({
4638                    padding: ('0px ' + _.options.centerPadding)
4639                })
4640            }
4641        } else {
4642            _.$list.height(_.$slides.first().outerHeight(!0) * _.options.slidesToShow);
4643            if (_.options.centerMode === !0) {
4644                _.$list.css({
4645                    padding: (_.options.centerPadding + ' 0px')
4646                })
4647            }
4648        }
4649        _.listWidth = _.$list.width();
4650        _.listHeight = _.$list.height();
4651        if (_.options.vertical === !1 && _.options.variableWidth === !1) {
4652            _.slideWidth = Math.ceil(_.listWidth / _.options.slidesToShow);
4653            _.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length)))
4654        } else if (_.options.variableWidth === !0) {
4655            _.$slideTrack.width(5000 * _.slideCount)
4656        } else {
4657            _.slideWidth = Math.ceil(_.listWidth);
4658            _.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(!0) * _.$slideTrack.children('.slick-slide').length)))
4659        }
4660        var offset = _.$slides.first().outerWidth(!0) - _.$slides.first().width();
4661        if (_.options.variableWidth === !1) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset)
4662    };
4663    Slick.prototype.setFade = function() {
4664        var _ = this,
4665            targetLeft;
4666        _.$slides.each(function(index, element) {
4667            targetLeft = (_.slideWidth * index) * -1;
4668            if (_.options.rtl === !0) {
4669                $(element).css({
4670                    position: 'relative',
4671                    right: targetLeft,
4672                    top: 0,
4673                    zIndex: _.options.zIndex - 2,
4674                    opacity: 0
4675                })
4676            } else {
4677                $(element).css({
4678                    position: 'relative',
4679                    left: targetLeft,
4680                    top: 0,
4681                    zIndex: _.options.zIndex - 2,
4682                    opacity: 0
4683                })
4684            }
4685        });
4686        _.$slides.eq(_.currentSlide).css({
4687            zIndex: _.options.zIndex - 1,
4688            opacity: 1
4689        })
4690    };
4691    Slick.prototype.setHeight = function() {
4692        var _ = this;
4693        if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === !0 && _.options.vertical === !1) {
4694            var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(!0);
4695            _.$list.css('height', targetHeight)
4696        }
4697    };
4698    Slick.prototype.setOption = Slick.prototype.slickSetOption = function() {
4699        var _ = this,
4700            l, item, option, value, refresh = !1,
4701            type;
4702        if ($.type(arguments[0]) === 'object') {
4703            option = arguments[0];
4704            refresh = arguments[1];
4705            type = 'multiple'
4706        } else if ($.type(arguments[0]) === 'string') {
4707            option = arguments[0];
4708            value = arguments[1];
4709            refresh = arguments[2];
4710            if (arguments[0] === 'responsive' && $.type(arguments[1]) === 'array') {
4711                type = 'responsive'
4712            } else if (typeof arguments[1] !== 'undefined') {
4713                type = 'single'
4714            }
4715        }
4716        if (type === 'single') {
4717            _.options[option] = value
4718        } else if (type === 'multiple') {
4719            $.each(option, function(opt, val) {
4720                _.options[opt] = val
4721            })
4722        } else if (type === 'responsive') {
4723            for (item in value) {
4724                if ($.type(_.options.responsive) !== 'array') {
4725                    _.options.responsive = [value[item]]
4726                } else {
4727                    l = _.options.responsive.length - 1;
4728                    while (l >= 0) {
4729                        if (_.options.responsive[l].breakpoint === value[item].breakpoint) {
4730                            _.options.responsive.splice(l, 1)
4731                        }
4732                        l--
4733                    }
4734                    _.options.responsive.push(value[item])
4735                }
4736            }
4737        }
4738        if (refresh) {
4739            _.unload();
4740            _.reinit()
4741        }
4742    };
4743    Slick.prototype.setPosition = function() {
4744        var _ = this;
4745        _.setDimensions();
4746        _.setHeight();
4747        if (_.options.fade === !1) {
4748            _.setCSS(_.getLeft(_.currentSlide))
4749        } else {
4750            _.setFade()
4751        }
4752        _.$slider.trigger('setPosition', [_])
4753    };
4754    Slick.prototype.setProps = function() {
4755        var _ = this,
4756            bodyStyle = document.body.style;
4757        _.positionProp = _.options.vertical === !0 ? 'top' : 'left';
4758        if (_.positionProp === 'top') {
4759            _.$slider.addClass('slick-vertical')
4760        } else {
4761            _.$slider.removeClass('slick-vertical')
4762        }
4763        if (bodyStyle.WebkitTransition !== undefined || bodyStyle.MozTransition !== undefined || bodyStyle.msTransition !== undefined) {
4764            if (_.options.useCSS === !0) {
4765                _.cssTransitions = !0
4766            }
4767        }
4768        if (_.options.fade) {
4769            if (typeof _.options.zIndex === 'number') {
4770                if (_.options.zIndex < 3) {
4771                    _.options.zIndex = 3
4772                }
4773            } else {
4774                _.options.zIndex = _.defaults.zIndex
4775            }
4776        }
4777        if (bodyStyle.OTransform !== undefined) {
4778            _.animType = 'OTransform';
4779            _.transformType = '-o-transform';
4780            _.transitionType = 'OTransition';
4781            if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = !1
4782        }
4783        if (bodyStyle.MozTransform !== undefined) {
4784            _.animType = 'MozTransform';
4785            _.transformType = '-moz-transform';
4786            _.transitionType = 'MozTransition';
4787            if (bodyStyle.perspectiveProperty === undefined && bodyStyle.MozPerspective === undefined) _.animType = !1
4788        }
4789        if (bodyStyle.webkitTransform !== undefined) {
4790            _.animType = 'webkitTransform';
4791            _.transformType = '-webkit-transform';
4792            _.transitionType = 'webkitTransition';
4793            if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = !1
4794        }
4795        if (bodyStyle.msTransform !== undefined) {
4796            _.animType = 'msTransform';
4797            _.transformType = '-ms-transform';
4798            _.transitionType = 'msTransition';
4799            if (bodyStyle.msTransform === undefined) _.animType = !1
4800        }
4801        if (bodyStyle.transform !== undefined && _.animType !== !1) {
4802            _.animType = 'transform';
4803            _.transformType = 'transform';
4804            _.transitionType = 'transition'
4805        }
4806        _.transformsEnabled = _.options.useTransform && (_.animType !== null && _.animType !== !1)
4807    };
4808    Slick.prototype.setSlideClasses = function(index) {
4809        var _ = this,
4810            centerOffset, allSlides, indexOffset, remainder;
4811        allSlides = _.$slider.find('.slick-slide').removeClass('slick-active slick-center slick-current').attr('aria-hidden', 'true');
4812        _.$slides.eq(index).addClass('slick-current');
4813        if (_.options.centerMode === !0) {
4814            var evenCoef = _.options.slidesToShow % 2 === 0 ? 1 : 0;
4815            centerOffset = Math.floor(_.options.slidesToShow / 2);
4816            if (_.options.infinite === !0) {
4817                if (index >= centerOffset && index <= (_.slideCount - 1) - centerOffset) {
4818                    _.$slides.slice(index - centerOffset + evenCoef, index + centerOffset + 1).addClass('slick-active').attr('aria-hidden', 'false')
4819                } else {
4820                    indexOffset = _.options.slidesToShow + index;
4821                    allSlides.slice(indexOffset - centerOffset + 1 + evenCoef, indexOffset + centerOffset + 2).addClass('slick-active').attr('aria-hidden', 'false')
4822                }
4823                if (index === 0) {
4824                    allSlides.eq(_.options.slidesToShow + _.slideCount + 1).addClass('slick-center')
4825                } else if (index === _.slideCount - 1) {
4826                    allSlides.eq(_.options.slidesToShow).addClass('slick-center')
4827                }
4828            }
4829            _.$slides.eq(index).addClass('slick-center')
4830        } else {
4831            if (index >= 0 && index <= (_.slideCount - _.options.slidesToShow)) {
4832                _.$slides.slice(index, index + _.options.slidesToShow).addClass('slick-active').attr('aria-hidden', 'false')
4833            } else if (allSlides.length <= _.options.slidesToShow) {
4834                allSlides.addClass('slick-active').attr('aria-hidden', 'false')
4835            } else {
4836                remainder = _.slideCount % _.options.slidesToShow;
4837                indexOffset = _.options.infinite === !0 ? _.options.slidesToShow + index : index;
4838                if (_.options.slidesToShow == _.options.slidesToScroll && (_.slideCount - index) < _.options.slidesToShow) {
4839                    allSlides.slice(indexOffset - (_.options.slidesToShow - remainder), indexOffset + remainder).addClass('slick-active').attr('aria-hidden', 'false')
4840                } else {
4841                    allSlides.slice(indexOffset, indexOffset + _.options.slidesToShow).addClass('slick-active').attr('aria-hidden', 'false')
4842                }
4843            }
4844        }
4845        if (_.options.lazyLoad === 'ondemand' || _.options.lazyLoad === 'anticipated') {
4846            _.lazyLoad()
4847        }
4848    };
4849    Slick.prototype.setupInfinite = function() {
4850        var _ = this,
4851            i, slideIndex, infiniteCount;
4852        if (_.options.fade === !0) {
4853            _.options.centerMode = !1
4854        }
4855        if (_.options.infinite === !0 && _.options.fade === !1) {
4856            slideIndex = null;
4857            if (_.slideCount > _.options.slidesToShow) {
4858                if (_.options.centerMode === !0) {
4859                    infiniteCount = _.options.slidesToShow + 1
4860                } else {
4861                    infiniteCount = _.options.slidesToShow
4862                }
4863                for (i = _.slideCount; i > (_.slideCount - infiniteCount); i -= 1) {
4864                    slideIndex = i - 1;
4865                    $(_.$slides[slideIndex]).clone(!0).attr('id', '').attr('data-slick-index', slideIndex - _.slideCount).prependTo(_.$slideTrack).addClass('slick-cloned')
4866                }
4867                for (i = 0; i < infiniteCount + _.slideCount; i += 1) {
4868                    slideIndex = i;
4869                    $(_.$slides[slideIndex]).clone(!0).attr('id', '').attr('data-slick-index', slideIndex + _.slideCount).appendTo(_.$slideTrack).addClass('slick-cloned')
4870                }
4871                _.$slideTrack.find('.slick-cloned').find('[id]').each(function() {
4872                    $(this).attr('id', '')
4873                })
4874            }
4875        }
4876    };
4877    Slick.prototype.interrupt = function(toggle) {
4878        var _ = this;
4879        if (!toggle) {
4880            _.autoPlay()
4881        }
4882        _.interrupted = toggle
4883    };
4884    Slick.prototype.selectHandler = function(event) {
4885        var _ = this;
4886        var targetElement = $(event.target).is('.slick-slide') ? $(event.target) : $(event.target).parents('.slick-slide');
4887        var index = parseInt(targetElement.attr('data-slick-index'));
4888        if (!index) index = 0;
4889        if (_.slideCount <= _.options.slidesToShow) {
4890            _.slideHandler(index, !1, !0);
4891            return
4892        }
4893        _.slideHandler(index)
4894    };
4895    Slick.prototype.slideHandler = function(index, sync, dontAnimate) {
4896        var targetSlide, animSlide, oldSlide, slideLeft, targetLeft = null,
4897            _ = this,
4898            navTarget;
4899        sync = sync || !1;
4900        if (_.animating === !0 && _.options.waitForAnimate === !0) {
4901            return
4902        }
4903        if (_.options.fade === !0 && _.currentSlide === index) {
4904            return
4905        }
4906        if (sync === !1) {
4907            _.asNavFor(index)
4908        }
4909        targetSlide = index;
4910        targetLeft = _.getLeft(targetSlide);
4911        slideLeft = _.getLeft(_.currentSlide);
4912        _.currentLeft = _.swipeLeft === null ? slideLeft : _.swipeLeft;
4913        if (_.options.infinite === !1 && _.options.centerMode === !1 && (index < 0 || index > _.getDotCount() * _.options.slidesToScroll)) {
4914            if (_.options.fade === !1) {
4915                targetSlide = _.currentSlide;
4916                if (dontAnimate !== !0 && _.slideCount > _.options.slidesToShow) {
4917                    _.animateSlide(slideLeft, function() {
4918                        _.postSlide(targetSlide)
4919                    })
4920                } else {
4921                    _.postSlide(targetSlide)
4922                }
4923            }
4924            return
4925        } else if (_.options.infinite === !1 && _.options.centerMode === !0 && (index < 0 || index > (_.slideCount - _.options.slidesToScroll))) {
4926            if (_.options.fade === !1) {
4927                targetSlide = _.currentSlide;
4928                if (dontAnimate !== !0 && _.slideCount > _.options.slidesToShow) {
4929                    _.animateSlide(slideLeft, function() {
4930                        _.postSlide(targetSlide)
4931                    })
4932                } else {
4933                    _.postSlide(targetSlide)
4934                }
4935            }
4936            return
4937        }
4938        if (_.options.autoplay) {
4939            clearInterval(_.autoPlayTimer)
4940        }
4941        if (targetSlide < 0) {
4942            if (_.slideCount % _.options.slidesToScroll !== 0) {
4943                animSlide = _.slideCount - (_.slideCount % _.options.slidesToScroll)
4944            } else {
4945                animSlide = _.slideCount + targetSlide
4946            }
4947        } else if (targetSlide >= _.slideCount) {
4948            if (_.slideCount % _.options.slidesToScroll !== 0) {
4949                animSlide = 0
4950            } else {
4951                animSlide = targetSlide - _.slideCount
4952            }
4953        } else {
4954            animSlide = targetSlide
4955        }
4956        _.animating = !0;
4957        _.$slider.trigger('beforeChange', [_, _.currentSlide, animSlide]);
4958        oldSlide = _.currentSlide;
4959        _.currentSlide = animSlide;
4960        _.setSlideClasses(_.currentSlide);
4961        if (_.options.asNavFor) {
4962            navTarget = _.getNavTarget();
4963            navTarget = navTarget.slick('getSlick');
4964            if (navTarget.slideCount <= navTarget.options.slidesToShow) {
4965                navTarget.setSlideClasses(_.currentSlide)
4966            }
4967        }
4968        _.updateDots();
4969        _.updateArrows();
4970        if (_.options.fade === !0) {
4971            if (dontAnimate !== !0) {
4972                _.fadeSlideOut(oldSlide);
4973                _.fadeSlide(animSlide, function() {
4974                    _.postSlide(animSlide)
4975                })
4976            } else {
4977                _.postSlide(animSlide)
4978            }
4979            _.animateHeight();
4980            return
4981        }
4982        if (dontAnimate !== !0 && _.slideCount > _.options.slidesToShow) {
4983            _.animateSlide(targetLeft, function() {
4984                _.postSlide(animSlide)
4985            })
4986        } else {
4987            _.postSlide(animSlide)
4988        }
4989    };
4990    Slick.prototype.startLoad = function() {
4991        var _ = this;
4992        if (_.options.arrows === !0 && _.slideCount > _.options.slidesToShow) {
4993            _.$prevArrow.hide();
4994            _.$nextArrow.hide()
4995        }
4996        if (_.options.dots === !0 && _.slideCount > _.options.slidesToShow) {
4997            _.$dots.hide()
4998        }
4999        _.$slider.addClass('slick-loading')
5000    };
5001    Slick.prototype.swipeDirection = function() {
5002        var xDist, yDist, r, swipeAngle, _ = this;
5003        xDist = _.touchObject.startX - _.touchObject.curX;
5004        yDist = _.touchObject.startY - _.touchObject.curY;
5005        r = Math.atan2(yDist, xDist);
5006        swipeAngle = Math.round(r * 180 / Math.PI);
5007        if (swipeAngle < 0) {
5008            swipeAngle = 360 - Math.abs(swipeAngle)
5009        }
5010        if ((swipeAngle <= 45) && (swipeAngle >= 0)) {
5011            return (_.options.rtl === !1 ? 'left' : 'right')
5012        }
5013        if ((swipeAngle <= 360) && (swipeAngle >= 315)) {
5014            return (_.options.rtl === !1 ? 'left' : 'right')
5015        }
5016        if ((swipeAngle >= 135) && (swipeAngle <= 225)) {
5017            return (_.options.rtl === !1 ? 'right' : 'left')
5018        }
5019        if (_.options.verticalSwiping === !0) {
5020            if ((swipeAngle >= 35) && (swipeAngle <= 135)) {
5021                return 'down'
5022            } else {
5023                return 'up'
5024            }
5025        }
5026        return 'vertical'
5027    };
5028    Slick.prototype.swipeEnd = function(event) {
5029        var _ = this,
5030            slideCount, direction;
5031        _.dragging = !1;
5032        _.swiping = !1;
5033        if (_.scrolling) {
5034            _.scrolling = !1;
5035            return !1
5036        }
5037        _.interrupted = !1;
5038        _.shouldClick = (_.touchObject.swipeLength > 10) ? !1 : !0;
5039        if (_.touchObject.curX === undefined) {
5040            return !1
5041        }
5042        if (_.touchObject.edgeHit === !0) {
5043            _.$slider.trigger('edge', [_, _.swipeDirection()])
5044        }
5045        if (_.touchObject.swipeLength >= _.touchObject.minSwipe) {
5046            direction = _.swipeDirection();
5047            switch (direction) {
5048                case 'left':
5049                case 'down':
5050                    slideCount = _.options.swipeToSlide ? _.checkNavigable(_.currentSlide + _.getSlideCount()) : _.currentSlide + _.getSlideCount();
5051                    _.currentDirection = 0;
5052                    break;
5053                case 'right':
5054                case 'up':
5055                    slideCount = _.options.swipeToSlide ? _.checkNavigable(_.currentSlide - _.getSlideCount()) : _.currentSlide - _.getSlideCount();
5056                    _.currentDirection = 1;
5057                    break;
5058                default:
5059            }
5060            if (direction != 'vertical') {
5061                _.slideHandler(slideCount);
5062                _.touchObject = {};
5063                _.$slider.trigger('swipe', [_, direction])
5064            }
5065        } else {
5066            if (_.touchObject.startX !== _.touchObject.curX) {
5067                _.slideHandler(_.currentSlide);
5068                _.touchObject = {}
5069            }
5070        }
5071    };
5072    Slick.prototype.swipeHandler = function(event) {
5073        var _ = this;
5074        if ((_.options.swipe === !1) || ('ontouchend' in document && _.options.swipe === !1)) {
5075            return
5076        } else if (_.options.draggable === !1 && event.type.indexOf('mouse') !== -1) {
5077            return
5078        }
5079        _.touchObject.fingerCount = event.originalEvent && event.originalEvent.touches !== undefined ? event.originalEvent.touches.length : 1;
5080        _.touchObject.minSwipe = _.listWidth / _.options.touchThreshold;
5081        if (_.options.verticalSwiping === !0) {
5082            _.touchObject.minSwipe = _.listHeight / _.options.touchThreshold
5083        }
5084        switch (event.data.action) {
5085            case 'start':
5086                _.swipeStart(event);
5087                break;
5088            case 'move':
5089                _.swipeMove(event);
5090                break;
5091            case 'end':
5092                _.swipeEnd(event);
5093                break
5094        }
5095    };
5096    Slick.prototype.swipeMove = function(event) {
5097        var _ = this,
5098            edgeWasHit = !1,
5099            curLeft, swipeDirection, swipeLength, positionOffset, touches, verticalSwipeLength;
5100        touches = event.originalEvent !== undefined ? event.originalEvent.touches : null;
5101        if (!_.dragging || _.scrolling || touches && touches.length !== 1) {
5102            return !1
5103        }
5104        curLeft = _.getLeft(_.currentSlide);
5105        _.touchObject.curX = touches !== undefined ? touches[0].pageX : event.clientX;
5106        _.touchObject.curY = touches !== undefined ? touches[0].pageY : event.clientY;
5107        _.touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));
5108        verticalSwipeLength = Math.round(Math.sqrt(Math.pow(_.touchObject.curY - _.touchObject.startY, 2)));
5109        if (!_.options.verticalSwiping && !_.swiping && verticalSwipeLength > 4) {
5110            _.scrolling = !0;
5111            return !1
5112        }
5113        if (_.options.verticalSwiping === !0) {
5114            _.touchObject.swipeLength = verticalSwipeLength
5115        }
5116        swipeDirection = _.swipeDirection();
5117        if (event.originalEvent !== undefined && _.touchObject.swipeLength > 4) {
5118            _.swiping = !0;
5119            event.preventDefault()
5120        }
5121        positionOffset = (_.options.rtl === !1 ? 1 : -1) * (_.touchObject.curX > _.touchObject.startX ? 1 : -1);
5122        if (_.options.verticalSwiping === !0) {
5123            positionOffset = _.touchObject.curY > _.touchObject.startY ? 1 : -1
5124        }
5125        swipeLength = _.touchObject.swipeLength;
5126        _.touchObject.edgeHit = !1;
5127        if (_.options.infinite === !1) {
5128            if ((_.currentSlide === 0 && swipeDirection === 'right') || (_.currentSlide >= _.getDotCount() && swipeDirection === 'left')) {
5129                swipeLength = _.touchObject.swipeLength * _.options.edgeFriction;
5130                _.touchObject.edgeHit = !0
5131            }
5132        }
5133        if (_.options.vertical === !1) {
5134            _.swipeLeft = curLeft + swipeLength * positionOffset
5135        } else {
5136            _.swipeLeft = curLeft + (swipeLength * (_.$list.height() / _.listWidth)) * positionOffset
5137        }
5138        if (_.options.verticalSwiping === !0) {
5139            _.swipeLeft = curLeft + swipeLength * positionOffset
5140        }
5141        if (_.options.fade === !0 || _.options.touchMove === !1) {
5142            return !1
5143        }
5144        if (_.animating === !0) {
5145            _.swipeLeft = null;
5146            return !1
5147        }
5148        _.setCSS(_.swipeLeft)
5149    };
5150    Slick.prototype.swipeStart = function(event) {
5151        var _ = this,
5152            touches;
5153        _.interrupted = !0;
5154        if (_.touchObject.fingerCount !== 1 || _.slideCount <= _.options.slidesToShow) {
5155            _.touchObject = {};
5156            return !1
5157        }
5158        if (event.originalEvent !== undefined && event.originalEvent.touches !== undefined) {
5159            touches = event.originalEvent.touches[0]
5160        }
5161        _.touchObject.startX = _.touchObject.curX = touches !== undefined ? touches.pageX : event.clientX;
5162        _.touchObject.startY = _.touchObject.curY = touches !== undefined ? touches.pageY : event.clientY;
5163        _.dragging = !0
5164    };
5165    Slick.prototype.unfilterSlides = Slick.prototype.slickUnfilter = function() {
5166        var _ = this;
5167        if (_.$slidesCache !== null) {
5168            _.unload();
5169            _.$slideTrack.children(this.options.slide).detach();
5170            _.$slidesCache.appendTo(_.$slideTrack);
5171            _.reinit()
5172        }
5173    };
5174    Slick.prototype.unload = function() {
5175        var _ = this;
5176        $('.slick-cloned', _.$slider).remove();
5177        if (_.$dots) {
5178            _.$dots.remove()
5179        }
5180        if (_.$prevArrow && _.htmlExpr.test(_.options.prevArrow)) {
5181            _.$prevArrow.remove()
5182        }
5183        if (_.$nextArrow && _.htmlExpr.test(_.options.nextArrow)) {
5184            _.$nextArrow.remove()
5185        }
5186        _.$slides.removeClass('slick-slide slick-active slick-visible slick-current').attr('aria-hidden', 'true').css('width', '')
5187    };
5188    Slick.prototype.unslick = function(fromBreakpoint) {
5189        var _ = this;
5190        _.$slider.trigger('unslick', [_, fromBreakpoint]);
5191        _.destroy()
5192    };
5193    Slick.prototype.updateArrows = function() {
5194        var _ = this,
5195            centerOffset;
5196        centerOffset = Math.floor(_.options.slidesToShow / 2);
5197        if (_.options.arrows === !0 && _.slideCount > _.options.slidesToShow && !_.options.infinite) {
5198            _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
5199            _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
5200            if (_.currentSlide === 0) {
5201                _.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
5202                _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false')
5203            } else if (_.currentSlide >= _.slideCount - _.options.slidesToShow && _.options.centerMode === !1) {
5204                _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
5205                _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false')
5206            } else if (_.currentSlide >= _.slideCount - 1 && _.options.centerMode === !0) {
5207                _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
5208                _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false')
5209            }
5210        }
5211    };
5212    Slick.prototype.updateDots = function() {
5213        var _ = this;
5214        if (_.$dots !== null) {
5215            _.$dots.find('li').removeClass('slick-active').end();
5216            _.$dots.find('li').eq(Math.floor(_.currentSlide / _.options.slidesToScroll)).addClass('slick-active')
5217        }
5218    };
5219    Slick.prototype.visibility = function() {
5220        var _ = this;
5221        if (_.options.autoplay) {
5222            if (document[_.hidden]) {
5223                _.interrupted = !0
5224            } else {
5225                _.interrupted = !1
5226            }
5227        }
5228    };
5229    $.fn.slick = function() {
5230        var _ = this,
5231            opt = arguments[0],
5232            args = Array.prototype.slice.call(arguments, 1),
5233            l = _.length,
5234            i, ret;
5235        for (i = 0; i < l; i++) {
5236            if (typeof opt == 'object' || typeof opt == 'undefined')
5237                _[i].slick = new Slick(_[i], opt);
5238            else ret = _[i].slick[opt].apply(_[i].slick, args);
5239            if (typeof ret != 'undefined') return ret
5240        }
5241        return _
5242    }
5243}));
5244(function(window, factory) {
5245    if (typeof define === 'function' && define.amd) {
5246        define(['jquery'], function($) {
5247            return factory(window, $)
5248        })
5249    } else if (typeof module === 'object' && typeof module.exports === 'object') {
5250        module.exports = factory(window, require('jquery'))
5251    } else {
5252        window.lity = factory(window, window.jQuery || window.Zepto)
5253    }
5254}(typeof window !== "undefined" ? window : this, function(window, $) {
5255    'use strict';
5256    var document = window.document;
5257    var _win = $(window);
5258    var _deferred = $.Deferred;
5259    var _html = $('html');
5260    var _instances = [];
5261    var _attrAriaHidden = 'aria-hidden';
5262    var _dataAriaHidden = 'lity-' + _attrAriaHidden;
5263    var _focusableElementsSelector = 'a[href],area[href],input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),iframe,object,embed,[contenteditable],[tabindex]:not
5263([tabindex^="-"])';
5264    var _defaultOptions = {
5265        esc: !0,
5266        handler: null,
5267        handlers: {
5268            image: imageHandler,
5269            inline: inlineHandler,
5270            youtube: youtubeHandler,
5271            vimeo: vimeoHandler,
5272            googlemaps: googlemapsHandler,
5273            facebookvideo: facebookvideoHandler,
5274            iframe: iframeHandler
5275        },
5276        template: '<div class="lity" role="dialog" aria-label="Dialog Window (Press escape to close)" tabindex="-1"><div class="lity-wrap" data-lity-close role="document"><div class="lity-loader" aria-hidden="true">Einen Moment...</div><div class="lity-container"><div class="lity-content"></div><button class="lity-close" type="button" aria-label="Close (Press escape to close)" data-lity-close>&times;</button></div></div></div>'
5277    };
5278    var _imageRegexp = /(^data:image\/)|(\.(png|jpe?g|gif|svg|webp|bmp|ico|tiff?)(\?\S*)?$)/i;
5279    var _youtubeRegex = /(youtube(-nocookie)?\.com|youtu\.be)\/(watch\?v=|v\/|u\/|embed\/?)?([\w-]{11})(.*)?/i;
5280    var _vimeoRegex = /(vimeo(pro)?.com)\/(?:[^\d]+)?(\d+)\??(.*)?$/;
5281    var _googlemapsRegex = /((maps|www)\.)?google\.([^\/\?]+)\/?((maps\/?)?\?)(.*)/i;
5282    var _facebookvideoRegex = /(facebook\.com)\/([a-z0-9_-]*)\/videos\/([0-9]*)(.*)?$/i;
5283    var _transitionEndEvent = (function() {
5284        var el = document.createElement('div');
5285        var transEndEventNames = {
5286            WebkitTransition: 'webkitTransitionEnd',
5287            MozTransition: 'transitionend',
5288            OTransition: 'oTransitionEnd otransitionend',
5289            transition: 'transitionend'
5290        };
5291        for (var name in transEndEventNames) {
5292            if (el.style[name] !== undefined) {
5293                return transEndEventNames[name]
5294            }
5295        }
5296        return !1
5297    })();
5298
5299    function transitionEnd(element) {
5300        var deferred = _deferred();
5301        if (!_transitionEndEvent || !element.length) {
5302            deferred.resolve()
5303        } else {
5304            element.one(_transitionEndEvent, deferred.resolve);
5305            setTimeout(deferred.resolve, 500)
5306        }
5307        return deferred.promise()
5308    }
5309
5310    function settings(currSettings, key, value) {
5311        if (arguments.length === 1) {
5312            return $.extend({}, currSettings)
5313        }
5314        if (typeof key === 'string') {
5315            if (typeof value === 'undefined') {
5316                return typeof currSettings[key] === 'undefined' ? null : currSettings[key]
5317            }
5318            currSettings[key] = value
5319        } else {
5320            $.extend(currSettings, key)
5321        }
5322        return this
5323    }
5324
5325    function parseQueryParams(params) {
5326        var pairs = decodeURI(params.split('#')[0]).split('&');
5327        var obj = {},
5328            p;
5329        for (var i = 0, n = pairs.length; i < n; i++) {
5330            if (!pairs[i]) {
5331                continue
5332            }
5333            p = pairs[i].split('=');
5334            obj[p[0]] = p[1]
5335        }
5336        return obj
5337    }
5338
5339    function appendQueryParams(url, params) {
5340        return url + (url.indexOf('?') > -1 ? '&' : '?') + $.param(params)
5341    }
5342
5343    function transferHash(originalUrl, newUrl) {
5344        var pos = originalUrl.indexOf('#');
5345        if (-1 === pos) {
5346            return newUrl
5347        }
5348        if (pos > 0) {
5349            originalUrl = originalUrl.substr(pos)
5350        }
5351        return newUrl + originalUrl
5352    }
5353
5354    function error(msg) {
5355        return $('<span class="lity-error"/>').append(msg)
5356    }
5357
5358    function imageHandler(target, instance) {
5359        var desc = (instance.opener() && instance.opener().data('lity-desc')) || 'Image with no description';
5360        var img = $('<img src="' + target + '" alt="' + desc + '"/>');
5361        var deferred = _deferred();
5362        var failed = function() {
5363            deferred.reject(error('Failed loading image'))
5364        };
5365        img.on('load', function() {
5366            if (this.naturalWidth === 0) {
5367                return failed()
5368            }
5369            deferred.resolve(img)
5370        }).on('error', failed);
5371        return deferred.promise()
5372    }
5373    imageHandler.test = function(target) {
5374        return _imageRegexp.test(target)
5375    };
5376
5377    function inlineHandler(target, instance) {
5378        var el, placeholder, hasHideClass;
5379        try {
5380            el = $(target)
5381        } catch (e) {
5382            return !1
5383        }
5384        if (!el.length) {
5385            return !1
5386        }
5387        placeholder = $('<i style="display:none !important"/>');
5388        hasHideClass = el.hasClass('lity-hide');
5389        instance.element().one('lity:remove', function() {
5390            placeholder.before(el).remove();
5391            if (hasHideClass && !el.closest('.lity-content').length) {
5392                el.addClass('lity-hide')
5393            }
5394        });
5395        return el.removeClass('lity-hide').after(placeholder)
5396    }
5397
5398    function youtubeHandler(target) {
5399        var matches = _youtubeRegex.exec(target);
5400        if (!matches) {
5401            return !1
5402        }
5403        return iframeHandler(transferHash(target, appendQueryParams('https://www.youtube' + (matches[2] || '') + '.com/embed/' + matches[4], $.extend({
5404            autoplay: 1
5405        }, parseQueryParams(matches[5] || '')))))
5406    }
5407
5408    function vimeoHandler(target) {
5409        var matches = _vimeoRegex.exec(target);
5410        if (!matches) {
5411            return !1
5412        }
5413        return iframeHandler(transferHash(target, appendQueryParams('https://player.vimeo.com/video/' + matches[3], $.extend({
5414            autoplay: 1
5415        }, parseQueryParams(matches[4] || '')))))
5416    }
5417
5418    function facebookvideoHandler(target) {
5419        var matches = _facebookvideoRegex.exec(target);
5420        if (!matches) {
5421            return !1
5422        }
5423        if (0 !== target.indexOf('http')) {
5424            target = 'https:' + target
5425        }
5426        return iframeHandler(transferHash(target, appendQueryParams('https://www.facebook.com/plugins/video.php?href=' + target, $.extend({
5427            autoplay: 1
5428        }, parseQueryParams(matches[4] || '')))))
5429    }
5430
5431    function googlemapsHandler(target) {
5432        var matches = _googlemapsRegex.exec(target);
5433        if (!matches) {
5434            return !1
5435        }
5436        return iframeHandler(transferHash(target, appendQueryParams('https://www.google.' + matches[3] + '/maps?' + matches[6], {
5437            output: matches[6].indexOf('layer=c') > 0 ? 'svembed' : 'embed'
5438        })))
5439    }
5440
5441    function iframeHandler(target) {
5442        return '<div class="lity-iframe-container"><iframe frameborder="0" allowfullscreen src="' + target + '"/></div>'
5443    }
5444
5445    function winHeight() {
5446        return document.documentElement.clientHeight ? document.documentElement.clientHeight : Math.round(_win.height())
5447    }
5448
5449    function keydown(e) {
5450        var current = currentInstance();
5451        if (!current) {
5452            return
5453        }
5454        if (e.keyCode === 27 && !!current.options('esc')) {
5455            current.close()
5456        }
5457        if (e.keyCode === 9) {
5458            handleTabKey(e, current)
5459        }
5460    }
5461
5462    function handleTabKey(e, instance) {
5463        var focusableElements = instance.element().find(_focusableElementsSelector);
5464        var focusedIndex = focusableElements.index(document.activeElement);
5465        if (e.shiftKey && focusedIndex <= 0) {
5466            focusableElements.get(focusableElements.length - 1).focus();
5467            e.preventDefault()
5468        } else if (!e.shiftKey && focusedIndex === focusableElements.length - 1) {
5469            focusableElements.get(0).focus();
5470            e.preventDefault()
5471        }
5472    }
5473
5474    function resize() {
5475        $.each(_instances, function(i, instance) {
5476            instance.resize()
5477        })
5478    }
5479
5480    function registerInstance(instanceToRegister) {
5481        if (1 === _instances.unshift(instanceToRegister)) {
5482            _html.addClass('lity-active');
5483            _win.on({
5484                resize: resize,
5485                keydown: keydown
5486            })
5487        }
5488        $('body > *').not(instanceToRegister.element()).addClass('lity-hidden').each(function() {
5489            var el = $(this);
5490            if (undefined !== el.data(_dataAriaHidden)) {
5491                return
5492            }
5493            el.data(_dataAriaHidden, el.attr(_attrAriaHidden) || null)
5494        }).attr(_attrAriaHidden, 'true')
5495    }
5496
5497    function removeInstance(instanceToRemove) {
5498        var show;
5499        instanceToRemove.element().attr(_attrAriaHidden, 'true');
5500        if (1 === _instances.length) {
5501            _html.removeClass('lity-active');
5502            _win.off({
5503                resize: resize,
5504                keydown: keydown
5505            })
5506        }
5507        _instances = $.grep(_instances, function(instance) {
5508            return instanceToRemove !== instance
5509        });
5510        if (!!_instances.length) {
5511            show = _instances[0].element()
5512        } else {
5513            show = $('.lity-hidden')
5514        }
5515        show.removeClass('lity-hidden').each(function() {
5516            var el = $(this),
5517                oldAttr = el.data(_dataAriaHidden);
5518            if (!oldAttr) {
5519                el.removeAttr(_attrAriaHidden)
5520            } else {
5521                el.attr(_attrAriaHidden, oldAttr)
5522            }
5523            el.removeData(_dataAriaHidden)
5524        })
5525    }
5526
5527    function currentInstance() {
5528        if (0 === _instances.length) {
5529            return null
5530        }
5531        return _instances[0]
5532    }
5533
5534    function factory(target, instance, handlers, preferredHandler) {
5535        var handler = 'inline',
5536            content;
5537        var currentHandlers = $.extend({}, handlers);
5538        if (preferredHandler && currentHandlers[preferredHandler]) {
5539            content = currentHandlers[preferredHandler](target, instance);
5540            handler = preferredHandler
5541        } else {
5542            $.each(['inline', 'iframe'], function(i, name) {
5543                delete currentHandlers[name];
5544                currentHandlers[name] = handlers[name]
5545            });
5546            $.each(currentHandlers, function(name, currentHandler) {
5547                if (!currentHandler) {
5548                    return !0
5549                }
5550                if (currentHandler.test && !currentHandler.test(target, instance)) {
5551                    return !0
5552                }
5553                content = currentHandler(target, instance);
5554                if (!1 !== content) {
5555                    handler = name;
5556                    return !1
5557                }
5558            })
5559        }
5560        return {
5561            handler: handler,
5562            content: content || ''
5563        }
5564    }
5565
5566    function Lity(target, options, opener, activeElement) {
5567        var self = this;
5568        var result;
5569        var isReady = !1;
5570        var isClosed = !1;
5571        var element;
5572        var content;
5573        options = $.extend({}, _defaultOptions, options);
5574        element = $(options.template);
5575        self.element = function() {
5576            return element
5577        };
5578        self.opener = function() {
5579            return opener
5580        };
5581        self.options = $.proxy(settings, self, options);
5582        self.handlers = $.proxy(settings, self, options.handlers);
5583        self.resize = function() {
5584            if (!isReady || isClosed) {
5585                return
5586            }
5587            content.css('max-height', winHeight() + 'px').trigger('lity:resize', [self])
5588        };
5589        self.close = function() {
5590            if (!isReady || isClosed) {
5591                return
5592            }
5593            isClosed = !0;
5594            removeInstance(self);
5595            var deferred = _deferred();
5596            if (activeElement && (document.activeElement === element[0] || $.contains(element[0], document.activeElement))) {
5597                try {
5598                    activeElement.focus()
5599                } catch (e) {}
5600            }
5601            content.trigger('lity:close', [self]);
5602            element.removeClass('lity-opened').addClass('lity-closed');
5603            transitionEnd(content.add(element)).always(function() {
5604                content.trigger('lity:remove', [self]);
5605                element.remove();
5606                element = undefined;
5607                deferred.resolve()
5608            });
5609            return deferred.promise()
5610        };
5611        result = factory(target, self, options.handlers, options.handler);
5612        element.attr(_attrAriaHidden, 'false').addClass('lity-loading lity-opened lity-' + result.handler).appendTo('body').focus().on('click', '[data-lity-close]', function(e) {
5613            if ($(e.target).is('[data-lity-close]')) {
5614                self.close()
5615            }
5616        }).trigger('lity:open', [self]);
5617        registerInstance(self);
5618        $.when(result.content).always(ready);
5619
5620        function ready(result) {
5621            content = $(result).css('max-height', winHeight() + 'px');
5622            element.find('.lity-loader').each(function() {
5623                var loader = $(this);
5624                transitionEnd(loader).always(function() {
5625                    loader.remove()
5626                })
5627            });
5628            element.removeClass('lity-loading').find('.lity-content').empty().append(content);
5629            isReady = !0;
5630            content.trigger('lity:ready', [self])
5631        }
5632    }
5633
5634    function lity(target, options, opener) {
5635        if (!target.preventDefault) {
5636            opener = $(opener)
5637        } else {
5638            target.preventDefault();
5639            opener = $(this);
5640            target = opener.data('lity-target') || opener.attr('href') || opener.attr('src')
5641        }
5642        var instance = new Lity(target, $.extend({}, opener.data('lity-options') || opener.data('lity'), options), opener, document.activeElement);
5643        if (!target.preventDefault) {
5644            return instance
5645        }
5646    }
5647    lity.version = '@VERSION';
5648    lity.options = $.proxy(settings, lity, _defaultOptions);
5649    lity.handlers = $.proxy(settings, lity, _defaultOptions.handlers);
5650    lity.current = currentInstance;
5651    $(document).on('click.lity', '[data-lity]', lity);
5652    return lity
5653}));
5654! function(e, t) {
5655    "object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define([], t) : "object" == typeof exports ? exports.AOS = t() : e.AOS = t()
5656}(this, function() {
5657    return function(e) {
5658        function t(o) {
5659            if (n[o]) return n[o].exports;
5660            var i = n[o] = {
5661                exports: {},
5662                id: o,
5663                loaded: !1
5664            };
5665            return e[o].call(i.exports, i, i.exports, t), i.loaded = !0, i.exports
5666        }
5667        var n = {};
5668        return t.m = e, t.c = n, t.p = "dist/", t(0)
5669    }([function(e, t, n) {
5670        "use strict";
5671
5672        function o(e) {
vendor: 11,593 bytes, lines 5673-5965
5673            return e && e.__esModule ? e : {
5674                default: e
5675            }
5676        }
5677        var i = Object.assign || function(e) {
5678                for (var t = 1; t < arguments.length; t++) {
5679                    var n = arguments[t];
5680                    for (var o in n) Object.prototype.hasOwnProperty.call(n, o) && (e[o] = n[o])
5681                }
5682                return e
5683            },
5684            r = n(1),
5685            a = (o(r), n(6)),
5686            u = o(a),
5687            c = n(7),
5688            f = o(c),
5689            s = n(8),
5690            d = o(s),
5691            l = n(9),
5692            p = o(l),
5693            m = n(10),
5694            b = o(m),
5695            v = n(11),
5696            y = o(v),
5697            g = n(14),
5698            h = o(g),
5699            w = [],
5700            k = !1,
5701            x = {
5702                offset: 120,
5703                delay: 0,
5704                easing: "ease",
5705                duration: 400,
5706                disable: !1,
5707                once: !1,
5708                startEvent: "DOMContentLoaded",
5709                throttleDelay: 99,
5710                debounceDelay: 50,
5711                disableMutationObserver: !1
5712            },
5713            j = function() {
5714                var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0];
5715                if (e && (k = !0), k) return w = (0, y.default)(w, x), (0, b.default)(w, x.once), w
5716            },
5717            O = function() {
5718                w = (0, h.default)(), j()
5719            },
5720            _ = function() {
5721                w.forEach(function(e, t) {
5722                    e.node.removeAttribute("data-aos"), e.node.removeAttribute("data-aos-easing"), e.node.removeAttribute("data-aos-duration"), e.node.removeAttribute("data-aos-delay")
5723                })
5724            },
5725            S = function(e) {
5726                return e === !0 || "mobile" === e && p.default.mobile() || "phone" === e && p.default.phone() || "tablet" === e && p.default.tablet() || "function" == typeof e && e() === !0
5727            },
5728            z = function(e) {
5729                x = i(x, e), w = (0, h.default)();
5730                var t = document.all && !window.atob;
5731                return S(x.disable) || t ? _() : (document.querySelector("body").setAttribute("data-aos-easing", x.easing), document.querySelector("body").setAttribute("data-aos-duration", x.duration), document.querySelector("body").setAttribute("data-aos-delay", x.delay), "DOMContentLoaded" === x.startEvent && ["complete", "interactive"].indexOf(document.readyState) > -1 ? j(!0) : "load" === x.startEvent ? window.addEventListener(x.startEvent, function() {
5732                    j(!0)
5733                }) : document.addEventListener(x.startEvent, function() {
5734                    j(!0)
5735                }), window.addEventListener("resize", (0, f.default)(j, x.debounceDelay, !0)), window.addEventListener("orientationchange", (0, f.default)(j, x.debounceDelay, !0)), window.addEventListener("scroll", (0, u.default)(function() {
5736                    (0, b.default)(w, x.once)
5737                }, x.throttleDelay)), x.disableMutationObserver || (0, d.default)("[data-aos]", O), w)
5738            };
5739        e.exports = {
5740            init: z,
5741            refresh: j,
5742            refreshHard: O
5743        }
5744    }, function(e, t) {}, , , , , function(e, t) {
5745        (function(t) {
5746            "use strict";
5747
5748            function n(e, t, n) {
5749                function o(t) {
5750                    var n = b,
5751                        o = v;
5752                    return b = v = void 0, k = t, g = e.apply(o, n)
5753                }
5754
5755                function r(e) {
5756                    return k = e, h = setTimeout(s, t), _ ? o(e) : g
5757                }
5758
5759                function a(e) {
5760                    var n = e - w,
5761                        o = e - k,
5762                        i = t - n;
5763                    return S ? j(i, y - o) : i
5764                }
5765
5766                function c(e) {
5767                    var n = e - w,
5768                        o = e - k;
5769                    return void 0 === w || n >= t || n < 0 || S && o >= y
5770                }
5771
5772                function s() {
5773                    var e = O();
5774                    return c(e) ? d(e) : void(h = setTimeout(s, a(e)))
5775                }
5776
5777                function d(e) {
5778                    return h = void 0, z && b ? o(e) : (b = v = void 0, g)
5779                }
5780
5781                function l() {
5782                    void 0 !== h && clearTimeout(h), k = 0, b = w = v = h = void 0
5783                }
5784
5785                function p() {
5786                    return void 0 === h ? g : d(O())
5787                }
5788
5789                function m() {
5790                    var e = O(),
5791                        n = c(e);
5792                    if (b = arguments, v = this, w = e, n) {
5793                        if (void 0 === h) return r(w);
5794                        if (S) return h = setTimeout(s, t), o(w)
5795                    }
5796                    return void 0 === h && (h = setTimeout(s, t)), g
5797                }
5798                var b, v, y, g, h, w, k = 0,
5799                    _ = !1,
5800                    S = !1,
5801                    z = !0;
5802                if ("function" != typeof e) throw new TypeError(f);
5803                return t = u(t) || 0, i(n) && (_ = !!n.leading, S = "maxWait" in n, y = S ? x(u(n.maxWait) || 0, t) : y, z = "trailing" in n ? !!n.trailing : z), m.cancel = l, m.flush = p, m
5804            }
5805
5806            function o(e, t, o) {
5807                var r = !0,
5808                    a = !0;
5809                if ("function" != typeof e) throw new TypeError(f);
5810                return i(o) && (r = "leading" in o ? !!o.leading : r, a = "trailing" in o ? !!o.trailing : a), n(e, t, {
5811                    leading: r,
5812                    maxWait: t,
5813                    trailing: a
5814                })
5815            }
5816
5817            function i(e) {
5818                var t = "undefined" == typeof e ? "undefined" : c(e);
5819                return !!e && ("object" == t || "function" == t)
5820            }
5821
5822            function r(e) {
5823                return !!e && "object" == ("undefined" == typeof e ? "undefined" : c(e))
5824            }
5825
5826            function a(e) {
5827                return "symbol" == ("undefined" == typeof e ? "undefined" : c(e)) || r(e) && k.call(e) == d
5828            }
5829
5830            function u(e) {
5831                if ("number" == typeof e) return e;
5832                if (a(e)) return s;
5833                if (i(e)) {
5834                    var t = "function" == typeof e.valueOf ? e.valueOf() : e;
5835                    e = i(t) ? t + "" : t
5836                }
5837                if ("string" != typeof e) return 0 === e ? e : +e;
5838                e = e.replace(l, "");
5839                var n = m.test(e);
5840                return n || b.test(e) ? v(e.slice(2), n ? 2 : 8) : p.test(e) ? s : +e
5841            }
5842            var c = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
5843                    return typeof e
5844                } : function(e) {
5845                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
5846                },
5847                f = "Expected a function",
5848                s = NaN,
5849                d = "[object Symbol]",
5850                l = /^\s+|\s+$/g,
5851                p = /^[-+]0x[0-9a-f]+$/i,
5852                m = /^0b[01]+$/i,
5853                b = /^0o[0-7]+$/i,
5854                v = parseInt,
5855                y = "object" == ("undefined" == typeof t ? "undefined" : c(t)) && t && t.Object === Object && t,
5856                g = "object" == ("undefined" == typeof self ? "undefined" : c(self)) && self && self.Object === Object && self,
5857                h = y || g || Function("return this")(),
5858                w = Object.prototype,
5859                k = w.toString,
5860                x = Math.max,
5861                j = Math.min,
5862                O = function() {
5863                    return h.Date.now()
5864                };
5865            e.exports = o
5866        }).call(t, function() {
5867            return this
5868        }())
5869    }, function(e, t) {
5870        (function(t) {
5871            "use strict";
5872
5873            function n(e, t, n) {
5874                function i(t) {
5875                    var n = b,
5876                        o = v;
5877                    return b = v = void 0, O = t, g = e.apply(o, n)
5878                }
5879
5880                function r(e) {
5881                    return O = e, h = setTimeout(s, t), _ ? i(e) : g
5882                }
5883
5884                function u(e) {
5885                    var n = e - w,
5886                        o = e - O,
5887                        i = t - n;
5888                    return S ? x(i, y - o) : i
5889                }
5890
5891                function f(e) {
5892                    var n = e - w,
5893                        o = e - O;
5894                    return void 0 === w || n >= t || n < 0 || S && o >= y
5895                }
5896
5897                function s() {
5898                    var e = j();
5899                    return f(e) ? d(e) : void(h = setTimeout(s, u(e)))
5900                }
5901
5902                function d(e) {
5903                    return h = void 0, z && b ? i(e) : (b = v = void 0, g)
5904                }
5905
5906                function l() {
5907                    void 0 !== h && clearTimeout(h), O = 0, b = w = v = h = void 0
5908                }
5909
5910                function p() {
5911                    return void 0 === h ? g : d(j())
5912                }
5913
5914                function m() {
5915                    var e = j(),
5916                        n = f(e);
5917                    if (b = arguments, v = this, w = e, n) {
5918                        if (void 0 === h) return r(w);
5919                        if (S) return h = setTimeout(s, t), i(w)
5920                    }
5921                    return void 0 === h && (h = setTimeout(s, t)), g
5922                }
5923                var b, v, y, g, h, w, O = 0,
5924                    _ = !1,
5925                    S = !1,
5926                    z = !0;
5927                if ("function" != typeof e) throw new TypeError(c);
5928                return t = a(t) || 0, o(n) && (_ = !!n.leading, S = "maxWait" in n, y = S ? k(a(n.maxWait) || 0, t) : y, z = "trailing" in n ? !!n.trailing : z), m.cancel = l, m.flush = p, m
5929            }
5930
5931            function o(e) {
5932                var t = "undefined" == typeof e ? "undefined" : u(e);
5933                return !!e && ("object" == t || "function" == t)
5934            }
5935
5936            function i(e) {
5937                return !!e && "object" == ("undefined" == typeof e ? "undefined" : u(e))
5938            }
5939
5940            function r(e) {
5941                return "symbol" == ("undefined" == typeof e ? "undefined" : u(e)) || i(e) && w.call(e) == s
5942            }
5943
5944            function a(e) {
5945                if ("number" == typeof e) return e;
5946                if (r(e)) return f;
5947                if (o(e)) {
5948                    var t = "function" == typeof e.valueOf ? e.valueOf() : e;
5949                    e = o(t) ? t + "" : t
5950                }
5951                if ("string" != typeof e) return 0 === e ? e : +e;
5952                e = e.replace(d, "");
5953                var n = p.test(e);
5954                return n || m.test(e) ? b(e.slice(2), n ? 2 : 8) : l.test(e) ? f : +e
5955            }
5956            var u = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
5957                    return typeof e
5958                } : function(e) {
5959                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
5960                },
5961                c = "Expected a function",
5962                f = NaN,
5963                s = "[object Symbol]",
5964                d = /^\s+|\s+$/g,
5965                l = /^[-+]0x[0-9a-f]+$/i,
5966                p = /^0b[01]+$/i,
5967                m = /^0o[0-7]+$/i,
5968                b = parseInt,
5969                v = "object" == ("undefined" == typeof t ? "undefined" : u(t)) && t && t.Object === Object && t,
5970                y = "object" == ("undefined" == typeof self ? "undefined" : u(self)) && self && self.Object === Object && self,
5971                g = v || y || Function("return this")(),
5972                h = Object.prototype,
5973                w = h.toString,
5974                k = Math.max,
5975                x = Math.min,
5976                j = function() {
5977                    return g.Date.now()
5978                };
5979            e.exports = n
5980        }).call(t, function() {
5981            return this
5982        }())
5983    }, function(e, t) {
5984        "use strict";
5985
5986        function n(e, t) {
5987            var n = window.document,
5988                r = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver,
5989                a = new r(o);
5990            i = t, a.observe(n.documentElement, {
5991                childList: !0,
5992                subtree: !0,
5993                removedNodes: !0
5994            })
5995        }
5996
5997        function o(e) {
5998            e && e.forEach(function(e) {
5999                var t = Array.prototype.slice.call(e.addedNodes),
6000                    n = Array.prototype.slice.call(e.removedNodes),
6001                    o = t.concat(n).filter(function(e) {
6002                        return e.hasAttribute && e.hasAttribute("data-aos")
6003                    }).length;
6004                o && i()
6005            })
6006        }
6007        Object.defineProperty(t, "__esModule", {
6008            value: !0
6009        });
6010        var i = function() {};
6011        t.default = n
6012    }, function(e, t) {
6013        "use strict";
6014
6015        function n(e, t) {
6016            if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
6017        }
6018
6019        function o() {
6020            return navigator.userAgent || navigator.vendor || window.opera || ""
6021        }
6022        Object.defineProperty(t, "__esModule", {
6023            value: !0
6024        });
6025        var i = function() {
6026                function e(e, t) {
6027                    for (var n = 0; n < t.length; n++) {
6028                        var o = t[n];
6029                        o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, o.key, o)
6030                    }
6031                }
6032                return function(t, n, o) {
6033                    return n && e(t.prototype, n), o && e(t, o), t
6034                }
6035            }(),
6036            r = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i,
6037            a = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
6037sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,
6038            u = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i,
6039            c = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,
6040            f = function() {
6041                function e() {
6042                    n(this, e)
6043                }
6044                return i(e, [{
6045                    key: "phone",
6046                    value: function() {
6047                        var e = o();
6048                        return !(!r.test(e) && !a.test(e.substr(0, 4)))
6049                    }
6050                }, {
6051                    key: "mobile",
6052                    value: function() {
6053                        var e = o();
6054                        return !(!u.test(e) && !c.test(e.substr(0, 4)))
6055                    }
6056                }, {
6057                    key: "tablet",
6058                    value: function() {
6059                        return this.mobile() && !this.phone()
6060                    }
6061                }]), e
6062            }();
6063        t.default = new f
6064    }, function(e, t) {
6065        "use strict";
6066        Object.defineProperty(t, "__esModule", {
6067            value: !0
6068        });
6069        var n = function(e, t, n) {
6070                var o = e.node.getAttribute("data-aos-once");
6071                t > e.position ? e.node.classList.add("aos-animate") : "undefined" != typeof o && ("false" === o || !n && "true" !== o) && e.node.classList.remove("aos-animate")
6072            },
6073            o = function(e, t) {
6074                var o = window.pageYOffset,
6075                    i = window.innerHeight;
6076                e.forEach(function(e, r) {
6077                    n(e, i + o, t)
6078                })
6079            };
6080        t.default = o
6081    }, function(e, t, n) {
6082        "use strict";
6083
6084        function o(e) {
6085            return e && e.__esModule ? e : {
6086                default: e
6087            }
6088        }
6089        Object.defineProperty(t, "__esModule", {
6090            value: !0
6091        });
6092        var i = n(12),
6093            r = o(i),
6094            a = function(e, t) {
6095                return e.forEach(function(e, n) {
6096                    e.node.classList.add("aos-init"), e.position = (0, r.default)(e.node, t.offset)
6097                }), e
6098            };
6099        t.default = a
6100    }, function(e, t, n) {
6101        "use strict";
6102
6103        function o(e) {
6104            return e && e.__esModule ? e : {
6105                default: e
6106            }
6107        }
6108        Object.defineProperty(t, "__esModule", {
6109            value: !0
6110        });
6111        var i = n(13),
6112            r = o(i),
6113            a = function(e, t) {
6114                var n = 0,
6115                    o = 0,
6116                    i = window.innerHeight,
6117                    a = {
6118                        offset: e.getAttribute("data-aos-offset"),
6119                        anchor: e.getAttribute("data-aos-anchor"),
6120                        anchorPlacement: e.getAttribute("data-aos-anchor-placement")
6121                    };
6122                switch (a.offset && !isNaN(a.offset) && (o = parseInt(a.offset)), a.anchor && document.querySelectorAll(a.anchor) && (e = document.querySelectorAll(a.anchor)[0]), n = (0, r.default)(e).top, a.anchorPlacement) {
6123                    case "top-bottom":
6124                        break;
6125                    case "center-bottom":
6126                        n += e.offsetHeight / 2;
6127                        break;
6128                    case "bottom-bottom":
6129                        n += e.offsetHeight;
6130                        break;
6131                    case "top-center":
6132                        n += i / 2;
6133                        break;
6134                    case "bottom-center":
6135                        n += i / 2 + e.offsetHeight;
6136                        break;
6137                    case "center-center":
6138                        n += i / 2 + e.offsetHeight / 2;
6139                        break;
6140                    case "top-top":
6141                        n += i;
6142                        break;
6143                    case "bottom-top":
6144                        n += e.offsetHeight + i;
6145                        break;
6146                    case "center-top":
6147                        n += e.offsetHeight / 2 + i
6148                }
6149                return a.anchorPlacement || a.offset || isNaN(t) || (o = t), n + o
6150            };
6151        t.default = a
6152    }, function(e, t) {
6153        "use strict";
6154        Object.defineProperty(t, "__esModule", {
6155            value: !0
6156        });
6157        var n = function(e) {
6158            for (var t = 0, n = 0; e && !isNaN(e.offsetLeft) && !isNaN(e.offsetTop);) t += e.offsetLeft - ("BODY" != e.tagName ? e.scrollLeft : 0), n += e.offsetTop - ("BODY" != e.tagName ? e.scrollTop : 0), e = e.offsetParent;
6159            return {
6160                top: n,
6161                left: t
6162            }
6163        };
6164        t.default = n
6165    }, function(e, t) {
6166        "use strict";
6167        Object.defineProperty(t, "__esModule", {
6168            value: !0
6169        });
6170        var n = function(e) {
6171            return e = e || document.querySelectorAll("[data-aos]"), Array.prototype.map.call(e, function(e) {
6172                return {
6173                    node: e
6174                }
6175            })
6176        };
6177        t.default = n
6178    }])
6179});
6180(function(window, undefined) {
6181    "use strict";
6182    var $ = window.jQuery || window.Zepto,
6183        lazyInstanceId = 0,
6184        windowLoaded = !1;
6185    $.fn.Lazy = $.fn.lazy = function(settings) {
6186        return new LazyPlugin(this, settings)
6187    };
6188    $.Lazy = $.lazy = function(names, elements, loader) {
6189        if ($.isFunction(elements)) {
6190            loader = elements;
6191            elements = []
6192        }
6193        if (!$.isFunction(loader)) {
6194            return
6195        }
6196        names = $.isArray(names) ? names : [names];
6197        elements = $.isArray(elements) ? elements : [elements];
6198        var config = LazyPlugin.prototype.config,
6199            forced = config._f || (config._f = {});
6200        for (var i = 0, l = names.length; i < l; i++) {
6201            if (config[names[i]] === undefined || $.isFunction(config[names[i]])) {
6202                config[names[i]] = loader
6203            }
6204        }
6205        for (var c = 0, a = elements.length; c < a; c++) {
6206            forced[elements[c]] = names[0]
6207        }
6208    };
6209
6210    function _executeLazy(instance, config, items, events, namespace) {
6211        var _awaitingAfterLoad = 0,
6212            _actualWidth = -1,
6213            _actualHeight = -1,
6214            _isRetinaDisplay = !1,
6215            _afterLoad = 'afterLoad',
6216            _load = 'load',
6217            _error = 'error',
6218            _img = 'img',
6219            _src = 'src',
6220            _srcset = 'srcset',
6221            _sizes = 'sizes',
6222            _backgroundImage = 'background-image';
6223
6224        function _initialize() {
6225            _isRetinaDisplay = window.devicePixelRatio > 1;
6226            items = _prepareItems(items);
6227            if (config.delay >= 0) {
6228                setTimeout(function() {
6229                    _lazyLoadItems(!0)
6230                }, config.delay)
6231            }
6232            if (config.delay < 0 || config.combined) {
6233                events.e = _throttle(config.throttle, function(event) {
6234                    if (event.type === 'resize') {
6235                        _actualWidth = _actualHeight = -1
6236                    }
6237                    _lazyLoadItems(event.all)
6238                });
6239                events.a = function(additionalItems) {
6240                    additionalItems = _prepareItems(additionalItems);
6241                    items.push.apply(items, additionalItems)
6242                };
6243                events.g = function() {
6244                    return (items = $(items).filter(function() {
6245                        return !$(this).data(config.loadedName)
6246                    }))
6247                };
6248                events.f = function(forcedItems) {
6249                    for (var i = 0; i < forcedItems.length; i++) {
6250                        var item = items.filter(function() {
6251                            return this === forcedItems[i]
6252                        });
6253                        if (item.length) {
6254                            _lazyLoadItems(!1, item)
6255                        }
6256                    }
6257                };
6258                _lazyLoadItems();
6259                $(config.appendScroll).on('scroll.' + namespace + ' resize.' + n
6259amespace, events.e)
6260            }
6261        }
6262
6263        function _prepareItems(items) {
6264            var defaultImage = config.defaultImage,
6265                placeholder = config.placeholder,
6266                imageBase = config.imageBase,
6267                srcsetAttribute = config.srcsetAttribute,
6268                loaderAttribute = config.loaderAttribute,
6269                forcedTags = config._f || {};
6270            items = $(items).filter(function() {
6271                var element = $(this),
6272                    tag = _getElementTagName(this);
6273                return !element.data(config.handledName) && (element.attr(config.attribute) || element.attr(srcsetAttribute) || element.attr(loaderAttribute) || forcedTags[tag] !== undefined)
6274            }).data('plugin_' + config.name, instance);
6275            for (var i = 0, l = items.length; i < l; i++) {
6276                var element = $(items[i]),
6277                    tag = _getElementTagName(items[i]),
6278                    elementImageBase = element.attr(config.imageBaseAttribute) || imageBase;
6279                if (tag === _img && elementImageBase && element.attr(srcsetAttribute)) {
6280                    element.attr(srcsetAttribute, _getCorrectedSrcSet(element.attr(srcsetAttribute), elementImageBase))
6281                }
6282                if (forcedTags[tag] !== undefined && !element.attr(loaderAttribute)) {
6283                    element.attr(loaderAttribute, forcedTags[tag])
6284                }
6285                if (tag === _img && defaultImage && !element.attr(_src)) {
6286                    element.attr(_src, defaultImage)
6287                } else if (tag !== _img && placeholder && (!element.css(_backgroundImage) || element.css(_backgroundImage) === 'none')) {
6288                    element.css(_backgroundImage, "url('" + placeholder + "')")
6289                }
6290            }
6291            return items
6292        }
6293
6294        function _lazyLoadItems(allItems, forced) {
6295            if (!items.length) {
6296                if (config.autoDestroy) {
6297                    instance.destroy()
6298                }
6299                return
6300            }
6301            var elements = forced || items,
6302                loadTriggered = !1,
6303                imageBase = config.imageBase || '',
6304                srcsetAttribute = config.srcsetAttribute,
6305                handledName = config.handledName;
6306            for (var i = 0; i < elements.length; i++) {
6307                if (allItems || forced || _isInLoadableArea(elements[i])) {
6308                    var element = $(elements[i]),
6309                        tag = _getElementTagName(elements[i]),
6310                        attribute = element.attr(config.attribute),
6311                        elementImageBase = element.attr(config.imageBaseAttribute) || imageBase,
6312                        customLoader = element.attr(config.loaderAttribute);
6313                    if (!element.data(handledName) && (!config.visibleOnly || element.is(':visible')) && ((attribute || element.attr(srcsetAttribute)) && ((tag === _img && (elementImageBase + attribute !== element.attr(_src) || element.attr(srcsetAttribute) !== element.attr(_srcset))) || (tag !== _img && elementImageBase + attribute !== element.css(_backgroundImage))) || customLoader)) {
6314                        loadTriggered = !0;
6315                        element.data(handledName, !0);
6316                        _handleItem(element, tag, elementImageBase, customLoader)
6317                    }
6318                }
6319            }
6320            if (loadTriggered) {
6321                items = $(items).filter(function() {
6322                    return !$(this).data(handledName)
6323                })
6324            }
6325        }
6326
6327        function _handleItem(element, tag, imageBase, customLoader) {
6328            ++_awaitingAfterLoad;
6329            var errorCallback = function() {
6330                _triggerCallback('onError', element);
6331                _reduceAwaiting();
6332                errorCallback = $.noop
6333            };
6334            _triggerCallback('beforeLoad', element);
6335            var srcAttribute = config.attribute,
6336                srcsetAttribute = config.srcsetAttribute,
6337                sizesAttribute = config.sizesAttribute,
6338                retinaAttribute = config.retinaAttribute,
6339                removeAttribute = config.removeAttribute,
6340                loadedName = config.loadedName,
6341                elementRetina = element.attr(retinaAttribute);
6342            if (customLoader) {
6343                var loadCallback = function() {
6344                    if (removeAttribute) {
6345                        element.removeAttr(config.loaderAttribute)
6346                    }
6347                    element.data(loadedName, !0);
6348                    _triggerCallback(_afterLoad, element);
6349                    setTimeout(_reduceAwaiting, 1);
6350                    loadCallback = $.noop
6351                };
6352                element.off(_error).one(_error, errorCallback).one(_load, loadCallback);
6353                if (!_triggerCallback(customLoader, element, function(response) {
6354                        if (response) {
6355                            element.off(_load);
6356                            loadCallback()
6357                        } else {
6358                            element.off(_error);
6359                            errorCallback()
6360                        }
6361                    })) {
6362                    element.trigger(_error)
6363                }
6364            } else {
6365                var imageObj = $(new Image());
6366                imageObj.one(_error, errorCallback).one(_load, function() {
6367                    element.hide();
6368                    if (tag === _img) {
6369                        element.attr(_sizes, imageObj.attr(_sizes)).attr(_srcset, imageObj.attr(_srcset)).attr(_src, imageObj.attr(_src))
6370                    } else {
6371                        element.css(_backgroundImage, "url('" + imageObj.attr(_src) + "')")
6372                    }
6373                    element[config.effect](config.effectTime);
6374                    if (removeAttribute) {
6375                        element.removeAttr(srcAttribute + ' ' + srcsetAttribute + ' ' + retinaAttribute + ' ' + config.imageBaseAttribute);
6376                        if (sizesAttribute !== _sizes) {
6377                            element.removeAttr(sizesAttribute)
6378                        }
6379                    }
6380                    element.data(loadedName, !0);
6381                    _triggerCallback(_afterLoad, element);
6382                    imageObj.remove();
6383                    _reduceAwaiting()
6384                });
6385                var imageSrc = (_isRetinaDisplay && elementRetina ? elementRetina : element.attr(srcAttribute)) || '';
6386                imageObj.attr(_sizes, element.attr(sizesAttribute)).attr(_srcset, element.attr(srcsetAttribute)).attr(_src, imageSrc ? imageBase + imageSrc : null);
6387                imageObj.complete && imageObj.trigger(_load)
6388            }
6389        }
6390
6391        function _isInLoadableArea(element) {
6392            var elementBound = element.getBoundingClientRect(),
6393                direction = config.scrollDirection,
6394                threshold = config.threshold,
6395                vertical = ((_getActualHeight() + threshold) > elementBound.top) && (-threshold < elementBound.bottom),
6396                horizontal = ((_getActualWidth() + threshold) > elementBound.left) && (-threshold < elementBound.right);
6397            if (direction === 'vertical') {
6398                return vertical
6399            } else if (direction === 'horizontal') {
6400                return horizontal
6401            }
6402            return vertical && horizontal
6403        }
6404
6405        function _getActualWidth() {
6406            return _actualWidth >= 0 ? _actualWidth : (_actualWidth = $(window).width())
6407        }
6408
6409        function _getActualHeight() {
6410            return _actualHeight >= 0 ? _actualHeight : (_actualHeight = $(window).height())
6411        }
6412
6413        function _getElementTagName(element) {
6414            return element.tagName.toLowerCase()
6415        }
6416
6417        function _getCorrectedSrcSet(srcset, imageBase) {
6418            if (imageBase) {
6419                var entries = srcset.split(',');
6420                srcset = '';
6421                for (var i = 0, l = entries.length; i < l; i++) {
6422                    srcset += imageBase + entries[i].trim() + (i !== l - 1 ? ',' : '')
6423                }
6424            }
6425            return srcset
6426        }
6427
6428        function _throttle(delay, callback) {
6429            var timeout, lastExecute = 0;
6430            return function(event, ignoreThrottle) {
6431                var elapsed = +new Date() - lastExecute;
6432
6433                function run() {
6434                    lastExecute = +new Date();
6435                    callback.call(instance, event)
6436                }
6437                timeout && clearTimeout(timeout);
6438                if (elapsed > delay || !config.enableThrottle || ignoreThrottle) {
6439                    run()
6440                } else {
6441                    timeout = setTimeout(run, delay - elapsed)
6442                }
6443            }
6444        }
6445
6446        function _reduceAwaiting() {
6447            --_awaitingAfterLoad;
6448            if (!items.length && !_awaitingAfterLoad) {
6449                _triggerCallback('onFinishedAll')
6450            }
6451        }
6452
6453        function _triggerCallback(callback, element, args) {
6454            if ((callback = config[callback])) {
6455                callback.apply(instance, [].slice.call(arguments, 1));
6456                return !0
6457            }
6458            return !1
6459        }
6460        if (config.bind === 'event' || windowLoaded) {
6461            _initialize()
6462        } else {
6463            $(window).on(_load + '.' + namespace, _initialize)
6464        }
6465    }
6466
6467    function LazyPlugin(elements, settings) {
6468        var _instance = this,
6469            _config = $.extend({}, _instance.config, settings),
6470            _events = {},
6471            _namespace = _config.name + '-' + (++lazyInstanceId);
6472        _instance.config = function(entryName, value) {
6473            if (value === undefined) {
6474                return _config[entryName]
6475            }
6476            _config[entryName] = value;
6477            return _instance
6478        };
6479        _instance.addItems = function(items) {
6480            _events.a && _events.a($.type(items) === 'string' ? $(items) : items);
6481            return _instance
6482        };
6483        _instance.getItems = function() {
6484            return _events.g ? _events.g() : {}
6485        };
6486        _instance.update = function(useThrottle) {
6487            _events.e && _events.e({}, !useThrottle);
6488            return _instance
6489        };
6490        _instance.force = function(items) {
6491            _events.f && _events.f($.type(items) === 'string' ? $(items) : items);
6492            return _instance
6493        };
6494        _instance.loadAll = function() {
6495            _events.e && _events.e({
6496                all: !0
6497            }, !0);
6498            return _instance
6499        };
6500        _instance.destroy = function() {
6501            $(_config.appendScroll).off('.' + _namespace, _events.e);
6502            $(window).off('.' + _namespace);
6503            _events = {};
6504            return undefined
6505        };
6506        _executeLazy(_instance, _config, elements, _events, _namespace);
6507        return _config.chainable ? elements : _instance
6508    }
6509    LazyPlugin.prototype.config = {
6510        name: 'lazy',
6511        chainable: !0,
6512        autoDestroy: !0,
6513        bind: 'load',
6514        threshold: 500,
6515        visibleOnly: !1,
6516        appendScroll: window,
6517        scrollDirection: 'both',
6518        imageBase: null,
6519        defaultImage: 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==',
6520        placeholder: null,
6521        delay: -1,
6522        combined: !1,
6523        attribute: 'data-src',
6524        srcsetAttribute: 'data-srcset',
6525        sizesAttribute: 'data-sizes',
6526        retinaAttribute: 'data-retina',
6527        loaderAttribute: 'data-loader',
6528        imageBaseAttribute: 'data-imagebase',
6529        removeAttribute: !0,
6530        handledName: 'handled',
6531        loadedName: 'loaded',
6532        effect: 'show',
6533        effectTime: 0,
6534        enableThrottle: !0,
6535        throttle: 250,
6536        beforeLoad: undefined,
6537        afterLoad: undefined,
6538        onError: undefined,
6539        onFinishedAll: undefined
6540    };
6541    $(window).on('load', function() {
6542        windowLoaded = !0
6543    })
6544})(window);
6545(function($) {
6546    $.fn.branditos_newsletter = function(options) {
6547        var defaults = {
6548            newsletterSelector: ".section--newsletter-form"
6549        };
6550        var settings = $.extend({}, defaults, options),
6551            newsletter = $(settings.newsletterSelector);
6552
6553        function initialise() {
6554            if (newsletter.length) {
6555                newsletter.each(function(e, i) {
6556                    $(this).branditos_newsletter_item()
6557                })
6558            }
6559        }
6560        initialise();
6561        return this
6562    }
6563    $.fn.branditos_newsletter_item = function(options) {
6564        var defaults = {
6565            errorContainerSelector: '.section--newsletter-form-error',
6566            emailContainerSelector: "input[name='email']",
6567            submitButtonSelector: "input[type='submit']"
6568        };
6569        var settings = $.extend({}, defaults, options),
6570            contentContainer = $(this),
6571            url = contentContainer.data("url"),
6572            privacy = contentContainer.data("privacy"),
6573            recaptchaContainer = contentContainer.data("recaptcha"),
6574            sitekey = contentContainer.data("sitekey"),
6575            form = contentContainer.find("form"),
6576            errorCaptcha = contentContainer.data("errorcaptcha"),
6577            errorPrivacy = contentContainer.data("errorprivacy"),
6578            errorEmail = contentContainer.data("erroremail"),
6579            privacyContainer = contentContainer.find("#" + privacy),
6580            errorContainer = contentContainer.find(settings.errorContainerSelector),
6581            emailContainer = contentContainer.find(settings.emailContainerSelector),
6582            submitButton = contentContainer.find(settings.submitButtonSelector),
6583            recaptchaResponse, action, widget;
6584
6585        function initialise() {
6586            widget = grecaptcha.render(recaptchaContainer, {
6587                'sitekey': sitekey,
6588                'callback': function(response) {
6589                    recaptchaResponse = response
6590                },
6591                'size': 'normal'
6592            })
6593            form.submit(function(e) {
6594                e.preventDefault();
6595                return !1
6596            });
6597            submitButton.click(function(e) {
6598                e.preventDefault();
6599                checkFormular();
6600                return !1
6601            })
6602        }
6603
6604        function checkFormular() {
6605            var response = grecaptcha.getResponse(widget);
6606            var error = [];
6607            errorContainer.html("");
6608            if (response.length == 0) {
6609                error.push(errorCaptcha);
6610                recaptchaResponse = '';
6611                grecaptcha.reset(widget)
6612            }
6613            var email_reg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
6614            if ($.trim(emailContainer.val()) == '' || email_reg.test($.trim(emailContainer.val())) == !1) {
6615                error.push(errorEmail)
6616            }
6617            if (privacyContainer.prop("checked") == !1) {
6618                error.push(errorPrivacy)
6619            }
6620            var post_data = {
6621                'tx_branditossitetemplate_recaptcha[email]': emailContainer.val(),
6622                'tx_branditossitetemplate_recaptcha[recaptcha]': recaptchaResponse
6623            };
6624            if (error.length > 0) {
6625                $.each(error, function(k, value) {
6626                    errorContainer.append(value + "<br />")
6627                });
6628                return
6629            }
6630            $.post(url, post_data, function(response) {
6631                if (response.result == '0') {
6632                    grecaptcha.reset(widget);
6633                    errorContainer.append(response.result + "<br />")
6634                } else {
6635                    form.attr("action", response.action);
6636                    form.unbind('submit').submit()
6637                }
6638            }, 'json')
6639        }
6640        initialise();
6641        return this
6642    }
6643})(jQuery);
6644var hasTouch = !1;
6645/*
6646var recaptchaCallBack = function() {
6647    $('body').branditos_newsletter()
6648};
6649*/
6650window.addEventListener('touchstart', function setHasTouch() {
6651    hasTouch = !0;
6652    window.removeEventListener('touchstart', setHasTouch)
6653}, !1);
6654
6655function scrollToElement(sel, offset) {
6656    jQuery('html,body').animate({
6657        scrollTop: jQuery(sel).offset().top - offset
6658    }, 1000)
6659}
6660
6661function callResizeEvent() {
6662    if (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0) {
6663        var evt = document.createEvent('UIEvents');
6664        evt.initUIEvent('resize', !0, !1, window, 0);
6665        window.dispatchEvent(evt)
6666    } else {
6667        window.dispatchEvent(new Event('resize'))
6668    }
6669}
6670
6671function sliderpodcastplay(slidernr) {
6672    var audio = $("#sliderpodcast"+slidernr);
6673    var podplayer = document.getElementById("sliderpodcast"+slidernr);
6674    if (audio.is(':visible')) {
6675        podplayer.play();
6676    } else {
6677        podplayer.pause();
6678    }
6679}
6680
6681function slidervideoplay(slidernr) {
6682    var video = $("#slidervideo"+slidernr);
6683    var vidplayer = document.getElementById("slidervideo"+slidernr);
6684    if (video.is(':visible')) {
6685        vidplayer.play();
6686    } else {
6687        vidplayer.pause();
6688    }
6689}
6690      
6691jQuery(document).ready(function($) {
6692    var navigation = $("#site-navigation").parent();
6693    $("#menu-toggle, #menu-close").click(function() {
6694        $("#menu-toggle").toggleClass("active");
6695        $("#menu-close").toggleClass("active");
6696        if (navigation.hasClass("active")) {
6697            navigation.addClass("fadeout");
6698            setTimeout(function() {
6699                navigation.removeClass("active").removeClass("fadeout")
6700            }, 500)
6701        } else {
6702            navigation.toggleClass("active")
6703        }
6704    });
6705    navigation.find(".menu li a").click(function() {
6706        navigation.addClass("fadeout");
6707        setTimeout(function() {
6708            navigation.removeClass("active").removeClass("fadeout")
6709        }, 500)
6710    });
6711    $("#site-navigation > li.sub > a").click(function(e) {
6712        if ($(this).hasClass("clicked") && $(this).parent().hasClass("hover") || hasTouch == !1) {} else {
6713            $("#site-navigation ul > li.hover").removeClass("hover");
6714            $(this).parent().addClass("hover");
6715            $(this).addClass("clicked");
6716            e.preventDefault();
6717            return !0
6718        }
6719    });
6720    if (location.hash) {
6721        var target = $(location.hash);
6722        target = target.length ? target : $('[name=' + location.hash.slice(1) + ']');
6723        if (target.length) {
6724            offset = 0;
6725            if (target.hasClass("s-parent")) {
6726                if (target.hasClass("s-offset")) {
6727                    offset = $("header").height()
6728                }
6729                target = target.parent()
6730            }
6731            setTimeout(function() {
6732                $('html,body').animate({
6733                    scrollTop: target.offset().top - offset
6734                }, 1000)
6735            }, 1500)
6736        }
6737    }
6738    $("a[href*='#']:not([href='#'])").click(function() {
6739        if ($(this).data("lity") == "t")
6740            return;
6741        if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
6742            var target = $(this.hash);
6743            target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
6744            if (target.length) {
6745                scrollToElement(target, 70);
6746                return !1
6747            }
6748        }
6749    });
6750    /*
6751    if ($('.section--header-slider').length) {
6752        $('.section--header-slider').on('init', function(event, slick) {
6753            $(slick.$slides.get(0)).addClass("active")
6754        }).on('beforeChange', function(event, slick, currentSlide, nextSlide) {
6755            $(slick.$slides.get(currentSlide)).removeClass("active").addClass("out");
6756            $(slick.$slides.get(nextSlide)).addClass("active").removeClass("out")
6757        });
6758        $('.section--header-slider').slick({
6759            dots: !0,
6760            arrows: !0,
6761            infinite: !0,
6762            speed: 1200,
6763            autoplay: !0,
6764            autoplaySpeed: 4500,
6765            pauseOnHover: !1,
6766            adaptiveHeight: !1,
6767            prevArrow: '<div class="slick-prev"></div>',
6768            nextArrow: '<div class="slick-next"></div>',
6769        })
6770    }
6771    */
6772    if ($('.section--modul-slider').length) {
6773        $('.section--modul-slider').on('init', function(event, slick) {
6774            $(slick.$slides.get(0)).addClass("active")
6775        }).on('beforeChange', function(event, slick, currentSlide, nextSlide) {
6776            $(slick.$slides.get(currentSlide)).removeClass("active").addClass("out");
6777            $(slick.$slides.get(nextSlide)).addClass("active").removeClass("out")
6778        });
6779        $('.section--modul-slider').slick({
6780            dots: !0,
6781            arrows: !0,
6782            infinite: !0,
6783            speed: 500,
6784            autoplay: !0,
6785            autoplaySpeed: 5500,
6786            pauseOnHover: !1,
6787            adaptiveHeight: !1,
6788            fade: true,
6789            cssEase: 'linear',
6790            prevArrow: '<div class="slick-prev"></div>',
6791            nextArrow: '<div class="slick-next"></div>',
6792        })
6793    }    
6794    
6795    if ($('.section--project-slider-slides').length) {
6796        $('.section--project-slider-slides').on('init', function(event, slick) {
6797            $(slick.$slides.get(0)).addClass("active")
6798        }).on('beforeChange', function(event, slick, currentSlide, nextSlide) {
6799            $(slick.$slides.get(currentSlide)).removeClass("active").addClass("out");
6800            $(slick.$slides.get(nextSlide)).addClass("active").removeClass("out")
6801        });
6802        $('.section--project-slider-slides').slick({
6803            dots: !0,
6804            arrows: !0,
6805            infinite: !0,
6806            speed: 1200,
6807            autoplay: !1,
6808            autoplaySpeed: 4500,
6809            pauseOnHover: !1,
6810            adaptiveHeight: !1,
6811            prevArrow: '<div class="slick-prev"></div>',
6812            nextArrow: '<div class="slick-next"></div>',
6813        })
6814    }
6815    if ($('.section--project-detail-gallery').length) {
6816        $('.section--project-detail-gallery').slick({
6817            dots: !0,
6818            arrows: !0,
6819            infinite: !0,
6820            speed: 1200,
6821            autoplay: !1,
6822            autoplaySpeed: 4500,
6823            pauseOnHover: !1,
6824            adaptiveHeight: !1,
6825            prevArrow: '<div class="slick-prev"></div>',
6826            nextArrow: '<div class="slick-next"></div>',
6827        })
6828    }
6829    var newslist = $('.section--news-list-item');
6830    if (newslist.length) {
6831        newslist.click(function(e) {
6832            return;
6833            /*
6834            if (hasTouch == !1)
6835                return;
6836            if (!$(this).hasClass('hover')) {
6837                e.preventDefault();
6838                newslist.removeClass("hover")
6839            }
6840            $(this).toggleClass('hover')
6841            */
6842        })
6843    }
6844    var newsletter = $("#newsletter");
6845    if (newsletter.length) {
6846        $("#newsletter-toggle, #newsletter-close").click(function() {
6847            if ($(window).width() < 768) {
6848                scrollToElement("footer", 0)
6849            } else {
6850                newsletter.toggleClass("active");
6851                $("#newsletter-toggle").toggleClass("active")
6852            }
6853        })
6854    }
6855    $("#totop").click(function() {
6856        scrollToElement("body", 0)
6857    });
6858    $(window).scroll(function(e) {
6859        if ($(window).scrollTop() > 1000) {
6860            $("#totop").addClass("active")
6861        } else {
6862            $("#totop").removeClass("active")
6863        }
6864    });
6865    if ($(window).scrollTop() > 1000) {
6866        $("#totop").addClass("active")
6867    }
6868    if ($(".section--newsletter-form").length) {
6869        $("head").append('
vendor: 116 bytes, line 6869
6869<script src="https://www.google.com/recaptcha/api.js?onload=recaptchaCallBack&render=explicit" async defer></script>
6869')
6870    }
6871    AOS.init({
6872        duration: 500,
6873        offset: 200
6874    })
6875});
6876
6877$(function() {
6878    if ($(window).width() < 768) {
6879        $('.lazy-m').lazy()
6880    } else {
6881        $('.lazy-d').lazy()
6882    }
6883    $('.lazy').lazy();
6884    $('.newslazy').lazy();
6885});
6886
6887/* ExtraCode Sharkness */
6888$(document).on( "click", ".newspages", function() {
6889    var nr = $(this).attr("nr");
6890    var ismr = $(this).attr("ismr");
6891    var fensterbreite = $(window).width();
6892    var fensterhoehe  = $(window).height();
6893    var posm = nr;
6894    posm--;
6895    var posp = nr;
6896    posp++;
6897    if (nr>=0) {
6898        $('#newspage_'+ismr+'_'+posm).hide();
6899    }
6900    $('#newspage_'+ismr+'_'+posp).hide();
6901    
6902    if (fensterbreite>768) {
6903        $('#newspage_'+ismr+'_'+nr).css("display","flex");
6904    } else {
6905        $('#newspage_'+ismr+'_'+nr).css("display","block");
6906    }
6907    $([document.documentElement, document.body]).animate({
6908        scrollTop: $('#newspage_'+ismr+'_'+nr).offset().top-150
6909    }, 400);
6910});
6911
6912$(document).on( "click", ".showperson", function() {
6913    var nr = $(this).attr("idp");
6914    $('#myModal'+nr).toggle();
6915});
6916
6917$(document).on( "click", ".mailperson", function() {
6918    var nr = $(this).attr("idp");
6919    $('#myModal'+nr+'_mail').toggle();
6920});
6921
6922$(document).on( "click", ".pclose", function() {
6923    var nr = $(this).attr("idp");
6924    $('#myModal').toggle();
6925});
6926
6927$(document).on( "click", ".pmodal", function() {
6928    $(this).hide();
6929});
6930
6931$(document).on( "click", ".pclosemail", function() {
6932    var nr = $(this).attr("idp");
6933    $('#myModal'+nr+'_mail').toggle();
6934});
6935
6936function showRequest(formData, jqForm, options) { return true; } 
6937function showResponseNewsletter(responseText, statusText, xhr, $form)  {
6938	var response = responseText;
6939    if(response=='[success]')
6940	{	
6941		$('#form_start_newsletter_1').slideUp().height('0');
6942		$('#form_start_newsletter_hinweis').html('<p style="font-size:20px;color: #FFFFFF;">Vielen Dank f&uuml;r Ihre Anmeldung! Sie erhalten in K&uuml;rze eine E-Mail von uns.<br> Bitte best&auml;tigen Sie diese.</p></div>');
6943        
6944	}
6945	else
6946	{
6947		if(response=='[error:1]')
6948		{
6949			$('#vorname').css({ "border": "1px solid #E2001A" });
6950			$('#nachname').css({ "border": "1px solid #E2001A" });
6951			$('#email').css({ "border": "1px solid #E2001A" });
6952            $('#einwie').css({ "border": "1px solid #E2001A" });
6953            $('#dsgvo').css({ "border": "1px solid #E2001A" });
6954			$('#form_start_newsletter_hinweis').html('<strong style="color: red;">Bitte f&uuml;llen Sie alle Felder vollst&auml;ndig aus.</strong>');
6955			$('#form_start_newsletter_hinweis').show();
6956		}
6957		
6958		if(response=='[error:2]')
6959		{
6960			$('.einwilligungserklaerung').css({ "color": "#E2001A" });
6961			$('.einwilligunglabel').css({ "color": "#E2001A" });
6962			$('#form_start_newsletter_hinweis').html('<strong style="color: red;">Bitte best&auml;tigen Sie die Einwilligungserkl&auml;rung.</strong>');
6963            $('#form_start_newsletter_hinweis').show();
6964		}
6965		
6966		if(response=='[error:3]')
6967		{
6968			$('.datenschutzerklaerung').css({ "color": "#E2001A" });
6969			$('#form_start_newsletter_hinweis').html('<strong style="color: red;">Bitte best&auml;tigen Sie die Datenschutzerkl&auml;rung.</strong>');
6970            $('#form_start_newsletter_hinweis').show();
6971		}
6972		
6973		if(response=='[error:4]')
6974		{
6975			$('.einwilligungserklaerung').css({ "color": "#E2001A" });
6976			$('.datenschutzerklaerung').css({ "color": "#E2001A" });
6977			$('.einwilligunglabel').css({ "color": "#E2001A" });
6978			$('#form_start_newsletter_hinweis').html('<strong style="color: red;">Bitte best&auml;tigen Sie die Einwilligungserkl&auml;rung und die Datenschutzerkl&auml;rung.</strong>');
6979			$('#form_start_newsletter_hinweis').show();
6980		}
6981		
6982		if(response=='[error:5]')
6983		{
6984			$('#form_start_newsletter_hinweis').html('<strong style="color: red;">Derzeit besteht ein Verbindungsproblem mit der Datenbank. Bitte senden Sie uns hierzu eine kurze E-Mail.</strong>');
6985            $('#form_start_newsletter_hinweis').show();
6986		}
6987	}
6988}
6989
6990function showRequest2(formData, jqForm, options) { return true; } 
6991function showResponseNewsletter2(responseText, statusText, xhr, $form)  {
6992	var response = responseText;
6993    if(response=='[success]')
6994	{	
6995		$('#form_start_newsletter_2').slideUp().height('0');
6996		$('#form_start_newsletter_hinweis2').html('<p style="font-size:20px;color: #FFFFFF;">Vielen Dank f&uuml;r Ihre Anmeldung! Sie erhalten in K&uuml;rze eine E-Mail von uns.<br> Bitte best&auml;tigen Sie diese.</p></div>');
6997        
6998	}
6999	else
7000	{
7001		if(response=='[error:1]')
7002		{
7003			$('#vorname').css({ "border": "1px solid #E2001A" });
7004			$('#nachname').css({ "border": "1px solid #E2001A" });
7005			$('#email').css({ "border": "1px solid #E2001A" });
7006            $('#einwie').css({ "border": "1px solid #E2001A" });
7007            $('#dsgvo').css({ "border": "1px solid #E2001A" });
7008			$('#form_start_newsletter_hinweis2').html('<strong style="color: red;">Bitte f&uuml;llen Sie alle Felder vollst&auml;ndig aus.</strong>');
7009			$('#form_start_newsletter_hinweis2').show();
7010		}
7011		
7012		if(response=='[error:2]')
7013		{
7014			$('.einwilligungserklaerung').css({ "color": "#E2001A" });
7015			$('.einwilligunglabel').css({ "color": "#E2001A" });
7016			$('#form_start_newsletter_hinweis2').html('<strong style="color: red;">Bitte best&auml;tigen Sie die Einwilligungserkl&auml;rung.</strong>');
7017            $('#form_start_newsletter_hinweis2').show();
7018		}
7019		
7020		if(response=='[error:3]')
7021		{
7022			$('.datenschutzerklaerung').css({ "color": "#E2001A" });
7023			$('#form_start_newsletter_hinweis2').html('<strong style="color: red;">Bitte best&auml;tigen Sie die Datenschutzerkl&auml;rung.</strong>');
7024            $('#form_start_newsletter_hinweis2').show();
7025		}
7026		
7027		if(response=='[error:4]')
7028		{
7029			$('.einwilligungserklaerung').css({ "color": "#E2001A" });
7030			$('.datenschutzerklaerung').css({ "color": "#E2001A" });
7031			$('.einwilligunglabel').css({ "color": "#E2001A" });
7032			$('#form_start_newsletter_hinweis2').html('<strong style="color: red;">Bitte best&auml;tigen Sie die Einwilligungserkl&auml;rung und die Datenschutzerkl&auml;rung.</strong>');
7033			$('#form_start_newsletter_hinweis2').show();
7034		}
7035		
7036		if(response=='[error:5]')
7037		{
7038			$('#form_start_newsletter_hinweis2').html('<strong style="color: red;">Derzeit besteht ein Verbindungsproblem mit der Datenbank. Bitte senden Sie uns hierzu eine kurze E-Mail.</strong>');
7039            $('#form_start_newsletter_hinweis2').show();
7040		}
7041	}
7042}
7043
7044$(document).ready(function($){
7045	var options = { 
7046		beforeSubmit:  showRequest, 
7047		success:       showResponseNewsletter 
7048	};
7049    var options2 = { 
7050		beforeSubmit:  showRequest2, 
7051		success:       showResponseNewsletter2 
7052	};
7053	$('#form_start_newsletter_1').submit(function(event) {
7054        event.preventDefault();	
7055        $('#form_start_newsletter_1').ajaxSubmit(options);
7056		return false; 
7057	});
7058    
7059    $('#form_start_newsletter_2').submit(function(event) {
7060        event.preventDefault();	
7061        $('#form_start_newsletter_2').ajaxSubmit(options2);
7062		return false; 
7063	});
7064    
7065    var newheight = Math.ceil($(window).width()*0.3177083333333333)-5;
7066    var newheightmodul = Math.ceil($(window).width()*0.3177083333333333)-5;
7067    $(".section--header-slider-slide").css("height",newheight);
7068    if ($('.section--modul-slider').length) {
7069        $(".section--modul-slider-slide").css("height",newheightmodul);
7070    }
7071    $(window).resize(function() {
7072        var newheight = Math.ceil($(window).width()*0.3177083333333333)-5;
7073        var newheightmodul = Math.ceil($(window).width()*0.3177083333333333)-5;
7074        $(".section--header-slider-slide").css("height",newheight);
7075        if ($('.section--modul-slider').length) {
7076            $(".section--modul-slider-slide").css("height",newheightmodul);
7077        }
7078    });
7079});
7080
7081jQuery(document).ready(function($){
7082		
7083	$('#dsgvo1').change('click', function(){
7084		if (($("#dsgvo1").is(':checked')) && ($("#dsgvo2").is(':checked'))) {
7085			$(".forumbutton_absenden").attr('style','background-color: #006415;cursor: pointer');
7086			$(".forumbutton_absenden").prop('disabled',false);
7087		} else {
7088			$(".forumbutton_absenden").attr('style','background-color: #cccccc; cursor: default');
7089			$(".forumbutton_absenden").prop('disabled',true);
7090		}
7091	});
7092	
7093	$('#dsgvo2').on('click', function(){
7094		if (($("#dsgvo1").is(':checked')) && ($("#dsgvo2").is(':checked'))) {
7095			$(".forumbutton_absenden").attr('style','background-color: #006415;cursor: pointer');
7096			$(".forumbutton_absenden").prop('disabled',false);
7097		} else {
7098			$(".forumbutton_absenden").attr('style','background-color: #cccccc;cursor: default');
7099			$(".forumbutton_absenden").prop('disabled',true);
7100		}
7101	});
7102	
7103	$.fn.equalizeHeights = function(){
7104		return this.height( Math.max.apply(this, $(this).map(function(i,e){ return $(e).height() }).get() ) );
7105	};
7106	
7107	$(window).resize(function() {
7108		var height_video = $(window).width();
7109		var height_responsive = (height_video / 1.78011) + 1;
7110		$('#form-forenmitarbeit .chk-div').height('').filter(function(){return $(this).css('float') == 'left'}).equalizeHeights();
7111	});
7112	
7113	$('#form-forenmitarbeit .chk-div').height('').filter(function(){return $(this).css('float') == 'left'}).equalizeHeights();
7114	var forenselectok = '0';
7115	for (var i = 1; i < 16; i++) {
7116		if (localStorage.getItem('forum'+i) == '1'){
7117			$('#forum'+i+' > .ebene2-text > .forenok').show();
7118			forenselectok = '1';
7119		}
7120	}
7121	if (forenselectok == '1'){ $('.mitmach4').show(); }  else { $('.mitmach4').hide(); }
7122});
7123
7124function get_foreninfo(nr) {
7125	var foren = [
7126		["Beste Bildung f&uuml;r Berlin","<strong>Beste Bildung f&uuml;r Berlin</strong>","","In einer Wissensgesellschaft ist gute Bildung die Grundlage f&uuml;r ein selbstbestimmtes, gesundes und erfolgreiches Leben. Das Forum \"Beste Bildung f&uuml;r Berlin\" diskutiert Ideen und Konzepte f&uuml;r eine bestm&ouml;gliche F&ouml;rderung aller Kinder und die dringend notwendige Verbesserung der Qualit&auml;t des Berliner Bildungswesens.","1","Bildung","Forum Beste Bildung fuer Berlin"],
7127		["Digitale Transformation","<strong>Digitale Transformation</strong>","","Die Digitalisierung durchzieht mittlerweile nahezu jeden Bereich unseres Lebens. Das Forum \"Digitale Transformation\" besch&auml;ftigt sich mit der Frage, wie wir diese Entwicklung bestm&ouml;glich zum Vorteil aller nutzen k&ouml;nnen.","2","Digitalisierung","Forum Digitale Transformation"],
7128		["Berlin in Europa und der Welt","<strong>Berlin in Europa und der Welt</strong>","","Die CDU ist die Europapartei Deutschlands. Das Forum \"Berlin in Europa und der Welt\" diskutiert Fragen rund um die Europ&auml;ische Union und die internationale Rolle Deutschlands und Berlins.","3","Europa","Berlin in der Welt"],
7129		["Gesundheitsstadt Berlin","<strong>Gesundheitsstadt Berlin</strong>","","Nur ein gesundes Berlin ist auch ein starkes Berlin. Das Forum \"Gesundheit&szlig;tadt Berlin\" diskutiert, wie auch in Zukunft allen Menschen in unserer Stadt Zugang zu einer guten medizinischen Versorgung erm&ouml;glicht werden kann, unabh&auml;ngig von Einkommen, Alter oder gesundheitlichem Zustand.","1","Pflege","Forum Gesundheitsstadt Berlin"],
7130		["Sicherheit und Ordnung","<strong>Sicherheit und Ordnung</strong>","","Berlin gilt als \"Hauptstadt des Verbrechens\". Das Forum \"Sicherheit und Ordnung\"  setzt sich mit der Frage auseinander, wie Berlin zu einer Stadt werden kann, in der alle sicher und frei leben k&ouml;nnen.","1","Inneres","Forum Sicherheit und Ordnung"],
7131		["Soziales Berlin","<strong>Soziales Berlin</strong>","","Gelungene Integration, gute Arbeit und eine qualitativ hochwertige soziale Infrastruktur sind die Themen, mit denen sich das Forum \"Soziales Berlin\" besch&auml;ftigt.","1","Integration","Forum Soziales Berlin"],
7132		["Miteinander der Generationen","<strong>Miteinander der Generationen</strong>","","Ein starkes Berlin gibt es nur mit starken Familien sowie einem gerechten und verantwortungsvollen Miteinander aller Generationen. Das Forum \"Miteinander der Generationen\" widmet sich der Frage, wie Berlin auch in Zukunft in jedem Lebensalter lebenswert bleibt.","1","Familie","Forum Miteinander der Generationen"],
7133		["Justiz und Rechtspolitik","<strong>Justiz und Rechtspolitik</strong>","","Das Forum \"Justiz und Rechtspflege\" diskutiert Konzepte f&uuml;r eine zuverl&auml;&szlig;ig, schnell und effektiv arbeitende Justiz sowie eine auf qualitativ hohem Niveau arbeitende Rechtspflege.","1","Justiz","Forum Justiz und Rechtspolitik"],
7134		["Kulturmetropole Berlin","<strong>Kulturmetropole Berlin</strong>","","Berlins einzigartige Kulturlandschaft ist die Visitenkarte Deutschlands f&uuml;r G&auml;ste aus aller Welt. Das Forum \"Kulturmetropole Berlin\" widmet sich der einzigartigen kulturellen Vielfalt und Lebendigkeit unserer Stadt.","1","Kultur","Forum Kulturmetropole Berlin"],
7135		["Zukunft des Berliner Sports","<strong>Zukunft des Berliner Sports</strong>","","Sport verbindet Menschen &uuml;ber alle Generationen, Kulturen und Einkommensklassen hinweg. Er ist identit&auml;ts- und gemeinschaftsstiftend. Das Forum \"Zukunft des Berliner Sports\" diskutiert Konzepte f&uuml;r eine bestm&ouml;gliche F&ouml;rderung des Spitzen- und Breitensports in unserer Stadt.","1","Sport","Forum Zukunft des Berliner Sports"],
7136		["Lebenswerte Stadt","<strong>Lebenswerte Stadt</strong>","","Berlin mu&szlig; auch in Zukunft eine lebens- und liebenswerte Stadt f&uuml;r alle bleiben. Das Forum \"Lebenswerte Stadt\" besch&auml;ftigt sich mit der Frage, was daf&uuml;r angesichts von mangelndem Wohnraum, steigenden Mieten und zunehmender Verwahrlosung und Verm&uuml;llung des &ouml;ffentlichen Raumes getan werden mu&szlig;.","1","Stadtentwicklung","Forum Lebenswerte Stadt"],
7137		["Mobilit&auml;t der Zukunft","<strong>Mobilit&auml;t der Zukunft</strong>","","Ein leistungsf&auml;higes und umweltfreundliches Verkehrssystem, ein faires Miteinander aller Verkehrsteilnehmer sowie Nachhaltigkeit sind unabdingbare Voraussetzungen f&uuml;r eine lebenswerte Stadt. Das Forum \"Mobilit&auml;t der Zukunft\" besch&auml;ftigt sich mit der Frage, wie eine nachhaltige, vern&uuml;nftige und unideologische Verkehrswende in Berlin gelingen kann.","1","Umwelt","Forum Mobilitaet der Zukunft"],
7138    ["Hauptstadt der Nachhaltigkeit","<strong>Hauptstadt der Nachhaltigkeit</strong>","","Berlin soll sp&auml;testens bis zum Jahr 2050 zu einer klimaneutralen Stadt werden. Daf&uuml;r braucht es ein breites Engagement und die Akzeptanz der Menschen in unserer Stadt. Das Forum besch&auml;ftigt sich deshalb mit der Frage, wie Klimaschutz zum Jobmotor und Berlin zur \"Hauptstadt der Nachhaltigkeit\" werden kann.","1","Nachhaltigkeit","Forum Hauptstadt der Nachhaltigkeit"],
7139		["Starke Wirtschaft","<strong>Starke Wirtschaft</strong>","","Das Forum \"Starke Wirtschaft\" diskutiert Fragen rund um die St&auml;rkung des Wirtschaftsstandortes Berlin. Dabei stehen moderne Industrie und innovative Start-Ups genaus
7139o im Fokus wie alteingesessenes Gewerbe oder traditionelles Handwerk.","1","Wirtschaft","Forum Starke Wirtschaft"],
7140		["Exzellenz in Wissenschaft und Forschung","<strong>Exzellenz in Wissenschaft und Forschung</strong>","","<strong>Gute Universit&auml;ten und Fachhochschulen sind f&uuml;r die Zukunftsf&auml;higkeit unserer Stadt unerl&auml;&szlig;lich, denn die Studierenden von heute sind die Entwickler, Forscher, Gr&uuml;nder und Unternehmer von morgen. Das Forum \"Exzellenz in Wissenschaft und Forschung\" widmet sich den Fragen, wie Berlins Position als f&uuml;hrender Wissenschaftsstandort gest&auml;rkt und ausgebaut werden und die Rahmenbedingungen f&uuml;r Wissenschaft und Forschung verbe&szlig;ert werden k&ouml;nnen.","1","Wissenschaft","Forum Exzellenz in Wissenschaft und Forschung"]
7141	];
7142	return foren[nr];
7143}
7144
7145function foreninfo(nr) {
7146	var forenbildpfad = 'https://www.cdu.berlin';
7147	var foren = get_foreninfo((nr-1));
7148	var htmltext;
7149	htmltext = '<div class="col-md-12">';
7150	htmltext = htmltext  + '<div class="foreninfo1">';
7151	htmltext = htmltext  + '	<div style="position:absolute; top:10px; right:10px; z-index:100; padding: 5px 10px; background: #000000; font-weight:bold; border-radius: 23px; cursor:pointer;" onclick="foreninfoclose('+nr+')">X</div>';
7152	htmltext = htmltext  + '	<div style="width:50%; margin: 0 0 0 0; border: 0px solid #02538c; float: left; font-size:16px;">';
7153	htmltext = htmltext  + '		'+foren[1]+'</div>';
7154	htmltext = htmltext  + '	<div style="width:50%; margin: 0 0 0 0; border: 0px solid #02538c; float: left; font-size:16px;">';
7155	htmltext = htmltext  + '		'+foren[2]+'</div>';
7156	htmltext = htmltext  + '	<div style="width:100%; margin: 0 0 0 0; border: 0px solid #02538c; font-size:16px;padding-top:30px; float: left;">'+foren[3]+'</div>';
7157	htmltext = htmltext  + '</div>';
7158	htmltext = htmltext  + '<div class="foreninfo2">';
7159	htmltext = htmltext  + '	<img src="'+forenbildpfad+'/image/templates/berlin2020/foren/'+foren[5]+'.jpg" style="width:100%">';
7160	
7161	if (localStorage.getItem('forum'+nr) == '1'){
7162		htmltext = htmltext  + '	<div class="foren_btn_delete" onclick="forendelete('+nr+');">AUS DER AUSWAHL ENTFERNEN</div>';
7163	} else {
7164		htmltext = htmltext  + '	<div class="foren_btn_auswahl" onclick="forenselect('+nr+');">AUSW&Auml;HLEN</div>';
7165	}
7166	htmltext = htmltext  + '</div>';
7167	htmltext = htmltext  + '</div>';
7168	
7169	$('#mitmach3').html(htmltext);
7170}
7171
7172function mitmach5close() {
7173	$('#mitmach3').hide();
7174	$('.forenzeile').show();
7175	var forenselectok = '0';
7176	for (var i = 1; i < 16; i++) {
7177		if (localStorage.getItem('forum'+i) == '1'){
7178			$('#forum'+i+' > .ebene2-text > .forenok').show();
7179			forenselectok = '1';
7180		}
7181	}
7182	if (forenselectok == '1'){ $('.mitmach4').show(); } else { $('.mitmach4').hide(); }
7183	$('#mitmach5').hide();
7184	$('#mitmach2').show();
7185	$('.forenzeile').css('opacity','1');
7186	$([document.documentElement, document.body]).animate({scrollTop: $("#mitmach2").offset().top}, 1000);
7187	return false;
7188}
7189
7190function foreninfoclose(nr) {
7191	$('.forenzeile').css('opacity','1');
7192	$('#mitmach3').html('');
7193	$('#mitmach3').hide();	 
7194}
7195
7196function forenselect(nr) {
7197	$('#forum'+nr+' > .ebene2-text > .forenok').show();
7198	localStorage.setItem('forum'+nr, '1');
7199	$('#mitmach31').show();
7200	$('#mitmach3').html('');
7201	$('#mitmach3').hide();
7202}
7203
7204function foren31select() {
7205	$('#mitmach31').hide();
7206	$('#mitmach3').hide();
7207	$('.mitmach4').show();
7208	$('#mitmach2').show();
7209	$('.forenzeile').css('opacity','1');
7210	$([document.documentElement, document.body]).animate({scrollTop: $("#mitmach2").offset().top}, 1000);
7211}
7212
7213function forendelete(nr) {
7214	$('#forum'+nr+' > .ebene2-text > .forenok').hide();
7215	localStorage.removeItem('forum'+nr);
7216	$('.forenzeile').css('opacity','1');
7217	$('#mitmach3').html('');
7218	$('#mitmach3').hide();
7219	
7220	var forenselectok = '0';
7221	for (var i = 1; i < 16; i++) {
7222		if (localStorage.getItem('forum'+i) == '1'){
7223			$('#forum'+i+' > .ebene2-text > .forenok').show();
7224			forenselectok = '1';
7225		}
7226	}
7227	if (forenselectok == '1'){ $('.mitmach4').show(); } else { $('.mitmach4').hide(); }
7228	$([document.documentElement, document.body]).animate({scrollTop: $("#mitmach2").offset().top}, 1000);
7229}
7230
7231function umfrageoeffnen() {
7232	$('#umfragepage1').toggle();
7233	$('#spendepage1').hide();
7234	$('#mitmach2').hide();
7235	$('#mitmach3').hide();
7236	$('.mitmach4').hide();
7237	$('#mitmach5').hide();
7238	$('#mitmach6').hide();
7239	$('#mitmachcloser').hide();
7240}
7241
7242function spendeoeffnen() {
7243	$('#spendepage1').toggle();
7244	$('#umfragepage1').hide();
7245	$('#mitmach2').hide();
7246	$('#mitmach3').hide();
7247	$('.mitmach4').hide();
7248	$('#mitmach5').hide();
7249	$('#mitmach6').hide();
7250	$('#mitmachcloser').hide();
7251}
7252
7253function foreneroeffnen() {
7254	var width = $( window ).width();
7255	var percent = '20';
7256	
7257	if(!$('#mitmach5').is(':visible'))
7258	{
7259		$('.forenzeile').css('opacity','1');
7260		$('#mitmach3').html('');
7261		$('#mitmach3').hide();	 
7262	}
7263	$('#umfragepage1').hide();
7264	$('#spendepage1').hide();
7265	$('#mitmachrubrik').show();
7266	$('#mitmach1').show();
7267	$('#mitmach3').hide();
7268	$('#mitmach6').hide();
7269	$('.forenzeile').show();
7270	var forenselectok = '0';
7271	for (var i = 1; i < 16; i++) {
7272		if (localStorage.getItem('forum'+i) == '1'){
7273			$('#forum'+i+' > .ebene2-text > .forenok').show();
7274			forenselectok = '1';
7275		}
7276	}
7277	if (forenselectok == '1'){ $('.mitmach4').show(); } else { $('.mitmach4').hide(); }
7278	$('#mitmach5').hide();
7279	
7280	if($("#mitmach2").is(':visible'))
7281	{
7282		$('#mitmach2').toggle('fast');
7283		$([document.documentElement, document.body]).animate({scrollTop: $("#mitmachrubrik").offset().top}, 1000);
7284	} else {
7285		$('#mitmach2').toggle('fast');
7286		$([document.documentElement, document.body]).animate({scrollTop: $("#mitmach2").offset().top}, 1000);
7287	}
7288	
7289	if (width <= 767) { percent = '35'; }
7290	
7291	if($("#mitmachcloser").is(':visible')) 
7292		{ $("#mitmachcloser").attr('style','width: 17% !important; padding: '+percent+'px 0px 20px 0px !important; display: none;'); }
7293	else
7294		{ $("#mitmachcloser").attr('style','width: 17% !important; padding: '+percent+'px 0px 20px 0px !important; display: block;'); }
7295		
7296	return false;
7297}
7298
7299function mitmach4click() {
7300	$('#mitmach3').hide();
7301	$('#mitmach31').hide();
7302	
7303	$('#mitmach5').toggle('slow');
7304	if($('.mitmach4').is(':visible')) { $('.mitmach4').hide(); }
7305	
7306	$('.forenzeile').hide();
7307	var forenselectok = '0';
7308	var forenaufzaehlung = '';
7309	var forumname = '';
7310	for (var i = 0; i < 15; i++) {
7311		if (localStorage.getItem('forum'+(i+1)) == '1'){
7312			forumname = get_foreninfo(i);
7313			if (forenaufzaehlung=='') {
7314				forenaufzaehlung = forenaufzaehlung + '<strong>' + forumname[0] + '</strong><input type="hidden" name="INXMAIL_SUBSCRIPTION" value="'+forumname[6]+'">';
7315			} else {
7316				forenaufzaehlung = forenaufzaehlung + ', <strong>'+forumname[0] + '</strong><input type="hidden" name="INXMAIL_SUBSCRIPTION" value="'+forumname[6]+'">';			
7317			}
7318		}
7319	}
7320	$('#wunschforen').html(forenaufzaehlung);
7321	$([document.documentElement, document.body]).animate({scrollTop: $("#mitmach2").offset().top}, 1000);
7322}
7323
7324function mitmachformsubmit() {
7325	var forenselectok = '0';
7326	var forenaufzaehlung = '';
7327	var forumname = '';
7328	if ($('#email').val()!='')
7329	{
7330		$("#email").attr('style','border-color: #FFFFFF; width:100%;');
7331		for (var i = 0; i < 15; i++) {
7332			if (localStorage.getItem('forum'+(i+1)) == '1'){
7333				forumname = get_foreninfo(i);
7334				if (forenaufzaehlung=='') {
7335					forenaufzaehlung = forenaufzaehlung + 'INXMAIL_SUBSCRIPTION[]='+forumname[6];
7336				} else {
7337					forenaufzaehlung = forenaufzaehlung + '&INXMAIL_SUBSCRIPTION[]='+forumname[6];			
7338				}
7339			}
7340		}
7341		forenaufzaehlung = forenaufzaehlung + '&INXMAIL_HTTP_REDIRECT='+$('#INXMAIL_HTTP_REDIRECT').val();
7342		forenaufzaehlung = forenaufzaehlung + '&INXMAIL_HTTP_REDIRECT_ERROR='+$('#INXMAIL_HTTP_REDIRECT_ERROR').val();
7343		forenaufzaehlung = forenaufzaehlung + '&INXMAIL_CHARSET='+$('#INXMAIL_CHARSET').val();
7344        
7345    forenaufzaehlung = forenaufzaehlung + '&Anrede='+$("input[name='anrede']:checked").val();
7346		forenaufzaehlung = forenaufzaehlung + '&Vorname='+$('#vorname').val();
7347		forenaufzaehlung = forenaufzaehlung + '&Nachname='+$('#nachname').val();
7348		forenaufzaehlung = forenaufzaehlung + '&email='+$('#email').val();
7349		
7350		var formParams = forenaufzaehlung;
7351		
7352		$.ajax({
7353			url: '/download?action=onepager06foren&step=1',
7354			type: 'POST',
7355			traditional: true,
7356			data: formParams,
7357			success: function(data){
7358			}
7359		});
7360		
7361		for (var i = 1; i < 16; i++) {
7362			if (localStorage.getItem('forum'+i) == '1'){
7363				$('#forum'+i+' > .ebene2-text > .forenok').hide();
7364			}
7365		}
7366		localStorage.clear();
7367		$('#mitmach6').show();
7368		$('#mitmach5').hide();
7369		$('#mitmach3').hide();
7370		$([document.documentElement, document.body]).animate({scrollTop: $("#mitmachrubrik").offset().top}, 1000);
7371	}
7372	else
7373	{
7374		$("#email").attr('style','border-color: #FF0000; width:100%;');
7375	}
7376}
7377
7378function mitmachmalclose() {
7379	$('#mitmachrubrik').hide();
7380	$('#mitmach1').hide();
7381	$('#mitmach2').hide();
7382	$('#mitmach3').hide();
7383	$('.mitmach4').hide();
7384	$('#mitmach5').hide();
7385	$('#mitmach6').hide();
7386	$('#mitmachcloser').hide();
7387}
7388
7389$('#sharkmenu').prepend('<div id="menu-button">Men&uuml;</div>');
7390$('#sharkmenu #menu-button').on('click', function(){
7391    var menu = $(this).next('ul');
7392    var fensterbreite = $(window).width();
7393    var fensterhoehe  = $(window).height();
7394    
7395    if (menu.hasClass('open')) {
7396        menu.stop(true,true).removeClass('open',100);
7397        if (fensterbreite>468) {
7398            fensterhoehe = 60;
7399            $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7400        } else {
7401            fensterhoehe = 35;
7402            $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7403        }
7404    } else {
7405        menu.stop(true,true).addClass('open',3000);
7406        if (fensterbreite>468) {
7407            fensterhoehe = fensterhoehe-90;
7408            $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7409        } else {
7410            fensterhoehe = fensterhoehe-65;
7411            $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7412        }
7413    }
7414});
7415
7416var headlineowidth = $('.section--headline-header-box').width();
7417var headlinetwidth = $('.section--headline-header-title').width();
7418var headlinepwidth = Math.ceil(0.06*headlineowidth);
7419var headlineheight = $('.section--headline-header-box').height()-5;
7420var headlinewidth  = Math.ceil(headlineheight * Math.tan(12 * Math.PI / 180));
7421var headlineright  = Math.ceil(headlinewidth/2)+(headlineowidth-(headlinetwidth+headlinepwidth));
7422$('.section--headline-header-box-balken').css('height',headlineheight);
7423$('.section--headline-header-box-balken').css('width',headlinewidth);
7424if ($('.section--headline-header').width()<468) { headlineright = '-2px'; }
7425$('.section--headline-header-box-balken').css('right',headlineright);
7426
7427$(window).resize(function() {
7428    var headlineowidth = $('.section--headline-header-box').width();
7429    var headlinetwidth = $('.section--headline-header-title').width();
7430    var headlinepwidth = Math.ceil(0.06*headlineowidth);
7431    var headlineheight = $('.section--headline-header-box').height()-5;
7432    var headlinewidth  = Math.ceil(headlineheight * Math.tan(12 * Math.PI / 180));
7433    var headlineright  = Math.ceil(headlinewidth/2)+(headlineowidth-(headlinetwidth+headlinepwidth));
7434    $('.section--headline-header-box-balken').css('height',headlineheight);
7435    $('.section--headline-header-box-balken').css('width',headlinewidth);
7436    if ($('.section--headline-header').width()<468) { headlineright = '-2px'; }
7437    $('.section--headline-header-box-balken').css('right',headlineright);
7438    
7439    /*
7440    var menu = $('#sharkmenu #menu-button').next('ul');
7441    var fensterbreite = $(window).width();
7442    var fensterhoehe  = $(window).height();
7443    
7444    if (fensterbreite>900) {
7445        fensterhoehe = 60;
7446        $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7447    } else {
7448        if (menu.hasClass('open')) {
7449            menu.stop(true,true).removeClass('open',100);
7450            if (fensterbreite>468) {
7451                fensterhoehe = 60;
7452                $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7453            } else {
7454                fensterhoehe = 35;
7455                $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7456            }
7457        } else {
7458            menu.stop(true,true).addClass('open',3000);
7459            if (fensterbreite>468) {
7460                fensterhoehe = fensterhoehe-90;
7461                $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7462            } else {
7463                fensterhoehe = fensterhoehe-65;
7464                $('#sharkmenu > ul.open').css("height", fensterhoehe + "px");
7465            }
7466        }
7467    }
7468    */
7469});
7470
7471$(document).on( "click", "#tooltip", function() {
7472    var tooltip = document.getElementById("tooltip");
7473    tooltip.style.display = "none";
7474    localStorage.removeItem('tooltip');
7475});
7476
7477$(document).on( "click", "#personalmail", function() {
7478  var idp       = $(this).attr("idp");
7479  var name      = $('#name'+idp).val();
7480  var email     = $('#email'+idp).val();
7481  var plz       = $('#plz'+idp).val();
7482  var betreff   = $('#betreff'+idp).val();
7483  var nachricht = $('#nachricht'+idp).val();
7484  var nutzung   = $('input[name=nutzung'+idp+']:checked').val();
7485  
7486  $('#name'+idp).css("border","0px");
7487  $('#email'+idp).css("border","0px");
7488  $('#betreff'+idp).css("border","0px");
7489  $('#nachricht'+idp).css("border","0px");
7490  $('.mailcheckdsgvo'+idp).css("color","#000000");
7491  
7492  if ((name!="") && (betreff!="") && (email!="") && (nachricht!="") && (nutzung=="1")){
7493        var data    = new FormData();
7494        data.append('idp',idp);
7495        data.append('name',name);
7496        data.append('email',email);
7497        data.append('plz',plz);
7498        data.append('betreff',betreff);
7499        data.append('nachricht',nachricht);
7500        data.append('nutzung',nutzung);
7501        $.ajax({
7502          type: 'POST',
7503          enctype: 'multipart/form-data',
7504          url: "/download?action=personalmail",
7505          data: data,
7506          cache: false,
7507          contentType: false,
7508          processData: false					
7509        }).done(function(data) {
7510            if (data=='0') {
7511              alert('Die E-Mail konnte nicht verschickt werden. Bitte wenden Sie sich direkt an uns!');
7512            } else {
7513                $('#mailsuccess'+idp).html('Vielen Dank f&uuml;r Ihre Mitteilung!');
7514                setTimeout( function() {
7515                    $('#mailsuccess'+idp).html('');
7516                    $('#name'+idp).val('');
7517                    $('#email'+idp).val('');
7518                    $('#plz'+idp).val('');
7519                    $('#betreff'+idp).val('');
7520                    $('#nachricht'+idp).val('');
7521                    $('input[name=nutzung'+idp+']').prop('checked', false);
7522                    $('#myModal'+idp+'_mail').hide('slow');
7523                }, 3000);
7524            }
7525        });
7526    } else {
7527        if (name=="") { $('#name'+idp).css("border","1px solid red"); }
7528        if (email=="") { $('#email'+idp).css("border","1px solid red"); }
7529        if (betreff=="") { $('#betreff'+idp).css("border","1px solid red"); }
7530        if (nachricht=="") { $('#nachricht'+idp).css("border","1px solid red"); }
7531        if (nutzung!="1") { $('.mailcheckdsgvo'+idp).css("color","red"); }
7532    }
7533});
7534
7535$(document).on( "click", ".formnext", function() {
7536    var maxseite = $(this).attr("ms");
7537    var seite = $(this).attr("seite");
7538    var vorseite = parseInt(seite)-1;
7539    var ismr  = $(this).attr("ismr");
7540    $('#seite-'+ismr+'-'+vorseite).toggle('fast');
7541    $('#seite-'+ismr+'-'+seite).toggle('fast');
7542    if (seite==maxseite) {
7543        $('#showend').show('fast');
7544    } else {
7545        $('#showend').hide();
7546    }
7547});
7548
7549$(document).on( "click", ".formback", function() {
7550    var maxseite = $(this).attr("ms");
7551    var seite = $(this).attr("seite");
7552    var nextseite = parseInt(seite)+1;
7553    var ismr  = $(this).attr("ismr");
7554    $('#seite-'+ismr+'-'+nextseite).toggle('fast');
7555    $('#seite-'+ismr+'-'+seite).toggle('fast');
7556    $('#showend').hide();
7557});
7558
7559$(document).on( "click", ".umfragego", function() {
7560    var ismr  = $(this).attr("nr");
7561    var idu   = $(this).attr("idu");
7562    var uchk  = $('input[name=abstimmung'+ismr+']:checked').val();
7563    if(typeof uchk !== "undefined") {
7564        $('.umfrage10_hinweis').hide('slow');
7565        var data    = new FormData();
7566        data.append('ismr',ismr);
7567        data.append('idu',idu);
7568        data.append('uchk',uchk);
7569        $.ajax({
7570          type: 'POST',
7571          enctype: 'multipart/form-data',
7572          url: "/download?action=umfrage",
7573          data: data,
7574          cache: false,
7575          contentType: false,
7576          processData: false					
7577        }).done(function(data) {
7578            if (data=='0') {
7579                $('.umfrage10_hinweis').html('<strong>Hinweis:</strong> Die Umfrage konnte nicht gezählt werden.');
7580                $('.umfrage10_hinweis').show('slow');
7581            } else {
7582                $('#umfrage'+ismr).html(data);
7583            }
7584        });
7585    } else {
7586        $('.umfrage10_hinweis').show('slow');
7587    }
7588});
7589
7590$(document).on( "click", ".programm_thema_button", function() {
7591    var idt    = $(this).attr('idt');
7592    var status = $(this).attr('status');
7593    var nstat  = '';
7594    var ids    = '';
7595    var i      = 0;
7596    if (status=='1')
7597    {
7598        nstat = '0';
7599        $(this).css('background','#F7A600');
7600    } else {
7601        nstat = '1';
7602        $(this).css('background','#00B3CD');
7603    }
7604    $(this).attr('status',nstat);
7605    
7606    $('.programm_thema_button').each(function( index ) {
7607        if ($(this).attr("status")=="1") {
7608            if (ids!="") { ids = ids + ","; }
7609            ids = ids + $(this).attr("idt");
7610        }
7611        i++;
7612    });
7613    
7614    var data     = new FormData();
7615    data.append('ids',ids);
7616                    
7617    $.ajax({
7618        type: 'POST',
7619        enctype: 'multipart/form-data',
7620        url: "/functions/z_programm.php?action=getschlagworte",
7621        data: data,
7622        cache: false,
7623        contentType: false,
7624        processData: false					
7625    }).done(function(data) {
7626        if (data=="0") {
7627            $('#programm_step2').hide('slow');
7628            $('.programm_thema_schlagworte').hide('slow');
7629            $('.programm_thema_schlagworte').html('');
7630            $('#programm_step3').hide('slow');
7631            $('.programm_div_ergebnis').hide('slow');
7632        } else {
7633            $('#programm_step2').show('fast');
7634            $('.programm_thema_schlagworte').show('fast');
7635            $('.programm_thema_schlagworte').html(data);
7636            $('#programm_step3').hide('slow');
7637            $('.programm_div_ergebnis').hide('slow');
7638        }
7639    });
7640});
7641
7642$(document).on( "click", ".programm_ergebnis_button", function() {
7643    var status = $(this).attr('status');
7644    var nstat  = '';
7645    
7646    if (status=='1')
7647    {
7648        nstat = '0';
7649        $(this).css('background','#F7A600');
7650    } else {
7651        nstat = '1';
7652        $(this).css('background','#00B3CD');
7653    }
7654    $(this).attr('status',nstat);
7655    
7656    var aktiv  = 0;
7657    $('.programm_ergebnis_button').each(function( index ) {
7658        if ($(this).attr("status")=="1") {
7659            aktiv = 1;
7660        }
7661    });
7662    
7663    if (aktiv==1) {
7664        $('#programm_step3').show('fast');
7665        $('.programm_div_ergebnis').show('fast');
7666    } else {
7667        $('#programm_step3').hide();
7668        $('.programm_div_ergebnis').hide('slow');
7669    }
7670});
7671
7672$(document).on( "click", ".programm_thema_button_v2", function() {
7673    var idt    = $(this).attr('idt');
7674    var status = $(this).attr('status');
7675    var nstat  = '';
7676    var ids    = '';
7677    var i      = 0;
7678    if (status=='1')
7679    {
7680        nstat = '0';
7681        $(this).css('background','#F7A600');
7682    } else {
7683        nstat = '1';
7684        $(this).css('background','#00B3CD');
7685    }
7686    $(this).attr('status',nstat);
7687    
7688    $('.programm_thema_button_v2').each(function( index ) {
7689        if ($(this).attr("status")=="1") {
7690            if (ids!="") { ids = ids + ","; }
7691            ids = ids + $(this).attr("idt");
7692        }
7693        i++;
7694    });
7695    
7696    if (ids!="") {
7697        var data     = new FormData();
7698        data.append('ids',ids);
7699        $.ajax({
7700            type: 'POST',
7701            enctype: 'multipart/form-data',
7702            url: "/functions/z_programm.php?action=getschlagworte_v2",
7703            data: data,
7704            cache: false,
7705            contentType: false,
7706            processData: false					
7707        }).done(function(data) {
7708            if (data=="0") {
7709                $('#programm_step2_v2').hide('slow');
7710                $('.programm_thema_schlagworte_v2').hide('slow');
7711                $('.programm_thema_schlagworte_v2').html('');
7712                $('.programm_div_ergebnis_v2').hide('slow');
7713            } else {
7714                $('#programm_step2_v2').show('fast');
7715                $('.programm_thema_schlagworte_v2').show('fast');
7716                $('.programm_thema_schlagworte_v2').html(data);
7717                $('.programm_div_ergebnis_v2').hide('slow');
7718            }
7719        });
7720    } else {
7721        $('#programm_step2_v2').hide('slow');
7722        $('.programm_thema_schlagworte_v2').hide('slow');
7723        $('.programm_thema_schlagworte_v2').html('');
7724        $('.programm_div_ergebnis_v2').hide('slow');
7725    }
7726});
7727
7728$(document).on( "click", ".programm_ergebnis_button_v2", function() {
7729    var status = $(this).attr('status');
7730    var idpro  = $('#idpro').val();
7731    var nstat  = '';
7732    var schlagworte = '';
7733    var ids    = '';
7734    
7735    if (status=='1')
7736    {
7737        nstat = '0';
7738        $(this).css('background','#F7A600');
7739    } else {
7740        nstat = '1';
7741        $(this).css('background','#00B3CD');
7742    }
7743    $(this).attr('status',nstat);
7744    
7745    var aktiv  = 0;
7746    var s      = 0;
7747    $('.programm_ergebnis_button_v2').each(function( index ) {
7748        if ($(this).attr("status")=="1") {
7749            aktiv = 1;
7750            if (schlagworte!="") { schlagworte = schlagworte + ';' }
7751            schlagworte = schlagworte + $(this).attr("schlagwort");
7752            s++;
7753        }
7754    });
7755    
7756    $('.programm_thema_button_v2').each(function( index ) {
7757        if ($(this).attr("status")=="1") {
7758            if (ids!="") { ids = ids + ","; }
7759            ids = ids + $(this).attr("idt");
7760        }
7761    });
7762    
7763    if ((aktiv==1)&&(ids!="")) {
7764        $('.programm_div_ergebnis_v2').show('fast');
7765        
7766        var data     = new FormData();
7767        data.append('idpro',idpro);
7768        data.append('schlagworte',schlagworte);
7769        data.append('ids',ids);
7770                        
7771        $.ajax({
7772            type: 'POST',
7773            enctype: 'multipart/form-data',
7774            url: "/functions/z_programm.php?action=getprogramm_v2",
7775            data: data,
7776            cache: false,
7777            contentType: false,
7778            processData: false					
7779        }).done(function(data) {
7780            if (data=="0") {
7781                $('.programm_div_ergebnis_v2').html('<div style="margin-top:40px;font-weight:bold">Bitte verfeinern Sie Ihre Auswahl!</div>');
7782            } else {
7783                $('.programm_div_ergebnis_v2').html(data);
7784                $('html, body').animate({ scrollTop:$('.programm_div_ergebnis_v2').offset().top },'slow');
7785            }
7786        });
7787    } else {
7788        $('.programm_div_ergebnis_v2').hide('slow');
7789    }
7790});
7791
7792$(document).on( "click", ".programm_ergebnis", function() {
7793    var idseite = $('#idseite').val();
7794    var idpro   = $('#idpro').val();
7795    var name    = $('#name').val();
7796    var email   = $('#email').val();
7797    var dsgvo   = $("input[name='dsgvo']:checked").val();
7798    var ids     = '';
7799    
7800    if ((typeof(dsgvo)!="undefined")&&(email!="")) {
7801        var schlagworte = '';
7802        var s      = 0;
7803        $('.programm_ergebnis_button').each(function( index ) {
7804            if ($(this).attr("status")=="1") {
7805                if (s>0) { schlagworte = schlagworte + ';' }
7806                schlagworte = schlagworte + $(this).attr("schlagwort");
7807                s++;
7808            }
7809        });
7810        
7811        $('.programm_thema_button').each(function( index ) {
7812            if ($(this).attr("status")=="1") {
7813                if (ids!="") { ids = ids + ","; }
7814                ids = ids + $(this).attr("idt");
7815            }
7816        });
7817        
7818        var data = new FormData();
7819        data.append('idseite',idseite);
7820        data.append('idpro',idpro);
7821        data.append('name',name);
7822        data.append('email',email);
7823        data.append('dsgvo',dsgvo);
7824        data.append('schlagworte',schlagworte);
7825        data.append('ids',ids);
7826                        
7827        $.ajax({
7828            type: 'POST',
7829            enctype: 'multipart/form-data',
7830            url: "/functions/z_programm.php?action=getprogramm_v3",
7831            data: data,
7832            cache: false,
7833            contentType: false,
7834            processData: false					
7835        }).done(function(data) {
7836            if (data=="0") {
7837                $('#email').css("border","3px solid red");
7838            } else {
7839                $('#programm_step1').hide();
7840                $('#programm_thema_button'+idpro).hide();
7841                $('#programm_step2').hide();
7842                $('.programm_thema_schlagworte').hide();
7843                $('#programm_step3').hide();
7844                $('.programm_div_ergebnis').html(data);
7845            }
7846        });
7847    } else {
7848        if (email=="") { $('#email').css("border","3px solid red"); } else { $('#email').css("border","0px solid black"); }
7849        if (typeof(dsgvo)=="undefined") { $('.dsgvolink').css("color","#FF0000"); }
7850    }
7851});
7852
7853$(function(){
7854    if ($('.termin_planer_box').length) {
7855        var planertop = $('.termin_planer_box').offset().top;
7856        $(window).scroll(function(){
7857            
7858            planertop = $('.termin_planer_box').offset().top;
7859            if ($(document).scrollTop() > ($('.termin_planer_box').offset().top - 500))
7860            {
7861                if ($(window).width()>1024) {
7862                    $('.termin_planer').fadeOut('fast');
7863                    clearTimeout($.data(this, 'scrollTimer'));
7864                    $.data(this, 'scrollTimer', setTimeout(function() {
7865                        if ($(document).scrollTop()>planertop) {
7866                            if (($(document).scrollTop() - planertop) < ($('.termin_mit_planer').height()-480))
7867                            {
7868                              $('.termin_planer').css("top",$(document).scrollTop()+80);
7869                            }
7870                        } else {
7871                            $('.termin_planer').css("top",planertop);
7872                        }
7873                        $('.termin_planer').fadeIn('fast');
7874                    }, 150));
7875                } else {
7876                    $('.termin_planer').css("top",0);
7877                }
7878            }
7879        });
7880        
7881        $(window).resize(function(){
7882            if ($(window).width()>800) {
7883                $('.termin_planer').css("top",planertop);
7884            } else {
7885                $('.termin_planer').css("top",0);
7886            }
7887        });
7888    }
7889});
7890
7891$(document).on( "click", ".termin_planer_goto", function() {
7892    var ismr         = $(this).attr('ismr');
7893    var aktuellmonat = $(this).attr('aktuellmonat');
7894    var aktuelljahr  = $(this).attr('aktuelljahr');
7895    var datum        = $(this).attr('date');
7896    var p            = $(this).attr('p');
7897    var data     = new FormData();
7898    data.append('ismr',ismr);
7899    data.append('aktuellmonat',aktuellmonat);
7900    data.append('aktuelljahr',aktuelljahr);
7901    data.append('datum',datum);
7902    data.append('p',p);
7903                    
7904    $.ajax({
7905        type: 'POST',
7906        enctype: 'multipart/form-data',
7907        url: "/functions/z_terminplaner.php?action=getplaner",
7908        data: data,
7909        cache: false,
7910        contentType: false,
7911        processData: false					
7912    }).done(function(data) {
7913        if (data=="0") {
7914        } else {
7915            $('#termin_planer'+ismr).html(data);
7916        }
7917    });
7918});
7919
7920$(document).on( "click", ".globalsuche", function() {
7921    var suchwort     = $("input[name='suchwort']").val();
7922    var data     = new FormData();
7923    data.append('suchwort',suchwort);
7924    
7925    if (suchwort!="") {
7926        $.ajax({
7927            type: 'POST',
7928            enctype: 'multipart/form-data',
7929            url: "/functions/z_suche.php",
7930            data: data,
7931            cache: false,
7932            contentType: false,
7933            processData: false					
7934        }).done(function(data) {
7935            if (data=="0") {
7936            } else {
7937                $('#suchergebnis').html(data);
7938            }
7939        });
7940    }
7941});
7942
7943$(document).ready(function() {
7944    var minlength = 3;
7945    $("#suchstrasse").on( "keyup",function () {
7946        var value = $(this).val();
7947
7948        if (value.length >= minlength ) {
7949            $("#resultStrasse").show();
7950            $.ajax({
7951            url: '/download?action=personbezirkV2&step=1&strasse='+value,
7952            success:	function(output) {
7953                        $('#resultStrasse').html(output);
7954                    },
7955            error:	function (xhr, ajaxOptions, thrownError) { alert(xhr.status + " "+ thrownError); }
7956            });
7957        } else {
7958            $('#resultStrasse').hide();
7959        }
7960    });
7961    
7962    $("#buttonpersonsuche").on( "click", function () {
7963        $("#personendetail").hide();
7964        $("#resultStrasse").hide();
7965        var value1 = $("#suchstrasse").val();
7966        var value2 = $("#suchhnr").val();
7967
7968        if ((value1.length >= minlength )&&($("#suchhnr").val()>0)) {
7969            $.ajax({
7970            url: '/download?action=personbezirksucheV2&step=1&strasse='+value1+'&hnr='+value2,
7971            success:	function(output) {
7972                        if (output!='') {
7973                            $("#personendetail").show();
7974                            $("#resultAnsprechpartner").show();
7975                            $('#resultAnsprechpartner').html(output);
7976                        }
7977                    },
7978            error:	function (xhr, ajaxOptions, thrownError) { alert(xhr.status + " "+ thrownError); }
7979            });
7980        }
7981    });
7982    
7983    $(document).on( "click", ".strassenwahl", function() {
7984        var value = $(this).html();
7985        $("#suchstrasse").val(value);
7986        $("#resultStrasse").html('');
7987        $("#resultStrasse").hide();
7988    });
7989});

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.