PageSourceSearch

https://panelacopet.com.br/js/core.min.js

js panelacopet.com.br collected 2026-10-09 03:31:44 UTC 615,847 bytes, 13,187 lines download raw bytes

1/*! jQuery v1.12.4 | (c) jQuery Foundation | jquery.org/license */
2!(function (a, b) {
3  "object" == typeof module && "object" == typeof module.exports
4      ? (module.exports = a.document
5            ? b(a, !0)
6            : function (a) {
7                  if (!a.document) throw new Error("jQuery requires a window with a document");
8                  return b(a);
9              })
10      : b(a);
11})("undefined" != typeof window ? window : this, function (a, b) {
12  var c = [],
13      d = a.document,
14      e = c.slice,
15      f = c.concat,
16      g = c.push,
17      h = c.indexOf,
18      i = {},
19      j = i.toString,
20      k = i.hasOwnProperty,
21      l = {},
22      m = "1.12.4",
23      n = function (a, b) {
24          return new n.fn.init(a, b);
25      },
26      o = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
27      p = /^-ms-/,
28      q = /-([\da-z])/gi,
29      r = function (a, b) {
30          return b.toUpperCase();
31      };
32  (n.fn = n.prototype = {
33      jquery: m,
34      constructor: n,
35      selector: "",
36      length: 0,
37      toArray: function () {
38          return e.call(this);
39      },
40      get: function (a) {
41          return null != a ? (0 > a ? this[a + this.length] : this[a]) : e.call(this);
42      },
43      pushStack: function (a) {
44          var b = n.merge(this.constructor(), a);
45          return (b.prevObject = this), (b.context = this.context), b;
46      },
47      each: function (a) {
48          return n.each(this, a);
49      },
50      map: function (a) {
51          return this.pushStack(
52              n.map(this, function (b, c) {
53                  return a.call(b, c, b);
54              })
55          );
56      },
57      slice: function () {
58          return this.pushStack(e.apply(this, arguments));
59      },
60      first: function () {
61          return this.eq(0);
62      },
63      last: function () {
64          return this.eq(-1);
65      },
66      eq: function (a) {
67          var b = this.length,
68              c = +a + (0 > a ? b : 0);
69          return this.pushStack(c >= 0 && b > c ? [this[c]] : []);
70      },
71      end: function () {
72          return this.prevObject || this.constructor();
73      },
74      push: g,
75      sort: c.sort,
76      splice: c.splice,
77  }),
78      (n.extend = n.fn.extend = function () {
79          var a,
80              b,
81              c,
82              d,
83              e,
84              f,
85              g = arguments[0] || {},
86              h = 1,
87              i = arguments.length,
88              j = !1;
89          for ("boolean" == typeof g && ((j = g), (g = arguments[h] || {}), h++), "object" == typeof g || n.isFunction(g) || (g = {}), h === i && ((g = this), h--); i > h; h++)
90              if (null != (e = arguments[h]))
91                  for (d in e)
92                      (a = g[d]),
93                          (c = e[d]),
94                          g !== c &&
95                              (j && c && (n.isPlainObject(c) || (b = n.isArray(c))) ? (b ? ((b = !1), (f = a && n.isArray(a) ? a : [])) : (f = a && n.isPlainObject(a) ? a : {}), (g[d] = n.extend(j, f, c))) : void 0 !== c && (g[d] = c));
96          return g;
97      }),
98      n.extend({
99          expando: "jQuery" + (m + Math.random()).replace(/\D/g, ""),
100          isReady: !0,
101          error: function (a) {
102              throw new Error(a);
103          },
104          noop: function () {},
105          isFunction: function (a) {
106              return "function" === n.type(a);
107          },
108          isArray:
109              Array.isArray ||
110              function (a) {
111                  return "array" === n.type(a);
112              },
113          isWindow: function (a) {
114              return null != a && a == a.window;
115          },
116          isNumeric: function (a) {
117              var b = a && a.toString();
118              return !n.isArray(a) && b - parseFloat(b) + 1 >= 0;
119          },
120          isEmptyObject: function (a) {
121              var b;
122              for (b in a) return !1;
123              return !0;
124          },
125          isPlainObject: function (a) {
126              var b;
127              if (!a || "object" !== n.type(a) || a.nodeType || n.isWindow(a)) return !1;
128              try {
129                  if (a.constructor && !k.call(a, "constructor") && !k.call(a.constructor.prototype, "isPrototypeOf")) return !1;
130              } catch (c) {
131                  return !1;
132              }
133              if (!l.ownFirst) for (b in a) return k.call(a, b);
134              for (b in a);
135              return void 0 === b || k.call(a, b);
136          },
137          type: function (a) {
138              return null == a ? a + "" : "object" == typeof a || "function" == typeof a ? i[j.call(a)] || "object" : typeof a;
139          },
140          globalEval: function (b) {
141              b &&
142                  n.trim(b) &&
143                  (
144                      a.execScript ||
145                      function (b) {
146                          a.eval.call(a, b);
147                      }
148                  )(b);
149          },
150          camelCase: function (a) {
151              return a.replace(p, "ms-").replace(q, r);
152          },
153          nodeName: function (a, b) {
154              return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase();
155          },
156          each: function (a, b) {
157              var c,
158                  d = 0;
159              if (s(a)) {
160                  for (c = a.length; c > d; d++) if (b.call(a[d], d, a[d]) === !1) break;
161              } else for (d in a) if (b.call(a[d], d, a[d]) === !1) break;
162              return a;
163          },
164          trim: function (a) {
165              return null == a ? "" : (a + "").replace(o, "");
166          },
167          makeArray: function (a, b) {
168              var c = b || [];
169              return null != a && (s(Object(a)) ? n.merge(c, "string" == typeof a ? [a] : a) : g.call(c, a)), c;
170          },
171          inArray: function (a, b, c) {
172              var d;
173              if (b) {
174                  if (h) return h.call(b, a, c);
175                  for (d = b.length, c = c ? (0 > c ? Math.max(0, d + c) : c) : 0; d > c; c++) if (c in b && b[c] === a) return c;
176              }
177              return -1;
178          },
179          merge: function (a, b) {
180              var c = +b.length,
181                  d = 0,
182                  e = a.length;
183              while (c > d) a[e++] = b[d++];
184              if (c !== c) while (void 0 !== b[d]) a[e++] = b[d++];
185              return (a.length = e), a;
186          },
187          grep: function (a, b, c) {
188              for (var d, e = [], f = 0, g = a.length, h = !c; g > f; f++) (d = !b(a[f], f)), d !== h && e.push(a[f]);
189              return e;
190          },
191          map: function (a, b, c) {
192              var d,
193                  e,
194                  g = 0,
195                  h = [];
196              if (s(a)) for (d = a.length; d > g; g++) (e = b(a[g], g, c)), null != e && h.push(e);
197              else for (g in a) (e = b(a[g], g, c)), null != e && h.push(e);
198              return f.apply([], h);
199          },
200          guid: 1,
201          proxy: function (a, b) {
202              var c, d, f;
203              return (
204                  "string" == typeof b && ((f = a[b]), (b = a), (a = f)),
205                  n.isFunction(a)
206                      ? ((c = e.call(arguments, 2)),
207                        (d = function () {
208                            return a.apply(b || this, c.concat(e.call(arguments)));
209                        }),
210                        (d.guid = a.guid = a.guid || n.guid++),
211                        d)
212                      : void 0
213              );
214          },
215          now: function () {
216              return +new Date();
217          },
218          support: l,
219      }),
220      "function" == typeof Symbol && (n.fn[Symbol.iterator] = c[Symbol.iterator]),
221      n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function (a, b) {
222          i["[object " + b + "]"] = b.toLowerCase();
223      });
224  function s(a) {
225      var b = !!a && "length" in a && a.length,
226          c = n.type(a);
227      return "function" === c || n.isWindow(a) ? !1 : "array" === c || 0 === b || ("number" == typeof b && b > 0 && b - 1 in a);
228  }
229  var t = (function (a) {
230      var b,
231          c,
232          d,
233          e,
234          f,
235          g,
236          h,
237          i,
238          j,
239          k,
240          l,
241          m,
242          n,
243          o,
244          p,
245          q,
246          r,
247          s,
248          t,
249          u = "sizzle" + 1 * new Date(),
250          v = a.document,
251          w = 0,
252          x = 0,
253          y = ga(),
254          z = ga(),
255          A = ga(),
256          B = function (a, b) {
257              return a === b && (l = !0), 0;
258          },
259          C = 1 << 31,
260          D = {}.hasOwnProperty,
261          E = [],
262          F = E.pop,
263          G = E.push,
264          H = E.push,
265          I = E.slice,
266          J = function (a, b) {
267              for (var c = 0, d = a.length; d > c; c++) if (a[c] === b) return c;
268              return -1;
269          },
270          K = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
271          L = "[\\x20\\t\\r\\n\\f]",
272          M = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
273          N = "\\[" + L + "*(" + M + ")(?:" + L + "*([*^$|!~]?=)" + L + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + M + "))|)" + L + "*\\]",
274          O = ":(" + M + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + N + ")*)|.*)\\)|)",
275          P = new RegExp(L + "+", "g"),
276          Q = new RegExp("^" + L + "+|((?:^|[^\\\\])(?:\\\\.)*)" + L + "+$", "g"),
277          R = new RegExp("^" + L + "*," + L + "*"),
278          S = new RegExp("^" + L + "*([>+~]|" + L + ")" + L + "*"),
279          T = new RegExp("=" + L + "*([^\\]'\"]*?)" + L + "*\\]", "g"),
280          U = new RegExp(O),
281          V = new RegExp("^" + M + "$"),
282          W = {
283              ID: new RegExp("^#(" + M + ")"),
284              CLASS: new RegExp("^\\.(" + M + ")"),
285              TAG: new RegExp("^(" + M + "|[*])"),
286              ATTR: new RegExp("^" + N),
287              PSEUDO: new RegExp("^" + O),
288              CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + L + "*(even|odd|(([+-]|)(\\d*)n|)" + L + "*(?:([+-]|)" + L + "*(\\d+)|))" + L + "*\\)|)", "i"),
289              bool: new RegExp("^(?:" + K + ")$", "i"),
290              needsContext: new RegExp("^" + L + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + L + "*((?:-\\d)?\\d*)" + L + "*\\)|)(?=[^-]|$)", "i"),
291          },
292          X = /^(?:input|select|textarea|button)$/i,
293          Y = /^h\d$/i,
294          Z = /^[^{]+\{\s*\[native \w/,
295          $ = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
296          _ = /[+~]/,
297          aa = /'|\\/g,
298          ba = new RegExp("\\\\([\\da-f]{1,6}" + L + "?|(" + L + ")|.)", "ig"),
299          ca = function (a, b, c) {
300              var d = "0x" + b - 65536;
301              return d !== d || c ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode((d >> 10) | 55296, (1023 & d) | 56320);
302          },
303          da = function () {
304              m();
305          };
306      try {
307          H.apply((E = I.call(v.childNodes)), v.childNodes), E[v.childNodes.length].nodeType;
308      } catch (ea) {
309          H = {
310              apply: E.length
311                  ? function (a, b) {
312                        G.apply(a, I.call(b));
313                    }
314                  : function (a, b) {
315                        var c = a.length,
316                            d = 0;
317                        while ((a[c++] = b[d++]));
318                        a.length = c - 1;
319                    },
320          };
321      }
322      function fa(a, b, d, e) {
323          var f,
324              h,
325              j,
326              k,
327              l,
328              o,
329              r,
330              s,
331              w = b && b.ownerDocument,
332              x = b ? b.nodeType : 9;
333          if (((d = d || []), "string" != typeof a || !a || (1 !== x && 9 !== x && 11 !== x))) return d;
334          if (!e && ((b ? b.ownerDocument || b : v) !== n && m(b), (b = b || n), p)) {
335              if (11 !== x && (o = $.exec(a)))
336                  if ((f = o[1])) {
337                      if (9 === x) {
338                          if (!(j = b.getElementById(f))) return d;
339                          if (j.id === f) return d.push(j), d;
340                      } else if (w && (j = w.getElementById(f)) && t(b, j) && j.id === f) return d.push(j), d;
341                  } else {
342                      if (o[2]) return H.apply(d, b.getElementsByTagName(a)), d;
343                      if ((f = o[3]) && c.getElementsByClassName && b.getElementsByClassName) return H.apply(d, b.getElementsByClassName(f)), d;
344                  }
345              if (c.qsa && !A[a + " "] && (!q || !q.test(a))) {
346                  if (1 !== x) (w = b), (s = a);
347                  else if ("object" !== b.nodeName.toLowerCase()) {
348                      (k = b.getAttribute("id")) ? (k = k.replace(aa, "\\$&")) : b.setAttribute("id", (k = u)), (r = g(a)), (h = r.length), (l = V.test(k) ? "#" + k : "[id='" + k + "']");
349                      while (h--) r[h] = l + " " + qa(r[h]);
350                      (s = r.join(",")), (w = (_.test(a) && oa(b.parentNode)) || b);
351                  }
352                  if (s)
353                      try {
354                          return H.apply(d, w.querySelectorAll(s)), d;
355                      } catch (y) {
356                      } finally {
357                          k === u && b.removeAttribute("id");
358                      }
359              }
360          }
361          return i(a.replace(Q, "$1"), b, d, e);
362      }
363      function ga() {
364          var a = [];
365          function b(c, e) {
366              return a.push(c + " ") > d.cacheLength && delete b[a.shift()], (b[c + " "] = e);
367          }
368          return b;
369      }
370      function ha(a) {
371          return (a[u] = !0), a;
372      }
373      function ia(a) {
374          var b = n.createElement("div");
375          try {
376              return !!a(b);
377          } catch (c) {
378              return !1;
379          } finally {
380              b.parentNode && b.parentNode.removeChild(b), (b = null);
381          }
382      }
383      function ja(a, b) {
384          var c = a.split("|"),
385              e = c.length;
386          while (e--) d.attrHandle[c[e]] = b;
387      }
388      function ka(a, b) {
389          var c = b && a,
390              d = c && 1 === a.nodeType && 1 === b.nodeType && (~b.sourceIndex || C) - (~a.sourceIndex || C);
391          if (d) return d;
392          if (c) while ((c = c.nextSibling)) if (c === b) return -1;
393          return a ? 1 : -1;
394      }
395      function la(a) {
396          return function (b) {
397              var c = b.nodeName.toLowerCase();
398              return "input" === c && b.type === a;
399          };
400      }
401      function ma(a) {
402          return function (b) {
403              var c = b.nodeName.toLowerCase();
404              return ("input" === c || "button" === c) && b.type === a;
405          };
406      }
407      function na(a) {
408          return ha(function (b) {
409              return (
410                  (b = +b),
411                  ha(function (c, d) {
412                      var e,
413                          f = a([], c.length, b),
414                          g = f.length;
415                      while (g--) c[(e = f[g])] && (c[e] = !(d[e] = c[e]));
416                  })
417              );
418          });
419      }
420      function oa(a) {
421          return a && "undefined" != typeof a.getElementsByTagName && a;
422      }
423      (c = fa.support = {}),
424          (f = fa.isXML = function (a) {
425              var b = a && (a.ownerDocument || a).documentElement;
426              return b ? "HTML" !== b.nodeName : !1;
427          }),
428          (m = fa.setDocument = function (a) {
429              var b,
430                  e,
431                  g = a ? a.ownerDocument || a : v;
432              return g !== n && 9 === g.nodeType && g.documentElement
433                  ? ((n = g),
434                    (o = n.documentElement),
435                    (p = !f(n)),
436                    (e = n.defaultView) && e.top !== e && (e.addEventListener ? e.addEventListener("unload", da, !1) : e.attachEvent && e.attachEvent("onunload", da)),
437                    (c.attributes = ia(function (a) {
438                        return (a.className = "i"), !a.getAttribute("className");
439                    })),
440                    (c.getElementsByTagName = ia(function (a) {
441                        return a.appendChild(n.createComment("")), !a.getElementsByTagName("*").length;
442                    })),
443                    (c.getElementsByClassName = Z.test(n.getElementsByClassName)),
444                    (c.getById = ia(function (a) {
445                        return (o.appendChild(a).id = u), !n.getElementsByName || !n.getElementsByName(u).length;
446                    })),
447                    c.getById
448                        ? ((d.find.ID = function (a, b) {
449                              if ("undefined" != typeof b.getElementById && p) {
450                                  var c = b.getElementById(a);
451                                  return c ? [c] : [];
452                              }
453                          }),
454                          (d.filter.ID = function (a) {
455                              var b = a.replace(ba, ca);
456                              return function (a) {
457                                  return a.getAttribute("id") === b;
458                              };
459                          }))
460                        : (delete d.find.ID,
461                          (d.filter.ID = function (a) {
462                              var b = a.replace(ba, ca);
463                              return function (a) {
464                                  var c = "undefined" != typeof a.getAttributeNode && a.getAttributeNode("id");
465                                  return c && c.value === b;
466                              };
467                          })),
468                    (d.find.TAG = c.getElementsByTagName
469                        ? function (a, b) {
470                              return "undefined" != typeof b.getElementsByTagName ? b.getElementsByTagName(a) : c.qsa ? b.querySelectorAll(a) : void 0;
471                          }
472                        : function (a, b) {
473                              var c,
474                                  d = [],
475                                  e = 0,
476                                  f = b.getElementsByTagName(a);
477                              if ("*" === a) {
478                                  while ((c = f[e++])) 1 === c.nodeType && d.push(c);
479                                  return d;
480                              }
481                              return f;
482                          }),
483                    (d.find.CLASS =
484                        c.getElementsByClassName &&
485                        function (a, b) {
486                            return "undefined" != typeof b.getElementsByClassName && p ? b.getElementsByClassName(a) : void 0;
487                        }),
488                    (r = []),
489                    (q = []),
490                    (c.qsa = Z.test(n.querySelectorAll)) &&
491                        (ia(function (a) {
492                            (o.appendChild(a).innerHTML = "<a id='" + u + "'></a><select id='" + u + "-\r\\' msallowcapture=''><option selected=''></option></select>"),
493                                a.querySelectorAll("[msallowcapture^='']").length && q.push("[*^$]=" + L + "*(?:''|\"\")"),
494                                a.querySelectorAll("[selected]").length || q.push("\\[" + L + "*(?:value|" + K + ")"),
495                                a.querySelectorAll("[id~=" + u + "-]").length || q.push("~="),
496                                a.querySelectorAll(":checked").length || q.push(":checked"),
497                                a.querySelectorAll("a#" + u + "+*").length || q.push(".#.+[+~]");
498                        }),
499                        ia(function (a) {
500                            var b = n.createElement("input");
501                            b.setAttribute("type", "hidden"),
502                                a.appendChild(b).setAttribute("name", "D"),
503                                a.querySelectorAll("[name=d]").length && q.push("name" + L + "*[*^$|!~]?="),
504                                a.querySelectorAll(":enabled").length || q.push(":enabled", ":disabled"),
505                                a.querySelectorAll("*,:x"),
506                                q.push(",.*:");
507                        })),
508                    (c.matchesSelector = Z.test((s = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.oMatchesSelector || o.msMatchesSelector))) &&
509                        ia(function (a) {
510                            (c.disconnectedMatch = s.call(a, "div")), s.call(a, "[s!='']:x"), r.push("!=", O);
511                        }),
512                    (q = q.length && new RegExp(q.join("|"))),
513                    (r = r.length && new RegExp(r.join("|"))),
514                    (b = Z.test(o.compareDocumentPosition)),
515                    (t =
516                        b || Z.test(o.contains)
517                            ? function (a, b) {
518                                  var c = 9 === a.nodeType ? a.documentElement : a,
519                                      d = b && b.parentNode;
520                                  return a === d || !(!d || 1 !== d.nodeType || !(c.contains ? c.contains(d) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d)));
521                              }
522                            : function (a, b) {
523                                  if (b) while ((b = b.parentNode)) if (b === a) return !0;
524                                  return !1;
525                              }),
526                    (B = b
527                        ? function (a, b) {
528                              if (a === b) return (l = !0), 0;
529                              var d = !a.compareDocumentPosition - !b.compareDocumentPosition;
530                              return d
531                                  ? d
532                                  : ((d = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1),
533                                    1 & d || (!c.sortDetached && b.compareDocumentPosition(a) === d)
534                                        ? a === n || (a.ownerDocument === v && t(v, a))
535                                            ? -1
536                                            : b === n || (b.ownerDocument === v && t(v, b))
537                                            ? 1
538                                            : k
539                                            ? J(k, a) - J(k, b)
540                                            : 0
541                                        : 4 & d
542                                        ? -1
543                                        : 1);
544                          }
545                        : function (a, b) {
546                              if (a === b) return (l = !0), 0;
547                              var c,
548                                  d = 0,
549                                  e = a.parentNode,
550                                  f = b.parentNode,
551                                  g = [a],
552                                  h = [b];
553                              if (!e || !f) return a === n ? -1 : b === n ? 1 : e ? -1 : f ? 1 : k ? J(k, a) - J(k, b) : 0;
554                              if (e === f) return ka(a, b);
555                              c = a;
556                              while ((c = c.parentNode)) g.unshift(c);
557                              c = b;
558                              while ((c = c.parentNode)) h.unshift(c);
559                              while (g[d] === h[d]) d++;
560                              return d ? ka(g[d], h[d]) : g[d] === v ? -1 : h[d] === v ? 1 : 0;
561                          }),
562                    n)
563                  : n;
564          }),
565          (fa.matches = function (a, b) {
566              return fa(a, null, null, b);
567          }),
568          (fa.matchesSelector = function (a, b) {
569              if (((a.ownerDocument || a) !== n && m(a), (b = b.replace(T, "='$1']")), c.matchesSelector && p && !A[b + " "] && (!r || !r.test(b)) && (!q || !q.test(b))))
570                  try {
571                      var d = s.call(a, b);
572                      if (d || c.disconnectedMatch || (a.document && 11 !== a.document.nodeType)) return d;
573                  } catch (e) {}
574              return fa(b, n, null, [a]).length > 0;
575          }),
576          (fa.contains = function (a, b) {
577              return (a.ownerDocument || a) !== n && m(a), t(a, b);
578          }),
579          (fa.attr = function (a, b) {
580              (a.ownerDocument || a) !== n && m(a);
581              var e = d.attrHandle[b.toLowerCase()],
582                  f = e && D.call(d.attrHandle, b.toLowerCase()) ? e(a, b, !p) : void 0;
583              return void 0 !== f ? f : c.attributes || !p ? a.getAttribute(b) : (f = a.getAttributeNode(b)) && f.specified ? f.value : null;
584          }),
585          (fa.error = function (a) {
586              throw new Error("Syntax error, unrecognized expression: " + a);
587          }),
588          (fa.uniqueSort = function (a) {
589              var b,
590                  d = [],
591                  e = 0,
592                  f = 0;
593              if (((l = !c.detectDuplicates), (k = !c.sortStable && a.slice(0)), a.sort(B), l)) {
594                  while ((b = a[f++])) b === a[f] && (e = d.push(f));
595                  while (e--) a.splice(d[e], 1);
596              }
597              return (k = null), a;
598          }),
599          (e = fa.getText = function (a) {
600              var b,
601                  c = "",
602                  d = 0,
603                  f = a.nodeType;
604              if (f) {
605                  if (1 === f || 9 === f || 11 === f) {
606                      if ("string" == typeof a.textContent) return a.textContent;
607                      for (a = a.firstChild; a; a = a.nextSibling) c += e(a);
608                  } else if (3 === f || 4 === f) return a.nodeValue;
609              } else while ((b = a[d++])) c += e(b);
610              return c;
611          }),
612          (d = fa.selectors = {
613              cacheLength: 50,
614              createPseudo: ha,
615              match: W,
616              attrHandle: {},
617              find: {},
618              relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } },
619              preFilter: {
620                  ATTR: function (a) {
621                      return (a[1] = a[1].replace(ba, ca)), (a[3] = (a[3] || a[4] || a[5] || "").replace(ba, ca)), "~=" === a[2] && (a[3] = " " + a[3] + " "), a.slice(0, 4);
622                  },
623                  CHILD: function (a) {
624                      return (
625                          (a[1] = a[1].toLowerCase()),
626                          "nth" === a[1].slice(0, 3) ? (a[3] || fa.error(a[0]), (a[4] = +(a[4] ? a[5] + (a[6] || 1) : 2 * ("even" === a[3] || "odd" === a[3]))), (a[5] = +(a[7] + a[8] || "odd" === a[3]))) : a[3] && fa.error(a[0]),
627                          a
628                      );
629                  },
630                  PSEUDO: function (a) {
631                      var b,
632                          c = !a[6] && a[2];
633                      return W.CHILD.test(a[0])
634                          ? null
635                          : (a[3] ? (a[2] = a[4] || a[5] || "") : c && U.test(c) && (b = g(c, !0)) && (b = c.indexOf(")", c.length - b) - c.length) && ((a[0] = a[0].slice(0, b)), (a[2] = c.slice(0, b))), a.slice(0, 3));
636                  },
637              },
638              filter: {
639                  TAG: function (a) {
640                      var b = a.replace(ba, ca).toLowerCase();
641                      return "*" === a
642                          ? function () {
643                                return !0;
644                            }
645                          : function (a) {
646                                return a.nodeName && a.nodeName.toLowerCase() === b;
647                            };
648                  },
649                  CLASS: function (a) {
650                      var b = y[a + " "];
651                      return (
652                          b ||
653                          ((b = new RegExp("(^|" + L + ")" + a + "(" + L + "|$)")) &&
654                              y(a, function (a) {
655                                  return b.test(("string" == typeof a.className && a.className) || ("undefined" != typeof a.getAttribute && a.getAttribute("class")) || "");
656                              }))
657                      );
658                  },
659                  ATTR: function (a, b, c) {
660                      return function (d) {
661                          var e = fa.attr(d, a);
662                          return null == e
663                              ? "!=" === b
664                              : b
665                              ? ((e += ""),
666                                "=" === b
667                                    ? e === c
668                                    : "!=" === b
669                                    ? e !== c
670                                    : "^=" === b
671                                    ? c && 0 === e.indexOf(c)
672                                    : "*=" === b
673                                    ? c && e.indexOf(c) > -1
674                                    : "$=" === b
675                                    ? c && e.slice(-c.length) === c
676                                    : "~=" === b
677                                    ? (" " + e.replace(P, " ") + " ").indexOf(c) > -1
678                                    : "|=" === b
679                                    ? e === c || e.slice(0, c.length + 1) === c + "-"
680                                    : !1)
681                              : !0;
682                      };
683                  },
684                  CHILD: function (a, b, c, d, e) {
685                      var f = "nth" !== a.slice(0, 3),
686                          g = "last" !== a.slice(-4),
687                          h = "of-type" === b;
688                      return 1 === d && 0 === e
689                          ? function (a) {
690                                return !!a.parentNode;
691                            }
692                          : function (b, c, i) {
693                                var j,
694                                    k,
695                                    l,
696                                    m,
697                                    n,
698                                    o,
699                                    p = f !== g ? "nextSibling" : "previousSibling",
700                                    q = b.parentNode,
701                                    r = h && b.nodeName.toLowerCase(),
702                                    s = !i && !h,
703                                    t = !1;
704                                if (q) {
705                                    if (f) {
706                                        while (p) {
707                                            m = b;
708                                            while ((m = m[p])) if (h ? m.nodeName.toLowerCase() === r : 1 === m.nodeType) return !1;
709                                            o = p = "only" === a && !o && "nextSibling";
710                                        }
711                                        return !0;
712                                    }
713                                    if (((o = [g ? q.firstChild : q.lastChild]), g && s)
713) {
714                                        (m = q), (l = m[u] || (m[u] = {})), (k = l[m.uniqueID] || (l[m.uniqueID] = {})), (j = k[a] || []), (n = j[0] === w && j[1]), (t = n && j[2]), (m = n && q.childNodes[n]);
715                                        while ((m = (++n && m && m[p]) || (t = n = 0) || o.pop()))
716                                            if (1 === m.nodeType && ++t && m === b) {
717                                                k[a] = [w, n, t];
718                                                break;
719                                            }
720                                    } else if ((s && ((m = b), (l = m[u] || (m[u] = {})), (k = l[m.uniqueID] || (l[m.uniqueID] = {})), (j = k[a] || []), (n = j[0] === w && j[1]), (t = n)), t === !1))
721                                        while ((m = (++n && m && m[p]) || (t = n = 0) || o.pop()))
722                                            if ((h ? m.nodeName.toLowerCase() === r : 1 === m.nodeType) && ++t && (s && ((l = m[u] || (m[u] = {})), (k = l[m.uniqueID] || (l[m.uniqueID] = {})), (k[a] = [w, t])), m === b)) break;
723                                    return (t -= e), t === d || (t % d === 0 && t / d >= 0);
724                                }
725                            };
726                  },
727                  PSEUDO: function (a, b) {
728                      var c,
729                          e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || fa.error("unsupported pseudo: " + a);
730                      return e[u]
731                          ? e(b)
732                          : e.length > 1
733                          ? ((c = [a, a, "", b]),
734                            d.setFilters.hasOwnProperty(a.toLowerCase())
735                                ? ha(function (a, c) {
736                                      var d,
737                                          f = e(a, b),
738                                          g = f.length;
739                                      while (g--) (d = J(a, f[g])), (a[d] = !(c[d] = f[g]));
740                                  })
741                                : function (a) {
742                                      return e(a, 0, c);
743                                  })
744                          : e;
745                  },
746              },
747              pseudos: {
748                  not: ha(function (a) {
749                      var b = [],
750                          c = [],
751                          d = h(a.replace(Q, "$1"));
752                      return d[u]
753                          ? ha(function (a, b, c, e) {
754                                var f,
755                                    g = d(a, null, e, []),
756                                    h = a.length;
757                                while (h--) (f = g[h]) && (a[h] = !(b[h] = f));
758                            })
759                          : function (a, e, f) {
760                                return (b[0] = a), d(b, null, f, c), (b[0] = null), !c.pop();
761                            };
762                  }),
763                  has: ha(function (a) {
764                      return function (b) {
765                          return fa(a, b).length > 0;
766                      };
767                  }),
768                  contains: ha(function (a) {
769                      return (
770                          (a = a.replace(ba, ca)),
771                          function (b) {
772                              return (b.textContent || b.innerText || e(b)).indexOf(a) > -1;
773                          }
774                      );
775                  }),
776                  lang: ha(function (a) {
777                      return (
778                          V.test(a || "") || fa.error("unsupported lang: " + a),
779                          (a = a.replace(ba, ca).toLowerCase()),
780                          function (b) {
781                              var c;
782                              do if ((c = p ? b.lang : b.getAttribute("xml:lang") || b.getAttribute("lang"))) return (c = c.toLowerCase()), c === a || 0 === c.indexOf(a + "-");
783                              while ((b = b.parentNode) && 1 === b.nodeType);
784                              return !1;
785                          }
786                      );
787                  }),
788                  target: function (b) {
789                      var c = a.location && a.location.hash;
790                      return c && c.slice(1) === b.id;
791                  },
792                  root: function (a) {
793                      return a === o;
794                  },
795                  focus: function (a) {
796                      return a === n.activeElement && (!n.hasFocus || n.hasFocus()) && !!(a.type || a.href || ~a.tabIndex);
797                  },
798                  enabled: function (a) {
799                      return a.disabled === !1;
800                  },
801                  disabled: function (a) {
802                      return a.disabled === !0;
803                  },
804                  checked: function (a) {
805                      var b = a.nodeName.toLowerCase();
806                      return ("input" === b && !!a.checked) || ("option" === b && !!a.selected);
807                  },
808                  selected: function (a) {
809                      return a.parentNode && a.parentNode.selectedIndex, a.selected === !0;
810                  },
811                  empty: function (a) {
812                      for (a = a.firstChild; a; a = a.nextSibling) if (a.nodeType < 6) return !1;
813                      return !0;
814                  },
815                  parent: function (a) {
816                      return !d.pseudos.empty(a);
817                  },
818                  header: function (a) {
819                      return Y.test(a.nodeName);
820                  },
821                  input: function (a) {
822                      return X.test(a.nodeName);
823                  },
824                  button: function (a) {
825                      var b = a.nodeName.toLowerCase();
826                      return ("input" === b && "button" === a.type) || "button" === b;
827                  },
828                  text: function (a) {
829                      var b;
830                      return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase());
831                  },
832                  first: na(function () {
833                      return [0];
834                  }),
835                  last: na(function (a, b) {
836                      return [b - 1];
837                  }),
838                  eq: na(function (a, b, c) {
839                      return [0 > c ? c + b : c];
840                  }),
841                  even: na(function (a, b) {
842                      for (var c = 0; b > c; c += 2) a.push(c);
843                      return a;
844                  }),
845                  odd: na(function (a, b) {
846                      for (var c = 1; b > c; c += 2) a.push(c);
847                      return a;
848                  }),
849                  lt: na(function (a, b, c) {
850                      for (var d = 0 > c ? c + b : c; --d >= 0; ) a.push(d);
851                      return a;
852                  }),
853                  gt: na(function (a, b, c) {
854                      for (var d = 0 > c ? c + b : c; ++d < b; ) a.push(d);
855                      return a;
856                  }),
857              },
858          }),
859          (d.pseudos.nth = d.pseudos.eq);
860      for (b in { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) d.pseudos[b] = la(b);
861      for (b in { submit: !0, reset: !0 }) d.pseudos[b] = ma(b);
862      function pa() {}
863      (pa.prototype = d.filters = d.pseudos),
864          (d.setFilters = new pa()),
865          (g = fa.tokenize = function (a, b) {
866              var c,
867                  e,
868                  f,
869                  g,
870                  h,
871                  i,
872                  j,
873                  k = z[a + " "];
874              if (k) return b ? 0 : k.slice(0);
875              (h = a), (i = []), (j = d.preFilter);
876              while (h) {
877                  (c && !(e = R.exec(h))) || (e && (h = h.slice(e[0].length) || h), i.push((f = []))), (c = !1), (e = S.exec(h)) && ((c = e.shift()), f.push({ value: c, type: e[0].replace(Q, " ") }), (h = h.slice(c.length)));
878                  for (g in d.filter) !(e = W[g].exec(h)) || (j[g] && !(e = j[g](e))) || ((c = e.shift()), f.push({ value: c, type: g, matches: e }), (h = h.slice(c.length)));
879                  if (!c) break;
880              }
881              return b ? h.length : h ? fa.error(a) : z(a, i).slice(0);
882          });
883      function qa(a) {
884          for (var b = 0, c = a.length, d = ""; c > b; b++) d += a[b].value;
885          return d;
886      }
887      function ra(a, b, c) {
888          var d = b.dir,
889              e = c && "parentNode" === d,
890              f = x++;
891          return b.first
892              ? function (b, c, f) {
893                    while ((b = b[d])) if (1 === b.nodeType || e) return a(b, c, f);
894                }
895              : function (b, c, g) {
896                    var h,
897                        i,
898                        j,
899                        k = [w, f];
900                    if (g) {
901                        while ((b = b[d])) if ((1 === b.nodeType || e) && a(b, c, g)) return !0;
902                    } else
903                        while ((b = b[d]))
904                            if (1 === b.nodeType || e) {
905                                if (((j = b[u] || (b[u] = {})), (i = j[b.uniqueID] || (j[b.uniqueID] = {})), (h = i[d]) && h[0] === w && h[1] === f)) return (k[2] = h[2]);
906                                if (((i[d] = k), (k[2] = a(b, c, g)))) return !0;
907                            }
908                };
909      }
910      function sa(a) {
911          return a.length > 1
912              ? function (b, c, d) {
913                    var e = a.length;
914                    while (e--) if (!a[e](b, c, d)) return !1;
915                    return !0;
916                }
917              : a[0];
918      }
919      function ta(a, b, c) {
920          for (var d = 0, e = b.length; e > d; d++) fa(a, b[d], c);
921          return c;
922      }
923      function ua(a, b, c, d, e) {
924          for (var f, g = [], h = 0, i = a.length, j = null != b; i > h; h++) (f = a[h]) && ((c && !c(f, d, e)) || (g.push(f), j && b.push(h)));
925          return g;
926      }
927      function va(a, b, c, d, e, f) {
928          return (
929              d && !d[u] && (d = va(d)),
930              e && !e[u] && (e = va(e, f)),
931              ha(function (f, g, h, i) {
932                  var j,
933                      k,
934                      l,
935                      m = [],
936                      n = [],
937                      o = g.length,
938                      p = f || ta(b || "*", h.nodeType ? [h] : h, []),
939                      q = !a || (!f && b) ? p : ua(p, m, a, h, i),
940                      r = c ? (e || (f ? a : o || d) ? [] : g) : q;
941                  if ((c && c(q, r, h, i), d)) {
942                      (j = ua(r, n)), d(j, [], h, i), (k = j.length);
943                      while (k--) (l = j[k]) && (r[n[k]] = !(q[n[k]] = l));
944                  }
945                  if (f) {
946                      if (e || a) {
947                          if (e) {
948                              (j = []), (k = r.length);
949                              while (k--) (l = r[k]) && j.push((q[k] = l));
950                              e(null, (r = []), j, i);
951                          }
952                          k = r.length;
953                          while (k--) (l = r[k]) && (j = e ? J(f, l) : m[k]) > -1 && (f[j] = !(g[j] = l));
954                      }
955                  } else (r = ua(r === g ? r.splice(o, r.length) : r)), e ? e(null, g, r, i) : H.apply(g, r);
956              })
957          );
958      }
959      function wa(a) {
960          for (
961              var b,
962                  c,
963                  e,
964                  f = a.length,
965                  g = d.relative[a[0].type],
966                  h = g || d.relative[" "],
967                  i = g ? 1 : 0,
968                  k = ra(
969                      function (a) {
970                          return a === b;
971                      },
972                      h,
973                      !0
974                  ),
975                  l = ra(
976                      function (a) {
977                          return J(b, a) > -1;
978                      },
979                      h,
980                      !0
981                  ),
982                  m = [
983                      function (a, c, d) {
984                          var e = (!g && (d || c !== j)) || ((b = c).nodeType ? k(a, c, d) : l(a, c, d));
985                          return (b = null), e;
986                      },
987                  ];
988              f > i;
989              i++
990          )
991              if ((c = d.relative[a[i].type])) m = [ra(sa(m), c)];
992              else {
993                  if (((c = d.filter[a[i].type].apply(null, a[i].matches)), c[u])) {
994                      for (e = ++i; f > e; e++) if (d.relative[a[e].type]) break;
995                      return va(i > 1 && sa(m), i > 1 && qa(a.slice(0, i - 1).concat({ value: " " === a[i - 2].type ? "*" : "" })).replace(Q, "$1"), c, e > i && wa(a.slice(i, e)), f > e && wa((a = a.slice(e))), f > e && qa(a));
996                  }
997                  m.push(c);
998              }
999          return sa(m);
1000      }
1001      function xa(a, b) {
1002          var c = b.length > 0,
1003              e = a.length > 0,
1004              f = function (f, g, h, i, k) {
1005                  var l,
1006                      o,
1007                      q,
1008                      r = 0,
1009                      s = "0",
1010                      t = f && [],
1011                      u = [],
1012                      v = j,
1013                      x = f || (e && d.find.TAG("*", k)),
1014                      y = (w += null == v ? 1 : Math.random() || 0.1),
1015                      z = x.length;
1016                  for (k && (j = g === n || g || k); s !== z && null != (l = x[s]); s++) {
1017                      if (e && l) {
1018                          (o = 0), g || l.ownerDocument === n || (m(l), (h = !p));
1019                          while ((q = a[o++]))
1020                              if (q(l, g || n, h)) {
1021                                  i.push(l);
1022                                  break;
1023                              }
1024                          k && (w = y);
1025                      }
1026                      c && ((l = !q && l) && r--, f && t.push(l));
1027                  }
1028                  if (((r += s), c && s !== r)) {
1029                      o = 0;
1030                      while ((q = b[o++])) q(t, u, g, h);
1031                      if (f) {
1032                          if (r > 0) while (s--) t[s] || u[s] || (u[s] = F.call(i));
1033                          u = ua(u);
1034                      }
1035                      H.apply(i, u), k && !f && u.length > 0 && r + b.length > 1 && fa.uniqueSort(i);
1036                  }
1037                  return k && ((w = y), (j = v)), t;
1038              };
1039          return c ? ha(f) : f;
1040      }
1041      return (
1042          (h = fa.compile = function (a, b) {
1043              var c,
1044                  d = [],
1045                  e = [],
1046                  f = A[a + " "];
1047              if (!f) {
1048                  b || (b = g(a)), (c = b.length);
1049                  while (c--) (f = wa(b[c])), f[u] ? d.push(f) : e.push(f);
1050                  (f = A(a, xa(e, d))), (f.selector = a);
1051              }
1052              return f;
1053          }),
1054          (i = fa.select = function (a, b, e, f) {
1055              var i,
1056                  j,
1057                  k,
1058                  l,
1059                  m,
1060                  n = "function" == typeof a && a,
1061                  o = !f && g((a = n.selector || a));
1062              if (((e = e || []), 1 === o.length)) {
1063                  if (((j = o[0] = o[0].slice(0)), j.length > 2 && "ID" === (k = j[0]).type && c.getById && 9 === b.nodeType && p && d.relative[j[1].type])) {
1064                      if (((b = (d.find.ID(k.matches[0].replace(ba, ca), b) || [])[0]), !b)) return e;
1065                      n && (b = b.parentNode), (a = a.slice(j.shift().value.length));
1066                  }
1067                  i = W.needsContext.test(a) ? 0 : j.length;
1068                  while (i--) {
1069                      if (((k = j[i]), d.relative[(l = k.type)])) break;
1070                      if ((m = d.find[l]) && (f = m(k.matches[0].replace(ba, ca), (_.test(j[0].type) && oa(b.parentNode)) || b))) {
1071                          if ((j.splice(i, 1), (a = f.length && qa(j)), !a)) return H.apply(e, f), e;
1072                          break;
1073                      }
1074                  }
1075              }
1076              return (n || h(a, o))(f, b, !p, e, !b || (_.test(a) && oa(b.parentNode)) || b), e;
1077          }),
1078          (c.sortStable = u.split("").sort(B).join("") === u),
1079          (c.detectDuplicates = !!l),
1080          m(),
1081          (c.sortDetached = ia(function (a) {
1082              return 1 & a.compareDocumentPosition(n.createElement("div"));
1083          })),
1084          ia(function (a) {
1085              return (a.innerHTML = "<a href='#'></a>"), "#" === a.firstChild.getAttribute("href");
1086          }) ||
1087              ja("type|href|height|width", function (a, b, c) {
1088                  return c ? void 0 : a.getAttribute(b, "type" === b.toLowerCase() ? 1 : 2);
1089              }),
1090          (c.attributes &&
1091              ia(function (a) {
1092                  return (a.innerHTML = "<input/>"), a.firstChild.setAttribute("value", ""), "" === a.firstChild.getAttribute("value");
1093              })) ||
1094              ja("value", function (a, b, c) {
1095                  return c || "input" !== a.nodeName.toLowerCase() ? void 0 : a.defaultValue;
1096              }),
1097          ia(function (a) {
1098              return null == a.getAttribute("disabled");
1099          }) ||
1100              ja(K, function (a, b, c) {
1101                  var d;
1102                  return c ? void 0 : a[b] === !0 ? b.toLowerCase() : (d = a.getAttributeNode(b)) && d.specified ? d.value : null;
1103              }),
1104          fa
1105      );
1106  })(a);
1107  (n.find = t), (n.expr = t.selectors), (n.expr[":"] = n.expr.pseudos), (n.uniqueSort = n.unique = t.uniqueSort), (n.text = t.getText), (n.isXMLDoc = t.isXML), (n.contains = t.contains);
1108  var u = function (a, b, c) {
1109          var d = [],
1110              e = void 0 !== c;
1111          while ((a = a[b]) && 9 !== a.nodeType)
1112              if (1 === a.nodeType) {
1113                  if (e && n(a).is(c)) break;
1114                  d.push(a);
1115              }
1116          return d;
1117      },
1118      v = function (a, b) {
1119          for (var c = []; a; a = a.nextSibling) 1 === a.nodeType && a !== b && c.push(a);
1120          return c;
1121      },
1122      w = n.expr.match.needsContext,
1123      x = /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,
1124      y = /^.[^:#\[\.,]*$/;
1125  function z(a, b, c) {
1126      if (n.isFunction(b))
1127          return n.grep(a, function (a, d) {
1128              return !!b.call(a, d, a) !== c;
1129          });
1130      if (b.nodeType)
1131          return n.grep(a, function (a) {
1132              return (a === b) !== c;
1133          });
1134      if ("string" == typeof b) {
1135          if (y.test(b)) return n.filter(b, a, c);
1136          b = n.filter(b, a);
1137      }
1138      return n.grep(a, function (a) {
1139          return n.inArray(a, b) > -1 !== c;
1140      });
1141  }
1142  (n.filter = function (a, b, c) {
1143      var d = b[0];
1144      return (
1145          c && (a = ":not(" + a + ")"),
1146          1 === b.length && 1 === d.nodeType
1147              ? n.find.matchesSelector(d, a)
1148                  ? [d]
1149                  : []
1150              : n.find.matches(
1151                    a,
1152                    n.grep(b, function (a) {
1153                        return 1 === a.nodeType;
1154                    })
1155                )
1156      );
1157  }),
1158      n.fn.extend({
1159          find: function (a) {
1160              var b,
1161                  c = [],
1162                  d = this,
1163                  e = d.length;
1164              if ("string" != typeof a)
1165                  return this.pushStack(
1166                      n(a).filter(function () {
1167                          for (b = 0; e > b; b++) if (n.contains(d[b], this)) return !0;
1168                      })
1169                  );
1170              for (b = 0; e > b; b++) n.find(a, d[b], c);
1171              return (c = this.pushStack(e > 1 ? n.unique(c) : c)), (c.selector = this.selector ? this.selector + " " + a : a), c;
1172          },
1173          filter: function (a) {
1174              return this.pushStack(z(this, a || [], !1));
1175          },
1176          not: function (a) {
1177              return this.pushStack(z(this, a || [], !0));
1178          },
1179          is: function (a) {
1180              return !!z(this, "string" == typeof a && w.test(a) ? n(a) : a || [], !1).length;
1181          },
1182      });
1183  var A,
1184      B = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
1185      C = (n.fn.init = function (a, b, c) {
1186          var e, f;
1187          if (!a) return this;
1188          if (((c = c || A), "string" == typeof a)) {
1189              if (((e = "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && a.length >= 3 ? [null, a, null] : B.exec(a)), !e || (!e[1] && b))) return !b || b.jquery ? (b || c).find(a) : this.constructor(b).find(a);
1190              if (e[1]) {
1191                  if (((b = b instanceof n ? b[0] : b), n.merge(this, n.parseHTML(e[1], b && b.nodeType ? b.ownerDocument || b : d, !0)), x.test(e[1]) && n.isPlainObject(b)))
1192                      for (e in b) n.isFunction(this[e]) ? this[e](b[e]) : this.attr(e, b[e]);
1193                  return this;
1194              }
1195              if (((f = d.getElementById(e[2])), f && f.parentNode)) {
1196                  if (f.id !== e[2]) return A.find(a);
1197                  (this.length = 1), (this[0] = f);
1198              }
1199              return (this.context = d), (this.selector = a), this;
1200          }
1201          return a.nodeType
1202              ? ((this.context = this[0] = a), (this.length = 1), this)
1203              : n.isFunction(a)
1204              ? "undefined" != typeof c.ready
1205                  ? c.ready(a)
1206                  : a(n)
1207              : (void 0 !== a.selector && ((this.selector = a.selector), (this.context = a.context)), n.makeArray(a, this));
1208      });
1209  (C.prototype = n.fn), (A = n(d));
1210  var D = /^(?:parents|prev(?:Until|All))/,
1211      E = { children: !0, contents: !0, next: !0, prev: !0 };
1212  n.fn.extend({
1213      has: function (a) {
1214          var b,
1215              c = n(a, this),
1216              d = c.length;
1217          return this.filter(function () {
1218              for (b = 0; d > b; b++) if (n.contains(this, c[b])) return !0;
1219          });
1220      },
1221      closest: function (a, b) {
1222          for (var c, d = 0, e = this.length, f = [], g = w.test(a) || "string" != typeof a ? n(a, b || this.context) : 0; e > d; d++)
1223              for (c = this[d]; c && c !== b; c = c.parentNode)
1224                  if (c.nodeType < 11 && (g ? g.index(c) > -1 : 1 === c.nodeType && n.find.matchesSelector(c, a))) {
1225                      f.push(c);
1226                      break;
1227                  }
1228          return this.pushStack(f.length > 1 ? n.uniqueSort(f) : f);
1229      },
1230      index: function (a) {
1231          return a ? ("string" == typeof a ? n.inArray(this[0], n(a)) : n.inArray(a.jquery ? a[0] : a, this)) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1;
1232      },
1233      add: function (a, b) {
1234          return this.pushStack(n.uniqueSort(n.merge(this.get(), n(a, b))));
1235      },
1236      addBack: function (a) {
1237          return this.add(null == a ? this.prevObject : this.prevObject.filter(a));
1238      },
1239  });
1240  function F(a, b) {
1241      do a = a[b];
1242      while (a && 1 !== a.nodeType);
1243      return a;
1244  }
1245  n.each(
1246      {
1247          parent: function (a) {
1248              var b = a.parentNode;
1249              return b && 11 !== b.nodeType ? b : null;
1250          },
1251          parents: function (a) {
1252              return u(a, "parentNode");
1253          },
1254          parentsUntil: function (a, b, c) {
1255              return u(a, "parentNode", c);
1256          },
1257          next: function (a) {
1258              return F(a, "nextSibling");
1259          },
1260          prev: function (a) {
1261              return F(a, "previousSibling");
1262          },
1263          nextAll: function (a) {
1264              return u(a, "nextSibling");
1265          },
1266          prevAll: function (a) {
1267              return u(a, "previousSibling");
1268          },
1269          nextUntil: function (a, b, c) {
1270              return u(a, "nextSibling", c);
1271          },
1272          prevUntil: function (a, b, c) {
1273              return u(a, "previousSibling", c);
1274          },
1275          siblings: function (a) {
1276              return v((a.parentNode || {}).firstChild, a);
1277          },
1278          children: function (a) {
1279              return v(a.firstChild);
1280          },
1281          contents: function (a) {
1282              return n.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : n.merge([], a.childNodes);
1283          },
1284      },
1285      function (a, b) {
1286          n.fn[a] = function (c, d) {
1287              var e = n.map(this, b, c);
1288              return "Until" !== a.slice(-5) && (d = c), d && "string" == typeof d && (e = n.filter(d, e)), this.length > 1 && (E[a] || (e = n.uniqueSort(e)), D.test(a) && (e = e.reverse())), this.pushStack(e);
1289          };
1290      }
1291  );
1292  var G = /\S+/g;
1293  function H(a) {
1294      var b = {};
1295      return (
1296          n.each(a.match(G) || [], function (a, c) {
1297              b[c] = !0;
1298          }),
1299          b
1300      );
1301  }
1302  (n.Callbacks = function (a) {
1303      a = "string" == typeof a ? H(a) : n.extend({}, a);
1304      var b,
1305          c,
1306          d,
1307          e,
1308          f = [],
1309          g = [],
1310          h = -1,
1311          i = function () {
1312              for (e = a.once, d = b = !0; g.length; h = -1) {
1313                  c = g.shift();
1314                  while (++h < f.length) f[h].apply(c[0], c[1]) === !1 && a.stopOnFalse && ((h = f.length), (c = !1));
1315              }
1316              a.memory || (c = !1), (b = !1), e && (f = c ? [] : "");
1317          },
1318          j = {
1319              add: function () {
1320                  return (
1321                      f &&
1322                          (c && !b && ((h = f.length - 1), g.push(c)),
1323                          (function d(b) {
1324                              n.each(b, function (b, c) {
1325                                  n.isFunction(c) ? (a.unique && j.has(c)) || f.push(c) : c && c.length && "string" !== n.type(c) && d(c);
1326                              });
1327                          })(arguments),
1328                          c && !b && i()),
1329                      this
1330                  );
1331              },
1332              remove: function () {
1333                  return (
1334                      n.each(arguments, function (a, b) {
1335                          var c;
1336                          while ((c = n.inArray(b, f, c)) > -1) f.splice(c, 1), h >= c && h--;
1337                      }),
1338                      this
1339                  );
1340              },
1341              has: function (a) {
1342                  return a ? n.inArray(a, f) > -1 : f.length > 0;
1343              },
1344              empty: function () {
1345                  return f && (f = []), this;
1346              },
1347              disable: function () {
1348                  return (e = g = []), (f = c = ""), this;
1349              },
1350              disabled: function () {
1351                  return !f;
1352              },
1353              lock: function () {
1354                  return (e = !0), c || j.disable(), this;
1355              },
1356              locked: function () {
1357                  return !!e;
1358              },
1359              fireWith: function (a, c) {
1360                  return e || ((c = c || []), (c = [a, c.slice ? c.slice() : c]), g.push(c), b || i()), this;
1361              },
1362              fire: function () {
1363                  return j.fireWith(this, arguments), this;
1364              },
1365              fired: function () {
1366                  return !!d;
1367              },
1368          };
1369      return j;
1370  }),
1371      n.extend({
1372          Deferred: function (a) {
1373              var b = [
1374                      ["resolve", "done", n.Callbacks("once memory"), "resolved"],
1375                      ["reject", "fail", n.Callbacks("once memory"), "rejected"],
1376                      ["notify", "progress", n.Callbacks("memory")],
1377                  ],
1378                  c = "pending",
1379                  d = {
1380                      state: function () {
1381                          return c;
1382                      },
1383                      always: function () {
1384                          return e.done(arguments).fail(arguments), this;
1385                      },
1386                      then: function () {
1387                          var a = arguments;
1388                          return n
1389                              .Deferred(function (c) {
1390                                  n.each(b, function (b, f) {
1391                                      var g = n.isFunction(a[b]) && a[b];
1392                                      e[f[1]](function () {
1393                                          var a = g && g.apply(this, arguments);
1394                                          a && n.isFunction(a.promise) ? a.promise().progress(c.notify).done(c.resolve).fail(c.reject) : c[f[0] + "With"](this === d ? c.promise() : this, g ? [a] : arguments);
1395                                      });
1396                                  }),
1397                                      (a = null);
1398                              })
1399                              .promise();
1400                      },
1401                      promise: function (a) {
1402                          return null != a ? n.extend(a, d) : d;
1403                      },
1404                  },
1405                  e = {};
1406              return (
1407                  (d.pipe = d.then),
1408                  n.each(b, function (a, f) {
1409                      var g = f[2],
1410                          h = f[3];
1411                      (d[f[1]] = g.add),
1412                          h &&
1413                              g.add(
1414                                  function () {
1415                                      c = h;
1416                                  },
1417                                  b[1 ^ a][2].disable,
1418                                  b[2][2].lock
1419                              ),
1420                          (e[f[0]] = function () {
1421                              return e[f[0] + "With"](this === e ? d : this, arguments), this;
1422                          }),
1423                          (e[f[0] + "With"] = g.fireWith);
1424                  }),
1425                  d.promise(e),
1426                  a && a.call(e, e),
1427                  e
1428              );
1429          },
1430          when: function (a) {
1431              var b = 0,
1432                  c = e.call(arguments),
1433                  d = c.length,
1434                  f = 1 !== d || (a && n.isFunction(a.promise)) ? d : 0,
1435                  g = 1 === f ? a : n.Deferred(),
1436                  h = function (a, b, c) {
1437                      return function (d) {
1438                          (b[a] = this), (c[a] = arguments.length > 1 ? e.call(arguments) : d), c === i ? g.notifyWith(b, c) : --f || g.resolveWith(b, c);
1439                      };
1440                  },
1441                  i,
1442                  j,
1443                  k;
1444              if (d > 1) for (i = new Array(d), j = new Array(d), k = new Array(d); d > b; b++) c[b] && n.isFunction(c[b].promise) ? c[b].promise().progress(h(b, j, i)).done(h(b, k, c)).fail(g.reject) : --f;
1445              return f || g.resolveWith(k, c), g.promise();
1446          },
1447      });
1448  var I;
1449  (n.fn.ready = function (a) {
1450      return n.ready.promise().done(a), this;
1451  }),
1452      n.extend({
1453          isReady: !1,
1454          readyWait: 1,
1455          holdReady: function (a) {
1456              a ? n.readyWait++ : n.ready(!0);
1457          },
1458          ready: function (a) {
1459              (a === !0 ? --n.readyWait : n.isReady) || ((n.isReady = !0), (a !== !0 && --n.readyWait > 0) || (I.resolveWith(d, [n]), n.fn.triggerHandler && (n(d).triggerHandler("ready"), n(d).off("ready"))));
1460          },
1461      });
1462  function J() {
1463      d.addEventListener ? (d.removeEventListener("DOMContentLoaded", K), a.removeEventListener("load", K)) : (d.detachEvent("onreadystatechange", K), a.detachEvent("onload", K));
1464  }
1465  function K() {
1466      (d.addEventListener || "load" === a.event.type || "complete" === d.readyState) && (J(), n.ready());
1467  }
1468  (n.ready.promise = function (b) {
1469      if (!I)
1470          if (((I = n.Deferred()), "complete" === d.readyState || ("loading" !== d.readyState && !d.documentElement.doScroll))) a.setTimeout(n.ready);
1471          else if (d.addEventListener) d.addEventListener("DOMContentLoaded", K), a.addEventListener("load", K);
1472          else {
1473              d.attachEvent("onreadystatechange", K), a.attachEvent("onload", K);
1474              var c = !1;
1475              try {
1476                  c = null == a.frameElement && d.documentElement;
1477              } catch (e) {}
1478              c &&
1479                  c.doScroll &&
1480                  !(function f() {
1481                      if (!n.isReady) {
1482                          try {
1483                              c.doScroll("left");
1484                          } catch (b) {
1485                              return a.setTimeout(f, 50);
1486                          }
1487                          J(), n.ready();
1488                      }
1489                  })();
1490          }
1491      return I.promise(b);
1492  }),
1493      n.ready.promise();
1494  var L;
1495  for (L in n(l)) break;
1496  (l.ownFirst = "0" === L),
1497      (l.inlineBlockNeedsLayout = !1),
1498      n(function () {
1499          var a, b, c, e;
1500          (c = d.getElementsByTagName("body")[0]),
1501              c &&
1502                  c.style &&
1503                  ((b = d.createElement("div")),
1504                  (e = d.createElement("div")),
1505                  (e.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"),
1506                  c.appendChild(e).appendChild(b),
1507                  "undefined" != typeof b.style.zoom && ((b.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1"), (l.inlineBlockNeedsLayout = a = 3 === b.offsetWidth), a && (c.style.zoom = 1)),
1508                  c.removeChild(e));
1509      }),
1510      (function () {
1511          var a = d.createElement("div");
1512          l.deleteExpando = !0;
1513          try {
1514              delete a.test;
1515          } catch (b) {
1516              l.deleteExpando = !1;
1517          }
1518          a = null;
1519      })();
1520  var M = function (a) {
1521          var b = n.noData[(a.nodeName + " ").toLowerCase()],
1522              c = +a.nodeType || 1;
1523          return 1 !== c && 9 !== c ? !1 : !b || (b !== !0 && a.getAttribute("classid") === b);
1524      },
1525      N = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
1526      O = /([A-Z])/g;
1527  function P(a, b, c) {
1528      if (void 0 === c && 1 === a.nodeType) {
1529          var d = "data-" + b.replace(O, "-$1").toLowerCase();
1530          if (((c = a.getAttribute(d)), "string" == typeof c)) {
1531              try {
1532                  c = "true" === c ? !0 : "false" === c ? !1 : "null" === c ? null : +c + "" === c ? +c : N.test(c) ? n.parseJSON(c) : c;
1533              } catch (e) {}
1534              n.data(a, b, c);
1535          } else c = void 0;
1536      }
1537      return c;
1538  }
1539  function Q(a) {
1540      var b;
1541      for (b in a) if (("data" !== b || !n.isEmptyObject(a[b])) && "toJSON" !== b) return !1;
1542      return !0;
1543  }
1544  function R(a, b, d, e) {
1545      if (M(a)) {
1546          var f,
1547              g,
1548              h = n.expando,
1549              i = a.nodeType,
1550              j = i ? n.cache : a,
1551              k = i ? a[h] : a[h] && h;
1552          if ((k && j[k] && (e || j[k].data)) || void 0 !== d || "string" != typeof b)
1553              return (
1554                  k || (k = i ? (a[h] = c.pop() || n.guid++) : h),
1555                  j[k] || (j[k] = i ? {} : { toJSON: n.noop }),
1556                  ("object" != typeof b && "function" != typeof b) || (e ? (j[k] = n.extend(j[k], b)) : (j[k].data = n.extend(j[k].data, b))),
1557                  (g = j[k]),
1558                  e || (g.data || (g.data = {}), (g = g.data)),
1559                  void 0 !== d && (g[n.camelCase(b)] = d),
1560                  "string" == typeof b ? ((f = g[b]), null == f && (f = g[n.camelCase(b)])) : (f = g),
1561                  f
1562              );
1563      }
1564  }
1565  function S(a, b, c) {
1566      if (M(a)) {
1567          var d,
1568              e,
1569              f = a.nodeType,
1570              g = f ? n.cache : a,
1571              h = f ? a[n.expando] : n.expando;
1572          if (g[h]) {
1573              if (b && (d = c ? g[h] : g[h].data)) {
1574                  n.isArray(b) ? (b = b.concat(n.map(b, n.camelCase))) : b in d ? (b = [b]) : ((b = n.camelCase(b)), (b = b in d ? [b] : b.split(" "))), (e = b.length);
1575                  while (e--) delete d[b[e]];
1576                  if (c ? !Q(d) : !n.isEmptyObject(d)) return;
1577              }
1578              (c || (delete g[h].data, Q(g[h]))) && (f ? n.cleanData([a], !0) : l.deleteExpando || g != g.window ? delete g[h] : (g[h] = void 0));
1579          }
1580      }
1581  }
1582  n.extend({
1583      cache: {},
1584      noData: { "applet ": !0, "embed ": !0, "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" },
1585      hasData: function (a) {
1586          return (a = a.nodeType ? n.cache[a[n.expando]] : a[n.expando]), !!a && !Q(a);
1587      },
1588      data: function (a, b, c) {
1589          return R(a, b, c);
1590      },
1591      removeData: function (a, b) {
1592          return S(a, b);
1593      },
1594      _data: function (a, b, c) {
1595          return R(a, b, c, !0);
1596      },
1597      _removeData: function (a, b) {
1598          return S(a, b, !0);
1599      },
1600  }),
1601      n.fn.extend({
1602          data: function (a, b) {
1603              var c,
1604                  d,
1605                  e,
1606                  f = this[0],
1607                  g = f && f.attributes;
1608              if (void 0 === a) {
1609                  if (this.length && ((e = n.data(f)), 1 === f.nodeType && !n._data(f, "parsedAttrs"))) {
1610                      c = g.length;
1611                      while (c--) g[c] && ((d = g[c].name), 0 === d.indexOf("data-") && ((d = n.camelCase(d.slice(5))), P(f, d, e[d])));
1612                      n._data(f, "parsedAttrs", !0);
1613                  }
1614                  return e;
1615              }
1616              return "object" == typeof a
1617                  ? this.each(function () {
1618                        n.data(this, a);
1619                    })
1620                  : arguments.length > 1
1621                  ? this.each(function () {
1622                        n.data(this, a, b);
1623                    })
1624                  : f
1625                  ? P(f, a, n.data(f, a))
1626                  : void 0;
1627          },
1628          removeData: function (a) {
1629              return this.each(function () {
1630                  n.removeData(this, a);
1631              });
1632          },
1633      }),
1634      n.extend({
1635          queue: function (a, b, c) {
1636              var d;
1637              return a ? ((b = (b || "fx") + "queue"), (d = n._data(a, b)), c && (!d || n.isArray(c) ? (d = n._data(a, b, n.makeArray(c))) : d.push(c)), d || []) : void 0;
1638          },
1639          dequeue: function (a, b) {
1640              b = b || "fx";
1641              var c = n.queue(a, b),
1642                  d = c.length,
1643                  e = c.shift(),
1644                  f = n._queueHooks(a, b),
1645                  g = function () {
1646                      n.dequeue(a, b);
1647                  };
1648              "inprogress" === e && ((e = c.shift()), d--), e && ("fx" === b && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)), !d && f && f.empty.fire();
1649          },
1650          _queueHooks: function (a, b) {
1651              var c = b + "queueHooks";
1652              return (
1653                  n._data(a, c) ||
1654                  n._data(a, c, {
1655                      empty: n.Callbacks("once memory").add(function () {
1656                          n._removeData(a, b + "queue"), n._removeData(a, c);
1657                      }),
1658                  })
1659              );
1660          },
1661      }),
1662      n.fn.extend({
1663          queue: function (a, b) {
1664              var c = 2;
1665              return (
1666                  "string" != typeof a && ((b = a), (a = "fx"), c--),
1667                  arguments.length < c
1668                      ? n.queue(this[0], a)
1669                      : void 0 === b
1670                      ? this
1671                      : this.each(function () {
1672                            var c = n.queue(this, a, b);
1673                            n._queueHooks(this, a), "fx" === a && "inprogress" !== c[0] && n.dequeue(this, a);
1674                        })
1675              );
1676          },
1677          dequeue: function (a) {
1678              return this.each(function () {
1679                  n.dequeue(this, a);
1680              });
1681          },
1682          clearQueue: function (a) {
1683              return this.queue(a || "fx", []);
1684          },
1685          promise: function (a, b) {
1686              var c,
1687                  d = 1,
1688                  e = n.Deferred(),
1689                  f = this,
1690                  g = this.length,
1691                  h = function () {
1692                      --d || e.resolveWith(f, [f]);
1693                  };
1694              "string" != typeof a && ((b = a), (a = void 0)), (a = a || "fx");
1695              while (g--) (c = n._data(f[g], a + "queueHooks")), c && c.empty && (d++, c.empty.add(h));
1696              return h(), e.promise(b);
1697          },
1698      }),
1699      (function () {
1700          var a;
1701          l.shrinkWrapBlocks = function () {
1702              if (null != a) return a;
1703              a = !1;
1704              var b, c, e;
1705              return (
1706                  (c = d.getElementsByTagName("body")[0]),
1707                  c && c.style
1708                      ? ((b = d.createElement("div")),
1709                        (e = d.createElement("div")),
1710                        (e.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"),
1711                        c.appendChild(e).appendChild(b),
1712                        "undefined" != typeof b.style.zoom &&
1713                            ((b.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1"),
1714                            (b.appendChild(d.createElement("div")).style.width = "5px"),
1715                            (a = 3 !== b.offsetWidth)),
1716                        c.removeChild(e),
1717                        a)
1718                      : void 0
1719              );
1720          };
1721      })();
1722  var T = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
1723      U = new RegExp("^(?:([+-])=|)(" + T + ")([a-z%]*)$", "i"),
1724      V = ["Top", "Right", "Bottom", "Left"],
1725      W = function (a, b) {
1726          return (a = b || a), "none" === n.css(a, "display") || !n.contains(a.ownerDocument, a);
1727      };
1728  function X(a, b, c, d) {
1729      var e,
1730          f = 1,
1731          g = 20,
1732          h = d
1733              ? function () {
1734                    return d.cur();
1735                }
1736              : function () {
1737                    return n.css(a, b, "");
1738                },
1739          i = h(),
1740          j = (c && c[3]) || (n.cssNumber[b] ? "" : "px"),
1741          k = (n.cssNumber[b] || ("px" !== j && +i)) && U.exec(n.css(a, b));
1742      if (k && k[3] !== j) {
1743          (j = j || k[3]), (c = c || []), (k = +i || 1);
1744          do (f = f || ".5"), (k /= f), n.style(a, b, k + j);
1745          while (f !== (f = h() / i) && 1 !== f && --g);
1746      }
1747      return c && ((k = +k || +i || 0), (e = c[1] ? k + (c[1] + 1) * c[2] : +c[2]), d && ((d.unit = j), (d.start = k), (d.end = e))), e;
1748  }
1749  var Y = function (a, b, c, d, e, f, g) {
1750          var h = 0,
1751              i = a.length,
1752              j = null == c;
1753          if ("object" === n.type(c)) {
1754              e = !0;
1755              for (h in c) Y(a, b, h, c[h], !0, f, g);
1756          } else if (
1757              void 0 !== d &&
1758              ((e = !0),
1759              n.isFunction(d) || (g = !0),
1760              j &&
1761                  (g
1762                      ? (b.call(a, d), (b = null))
1763                      : ((j = b),
1764                        (b = function (a, b, c) {
1765                            return j.call(n(a), c);
1766                        }))),
1767              b)
1768          )
1769              for (; i > h; h++) b(a[h], c, g ? d : d.call(a[h], h, b(a[h], c)));
1770          return e ? a : j ? b.call(a) : i ? b(a[0], c) : f;
1771      },
1772      Z = /^(?:checkbox|radio)$/i,
1773      $ = /<([\w:-]+)/,
1774      _ = /^$|\/(?:java|ecma)script/i,
1775      aa = /^\s+/,
1776      ba = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|dialog|figcaption|figure|footer|header|hgroup|main|mark|meter|nav|output|picture|progress|section|summary|template|time|video";
1777  function ca(a) {
1778      var b = ba.split("|"),
1779          c = a.createDocumentFragment();
1780      if (c.createElement) while (b.length) c.createElement(b.pop());
1781      return c;
1782  }
1783  !(function () {
1784      var a = d.createElement("div"),
1785          b = d.createDocumentFragment(),
1786          c = d.createElement("input");
1787      (a.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"),
1788          (l.leadingWhitespace = 3 === a.firstChild.nodeType),
1789          (l.tbody = !a.getElementsByTagName("tbody").length),
1790          (l.htmlSerialize = !!a.getElementsByTagName("link").length),
1791          (l.html5Clone = "<:nav></:nav>" !== d.createElement("nav").cloneNode(!0).outerHTML),
1792          (c.type = "checkbox"),
1793          (c.checked = !0),
1794          b.appendChild(c),
1795          (l.appendChecked = c.checked),
1796          (a.innerHTML = "<textarea>x</textarea>"),
1797          (l.noCloneChecked = !!a.cloneNode(!0).lastChild.defaultValue),
1798          b.appendChild(a),
1799          (c = d.createElement("input")),
1800          c.setAttribute("type", "radio"),
1801          c.setAttribute("checked", "checked"),
1802          c.setAttribute("name", "t"),
1803          a.appendChild(c),
1804          (l.checkClone = a.cloneNode(!0).cloneNode(!0).lastChild.checked),
1805          (l.noCloneEvent = !!a.addEventListener),
1806          (a[n.expando] = 1),
1807          (l.attributes = !a.getAttribute(n.expando));
1808  })();
1809  var da = {
1810      option: [1, "<select multiple='multiple'>", "</select>"],
1811      legend: [1, "<fieldset>", "</fieldset>"],
1812      area: [1, "<map>", "</map>"],
1813      param: [1, "<object>", "</object>"],
1814      thead: [1, "<table>", "</table>"],
1815      tr: [2, "<table><tbody>", "</tbody></table>"],
1816      col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
1817      td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
1818      _default: l.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"],
1819  };
1820  (da.optgroup = da.option), (da.tbody = da.tfoot = da.colgroup = da.caption = da.thead), (da.th = da.td);
1821  function ea(a, b) {
1822      var c,
1823          d,
1824          e = 0,
1825          f = "undefined" != typeof a.getElementsByTagName ? a.getElementsByTagName(b || "*") : "undefined" != typeof a.querySelectorAll ? a.querySelectorAll(b || "*") : void 0;
1826      if (!f) for (f = [], c = a.childNodes || a; null != (d = c[e]); e++) !b || n.nodeName(d, b) ? f.push(d) : n.merge(f, ea(d, b));
1827      return void 0 === b || (b && n.nodeName(a, b)) ? n.merge([a], f) : f;
1828  }
1829  function fa(a, b) {
1830      for (var c, d = 0;
1830 null != (c = a[d]); d++) n._data(c, "globalEval", !b || n._data(b[d], "globalEval"));
1831  }
1832  var ga = /<|&#?\w+;/,
1833      ha = /<tbody/i;
1834  function ia(a) {
1835      Z.test(a.type) && (a.defaultChecked = a.checked);
1836  }
1837  function ja(a, b, c, d, e) {
1838      for (var f, g, h, i, j, k, m, o = a.length, p = ca(b), q = [], r = 0; o > r; r++)
1839          if (((g = a[r]), g || 0 === g))
1840              if ("object" === n.type(g)) n.merge(q, g.nodeType ? [g] : g);
1841              else if (ga.test(g)) {
1842                  (i = i || p.appendChild(b.createElement("div"))), (j = ($.exec(g) || ["", ""])[1].toLowerCase()), (m = da[j] || da._default), (i.innerHTML = m[1] + n.htmlPrefilter(g) + m[2]), (f = m[0]);
1843                  while (f--) i = i.lastChild;
1844                  if ((!l.leadingWhitespace && aa.test(g) && q.push(b.createTextNode(aa.exec(g)[0])), !l.tbody)) {
1845                      (g = "table" !== j || ha.test(g) ? ("<table>" !== m[1] || ha.test(g) ? 0 : i) : i.firstChild), (f = g && g.childNodes.length);
1846                      while (f--) n.nodeName((k = g.childNodes[f]), "tbody") && !k.childNodes.length && g.removeChild(k);
1847                  }
1848                  n.merge(q, i.childNodes), (i.textContent = "");
1849                  while (i.firstChild) i.removeChild(i.firstChild);
1850                  i = p.lastChild;
1851              } else q.push(b.createTextNode(g));
1852      i && p.removeChild(i), l.appendChecked || n.grep(ea(q, "input"), ia), (r = 0);
1853      while ((g = q[r++]))
1854          if (d && n.inArray(g, d) > -1) e && e.push(g);
1855          else if (((h = n.contains(g.ownerDocument, g)), (i = ea(p.appendChild(g), "script")), h && fa(i), c)) {
1856              f = 0;
1857              while ((g = i[f++])) _.test(g.type || "") && c.push(g);
1858          }
1859      return (i = null), p;
1860  }
1861  !(function () {
1862      var b,
1863          c,
1864          e = d.createElement("div");
1865      for (b in { submit: !0, change: !0, focusin: !0 }) (c = "on" + b), (l[b] = c in a) || (e.setAttribute(c, "t"), (l[b] = e.attributes[c].expando === !1));
1866      e = null;
1867  })();
1868  var ka = /^(?:input|select|textarea)$/i,
1869      la = /^key/,
1870      ma = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
1871      na = /^(?:focusinfocus|focusoutblur)$/,
1872      oa = /^([^.]*)(?:\.(.+)|)/;
1873  function pa() {
1874      return !0;
1875  }
1876  function qa() {
1877      return !1;
1878  }
1879  function ra() {
1880      try {
1881          return d.activeElement;
1882      } catch (a) {}
1883  }
1884  function sa(a, b, c, d, e, f) {
1885      var g, h;
1886      if ("object" == typeof b) {
1887          "string" != typeof c && ((d = d || c), (c = void 0));
1888          for (h in b) sa(a, h, c, d, b[h], f);
1889          return a;
1890      }
1891      if ((null == d && null == e ? ((e = c), (d = c = void 0)) : null == e && ("string" == typeof c ? ((e = d), (d = void 0)) : ((e = d), (d = c), (c = void 0))), e === !1)) e = qa;
1892      else if (!e) return a;
1893      return (
1894          1 === f &&
1895              ((g = e),
1896              (e = function (a) {
1897                  return n().off(a), g.apply(this, arguments);
1898              }),
1899              (e.guid = g.guid || (g.guid = n.guid++))),
1900          a.each(function () {
1901              n.event.add(this, b, e, d, c);
1902          })
1903      );
1904  }
1905  (n.event = {
1906      global: {},
1907      add: function (a, b, c, d, e) {
1908          var f,
1909              g,
1910              h,
1911              i,
1912              j,
1913              k,
1914              l,
1915              m,
1916              o,
1917              p,
1918              q,
1919              r = n._data(a);
1920          if (r) {
1921              c.handler && ((i = c), (c = i.handler), (e = i.selector)),
1922                  c.guid || (c.guid = n.guid++),
1923                  (g = r.events) || (g = r.events = {}),
1924                  (k = r.handle) ||
1925                      ((k = r.handle = function (a) {
1926                          return "undefined" == typeof n || (a && n.event.triggered === a.type) ? void 0 : n.event.dispatch.apply(k.elem, arguments);
1927                      }),
1928                      (k.elem = a)),
1929                  (b = (b || "").match(G) || [""]),
1930                  (h = b.length);
1931              while (h--)
1932                  (f = oa.exec(b[h]) || []),
1933                      (o = q = f[1]),
1934                      (p = (f[2] || "").split(".").sort()),
1935                      o &&
1936                          ((j = n.event.special[o] || {}),
1937                          (o = (e ? j.delegateType : j.bindType) || o),
1938                          (j = n.event.special[o] || {}),
1939                          (l = n.extend({ type: o, origType: q, data: d, handler: c, guid: c.guid, selector: e, needsContext: e && n.expr.match.needsContext.test(e), namespace: p.join(".") }, i)),
1940                          (m = g[o]) || ((m = g[o] = []), (m.delegateCount = 0), (j.setup && j.setup.call(a, d, p, k) !== !1) || (a.addEventListener ? a.addEventListener(o, k, !1) : a.attachEvent && a.attachEvent("on" + o, k))),
1941                          j.add && (j.add.call(a, l), l.handler.guid || (l.handler.guid = c.guid)),
1942                          e ? m.splice(m.delegateCount++, 0, l) : m.push(l),
1943                          (n.event.global[o] = !0));
1944              a = null;
1945          }
1946      },
1947      remove: function (a, b, c, d, e) {
1948          var f,
1949              g,
1950              h,
1951              i,
1952              j,
1953              k,
1954              l,
1955              m,
1956              o,
1957              p,
1958              q,
1959              r = n.hasData(a) && n._data(a);
1960          if (r && (k = r.events)) {
1961              (b = (b || "").match(G) || [""]), (j = b.length);
1962              while (j--)
1963                  if (((h = oa.exec(b[j]) || []), (o = q = h[1]), (p = (h[2] || "").split(".").sort()), o)) {
1964                      (l = n.event.special[o] || {}), (o = (d ? l.delegateType : l.bindType) || o), (m = k[o] || []), (h = h[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)")), (i = f = m.length);
1965                      while (f--)
1966                          (g = m[f]),
1967                              (!e && q !== g.origType) ||
1968                                  (c && c.guid !== g.guid) ||
1969                                  (h && !h.test(g.namespace)) ||
1970                                  (d && d !== g.selector && ("**" !== d || !g.selector)) ||
1971                                  (m.splice(f, 1), g.selector && m.delegateCount--, l.remove && l.remove.call(a, g));
1972                      i && !m.length && ((l.teardown && l.teardown.call(a, p, r.handle) !== !1) || n.removeEvent(a, o, r.handle), delete k[o]);
1973                  } else for (o in k) n.event.remove(a, o + b[j], c, d, !0);
1974              n.isEmptyObject(k) && (delete r.handle, n._removeData(a, "events"));
1975          }
1976      },
1977      trigger: function (b, c, e, f) {
1978          var g,
1979              h,
1980              i,
1981              j,
1982              l,
1983              m,
1984              o,
1985              p = [e || d],
1986              q = k.call(b, "type") ? b.type : b,
1987              r = k.call(b, "namespace") ? b.namespace.split(".") : [];
1988          if (
1989              ((i = m = e = e || d),
1990              3 !== e.nodeType &&
1991                  8 !== e.nodeType &&
1992                  !na.test(q + n.event.triggered) &&
1993                  (q.indexOf(".") > -1 && ((r = q.split(".")), (q = r.shift()), r.sort()),
1994                  (h = q.indexOf(":") < 0 && "on" + q),
1995                  (b = b[n.expando] ? b : new n.Event(q, "object" == typeof b && b)),
1996                  (b.isTrigger = f ? 2 : 3),
1997                  (b.namespace = r.join(".")),
1998                  (b.rnamespace = b.namespace ? new RegExp("(^|\\.)" + r.join("\\.(?:.*\\.|)") + "(\\.|$)") : null),
1999                  (b.result = void 0),
2000                  b.target || (b.target = e),
2001                  (c = null == c ? [b] : n.makeArray(c, [b])),
2002                  (l = n.event.special[q] || {}),
2003                  f || !l.trigger || l.trigger.apply(e, c) !== !1))
2004          ) {
2005              if (!f && !l.noBubble && !n.isWindow(e)) {
2006                  for (j = l.delegateType || q, na.test(j + q) || (i = i.parentNode); i; i = i.parentNode) p.push(i), (m = i);
2007                  m === (e.ownerDocument || d) && p.push(m.defaultView || m.parentWindow || a);
2008              }
2009              o = 0;
2010              while ((i = p[o++]) && !b.isPropagationStopped())
2011                  (b.type = o > 1 ? j : l.bindType || q),
2012                      (g = (n._data(i, "events") || {})[b.type] && n._data(i, "handle")),
2013                      g && g.apply(i, c),
2014                      (g = h && i[h]),
2015                      g && g.apply && M(i) && ((b.result = g.apply(i, c)), b.result === !1 && b.preventDefault());
2016              if (((b.type = q), !f && !b.isDefaultPrevented() && (!l._default || l._default.apply(p.pop(), c) === !1) && M(e) && h && e[q] && !n.isWindow(e))) {
2017                  (m = e[h]), m && (e[h] = null), (n.event.triggered = q);
2018                  try {
2019                      e[q]();
2020                  } catch (s) {}
2021                  (n.event.triggered = void 0), m && (e[h] = m);
2022              }
2023              return b.result;
2024          }
2025      },
2026      dispatch: function (a) {
2027          a = n.event.fix(a);
2028          var b,
2029              c,
2030              d,
2031              f,
2032              g,
2033              h = [],
2034              i = e.call(arguments),
2035              j = (n._data(this, "events") || {})[a.type] || [],
2036              k = n.event.special[a.type] || {};
2037          if (((i[0] = a), (a.delegateTarget = this), !k.preDispatch || k.preDispatch.call(this, a) !== !1)) {
2038              (h = n.event.handlers.call(this, a, j)), (b = 0);
2039              while ((f = h[b++]) && !a.isPropagationStopped()) {
2040                  (a.currentTarget = f.elem), (c = 0);
2041                  while ((g = f.handlers[c++]) && !a.isImmediatePropagationStopped())
2042                      (a.rnamespace && !a.rnamespace.test(g.namespace)) ||
2043                          ((a.handleObj = g), (a.data = g.data), (d = ((n.event.special[g.origType] || {}).handle || g.handler).apply(f.elem, i)), void 0 !== d && (a.result = d) === !1 && (a.preventDefault(), a.stopPropagation()));
2044              }
2045              return k.postDispatch && k.postDispatch.call(this, a), a.result;
2046          }
2047      },
2048      handlers: function (a, b) {
2049          var c,
2050              d,
2051              e,
2052              f,
2053              g = [],
2054              h = b.delegateCount,
2055              i = a.target;
2056          if (h && i.nodeType && ("click" !== a.type || isNaN(a.button) || a.button < 1))
2057              for (; i != this; i = i.parentNode || this)
2058                  if (1 === i.nodeType && (i.disabled !== !0 || "click" !== a.type)) {
2059                      for (d = [], c = 0; h > c; c++) (f = b[c]), (e = f.selector + " "), void 0 === d[e] && (d[e] = f.needsContext ? n(e, this).index(i) > -1 : n.find(e, this, null, [i]).length), d[e] && d.push(f);
2060                      d.length && g.push({ elem: i, handlers: d });
2061                  }
2062          return h < b.length && g.push({ elem: this, handlers: b.slice(h) }), g;
2063      },
2064      fix: function (a) {
2065          if (a[n.expando]) return a;
2066          var b,
2067              c,
2068              e,
2069              f = a.type,
2070              g = a,
2071              h = this.fixHooks[f];
2072          h || (this.fixHooks[f] = h = ma.test(f) ? this.mouseHooks : la.test(f) ? this.keyHooks 
2072: {}), (e = h.props ? this.props.concat(h.props) : this.props), (a = new n.Event(g)), (b = e.length);
2073          while (b--) (c = e[b]), (a[c] = g[c]);
2074          return a.target || (a.target = g.srcElement || d), 3 === a.target.nodeType && (a.target = a.target.parentNode), (a.metaKey = !!a.metaKey), h.filter ? h.filter(a, g) : a;
2075      },
2076      props: "altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
2077      fixHooks: {},
2078      keyHooks: {
2079          props: "char charCode key keyCode".split(" "),
2080          filter: function (a, b) {
2081              return null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode), a;
2082          },
2083      },
2084      mouseHooks: {
2085          props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
2086          filter: function (a, b) {
2087              var c,
2088                  e,
2089                  f,
2090                  g = b.button,
2091                  h = b.fromElement;
2092              return (
2093                  null == a.pageX &&
2094                      null != b.clientX &&
2095                      ((e = a.target.ownerDocument || d),
2096                      (f = e.documentElement),
2097                      (c = e.body),
2098                      (a.pageX = b.clientX + ((f && f.scrollLeft) || (c && c.scrollLeft) || 0) - ((f && f.clientLeft) || (c && c.clientLeft) || 0)),
2099                      (a.pageY = b.clientY + ((f && f.scrollTop) || (c && c.scrollTop) || 0) - ((f && f.clientTop) || (c && c.clientTop) || 0))),
2100                  !a.relatedTarget && h && (a.relatedTarget = h === a.target ? b.toElement : h),
2101                  a.which || void 0 === g || (a.which = 1 & g ? 1 : 2 & g ? 3 : 4 & g ? 2 : 0),
2102                  a
2103              );
2104          },
2105      },
2106      special: {
2107          load: { noBubble: !0 },
2108          focus: {
2109              trigger: function () {
2110                  if (this !== ra() && this.focus)
2111                      try {
2112                          return this.focus(), !1;
2113                      } catch (a) {}
2114              },
2115              delegateType: "focusin",
2116          },
2117          blur: {
2118              trigger: function () {
2119                  return this === ra() && this.blur ? (this.blur(), !1) : void 0;
2120              },
2121              delegateType: "focusout",
2122          },
2123          click: {
2124              trigger: function () {
2125                  return n.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0;
2126              },
2127              _default: function (a) {
2128                  return n.nodeName(a.target, "a");
2129              },
2130          },
2131          beforeunload: {
2132              postDispatch: function (a) {
2133                  void 0 !== a.result && a.originalEvent && (a.originalEvent.returnValue = a.result);
2134              },
2135          },
2136      },
2137      simulate: function (a, b, c) {
2138          var d = n.extend(new n.Event(), c, { type: a, isSimulated: !0 });
2139          n.event.trigger(d, null, b), d.isDefaultPrevented() && c.preventDefault();
2140      },
2141  }),
2142      (n.removeEvent = d.removeEventListener
2143          ? function (a, b, c) {
2144                a.removeEventListener && a.removeEventListener(b, c);
2145            }
2146          : function (a, b, c) {
2147                var d = "on" + b;
2148                a.detachEvent && ("undefined" == typeof a[d] && (a[d] = null), a.detachEvent(d, c));
2149            }),
2150      (n.Event = function (a, b) {
2151          return this instanceof n.Event
2152              ? (a && a.type ? ((this.originalEvent = a), (this.type = a.type), (this.isDefaultPrevented = a.defaultPrevented || (void 0 === a.defaultPrevented && a.returnValue === !1) ? pa : qa)) : (this.type = a),
2153                b && n.extend(this, b),
2154                (this.timeStamp = (a && a.timeStamp) || n.now()),
2155                void (this[n.expando] = !0))
2156              : new n.Event(a, b);
2157      }),
2158      (n.Event.prototype = {
2159          constructor: n.Event,
2160          isDefaultPrevented: qa,
2161          isPropagationStopped: qa,
2162          isImmediatePropagationStopped: qa,
2163          preventDefault: function () {
2164              var a = this.originalEvent;
2165              (this.isDefaultPrevented = pa), a && (a.preventDefault ? a.preventDefault() : (a.returnValue = !1));
2166          },
2167          stopPropagation: function () {
2168              var a = this.originalEvent;
2169              (this.isPropagationStopped = pa), a && !this.isSimulated && (a.stopPropagation && a.stopPropagation(), (a.cancelBubble = !0));
2170          },
2171          stopImmediatePropagation: function () {
2172              var a = this.originalEvent;
2173              (this.isImmediatePropagationStopped = pa), a && a.stopImmediatePropagation && a.stopImmediatePropagation(), this.stopPropagation();
2174          },
2175      }),
2176      n.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function (a, b) {
2177          n.event.special[a] = {
2178              delegateType: b,
2179              bindType: b,
2180              handle: function (a) {
2181                  var c,
2182                      d = this,
2183                      e = a.relatedTarget,
2184                      f = a.handleObj;
2185                  return (e && (e === d || n.contains(d, e))) || ((a.type = f.origType), (c = f.handler.apply(this, arguments)), (a.type = b)), c;
2186              },
2187          };
2188      }),
2189      l.submit ||
2190          (n.event.special.submit = {
2191              setup: function () {
2192                  return n.nodeName(this, "form")
2193                      ? !1
2194                      : void n.event.add(this, "click._submit keypress._submit", function (a) {
2195                            var b = a.target,
2196                                c = n.nodeName(b, "input") || n.nodeName(b, "button") ? n.prop(b, "form") : void 0;
2197                            c &&
2198                                !n._data(c, "submit") &&
2199                                (n.event.add(c, "submit._submit", function (a) {
2200                                    a._submitBubble = !0;
2201                                }),
2202                                n._data(c, "submit", !0));
2203                        });
2204              },
2205              postDispatch: function (a) {
2206                  a._submitBubble && (delete a._submitBubble, this.parentNode && !a.isTrigger && n.event.simulate("submit", this.parentNode, a));
2207              },
2208              teardown: function () {
2209                  return n.nodeName(this, "form") ? !1 : void n.event.remove(this, "._submit");
2210              },
2211          }),
2212      l.change ||
2213          (n.event.special.change = {
2214              setup: function () {
2215                  return ka.test(this.nodeName)
2216                      ? (("checkbox" !== this.type && "radio" !== this.type) ||
2217                            (n.event.add(this, "propertychange._change", function (a) {
2218                                "checked" === a.originalEvent.propertyName && (this._justChanged = !0);
2219                            }),
2220                            n.event.add(this, "click._change", function (a) {
2221                                this._justChanged && !a.isTrigger && (this._justChanged = !1), n.event.simulate("change", this, a);
2222                            })),
2223                        !1)
2224                      : void n.event.add(this, "beforeactivate._change", function (a) {
2225                            var b = a.target;
2226                            ka.test(b.nodeName) &&
2227                                !n._data(b, "change") &&
2228                                (n.event.add(b, "change._change", function (a) {
2229                                    !this.parentNode || a.isSimulated || a.isTrigger || n.event.simulate("change", this.parentNode, a);
2230                                }),
2231                                n._data(b, "change", !0));
2232                        });
2233              },
2234              handle: function (a) {
2235                  var b = a.target;
2236                  return this !== b || a.isSimulated || a.isTrigger || ("radio" !== b.type && "checkbox" !== b.type) ? a.handleObj.handler.apply(this, arguments) : void 0;
2237              },
2238              teardown: function () {
2239                  return n.event.remove(this, "._change"), !ka.test(this.nodeName);
2240              },
2241          }),
2242      l.focusin ||
2243          n.each({ focus: "focusin", blur: "focusout" }, function (a, b) {
2244              var c = function (a) {
2245                  n.event.simulate(b, a.target, n.event.fix(a));
2246              };
2247              n.event.special[b] = {
2248                  setup: function () {
2249                      var d = this.ownerDocument || this,
2250                          e = n._data(d, b);
2251                      e || d.addEventListener(a, c, !0), n._data(d, b, (e || 0) + 1);
2252                  },
2253                  teardown: function () {
2254                      var d = this.ownerDocument || this,
2255                          e = n._data(d, b) - 1;
2256                      e ? n._data(d, b, e) : (d.removeEventListener(a, c, !0), n._removeData(d, b));
2257                  },
2258              };
2259          }),
2260      n.fn.extend({
2261          on: function (a, b, c, d) {
2262              return sa(this, a, b, c, d);
2263          },
2264          one: function (a, b, c, d) {
2265              return sa(this, a, b, c, d, 1);
2266          },
2267          off: function (a, b, c) {
2268              var d, e;
2269              if (a && a.preventDefault && a.handleObj) return (d = a.handleObj), n(a.delegateTarget).off(d.namespace ? d.origType + "." + d.namespace : d.origType, d.selector, d.handler), this;
2270              if ("object" == typeof a) {
2271                  for (e in a) this.off(e, b, a[e]);
2272                  return this;
2273              }
2274              return (
2275                  (b !== !1 && "function" != typeof b) || ((c = b), (b = void 0)),
2276                  c === !1 && (c = qa),
2277                  this.each(function () {
2278                      n.event.remove(this, a, c, b);
2279                  })
2280              );
2281          },
2282          trigger: function (a, b) {
2283              return this.each(function () {
2284                  n.event.trigger(a, b, this);
2285              });
2286          },
2287          triggerHandler: function (a, b) {
2288              var c = this[0];
2289              return c ? n.event.trigger(a, b, c, !0) : void 0;
2290          },
2291      });
2292  var ta = / jQuery\d+="(?:null|\d+)"/g,
2293      ua = new RegExp("<(?:" + ba + ")[\\s/>]", "i"),
2294      va = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,
2295      wa = /<script|<style|<link/i,
2296      xa = /checked\s*(?:[^=]|=\s*.checked.)/i,
2297      ya = /^true\/(.*)/,
2298      za = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
2299      Aa = ca(d),
2300      Ba = Aa.appendChild(d.createElement("div"));
2301  function Ca(a, b) {
2302      return n.nodeName(a, "table") && n.nodeName(11 !== b.nodeType ? b : b.firstChild, "tr") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a;
2303  }
2304  function Da(a) {
2305      return (a.type = (null !== n.find.attr(a, "type")) + "/" + a.type), a;
2306  }
2307  function Ea(a) {
2308      var b = ya.exec(a.type);
2309      return b ? (a.type = b[1]) : a.removeAttribute("type"), a;
2310  }
2311  function Fa(a, b) {
2312      if (1 === b.nodeType && n.hasData(a)) {
2313          var c,
2314              d,
2315              e,
2316              f = n._data(a),
2317              g = n._data(b, f),
2318              h = f.events;
2319          if (h) {
2320              delete g.handle, (g.events = {});
2321              for (c in h) for (d = 0, e = h[c].length; e > d; d++) n.event.add(b, c, h[c][d]);
2322          }
2323          g.data && (g.data = n.extend({}, g.data));
2324      }
2325  }
2326  function Ga(a, b) {
2327      var c, d, e;
2328      if (1 === b.nodeType) {
2329          if (((c = b.nodeName.toLowerCase()), !l.noCloneEvent && b[n.expando])) {
2330              e = n._data(b);
2331              for (d in e.events) n.removeEvent(b, d, e.handle);
2332              b.removeAttribute(n.expando);
2333          }
2334          "script" === c && b.text !== a.text
2335              ? ((Da(b).text = a.text), Ea(b))
2336              : "object" === c
2337              ? (b.parentNode && (b.outerHTML = a.outerHTML), l.html5Clone && a.innerHTML && !n.trim(b.innerHTML) && (b.innerHTML = a.innerHTML))
2338              : "input" === c && Z.test(a.type)
2339              ? ((b.defaultChecked = b.checked = a.checked), b.value !== a.value && (b.value = a.value))
2340              : "option" === c
2341              ? (b.defaultSelected = b.selected = a.defaultSelected)
2342              : ("input" !== c && "textarea" !== c) || (b.defaultValue = a.defaultValue);
2343      }
2344  }
2345  function Ha(a, b, c, d) {
2346      b = f.apply([], b);
2347      var e,
2348          g,
2349          h,
2350          i,
2351          j,
2352          k,
2353          m = 0,
2354          o = a.length,
2355          p = o - 1,
2356          q = b[0],
2357          r = n.isFunction(q);
2358      if (r || (o > 1 && "string" == typeof q && !l.checkClone && xa.test(q)))
2359          return a.each(function (e) {
2360              var f = a.eq(e);
2361              r && (b[0] = q.call(this, e, f.html())), Ha(f, b, c, d);
2362          });
2363      if (o && ((k = ja(b, a[0].ownerDocument, !1, a, d)), (e = k.firstChild), 1 === k.childNodes.length && (k = e), e || d)) {
2364          for (i = n.map(ea(k, "script"), Da), h = i.length; o > m; m++) (g = k), m !== p && ((g = n.clone(g, !0, !0)), h && n.merge(i, ea(g, "script"))), c.call(a[m], g, m);
2365          if (h)
2366              for (j = i[i.length - 1].ownerDocument, n.map(i, Ea), m = 0; h > m; m++)
2367                  (g = i[m]), _.test(g.type || "") && !n._data(g, "globalEval") && n.contains(j, g) && (g.src ? n._evalUrl && n._evalUrl(g.src) : n.globalEval((g.text || g.textContent || g.innerHTML || "").replace(za, "")));
2368          k = e = null;
2369      }
2370      return a;
2371  }
2372  function Ia(a, b, c) {
2373      for (var d, e = b ? n.filter(b, a) : a, f = 0; null != (d = e[f]); f++) c || 1 !== d.nodeType || n.cleanData(ea(d)), d.parentNode && (c && n.contains(d.ownerDocument, d) && fa(ea(d, "script")), d.parentNode.removeChild(d));
2374      return a;
2375  }
2376  n.extend({
2377      htmlPrefilter: function (a) {
2378          return a.replace(va, "<$1></$2>");
2379      },
2380      clone: function (a, b, c) {
2381          var d,
2382              e,
2383              f,
2384              g,
2385              h,
2386              i = n.contains(a.ownerDocument, a);
2387          if (
2388              (l.html5Clone || n.isXMLDoc(a) || !ua.test("<" + a.nodeName + ">") ? (f = a.cloneNode(!0)) : ((Ba.innerHTML = a.outerHTML), Ba.removeChild((f = Ba.firstChild))),
2389              !((l.noCloneEvent && l.noCloneChecked) || (1 !== a.nodeType && 11 !== a.nodeType) || n.isXMLDoc(a)))
2390          )
2391              for (d = ea(f), h = ea(a), g = 0; null != (e = h[g]); ++g) d[g] && Ga(e, d[g]);
2392          if (b)
2393              if (c) for (h = h || ea(a), d = d || ea(f), g = 0; null != (e = h[g]); g++) Fa(e, d[g]);
2394              else Fa(a, f);
2395          return (d = ea(f, "script")), d.length > 0 && fa(d, !i && ea(a, "script")), (d = h = e = null), f;
2396      },
2397      cleanData: function (a, b) {
2398          for (var d, e, f, g, h = 0, i = n.expando, j = n.cache, k = l.attributes, m = n.event.special; null != (d = a[h]); h++)
2399              if ((b || M(d)) && ((f = d[i]), (g = f && j[f]))) {
2400                  if (g.events) for (e in g.events) m[e] ? n.event.remove(d, e) : n.removeEvent(d, e, g.handle);
2401                  j[f] && (delete j[f], k || "undefined" == typeof d.removeAttribute ? (d[i] = void 0) : d.removeAttribute(i), c.push(f));
2402              }
2403      },
2404  }),
2405      n.fn.extend({
2406          domManip: Ha,
2407          detach: function (a) {
2408              return Ia(this, a, !0);
2409          },
2410          remove: function (a) {
2411              return Ia(this, a);
2412          },
2413          text: function (a) {
2414              return Y(
2415                  this,
2416                  function (a) {
2417                      return void 0 === a ? n.text(this) : this.empty().append(((this[0] && this[0].ownerDocument) || d).createTextNode(a));
2418                  },
2419                  null,
2420                  a,
2421                  arguments.length
2422              );
2423          },
2424          append: function () {
2425              return Ha(this, arguments, function (a) {
2426                  if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
2427                      var b = Ca(this, a);
2428                      b.appendChild(a);
2429                  }
2430              });
2431          },
2432          prepend: function () {
2433              return Ha(this, arguments, function (a) {
2434                  if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
2435                      var b = Ca(this, a);
2436                      b.insertBefore(a, b.firstChild);
2437                  }
2438              });
2439          },
2440          before: function () {
2441              return Ha(this, arguments, function (a) {
2442                  this.parentNode && this.parentNode.insertBefore(a, this);
2443              });
2444          },
2445          after: function () {
2446              return Ha(this, arguments, function (a) {
2447                  this.parentNode && this.parentNode.insertBefore(a, this.nextSibling);
2448              });
2449          },
2450          empty: function () {
2451              for (var a, b = 0; null != (a = this[b]); b++) {
2452                  1 === a.nodeType && n.cleanData(ea(a, !1));
2453                  while (a.firstChild) a.removeChild(a.firstChild);
2454                  a.options && n.nodeName(a, "select") && (a.options.length = 0);
2455              }
2456              return this;
2457          },
2458          clone: function (a, b) {
2459              return (
2460                  (a = null == a ? !1 : a),
2461                  (b = null == b ? a : b),
2462                  this.map(function () {
2463                      return n.clone(this, a, b);
2464                  })
2465              );
2466          },
2467          html: function (a) {
2468              return Y(
2469                  this,
2470                  function (a) {
2471                      var b = this[0] || {},
2472                          c = 0,
2473                          d = this.length;
2474                      if (void 0 === a) return 1 === b.nodeType ? b.innerHTML.replace(ta, "") : void 0;
2475                      if ("string" == typeof a && !wa.test(a) && (l.htmlSerialize || !ua.test(a)) && (l.leadingWhitespace || !aa.test(a)) && !da[($.exec(a) || ["", ""])[1].toLowerCase()]) {
2476                          a = n.htmlPrefilter(a);
2477                          try {
2478                              for (; d > c; c++) (b = this[c] || {}), 1 === b.nodeType && (n.cleanData(ea(b, !1)), (b.innerHTML = a));
2479                              b = 0;
2480                          } catch (e) {}
2481                      }
2482                      b && this.empty().append(a);
2483                  },
2484                  null,
2485                  a,
2486                  arguments.length
2487              );
2488          },
2489          replaceWith: function () {
2490              var a = [];
2491              return Ha(
2492                  this,
2493                  arguments,
2494                  function (b) {
2495                      var c = this.parentNode;
2496                      n.inArray(this, a) < 0 && (n.cleanData(ea(this)), c && c.replaceChild(b, this));
2497                  },
2498                  a
2499              );
2500          },
2501      }),
2502      n.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (a, b) {
2503          n.fn[a] = function (a) {
2504              for (var c, d = 0, e = [], f = n(a), h = f.length - 1; h >= d; d++) (c = d === h ? this : this.clone(!0)), n(f[d])[b](c), g.apply(e, c.get());
2505              return this.pushStack(e);
2506          };
2507      });
2508  var Ja,
2509      Ka = { HTML: "block", BODY: "block" };
2510  function La(a, b) {
2511      var c = n(b.createElement(a)).appendTo(b.body),
2512          d = n.css(c[0], "display");
2513      return c.detach(), d;
2514  }
2515  function Ma(a) {
2516      var b = d,
2517          c = Ka[a];
2518      return (
2519          c ||
2520              ((c = La(a, b)),
2521              ("none" !== c && c) ||
2522                  ((Ja = (Ja || n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement)), (b = (Ja[0].contentWindow || Ja[0].contentDocument).document), b.write(), b.close(), (c = La(a, b)), Ja.detach()),
2523              (Ka[a] = c)),
2524          c
2525      );
2526  }
2527  var Na = /^margin/,
2528      Oa = new RegExp("^(" + T + ")(?!px)[a-z%]+$", "i"),
2529      Pa = function (a, b, c, d) {
2530          var e,
2531              f,
2532              g = {};
2533          for (f in b) (g[f] = a.style[f]), (a.style[f] = b[f]);
2534          e = c.apply(a, d || []);
2535          for (f in b) a.style[f] = g[f];
2536          return e;
2537      },
2538      Qa = d.documentElement;
2539  !(function () {
2540      var b,
2541          c,
2542          e,
2543          f,
2544          g,
2545          h,
2546          i = d.createElement("div"),
2547          j = d.createElement("div");
2548      if (j.style) {
2549          (j.style.cssText = "float:left;opacity:.5"),
2550              (l.opacity = "0.5" === j.style.opacity),
2551              (l.cssFloat = !!j.style.cssFloat),
2552              (j.style.backgroundClip = "content-box"),
2553              (j.cloneNode(!0).style.backgroundClip = ""),
2554              (l.clearCloneStyle = "content-box" === j.style.backgroundClip),
2555              (i = d.createElement("div")),
2556              (i.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute"),
2557              (j.innerHTML = ""),
2558              i.appendChild(j),
2559              (l.boxSizing = "" === j.style.boxSizing || "" === j.style.MozBoxSizing || "" === j.style.WebkitBoxSizing),
2560              n.extend(l, {
2561                  reliableHiddenOffsets: function () {
2562                      return null == b && k(), f;
2563                  },
2564                  boxSizingReliable: function () {
2565                      return null == b && k(), e;
2566                  },
2567                  pixelMarginRight: function () {
2568                      return null == b && k(), c;
2569                  },
2570                  pixelPosition: function () {
2571                      return null == b && k(), b;
2572                  },
2573                  reliableMarginRight: function () {
2574                      return null == b && k(), g;
2575                  },
2576                  reliableMarginLeft: function () {
2577                      return null == b && k(), h;
2578                  },
2579              });
2580          function k() {
2581              var k,
2582                  l,
2583                  m = d.documentElement;
2584              m.appendChild(i),
2585                  (j.style.cssText = "-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%"),
2586                  (b = e = h = !1),
2587                  (c = g = !0),
2588                  a.getComputedStyle &&
2589                      ((l = a.getComputedStyle(j)),
2590                      (b = "1%" !== (l || {}).top),
2591                      (h = "2px" === (l || {}).marginLeft),
2592                      (e = "4px" === (l || { width: "4px" }).width),
2593                      (j.style.marginRight = "50%"),
2594                      (c = "4px" === (l || { marginRight: "4px" }).marginRight),
2595                      (k = j.appendChild(d.createElement("div"))),
2596                      (k.style.cssText = j.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0"),
2597                      (k.style.marginRight = k.style.width = "0"),
2598                      (j.style.width = "1px"),
2599                      (g = !parseFloat((a.getComputedStyle(k) || {}).marginRight)),
2600                      j.removeChild(k)),
2601                  (j.style.display = "none"),
2602                  (f = 0 === j.getClientRects().length),
2603                  f &&
2604                      ((j.style.display = ""),
2605                      (j.innerHTML = "<table><tr><td></td><td>t</td></tr></table>"),
2606                      (j.childNodes[0].style.borderCollapse = "separate"),
2607                      (k = j.getElementsByTagName("td")),
2608                      (k[0].style.cssText = "margin:0;border:0;padding:0;display:none"),
2609                      (f = 0 === k[0].offsetHeight),
2610                      f && ((k[0].style.display = ""), (k[1].style.display = "none"), (f = 0 === k[0].offsetHeight))),
2611                  m.removeChild(i);
2612          }
2613      }
2614  })();
2615  var Ra,
2616      Sa,
2617      Ta = /^(top|right|bottom|left)$/;
2618  a.getComputedStyle
2619      ? ((Ra = function (b) {
2620            var c = b.ownerDocument.defaultView;
2621            return (c && c.opener) || (c = a), c.getComputedStyle(b);
2622        }),
2623        (Sa = function (a, b, c) {
2624            var d,
2625                e,
2626                f,
2627                g,
2628                h = a.style;
2629            return (
2630                (c = c || Ra(a)),
2631                (g = c ? c.getPropertyValue(b) || c[b] : void 0),
2632                ("" !== g && void 0 !== g) || n.contains(a.ownerDocument, a) || (g = n.style(a, b)),
2633                c && !l.pixelMarginRight() && Oa.test(g) && Na.test(b) && ((d = h.width), (e = h.minWidth), (f = h.maxWidth), (h.minWidth = h.maxWidth = h.width = g), (g = c.width), (h.width = d), (h.minWidth = e), (h.maxWidth = f)),
2634                void 0 === g ? g : g + ""
2635            );
2636        }))
2637      : Qa.currentStyle &&
2638        ((Ra = function (a) {
2639            return a.currentStyle;
2640        }),
2641        (Sa = function (a, b, c) {
2642            var d,
2643                e,
2644                f,
2645                g,
2646                h = a.style;
2647            return (
2648                (c = c || Ra(a)),
2649                (g = c ? c[b] : void 0),
2650                null == g && h && h[b] && (g = h[b]),
2651                Oa.test(g) && !Ta.test(b) && ((d = h.left), (e = a.runtimeStyle), (f = e && e.left), f && (e.left = a.
2651currentStyle.left), (h.left = "fontSize" === b ? "1em" : g), (g = h.pixelLeft + "px"), (h.left = d), f && (e.left = f)),
2652                void 0 === g ? g : g + "" || "auto"
2653            );
2654        }));
2655  function Ua(a, b) {
2656      return {
2657          get: function () {
2658              return a() ? void delete this.get : (this.get = b).apply(this, arguments);
2659          },
2660      };
2661  }
2662  var Va = /alpha\([^)]*\)/i,
2663      Wa = /opacity\s*=\s*([^)]*)/i,
2664      Xa = /^(none|table(?!-c[ea]).+)/,
2665      Ya = new RegExp("^(" + T + ")(.*)$", "i"),
2666      Za = { position: "absolute", visibility: "hidden", display: "block" },
2667      $a = { letterSpacing: "0", fontWeight: "400" },
2668      _a = ["Webkit", "O", "Moz", "ms"],
2669      ab = d.createElement("div").style;
2670  function bb(a) {
2671      if (a in ab) return a;
2672      var b = a.charAt(0).toUpperCase() + a.slice(1),
2673          c = _a.length;
2674      while (c--) if (((a = _a[c] + b), a in ab)) return a;
2675  }
2676  function cb(a, b) {
2677      for (var c, d, e, f = [], g = 0, h = a.length; h > g; g++)
2678          (d = a[g]),
2679              d.style &&
2680                  ((f[g] = n._data(d, "olddisplay")),
2681                  (c = d.style.display),
2682                  b
2683                      ? (f[g] || "none" !== c || (d.style.display = ""), "" === d.style.display && W(d) && (f[g] = n._data(d, "olddisplay", Ma(d.nodeName))))
2684                      : ((e = W(d)), ((c && "none" !== c) || !e) && n._data(d, "olddisplay", e ? c : n.css(d, "display"))));
2685      for (g = 0; h > g; g++) (d = a[g]), d.style && ((b && "none" !== d.style.display && "" !== d.style.display) || (d.style.display = b ? f[g] || "" : "none"));
2686      return a;
2687  }
2688  function db(a, b, c) {
2689      var d = Ya.exec(b);
2690      return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b;
2691  }
2692  function eb(a, b, c, d, e) {
2693      for (var f = c === (d ? "border" : "content") ? 4 : "width" === b ? 1 : 0, g = 0; 4 > f; f += 2)
2694          "margin" === c && (g += n.css(a, c + V[f], !0, e)),
2695              d
2696                  ? ("content" === c && (g -= n.css(a, "padding" + V[f], !0, e)), "margin" !== c && (g -= n.css(a, "border" + V[f] + "Width", !0, e)))
2697                  : ((g += n.css(a, "padding" + V[f], !0, e)), "padding" !== c && (g += n.css(a, "border" + V[f] + "Width", !0, e)));
2698      return g;
2699  }
2700  function fb(a, b, c) {
2701      var d = !0,
2702          e = "width" === b ? a.offsetWidth : a.offsetHeight,
2703          f = Ra(a),
2704          g = l.boxSizing && "border-box" === n.css(a, "boxSizing", !1, f);
2705      if (0 >= e || null == e) {
2706          if (((e = Sa(a, b, f)), (0 > e || null == e) && (e = a.style[b]), Oa.test(e))) return e;
2707          (d = g && (l.boxSizingReliable() || e === a.style[b])), (e = parseFloat(e) || 0);
2708      }
2709      return e + eb(a, b, c || (g ? "border" : "content"), d, f) + "px";
2710  }
2711  n.extend({
2712      cssHooks: {
2713          opacity: {
2714              get: function (a, b) {
2715                  if (b) {
2716                      var c = Sa(a, "opacity");
2717                      return "" === c ? "1" : c;
2718                  }
2719              },
2720          },
2721      },
2722      cssNumber: { animationIterationCount: !0, columnCount: !0, fillOpacity: !0, flexGrow: !0, flexShrink: !0, fontWeight: !0, lineHeight: !0, opacity: !0, order: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0 },
2723      cssProps: { float: l.cssFloat ? "cssFloat" : "styleFloat" },
2724      style: function (a, b, c, d) {
2725          if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) {
2726              var e,
2727                  f,
2728                  g,
2729                  h = n.camelCase(b),
2730                  i = a.style;
2731              if (((b = n.cssProps[h] || (n.cssProps[h] = bb(h) || h)), (g = n.cssHooks[b] || n.cssHooks[h]), void 0 === c)) return g && "get" in g && void 0 !== (e = g.get(a, !1, d)) ? e : i[b];
2732              if (
2733                  ((f = typeof c),
2734                  "string" === f && (e = U.exec(c)) && e[1] && ((c = X(a, b, e)), (f = "number")),
2735                  null != c &&
2736                      c === c &&
2737                      ("number" === f && (c += (e && e[3]) || (n.cssNumber[h] ? "" : "px")), l.clearCloneStyle || "" !== c || 0 !== b.indexOf("background") || (i[b] = "inherit"), !(g && "set" in g && void 0 === (c = g.set(a, c, d)))))
2738              )
2739                  try {
2740                      i[b] = c;
2741                  } catch (j) {}
2742          }
2743      },
2744      css: function (a, b, c, d) {
2745          var e,
2746              f,
2747              g,
2748              h = n.camelCase(b);
2749          return (
2750              (b = n.cssProps[h] || (n.cssProps[h] = bb(h) || h)),
2751              (g = n.cssHooks[b] || n.cssHooks[h]),
2752              g && "get" in g && (f = g.get(a, !0, c)),
2753              void 0 === f && (f = Sa(a, b, d)),
2754              "normal" === f && b in $a && (f = $a[b]),
2755              "" === c || c ? ((e = parseFloat(f)), c === !0 || isFinite(e) ? e || 0 : f) : f
2756          );
2757      },
2758  }),
2759      n.each(["height", "width"], function (a, b) {
2760          n.cssHooks[b] = {
2761              get: function (a, c, d) {
2762                  return c
2763                      ? Xa.test(n.css(a, "display")) && 0 === a.offsetWidth
2764                          ? Pa(a, Za, function () {
2765                                return fb(a, b, d);
2766                            })
2767                          : fb(a, b, d)
2768                      : void 0;
2769              },
2770              set: function (a, c, d) {
2771                  var e = d && Ra(a);
2772                  return db(a, c, d ? eb(a, b, d, l.boxSizing && "border-box" === n.css(a, "boxSizing", !1, e), e) : 0);
2773              },
2774          };
2775      }),
2776      l.opacity ||
2777          (n.cssHooks.opacity = {
2778              get: function (a, b) {
2779                  return Wa.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? 0.01 * parseFloat(RegExp.$1) + "" : b ? "1" : "";
2780              },
2781              set: function (a, b) {
2782                  var c = a.style,
2783                      d = a.currentStyle,
2784                      e = n.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : "",
2785                      f = (d && d.filter) || c.filter || "";
2786                  (c.zoom = 1), ((b >= 1 || "" === b) && "" === n.trim(f.replace(Va, "")) && c.removeAttribute && (c.removeAttribute("filter"), "" === b || (d && !d.filter))) || (c.filter = Va.test(f) ? f.replace(Va, e) : f + " " + e);
2787              },
2788          }),
2789      (n.cssHooks.marginRight = Ua(l.reliableMarginRight, function (a, b) {
2790          return b ? Pa(a, { display: "inline-block" }, Sa, [a, "marginRight"]) : void 0;
2791      })),
2792      (n.cssHooks.marginLeft = Ua(l.reliableMarginLeft, function (a, b) {
2793          return b
2794              ? (parseFloat(Sa(a, "marginLeft")) ||
2795                    (n.contains(a.ownerDocument, a)
2796                        ? a.getBoundingClientRect().left -
2797                          Pa(
2798                              a,
2799                              {
2800                                  marginLeft: 0,
2801                              },
2802                              function () {
2803                                  return a.getBoundingClientRect().left;
2804                              }
2805                          )
2806                        : 0)) + "px"
2807              : void 0;
2808      })),
2809      n.each({ margin: "", padding: "", border: "Width" }, function (a, b) {
2810          (n.cssHooks[a + b] = {
2811              expand: function (c) {
2812                  for (var d = 0, e = {}, f = "string" == typeof c ? c.split(" ") : [c]; 4 > d; d++) e[a + V[d] + b] = f[d] || f[d - 2] || f[0];
2813                  return e;
2814              },
2815          }),
2816              Na.test(a) || (n.cssHooks[a + b].set = db);
2817      }),
2818      n.fn.extend({
2819          css: function (a, b) {
2820              return Y(
2821                  this,
2822                  function (a, b, c) {
2823                      var d,
2824                          e,
2825                          f = {},
2826                          g = 0;
2827                      if (n.isArray(b)) {
2828                          for (d = Ra(a), e = b.length; e > g; g++) f[b[g]] = n.css(a, b[g], !1, d);
2829                          return f;
2830                      }
2831                      return void 0 !== c ? n.style(a, b, c) : n.css(a, b);
2832                  },
2833                  a,
2834                  b,
2835                  arguments.length > 1
2836              );
2837          },
2838          show: function () {
2839              return cb(this, !0);
2840          },
2841          hide: function () {
2842              return cb(this);
2843          },
2844          toggle: function (a) {
2845              return "boolean" == typeof a
2846                  ? a
2847                      ? this.show()
2848                      : this.hide()
2849                  : this.each(function () {
2850                        W(this) ? n(this).show() : n(this).hide();
2851                    });
2852          },
2853      });
2854  function gb(a, b, c, d, e) {
2855      return new gb.prototype.init(a, b, c, d, e);
2856  }
2857  (n.Tween = gb),
2858      (gb.prototype = {
2859          constructor: gb,
2860          init: function (a, b, c, d, e, f) {
2861              (this.elem = a), (this.prop = c), (this.easing = e || n.easing._default), (this.options = b), (this.start = this.now = this.cur()), (this.end = d), (this.unit = f || (n.cssNumber[c] ? "" : "px"));
2862          },
2863          cur: function () {
2864              var a = gb.propHooks[this.prop];
2865              return a && a.get ? a.get(this) : gb.propHooks._default.get(this);
2866          },
2867          run: function (a) {
2868              var b,
2869                  c = gb.propHooks[this.prop];
2870              return (
2871                  this.options.duration ? (this.pos = b = n.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration)) : (this.pos = b = a),
2872                  (this.now = (this.end - this.start) * b + this.start),
2873                  this.options.step && this.options.step.call(this.elem, this.now, this),
2874                  c && c.set ? c.set(this) : gb.propHooks._default.set(this),
2875                  this
2876              );
2877          },
2878      }),
2879      (gb.prototype.init.prototype = gb.prototype),
2880      (gb.propHooks = {
2881          _default: {
2882              get: function (a) {
2883                  var b;
2884                  return 1 !== a.elem.nodeType || (null != a.elem[a.prop] && null == a.elem.style[a.prop]) ? a.elem[a.prop] : ((b = n.css(a.elem, a.prop, "")), b && "auto" !== b ? b : 0);
2885              },
2886              set: function (a) {
2887                  n.fx.step[a.prop] ? n.fx.step[a.prop](a) : 1 !== a.elem.nodeType || (null == a.elem.style[n.cssProps[a.prop]] && !n.cssHooks[a.prop]) ? (a.elem[a.prop] = a.now) : n.style(a.elem, a.prop, a.now + a.unit);
2888              },
2889          },
2890      }),
2891      (gb.propHooks.scrollTop = gb.propHooks.scrollLeft = {
2892          set: function (a) {
2893              a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now);
2894          },
2895      }),
2896      (n.easing = {
2897          linear: function (a) {
2898              return a;
2899          },
2900          swing: function (a) {
2901              return 0.5 - Math.cos(a * Math.PI) / 2;
2902          },
2903          _default: "swing",
2904      }),
2905      (n.fx = gb.prototype.init),
2906      (n.fx.step = {});
2907  var hb,
2908      ib,
2909      jb = /^(?:toggle|show|hide)$/,
2910      kb = /queueHooks$/;
2911  function lb() {
2912      return (
2913          a.setTimeout(function () {
2914              hb = void 0;
2915          }),
2916          (hb = n.now())
2917      );
2918  }
2919  function mb(a, b) {
2920      var c,
2921          d = { height: a },
2922          e = 0;
2923      for (b = b ? 1 : 0; 4 > e; e += 2 - b) (c = V[e]), (d["margin" + c] = d["padding" + c] = a);
2924      return b && (d.opacity = d.width = a), d;
2925  }
2926  function nb(a, b, c) {
2927      for (var d, e = (qb.tweeners[b] || []).concat(qb.tweeners["*"]), f = 0, g = e.length; g > f; f++) if ((d = e[f].call(c, b, a))) return d;
2928  }
2929  function ob(a, b, c) {
2930      var d,
2931          e,
2932          f,
2933          g,
2934          h,
2935          i,
2936          j,
2937          k,
2938          m = this,
2939          o = {},
2940          p = a.style,
2941          q = a.nodeType && W(a),
2942          r = n._data(a, "fxshow");
2943      c.queue ||
2944          ((h = n._queueHooks(a, "fx")),
2945          null == h.unqueued &&
2946              ((h.unqueued = 0),
2947              (i = h.empty.fire),
2948              (h.empty.fire = function () {
2949                  h.unqueued || i();
2950              })),
2951          h.unqueued++,
2952          m.always(function () {
2953              m.always(function () {
2954                  h.unqueued--, n.queue(a, "fx").length || h.empty.fire();
2955              });
2956          })),
2957          1 === a.nodeType &&
2958              ("height" in b || "width" in b) &&
2959              ((c.overflow = [p.overflow, p.overflowX, p.overflowY]),
2960              (j = n.css(a, "display")),
2961              (k = "none" === j ? n._data(a, "olddisplay") || Ma(a.nodeName) : j),
2962              "inline" === k && "none" === n.css(a, "float") && (l.inlineBlockNeedsLayout && "inline" !== Ma(a.nodeName) ? (p.zoom = 1) : (p.display = "inline-block"))),
2963          c.overflow &&
2964              ((p.overflow = "hidden"),
2965              l.shrinkWrapBlocks() ||
2966                  m.always(function () {
2967                      (p.overflow = c.overflow[0]), (p.overflowX = c.overflow[1]), (p.overflowY = c.overflow[2]);
2968                  }));
2969      for (d in b)
2970          if (((e = b[d]), jb.exec(e))) {
2971              if ((delete b[d], (f = f || "toggle" === e), e === (q ? "hide" : "show"))) {
2972                  if ("show" !== e || !r || void 0 === r[d]) continue;
2973                  q = !0;
2974              }
2975              o[d] = (r && r[d]) || n.style(a, d);
2976          } else j = void 0;
2977      if (n.isEmptyObject(o)) "inline" === ("none" === j ? Ma(a.nodeName) : j) && (p.display = j);
2978      else {
2979          r ? "hidden" in r && (q = r.hidden) : (r = n._data(a, "fxshow", {})),
2980              f && (r.hidden = !q),
2981              q
2982                  ? n(a).show()
2983                  : m.done(function () {
2984                        n(a).hide();
2985                    }),
2986              m.done(function () {
2987                  var b;
2988                  n._removeData(a, "fxshow");
2989                  for (b in o) n.style(a, b, o[b]);
2990              });
2991          for (d in o) (g = nb(q ? r[d] : 0, d, m)), d in r || ((r[d] = g.start), q && ((g.end = g.start), (g.start = "
2991width" === d || "height" === d ? 1 : 0)));
2992      }
2993  }
2994  function pb(a, b) {
2995      var c, d, e, f, g;
2996      for (c in a)
2997          if (((d = n.camelCase(c)), (e = b[d]), (f = a[c]), n.isArray(f) && ((e = f[1]), (f = a[c] = f[0])), c !== d && ((a[d] = f), delete a[c]), (g = n.cssHooks[d]), g && "expand" in g)) {
2998              (f = g.expand(f)), delete a[d];
2999              for (c in f) c in a || ((a[c] = f[c]), (b[c] = e));
3000          } else b[d] = e;
3001  }
3002  function qb(a, b, c) {
3003      var d,
3004          e,
3005          f = 0,
3006          g = qb.prefilters.length,
3007          h = n.Deferred().always(function () {
3008              delete i.elem;
3009          }),
3010          i = function () {
3011              if (e) return !1;
3012              for (var b = hb || lb(), c = Math.max(0, j.startTime + j.duration - b), d = c / j.duration || 0, f = 1 - d, g = 0, i = j.tweens.length; i > g; g++) j.tweens[g].run(f);
3013              return h.notifyWith(a, [j, f, c]), 1 > f && i ? c : (h.resolveWith(a, [j]), !1);
3014          },
3015          j = h.promise({
3016              elem: a,
3017              props: n.extend({}, b),
3018              opts: n.extend(!0, { specialEasing: {}, easing: n.easing._default }, c),
3019              originalProperties: b,
3020              originalOptions: c,
3021              startTime: hb || lb(),
3022              duration: c.duration,
3023              tweens: [],
3024              createTween: function (b, c) {
3025                  var d = n.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing);
3026                  return j.tweens.push(d), d;
3027              },
3028              stop: function (b) {
3029                  var c = 0,
3030                      d = b ? j.tweens.length : 0;
3031                  if (e) return this;
3032                  for (e = !0; d > c; c++) j.tweens[c].run(1);
3033                  return b ? (h.notifyWith(a, [j, 1, 0]), h.resolveWith(a, [j, b])) : h.rejectWith(a, [j, b]), this;
3034              },
3035          }),
3036          k = j.props;
3037      for (pb(k, j.opts.specialEasing); g > f; f++) if ((d = qb.prefilters[f].call(j, a, k, j.opts))) return n.isFunction(d.stop) && (n._queueHooks(j.elem, j.opts.queue).stop = n.proxy(d.stop, d)), d;
3038      return (
3039          n.map(k, nb, j),
3040          n.isFunction(j.opts.start) && j.opts.start.call(a, j),
3041          n.fx.timer(n.extend(i, { elem: a, anim: j, queue: j.opts.queue })),
3042          j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always)
3043      );
3044  }
3045  (n.Animation = n.extend(qb, {
3046      tweeners: {
3047          "*": [
3048              function (a, b) {
3049                  var c = this.createTween(a, b);
3050                  return X(c.elem, a, U.exec(b), c), c;
3051              },
3052          ],
3053      },
3054      tweener: function (a, b) {
3055          n.isFunction(a) ? ((b = a), (a = ["*"])) : (a = a.match(G));
3056          for (var c, d = 0, e = a.length; e > d; d++) (c = a[d]), (qb.tweeners[c] = qb.tweeners[c] || []), qb.tweeners[c].unshift(b);
3057      },
3058      prefilters: [ob],
3059      prefilter: function (a, b) {
3060          b ? qb.prefilters.unshift(a) : qb.prefilters.push(a);
3061      },
3062  })),
3063      (n.speed = function (a, b, c) {
3064          var d = a && "object" == typeof a ? n.extend({}, a) : { complete: c || (!c && b) || (n.isFunction(a) && a), duration: a, easing: (c && b) || (b && !n.isFunction(b) && b) };
3065          return (
3066              (d.duration = n.fx.off ? 0 : "number" == typeof d.duration ? d.duration : d.duration in n.fx.speeds ? n.fx.speeds[d.duration] : n.fx.speeds._default),
3067              (null != d.queue && d.queue !== !0) || (d.queue = "fx"),
3068              (d.old = d.complete),
3069              (d.complete = function () {
3070                  n.isFunction(d.old) && d.old.call(this), d.queue && n.dequeue(this, d.queue);
3071              }),
3072              d
3073          );
3074      }),
3075      n.fn.extend({
3076          fadeTo: function (a, b, c, d) {
3077              return this.filter(W).css("opacity", 0).show().end().animate({ opacity: b }, a, c, d);
3078          },
3079          animate: function (a, b, c, d) {
3080              var e = n.isEmptyObject(a),
3081                  f = n.speed(b, c, d),
3082                  g = function () {
3083                      var b = qb(this, n.extend({}, a), f);
3084                      (e || n._data(this, "finish")) && b.stop(!0);
3085                  };
3086              return (g.finish = g), e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g);
3087          },
3088          stop: function (a, b, c) {
3089              var d = function (a) {
3090                  var b = a.stop;
3091                  delete a.stop, b(c);
3092              };
3093              return (
3094                  "string" != typeof a && ((c = b), (b = a), (a = void 0)),
3095                  b && a !== !1 && this.queue(a || "fx", []),
3096                  this.each(function () {
3097                      var b = !0,
3098                          e = null != a && a + "queueHooks",
3099                          f = n.timers,
3100                          g = n._data(this);
3101                      if (e) g[e] && g[e].stop && d(g[e]);
3102                      else for (e in g) g[e] && g[e].stop && kb.test(e) && d(g[e]);
3103                      for (e = f.length; e--; ) f[e].elem !== this || (null != a && f[e].queue !== a) || (f[e].anim.stop(c), (b = !1), f.splice(e, 1));
3104                      (!b && c) || n.dequeue(this, a);
3105                  })
3106              );
3107          },
3108          finish: function (a) {
3109              return (
3110                  a !== !1 && (a = a || "fx"),
3111                  this.each(function () {
3112                      var b,
3113                          c = n._data(this),
3114                          d = c[a + "queue"],
3115                          e = c[a + "queueHooks"],
3116                          f = n.timers,
3117                          g = d ? d.length : 0;
3118                      for (c.finish = !0, n.queue(this, a, []), e && e.stop && e.stop.call(this, !0), b = f.length; b--; ) f[b].elem === this && f[b].queue === a && (f[b].anim.stop(!0), f.splice(b, 1));
3119                      for (b = 0; g > b; b++) d[b] && d[b].finish && d[b].finish.call(this);
3120                      delete c.finish;
3121                  })
3122              );
3123          },
3124      }),
3125      n.each(["toggle", "show", "hide"], function (a, b) {
3126          var c = n.fn[b];
3127          n.fn[b] = function (a, d, e) {
3128              return null == a || "boolean" == typeof a ? c.apply(this, arguments) : this.animate(mb(b, !0), a, d, e);
3129          };
3130      }),
3131      n.each({ slideDown: mb("show"), slideUp: mb("hide"), slideToggle: mb("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function (a, b) {
3132          n.fn[a] = function (a, c, d) {
3133              return this.animate(b, a, c, d);
3134          };
3135      }),
3136      (n.timers = []),
3137      (n.fx.tick = function () {
3138          var a,
3139              b = n.timers,
3140              c = 0;
3141          for (hb = n.now(); c < b.length; c++) (a = b[c]), a() || b[c] !== a || b.splice(c--, 1);
3142          b.length || n.fx.stop(), (hb = void 0);
3143      }),
3144      (n.fx.timer = function (a) {
3145          n.timers.push(a), a() ? n.fx.start() : n.timers.pop();
3146      }),
3147      (n.fx.interval = 13),
3148      (n.fx.start = function () {
3149          ib || (ib = a.setInterval(n.fx.tick, n.fx.interval));
3150      }),
3151      (n.fx.stop = function () {
3152          a.clearInterval(ib), (ib = null);
3153      }),
3154      (n.fx.speeds = { slow: 600, fast: 200, _default: 400 }),
3155      (n.fn.delay = function (b, c) {
3156          return (
3157              (b = n.fx ? n.fx.speeds[b] || b : b),
3158              (c = c || "fx"),
3159              this.queue(c, function (c, d) {
3160                  var e = a.setTimeout(c, b);
3161                  d.stop = function () {
3162                      a.clearTimeout(e);
3163                  };
3164              })
3165          );
3166      }),
3167      (function () {
3168          var a,
3169              b = d.createElement("input"),
3170              c = d.createElement("div"),
3171              e = d.createElement("select"),
3172              f = e.appendChild(d.createElement("option"));
3173          (c = d.createElement("div")),
3174              c.setAttribute("className", "t"),
3175              (c.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"),
3176              (a = c.getElementsByTagName("a")[0]),
3177              b.setAttribute("type", "checkbox"),
3178              c.appendChild(b),
3179              (a = c.getElementsByTagName("a")[0]),
3180              (a.style.cssText = "top:1px"),
3181              (l.getSetAttribute = "t" !== c.className),
3182              (l.style = /top/.test(a.getAttribute("style"))),
3183              (l.hrefNormalized = "/a" === a.getAttribute("href")),
3184              (l.checkOn = !!b.value),
3185              (l.optSelected = f.selected),
3186              (l.enctype = !!d.createElement("form").enctype),
3187              (e.disabled = !0),
3188              (l.optDisabled = !f.disabled),
3189              (b = d.createElement("input")),
3190              b.setAttribute("value", ""),
3191              (l.input = "" === b.getAttribute("value")),
3192              (b.value = "t"),
3193              b.setAttribute("type", "radio"),
3194              (l.radioValue = "t" === b.value);
3195      })();
3196  var rb = /\r/g,
3197      sb = /[\x20\t\r\n\f]+/g;
3198  n.fn.extend({
3199      val: function (a) {
3200          var b,
3201              c,
3202              d,
3203              e = this[0];
3204          {
3205              if (arguments.length)
3206                  return (
3207                      (d = n.isFunction(a)),
3208                      this.each(function (c) {
3209                          var e;
3210                          1 === this.nodeType &&
3211                              ((e = d ? a.call(this, c, n(this).val()) : a),
3212                              null == e
3213                                  ? (e = "")
3214                                  : "number" == typeof e
3215                                  ? (e += "")
3216                                  : n.isArray(e) &&
3217                                    (e = n.map(e, function (a) {
3218                                        return null == a ? "" : a + "";
3219                                    })),
3220                              (b = n.valHooks[this.type] || n.valHooks[this.nodeName.toLowerCase()]),
3221                              (b && "set" in b && void 0 !== b.set(this, e, "value")) || (this.value = e));
3222                      })
3223                  );
3224              if (e) return (b = n.valHooks[e.type] || n.valHooks[e.nodeName.toLowerCase()]), b && "get" in b && void 0 !== (c = b.get(e, "value")) ? c : ((c = e.value), "string" == typeof c ? c.replace(rb, "") : null == c ? "" : c);
3225          }
3226      },
3227  }),
3228      n.extend({
3229          valHooks: {
3230              option: {
3231                  get: function (a) {
3232                      var b = n.find.attr(a, "value");
3233                      return null != b ? b : n.trim(n.text(a)).replace(sb, " ");
3234                  },
3235              },
3236              select: {
3237                  get: function (a) {
3238                      for (var b, c, d = a.options, e = a.selectedIndex, f = "select-one" === a.type || 0 > e, g = f ? null : [], h = f ? e + 1 : d.length, i = 0 > e ? h : f ? e : 0; h > i; i++)
3239                          if (((c = d[i]), (c.selected || i === e) && (l.optDisabled ? !c.disabled : null === c.getAttribute("disabled")) && (!c.parentNode.disabled || !n.nodeName(c.parentNode, "optgroup")))) {
3240                              if (((b = n(c).val()), f)) return b;
3241                              g.push(b);
3242                          }
3243                      return g;
3244                  },
3245                  set: function (a, b) {
3246                      var c,
3247                          d,
3248                          e = a.options,
3249                          f = n.makeArray(b),
3250                          g = e.length;
3251                      while (g--)
3252                          if (((d = e[g]), n.inArray(n.valHooks.option.get(d), f) > -1))
3253                              try {
3254                                  d.selected = c = !0;
3255                              } catch (h) {
3256                                  d.scrollHeight;
3257                              }
3258                          else d.selected = !1;
3259                      return c || (a.selectedIndex = -1), e;
3260                  },
3261              },
3262          },
3263      }),
3264      n.each(["radio", "checkbox"], function () {
3265          (n.valHooks[this] = {
3266              set: function (a, b) {
3267                  return n.isArray(b) ? (a.checked = n.inArray(n(a).val(), b) > -1) : void 0;
3268              },
3269          }),
3270              l.checkOn ||
3271                  (n.valHooks[this].get = function (a) {
3272                      return null === a.getAttribute("value") ? "on" : a.value;
3273                  });
3274      });
3275  var tb,
3276      ub,
3277      vb = n.expr.attrHandle,
3278      wb = /^(?:checked|selected)$/i,
3279      xb = l.getSetAttribute,
3280      yb = l.input;
3281  n.fn.extend({
3282      attr: function (a, b) {
3283          return Y(this, n.attr, a, b, arguments.length > 1);
3284      },
3285      removeAttr: function (a) {
3286          return this.each(function () {
3287              n.removeAttr(this, a);
3288          });
3289      },
3290  }),
3291      n.extend({
3292          attr: function (a, b, c) {
3293              var d,
3294                  e,
3295                  f = a.nodeType;
3296              if (3 !== f && 8 !== f && 2 !== f)
3297                  return "undefined" == typeof a.getAttribute
3298                      ? n.prop(a, b, c)
3299                      : ((1 === f && n.isXMLDoc(a)) || ((b = b.toLowerCase()), (e = n.attrHooks[b] || (n.expr.match.bool.test(b) ? ub : tb))),
3300                        void 0 !== c
3301                            ? null === c
3302                                ? void n.removeAttr(a, b)
3303                                : e && "set" in e && void 0 !== (d = e.set(a, c, b))
3304                                ? d
3305                                : (a.setAttribute(b, c + ""), c)
3306                            : e && "get" in e && null !== (d = e.get(a, b))
3307                            ? d
3308                            : ((d = n.find.attr(a, b)), null == d ? void 0 : d));
3309          },
3310          attrHooks: {
3311              type: {
3312                  set: function (a, b) {
3313                      if (!l.radioValue && "radio" === b && n.nodeName(a, "input")) {
3314                          var c = a.value;
3315                          return a.setAttribute("type", b), c && (a.value = c), b;
3316                      }
3317                  },
3318              },
3319          },
3320          removeAttr: function (a, b) {
3321              var c,
3322                  d,
3323                  e = 0,
3324                  f = b && b.match(G);
3325              if (f && 1 === a.nodeType)
3326                  while ((c = f[e++])) (d = n.propFix[c] || c), n.expr.match.bool.test(c) ? ((yb && xb) || !wb.test(c) ? (a[d] = !1) : (a[n.camel
3326Case("default-" + c)] = a[d] = !1)) : n.attr(a, c, ""), a.removeAttribute(xb ? c : d);
3327          },
3328      }),
3329      (ub = {
3330          set: function (a, b, c) {
3331              return b === !1 ? n.removeAttr(a, c) : (yb && xb) || !wb.test(c) ? a.setAttribute((!xb && n.propFix[c]) || c, c) : (a[n.camelCase("default-" + c)] = a[c] = !0), c;
3332          },
3333      }),
3334      n.each(n.expr.match.bool.source.match(/\w+/g), function (a, b) {
3335          var c = vb[b] || n.find.attr;
3336          (yb && xb) || !wb.test(b)
3337              ? (vb[b] = function (a, b, d) {
3338                    var e, f;
3339                    return d || ((f = vb[b]), (vb[b] = e), (e = null != c(a, b, d) ? b.toLowerCase() : null), (vb[b] = f)), e;
3340                })
3341              : (vb[b] = function (a, b, c) {
3342                    return c ? void 0 : a[n.camelCase("default-" + b)] ? b.toLowerCase() : null;
3343                });
3344      }),
3345      (yb && xb) ||
3346          (n.attrHooks.value = {
3347              set: function (a, b, c) {
3348                  return n.nodeName(a, "input") ? void (a.defaultValue = b) : tb && tb.set(a, b, c);
3349              },
3350          }),
3351      xb ||
3352          ((tb = {
3353              set: function (a, b, c) {
3354                  var d = a.getAttributeNode(c);
3355                  return d || a.setAttributeNode((d = a.ownerDocument.createAttribute(c))), (d.value = b += ""), "value" === c || b === a.getAttribute(c) ? b : void 0;
3356              },
3357          }),
3358          (vb.id = vb.name = vb.coords = function (a, b, c) {
3359              var d;
3360              return c ? void 0 : (d = a.getAttributeNode(b)) && "" !== d.value ? d.value : null;
3361          }),
3362          (n.valHooks.button = {
3363              get: function (a, b) {
3364                  var c = a.getAttributeNode(b);
3365                  return c && c.specified ? c.value : void 0;
3366              },
3367              set: tb.set,
3368          }),
3369          (n.attrHooks.contenteditable = {
3370              set: function (a, b, c) {
3371                  tb.set(a, "" === b ? !1 : b, c);
3372              },
3373          }),
3374          n.each(["width", "height"], function (a, b) {
3375              n.attrHooks[b] = {
3376                  set: function (a, c) {
3377                      return "" === c ? (a.setAttribute(b, "auto"), c) : void 0;
3378                  },
3379              };
3380          })),
3381      l.style ||
3382          (n.attrHooks.style = {
3383              get: function (a) {
3384                  return a.style.cssText || void 0;
3385              },
3386              set: function (a, b) {
3387                  return (a.style.cssText = b + "");
3388              },
3389          });
3390  var zb = /^(?:input|select|textarea|button|object)$/i,
3391      Ab = /^(?:a|area)$/i;
3392  n.fn.extend({
3393      prop: function (a, b) {
3394          return Y(this, n.prop, a, b, arguments.length > 1);
3395      },
3396      removeProp: function (a) {
3397          return (
3398              (a = n.propFix[a] || a),
3399              this.each(function () {
3400                  try {
3401                      (this[a] = void 0), delete this[a];
3402                  } catch (b) {}
3403              })
3404          );
3405      },
3406  }),
3407      n.extend({
3408          prop: function (a, b, c) {
3409              var d,
3410                  e,
3411                  f = a.nodeType;
3412              if (3 !== f && 8 !== f && 2 !== f)
3413                  return (
3414                      (1 === f && n.isXMLDoc(a)) || ((b = n.propFix[b] || b), (e = n.propHooks[b])),
3415                      void 0 !== c ? (e && "set" in e && void 0 !== (d = e.set(a, c, b)) ? d : (a[b] = c)) : e && "get" in e && null !== (d = e.get(a, b)) ? d : a[b]
3416                  );
3417          },
3418          propHooks: {
3419              tabIndex: {
3420                  get: function (a) {
3421                      var b = n.find.attr(a, "tabindex");
3422                      return b ? parseInt(b, 10) : zb.test(a.nodeName) || (Ab.test(a.nodeName) && a.href) ? 0 : -1;
3423                  },
3424              },
3425          },
3426          propFix: { for: "htmlFor", class: "className" },
3427      }),
3428      l.hrefNormalized ||
3429          n.each(["href", "src"], function (a, b) {
3430              n.propHooks[b] = {
3431                  get: function (a) {
3432                      return a.getAttribute(b, 4);
3433                  },
3434              };
3435          }),
3436      l.optSelected ||
3437          (n.propHooks.selected = {
3438              get: function (a) {
3439                  var b = a.parentNode;
3440                  return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null;
3441              },
3442              set: function (a) {
3443                  var b = a.parentNode;
3444                  b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex);
3445              },
3446          }),
3447      n.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
3448          n.propFix[this.toLowerCase()] = this;
3449      }),
3450      l.enctype || (n.propFix.enctype = "encoding");
3451  var Bb = /[\t\r\n\f]/g;
3452  function Cb(a) {
3453      return n.attr(a, "class") || "";
3454  }
3455  n.fn.extend({
3456      addClass: function (a) {
3457          var b,
3458              c,
3459              d,
3460              e,
3461              f,
3462              g,
3463              h,
3464              i = 0;
3465          if (n.isFunction(a))
3466              return this.each(function (b) {
3467                  n(this).addClass(a.call(this, b, Cb(this)));
3468              });
3469          if ("string" == typeof a && a) {
3470              b = a.match(G) || [];
3471              while ((c = this[i++]))
3472                  if (((e = Cb(c)), (d = 1 === c.nodeType && (" " + e + " ").replace(Bb, " ")))
3472) {
3473                      g = 0;
3474                      while ((f = b[g++])) d.indexOf(" " + f + " ") < 0 && (d += f + " ");
3475                      (h = n.trim(d)), e !== h && n.attr(c, "class", h);
3476                  }
3477          }
3478          return this;
3479      },
3480      removeClass: function (a) {
3481          var b,
3482              c,
3483              d,
3484              e,
3485              f,
3486              g,
3487              h,
3488              i = 0;
3489          if (n.isFunction(a))
3490              return this.each(function (b) {
3491                  n(this).removeClass(a.call(this, b, Cb(this)));
3492              });
3493          if (!arguments.length) return this.attr("class", "");
3494          if ("string" == typeof a && a) {
3495              b = a.match(G) || [];
3496              while ((c = this[i++]))
3497                  if (((e = Cb(c)), (d = 1 === c.nodeType && (" " + e + " ").replace(Bb, " ")))) {
3498                      g = 0;
3499                      while ((f = b[g++])) while (d.indexOf(" " + f + " ") > -1) d = d.replace(" " + f + " ", " ");
3500                      (h = n.trim(d)), e !== h && n.attr(c, "class", h);
3501                  }
3502          }
3503          return this;
3504      },
3505      toggleClass: function (a, b) {
3506          var c = typeof a;
3507          return "boolean" == typeof b && "string" === c
3508              ? b
3509                  ? this.addClass(a)
3510                  : this.removeClass(a)
3511              : n.isFunction(a)
3512              ? this.each(function (c) {
3513                    n(this).toggleClass(a.call(this, c, Cb(this), b), b);
3514                })
3515              : this.each(function () {
3516                    var b, d, e, f;
3517                    if ("string" === c) {
3518                        (d = 0), (e = n(this)), (f = a.match(G) || []);
3519                        while ((b = f[d++])) e.hasClass(b) ? e.removeClass(b) : e.addClass(b);
3520                    } else (void 0 !== a && "boolean" !== c) || ((b = Cb(this)), b && n._data(this, "__className__", b), n.attr(this, "class", b || a === !1 ? "" : n._data(this, "__className__") || ""));
3521                });
3522      },
3523      hasClass: function (a) {
3524          var b,
3525              c,
3526              d = 0;
3527          b = " " + a + " ";
3528          while ((c = this[d++])) if (1 === c.nodeType && (" " + Cb(c) + " ").replace(Bb, " ").indexOf(b) > -1) return !0;
3529          return !1;
3530      },
3531  }),
3532      n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function (
3533          a,
3534          b
3535      ) {
3536          n.fn[b] = function (a, c) {
3537              return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b);
3538          };
3539      }),
3540      n.fn.extend({
3541          hover: function (a, b) {
3542              return this.mouseenter(a).mouseleave(b || a);
3543          },
3544      });
3545  var Db = a.location,
3546      Eb = n.now(),
3547      Fb = /\?/,
3548      Gb = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;
3549  (n.parseJSON = function (b) {
3550      if (a.JSON && a.JSON.parse) return a.JSON.parse(b + "");
3551      var c,
3552          d = null,
3553          e = n.trim(b + "");
3554      return e &&
3555          !n.trim(
3556              e.replace(Gb, function (a, b, e, f) {
3557                  return c && b && (d = 0), 0 === d ? a : ((c = e || b), (d += !f - !e), "");
3558              })
3559          )
3560          ? Function("return " + e)()
3561          : n.error("Invalid JSON: " + b);
3562  }),
3563      (n.parseXML = function (b) {
3564          var c, d;
3565          if (!b || "string" != typeof b) return null;
3566          try {
3567              a.DOMParser ? ((d = new a.DOMParser()), (c = d.parseFromString(b, "text/xml"))) : ((c = new a.ActiveXObject("Microsoft.XMLDOM")), (c.async = "false"), c.loadXML(b));
3568          } catch (e) {
3569              c = void 0;
3570          }
3571          return (c && c.documentElement && !c.getElementsByTagName("parsererror").length) || n.error("Invalid XML: " + b), c;
3572      });
3573  var Hb = /#.*$/,
3574      Ib = /([?&])_=[^&]*/,
3575      Jb = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
3576      Kb = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
3577      Lb = /^(?:GET|HEAD)$/,
3578      Mb = /^\/\//,
3579      Nb = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
3580      Ob = {},
3581      Pb = {},
3582      Qb = "*/".concat("*"),
3583      Rb = Db.href,
3584      Sb = Nb.exec(Rb.toLowerCase()) || [];
3585  function Tb(a) {
3586      return function (b, c) {
3587          "string" != typeof b && ((c = b), (b = "*"));
3588          var d,
3589              e = 0,
3590              f = b.toLowerCase().match(G) || [];
3591          if (n.isFunction(c)) while ((d = f[e++])) "+" === d.charAt(0) ? ((d = d.slice(1) || "*"), (a[d] = a[d] || []).unshift(c)) : (a[d] = a[d] || []).push(c);
3592      };
3593  }
3594  function Ub(a, b, c, d) {
3595      var e = {},
3596          f = a === Pb;
3597      function g(h) {
3598          var i;
3599          return (
3600              (e[h] = !0),
3601              n.each(a[h] || [], function (a, h) {
3602                  var j = h(b, c, d);
3603                  return "string" != typeof j || f || e[j] ? (f ? !(i = j) : void 0) : (b.dataTypes.unshift(j), g(j), !1);
3604              }),
3605              i
3606          );
3607      }
3608      return g(b.dataTypes[0]) || (!e["*"] && g("*"));
3609  }
3610  function Vb(a, b) {
3611      var c,
3612          d,
3613          e = n.ajaxSettings.flatOptions || {};
3614      for (d in b) void 0 !== b[d] && ((e[d] ? a : c || (c = {}))[d] = b[d]);
3615      return c && n.extend(!0, a, c), a;
3616  }
3617  function Wb(a, b, c) {
3618      var d,
3619          e,
3620          f,
3621          g,
3622          h = a.contents,
3623          i = a.dataTypes;
3624      while ("*" === i[0]) i.shift(), void 0 === e && (e = a.mimeType || b.getResponseHeader("Content-Type"));
3625      if (e)
3626          for (g in h)
3627              if (h[g] && h[g].test(e)) {
3628                  i.unshift(g);
3629                  break;
3630              }
3631      if (i[0] in c) f = i[0];
3632      else {
3633          for (g in c) {
3634              if (!i[0] || a.converters[g + " " + i[0]]) {
3635                  f = g;
3636                  break;
3637              }
3638              d || (d = g);
3639          }
3640          f = f || d;
3641      }
3642      return f ? (f !== i[0] && i.unshift(f), c[f]) : void 0;
3643  }
3644  function Xb(a, b, c, d) {
3645      var e,
3646          f,
3647          g,
3648          h,
3649          i,
3650          j = {},
3651          k = a.dataTypes.slice();
3652      if (k[1]) for (g in a.converters) j[g.toLowerCase()] = a.converters[g];
3653      f = k.shift();
3654      while (f)
3655          if ((a.responseFields[f] && (c[a.responseFields[f]] = b), !i && d && a.dataFilter && (b = a.dataFilter(b, a.dataType)), (i = f), (f = k.shift())))
3656              if ("*" === f) f = i;
3657              else if ("*" !== i && i !== f) {
3658                  if (((g = j[i + " " + f] || j["* " + f]), !g))
3659                      for (e in j)
3660                          if (((h = e.split(" ")), h[1] === f && (g = j[i + " " + h[0]] || j["* " + h[0]]))) {
3661                              g === !0 ? (g = j[e]) : j[e] !== !0 && ((f = h[0]), k.unshift(h[1]));
3662                              break;
3663                          }
3664                  if (g !== !0)
3665                      if (g && a["throws"]) b = g(b);
3666                      else
3667                          try {
3668                              b = g(b);
3669                          } catch (l) {
3670                              return { state: "parsererror", error: g ? l : "No conversion from " + i + " to " + f };
3671                          }
3672              }
3673      return { state: "success", data: b };
3674  }
3675  n.extend({
3676      active: 0,
3677      lastModified: {},
3678      etag: {},
3679      ajaxSettings: {
3680          url: Rb,
3681          type: "GET",
3682          isLocal: Kb.test(Sb[1]),
3683          global: !0,
3684          processData: !0,
3685          async: !0,
3686          contentType: "application/x-www-form-urlencoded; charset=UTF-8",
3687          accepts: { "*": Qb, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" },
3688          contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ },
3689          responseFields: { xml: "responseXML", text: "responseText", json: "responseJSON" },
3690          converters: { "* text": String, "text html": !0, "text json": n.parseJSON, "text xml": n.parseXML },
3691          flatOptions: { url: !0, context: !0 },
3692      },
3693      ajaxSetup: function (a, b) {
3694          return b ? Vb(Vb(a, n.ajaxSettings), b) : Vb(n.ajaxSettings, a);
3695      },
3696      ajaxPrefilter: Tb(Ob),
3697      ajaxTransport: Tb(Pb),
3698      ajax: function (b, c) {
3699          "object" == typeof b && ((c = b), (b = void 0)), (c = c || {});
3700          var d,
3701              e,
3702              f,
3703              g,
3704              h,
3705              i,
3706              j,
3707              k,
3708              l = n.ajaxSetup({}, c),
3709              m = l.context || l,
3710              o = l.context && (m.nodeType || m.jquery) ? n(m) : n.event,
3711              p = n.Deferred(),
3712              q = n.Callbacks("once memory"),
3713              r = l.statusCode || {},
3714              s = {},
3715              t = {},
3716              u = 0,
3717              v = "canceled",
3718              w = {
3719                  readyState: 0,
3720                  getResponseHeader: function (a) {
3721                      var b;
3722                      if (2 === u) {
3723                          if (!k) {
3724                              k = {};
3725                              while ((b = Jb.exec(g))) k[b[1].toLowerCase()] = b[2];
3726                          }
3727                          b = k[a.toLowerCase()];
3728                      }
3729                      return null == b ? null : b;
3730                  },
3731                  getAllResponseHeaders: function () {
3732                      return 2 === u ? g : null;
3733                  },
3734                  setRequestHeader: function (a, b) {
3735                      var c = a.toLowerCase();
3736                      return u || ((a = t[c] = t[c] || a), (s[a] = b)), this;
3737                  },
3738                  overrideMimeType: function (a) {
3739                      return u || (l.mimeType = a), this;
3740                  },
3741                  statusCode: function (a) {
3742                      var b;
3743                      if (a)
3744                          if (2 > u) for (b in a) r[b] = [r[b], a[b]];
3745                          else w.always(a[w.status]);
3746                      return this;
3747                  },
3748                  abort: function (a) {
3749                      var b = a || v;
3750                      return j && j.abort(b), y(0, b), this;
3751                  },
3752              };
3753          if (
3754              ((p.promise(w).complete = q.add),
3755              (w.success = w.done),
3756              (w.error = w.fail),
3757              (l.url = ((b || l.url || Rb) + "").replace(Hb, "").replace(Mb, Sb[1] + "//")),
3758              (l.type = c.method || c.type || l.method || l.type),
3759              (l.dataTypes = n
3760                  .trim(l.dataType || "*")
3761                  .toLowerCase()
3762                  .match(G) || [""]),
3763              null == l.crossDomain && ((d = Nb.exec(l.url.toLowerCase())), (l.crossDomain = !(!d || (d[1] === Sb[1] && d[2] === Sb[2] && (d[3] || ("http:" === d[1] ? "80" : "443")) === (Sb[3] || ("http:" === Sb[1] ? "80" : "443")))))),
3764              l.data && l.processData && "string" != typeof l.data && (l.data = n.param(l.data, l.traditional)),
3765              Ub(Ob, l, c, w),
3766              2 === u)
3767          )
3768              return w;
3769          (i = n.event && l.global),
3770              i && 0 === n.active++ && n.event.trigger("ajaxStart"),
3771              (l.type = l.type.toUpperCase()),
3772              (l.hasContent = !Lb.test(l.type)),
3773              (f = l.url),
3774              l.hasContent || (l.data && ((f = l.url += (Fb.test(f) ? "&" : "?") + l.data), delete l.data), l.cache === !1 && (l.url = Ib.test(f) ? f.replace(Ib, "$1_=" + Eb++) : f + (Fb.test(f) ? "&" : "?") + "_=" + Eb++)),
3775              l.ifModified && (n.lastModified[f] && w.setRequestHeader("If-Modified-Since", n.lastModified[f]), n.etag[f] && w.setRequestHeader("If-None-Match", n.etag[f])),
3776              ((l.data && l.hasContent && l.contentType !== !1) || c.contentType) && w.setRequestHeader("Content-Type", l.contentType),
3777              w.setRequestHeader("Accept", l.dataTypes[0] && l.accepts[l.dataTypes[0]] ? l.accepts[l.dataTypes[0]] + ("*" !== l.dataTypes[0] ? ", " + Qb + "; q=0.01" : "") : l.accepts["*"]);
3778          for (e in l.headers) w.setRequestHeader(e, l.headers[e]);
3779          if (l.beforeSend && (l.beforeSend.call(m, w, l) === !1 || 2 === u)) return w.abort();
3780          v = "abort";
3781          for (e in { success: 1, error: 1, complete: 1 }) w[e](l[e]);
3782          if ((j = Ub(Pb, l, c, w))) {
3783              if (((w.readyState = 1), i && o.trigger("ajaxSend", [w, l]), 2 === u)) return w;
3784              l.async &&
3785                  l.timeout > 0 &&
3786                  (h = a.setTimeout(function () {
3787                      w.abort("timeout");
3788                  }, l.timeout));
3789              try {
3790                  (u = 1), j.send(s, y);
3791              } catch (x) {
3792                  if (!(2 > u)) throw x;
3793                  y(-1, x);
3794              }
3795          } else y(-1, "No Transport");
3796          function y(b, c, d, e) {
3797              var k,
3798                  s,
3799                  t,
3800                  v,
3801                  x,
3802                  y = c;
3803              2 !== u &&
3804                  ((u = 2),
3805                  h && a.clearTimeout(h),
3806                  (j = void 0),
3807                  (g = e || ""),
3808                  (w.readyState = b > 0 ? 4 : 0),
3809                  (k = (b >= 200 && 300 > b) || 304 === b),
3810                  d && (v = Wb(l, w, d)),
3811                  (v = Xb(l, v, w, k)),
3812                  k
3813                      ? (l.ifModified && ((x = w.getResponseHeader("Last-Modified")), x && (n.lastModified[f] = x), (x = w.getResponseHeader("etag")), x && (n.etag[f] = x)),
3814                        204 === b || "HEAD" === l.type ? (y = "nocontent") : 304 === b ? (y = "notmodified") : ((y = v.state), (s = v.data), (t = v.error), (k = !t)))
3815                      : ((t = y), (!b && y) || ((y = "error"), 0 > b && (b = 0))),
3816                  (w.status = b),
3817                  (w.statusText = (c || y) + ""),
3818                  k ? p.resolveWith(m, [s, y, w]) : p.rejectWith(m, [w, y, t]),
3819                  w.statusCode(r),
3820                  (r = void 0),
3821                  i && o.trigger(k ? "ajaxSuccess" : "ajaxError", [w, l, k ? s : t]),
3822                  q.fireWith(m, [w, y]),
3823                  i && (o.trigger("ajaxComplete", [w, l]), --n.active || n.event.trigger("ajaxStop")));
3824          }
3825          return w;
3826      },
3827      getJSON: function (a, b, c) {
3828          return n.get(a, b, c, "json");
3829      },
3830      getScript: function (a, b) {
3831          return n.get(a, void 0, b, "script");
3832      },
3833  }),
3834      n.each(["get", "post"], function (a, b) {
3835          n[b] = function (a, c, d, e) {
3836              return n.isFunction(c) && ((e = e || d), (d = c), (c = void 0)), n.ajax(n.extend({ url: a, type: b, dataType: e, data: c, success: d }, n.isPlainObject(a) && a));
3837          };
3838      }),
3839      (n._evalUrl = function (a) {
3840          return n.ajax({ url: a, type: "GET", dataType: "script", cache: !0, async: !1, global: !1, throws: !0 });
3841      }),
3842      n.fn.extend({
3843          wrapAll: function (a) {
3844              if (n.isFunction(a))
3845                  return this.each(function (b) {
3846                      n(this).wrapAll(a.call(this, b));
3847                  });
3848              if (this[0]) {
3849                  var b = n(a, this[0].ownerDocument).eq(0).clone(!0);
3850                  this[0].parentNode && b.insertBefore(this[0]),
3851                      b
3852                          .map(function () {
3853                              var a = this;
3854                              while (a.firstChild && 1 === a.firstChild.nodeType) a = a.firstChild;
3855                              return a;
3856                          })
3857                          .append(this);
3858              }
3859              return this;
3860          },
3861          wrapInner: function (a) {
3862              return n.isFunction(a)
3863                  ? this.each(function (b) {
3864                        n(this).wrapInner(a.call(this, b));
3865                    })
3866                  : this.each(function () {
3867                        var b = n(this),
3868                            c = b.contents();
3869                        c.length ? c.wrapAll(a) : b.append(a);
3870                    });
3871          },
3872          wrap: function (a) {
3873              var b = n.isFunction(a);
3874              return this.each(function (c) {
3875                  n(this).wrapAll(b ? a.call(this, c) : a);
3876              });
3877          },
3878          unwrap: function () {
3879              return this.parent()
3880                  .each(function () {
3881                      n.nodeName(this, "body") || n(this).replaceWith(this.childNodes);
3882                  })
3883                  .end();
3884          },
3885      });
3886  function Yb(a) {
3887      return (a.style && a.style.display) || n.css(a, "display");
3888  }
3889  function Zb(a) {
3890      if (!n.contains(a.ownerDocument || d, a)) return !0;
3891      while (a && 1 === a.nodeType) {
3892          if ("none" === Yb(a) || "hidden" === a.type) return !0;
3893          a = a.parentNode;
3894      }
3895      return !1;
3896  }
3897  (n.expr.filters.hidden = function (a) {
3898      return l.reliableHiddenOffsets() ? a.offsetWidth <= 0 && a.offsetHeight <= 0 && !a.getClientRects().length : Zb(a);
3899  }),
3900      (n.expr.filters.visible = function (a) {
3901          return !n.expr.filters.hidden(a);
3902      });
3903  var $b = /%20/g,
3904      _b = /\[\]$/,
3905      ac = /\r?\n/g,
3906      bc = /^(?:submit|button|image|reset|file)$/i,
3907      cc = /^(?:input|select|textarea|keygen)/i;
3908  function dc(a, b, c, d) {
3909      var e;
3910      if (n.isArray(b))
3911          n.each(b, function (b, e) {
3912              c || _b.test(a) ? d(a, e) : dc(a + "[" + ("object" == typeof e && null != e ? b : "") + "]", e, c, d);
3913          });
3914      else if (c || "object" !== n.type(b)) d(a, b);
3915      else for (e in b) dc(a + "[" + e + "]", b[e], c, d);
3916  }
3917  (n.param = function (a, b) {
3918      var c,
3919          d = [],
3920          e = function (a, b) {
3921              (b = n.isFunction(b) ? b() : null == b ? "" : b), (d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b));
3922          };
3923      if ((void 0 === b && (b = n.ajaxSettings && n.ajaxSettings.traditional), n.isArray(a) || (a.jquery && !n.isPlainObject(a))))
3924          n.each(a, function () {
3925              e(this.name, this.value);
3926          });
3927      else for (c in a) dc(c, a[c], b, e);
3928      return d.join("&").replace($b, "+");
3929  }),
3930      n.fn.extend({
3931          serialize: function () {
3932              return n.param(this.serializeArray());
3933          },
3934          serializeArray: function () {
3935              return this.map(function () {
3936                  var a = n.prop(this, "elements");
3937                  return a ? n.makeArray(a) : this;
3938              })
3939                  .filter(function () {
3940                      var a = this.type;
3941                      return this.name && !n(this).is(":disabled") && cc.test(this.nodeName) && !bc.test(a) && (this.checked || !Z.test(a));
3942                  })
3943                  .map(function (a, b) {
3944                      var c = n(this).val();
3945                      return null == c
3946                          ? null
3947                          : n.isArray(c)
3948                          ? n.map(c, function (a) {
3949                                return { name: b.name, value: a.replace(ac, "\r\n") };
3950                            })
3951                          : { name: b.name, value: c.replace(ac, "\r\n") };
3952                  })
3953                  .get();
3954          },
3955      }),
3956      (n.ajaxSettings.xhr =
3957          void 0 !== a.ActiveXObject
3958              ? function () {
3959                    return this.isLocal ? ic() : d.documentMode > 8 ? hc() : (/^(get|post|head|put|delete|options)$/i.test(this.t
3959ype) && hc()) || ic();
3960                }
3961              : hc);
3962  var ec = 0,
3963      fc = {},
3964      gc = n.ajaxSettings.xhr();
3965  a.attachEvent &&
3966      a.attachEvent("onunload", function () {
3967          for (var a in fc) fc[a](void 0, !0);
3968      }),
3969      (l.cors = !!gc && "withCredentials" in gc),
3970      (gc = l.ajax = !!gc),
3971      gc &&
3972          n.ajaxTransport(function (b) {
3973              if (!b.crossDomain || l.cors) {
3974                  var c;
3975                  return {
3976                      send: function (d, e) {
3977                          var f,
3978                              g = b.xhr(),
3979                              h = ++ec;
3980                          if ((g.open(b.type, b.url, b.async, b.username, b.password), b.xhrFields)) for (f in b.xhrFields) g[f] = b.xhrFields[f];
3981                          b.mimeType && g.overrideMimeType && g.overrideMimeType(b.mimeType), b.crossDomain || d["X-Requested-With"] || (d["X-Requested-With"] = "XMLHttpRequest");
3982                          for (f in d) void 0 !== d[f] && g.setRequestHeader(f, d[f] + "");
3983                          g.send((b.hasContent && b.data) || null),
3984                              (c = function (a, d) {
3985                                  var f, i, j;
3986                                  if (c && (d || 4 === g.readyState))
3987                                      if ((delete fc[h], (c = void 0), (g.onreadystatechange = n.noop), d)) 4 !== g.readyState && g.abort();
3988                                      else {
3989                                          (j = {}), (f = g.status), "string" == typeof g.responseText && (j.text = g.responseText);
3990                                          try {
3991                                              i = g.statusText;
3992                                          } catch (k) {
3993                                              i = "";
3994                                          }
3995                                          f || !b.isLocal || b.crossDomain ? 1223 === f && (f = 204) : (f = j.text ? 200 : 404);
3996                                      }
3997                                  j && e(f, i, j, g.getAllResponseHeaders());
3998                              }),
3999                              b.async ? (4 === g.readyState ? a.setTimeout(c) : (g.onreadystatechange = fc[h] = c)) : c();
4000                      },
4001                      abort: function () {
4002                          c && c(void 0, !0);
4003                      },
4004                  };
4005              }
4006          });
4007  function hc() {
4008      try {
4009          return new a.XMLHttpRequest();
4010      } catch (b) {}
4011  }
4012  function ic() {
4013      try {
4014          return new a.ActiveXObject("Microsoft.XMLHTTP");
4015      } catch (b) {}
4016  }
4017  n.ajaxSetup({
4018      accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" },
4019      contents: { script: /\b(?:java|ecma)script\b/ },
4020      converters: {
4021          "text script": function (a) {
4022              return n.globalEval(a), a;
4023          },
4024      },
4025  }),
4026      n.ajaxPrefilter("script", function (a) {
4027          void 0 === a.cache && (a.cache = !1), a.crossDomain && ((a.type = "GET"), (a.global = !1));
4028      }),
4029      n.ajaxTransport("script", function (a) {
4030          if (a.crossDomain) {
4031              var b,
4032                  c = d.head || n("head")[0] || d.documentElement;
4033              return {
4034                  send: function (e, f) {
4035                      (b = d.createElement("script")),
4036                          (b.async = !0),
4037                          a.scriptCharset && (b.charset = a.scriptCharset),
4038                          (b.src = a.url),
4039                          (b.onload = b.onreadystatechange = function (a, c) {
4040                              (c || !b.readyState || /loaded|complete/.test(b.readyState)) && ((b.onload = b.onreadystatechange = null), b.parentNode && b.parentNode.removeChild(b), (b = null), c || f(200, "success"));
4041                          }),
4042                          c.insertBefore(b, c.firstChild);
4043                  },
4044                  abort: function () {
4045                      b && b.onload(void 0, !0);
4046                  },
4047              };
4048          }
4049      });
4050  var jc = [],
4051      kc = /(=)\?(?=&|$)|\?\?/;
4052  n.ajaxSetup({
4053      jsonp: "callback",
4054      jsonpCallback: function () {
4055          var a = jc.pop() || n.expando + "_" + Eb++;
4056          return (this[a] = !0), a;
4057      },
4058  }),
4059      n.ajaxPrefilter("json jsonp", function (b, c, d) {
4060          var e,
4061              f,
4062              g,
4063              h = b.jsonp !== !1 && (kc.test(b.url) ? "url" : "string" == typeof b.data && 0 === (b.contentType || "").indexOf("application/x-www-form-urlencoded") && kc.test(b.data) && "data");
4064          return h || "jsonp" === b.dataTypes[0]
4065              ? ((e = b.jsonpCallback = n.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback),
4066                h ? (b[h] = b[h].replace(kc, "$1" + e)) : b.jsonp !== !1 && (b.url += (Fb.test(b.url) ? "&" : "?") + b.jsonp + "=" + e),
4067                (b.converters["script json"] = function () {
4068                    return g || n.error(e + " was not called"), g[0];
4069                }),
4070                (b.dataTypes[0] = "json"),
4071                (f = a[e]),
4072                (a[e] = function () {
4073                    g = arguments;
4074                }),
4075                d.always(function () {
4076                    void 0 === f ? n(a).removeProp(e) : (a[e] = f), b[e] && ((b.jsonpCallback = c.jsonpCallback), jc.push(e)), g && n.isFunction(f) && f(g[0]), (g = f = void 0);
4077                }),
4078                "script")
4079              : void 0;
4080      }),
4081      (n.parseHTML = function (a, b, c) {
4082          if (!a || "string" != typeof a) return null;
4083          "boolean" == typeof b && ((c = b), (b = !1)), (b = b || d);
4084          var e = x.exec(a),
4085              f = !c && [];
4086          return e ? [b.createElement(e[1])] : ((e = ja([a], b, f)), f && f.length && n(f).remove(), n.merge([], e.childNodes));
4087      });
4088  var lc = n.fn.load;
4089  (n.fn.load = function (a, b, c) {
4090      if ("string" != typeof a && lc) return lc.apply(this, arguments);
4091      var d,
4092          e,
4093          f,
4094          g = this,
4095          h = a.indexOf(" ");
4096      return (
4097          h > -1 && ((d = n.trim(a.slice(h, a.length))), (a = a.slice(0, h))),
4098          n.isFunction(b) ? ((c = b), (b = void 0)) : b && "object" == typeof b && (e = "POST"),
4099          g.length > 0 &&
4100              n
4101                  .ajax({ url: a, type: e || "GET", dataType: "html", data: b })
4102                  .done(function (a) {
4103                      (f = arguments), g.html(d ? n("<div>").append(n.parseHTML(a)).find(d) : a);
4104                  })
4105                  .always(
4106                      c &&
4107                          function (a, b) {
4108                              g.each(function () {
4109                                  c.apply(this, f || [a.responseText, b, a]);
4110                              });
4111                          }
4112                  ),
4113          this
4114      );
4115  }),
4116      n.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (a, b) {
4117          n.fn[b] = function (a) {
4118              return this.on(b, a);
4119          };
4120      }),
4121      (n.expr.filters.animated = function (a) {
4122          return n.grep(n.timers, function (b) {
4123              return a === b.elem;
4124          }).length;
4125      });
4126  function mc(a) {
4127      return n.isWindow(a) ? a : 9 === a.nodeType ? a.defaultView || a.parentWindow : !1;
4128  }
4129  (n.offset = {
4130      setOffset: function (a, b, c) {
4131          var d,
4132              e,
4133              f,
4134              g,
4135              h,
4136              i,
4137              j,
4138              k = n.css(a, "position"),
4139              l = n(a),
4140              m = {};
4141          "static" === k && (a.style.position = "relative"),
4142              (h = l.offset()),
4143              (f = n.css(a, "top")),
4144              (i = n.css(a, "left")),
4145              (j = ("absolute" === k || "fixed" === k) && n.inArray("auto", [f, i]) > -1),
4146              j ? ((d = l.position()), (g = d.top), (e = d.left)) : ((g = parseFloat(f) || 0), (e = parseFloat(i) || 0)),
4147              n.isFunction(b) && (b = b.call(a, c, n.extend({}, h))),
4148              null != b.top && (m.top = b.top - h.top + g),
4149              null != b.left && (m.left = b.left - h.left + e),
4150              "using" in b ? b.using.call(a, m) : l.css(m);
4151      },
4152  }),
4153      n.fn.extend({
4154          offset: function (a) {
4155              if (arguments.length)
4156                  return void 0 === a
4157                      ? this
4158                      : this.each(function (b) {
4159                            n.offset.setOffset(this, a, b);
4160                        });
4161              var b,
4162                  c,
4163                  d = { top: 0, left: 0 },
4164                  e = this[0],
4165                  f = e && e.ownerDocument;
4166              if (f)
4167                  return (
4168                      (b = f.documentElement),
4169                      n.contains(b, e)
4170                          ? ("undefined" != typeof e.getBoundingClientRect && (d = e.getBoundingClientRect()),
4171                            (c = mc(f)),
4172                            { top: d.top + (c.pageYOffset || b.scrollTop) - (b.clientTop || 0), left: d.left + (c.pageXOffset || b.scrollLeft) - (b.clientLeft || 0) })
4173                          : d
4174                  );
4175          },
4176          position: function () {
4177              if (this[0]) {
4178                  var a,
4179                      b,
4180                      c = { top: 0, left: 0 },
4181                      d = this[0];
4182                  return (
4183                      "fixed" === n.css(d, "position")
4184                          ? (b = d.getBoundingClientRect())
4185                          : ((a = this.offsetParent()), (b = this.offset()), n.nodeName(a[
41850], "html") || (c = a.offset()), (c.top += n.css(a[0], "borderTopWidth", !0)), (c.left += n.css(a[0], "borderLeftWidth", !0))),
4186                      { top: b.top - c.top - n.css(d, "marginTop", !0), left: b.left - c.left - n.css(d, "marginLeft", !0) }
4187                  );
4188              }
4189          },
4190          offsetParent: function () {
4191              return this.map(function () {
4192                  var a = this.offsetParent;
4193                  while (a && !n.nodeName(a, "html") && "static" === n.css(a, "position")) a = a.offsetParent;
4194                  return a || Qa;
4195              });
4196          },
4197      }),
4198      n.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function (a, b) {
4199          var c = /Y/.test(b);
4200          n.fn[a] = function (d) {
4201              return Y(
4202                  this,
4203                  function (a, d, e) {
4204                      var f = mc(a);
4205                      return void 0 === e ? (f ? (b in f ? f[b] : f.document.documentElement[d]) : a[d]) : void (f ? f.scrollTo(c ? n(f).scrollLeft() : e, c ? e : n(f).scrollTop()) : (a[d] = e));
4206                  },
4207                  a,
4208                  d,
4209                  arguments.length,
4210                  null
4211              );
4212          };
4213      }),
4214      n.each(["top", "left"], function (a, b) {
4215          n.cssHooks[b] = Ua(l.pixelPosition, function (a, c) {
4216              return c ? ((c = Sa(a, b)), Oa.test(c) ? n(a).position()[b] + "px" : c) : void 0;
4217          });
4218      }),
4219      n.each({ Height: "height", Width: "width" }, function (a, b) {
4220          n.each(
4221              {
4222                  padding: "inner" + a,
4223                  content: b,
4224                  "": "outer" + a,
4225              },
4226              function (c, d) {
4227                  n.fn[d] = function (d, e) {
4228                      var f = arguments.length && (c || "boolean" != typeof d),
4229                          g = c || (d === !0 || e === !0 ? "margin" : "border");
4230                      return Y(
4231                          this,
4232                          function (b, c, d) {
4233                              var e;
4234                              return n.isWindow(b)
4235                                  ? b.document.documentElement["client" + a]
4236                                  : 9 === b.nodeType
4237                                  ? ((e = b.documentElement), Math.max(b.body["scroll" + a], e["scroll" + a], b.body["offset" + a], e["offset" + a], e["client" + a]))
4238                                  : void 0 === d
4239                                  ? n.css(b, c, g)
4240                                  : n.style(b, c, d, g);
4241                          },
4242                          b,
4243                          f ? d : void 0,
4244                          f,
4245                          null
4246                      );
4247                  };
4248              }
4249          );
4250      }),
4251      n.fn.extend({
4252          bind: function (a, b, c) {
4253              return this.on(a, null, b, c);
4254          },
4255          unbind: function (a, b) {
4256              return this.off(a, null, b);
4257          },
4258          delegate: function (a, b, c, d) {
4259              return this.on(b, a, c, d);
4260          },
4261          undelegate: function (a, b, c) {
4262              return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", c);
4263          },
4264      }),
4265      (n.fn.size = function () {
4266          return this.length;
4267      }),
4268      (n.fn.andSelf = n.fn.addBack),
4269      "function" == typeof define &&
4270          define.amd &&
4271          define("jquery", [], function () {
4272              return n;
4273          });
4274  var nc = a.jQuery,
4275      oc = a.$;
4276  return (
4277      (n.noConflict = function (b) {
4278          return a.$ === n && (a.$ = oc), b && a.jQuery === n && (a.jQuery = nc), n;
4279      }),
4280      b || (a.jQuery = a.$ = n),
4281      n
4282  );
4283});
4284
4285/*! modernizr 3.5.0 (Custom Build) | MIT *
4286* https://modernizr.com/download/?-ambientlight-animation-apng-audio-audiopreload-backgroundblendmode-backgroundcliptext-backgroundsize-bgpositionshorthand-bgpositionxy-bgrepeatspace_bgrepeatround-bgsizecover-borderimage-borderradius-boxshadow-boxsizing-canvasblending-capture-checked-classlist-csscalc-csschunit-csscolumns-cssescape-cssexunit-cssfilters-cssgradients-cssgrid_cssgridlegacy-csshyphens_softhyphens_softhyphensfind-cssinvalid-cssmask-csspointerevents-csspositionsticky-csspseudoanimations-csspseudotransitions-cssreflections-cssremunit-cssresize-cssscrollbar-csstransforms-csstransforms3d-csstransformslevel2-csstransitions-cssvalid-cssvhunit-cssvmaxunit-cssvminunit-cssvwunit-cubicbezierrange-directory-display_runin-displaytable-ellipsis-fileinput-flexbox-flexboxlegacy-flexboxtweener-flexwrap-fontface-formattribute-formvalidation-generatedcontent-hairline-hovermq-hsla-htmlimports-ie8compat-imgcrossorigin-input-inputformaction-inputformenctype-inputformmethod-inputformtarget-inputtypes-jpeg2000-jpegxr-lastchild-localizednumber-mediaqueries-multiplebgs-nthchild-objectfit-opacity-overflowscrolling-placeholder-pointermq-preserve3d-regions-requestautocomplete-rgba-sandbox-scrollsnappoints-seamless-shapes-siblinggeneral-sizes-srcdoc-subpixelfont-supports-svg-target-textalignlast-textshadow-userselect-video-videoautoplay-videocrossorigin-webintents-wrapflow-setclasses !*/
4287!(function (A, e, t) {
4288  function i(e, t, i) {
4289      var n;
4290      if ("getComputedStyle" in A) {
4291          n = getComputedStyle.call(A, e, t);
4292          var a = A.console;
4293          if (null !== n) i && (n = n.getPropertyValue(i));
4294          else if (a) {
4295              var r = a.error ? "error" : "log";
4296              a[r].call(a, "getComputedStyle returning null, its possible modernizr test results are inaccurate");
4297          }
4298      } else n = !t && e.currentStyle && e.currentStyle[i];
4299      return n;
4300  }
4301  function n(A, e) {
4302      return typeof A === e;
4303  }
4304  function a(A) {
4305      var e = g.className,
4306          t = Modernizr._config.classPrefix || "";
4307      if ((E && (e = e.baseVal), Modernizr._config.enableJSClass)) {
4308          var i = new RegExp("(^|\\s)" + t + "no-js(\\s|$)");
4309          e = e.replace(i, "$1" + t + "js$2");
4310      }
4311      Modernizr._config.enableClasses && ((e += " " + t + A.join(" " + t)), E ? (g.className.baseVal = e) : (g.className = e));
4312  }
4313  function r() {
4314      return "function" != typeof e.createElement ? e.createElement(arguments[0]) : E ? e.createElementNS.call(e, "http://www.w3.org/2000/svg", arguments[0]) : e.createElement.apply(e, arguments);
4315  }
4316  function o(A, e) {
4317      return !!~("" + A).indexOf(e);
4318  }
4319  function w(A, e) {
4320      return A - 1 === e || A === e || A + 1 === e;
4321  }
4322  function d() {
4323      var A = e.body;
4324      return A || ((A = r(E ? "svg" : "body")), (A.fake = !0)), A;
4325  }
4326  function s(A, e) {
4327      if ("object" == typeof A) for (var t in A) y(A, t) && s(t, A[t]);
4328      else {
4329          A = A.toLowerCase();
4330          var i = A.split("."),
4331              n = Modernizr[i[0]];
4332          if ((2 == i.length && (n = n[i[1]]), "undefined" != typeof n)) return Modernizr;
4333          (e = "function" == typeof e ? e() : e),
4334              1 == i.length ? (Modernizr[i[0]] = e) : (!Modernizr[i[0]] || Modernizr[i[0]] instanceof Boolean || (Modernizr[i[0]] = new Boolean(Modernizr[i[0]])), (Modernizr[i[0]][i[1]] = e)),
4335              a([(e && 0 != e ? "" : "no-") + i.join("-")]),
4336              Modernizr._trigger(A, e);
4337      }
4338      return Modernizr;
4339  }
4340  function l(A, t, i, n) {
4341      var a,
4342          o,
4343          w,
4344          s,
4345          l = "modernizr",
4346          D = r("div"),
4347          P = d();
4348      if (parseInt(i, 10)) for (; i--; ) (w = r("div")), (w.id = n ? n[i] : l + (i + 1)), D.appendChild(w);
4349      return (
4350          (a = r("style")),
4351          (a.type = "text/css"),
4352          (a.id = "s" + l),
4353          (P.fake ? P : D).appendChild(a),
4354          P.appendChild(D),
4355          a.styleSheet ? (a.styleSheet.cssText = A) : a.appendChild(e.createTextNode(A)),
4356          (D.id = l),
4357          P.fake && ((P.style.background = ""), (P.style.overflow = "hidden"), (s = g.style.overflow), (g.style.overflow = "hidden"), g.appendChild(P)),
4358          (o = t(D, A)),
4359          P.fake ? (P.parentNode.removeChild(P), (g.style.overflow = s), g.offsetHeight) : D.parentNode.removeChild(D),
4360          !!o
4361      );
4362  }
4363  var D = [],
4364      P = {
4365          _version: "3.5.0",
4366          _config: { classPrefix: "", enableClasses: !0, enableJSClass: !0, usePrefixes: !0 },
4367          _q: [],
4368          on: function (A, e) {
4369              var t = this;
4370              setTimeout(function () {
4371                  e(t[A]);
4372              }, 0);
4373          },
4374          addTest: function (A, e, t) {
4375              D.push({ name: A, fn: e, options: t });
4376          },
4377          addAsyncTest: function (A) {
4378              D.push({ name: null, fn: A });
4379          },
4380      },
4381      Modernizr = function () {};
4382  (Modernizr.prototype = P),
4383      (Modernizr = new Modernizr()),
4384      Modernizr.addTest("ie8compat", !A.addEventListener && !!e.documentMode && 7 === e.documentMode),
4385      Modernizr.addTest("svg", !!e.createElementNS && !!e.createElementNS("http://www.w3.org/2000/svg", "svg").createSVGRect);
4386  var c = A.CSS;
4387  Modernizr.addTest("cssescape", c ? "function" == typeof c.escape : !1);
4388  var u = "CSS" in A && "supports" in A.CSS,
4389      B = "supportsCSS" in A;
4390  Modernizr.addTest("supports", u || B),
4391      Modernizr.addTest("target", function () {
4392          var e = A.document;
4393          if (!("querySelectorAll" in e)) return !1;
4394          try {
4395              return e.querySelectorAll(":target"), !0;
4396          } catch (t) {
4397              return !1;
4398          }
4399      });
4400  var g = e.documentElement;
4401  Modernizr.addTest("classlist", "classList" in g);
4402  var E = "svg" === g.nodeName.toLowerCase();
4403  Modernizr.addTest("audio", function () {
4404      var A = r("audio"),
4405          e = !1;
4406      try {
4407          (e = !!A.canPlayType),
4408              e &&
4409                  ((e = new Boolean(e)),
4410                  (e.ogg = A.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, "")),
4411                  (e.mp3 = A.canPlayType('audio/mpeg; codecs="mp3"').replace(/^no$/, "")),
4412                  (e.opus = A.canPlayType('audio/ogg; codecs="opus"') || A.canPlayType('audio/webm; codecs="opus"').replace(/^no$/, "")),
4413                  (e.wav = A.canPlayType('audio/wav; codecs="1"').replace(/^no$/, "")),
4414                  (e.m4a = (A.canPlayType("audio/x-m4a;") || A.canPlayType("audio/aac;")).replace(/^no$/, "")));
4415      } catch (t) {}
4416      return e;
4417  }),
4418      Modernizr.addTest("video", function () {
4419          var A = r("video"),
4420              e = !1;
4421          try {
4422              (e = !!A.canPlayType),
4423                  e &&
4424                      ((e = new Boolean(e)),
4425                      (e.ogg = A.canPlayType('video/ogg; codecs="theora"').replace(/^no$/, "")),
4426                      (e.h264 = A.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/, "")),
4427                      (e.webm = A.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/, "")),
4428                      (e.vp9 = A.canPlayType('video/webm; codecs="vp9"').replace(/^no$/, "")),
4429                      (e.hls = A.canPlayType('application/x-mpegURL; codecs="avc1.42E01E"').replace(/^no$/, "")));
4430          } catch (t) {}
4431          return e;
4432      }),
4433      Modernizr.addTest("webanimations", "animate" in r("div")),
4434      Modernizr.addTest("bgpositionshorthand", function () {
4435          var A = r("a"),
4436              e = A.style,
4437              t = "right 10px bottom 10px";
4438          return (e.cssText = "background-position: " + t + ";"), e.backgroundPosition === t;
4439      }),
4440      Modernizr.addTest("multiplebgs", function () {
4441          var A = r("a").style;
4442          return (A.cssText = "background:url(https://),url(https://),red url(https://)"), /(url\s*\(.*?){3}/.test(A.background);
4443      }),
4444      Modernizr.addTest("csspointerevents", function () {
4445          var A = r("a").style;
4446          return (A.cssText = "pointer-events:auto"), "auto" === A.pointerEvents;
4447      }),
4448      Modernizr.addTest("cssremunit", function () {
4449          var A = r("a").style;
4450          try {
4451              A.fontSize = "3rem";
4452          } catch (e) {}
4453          return /rem/.test(A.fontSize);
4454      }),
4455      Modernizr.addTest("rgba", function () {
4456          var A = r("a").style;
4457          return (A.cssText = "background-color:rgba(150,255,150,.5)"), ("" + A.backgroundColor).indexOf("rgba") > -1;
4458      }),
4459      Modernizr.addTest("preserve3d", function () {
4460          var e,
4461              t,
4462              i = A.CSS,
4463              n = !1;
4464          return i && i.supports && i.supports("(transform-style: preserve-3d)")
4465              ? !0
4466              : ((e = r("a")),
4467                (t = r("a")),
4468                (e.style.cssText = "display: block; transform-style: preserve-3d; transform-origin: right; transform: rotateY(40deg);"),
4469                (t.style.cssText = "display: block; width: 9px; height: 1px; background: #000; transform-origin: right; transform: rotateY(40deg);"),
4470                e.appendChild(t),
4471                g.appendChild(e),
4472                (n = t.getBoundingClientRect()),
4473                g.removeChild(e),
4474                (n = n.width && n.width < 4));
4475      }),
4476      Modernizr.addTest("capture", "capture" in r("input")),
4477      Modernizr.addTest("fileinput", function () {
4478          if (navigator.userAgent.match(/(Android (1.0|1.1|1.5|1.6|2.0|2.1))|(Windows Phone (OS 7|8.0))|(XBLWP)|(ZuneWP)|(w(eb)?OSBrowser)|(webOS)|(Kindle\/(1.0|2.0|2.5|3.0))
4478/)) return !1;
4479          var A = r("input");
4480          return (A.type = "file"), !A.disabled;
4481      }),
4482      Modernizr.addTest("formattribute", function () {
4483          var A,
4484              t = r("form"),
4485              i = r("input"),
4486              n = r("div"),
4487              a = "formtest" + new Date().getTime(),
4488              o = !1;
4489          t.id = a;
4490          try {
4491              i.setAttribute("form", a);
4492          } catch (w) {
4493              e.createAttribute && ((A = e.createAttribute("form")), (A.nodeValue = a), i.setAttributeNode(A));
4494          }
4495          return n.appendChild(t), n.appendChild(i), g.appendChild(n), (o = t.elements && 1 === t.elements.length && i.form == t), n.parentNode.removeChild(n), o;
4496      }),
4497      Modernizr.addTest("placeholder", "placeholder" in r("input") && "placeholder" in r("textarea")),
4498      Modernizr.addTest("sandbox", "sandbox" in r("iframe")),
4499      Modernizr.addTest("seamless", "seamless" in r("iframe")),
4500      Modernizr.addTest("srcdoc", "srcdoc" in r("iframe")),
4501      Modernizr.addTest("imgcrossorigin", "crossOrigin" in r("img")),
4502      Modernizr.addTest("inputformaction", !!("formAction" in r("input")), { aliases: ["input-formaction"] }),
4503      Modernizr.addTest("inputformenctype", !!("formEnctype" in r("input")), { aliases: ["input-formenctype"] }),
4504      Modernizr.addTest("inputformmethod", !!("formMethod" in r("input"))),
4505      Modernizr.addTest("inputformtarget", !!("formtarget" in r("input")), { aliases: ["input-formtarget"] }),
4506      Modernizr.addTest("videocrossorigin", "crossOrigin" in r("video"));
4507  var p = (function () {
4508      function A(A, e) {
4509          var n;
4510          return A
4511              ? ((e && "string" != typeof e) || (e = r(e || "div")),
4512                (A = "on" + A),
4513                (n = A in e),
4514                !n && i && (e.setAttribute || (e = r("div")), e.setAttribute(A, ""), (n = "function" == typeof e[A]), e[A] !== t && (e[A] = t), e.removeAttribute(A)),
4515                n)
4516              : !1;
4517      }
4518      var i = !("onblur" in e.documentElement);
4519      return A;
4520  })();
4521  (P.hasEvent = p), Modernizr.addTest("ambientlight", p("devicelight", A));
4522  var Q = r("input"),
4523      v = "autocomplete autofocus list placeholder max min multiple pattern required step".split(" "),
4524      f = {};
4525  Modernizr.input = (function (e) {
4526      for (var t = 0, i = e.length; i > t; t++) f[e[t]] = !!(e[t] in Q);
4527      return f.list && (f.list = !(!r("datalist") || !A.HTMLDataListElement)), f;
4528  })(v);
4529  var m = "search tel url email datetime date month week time datetime-local number range color".split(" "),
4530      h = {};
4531  (Modernizr.inputtypes = (function (A) {
4532      for (var i, n, a, r = A.length, o = "1)", w = 0; r > w; w++)
4533          Q.setAttribute("type", (i = A[w])),
4534              (a = "text" !== Q.type && "style" in Q),
4535              a &&
4536                  ((Q.value = o),
4537                  (Q.style.cssText = "position:absolute;visibility:hidden;"),
4538                  /^range$/.test(i) && Q.style.WebkitAppearance !== t
4539                      ? (g.appendChild(Q), (n = e.defaultView), (a = n.getComputedStyle && "textfield" !== n.getComputedStyle(Q, null).WebkitAppearance && 0 !== Q.offsetHeight), g.removeChild(Q))
4540                      : /^(search|tel)$/.test(i) || (a = /^(url|email)$/.test(i) ? Q.checkValidity && Q.checkValidity() === !1 : Q.value != o)),
4541              (h[A[w]] = !!a);
4542      return h;
4543  })(m)),
4544      Modernizr.addTest("canvas", function () {
4545          var A = r("canvas");
4546          return !(!A.getContext || !A.getContext("2d"));
4547      }),
4548      Modernizr.addTest("canvasblending", function () {
4549          if (Modernizr.canvas === !1) return !1;
4550          var A = r("canvas").getContext("2d");
4551          try {
4552              A.globalCompositeOperation = "screen";
4553          } catch (e) {}
4554          return "screen" === A.globalCompositeOperation;
4555      });
4556  var C = P._config.usePrefixes ? " -webkit- -moz- -o- -ms- ".split(" ") : ["", ""];
4557  (P._prefixes = C),
4558      Modernizr.addTest("csscalc", function () {
4559          var A = "width:",
4560              e = "calc(10px);",
4561              t = r("a");
4562          return (t.style.cssText = A + C.join(e + A)), !!t.style.length;
4563      }),
4564      Modernizr.addTest("cubicbezierrange", function () {
4565          var A = r("a");
4566          return (A.style.cssText = C.join("transition-timing-function:cubic-bezier(1,0,0,1.1); ")), !!A.style.length;
4567      }),
4568      Modernizr.addTest("cssgradients", function () {
4569          for (var A, e = "background-image:", t = "gradient(linear,left top,right bottom,from(#9f9),to(white));", i = "", n = 0, a = C.length - 1; a > n; n++)
4570              (A = 0 === n ? "to " : ""), (i += e + C[n] + "linear-gradient(" + A + "left top, #9f9, white);");
4571          Modernizr._config.usePrefixes && (i += e + "-webkit-" + t);
4572          var o = r("a"),
4573              w = o.style;
4574          return (w.cssText = i), ("" + w.backgroundImage).indexOf("gradient") > -1;
4575      }),
4576      Modernizr.addTest("opacity", function () {
4577          var A = r("a").style;
4578          return (A.cssText = C.join("opacity:.55;")), /^0.55$/.test(A.opacity);
4579      }),
4580      Modernizr.addTest("csspositionsticky", function () {
4581          var A = "position:",
4582              e = "sticky",
4583              t = r("a"),
4584              i = t.style;
4585          return (i.cssText = A + C.join(e + ";" + A).slice(0, -A.length)), -1 !== i.position.indexOf(e);
4586      });
4587  var I = { elem: r("modernizr") };
4588  Modernizr._q.push(function () {
4589      delete I.elem;
4590  }),
4591      Modernizr.addTest("csschunit", function () {
4592          var A,
4593              e = I.elem.style;
4594          try {
4595              (e.fontSize = "3ch"), (A = -1 !== e.fontSize.indexOf("ch"));
4596          } catch (t) {
4597              A = !1;
4598          }
4599          return A;
4600      }),
4601      Modernizr.addTest("cssexunit", function () {
4602          var A,
4603              e = I.elem.style;
4604          try {
4605              (e.fontSize = "3ex"), (A = -1 !== e.fontSize.indexOf("ex"));
4606          } catch (t) {
4607              A = !1;
4608          }
4609          return A;
4610      }),
4611      Modernizr.addTest("hsla", function () {
4612          var A = r("a").style;
4613          return (A.cssText = "background-color:hsla(120,40%,100%,.5)"), o(A.backgroundColor, "rgba") || o(A.backgroundColor, "hsla");
4614      });
4615  var y;
4616  !(function () {
4617      var A = {}.hasOwnProperty;
4618      y =
4619          n(A, "undefined") || n(A.call, "undefined")
4620              ? function (A, e) {
4621                    return e in A && n(A.constructor.prototype[e], "undefined");
4622                }
4623              : function (e, t) {
4624                    return A.call(e, t);
4625                };
4626  })(),
4627      (P._l = {}),
4628      (P.on = function (A, e) {
4629          this._l[A] || (this._l[A] = []),
4630              this._l[A].push(e),
4631              Modernizr.hasOwnProperty(A) &&
4632                  setTimeout(function () {
4633                      Modernizr._trigger(A, Modernizr[A]);
4634                  }, 0);
4635      }),
4636      (P._trigger = function (A, e) {
4637          if (this._l[A]) {
4638              var t = this._l[A];
4639              setTimeout(function () {
4640                  var A, i;
4641                  for (A = 0; A < t.length; A++) (i = t[A])(e);
4642              }, 0),
4643                  delete this._l[A];
4644          }
4645      }),
4646      Modernizr._q.push(function () {
4647          P.addTest = s;
4648      }),
4649      s("htmlimports", "import" in r("link")),
4650      Modernizr.addAsyncTest(function () {
4651          function A(i) {
4652              clearTimeout(e);
4653              var a = i !== t && "loadeddata" === i.type ? !0 : !1;
4654              n.removeEventListener("loadeddata", A, !1), s("audiopreload", a), n.parentNode.removeChild(n);
4655          }
4656          var e,
4657              i = 300,
4658              n = r("audio"),
4659              a = n.style;
4660          if (!(Modernizr.audio && "preload" in n)) return void s("audiopreload", !1);
4661          (a.position = "absolute"), (a.height = 0), (a.width = 0);
4662          try {
4663              if (Modernizr.audio.mp3)
4664                  n.src =
4665                      "data:audio/mpeg;base64,//MUxAAB6AXgAAAAAPP+c6nf//yi/6f3//MUxAMAAAIAAAjEcH//0fTX6C9Lf//0//MUxA4BeAIAAAAAAKX2/6zv//+IlR4f//MUxBMCMAH8AAAAABYWalVMQU1FMy45//MUxBUB0AH0AAAAADkuM1VVVVVVVVVV//MUxBgBUATowAAAAFVVVVVVVVVVVVVV";
4666              else if (Modernizr.audio.m4a)
4667                  n.src =
4668                      "data:audio/x-m4a;
4668base64,AAAAGGZ0eXBNNEEgAAACAGlzb21pc28yAAAACGZyZWUAAAAfbWRhdN4EAABsaWJmYWFjIDEuMjgAAAFoAQBHAAACiG1vb3YAAABsbXZoZAAAAAB8JbCAfCWwgAAAA+gAAAAYAAEAAAEAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAG0dHJhawAAAFx0a2hkAAAAD3wlsIB8JbCAAAAAAQAAAAAAAAAYAAAAAAAAAAAAAAAAAQAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAABUG1kaWEAAAAgbWRoZAAAAAB8JbCAfCWwgAAArEQAAAQAVcQAAAAAAC1oZGxyAAAAAAAAAABzb3VuAAAAAAAAAAAAAAAAU291bmRIYW5kbGVyAAAAAPttaW5mAAAAEHNtaGQAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAL9zdGJsAAAAW3N0c2QAAAAAAAAAAQAAAEttcDRhAAAAAAAAAAEAAAAAAAAAAAACABAAAAAArEQAAAAAACdlc2RzAAAAAAMZAAEABBFAFQAAAAABftAAAAAABQISCAYBAgAAABhzdHRzAAAAAAAAAAEAAAABAAAEAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAUc3RzegAAAAAAAAAXAAAAAQAAABRzdGNvAAAAAAAAAAEAAAAoAAAAYHVkdGEAAABYbWV0YQAAAAAAAAAhaGRscgAAAAAAAAAAbWRpcmFwcGwAAAAAAAAAAAAAAAAraWxzdAAAACOpdG9vAAAAG2RhdGEAAAABAAAAAExhdmY1Mi42NC4y";
4669              else if (Modernizr.audio.ogg)
4670                  n.src =
4671                      "data:audio/ogg;base64,T2dnUwACAAAAAAAAAAD/QwAAAAAAAM2LVKsBHgF2b3JiaXMAAAAAAUSsAAAAAAAAgLsAAAAAAAC4AU9nZ1MAAAAAAAAAAAAA/0MAAAEAAADmvOe6Dy3/////////////////MgN2b3JiaXMdAAAAWGlwaC5PcmcgbGliVm9yYmlzIEkgMjAwNzA2MjIAAAAAAQV2b3JiaXMfQkNWAQAAAQAYY1QpRplS0kqJGXOUMUaZYpJKiaWEFkJInXMUU6k515xrrLm1IIQQGlNQKQWZUo5SaRljkCkFmVIQS0kldBI6J51jEFtJwdaYa4tBthyEDZpSTCnElFKKQggZU4wpxZRSSkIHJXQOOuYcU45KKEG4nHOrtZaWY4updJJK5yRkTEJIKYWSSgelU05CSDWW1lIpHXNSUmpB6CCEEEK2IIQNgtCQVQAAAQDAQBAasgoAUAAAEIqhGIoChIasAgAyAAAEoCiO4iiOIzmSY0kWEBqyCgAAAgAQAADAcBRJkRTJsSRL0ixL00RRVX3VNlVV9nVd13Vd13UgNGQVAAABAEBIp5mlGiDCDGQYCA1ZBQAgAAAARijCEANCQ1YBAAABAABiKDmIJrTmfHOOg2Y5aCrF5nRwItXmSW4q5uacc845J5tzxjjnnHOKcmYxaCa05pxzEoNmKWgmtOacc57E5kFrqrTmnHPGOaeDcUYY55xzmrTmQWo21uaccxa0pjlqLsXmnHMi5eZJbS7V5pxzzjnnnHPOOeecc6oXp3NwTjjnnHOi9uZabkIX55xzPhmne3NCOOecc84555xzzjnnnHOC0JBVAAAQAABBGDaGcacgSJ+jgRhFiGnIpAfdo8MkaAxyCqlHo6ORUuoglFTGSSmdIDRkFQAACAAAIYQUUkghhRRSSCGFFFKIIYYYYsgpp5yCCiqppKKKMsoss8wyyyyzzDLrsLPOOuwwxBBDDK20EktNtdVYY62555xrDtJaaa211koppZRSSikIDVkFAIAAABAIGWSQQUYhhRRSiCGmnHLKKaigAkJDVgEAgAAAAgAAADzJc0RHdERHdERHdERHdETHczxHlERJlERJtEzL1ExPFVXVlV1b1mXd9m1hF3bd93Xf93Xj14VhWZZlWZZlWZZlWZZlWZZlWYLQkFUAAAgAAIAQQgghhRRSSCGlGGPMMeegk1BCIDRkFQAACAAgAAAAwFEcxXEkR3IkyZIsSZM0S7M8zdM8TfREURRN01RFV3RF3bRF2ZRN13RN2XRVWbVdWbZt2dZtX5Zt3/d93/d93/d93/d93/d1HQgNWQUASAAA6EiOpEiKpEiO4ziSJAGhIasAABkAAAEAKIqjOI7jSJIkSZakSZ7lWaJmaqZneqqoAqEhqwAAQAAAAQAAAAAAKJriKabiKaLiOaIjSqJlWqKmaq4om7Lruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7rui4QGrIKAJAAANCRHMmRHEmRFEmRHMkBQkNWAQAyAAACAHAMx5AUybEsS9M8zdM8TfRET/RMTxVd0QVCQ1YBAIAAAAIAAAAAADAkw1IsR3M0SZRUS7VUTbVUSxVVT1VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTVN0zRNIDRkJQAABADAYo3B5SAhJSXl3hDCEJOeMSYhtV4hBJGS3jEGFYOeMqIMct5C4xCDHggNWREARAEAAMYgxxBzyDlHqZMSOeeodJQa5xyljlJnKcWYYs0oldhSrI1zjlJHraOUYiwtdpRSjanGAgAAAhwAAAIshEJDVgQAUQAAhDFIKaQUYow5p5xDjCnnmHOGMeYcc44556B0UirnnHROSsQYc445p5xzUjonlXNOSiehAACAAAcAgAALodCQFQFAnACAQZI8T/I0UZQ0TxRFU3RdUTRd1/I81fRMU1U90VRVU1Vt2VRVWZY8zzQ901RVzzRV1VRVWTZVVZZFVdVt03V123RV3ZZt2/ddWxZ2UVVt3VRd2zdV1/Zd2fZ9WdZ1Y/I8VfVM03U903Rl1XVtW3VdXfdMU5ZN15Vl03Vt25VlXXdl2fc103Rd01Vl2XRd2XZlV7ddWfZ903WF35VlX1dlWRh2XfeFW9eV5XRd3VdlVzdWWfZ9W9eF4dZ1YZk8T1U903RdzzRdV3VdX1dd19Y105Rl03Vt2VRdWXZl2fddV9Z1zzRl2XRd2zZdV5ZdWfZ9V5Z13XRdX1dlWfhVV/Z1WdeV4dZt4Tdd1/dVWfaFV5Z14dZ1Ybl1XRg+VfV9U3aF4XRl39eF31luXTiW0XV9YZVt4VhlWTl+4ViW3feVZXRdX1ht2RhWWRaGX/id5fZ943h1XRlu3efMuu8Mx++k+8rT1W1jmX3dWWZfd47hGDq/8OOpqq+brisMpywLv+3rxrP7vrKMruv7qiwLvyrbwrHrvvP8vrAso+z6wmrLwrDatjHcvm4sv3Acy2vryjHrvlG2dXxfeArD83R1XXlmXcf2dXTjRzh+ygAAgAEHAIAAE8pAoSErAoA4AQCPJImiZFmiKFmWKIqm6LqiaLqupGmmqWmeaVqaZ5qmaaqyKZquLGmaaVqeZpqap5mmaJqua5qmrIqmKcumasqyaZqy7LqybbuubNuiacqyaZqybJqmLLuyq9uu7Oq6pFmmqXmeaWqeZ5qmasqyaZquq3meanqeaKqeKKqqaqqqraqqLFueZ5qa6KmmJ4qqaqqmrZqqKsumqtqyaaq2bKqqbbuq7Pqybeu6aaqybaqmLZuqatuu7OqyLNu6L2maaWqeZ5qa55mmaZqybJqqK1uep5qeKKqq5ommaqqqLJumqsqW55mqJ4qq6omea5qqKsumatqqaZq2bKqqLZumKsuubfu+68qybqqqbJuqauumasqybMu+78qq7oqmKcumqtqyaaqyLduy78uyrPuiacqyaaqybaqqLsuybRuzbPu6aJqybaqmLZuqKtuyLfu6LNu678qub6uqrOuyLfu67vqucOu6MLyybPuqrPq6K9u6b+sy2/Z9RNOUZVM1bdtUVVl2Zdn2Zdv2fdE0bVtVVVs2TdW2ZVn2fVm2bWE0Tdk2VVXWTdW0bVmWbWG2ZeF2Zdm3ZVv2ddeVdV/XfePXZd3murLty7Kt+6qr+rbu+8Jw667wCgAAGHAAAAgwoQwUGrISAIgCAACMYYwxCI1SzjkHoVHKOecgZM5BCCGVzDkIIZSSOQehlJQy5yCUklIIoZSUWgshlJRSawUAABQ4AAAE2KApsThAoSErAYBUAACD41iW55miatqyY0meJ4qqqaq27UiW54miaaqqbVueJ4qmqaqu6+ua54miaaqq6+q6aJqmqaqu67q6Lpqiqaqq67qyrpumqqquK7uy7Oumqqqq68quLPvCqrquK8uybevCsKqu68qybNu2b9y6ruu+7/vCka3rui78wjEMRwEA4AkOAEAFNqyOcFI0FlhoyEoAIAMAgDAGIYMQQgYhhJBSSiGllBIAADDgAAAQYEIZKDRkRQAQJwAAGEMppJRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkgppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkqppJRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoplVJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSSimllFJKKaWUUkoppZRSCgCQinAAkHowoQwUGrISAEgFAACMUUopxpyDEDHmGGPQSSgpYsw5xhyUklLlHIQQUmktt8o5CCGk1FJtmXNSWosx5hgz56SkFFvNOYdSUoux5ppr7qS0VmuuNedaWqs115xzzbm0FmuuOdecc8sx15xzzjnnGHPOOeecc84FAOA0OACAHtiwOsJJ0V
4671hgoSErAYBUAAACGaUYc8456BBSjDnnHIQQIoUYc845CCFUjDnnHHQQQqgYc8w5CCGEkDnnHIQQQgghcw466CCEEEIHHYQQQgihlM5BCCGEEEooIYQQQgghhBA6CCGEEEIIIYQQQgghhFJKCCGEEEIJoZRQAABggQMAQIANqyOcFI0FFhqyEgAAAgCAHJagUs6EQY5Bjw1BylEzDUJMOdGZYk5qMxVTkDkQnXQSGWpB2V4yCwAAgCAAIMAEEBggKPhCCIgxAABBiMwQCYVVsMCgDBoc5gHAA0SERACQmKBIu7iALgNc0MVdB0IIQhCCWBxAAQk4OOGGJ97whBucoFNU6iAAAAAAAAwA4AEA4KAAIiKaq7C4wMjQ2ODo8AgAAAAAABYA+AAAOD6AiIjmKiwuMDI0Njg6PAIAAAAAAAAAAICAgAAAAAAAQAAAAICAT2dnUwAE7AwAAAAAAAD/QwAAAgAAADuydfsFAQEBAQEACg4ODg==";
4672              else {
4673                  if (!Modernizr.audio.wav) return void s("audiopreload", !1);
4674                  n.src =
4675                      "data:audio/wav;base64,UklGRvwZAABXQVZFZm10IBAAAAABAAEARKwAAIhYAQACABAAZGF0YdgZAAAAAAEA/v8CAP//AAABAP////8DAPz/BAD9/wEAAAAAAAAAAAABAP7/AgD//wAAAQD//wAAAQD//wAAAQD+/wIA//8AAAAAAAD//wIA/v8BAAAA//8BAAAA//8BAP//AQAAAP//AQD//wEAAAD//wEA//8BAP//AQD//wEA//8BAP//AQD+/wMA/f8DAP3/AgD+/wIA/////wMA/f8CAP7/AgD+/wMA/f8CAP7/AgD//wAAAAAAAAAAAQD+/wIA/v8CAP7/AwD9/wIA/v8BAAEA/v8CAP7/AQAAAAAAAAD//wEAAAD//wIA/f8DAP7/AQD//wEAAAD//wEA//8CAP7/AQD//wIA/v8CAP7/AQAAAAAAAAD//wEAAAAAAAAA//8BAP//AgD9/wQA+/8FAPz/AgAAAP//AgD+/wEAAAD//wIA/v8CAP3/BAD8/wQA/P8DAP7/AwD8/wQA/P8DAP7/AQAAAAAA//8BAP//AgD+/wEAAAD//wIA/v8BAP//AQD//wEAAAD//wEA//8BAAAAAAAAAP//AgD+/wEAAAAAAAAAAAD//wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AgD+/wIA/v8BAP//AQABAP7/AQD//wIA/v8CAP3/AwD/////AgD9/wMA/v8BAP//AQAAAP//AQD//wEA//8BAP//AAABAP//AAABAP//AQD//wAAAAACAP3/AwD9/wIA//8BAP//AQD//wEA//8BAP//AgD9/wMA/v8AAAIA/f8CAAAA/v8EAPv/BAD9/wIAAAD+/wQA+v8HAPr/BAD+/wEAAAD//wIA/f8EAPz/BAD7/wUA/P8EAPz/AwD+/wEAAAD//wEAAAAAAP//AgD8/wUA+/8FAPz/AwD9/wIA//8AAAEA/v8CAP//AQD//wAAAAABAP//AgD9/wMA/f8EAPz/AwD+/wAAAwD7/wUA/P8DAP7/AQAAAP//AgD+/wEAAQD+/wIA/v8BAAEA/v8CAP7/AQAAAP//AgD9/wMA/f8DAP7/AgD+/wEAAAAAAAEA//8AAAEA/v8DAP3/AgD//wEA//8BAP7/AwD9/wMA/v8BAP//AQAAAP//AgD9/wMA/v8BAP//AQAAAP//AgD+/wEAAQD+/wIA/////wIA//8AAAEA/f8DAP//AAABAP////8DAP3/AwD+/wEA//8BAP//AQAAAAAA//8BAP//AQD//wEA//8BAP//AAAAAAEA//8BAP7/AgD//wEA//8AAAAAAAAAAAAAAAD//wIA/v8BAAAA//8BAAEA/v8BAAAA//8DAPz/AwD+/wIA/v8CAP3/AwD+/wEAAAD//wEA//8BAAAA//8BAAAA/v8EAPv/BAD+/wAAAAABAP7/AgD//wAAAAABAP7/AgD//wAAAAAAAAAAAAABAP3/BAD8/wQA/f8BAAAAAAABAP7/AgD+/wIA/v8CAP7/AgD+/wIA/v8BAAAAAAD//wIA/f8DAP7/AAABAP//AAACAPz/BAD9/wIA//8AAP//AwD9/wMA/P8EAP3/AwD9/wIA//8BAP//AQD+/wMA/f8DAP7/AAABAP//AQAAAP//AQD//wIA/f8DAP7/AQAAAP//AQAAAAAA//8CAP7/AQABAP7/AgD+/wEAAQD+/wIA/v8CAP////8CAP7/AgD//wAAAAABAP7/AwD9/wIAAAD+/wMA/f8CAP//AQD+/wMA/f8CAP//AAACAPz/BQD6/wUA/v///wIA/v8CAP3/BAD7/wYA+v8FAPz/AwD/////AgD+/wEAAAD//wEAAAD//wIA/f8DAP7/AQAAAP//AgD//wAA//8BAAAAAAAAAP//AQD//wEA//8AAAIA/f8DAP3/AgAAAP//AQD//wEA//8AAAEA//8BAP////8CAP//AAABAP3/BAD9/wIA/v8BAAEA//8BAP7/AgD//wEA//8AAAEA//8BAP//AAAAAAEA//8BAP7/AgD//wEA//8AAAAAAQD+/wIA/v8BAAAAAAD//wIA/v8BAAAAAAAAAAAAAQD+/wMA/f8CAP//AQD//wIA/f8DAP7/AQD//wEA//8CAP7/AAABAP7/AwD9/wMA/v8AAAEA//8BAAAAAAD//wIA/v8BAAAA//8CAP7/AgD+/wEA//8CAP7/AgD//wAAAAAAAAAAAQD//wEA/v8DAPz/BQD8/wIA//8AAAEAAAD//wEA//8BAP//AQAAAAAA//8BAP//AgD+/wEAAAAAAP//AQD+/wMA/////wEA/v8CAP//AQD//wEA//8AAAEA//8BAAAA/v8EAPz/AwD+/wEAAAAAAAAA//8CAP7/AQD//wEA//8BAP//AAABAP7/AwD9/wIA//8BAP//AQD//wEA//8AAAEA/v8EAPv/BAD9/wIA//8BAP7/AwD9/wIA//8AAAEA//8BAP//AQD//wAAAQD//wEAAAD+/wMA/v8AAAIA/f8DAP7/AQD//wAAAQD+/wMA/f8CAP//AAABAP7/AgD+/wMA/f8CAP7/AQABAP7/AgD+/wIA/v8CAP7/AwD8/wMA//8AAAEA//8AAAAAAAABAP//AQD//wAAAQD//wIA/f8DAP3/AwD+/wAAAgD9/wIA//8AAAEAAAD+/wMA/P8FAPv/BAD9/wIA//8AAP//AgD+/wIA/v8BAAAAAAD//wEAAAAAAP//AQD//wEA//8BAP//AAABAP7/AwD9/wIA//8BAP//AAABAP//AQD//wAAAQD//wEA//8BAP//AAABAAAA//8BAP7/AwD9/wMA/f8DAP3/AgD//wEA//8BAP7/AgD//wAAAgD8/wQA/f8CAP//AQD+/wMA/f8CAP7/AgD//wAAAAAAAAAAAAABAP7/AwD9/wIA/v8DAP3/AwD9/wIA/v8DAPz/BQD7/wQA/f8CAP7/AwD9/wMA/f8CAP//AQAAAP7/AwD+/wEA//8AAAEAAAAAAP//AAABAP//AQAAAP7/AwD9/wMA/f8CAP//AQD//wEA//8AAAIA/f8CAAAA//8BAAAA//8BAAAA/v8EAPv/BAD9/wIA//8AAAEA/v8CAP//AAABAP//AAABAP//AAABAP7/AwD8/wQA/f8CAAAA/v8DAP3/AwD9/wMA/v8BAAAA//8BAAAA//8CAP7/AQAAAAAAAAAAAAAA//8CAP7/AgD+/wIA/v8CAP7/AgD//wAAAQD//wAAAQD//wAAAQD//wAAAQD+/wIA//8AAAAAAQD+/wMA/f8CAP//AQD//wEA//8AAAEA/v8DAP3/AgD//wAAAAABAP7/AwD9/wIA//8AAAEA/v8DAP3/AgD//wAAAAABAP7/AwD8/wMA/v8CAP//AAD//wIA/v8CAP7/AQABAP7/AQAAAP//AgD/////AQD//wEAAAD//wEA/v8EAPv/BAD9/wMA/v8BAAAA//8BAAEA/P8GAPr/BQD8/wMA/v8BAAAA//8CAP7/AQABAP3/BAD7/wYA+/8EAPz/AwD//wEA//8BAP7/BAD8/wMA/v8AAAIA/v8BAAAA//8BAAAA//8BAAAA//8CAP3/AwD+/wAAAgD8/wUA/P8DAP7/AAABAAAAAAD//wEAAAD//wIA/f8DAP7/AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAEA/f8EAPz/AwD/////AgD+/wIA/f8DAP7/AgD+/wEA//8CAP7/AQD//wEAAAAAAP//AQAAAP//AgD9/wMA/v8BAAAA//8BAP//AQAAAP//AAACAP3/BAD7/wQA/v8BAAAA//8BAP//AQAAAP//AQAAAP7/BAD7/wUA+/8EAP3/AgD//wAAAQD+/wIA//8AAAEA/v8CAP//AQD+/wEAAAAAAAAAAAD//wEA//8CAP3/AwD9/wIA//8AAAAAAAAAAAAA//8BAP//AgD+/wEA//8CAP7/AQAAAP//AgD/////AgD/////AgD+/wIA//8AAP//AQABAP7/AgD9/wMA/v8CAP////8BAAAAAAAAAAAA//8CAP////8DAPz/AwD+/wEAAAAAAP//AQD//wEAAAD//wEAAAD+/wQA+/8FAPz/AgAAAP//AgD9/wMA/v8BAAAAAAD//wEAAAD//wIA/v8BAAAAAAD//wIA/v8BAAAA//8BAAAA//8CAP7/AQD//wEA//8BAAAA//8BAP//AAABAP//AQAAAP7/AgD//wEA//8AAAAAAQD+/wMA/P8EAP7///8DAPz/BQD8/wEAAQD+/wMA/v8AAAEA//8BAP//AQD//wEA/v8CAP//AQD//wAAAAABAAAA//8BAP//AQAAAAAA//8BAP//AgD+/wAAAQD//wIA/f8CAP//AQAAAP7/AwD9/wMA/v8BAP//AAABAP//AgD9/wIA//8BAAAA//8BAAAA//8CAP3/AwD+/wEAAAD+/wQA/P8DAP7/AAACAP7/AQAAAP//AQAAAP//AQAAAP//AgD9/wIAAAD//wIA/f8DAP7/AQD//wEA//8CAP7/AQD//wAAAQD//wEA//8AAAAAAQD//wEAAAD9/wUA+/8FAPz/AgD//wAAAQD//wAAAQD+/wMA/f8BAAEA/v8CAP7/AgD+/wIA/v8BAAAAAAAAAAAAAAD//wIA/v8CAP////8CAP7/AgD+/wIA/v8CAP7/AQAAAP//AQAAAP//AQD//wAAAQD//wAAAQD+/wMA/f8CAAAA/v8DAP3/AgAAAP//AQAAAP7/AwD9/wMA/v8BAP//AQD//wEAAAD+/wMA/f8CAAAA/v8CAP//AAAAAAEA//8AAAEA/v8DAP3/AwD9/wIA//8BAP//AgD8/wQA/v8BAAAA/v8CAP//AQD//wAAAAAAAAEA/f8EAPz/BAD9/wIA//8AAAAAAAABAP//AAAAAAAAAAABAP3/BAD9/wIA/v8BAAEA//8AAAAA//8CAP7/AgD9/wQA+/8FAPv/BQD8/wMA/f8DAP3/AwD+/wAAAgD9/wMA/f8CAAAA/v8EAPv/BQD7/wUA/P8DAP///v8DAP3/BAD8/wMA/f8DAP7/AQD//wEAAAD//wEA/v8CAAAA/v8CAP7/AgD//wAAAAAAAAAAAQD+/wIA//8AAAEA/v8DAPz/BAD9/wIA//8AAP//AgD//wEA/v8BAAAAAQD//wAAAAAAAAEA//8AAAEA//8BAP//AAABAP//AQD+/wIA/v8DAPz/BAD8/wQA/f8BAAAAAQD+/wMA/P8DAP//AAAAAAAAAAD//wMA+/8FAP3/AQABAP3/BAD8/wMA/v8BAAAA//8CAP3/AwD+/wEAAQD9/wMA/f8EAPz/BAD7/wQA/v8BAAEA/f8DAP7/AQAAAP//AgD+/wEAAAD//wIA/v8CAP7/AgD+/wEAAQD//wEA/v8CAP7/BAD7/wQA/f8CAAAA//8AAAAAAAABAP//AQD+/wEAAQD+/wMA/f8BAAEA/v8DAPz/AwD/////AwD8/wQA/P8DAP7/AgD//wAA//8BAAAAAAAAAP//AgD+/wEAAAD//wIA/v8BAAAA//8CAP3/AgD//wAAAQD+/wIA/v8BAAAA//8CAP7/AgD+/wEA//8CAP3/BAD7/wQA/v8BAAAA//8AAAEAAAD//wIA/f8DAP7/AgD+/wIA/v8CAP7/AgD+/wEAAAAAAP//AgD9/wMA/v8BAP//AgD9/wMA/v8AAAEA//8BAP//AQD//wEA//8AAAEA/v8EAPz/AgD//wAAAQAAAP//AAABAP//AQD//wEAAAD//wEA//8BAAEA/f8DAP7/AQABAP3/AwD+/wIA/////wEAAAAAAAAAAAD//wIA/v8CAP////8CAP7/AgD//wAA//8CAP3/BAD9/wAAAgD9/wMA/v8BAP//AQAAAP//AQAAAP//AgD9/wMA/f8EAPz/AwD+/wEAAAAAAAAAAAD//wIA/f8EAP3/AAABAAAA//8CAP7/AQAAAP//AQAAAAAA//8BAP//AQAAAP//AQAAAP//AQAAAP//AgD9/wMA/v8BAP//AQAAAP//AQD//wIA/v8CAP3/BAD9/wEAAAD//wEAAQD9/wMA/f8CAAAA/v8DAP3/AgD//wAAAQD+/wIA/v8CAP7/AQAAAP//AgD+/wEAAAAAAP//AwD7/wUA/f8BAAEA/v8BAAEA/v8DAP3/AgD//wEA//8BAP//AQD//wEA//8CAP3/BAD7/wQA/////wIA/v8AAAIA/v8CAP3/BAD7/wUA/P8DAP3/AwD9/wMA/v8AAAIA/v8CAP7/AgD+/wIA//8AAAEA/v8CAP7/AgD//wAAAAD//wEAAAAAAAAA//8BAP7/BAD7/wUA/P8CAAAA//8BAP//AQAAAP//AgD9/wMA/v8BAAAA//8BAAAA//8CAP3/AwD+/wEA//8CAP3/AwD+/wAAAwD8/wIAAAD//wIA/////wIA/v8CAP7/AgD+/wEAAAAAAAAAAAAAAP//AgD+/wIA//8AAAAA//8CAP7/AgD+/wEA//8CAP3/AwD9/wMA/v8BAP7/AwD9/wMA/f8CAP//AQD+/wIA//8BAP//AQD+/wMA/v8BAAAA//8BAAAA//8CAP7/AQAAAP//AgD+/wIA/v8CAP//AAAAAAEA//8BAP//AAABAAAA//8BAP//AQD//wEA//8BAP//AQAAAP//AQD//wEAAAD//wIA/f8CAAAA//8BAAAA//8BAP//AAABAP//AQD//wAAAAAAAAEA/v8CAP//AQD//wAAAAABAP7/AwD9/wIAAAD+/wIA//8BAP//AgD9/wMA/f8DAP7/AgD+/wEAAAAAAAEA/v8CAP7/AgD//wAAAAAAAAAAAAAAAP//AgD/////AgD9/wQA/f8BAAAAAAAAAAEA/f8DAP////8DAP3/AQABAP7/AgD//wAAAQD+/wMA/f8CAP7/AQABAP7/AwD7/wYA+v8FAP3/AQABAP7/AgD+/wMA/f8CAP7/AwD+/wEA//8BAP//AQAAAP7/BQD5/wcA+v8FAPz/AwD+/wIA/v8BAAAA//8DAPv/BQD8/wMA/////wEAAAAAAAAAAAD//wIA/f8DAP7/AQAAAP//AQAAAP//AgD+/wIA/v8BAAEA/f8EAPz/AwD+/wEA//8CAP7/AQD//wEA//8CAP7/AQAAAP//AgD+/wEAAAAAAAAAAAAAAAAAAAD//wIA/f8EAPz/AwD+/wEA//8CAP7/AgD+/wEAAQD+/wEAAQD+/wIA/////wIA//8AAAAAAAAAAAAAAAD//wEAAAAAAP//AgD9/wMA/v8BAP//AQAAAP//AQD//wEA//8BAP//AQD//wEA//8BAP//AQAAAP7/AwD9/wMA/v8BAP7/AwD9/wMA/v8BAP//AAABAP//AQD//wAAAAABAP//AAAAAAAAAQD//wEA/v8CAAAA/v8EAPv/BAD9/wIAAAD+/wMA/P8DAP//AAAAAP//AQD//wIA/f8DAP3/AwD9/wMA/v8BAAAA//8BAAAA//8CAP3/AwD9/wQA+/8FAPv/BQD8/wMA/v8BAAAA//8BAP//AgD+/wEAAAD//wIA/v8BAAEA/f8DAP3/AgAAAP//AQD//wAAAQD//wEA//8BAP//AQD//wEA/v8DAP3/AgAAAP7/AwD9/wIAAAD//wEAAAD//wIA/f8DAP7/AgD9/wQA+/8FAPz/AgAAAP//AgD9/wIA//8BAP//AQD//wEA//8BAP//AQD//wIA/f8DAP3/AgD//wAAAQD+/wIA/v8BAAEA/v8CAP7/AgD+/wMA/P8DAP//AAABAP7/AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEA/v8CAP3/BAD8/wMA/v8BAAAAAAD//wEAAAAAAAAAAAD//wEAAAAAAAAA//8BAP//AgD+/wEA//8CAP3/AwD9/wMA/f8EAPv/BAD+/wAAAQD//wEA//8BAP//AAABAP//AQD//wEAAAD//wEA//8BAP//AgD9/wMA/v8AAAIA/f8DAP7/AAACAP3/AwD+/wEA//8BAP//AQAAAP//AQAAAP7/AwD9/wMA/v8AAAEA//8BAP//AAAAAAEA//8AAAEA/v8CAP//AAAAAAEA/v8DAPz/BAD9/wEAAQD+/wEAAQD9/wQA/P8DAP7/AQAAAAAAAAAAAAAAAAAAAAAAAQD+/wIA/////wIA/v8BAAAA//8BAP//AQD//wEA//8BAAAA/v8EAPz/AwD///7/BAD8/wMA/////wIA/v8CAP////8CAP7/AgD+/wIA/v8CAP////8CAP7/AwD9/wIA/v8CAP//AAABAP7/AwD9/wEAAQD+/wMA/f8CAP//AAAAAAEA/v8DAPz/BAD9/wIA/v8CAP7/AgD//wAAAAD//wIA/v8CAP7/AQAAAAAA//8CAP7/AgD+/wIA/v8CAP7/AwD8/wUA+v8GAPv/AwD//wAAAAAAAAAA//8DAPv/BQD9/wAAAgD9/wMA/v8BAP//AQAAAP//AgD9/wMA/v8BAAAA//8BAAAAAAAAAP//AQAAAAAAAAD//wEA//8CAP3/AwD+/wAAAgD+/wEAAAD//wIA/v8CAP7/AgD/////AwD8/wUA/P8CAP//AQD//wIA/f8DAP3/AwD+/wAAAQD+/wMA/f8DAP3/AgD//wAAAQD//wEA//8BAP7/AwD+/wEA//8AAAEA//8CAPz/BAD9/wIA//8AAAEA/v8DAPz/BAD9/wIA//8AAAEA/v8CAP7/AgD//wEA/f8EAPz/BAD+////AgD//wAAAQD//wAAAQD//wEA//8BAP7/AwD+/wEA";
4676              }
4677          } catch (o) {
4678              return void s("audiopreload", !1);
4679          }
4680          n.setAttribute("preload", "auto"),
4681              (n.style.cssText = "display:none"),
4682              g.appendChild(n),
4683              setTimeout(function () {
4684                  n.addEventListener("loadeddata", A, !1), (e = setTimeout(A, i));
4685              }, 0);
4686      }),
4687      Modernizr.addAsyncTest(function () {
4688          if (!Modernizr.canvas) return !1;
4689          var A = new Image(),
4690              e = r("canvas"),
4691              t = e.getContext("2d");
4692          (A.onload = function () {
4693              s("apng", function () {
4694                  return "undefined" == typeof e.getContext ? !1 : (t.drawImage(A, 0, 0), 0 === t.getImageData(0, 0, 1, 1).data[3]);
4695              });
4696          }),
4697              (A.src =
4698                  "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACGFjVEwAAAABAAAAAcMq2TYAAAANSURBVAiZY2BgYPgPAAEEAQB9ssjfAAAAGmZjVEwAAAAAAAAAAQAAAAEAAAAAAAAAAAD6A+gBAbNU+2sAAAARZmRBVAAAAAEImWNgYGBgAAAABQAB6MzFdgAAAABJRU5ErkJggg==");
4699      }),
4700      Modernizr.addAsyncTest(function () {
4701          var A = new Image();
4702          (A.onload = A.onerror = function () {
4703              s("jpeg2000", 1 == A.width);
4704          }),
4705              (A.src =
4706                  "data:image/jp2;base64,/0//UQAyAAAAAAABAAAAAgAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAEBwEBBwEBBwEBBwEB/1IADAAAAAEAAAQEAAH/XAAEQED/ZAAlAAFDcmVhdGVkIGJ5IE9wZW5KUEVHIHZlcnNpb24gMi4wLjD/kAAKAAAAAABYAAH/UwAJAQAABAQAAf9dAAUBQED/UwAJAgAABAQAAf9dAAUCQED/UwAJAwAABAQAAf9dAAUDQED/k8+kEAGvz6QQAa/PpBABr994EAk//9k=");
4707      }),
4708      Modernizr.addAsyncTest(function () {
4709          var A = new Image();
4710          (A.onload = A.onerror = function () {
4711              s("jpegxr", 1 == A.width, { aliases: ["jpeg-xr"] });
4712          }),
4713              (A.src = "data:image/vnd.ms-photo;base64,SUm8AQgAAAAFAAG8AQAQAAAASgAAAIC8BAABAAAAAQAAAIG8BAABAAAAAQAAAMC8BAABAAAAWgAAAMG8BAABAAAAHwAAAAAAAAAkw91vA07+S7GFPXd2jckNV01QSE9UTwAZAYBxAAAAABP/gAAEb/8AAQAAAQAAAA==");
4714      }),
4715      Modernizr.addAsyncTest(function () {
4716          var A,
4717              e,
4718              t,
4719              i = r("img"),
4720              n = "sizes" in i;
4721          !n && "srcset" in i
4722              ? ((e = "data:image/gif;base64,R0lGODlhAgABAPAAAP///wAAACH5BAAAAAAALAAAAAACAAEAAAICBAoAOw=="),
4723                (A = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),
4724                (t = function () {
4725                    s("sizes", 2 == i.width);
4726                }),
4727                (i.onload = t),
4728                (i.onerror = t),
4729                i.setAttribute("sizes", "9px"),
4730                (i.srcset = A + " 1w," + e + " 8w"),
4731                (i.src = A))
4732              : s("sizes", n);
4733      }),
4734      Modernizr.addAsyncTest(function () {
4735          function A(r) {
4736              n++, clearTimeout(e);
4737              var o = (r && "playing" === r.type) || 0 !== a.currentTime;
4738              return !o && i > n ? void (e = setTimeout(A, t)) : (a.removeEventListener("playing", A, !1), s("videoautoplay", o), void (a.parentNode && a.parentNode.removeChild(a)));
4739          }
4740          var e,
4741              t = 200,
4742              i = 5,
4743              n = 0,
4744              a = r("video"),
4745              o = a.style;
4746          if (!(Modernizr.video && "autoplay" in a)) return void s("videoautoplay", !1);
4747          (o.position = "absolute"), (o.height = 0), (o.width = 0);
4748          try {
4749              if (Modernizr.video.ogg)
4750                  a.src =
4751                      "data:video/ogg;base64,T2dnUwACAAAAAAAAAABmnCATAAAAAHDEixYBKoB0aGVvcmEDAgEAAQABAAAQAAAQAAAAAAAFAAAAAQAAAAAAAAAAAGIAYE9nZ1MAAAAAAAAAAAAAZpwgEwEAAAACrA7TDlj///////////////+QgXRoZW9yYSsAAABYaXBoLk9yZyBsaWJ0aGVvcmEgMS4xIDIwMDkwODIyIChUaHVzbmVsZGEpAQAAABoAAABFTkNPREVSPWZmbXBlZzJ0aGVvcmEtMC4yOYJ0aGVvcmG+zSj3uc1rGLWpSUoQc5zmMYxSlKQhCDGMYhCEIQhAAAAAAAAAAAAAEW2uU2eSyPxWEvx4OVts5ir1aKtUKBMpJFoQ/nk5m41mUwl4slUpk4kkghkIfDwdjgajQYC8VioUCQRiIQh8PBwMhgLBQIg4FRba5TZ5LI/FYS/Hg5W2zmKvVoq1QoEykkWhD+eTmbjWZTCXiyVSmTiSSCGQh8PB2OBqNBgLxWKhQJBGIhCHw8HAyGAsFAiDgUCw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDAwPEhQUFQ0NDhESFRUUDg4PEhQVFRUOEBETFBUVFRARFBUVFRUVEhMUFRUVFRUUFRUVFRUVFRUVFRUVFRUVEAwLEBQZGxwNDQ4SFRwcGw4NEBQZHBwcDhATFhsdHRwRExkcHB4eHRQYGxwdHh4dGxwdHR4eHh4dHR0dHh4eHRALChAYKDM9DAwOExo6PDcODRAYKDlFOA4RFh0zV1A+EhYlOkRtZ00YIzdAUWhxXDFATldneXhlSFxfYnBkZ2MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEhIVGRoaGhoSFBYaGhoaGhUWGRoaGhoaGRoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhESFh8kJCQkEhQYIiQkJCQWGCEkJCQkJB8iJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQREhgvY2NjYxIVGkJjY2NjGBo4Y2NjY2MvQmNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRISEhUXGBkbEhIVFxgZGxwSFRcYGRscHRUXGBkbHB0dFxgZGxwdHR0YGRscHR0dHhkbHB0dHR4eGxwdHR0eHh4REREUFxocIBERFBcaHCAiERQXGhwgIiUUFxocICIlJRcaHCAiJSUlGhwgIiUlJSkcICIlJSUpKiAiJSUlKSoqEBAQFBgcICgQEBQYHCAoMBAUGBwgKDBAFBgcICgwQEAYHCAoMEBAQBwgKDBAQEBgICgwQEBAYIAoMEBAQGCAgAfF5cdH1e3Ow/L66wGmYnfIUbwdUTe3LMRbqON8B+5RJEvcGxkvrVUjTMrsXYhAnIwe0dTJfOYbWrDYyqUrz7dw/JO4hpmV2LsQQvkUeGq1BsZLx+cu5iV0e0eScJ91VIQYrmqfdVSK7GgjOU0oPaPOu5IcDK1mNvnD+K8LwS87f8Jx2mHtHnUkTGAurWZlNQa74ZLSFH9oF6FPGxzLsjQO5Qe0edcpttd7BXBSqMCL4k/4tFrHIPuEQ7m1/uIWkbDMWVoDdOSuRQ9286kvVUlQjzOE6VrNguN4oRXYGkgcnih7t13/9kxvLYKQezwLTrO44sVmMPgMqORo1E0sm1/9SludkcWHwfJwTSybR4LeAz6ugWVgRaY8mV/9SluQmtHrzsBtRF/wPY+X0JuYTs+ltgrXAmlk10xQHmTu9VSIAk1+vcvU4ml2oNzrNhEtQ3CysNP8UeR35wqpKUBdGdZMSjX4WVi8nJpdpHnbhzEIdx7mwf6W1FKAiucMXrWUWVjyRf23chNtR9mIzDoT/6ZLYailAjhFlZuvPtSeZ+2oREubDoWmT3TguY+JHPdRVSLKxfKH3vgNqJ/9emeEYikGXDFNzaLjvTeGAL61mogOoeG3y6oU4rW55ydoj0lUTSR/mmRhPmF86uwIfzp3FtiufQCmppaHDlGE0r2iTzXIw3zBq5hvaTldjG4CPb9wdxAme0SyedVKczJ9AtYbgPOzYKJvZZImsN7ecrxWZg5dR6ZLj/j4qpWsIA+vYwE+Tca9ounMIsrXMB4Stiib2SPQtZv+FVIpfEbzv8ncZoLBXc3YBqTG1HsskTTotZOYTG+oVUjLk6zhP8bg4RhMUNtfZdO7FdpBuXzhJ5Fh8IKlJG7wtD9ik8rWOJxy6iQ3NwzBpQ219mlyv+FLicYs2iJGSE0u2txzed++D61ZWCiHD/cZdQVCqkO2gJpdpNaObhnDfAPrT89RxdWFZ5hO3MseBSIlANppdZNIV/Rwe5eLTDvkfW
4751KzFnH+QJ7m9QWV1KdwnuIwTNtZdJMoXBf74OhRnh2t+OTGL+AVUnIkyYY+QG7g9itHXyF3OIygG2s2kud679ZWKqSFa9n3IHD6MeLv1lZ0XyduRhiDRtrNnKoyiFVLcBm0ba5Yy3fQkDh4XsFE34isVpOzpa9nR8iCpS4HoxG2rJpnRhf3YboVa1PcRouh5LIJv/uQcPNd095ickTaiGBnWLKVWRc0OnYTSyex/n2FofEPnDG8y3PztHrzOLK1xo6RAml2k9owKajOC0Wr4D5x+3nA0UEhK2m198wuBHF3zlWWVKWLN1CHzLClUfuoYBcx4b1llpeBKmbayaR58njtE9onD66lUcsg0Spm2snsb+8HaJRn4dYcLbCuBuYwziB8/5U1C1DOOz2gZjSZtrLJk6vrLF3hwY4Io9xuT/ruUFRSBkNtUzTOWhjh26irLEPx4jPZL3Fo3QrReoGTTM21xYTT9oFdhTUIvjqTkfkvt0bzgVUjq/hOYY8j60IaO/0AzRBtqkTS6R5ellZd5uKdzzhb8BFlDdAcrwkE0rbXTOPB+7Y0FlZO96qFL4Ykg21StJs8qIW7h16H5hGiv8V2Cflau7QVDepTAHa6Lgt6feiEvJDM21StJsmOH/hynURrKxvUpQ8BH0JF7BiyG2qZpnL/7AOU66gt+reLEXY8pVOCQvSsBtqZTNM8bk9ohRcwD18o/WVkbvrceVKRb9I59IEKysjBeTMmmbA21xu/6iHadLRxuIzkLpi8wZYmmbbWi32RVAUjruxWlJ//iFxE38FI9hNKOoCdhwf5fDe4xZ81lgREhK2m1j78vW1CqkuMu/AjBNK210kzRUX/B+69cMMUG5bYrIeZxVSEZISmkzbXOi9yxwIfPgdsov7R71xuJ7rFcACjG/9PzApqFq7wEgzNJm2suWESPuwrQvejj7cbnQxMkxpm21lUYJL0fKmogPPqywn7e3FvB/FCNxPJ85iVUkCE9/tLKx31G4CgNtWTTPFhMvlu8G4/TrgaZttTChljfNJGgOT2X6EqpETy2tYd9cCBI4lIXJ1/3uVUllZEJz4baqGF64yxaZ+zPLYwde8Uqn1oKANtUrSaTOPHkhvuQP3bBlEJ/LFe4pqQOHUI8T8q7AXx3fLVBgSCVpMba55YxN3rv8U1Dv51bAPSOLlZWebkL8vSMGI21lJmmeVxPRwFlZF1CpqCN8uLwymaZyjbXHCRytogPN3o/n74CNykfT+qqRv5AQlHcRxYrC5KvGmbbUwmZY/29BvF6C1/93x4WVglXDLFpmbapmF89HKTogRwqqSlGbu+oiAkcWFbklC6Zhf+NtTLFpn8oWz+HsNRVSgIxZWON+yVyJlE5tq/+GWLTMutYX9ekTySEQPLVNQQ3OfycwJBM0zNtZcse7CvcKI0V/zh16Dr9OSA21MpmmcrHC+6pTAPHPwoit3LHHqs7jhFNRD6W8+EBGoSEoaZttTCZljfduH/fFisn+dRBGAZYtMzbVMwvul/T/crK1NQh8gN0SRRa9cOux6clC0/mDLFpmbarmF8/e6CopeOLCNW6S/IUUg3jJIYiAcDoMcGeRbOvuTPjXR/tyo79LK3kqqkbxkkMRAOB0GODPItnX3Jnxro/25Ud+llbyVVSN4ySGIgHA6DHBnkWzr7kz410f7cqO/Syt5KqpFVJwn6gBEvBM0zNtZcpGOEPiysW8vvRd2R0f7gtjhqUvXL+gWVwHm4XJDBiMpmmZtrLfPwd/IugP5+fKVSysH1EXreFAcEhelGmbbUmZY4Xdo1vQWVnK19P4RuEnbf0gQnR+lDCZlivNM22t1ESmopPIgfT0duOfQrsjgG4tPxli0zJmF5trdL1JDUIUT1ZXSqQDeR4B8mX3TrRro/2McGeUvLtwo6jIEKMkCUXWsLyZROd9P/rFYNtXPBli0z398iVUlVKAjFlY437JXImUTm2r/4ZYtMy61hf16RPJIU9nZ1MABAwAAAAAAAAAZpwgEwIAAABhp658BScAAAAAAADnUFBQXIDGXLhwtttNHDhw5OcpQRMETBEwRPduylKVB0HRdF0A";
4752              else {
4753                  if (!Modernizr.video.h264) return void s("videoautoplay", !1);
4754                  a.src =
4755                      "data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAAAs1tZGF0AAACrgYF//+q3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE0OCByMjYwMSBhMGNkN2QzIC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAxNSAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTMgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MzoweDExMyBtZT1oZXggc3VibWU9NyBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0xIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MSA4eDhkY3Q9MSBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0tMiB0aHJlYWRzPTEgbG9va2FoZWFkX3RocmVhZHM9MSBzbGljZWRfdGhyZWFkcz0wIG5yPTAgZGVjaW1hdGU9MSBpbnRlcmxhY2VkPTAgYmx1cmF5X2NvbXBhdD0wIGNvbnN0cmFpbmVkX2ludHJhPTAgYmZyYW1lcz0zIGJfcHlyYW1pZD0yIGJfYWRhcHQ9MSBiX2JpYXM9MCBkaXJlY3Q9MSB3ZWlnaHRiPTEgb3Blbl9nb3A9MCB3ZWlnaHRwPTIga2V5aW50PTI1MCBrZXlpbnRfbWluPTEwIHNjZW5lY3V0PTQwIGludHJhX3JlZnJlc2g9MCByY19sb29rYWhlYWQ9NDAgcmM9Y3JmIG1idHJlZT0xIGNyZj0yMy4wIHFjb21wPTAuNjAgcXBtaW49MCBxcG1heD02OSBxcHN0ZXA9NCBpcF9yYXRpbz0xLjQwIGFxPTE6MS4wMACAAAAAD2WIhAA3//728P4FNjuZQQAAAu5tb292AAAAbG12aGQAAAAAAAAAAAAAAAAAAAPoAAAAZAABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACGHRyYWsAAABcdGtoZAAAAAMAAAAAAAAAAAAAAAEAAAAAAAAAZAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAgAAAAIAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAAGQAAAAAAAEAAAAAAZBtZGlhAAAAIG1kaGQAAAAAAAAAAAAAAAAAACgAAAAEAFXEAAAAAAAtaGRscgAAAAAAAAAAdmlkZQAAAAAAAAAAAAAAAFZpZGVvSGFuZGxlcgAAAAE7bWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAAA+3N0YmwAAACXc3RzZAAAAAAAAAABAAAAh2F2YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAgACAEgAAABIAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY//8AAAAxYXZjQwFkAAr/4QAYZ2QACqzZX4iIhAAAAwAEAAADAFA8SJZYAQAGaOvjyyLAAAAAGHN0dHMAAAAAAAAAAQAAAAEAAAQAAAAAHHN0c2MAAAAAAAAAAQAAAAEAAAABAAAAAQAAABRzdHN6AAAAAAAAAsUAAAABAAAAFHN0Y28AAAAAAAAAAQAAADAAAABidWR0YQAAAFptZXRhAAAAAAAAACFoZGxyAAAAAAAAAABtZGlyYXBwbAAAAAAAAAAAAAAAAC1pbHN0AAAAJal0b28AAAAdZGF0YQAAAAEAAAAATGF2ZjU2LjQwLjEwMQ==";
4756              }
4757          } catch (w) {
4758              return void s("videoautoplay", !1);
4759          }
4760          a.setAttribute("autoplay", ""),
4761              (a.style.cssText = "display:none"),
4762              g.appendChild(a),
4763              setTimeout(function () {
4764                  a.addEventListener("playing", A, !1), (e = setTimeout(A, t));
4765              }, 0);
4766      });
4767  var V = (P.testStyles = l);
4768  Modernizr.addTest("checked", function () {
4769      return V("#modernizr {position:absolute} #modernizr input {margin-left:10px;} #modernizr :checked {margin-left:20px;
4769display:block}", function (A) {
4770          var e = r("input");
4771          return e.setAttribute("type", "checkbox"), e.setAttribute("checked", "checked"), A.appendChild(e), 20 === e.offsetLeft;
4772      });
4773  }),
4774      V(
4775          "#modernizr{display: table; direction: ltr}#modernizr div{display: table-cell; padding: 10px;}",
4776          function (A) {
4777              var e,
4778                  t = A.childNodes;
4779              (e = t[0].offsetLeft < t[1].offsetLeft), Modernizr.addTest("displaytable", e, { aliases: ["display-table"] });
4780          },
4781          2
4782      );
4783  var R = (function () {
4784      var A = navigator.userAgent,
4785          e = A.match(/w(eb)?osbrowser/gi),
4786          t = A.match(/windows phone/gi) && A.match(/iemobile\/([0-9])+/gi) && parseFloat(RegExp.$1) >= 9;
4787      return e || t;
4788  })();
4789  R
4790      ? Modernizr.addTest("fontface", !1)
4791      : V('@font-face {font-family:"font";src:url("https://")}', function (A, t) {
4792            var i = e.getElementById("smodernizr"),
4793                n = i.sheet || i.styleSheet,
4794                a = n ? (n.cssRules && n.cssRules[0] ? n.cssRules[0].cssText : n.cssText || "") : "",
4795                r = /src/i.test(a) && 0 === a.indexOf(t.split(" ")[0]);
4796            Modernizr.addTest("fontface", r);
4797        }),
4798      V('#modernizr{font:0/0 a}#modernizr:after{content:":)";visibility:hidden;font:7px/1 a}', function (A) {
4799          Modernizr.addTest("generatedcontent", A.offsetHeight >= 6);
4800      }),
4801      Modernizr.addTest("hairline", function () {
4802          return V("#modernizr {border:.5px solid transparent}", function (A) {
4803              return 1 === A.offsetHeight;
4804          });
4805      }),
4806      Modernizr.addTest("cssinvalid", function () {
4807          return V("#modernizr input{height:0;border:0;padding:0;margin:0;width:10px;} #modernizr input:invalid{width:50px;}", function (A) {
4808              var e = r("input");
4809              return (e.required = !0), A.appendChild(e), e.clientWidth > 10;
4810          });
4811      }),
4812      V(
4813          "#modernizr div {width:100px;} #modernizr :last-child{width:200px;display:block}",
4814          function (A) {
4815              Modernizr.addTest("lastchild", A.lastChild.offsetWidth > A.firstChild.offsetWidth);
4816          },
4817          2
4818      ),
4819      V(
4820          "#modernizr div {width:1px;} #modernizr div:nth-child(2n) {width:2px;}",
4821          function (A) {
4822              for (var e = A.getElementsByTagName("div"), t = !0, i = 0; 5 > i; i++) t = t && e[i].offsetWidth === (i % 2) + 1;
4823              Modernizr.addTest("nthchild", t);
4824          },
4825          5
4826      ),
4827      V("#modernizr{overflow: scroll; width: 40px; height: 40px; }#" + C.join("scrollbar{width:10px;} #modernizr::").split("#").slice(1).join("#") + "scrollbar{width:10px;}", function (A) {
4828          Modernizr.addTest("cssscrollbar", "scrollWidth" in A && 30 == A.scrollWidth);
4829      }),
4830      Modernizr.addTest("siblinggeneral", function () {
4831          return V(
4832              "#modernizr div {width:100px;} #modernizr div ~ div {width:200px;display:block}",
4833              function (A) {
4834                  return 200 == A.lastChild.offsetWidth;
4835              },
4836              2
4837          );
4838      }),
4839      V(
4840          "#modernizr{position: absolute; top: -10em; visibility:hidden; font: normal 10px arial;}#subpixel{float: left; font-size: 33.3333%;}",
4841          function (e) {
4842              var t = e.firstChild;
4843              (t.innerHTML = "This is a text written in Arial"), Modernizr.addTest("subpixelfont", A.getComputedStyle ? "44px" !== A.getComputedStyle(t, null).getPropertyValue("width") : !1);
4844          },
4845          1,
4846          ["subpixel"]
4847      ),
4848      Modernizr.addTest("cssvalid", function () {
4849          return V("#modernizr input{height:0;border:0;padding:0;margin:0;width:10px;} #modernizr input:valid{width:50px;}", function (A) {
4850              var e = r("input");
4851              return A.appendChild(e), e.clientWidth > 10;
4852          });
4853      }),
4854      V("#modernizr { height: 50vh; }", function (e) {
4855          var t = parseInt(A.innerHeight / 2, 10),
4856              n = parseInt(i(e, null, "height"), 10);
4857          Modernizr.addTest("cssvhunit", n == t);
4858      }),
4859      V(
4860          "#modernizr1{width: 50vmax}#modernizr2{width:50px;height:50px;overflow:scroll}#modernizr3{position:fixed;top:0;left:0;bottom:0;right:0}",
4861          function (A) {
4862              var e = A.childNodes[2],
4863                  t = A.childNodes[1],
4864                  n = A.childNodes[0],
4865                  a = parseInt((t.offsetWidth - t.clientWidth) / 2, 10),
4866                  r = n.clientWidth / 100,
4867                  o = n.clientHeight / 100,
4868                  d = parseInt(50 * Math.max(r, o), 10),
4869                  s = parseInt(i(e, null, "width"), 10);
4870              Modernizr.addTest("cssvmaxunit", w(d, s) || w(d, s - a));
4871          },
4872          3
4873      ),
4874      V(
4875          "#modernizr1{width: 50vm;width:50vmin}#modernizr2{width:50px;height:50px;overflow:scroll}#modernizr3{position:fixed;top:0;left:0;bottom:0;right:0}",
4876          function (A) {
4877              var e = A.childNodes[2],
4878                  t = A.childNodes[1],
4879                  n = A.childNodes[0],
4880                  a = parseInt((t.offsetWidth - t.clientWidth) / 2, 10),
4881                  r = n.clientWidth / 100,
4882                  o = n.clientHeight / 100,
4883                  d = parseInt(50 * Math.min(r, o), 10),
4884                  s = parseInt(i(e, null, "width"), 10);
4885              Modernizr.addTest("cssvminunit", w(d, s) || w(d, s - a));
4886          },
4887          3
4888      ),
4889      V("#modernizr { width: 50vw; }", function (e) {
4890          var t = parseInt(A.innerWidth / 2, 10),
4891              n = parseInt(i(e, null, "width"), 10);
4892          Modernizr.addTest("cssvwunit", n == t);
4893      }),
4894      Modernizr.addTest("formvalidation", function () {
4895          var e = r("form");
4896          if (!("checkValidity" in e && "addEventListener" in e)) return !1;
4897          if ("reportValidity" in e) return !0;
4898          var t,
4899              i = !1;
4900          return (
4901              (Modernizr.formvalidationapi = !0),
4902              e.addEventListener(
4903                  "submit",
4904                  function (e) {
4905                      (!A.opera || A.operamini) && e.preventDefault(), e.stopPropagation();
4906                  },
4907                  !1
4908              ),
4909              (e.innerHTML = '<input name="modTest" required="required" /><button></button>'),
4910              V("#modernizr form{position:absolute;top:-99999em}", function (A) {
4911                  A.appendChild(e),
4912                      (t = e.getElementsByTagName("input")[0]),
4913                      t.addEventListener(
4914                          "invalid",
4915                          function (A) {
4916                              (i = !0), A.preventDefault(), A.stopPropagation();
4917                          },
4918                          !1
4919                      ),
4920                      (Modernizr.formvalidationmessage = !!t.validationMessage),
4921                      e.getElementsByTagName("button")[0].click();
4922              }),
4923              i
4924          );
4925      }),
4926      Modernizr.addTest("localizednumber", function () {
4927          if (!Modernizr.inputtypes.number) return !1;
4928          if (!Modernizr.formvalidation) return !1;
4929          var A,
4930              t = r("div"),
4931              i = d(),
4932              n = (function () {
4933                  return g.insertBefore(i, g.firstElementChild || g.firstChild);
4934              })();
4935          t.innerHTML = '<input type="number" value="1.0" step="0.1"/>';
4936          var a = t.childNodes[0];
4937          n.appendChild(t), a.focus();
4938          try {
4939              e.execCommand("SelectAll", !1), e.execCommand("InsertText", !1, "1,1");
4940          } catch (o) {}
4941          return (A = "number" === a.type && 1.1 === a.valueAsNumber && a.checkValidity()), n.removeChild(t), i.fake && n.parentNode.removeChild(n), A;
4942      });
4943  var M = (function () {
4944      var e = A.matchMedia || A.msMatchMedia;
4945      return e
4946          ? function (A) {
4947                var t = e(A);
4948                return (t && t.matches) || !1;
4949            }
4950          : function (e) {
4951                var t = !1;
4952                return (
4953                    l("@media " + e + " { #modernizr { position: absolute; } }", function (e) {
4954                        t = "absolute" == (A.getComputedStyle ? A.getComputedStyle(e, null) : e.currentStyle).position;
4955                    }),
4956                    t
4957                );
4958            };
4959  })();
4960  (P.mq = M), Modernizr.addTest("mediaqueries", M("only all")), Modernizr.addTest("hovermq", M("(hover)")), Modernizr.addTest("pointermq", M("(pointer:coarse),(pointer:fine),(pointer:none)"));
4961  var b = "Moz O ms Webkit",
4962      T = P._config.usePrefixes ? b.toLowerCase().split(" ") : [];
4963  (P._domPrefixes = T),
4964      Modernizr.addTest("fileinputdirectory", function () {
4965          var A = r("input"),
4966              e = "directory";
4967          if (((A.type = "file"), e in A)) return !0;
4968          for (var t = 0, i = T.length; i > t; t++) if (T[t] + e in A) return !0;
4969          return !1;
4970      });
4971  var U = P._config.usePrefixes ? b.split(" ") : [];
4972  P._cssomPrefixes = U;
4973  var Z = function (e) {
4974      var i,
4975          n = C.length,
4976          a = A.CSSRule;
4977      if ("undefined" == typeof a) return t;
4978      if (!e) return !1;
4979      if (((e = e.replace(/^@/, "")), (i = e.replace(/-/g, "_").toUpperCase() + "_RULE"), i in a)) return "@" + e;
4980      for (var r = 0; n > r; r++) {
4981          var o = C[r],
4982              w = o.toUpperCase() + "_" + i;
4983          if (w in a) return "@-" + o.toLowerCase() + "-" + e;
4984      }
4985      return !1;
4986  };
4987  P.atRule = Z;
4988  var S = { style: I.elem.style };
4989  Modernizr._q.unshift(function () {
4990      delete S.style;
4991  });
4992})(window, document);
4993
4994/*!
4995* Bootstrap v4.4.1 (https://getbootstrap.com/)
4996* Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4997* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
4998*/
4999!(function (t, e) {
5000  "object" == typeof exports && "undefined" != typeof module
5001      ? e(exports, require("jquery"), require("popper.js"))
5002      : "function" == typeof define && define.amd
5003      ? define(["exports", "jquery", "popper.js"], e)
5004      : e(((t = t || self).bootstrap = {}), t.jQuery, t.Popper);
5005})(this, function (t, g, u) {
5006  "use strict";
5007  function i(t, e) {
5008      for (var n = 0; n < e.length; n++) {
5009          var i = e[n];
5010          (i.enumerable = i.enumerable || !1), (i.configurable = !0), "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i);
5011      }
5012  }
5013  function s(t, e, n) {
5014      return e && i(t.prototype, e), n && i(t, n), t;
5015  }
5016  function e(e, t) {
5017      var n = Object.keys(e);
5018      if (Object.getOwnPropertySymbols) {
5019          var i = Object.getOwnPropertySymbols(e);
5020          t &&
5021              (i = i.filter(function (t) {
5022                  return Object.getOwnPropertyDescriptor(e, t).enumerable;
5023              })),
5024              n.push.apply(n, i);
5025      }
5026      return n;
5027  }
5028  function l(o) {
5029      for (var t = 1; t < arguments.length; t++) {
5030          var r = null != arguments[t] ? arguments[t] : {};
5031          t % 2
5032              ? e(Object(r), !0).forEach(function (t) {
5033                    var e, n, i;
5034                    (e = o), (i = r[(n = t)]), n in e ? Object.defineProperty(e, n, { value: i, enumerable: !0, configurable: !0, writable: !0 }) : (e[n] = i);
5035                })
5036              : Object.getOwnPropertyDescriptors
5037              ? Object.defineProperties(o, Object.getOwnPropertyDescriptors(r))
5038              : e(Object(r)).forEach(function (t) {
5039                    Object.defineProperty(o, t, Object.getOwnPropertyDescriptor(r, t));
5040                });
5041      }
5042      return o;
5043  }
5044  (g = g && g.hasOwnProperty("default") ? g.default : g), (u = u && u.hasOwnProperty("default") ? u.default : u);
5045  var n = "transitionend";
5046  function o(t) {
5047      var e = this,
5048          n = !1;
5049      return (
5050          g(this).one(_.TRANSITION_END, function () {
5051              n = !0;
5052          }),
5053          setTimeout(function () {
5054              n || _.triggerTransitionEnd(e);
5055          }, t),
5056          this
5057      );
5058  }
5059  var _ = {
5060      TRANSITION_END: "bsTransitionEnd",
5061      getUID: function (t) {
5062          for (; (t += ~~(1e6 * Math.random())), document.getElementById(t); );
5063          return t;
5064      },
5065      getSelectorFromElement: function (t) {
5066          var e = t.getAttribute("data-target");
5067          if (!e || "#" === e) {
5068              var n = t.getAttribute("href");
5069              e = n && "#" !== n ? n.trim() : "";
5070          }
5071          try {
5072              return document.querySelector(e) ? e : null;
5073          } catch (t) {
5074              return null;
5075          }
5076      },
5077      getTransitionDurationFromElement: function (t) {
5078          if (!t) return 0;
5079          var e = g(t).css("transition-duration"),
5080              n = g(t).css("transition-delay"),
5081              i = parseFloat(e),
5082              o = parseFloat(n);
5083          return i || o ? ((e = e.split(",")[0]), (n = n.split(",")[0]), 1e3 * (parseFloat(e) + parseFloat(n))) : 0;
5084      },
5085      reflow: function (t) {
5086          return t.offsetHeight;
5087      },
5088      triggerTransitionEnd: function (t) {
5089          g(t).trigger(n);
5090      },
5091      supportsTransitionEnd: function () {
5092          return Boolean(n);
5093      },
5094      isElement: function (t) {
5095          return (t[0] || t).nodeType;
5096      },
5097      typeCheckConfig: function (t, e, n) {
5098          for (var i in n)
5099              if (Object.prototype.hasOwnProperty.call(n, i)) {
5100                  var o = n[i],
5101                      r = e[i],
5102                      s =
5103                          r && _.isElement(r)
5104                              ? "element"
5105                              : ((a = r),
5106                                {}.toString
5107                                    .call(a)
5108                                    .match(/\s([a-z]+)/i)[1]
5109                                    .toLowerCase());
5110                  if (!new RegExp(o).test(s)) throw new Error(t.toUpperCase() + ': Option "' + i + '" provided type "' + s + '" but expected type "' + o + '".');
5111              }
5112          var a;
5113      },
5114      findShadowRoot: function (t) {
5115          if (!document.documentElement.attachShadow) return null;
5116          if ("function" != typeof t.getRootNode) return t instanceof ShadowRoot ? t : t.parentNode ? _.findShadowRoot(t.parentNode) : null;
5117          var e = t.getRootNode();
5118          return e instanceof ShadowRoot ? e : null;
5119      },
5120      jQueryDetection: function () {
5121          if ("undefined" == typeof g) throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");
5122          var t = g.fn.jquery.split(" ")[0].split(".");
5123          if ((t[0] < 2 && t[1] < 9) || (1 === t[0] && 9 === t[1] && t[2] < 1) || 4 <= t[0]) throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0");
5124      },
5125  };
5126  _.jQueryDetection(),
5127      (g.fn.emulateTransitionEnd = o),
5128      (g.event.special[_.TRANSITION_END] = {
5129          bindType: n,
5130          delegateType: n,
5131          handle: function (t) {
5132              if (g(t.target).is(this)) return t.handleObj.handler.apply(this, arguments);
5133          },
5134      });
5135  var r = "alert",
5136      a = "bs.alert",
5137      c = "." + a,
5138      h = g.fn[r],
5139      f = { CLOSE: "close" + c, CLOSED: "closed" + c, CLICK_DATA_API: "click" + c + ".data-api" },
5140      d = "alert",
5141      m = "fade",
5142      p = "show",
5143      v = (function () {
5144          function i(t) {
5145              this._element = t;
5146          }
5147          var t = i.prototype;
5148          return (
5149              (t.close = function (t) {
5150                  var e = this._element;
5151                  t && (e = this._getRootElement(t)), this._triggerCloseEvent(e).isDefaultPrevented() || this._removeElement(e);
5152              }),
5153              (t.dispose = function () {
5154                  g.removeData(this._element, a), (this._element = null);
5155              }),
5156              (t._getRootElement = function (t) {
5157                  var e = _.getSelectorFromElement(t),
5158                      n = !1;
5159                  return e && (n = document.querySelector(e)), (n = n || g(t).closest("." + d)[0]);
5160              }),
5161              (t._triggerCloseEvent = function (t) {
5162                  var e = g.Event(f.CLOSE);
5163                  return g(t).trigger(e), e;
5164              }),
5165              (t._removeElement = function (e) {
5166                  var n = this;
5167                  if ((g(e).removeClass(p), g(e).hasClass(m))) {
5168                      var t = _.getTransitionDurationFromElement(e);
5169                      g(e)
5170                          .one(_.TRANSITION_END, function (t) {
5171                              return n._destroyElement(e, t);
5172                          })
5173                          .emulateTransitionEnd(t);
5174                  } else this._destroyElement(e);
5175              }),
5176              (t._destroyElement = function (t) {
5177                  g(t).detach().trigger(f.CLOSED).remove();
5178              }),
5179              (i._jQueryInterface = function (n) {
5180                  return this.each(function () {
5181                      var t = g(this),
5182                          e = t.data(a);
5183                      e || ((e = new i(this)), t.data(a, e)), "close" === n && e[n](this);
5184                  });
5185              }),
5186              (i._handleDismiss = function (e) {
5187                  return function (t) {
5188                      t && t.preventDefault(), e.close(this);
5189                  };
5190              }),
5191              s(i, null, [
5192                  {
5193                      key: "VERSION",
5194                      get: function () {
5195                          return "4.4.1";
5196                      },
5197                  },
5198              ]),
5199              i
5200          );
5201      })();
5202  g(document).on(f.CLICK_DATA_API, '[data-dismiss="alert"]', v._handleDismiss(new v())),
5203      (g.fn[r] = v._jQueryInterface),
5204      (g.fn[r].Constructor = v),
5205      (g.fn[r].noConflict = function () {
5206          return (g.fn[r] = h), v._jQueryInterface;
5207      });
5208  var y = "button",
5209      E = "bs.button",
5210      C = "." + E,
5211      T = ".data-api",
5212      b = g.fn[y],
5213      S = "active",
5214      D = "btn",
5215      I = "focus",
5216      w = '[data-toggle^="button"]',
5217      A = '[data-toggle="buttons"]',
5218      N = '[data-toggle="button"]',
5219      O = '[data-toggle="buttons"] .btn',
5220      k = 'input:not([type="hidden"])',
5221      P = ".active",
5222      L = ".btn",
5223      j = { CLICK_DATA_API: "click" + C + T, FOCUS_BLUR_DATA_API: "focus" + C + T + " blur" + C + T, LOAD_DATA_API: "load" + C + T },
5224      H = (function () {
5225          function n(t) {
5226              this._element = t;
5227          }
5228          var t = n.prototype;
5229          return (
5230              (t.toggle = function () {
5231                  var t = !0,
5232                      e = !0,
5233                      n = g(this._element).closest(A)[0];
5234                  if (n) {
5235                      var i = this._element.querySelector(k);
5236                      if (i) {
5237                          if ("radio" === i.type)
5238                              if (i.checked && this._element.classList.contains(S)) t = !1;
5239                              else {
5240                                  var o = n.querySelector(P);
5241                                  o && g(o).removeClass(S);
5242                              }
5243                          else "checkbox" === i.type ? "LABEL" === this._element.tagName && i.checked === this._element.classList.contains(S) && (t = !1) : (t = !1);
5244                          t && ((i.checked = !this._element.classList.contains(S)), g(i).trigger("change")), i.focus(), (e = !1);
5245                      }
5246                  }
5247                  this._element.hasAttribute("disabled") || this._element.classList.contains("disabled") || (e && this._element.setAttribute("aria-pressed", !this._element.classList.contains(S)), t && g(this._element).toggleClass(S));
5248              }),
5249              (t.dispose = function () {
5250                  g.removeData(this._element, E), (this._element = null);
5251              }),
5252              (n._jQueryInterface = function (e) {
5253                  return this.each(function () {
5254                      var t = g(this).data(E);
5255                      t || ((t = new n(this)), g(this).data(E, t)), "toggle" === e && t[e]();
5256                  });
5257              }),
5258              s(n, null, [
5259                  {
5260                      key: "VERSION",
5261                      get: function () {
5262                          return "4.4.1";
5263                      },
5264                  },
5265              ]),
5266              n
5267          );
5268      })();
5269  g(document)
5270      .on(j.CLICK_DATA_API, w, function (t) {
5271          var e = t.target;
5272          if ((g(e).hasClass(D) || (e = g(e).closest(L)[0]), !e || e.hasAttribute("disabled") || e.classList.contains("disabled"))) t.preventDefault();
5273          else {
5274              var n = e.querySelector(k);
5275              if (n && (n.hasAttribute("disabled") || n.classList.contains("disabled"))) return void t.preventDefault();
5276              H._jQueryInterface.call(g(e), "toggle");
5277          }
5278      })
5279      .on(j.FOCUS_BLUR_DATA_API, w, function (t) {
5280          var e = g(t.target).closest(L)[0];
5281          g(e).toggleClass(I, /^focus(in)?$/.test(t.type));
5282      }),
5283      g(window).on(j.LOAD_DATA_API, function () {
5284          for (var t = [].slice.call(document.querySelectorAll(O)), e = 0, n = t.length; e < n; e++) {
5285              var i = t[e],
5286                  o = i.querySelector(k);
5287              o.checked || o.hasAttribute("checked") ? i.classList.add(S) : i.classList.remove(S);
5288          }
5289          for (var r = 0, s = (t = [].slice.call(document.querySelectorAll(N))).length; r < s; r++) {
5290              var a = t[r];
5291              "true" === a.getAttribute("aria-pressed") ? a.classList.add(S) : a.classList.remove(S);
5292          }
5293      }),
5294      (g.fn[y] = H._jQueryInterface),
5295      (g.fn[y].Constructor = H),
5296      (g.fn[y].noConflict = function () {
5297          return (g.fn[y] = b), H._jQueryInterface;
5298      });
5299  var R = "carousel",
5300      x = "bs.carousel",
5301      F = "." + x,
5302      U = ".data-api",
5303      W = g.fn[R],
5304      q = { interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0, touch: !0 },
5305      M = { interval: "(number|boolean)", keyboard: "boolean", slide: "(boolean|string)", pause: "(string|boolean)", wrap: "boolean", touch: "boolean" },
5306      K = "next",
5307      Q = "prev",
5308      B = "left",
5309      V = "right",
5310      Y = {
5311          SLIDE: "slide" + F,
5312          SLID: "slid" + F,
5313          KEYDOWN: "keydown" + F,
5314          MOUSEENTER: "mouseenter" + F,
5315          MOUSELEAVE: "mouseleave" + F,
5316          TOUCHSTART: "touchstart" + F,
5317          TOUCHMOVE: "touchmove" + F,
5318          TOUCHEND: "touchend" + F,
5319          POINTERDOWN: "pointerdown" + F,
5320          POINTERUP: "pointerup" + F,
5321          DRAG_START: "dragstart" + F,
5322          LOAD_DATA_API: "load" + F + U,
5323          CLICK_DATA_API: "click" + F + U,
5324      },
5325      z = "carousel",
5326      X = "active",
5327      $ = "slide",
5328      G = "carousel-item-right",
5329      J = "carousel-item-left",
5330      Z = "carousel-item-next",
5331      tt = "carousel-item-prev",
5332      et = "pointer-event",
5333      nt = ".active",
5334      it = ".active.carousel-item",
5335      ot = ".carousel-item",
5336      rt = ".carousel-item img",
5337      st = ".carousel-item-next, .carousel-item-prev",
5338      at = ".carousel-indicators",
5339      lt = "[data-slide], [data-slide-to]",
5340      ct = '[data-ride="carousel"]',
5341      ht = { TOUCH: "touch", PEN: "pen" },
5342      ut = (function () {
5343          function r(t, e) {
5344              (this._items = null),
5345                  (this._interval = null),
5346                  (this._activeElement = null),
5347                  (this._isPaused = !1),
5348                  (this._isSliding = !1),
5349                  (this.touchTimeout = null),
5350                  (this.touchStartX = 0),
5351                  (this.touchDeltaX = 0),
5352                  (this._config = this._getConfig(e)),
5353                  (this._element = t),
5354                  (this._indicatorsElement = this._element.querySelector(at)),
5355                  (this._touchSupported = "ontouchstart" in document.documentElement || 0 < navigator.maxTouchPoints),
5356                  (this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent)),
5357                  this._addEventListeners();
5358          }
5359          var t = r.prototype;
5360          return (
5361              (t.next = function () {
5362                  this._isSliding || this._slide(K);
5363              }),
5364              (t.nextWhenVisible = function () {
5365                  !document.hidden && g(this._element).is(":visible") && "hidden" !== g(this._element).css("visibility") && this.next();
5366              }),
5367              (t.prev = function () {
5368                  this._isSliding || this._slide(Q);
5369              }),
5370              (t.pause = function (t) {
5371                  t || (this._isPaused = !0), this._element.querySelector(st) && (_.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), (this._interval = null);
5372              }),
5373              (t.cycle = function (t) {
5374                  t || (this._isPaused = !1),
5375                      this._interval && (clearInterval(this._interval), (this._interval = null)),
5376                      this._config.interval && !this._isPaused && (this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval));
5377              }),
5378              (t.to = function (t) {
5379                  var e = this;
5380                  this._activeElement = this._element.querySelector(it);
5381                  var n = this._getItemIndex(this._activeElement);
5382                  if (!(t > this._items.length - 1 || t < 0))
5383                      if (this._isSliding)
5384                          g(this._element).one(Y.SLID, function () {
5385                              return e.to(t);
5386                          });
5387                      else {
5388                          if (n === t) return this.pause(), void this.cycle();
5389                          var i = n < t ? K : Q;
5390                          this._slide(i, this._items[t]);
5391                      }
5392              }),
5393              (t.dispose = function () {
5394                  g(this._element).off(F),
5395                      g.removeData(this._element, x),
5396                      (this._items = null),
5397                      (this._config = null),
5398                      (this._element = null),
5399                      (this._interval = null),
5400                      (this._isPaused = null),
5401                      (this._isSliding = null),
5402                      (this._activeElement = null),
5403                      (this._indicatorsElement = null);
5404              }),
5405              (t._getConfig = function (t) {
5406                  return (t = l({}, q, {}, t)), _.typeCheckConfig(R, t, M), t;
5407              }),
5408              (t._handleSwipe = function () {
5409                  var t = Math.abs(this.touchDeltaX);
5410                  if (!(t <= 40)) {
5411                      var e = t / this.touchDeltaX;
5412                      (this.touchDeltaX = 0) < e && this.prev(), e < 0 && this.next();
5413                  }
5414              }),
5415              (t._addEventListeners = function () {
5416                  var e = this;
5417                  this._config.keyboard &&
5418                      g(this._element).on(Y.KEYDOWN, function (t) {
5419                          return e._keydown(t);
5420                      }),
5421                      "hover" === this._config.pause &&
5422                          g(this._element)
5423                              .on(Y.MOUSEENTER, function (t) {
5424                                  return e.pause(t);
5425                              })
5426                              .on(Y.MOUSELEAVE, function (t) {
5427                                  return e.cycle(t);
5428                              }),
5429                      this._config.touch && this._addTouchEventListeners();
5430              }),
5431              (t._addTouchEventListeners = function () {
5432                  var e = this;
5433                  if (this._touchSupported) {
5434                      var n = function (t) {
5435                              e._pointerEvent && ht[t.originalEvent.pointerType.toUpperCase()] ? (e.touchStartX = t.originalEvent.clientX) : e._pointerEvent || (e.touchStartX = t.originalEvent.touches[0].clientX);
5436                          },
5437                          i = function (t) {
5438                              e._pointerEvent && ht[t.originalEvent.pointerType.toUpperCase()] && (e.touchDeltaX = t.originalEvent.clientX - e.touchStartX),
5439                                  e._handleSwipe(),
5440                                  "hover" === e._config.pause &&
5441                                      (e.pause(),
5442                                      e.touchTimeout && clearTimeout(e.touchTimeout),
5443                                      (e.touchTimeout = setTimeout(function (t) {
5444                                          return e.cycle(t);
5445                                      }, 500 + e._config.interval)));
5446                          };
5447                      g(this._element.querySelectorAll(rt)).on(Y.DRAG_START, function (t) {
5448                          return t.preventDefault();
5449                      }),
5450                          this._pointerEvent
5451                              ? (g(this._element).on(Y.POINTERDOWN, function (t) {
5452                                    return n(t);
5453                                }),
5454                                g(this._element).on(Y.POINTERUP, function (t) {
5455                                    return i(t);
5456                                }),
5457                                this._element.classList.add(et))
5458                              : (g(this._element).on(Y.TOUCHSTART, function (t) {
5459                                    return n(t);
5460                                }),
5461                                g(this._element).on(Y.TOUCHMOVE, function (t) {
5462                                    return (function (t) {
5463                                        t.originalEvent.touches && 1 < t.originalEvent.touches.length ? (e.touchDeltaX = 0) : (e.touchDeltaX = t.originalEvent.touches[0].clientX - e.touchStartX);
5464                                    })(t);
5465                                }),
5466                                g(this._element).on(Y.TOUCHEND, function (t) {
5467                                    return i(t);
5468                                }));
5469                  }
5470              }),
5471              (t._keydown = function (t) {
5472                  if (!/input|textarea/i.test(t.target.tagName))
5473                      switch (t.which) {
5474                          case 37:
5475                              t.preventDefault(), this.prev();
5476                              break;
5477                          case 39:
5478                              t.preventDefault(), this.next();
5479                      }
5480              }),
5481              (t._getItemIndex = function (t) {
5482                  return (this._items = t && t.parentNode ? [].slice.call(t.parentNode.querySelectorAll(
5482ot)) : []), this._items.indexOf(t);
5483              }),
5484              (t._getItemByDirection = function (t, e) {
5485                  var n = t === K,
5486                      i = t === Q,
5487                      o = this._getItemIndex(e),
5488                      r = this._items.length - 1;
5489                  if (((i && 0 === o) || (n && o === r)) && !this._config.wrap) return e;
5490                  var s = (o + (t === Q ? -1 : 1)) % this._items.length;
5491                  return -1 == s ? this._items[this._items.length - 1] : this._items[s];
5492              }),
5493              (t._triggerSlideEvent = function (t, e) {
5494                  var n = this._getItemIndex(t),
5495                      i = this._getItemIndex(this._element.querySelector(it)),
5496                      o = g.Event(Y.SLIDE, { relatedTarget: t, direction: e, from: i, to: n });
5497                  return g(this._element).trigger(o), o;
5498              }),
5499              (t._setActiveIndicatorElement = function (t) {
5500                  if (this._indicatorsElement) {
5501                      var e = [].slice.call(this._indicatorsElement.querySelectorAll(nt));
5502                      g(e).removeClass(X);
5503                      var n = this._indicatorsElement.children[this._getItemIndex(t)];
5504                      n && g(n).addClass(X);
5505                  }
5506              }),
5507              (t._slide = function (t, e) {
5508                  var n,
5509                      i,
5510                      o,
5511                      r = this,
5512                      s = this._element.querySelector(it),
5513                      a = this._getItemIndex(s),
5514                      l = e || (s && this._getItemByDirection(t, s)),
5515                      c = this._getItemIndex(l),
5516                      h = Boolean(this._interval);
5517                  if (((o = t === K ? ((n = J), (i = Z), B) : ((n = G), (i = tt), V)), l && g(l).hasClass(X))) this._isSliding = !1;
5518                  else if (!this._triggerSlideEvent(l, o).isDefaultPrevented() && s && l) {
5519                      (this._isSliding = !0), h && this.pause(), this._setActiveIndicatorElement(l);
5520                      var u = g.Event(Y.SLID, { relatedTarget: l, direction: o, from: a, to: c });
5521                      if (g(this._element).hasClass($)) {
5522                          g(l).addClass(i), _.reflow(l), g(s).addClass(n), g(l).addClass(n);
5523                          var f = parseInt(l.getAttribute("data-interval"), 10);
5524                          f ? ((this._config.defaultInterval = this._config.defaultInterval || this._config.interval), (this._config.interval = f)) : (this._config.interval = this._config.defaultInterval || this._config.interval);
5525                          var d = _.getTransitionDurationFromElement(s);
5526                          g(s)
5527                              .one(_.TRANSITION_END, function () {
5528                                  g(l)
5529                                      .removeClass(n + " " + i)
5530                                      .addClass(X),
5531                                      g(s).removeClass(X + " " + i + " " + n),
5532                                      (r._isSliding = !1),
5533                                      setTimeout(function () {
5534                                          return g(r._element).trigger(u);
5535                                      }, 0);
5536                              })
5537                              .emulateTransitionEnd(d);
5538                      } else g(s).removeClass(X), g(l).addClass(X), (this._isSliding = !1), g(this._element).trigger(u);
5539                      h && this.cycle();
5540                  }
5541              }),
5542              (r._jQueryInterface = function (i) {
5543                  return this.each(function () {
5544                      var t = g(this).data(x),
5545                          e = l({}, q, {}, g(this).data());
5546                      "object" == typeof i && (e = l({}, e, {}, i));
5547                      var n = "string" == typeof i ? i : e.slide;
5548                      if ((t || ((t = new r(this, e)), g(this).data(x, t)), "number" == typeof i)) t.to(i);
5549                      else if ("string" == typeof n) {
5550                          if ("undefined" == typeof t[n]) throw new TypeError('No method n
5550amed "' + n + '"');
5551                          t[n]();
5552                      } else e.interval && e.ride && (t.pause(), t.cycle());
5553                  });
5554              }),
5555              (r._dataApiClickHandler = function (t) {
5556                  var e = _.getSelectorFromElement(this);
5557                  if (e) {
5558                      var n = g(e)[0];
5559                      if (n && g(n).hasClass(z)) {
5560                          var i = l({}, g(n).data(), {}, g(this).data()),
5561                              o = this.getAttribute("data-slide-to");
5562                          o && (i.interval = !1), r._jQueryInterface.call(g(n), i), o && g(n).data(x).to(o), t.preventDefault();
5563                      }
5564                  }
5565              }),
5566              s(r, null, [
5567                  {
5568                      key: "VERSION",
5569                      get: function () {
5570                          return "4.4.1";
5571                      },
5572                  },
5573                  {
5574                      key: "Default",
5575                      get: function () {
5576                          return q;
5577                      },
5578                  },
5579              ]),
5580              r
5581          );
5582      })();
5583  g(document).on(Y.CLICK_DATA_API, lt, ut._dataApiClickHandler),
5584      g(window).on(Y.LOAD_DATA_API, function () {
5585          for (var t = [].slice.call(document.querySelectorAll(ct)), e = 0, n = t.length; e < n; e++) {
5586              var i = g(t[e]);
5587              ut._jQueryInterface.call(i, i.data());
5588          }
5589      }),
5590      (g.fn[R] = ut._jQueryInterface),
5591      (g.fn[R].Constructor = ut),
5592      (g.fn[R].noConflict = function () {
5593          return (g.fn[R] = W), ut._jQueryInterface;
5594      });
5595  var ft = "collapse",
5596      dt = "bs.collapse",
5597      gt = "." + dt,
5598      _t = g.fn[ft],
5599      mt = { toggle: !0, parent: "" },
5600      pt = { toggle: "boolean", parent: "(string|element)" },
5601      vt = { SHOW: "show" + gt, SHOWN: "shown" + gt, HIDE: "hide" + gt, HIDDEN: "hidden" + gt, CLICK_DATA_API: "click" + gt + ".data-api" },
5602      yt = "show",
5603      Et = "collapse",
5604      Ct = "collapsing",
5605      Tt = "collapsed",
5606      bt = "width",
5607      St = "height",
5608      Dt = ".show, .collapsing",
5609      It = '[data-toggle="collapse"]',
5610      wt = (function () {
5611          function a(e, t) {
5612              (this._isTransitioning = !1),
5613                  (this._element = e),
5614                  (this._config = this._getConfig(t)),
5615                  (this._triggerArray = [].slice.call(document.querySelectorAll('[data-toggle="collapse"][href="#' + e.id + '"],[data-toggle="collapse"][data-target="#' + e.id + '"]')));
5616              for (var n = [].slice.call(document.querySelectorAll(It)), i = 0, o = n.length; i < o; i++) {
5617                  var r = n[i],
5618                      s = _.getSelectorFromElement(r),
5619                      a = [].slice.call(document.querySelectorAll(s)).filter(function (t) {
5620                          return t === e;
5621                      });
5622                  null !== s && 0 < a.length && ((this._selector = s), this._triggerArray.push(r));
5623              }
5624              (this._parent = this._config.parent ? this._getParent() : null), this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle();
5625          }
5626          var t = a.prototype;
5627          return (
5628              (t.toggle = function () {
5629                  g(this._element).hasClass(yt) ? this.hide() : this.show();
5630              }),
5631              (t.show = function () {
5632                  var t,
5633                      e,
5634                      n = this;
5635                  if (
5636                      !this._isTransitioning &&
5637                      !g(this._element).hasClass(yt) &&
5638                      (this._parent &&
5639                          0 ===
5640                              (t = [].slice.call(this._parent.querySelectorAll(Dt)).filter(function (t) {
5641                                  return "string" == typeof n._config.parent ? t.getAttribute("data-parent") === n._config.parent : t.classList.contains(Et);
5642                              })).length &&
5643                          (t = null),
5644                      !(t && (e = g(t).not(this._selector).data(dt)) && e._isTransitioning))
5645                  ) {
5646                      var i = g.Event(vt.SHOW);
5647                      if ((g(this._element).trigger(i), !i.isDefaultPrevented())) {
5648                          t && (a._jQueryInterface.call(g(t).not(this._selector), "hide"), e || g(t).data(dt, null));
5649                          var o = this._getDimension();
5650                          g(this._element).removeClass(Et).addClass(Ct), (this._element.style[o] = 0), this._triggerArray.length && g(this._triggerArray).removeClass(Tt).attr("aria-expanded", !0), this.setTransitioning(!0);
5651                          var r = "scroll" + (o[0].toUpperCase() + o.slice(1)),
5652                              s = _.getTransitionDurationFromElement(this._element);
5653                          g(this._element)
5654                              .one(_.TRANSITION_END, function () {
5655                                  g(n._element).removeClass(Ct).addClass(Et).addClass(yt), (n._element.style[o] = ""), n.setTransitioning(!1), g(n._element).trigger(vt.SHOWN);
5656                              })
5657                              .emulateTransitionEnd(s),
5658                              (this._element.style[o] = this._element[r] + "px");
5659                      }
5660                  }
5661              }),
5662              (t.hide = function () {
5663                  var t = this;
5664                  if (!this._isTransitioning && g(this._element).hasClass(yt)) {
5665                      var e = g.Event(vt.HIDE);
5666                      if ((g(this._element).trigger(e), !e.isDefaultPrevented())) {
5667                          var n = this._getDimension();
5668                          (this._element.style[n] = this._element.getBoundingClientRect()[n] + "px"), _.reflow(this._element), g(this._element).addClass(Ct).removeClass(Et).removeClass(yt);
5669                          var i = this._triggerArray.length;
5670                          if (0 < i)
5671                              for (var o = 0; o < i; o++) {
5672                                  var r = this._triggerArray[o],
5673                                      s = _.getSelectorFromElement(r);
5674                                  if (null !== s) g([].slice.call(document.querySelectorAll(s))).hasClass(yt) || g(r).addClass(Tt).attr("aria-expanded", !1);
5675                              }
5676                          this.setTransitioning(!0);
5677                          this._element.style[n] = "";
5678                          var a = _.getTransitionDurationFromElement(this._element);
5679                          g(this._element)
5680                              .one(_.TRANSITION_END, function () {
5681                                  t.setTransitioning(!1), g(t._element).removeClass(Ct).addClass(Et).trigger(vt.HIDDEN);
5682                              })
5683                              .emulateTransitionEnd(a);
5684                      }
5685                  }
5686              }),
5687              (t.setTransitioning = function (t) {
5688                  this._isTransitioning = t;
5689              }),
5690              (t.dispose = function () {
5691                  g.removeData(this._element, dt), (this._config = null), (this._parent = null), (this._element = null), (this._triggerArray = null), (this._isTransitioning = null);
5692              }),
5693              (t._getConfig = function (t) {
5694                  return ((t = l({}, mt, {}, t)).toggle = Boolean(t.toggle)), _.typeCheckConfig(ft, t, pt), t;
5695              }),
5696              (t._getDimension = function () {
5697                  return g(this._element).hasClass(bt) ? bt : St;
5698              }),
5699              (t._getParent = function () {
5700                  var t,
5701                      n = this;
5702                  _.isElement(this._config.parent) ? ((t = this._config.parent), "undefined" != typeof this._config.parent.jquery && (t = this._config.parent[0])) : (t = document.querySelector(this._config.parent));
5703                  var e = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]',
5704                      i = [].slice.call(t.querySelectorAll(e));
5705                  return (
5706                      g(i).each(function (t, e) {
5707                          n._addAriaAndCollapsedClass(a._getTargetFromElement(e), [e]);
5708                      }),
5709                      t
5710                  );
5711              }),
5712              (t._addAriaAndCollapsedClass = function (t, e) {
5713                  var n = g(t).hasClass(yt);
5714                  e.length && g(e).toggleClass(Tt, !n).attr("aria-expanded", n);
5715              }),
5716              (a._getTargetFromElement = function (t) {
5717                  var e = _.getSelectorFromElement(t);
5718                  return e ? document.querySelector(e) : null;
5719              }),
5720              (a._jQueryInterface = function (i) {
5721                  return this.each(function () {
5722                      var t = g(this),
5723                          e = t.data(dt),
5724                          n = l({}, mt, {}, t.data(), {}, "object" == typeof i && i ? i : {});
5725                      if ((!e && n.toggle && /show|hide/.test(i) && (n.toggle = !1), e || ((e = new a(this, n)), t.data(dt, e)), "string" == typeof i)) {
5726                          if ("undefined" == typeof e[i]) throw new TypeError('No method n
5726amed "' + i + '"');
5727                          e[i]();
5728                      }
5729                  });
5730              }),
5731              s(a, null, [
5732                  {
5733                      key: "VERSION",
5734                      get: function () {
5735                          return "4.4.1";
5736                      },
5737                  },
5738                  {
5739                      key: "Default",
5740                      get: function () {
5741                          return mt;
5742                      },
5743                  },
5744              ]),
5745              a
5746          );
5747      })();
5748  g(document).on(vt.CLICK_DATA_API, It, function (t) {
5749      "A" === t.currentTarget.tagName && t.preventDefault();
5750      var n = g(this),
5751          e = _.getSelectorFromElement(this),
5752          i = [].slice.call(document.querySelectorAll(e));
5753      g(i).each(function () {
5754          var t = g(this),
5755              e = t.data(dt) ? "toggle" : n.data();
5756          wt._jQueryInterface.call(t, e);
5757      });
5758  }),
5759      (g.fn[ft] = wt._jQueryInterface),
5760      (g.fn[ft].Constructor = wt),
5761      (g.fn[ft].noConflict = function () {
5762          return (g.fn[ft] = _t), wt._jQueryInterface;
5763      });
5764  var At = "dropdown",
5765      Nt = "bs.dropdown",
5766      Ot = "." + Nt,
5767      kt = ".data-api",
5768      Pt = g.fn[At],
5769      Lt = new RegExp("38|40|27"),
5770      jt = { HIDE: "hide" + Ot, HIDDEN: "hidden" + Ot, SHOW: "show" + Ot, SHOWN: "shown" + Ot, CLICK: "click" + Ot, CLICK_DATA_API: "click" + Ot + kt, KEYDOWN_DATA_API: "keydown" + Ot + kt, KEYUP_DATA_API: "keyup" + Ot + kt },
5771      Ht = "disabled",
5772      Rt = "show",
5773      xt = "dropup",
5774      Ft = "dropright",
5775      Ut = "dropleft",
5776      Wt = "dropdown-menu-right",
5777      qt = "position-static",
5778      Mt = '[data-toggle="dropdown"]',
5779      Kt = ".dropdown form",
5780      Qt = ".dropdown-menu",
5781      Bt = ".navbar-nav",
5782      Vt = ".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",
5783      Yt = "top-start",
5784      zt = "top-end",
5785      Xt = "bottom-start",
5786      $t = "bottom-end",
5787      Gt = "right-start",
5788      Jt = "left-start",
5789      Zt = { offset: 0, flip: !0, boundary: "scrollParent", reference: "toggle", display: "dynamic", popperConfig: null },
5790      te = { offset: "(number|string|function)", flip: "boolean", boundary: "(string|element)", reference: "(string|element)", display: "string", popperConfig: "(null|object)" },
5791      ee = (function () {
5792          function c(t, e) {
5793              (this._element = t), (this._popper = null), (this._config = this._getConfig(e)), (this._menu = this._getMenuElement()), (this._inNavbar = this._detectNavbar()), this._addEventListeners();
5794          }
5795          var t = c.prototype;
5796          return (
5797              (t.toggle = function () {
5798                  if (!this._element.disabled && !g(this._element).hasClass(Ht)) {
5799                      var t = g(this._menu).hasClass(Rt);
5800                      c._clearMenus(), t || this.show(!0);
5801                  }
5802              }),
5803              (t.show = function (t) {
5804                  if ((void 0 === t && (t = !1), !(this._element.disabled || g(this._element).hasClass(Ht) || g(this._menu).hasClass(Rt)))) {
5805                      var e = { relatedTarget: this._element },
5806                          n = g.Event(jt.SHOW, e),
5807                          i = c._getParentFromElement(this._element);
5808                      if ((g(i).trigger(n), !n.isDefaultPrevented())) {
5809                          if (!this._inNavbar && t) {
5810                              if ("undefined" == typeof u) throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)");
5811                              var o = this._element;
5812                              "parent" === this._config.reference ? (o = i) : _.isElement(this._config.reference) && ((o = this._config.reference), "undefined" != typeof this._config.reference.jquery && (o = this._config.reference[0])),
5813                                  "scrollParent" !== this._config.boundary && g(i).addClass(qt),
5814                                  (this._popper = new u(o, this._menu, this._getPopperConfig()));
5815                          }
5816                          "ontouchstart" in document.documentElement && 0 === g(i).closest(Bt).length && g(document.body).children().on("mouseover", null, g.noop),
5817                              this._element.focus(),
5818                              this._element.setAttribute("aria-expanded", !0),
5819                              g(this._menu).toggleClass(Rt),
5820                              g(i).toggleClass(Rt).trigger(g.Event(jt.SHOWN, e));
5821                      }
5822                  }
5823              }),
5824              (t.hide = function () {
5825                  if (!this._element.disabled && !g(this._element).hasClass(Ht) && g(this._menu).hasClass(Rt)) {
5826                      var t = { relatedTarget: this._element },
5827                          e = g.Event(jt.HIDE, t),
5828                          n = c._getParentFromElement(this._element);
5829                      g(n).trigger(e), e.isDefaultPrevented() || (this._popper && this._popper.destroy(), g(this._menu).toggleClass(Rt), g(n).toggleClass(Rt).trigger(g.Event(jt.HIDDEN, t)));
5830                  }
5831              }),
5832              (t.dispose = function () {
5833                  g.removeData(this._element, Nt), g(this._element).off(Ot), (this._element = null), (this._menu = null) !== this._popper && (this._popper.destroy(), (this._popper = null));
5834              }),
5835              (t.update = function () {
5836                  (this._inNavbar = this._detectNavbar()), null !== this._popper && this._popper.scheduleUpdate();
5837              }),
5838              (t._addEventListeners = function () {
5839                  var e = this;
5840                  g(this._element).on(jt.CLICK, function (t) {
5841                      t.preventDefault(), t.stopPropagation(), e.toggle(
5841);
5842                  });
5843              }),
5844              (t._getConfig = function (t) {
5845                  return (t = l({}, this.constructor.Default, {}, g(this._element).data(), {}, t)), _.typeCheckConfig(At, t, this.constructor.DefaultType), t;
5846              }),
5847              (t._getMenuElement = function () {
5848                  if (!this._menu) {
5849                      var t = c._getParentFromElement(this._element);
5850                      t && (this._menu = t.querySelector(Qt));
5851                  }
5852                  return this._menu;
5853              }),
5854              (t._getPlacement = function () {
5855                  var t = g(this._element.parentNode),
5856                      e = Xt;
5857                  return t.hasClass(xt) ? ((e = Yt), g(this._menu).hasClass(Wt) && (e = zt)) : t.hasClass(Ft) ? (e = Gt) : t.hasClass(Ut) ? (e = Jt) : g(this._menu).hasClass(Wt) && (e = $t), e;
5858              }),
5859              (t._detectNavbar = function () {
5860                  return 0 < g(this._element).closest(".navbar").length;
5861              }),
5862              (t._getOffset = function () {
5863                  var e = this,
5864                      t = {};
5865                  return (
5866                      "function" == typeof this._config.offset
5867                          ? (t.fn = function (t) {
5868                                return (t.offsets = l({}, t.offsets, {}, e._config.offset(t.offsets, e._element) || {})), t;
5869                            })
5870                          : (t.offset = this._config.offset),
5871                      t
5872                  );
5873              }),
5874              (t._getPopperConfig = function () {
5875                  var t = { placement: this._getPlacement(), modifiers: { offset: this._getOffset(), flip: { enabled: this._config.flip }, preventOverflow: { boundariesElement: this._config.boundary } } };
5876                  return "static" === this._config.display && (t.modifiers.applyStyle = { enabled: !1 }), l({}, t, {}, this._config.popperConfig);
5877              }),
5878              (c._jQueryInterface = function (e) {
5879                  return this.each(function () {
5880                      var t = g(this).data(Nt);
5881                      if ((t || ((t = new c(this, "object" == typeof e ? e : null)), g(this).data(Nt, t)), "string" == typeof e)) {
5882                          if ("undefined" == typeof t[e]) throw new TypeError('No method named "' + e + '"');
5883                          t[e]();
5884                      }
5885                  });
5886              }),
5887              (c._clearMenus = function (t) {
5888                  if (!t || (3 !== t.which && ("keyup" !== t.type || 9 === t.which)))
5889                      for (var e = [].slice.call(document.querySelectorAll(Mt)), n = 0, i = e.length; n < i; n++) {
5890                          var o = c._getParentFromElement(e[n]),
5891                              r = g(e[n]).data(Nt),
5892                              s = { relatedTarget: e[n] };
5893                          if ((t && "click" === t.type && (s.clickEvent = t), r)) {
5894                              var a = r._menu;
5895                              if (g(o).hasClass(Rt) && !(t && (("click" === t.type && /input|textarea/i.test(t.target.tagName)) || ("keyup" === t.type && 9 === t.which)) && g.contains(o, t.target))) {
5896                                  var l = g.Event(jt.HIDE, s);
5897                                  g(o).trigger(l),
5898                                      l.isDefaultPrevented() ||
5899                                          ("ontouchstart" in document.documentElement && g(document.body).children().off("mouseover", null, g.noop),
5900                                          e[n].setAttribute("aria-expanded", "false"),
5901                                          r._popper && r._popper.destroy(),
5902                                          g(a).removeClass(Rt),
5903                                          g(o).removeClass(Rt).trigger(g.Event(jt.HIDDEN, s)));
5904                              }
5905                          }
5906                      }
5907              }),
5908              (c._getParentFromElement = function (t) {
5909                  var e,
5910                      n = _.getSelectorFromElement(t);
5911                  return n && (e = document.querySelector(n)), e || t.parentNode;
5912              }),
5913              (c._dataApiKeydownHandler = function (t) {
5914                  if (
5915                      (/input|textarea/i.test(t.target.tagName) ? !(32 === t.which || (27 !== t.which && ((40 !== t.which && 38 !== t.which) || g(t.target).closest(Qt).length))) : Lt.test(t.which)) &&
5916                      (t.preventDefault(), t.stopPropagation(), !this.disabled && !g(this).hasClass(Ht))
5917                  ) {
5918                      var e = c._getParentFromElement(this),
5919                          n = g(e).hasClass(Rt);
5920                      if (n || 27 !== t.which)
5921                          if (n && (!n || (27 !== t.which && 32 !== t.which))) {
5922                              var i = [].slice.call(e.querySelectorAll(Vt)).filter(function (t) {
5923                                  return g(t).is(":visible");
5924                              });
5925                              if (0 !== i.length) {
5926                                  var o = i.indexOf(t.target);
5927                                  38 === t.which && 0 < o && o--, 40 === t.which && o < i.length - 1 && o++, o < 0 && (o = 0), i[o].focus();
5928                              }
5929                          } else {
5930                              if (27 === t.which) {
5931                                  var r = e.querySelector(Mt);
5932                                  g(r).trigger("focus");
5933                              }
5934                              g(this).trigger("click");
5935                          }
5936                  }
5937              }),
5938              s(c, null, [
5939                  {
5940                      key: "VERSION",
5941                      get: function () {
5942                          return "4.4.1";
5943                      },
5944                  },
5945                  {
5946                      key: "Default",
5947                      get: function () {
5948                          return Zt;
5949                      },
5950                  },
5951                  {
5952                      key: "DefaultType",
5953                      get: function () {
5954                          return te;
5955                      },
5956                  },
5957              ]),
5958              c
5959          );
5960      })();
5961  g(document)
5962      .on(jt.KEYDOWN_DATA_API, Mt, ee._dataApiKeydownHandler)
5963      .on(jt.KEYDOWN_DATA_API, Qt, ee._dataApiKeydownHandler)
5964      .on(jt.CLICK_DATA_API + " " + jt.KEYUP_DATA_API, ee._clearMenus)
5965      .on(jt.CLICK_DATA_API, Mt, function (t) {
5966          t.preventDefault(), t.stopPropagation(), ee._jQueryInterface.call(g(this), "toggle");
5967      })
5968      .on(jt.CLICK_DATA_API, Kt, function (t) {
5969          t.stopPropagation();
5970      }),
5971      (g.fn[At] = ee._jQueryInterface),
5972      (g.fn[At].Constructor = ee),
5973      (g.fn[At].noConflict = function () {
5974          return (g.fn[At] = Pt), ee._jQueryInterface;
5975      });
5976  var ne = "modal",
5977      ie = "bs.modal",
5978      oe = "." + ie,
5979      re = g.fn[ne],
5980      se = { backdrop: !0, keyboard: !0, focus: !0, show: !0 },
5981      ae = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean", show: "boolean" },
5982      le = {
5983          HIDE: "hide" + oe,
5984          HIDE_PREVENTED: "hidePrevented" + oe,
5985          HIDDEN: "hidden" + oe,
5986          SHOW: "show" + oe,
5987          SHOWN: "shown" + oe,
5988          FOCUSIN: "focusin" + oe,
5989          RESIZE: "resize" + oe,
5990          CLICK_DISMISS: "click.dismiss" + oe,
5991          KEYDOWN_DISMISS: "keydown.dismiss" + oe,
5992          MOUSEUP_DISMISS: "mouseup.dismiss" + oe,
5993          MOUSEDOWN_DISMISS: "mousedown.dismiss" + oe,
5994          CLICK_DATA_API: "click" + oe + ".data-api",
5995      },
5996      ce = "modal-dialog-scrollable",
5997      he = "modal-scrollbar-measure",
5998      ue = "modal-backdrop",
5999      fe = "modal-open",
6000      de = "fade",
6001      ge = "show",
6002      _e = "modal-static",
6003      me = ".modal-dialog",
6004      pe = ".modal-body",
6005      ve = '[data-toggle="modal"]',
6006      ye = '[data-dismiss="modal"]',
6007      Ee = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",
6008      Ce = ".sticky-top",
6009      Te = (function () {
6010          function o(t, e) {
6011              (this._config = this._getConfig(e)),
6012                  (this._element = t),
6013                  (this._dialog = t.querySelector(me)),
6014                  (this._backdrop = null),
6015                  (this._isShown = !1),
6016                  (this._isBodyOverflowing = !1),
6017                  (this._ignoreBackdropClick = !1),
6018                  (this._isTransitioning = !1),
6019                  (this._scrollbarWidth = 0);
6020          }
6021          var t = o.prototype;
6022          return (
6023              (t.toggle = function (t) {
6024                  return this._isShown ? this.hide() : this.show(t);
6025              }),
6026              (t.show = function (t) {
6027                  var e = this;
6028                  if (!this._isShown && !this._isTransitioning) {
6029                      g(this._element).hasClass(de) && (this._isTransitioning = !0);
6030                      var n = g.Event(le.SHOW, { relatedTarget: t });
6031                      g(this._element).trigger(n),
6032                          this._isShown ||
6033                              n.isDefaultPrevented() ||
6034                              ((this._isShown = !0),
6035                              this._checkScrollbar(),
6036                              this._setScrollbar(),
6037                              this._adjustDialog(),
6038                              this._setEscapeEvent(),
6039                              this._setResizeEvent(),
6040                              g(this._element).on(le.CLICK_DISMISS, ye, function (t) {
6041                                  return e.hide(t);
6042                              }),
6043                              g(this._dialog).on(le.MOUSEDOWN_DISMISS, function () {
6044                                  g(e._element).one(le.MOUSEUP_DISMISS, function (t) {
6045                                      g(t.target).is(e._element) && (e._ignoreBackdropClick = !0);
6046                                  });
6047                              }),
6048                              this._showBackdrop(function () {
6049                                  return e._showElement(t);
6050                              }));
6051                  }
6052              }),
6053              (t.hide = function (t) {
6054                  var e = this;
6055                  if ((t && t.preventDefault(), this._isShown && !this._isTransitioning)) {
6056                      var n = g.Event(le.HIDE);
6057                      if ((g(this._element).trigger(n), this._isShown && !n.isDefaultPrevented())) {
6058                          this._isShown = !1;
6059                          var i = g(this._element).hasClass(de);
6060                          if (
6061                              (i && (this._isTransitioning = !0),
6062                              this._setEscapeEvent(),
6063                              this._setResizeEvent(),
6064                              g(document).off(le.FOCUSIN),
6065                              g(this._element).removeClass(ge),
6066                              g(this._element).off(le.CLICK_DISMISS),
6067                              g(this._dialog).off(le.MOUSEDOWN_DISMISS),
6068                              i)
6069                          ) {
6070                              var o = _.getTransitionDurationFromElement(this._element);
6071                              g(this._element)
6072                                  .one(_.TRANSITION_END, function (t) {
6073                                      return e._hideModal(t);
6074                                  })
6075                                  .emulateTransitionEnd(o);
6076                          } else this._hideModal();
6077                      }
6078                  }
6079              }),
6080              (t.dispose = function () {
6081                  [window, this._element, this._dialog].forEach(function (t) {
6082                      return g(t).off(oe);
6083                  }),
6084                      g(document).off(le.FOCUSIN),
6085                      g.removeData(this._element, ie),
6086                      (this._config = null),
6087                      (this._element = null),
6088                      (this._dialog = null),
6089                      (this._backdrop = null),
6090                      (this._isShown = null),
6091                      (this._isBodyOverflowing = null),
6092                      (this._ignoreBackdropClick = null),
6093                      (this._isTransitioning = null),
6094                      (this._scrollbarWidth = null);
6095              }),
6096              (t.handleUpdate = function () {
6097                  this._adjustDialog();
6098              }),
6099              (t._getConfig = function (t) {
6100                  return (t = l({}, se, {}, t)), _.typeCheckConfig(ne, t, ae), t;
6101              }),
6102              (t._triggerBackdropTransition = function () {
6103                  var t = this;
6104                  if ("static" === this._config.backdrop) {
6105                      var e = g.Event(le.HIDE_PREVENTED);
6106                      if ((g(this._element).trigger(e), e.defaultPrevented)) return;
6107                      this._element.classList.add(_e);
6108                      var n = _.getTransitionDurationFromElement(this._element);
6109                      g(this._element)
6110                          .one(_.TRANSITION_END, function () {
6111                              t._element.classList.remove(_e);
6112                          })
6113                          .emulateTransitionEnd(n),
6114                          this._element.focus();
6115                  } else this.hide();
6116              }),
6117              (t._showElement = function (t) {
6118                  var e = this,
6119                      n = g(this._element).hasClass(de),
6120                      i = this._dialog ? this._dialog.querySelector(pe) : null;
6121                  (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE) || document.body.appendChild(this._element),
6122                      (this._element.style.display = "block"),
6123                      this._element.removeAttribute("aria-hidden"),
6124                      this._element.setAttribute("aria-modal", !0),
6125                      g(this._dialog).hasClass(ce) && i ? (i.scrollTop = 0) : (this._element.scrollTop = 0),
6126                      n && _.reflow(this._element),
6127                      g(this._element).addClass(ge),
6128                      this._config.focus && this._enforceFocus();
6129                  function o() {
6130                      e._config.focus && e._element.focus(), (e._isTransitioning = !1), g(e._element).trigger(r);
6131                  }
6132                  var r = g.Event(le.SHOWN, { relatedTarget: t });
6133                  if (n) {
6134                      var s = _.getTransitionDurationFromElement(this._dialog);
6135                      g(this._dialog).one(_.TRANSITION_END, o).emulateTransitionEnd(s);
6136                  } else o();
6137              }),
6138              (t._enforceFocus = function () {
6139                  var e = this;
6140                  g(document)
6141                      .off(le.FOCUSIN)
6142                      .on(le.FOCUSIN, function (t) {
6143                          document !== t.target && e._element !== t.target && 0 === g(e._element).has(t.target).length && e._element.focus();
6144                      });
6145              }),
6146              (t._setEscapeEvent = function () {
6147                  var e = this;
6148                  this._isShown && this._config.keyboard
6149                      ? g(this._element).on(le.KEYDOWN_DISMISS, function (t) {
6150                            27 === t.which && e._triggerBackdropTransition();
6151                        })
6152                      : this._isShown || g(this._element).off(le.KEYDOWN_DISMISS);
6153              }),
6154              (t._setResizeEvent = function () {
6155                  var e = this;
6156                  this._isShown
6157                      ? g(window).on(le.RESIZE, function (t) {
6158                            return e.handleUpdate(t);
6159                        })
6160                      : g(window).off(le.RESIZE);
6161              }),
6162              (t._hideModal = function () {
6163                  var t = this;
6164                  (this._element.style.display = "none"),
6165                      this._element.setAttribute("aria-hidden", !0),
6166                      this._element.removeAttribute("aria-modal"),
6167                      (this._isTransitioning = !1),
6168                      this._showBackdrop(function () {
6169                          g(document.body).removeClass(fe), t._resetAdjustments(), t._resetScrollbar(), g(t._element).trigger(le.HIDDEN);
6170                      });
6171              }),
6172              (t._removeBackdrop = function () {
6173                  this._backdrop && (g(this._backdrop).remove(), (this._backdrop = null));
6174              }),
6175              (t._showBackdrop = function (t) {
6176                  var e = this,
6177                      n = g(this._element).hasClass(de) ? de : "";
6178                  if (this._isShown && this._config.backdrop) {
6179                      if (
6180                          ((this._backdrop = document.createElement("div")),
6181                          (this._backdrop.className = ue),
6182                          n && this._backdrop.classList.add(n),
6183                          g(this._backdrop).appendTo(document.body),
6184                          g(this._element).on(le.CLICK_DISMISS, function (t) {
6185                              e._ignoreBackdropClick ? (e._ignoreBackdropClick = !1) : t.target === t.currentTarget && e._triggerBackdropTransition();
6186                          }),
6187                          n && _.reflow(this._backdrop),
6188                          g(this._backdrop).addClass(ge),
6189                          !t)
6190                      )
6191                          return;
6192                      if (!n) return void t();
6193                      var i = _.getTransitionDurationFromElement(this._backdrop);
6194                      g(this._backdrop).one(_.TRANSITION_END, t).emulateTransitionEnd(i);
6195                  } else if (!this._isShown && this._backdrop) {
6196                      g(this._backdrop).removeClass(ge);
6197                      var o = function () {
6198                          e._removeBackdrop(), t && t();
6199                      };
6200                      if (g(this._element).hasClass(de)) {
6201                          var r = _.getTransitionDurationFromElement(this._backdrop);
6202                          g(this._backdrop).one(_.TRANSITION_END, o).emulateTransitionEnd(r);
6203                      } else o();
6204                  } else t && t();
6205              }),
6206              (t._adjustDialog = function () {
6207                  var t = this._element.scrollHeight > document.documentElement.clientHeight;
6208                  !this._isBodyOverflowing && t && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !t && (this._element.style.paddingRight = this._scrollbarWidth + "px");
6209              }),
6210              (t._resetAdjustments = function () {
6211                  (this._element.style.paddingLeft = ""), (this._element.style.paddingRight = "");
6212              }),
6213              (t._checkScrollbar = function () {
6214                  var t = document.body.getBoundingClientRect();
6215                  (this._isBodyOverflowing = t.left + t.right < window.innerWidth), (this._scrollbarWidth = this._getScrollbarWidth());
6216              }),
6217              (t._setScrollbar = function () {
6218                  var o = this;
6219                  if (this._isBodyOverflowing) {
6220                      var t = [].slice.call(document.querySelectorAll(Ee)),
6221                          e = [].slice.call(document.querySelectorAll(Ce));
6222                      g(t).each(function (t, e) {
6223                          var n = e.style.paddingRight,
6224                              i = g(e).css("padding-right");
6225                          g(e)
6226                              .data("padding-right", n)
6227                              .css("padding-right", parseFloat(i) + o._scrollbarWidth + "px");
6228                      }),
6229                          g(e).each(function (t, e) {
6230                              var n = e.style.marginRight,
6231                                  i = g(e).css("margin-right");
6232                              g(e)
6233                                  .data("margin-right", n)
6234                                  .css("margin-right", parseFloat(i) - o._scrollbarWidth + "px");
6235                          });
6236                      var n = document.body.style.paddingRight,
6237                          i = g(document.body).css("padding-right");
6238                      g(document.body)
6239                          .data("padding-right", n)
6240                          .css("padding-right", parseFloat(i) + this._scrollbarWidth + "px");
6241                  }
6242                  g(document.body).addClass(fe);
6243              }),
6244              (t._resetScrollbar = function () {
6245                  var t = [].slice.call(document.querySelectorAll(Ee));
6246                  g(t).each(function (t, e) {
6247                      var n = g(e).data("padding-right");
6248                      g(e).removeData("padding-right"), (e.style.paddingRight = n || "");
6249                  });
6250                  var e = [].slice.call(document.querySelectorAll("" + Ce));
6251                  g(e).each(function (t, e) {
6252                      var n = g(e).data("margin-right");
6253                      "undefined" != typeof n && g(e).css("margin-right", n).removeData("margin-right");
6254                  });
6255                  var n = g(document.body).data("padding-right");
6256                  g(document.body).removeData("padding-right"), (document.body.style.paddingRight = n || "");
6257              }),
6258              (t._getScrollbarWidth = function () {
6259                  var t = document.createElement("div");
6260                  (t.className = he), document.body.appendChild(t);
6261                  var e = t.getBoundingClientRect().width - t.clientWidth;
6262                  return document.body.removeChild(t), e;
6263              }),
6264              (o._jQueryInterface = function (n, i) {
6265                  return this.each(function () {
6266                      var t = g(this).data(ie),
6267                          e = l({}, se, {}, g(this).data(), {}, "object" == typeof n && n ? n : {});
6268                      if ((t || ((t = new o(this, e)), g(this).data(ie, t)), "string" == typeof n)) {
6269                          if ("undefined" == typeof t[n]) throw new TypeError('No method named "' + n + '"');
6270                          t[n](i);
6271                      } else e.show && t.show(i);
6272                  });
6273              }),
6274              s(o, null, [
6275                  {
6276                      key: "VERSION",
6277                      get: function () {
6278                          return "4.4.1";
6279                      },
6280                  },
6281                  {
6282                      key: "Default",
6283                      get: function () {
6284                          return se;
6285                      },
6286                  },
6287              ]),
6288              o
6289          );
6290      })();
6291  g(document).on(le.CLICK_DATA_API, ve, function (t) {
6292      var e,
6293          n = this,
6294          i = _.getSelectorFromElement(this);
6295      i && (e = document.querySelector(i));
6296      var o = g(e).data(ie) ? "toggle" : l({}, g(e).data(), {}, g(this).data());
6297      ("A" !== this.tagName && "AREA" !== this.tagName) || t.preventDefault();
6298      var r = g(e).one(le.SHOW, function (t) {
6299          t.isDefaultPrevented() ||
6300              r.one(le.HIDDEN, function () {
6301                  g(n).is(":visible") && n.focus();
6302              });
6303      });
6304      Te._jQueryInterface.call(g(e), o, this);
6305  }),
6306      (g.fn[ne] = Te._jQueryInterface),
6307      (g.fn[ne].Constructor = Te),
6308      (g.fn[ne].noConflict = function () {
6309          return (g.fn[ne] = re), Te._jQueryInterface;
6310      });
6311  var be = ["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"],
6312      Se = {
6313          "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i],
6314          a: ["target", "href", "title", "rel"],
6315          area: [],
6316          b: [],
6317          br: [],
6318          col: [],
6319          code: [],
6320          div: [],
6321          em: [],
6322          hr: [],
6323          h1: [],
6324          h2: [],
6325          h3: [],
6326          h4: [],
6327          h5: [],
6328          h6: [],
6329          i: [],
6330          img: ["src", "alt", "title", "width", "height"],
6331          li: [],
6332          ol: [],
6333          p: [],
6334          pre: [],
6335          s: [],
6336          small: [],
6337          span: [],
6338          sub: [],
6339          sup: [],
6340          strong: [],
6341          u: [],
6342          ul: [],
6343      },
6344      De = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,
6345      Ie = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
6346  function we(t, r, e) {
6347      if (0 === t.length) return t;
6348      if (e && "function" == typeof e) return e(t);
6349      for (
6350          var n = new window.DOMParser().parseFromString(t, "text/html"),
6351              s = Object.keys(r),
6352              a = [].slice.call(n.body.querySelectorAll("*")),
6353              i = function (t) {
6354                  var e = a[t],
6355                      n = e.nodeName.toLowerCase();
6356                  if (-1 === s.indexOf(e.nodeName.toLowerCase())) return e.parentNode.removeChild(e), "continue";
6357                  var i = [].slice.call(e.attributes),
6358                      o = [].concat(r["*"] || [], r[n] || []);
6359                  i.forEach(function (t) {
6360                      !(function (t, e) {
6361                          var n = t.nodeName.toLowerCase();
6362                          if (-1 !== e.indexOf(n)) return -1 === be.indexOf(n) || Boolean(t.nodeValue.match(De) || t.nodeValue.match(Ie));
6363                          for (
6364                              var i = e.filter(function (t) {
6365                                      return t instanceof RegExp;
6366                                  }),
6367                                  o = 0,
6368                                  r = i.length;
6369                              o < r;
6370                              o++
6371                          )
6372                              if (n.match(i[o])) return !0;
6373                          return !1;
6374                      })(t, o) && e.removeAttribute(t.nodeName);
6375                  });
6376              },
6377              o = 0,
6378              l = a.length;
6379          o < l;
6380          o++
6381      )
6382          i(o);
6383      return n.body.innerHTML;
6384  }
6385  var Ae = "tooltip",
6386      Ne = "bs.tooltip",
6387      Oe = "." + Ne,
6388      ke = g.fn[Ae],
6389      Pe = "bs-tooltip",
6390      Le = new RegExp("(^|\\s)" + Pe + "\\S+", "g"),
6391      je = ["sanitize", "whiteList", "sanitizeFn"],
6392      He = {
6393          animation: "boolean",
6394          template: "string",
6395          title: "(string|element|function)",
6396          trigger: "string",
6397          delay: "(number|object)",
6398          html: "boolean",
6399          selector: "(string|boolean)",
6400          placement: "(string|function)",
6401          offset: "(number|string|function)",
6402          container: "(string|element|boolean)",
6403          fallbackPlacement: "(string|array)",
6404          boundary: "(string|element)",
6405          sanitize: "boolean",
6406          sanitizeFn: "(null|function)",
6407          whiteList: "object",
6408          popperConfig: "(null|object)",
6409      },
6410      Re = { AUTO: "auto", TOP: "top", RIGHT: "right", BOTTOM: "bottom", LEFT: "left" },
6411      xe = {
6412          animation: !0,
6413          template: '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',
6414          trigger: "hover focus",
6415          title: "",
6416          delay: 0,
6417          html: !1,
6418          selector: !1,
6419          placement: "top",
6420          offset: 0,
6421          container: !1,
6422          fallbackPlacement: "flip",
6423          boundary: "scrollParent",
6424          sanitize: !0,
6425          sanitizeFn: null,
6426          whiteList: Se,
6427          popperConfig: null,
6428      },
6429      Fe = "show",
6430      Ue = "out",
6431      We = {
6432          HIDE: "hide" + Oe,
6433          HIDDEN: "hidden" + Oe,
6434          SHOW: "show" + Oe,
6435          SHOWN: "shown" + Oe,
6436          INSERTED: "inserted" + Oe,
6437          CLICK: "click" + Oe,
6438          FOCUSIN: "focusin" + Oe,
6439          FOCUSOUT: "focusout" + Oe,
6440          MOUSEENTER: "mouseenter" + Oe,
6441          MOUSELEAVE: "mouseleave" + Oe,
6442      },
6443      qe = "fade",
6444      Me = "show",
6445      Ke = ".tooltip-inner",
6446      Qe = ".arrow",
6447      Be = "hover",
6448      Ve = "focus",
6449      Ye = "click",
6450      ze = "manual",
6451      Xe = (function () {
6452          function i(t, e) {
6453              if ("undefined" == typeof u) throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");
6454              (this._isEnabled = !0), (this._timeout = 0), (this._hoverState = ""), (this._activeTrigger = {}), (this._popper = null), (this.element = t), (this.config = this._getConfig(e)), (this.tip = null), this._setListeners();
6455          }
6456          var t = i.prototype;
6457          return (
6458              (t.enable = function () {
6459                  this._isEnabled = !0;
6460              }),
6461              (t.disable = function () {
6462                  this._isEnabled = !1;
6463              }),
6464              (t.toggleEnabled = function () {
6465                  this._isEnabled = !this._isEnabled;
6466              }),
6467              (t.toggle = function (t) {
6468                  if (this._isEnabled)
6469                      if (t) {
6470                          var e = this.constructor.DATA_KEY,
6471                              n = g(t.currentTarget).data(e);
6472                          n || ((n = new this.constructor(t.currentTarget, this._getDelegateConfig())), g(t.currentTarget).data(e, n)),
6473                              (n._activeTrigger.click = !n._activeTrigger.click),
6474                              n._isWithActiveTrigger() ? n._enter(null, n) : n._leave(null, n);
6475                      } else {
6476                          if (g(this.getTipElement()).hasClass(Me)) return void this._leave(null, this);
6477                          this._enter(null, this);
6478                      }
6479              }),
6480              (t.dispose = function () {
6481                  clearTimeout(this._timeout),
6482                      g.removeData(this.element, this.constructor.DATA_KEY),
6483                      g(this.element).off(this.constructor.EVENT_KEY),
6484                      g(this.element).closest(".modal").off("hide.bs.modal", this._hideModalHandler),
6485                      this.tip && g(this.tip).remove(),
6486                      (this._isEnabled = null),
6487                      (this._timeout = null),
6488                      (this._hoverState = null),
6489                      (this._activeTrigger = null),
6490                      this._popper && this._popper.destroy(),
6491                      (this._popper = null),
6492                      (this.element = null),
6493                      (this.config = null),
6494                      (this.tip = null);
6495              }),
6496              (t.show = function () {
6497                  var e = this;
6498                  if ("none" === g(this.element).css("display")) throw new Error("Please use show on visible elements");
6499                  var t = g.Event(this.constructor.Event.SHOW);
6500                  if (this.isWithContent() && this._isEnabled) {
6501                      g(this.element).trigger(t);
6502                      var n = _.findShadowRoot(this.element),
6503                          i = g.contains(null !== n ? n : this.element.ownerDocument.documentElement, this.element);
6504                      if (t.isDefaultPrevented() || !i) return;
6505                      var o = this.getTipElement(),
6506                          r = _.getUID(this.constructor.NAME);
6507                      o.setAttribute("id", r), this.element.setAttribute("aria-describedby", r), this.setContent(), this.config.animation && g(o).addClass(qe);
6508                      var s = "function" == typeof this.config.placement ? this.config.placement.call(this, o, this.element) : this.config.placement,
6509                          a = this._getAttachment(s);
6510                      this.addAttachmentClass(a);
6511                      var l = this._getContainer();
6512                      g(o).data(this.constructor.DATA_KEY, this),
6513                          g.contains(this.element.ownerDocument.documentElement, this.tip) || g(o).appendTo(l),
6514                          g(this.element).trigger(this.constructor.Event.INSERTED),
6515                          (this._popper = new u(this.element, o, this._getPopperConfig(a))),
6516                          g(o).addClass(Me),
6517                          "ontouchstart" in document.documentElement && g(document.body).children().on("mouseover", null, g.noop);
6518                      var c = function () {
6519                          e.config.animation && e._fixTransition();
6520                          var t = e._hoverState;
6521                          (e._hoverState = null), g(e.element).trigger(e.constructor.Event.SHOWN), t === Ue && e._leave(null, e);
6522                      };
6523                      if (g(this.tip).hasClass(qe)) {
6524                          var h = _.getTransitionDurationFromElement(this.tip);
6525                          g(this.tip).one(_.TRANSITION_END, c).emulateTransitionEnd(h);
6526                      } else c();
6527                  }
6528              }),
6529              (t.hide = function (t) {
6530                  function e() {
6531                      n._hoverState !== Fe && i.parentNode && i.parentNode.removeChild(i),
6532                          n._cleanTipClass(),
6533                          n.element.removeAttribute("aria-describedby"),
6534                          g(n.element).trigger(n.constructor.Event.HIDDEN),
6535                          null !== n._popper && n._popper.destroy(),
6536                          t && t();
6537                  }
6538                  var n = this,
6539                      i = this.getTipElement(),
6540                      o = g.Event(this.constructor.Event.HIDE);
6541                  if ((g(this.element).trigger(o), !o.isDefaultPrevented())) {
6542                      if (
6543                          (g(i).removeClass(Me),
6544                          "ontouchstart" in document.documentElement && g(document.body).children().off("mouseover", null, g.noop),
6545                          (this._activeTrigger[Ye] = !1),
6546                          (this._activeTrigger[Ve] = !1),
6547                          (this._activeTrigger[Be] = !1),
6548                          g(this.tip).hasClass(qe))
6549                      ) {
6550                          var r = _.getTransitionDurationFromElement(i);
6551                          g(i).one(_.TRANSITION_END, e).emulateTransitionEnd(r);
6552                      } else e();
6553                      this._hoverState = "";
6554                  }
6555              }),
6556              (t.update = function () {
6557                  null !== this._popper && this._popper.scheduleUpdate();
6558              }),
6559              (t.isWithContent = function () {
6560                  return Boolean(this.getTitle());
6561              }),
6562              (t.addAttachmentClass = function (t) {
6563                  g(this.getTipElement()).addClass(Pe + "-" + t);
6564              }),
6565              (t.getTipElement = function () {
6566                  return (this.tip = this.tip || g(this.config.template)[0]), this.tip;
6567              }),
6568              (t.setContent = function () {
6569                  var t = this.getTipElement();
6570                  this.setElementContent(g(t.querySelectorAll(Ke)), this.getTitle()), g(t).removeClass(qe + " " + Me);
6571              }),
6572              (t.setElementContent = function (t, e) {
6573                  "object" != typeof e || (!e.nodeType && !e.jquery)
6574                      ? this.config.html
6575                          ? (this.config.sanitize && (e = we(e, this.config.whiteList, this.config.sanitizeFn)), t.html(e))
6576                          : t.text(e)
6577                      : this.config.html
6578                      ? g(e).parent().is(t) || t.empty().append(e)
6579                      : t.text(g(e).text());
6580              }),
6581              (t.getTitle = function () {
6582                  var t = this.element.getAttribute("data-original-title");
6583                  return (t = t || ("function" == typeof this.config.title ? this.config.title.call(this.element) : this.config.title));
6584              }),
6585              (t._getPopperConfig = function (t) {
6586                  var e = this;
6587                  return l(
6588                      {},
6589                      {
6590                          placement: t,
6591                          modifiers: { offset: this._getOffset(), flip: { behavior: this.config.fallbackPlacement }, arrow: { element: Qe }
6591, preventOverflow: { boundariesElement: this.config.boundary } },
6592                          onCreate: function (t) {
6593                              t.originalPlacement !== t.placement && e._handlePopperPlacementChange(t);
6594                          },
6595                          onUpdate: function (t) {
6596                              return e._handlePopperPlacementChange(t);
6597                          },
6598                      },
6599                      {},
6600                      this.config.popperConfig
6601                  );
6602              }),
6603              (t._getOffset = function () {
6604                  var e = this,
6605                      t = {};
6606                  return (
6607                      "function" == typeof this.config.offset
6608                          ? (t.fn = function (t) {
6609                                return (t.offsets = l({}, t.offsets, {}, e.config.offset(t.offsets, e.element) || {})), t;
6610                            })
6611                          : (t.offset = this.config.offset),
6612                      t
6613                  );
6614              }),
6615              (t._getContainer = function () {
6616                  return !1 === this.config.container ? document.body : _.isElement(this.config.container) ? g(this.config.container) : g(document).find(this.config.container);
6617              }),
6618              (t._getAttachment = function (t) {
6619                  return Re[t.toUpperCase()];
6620              }),
6621              (t._setListeners = function () {
6622                  var i = this;
6623                  this.config.trigger.split(" ").forEach(function (t) {
6624                      if ("click" === t)
6625                          g(i.element).on(i.constructor.Event.CLICK, i.config.selector, function (t) {
6626                              return i.toggle(t);
6627                          });
6628                      else if (t !== ze) {
6629                          var e = t === Be ? i.constructor.Event.MOUSEENTER : i.constructor.Event.FOCUSIN,
6630                              n = t === Be ? i.constructor.Event.MOUSELEAVE : i.constructor.Event.FOCUSOUT;
6631                          g(i.element)
6632                              .on(e, i.config.selector, function (t) {
6633                                  return i._enter(t);
6634                              })
6635                              .on(n, i.config.selector, function (t) {
6636                                  return i._leave(t);
6637                              });
6638                      }
6639                  }),
6640                      (this._hideModalHandler = function () {
6641                          i.element && i.hide();
6642                      }),
6643                      g(this.element).closest(".modal").on("hide.bs.modal", this._hideModalHandler),
6644                      this.config.selector ? (this.config = l({}, this.config, { trigger: "manual", selector: "" })) : this._fixTitle();
6645              }),
6646              (t._fixTitle = function () {
6647                  var t = typeof this.element.getAttribute("data-original-title");
6648                  (!this.element.getAttribute("title") && "string" == t) || (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", ""));
6649              }),
6650              (t._enter = function (t, e) {
6651                  var n = this.constructor.DATA_KEY;
6652                  (e = e || g(t.currentTarget).data(n)) || ((e = new this.constructor(t.currentTarget, this._getDelegateConfig())), g(t.currentTarget).data(n, e)),
6653                      t && (e._activeTrigger["focusin" === t.type ? Ve : Be] = !0),
6654                      g(e.getTipElement()).hasClass(Me) || e._hoverState === Fe
6655                          ? (e._hoverState = Fe)
6656                          : (clearTimeout(e._timeout),
6657                            (e._hoverState = Fe),
6658                            e.config.delay && e.config.delay.show
6659                                ? (e._timeout = setTimeout(function () {
6660                                      e._hoverState === Fe && e.show();
6661                                  }, e.config.delay.show))
6662                                : e.show());
6663              }),
6664              (t._leave = function (t, e) {
6665                  var n = this.constructor.DATA_KEY;
6666                  (e = e || g(t.currentTarget).data(n)) || ((e = new this.constructor(t.currentTarget, this._getDelegateConfig())), g(t.currentTarget).data(n, e)),
6667                      t && (e._activeTrigger["focusout" === t.type ? Ve : Be] = !1),
6668                      e._isWithActiveTrigger() ||
6669                          (clearTimeout(e._timeout),
6670                          (e._hoverState = Ue),
6671                          e.config.delay && e.config.delay.hide
6672                              ? (e._timeout = setTimeout(function () {
6673                                    e._hoverState === Ue && e.hide();
6674                                }, e.config.delay.hide))
6675                              : e.hide());
6676              }),
6677              (t._isWithActiveTrigger = function () {
6678                  for (var t in this._activeTrigger) if (this._activeTrigger[t]) return !0;
6679                  return !1;
6680              }),
6681              (t._getConfig = function (t) {
6682                  var e = g(this.element).data();
6683                  return (
6684                      Object.keys(e).forEach(function (t) {
6685                          -1 !== je.indexOf(t) && delete e[t];
6686                      }),
6687                      "number" == typeof (t = l({}, this.constructor.Default, {}, e, {}, "object" == typeof t && t ? t : {})).delay && (t.delay = { show: t.delay, hide: t.delay }),
6688                      "number" == typeof t.title && (t.title = t.title.toString()),
6689                      "number" == typeof t.content && (t.content = t.content.toString()),
6690                      _.typeCheckConfig(Ae, t, this.constructor.DefaultType),
6691                      t.sanitize && (t.template = we(t.template, t.whiteList, t.sanitizeFn)),
6692                      t
6693                  );
6694              }),
6695              (t._getDelegateConfig = function () {
6696                  var t = {};
6697                  if (this.config) for (var e in this.config) this.constructor.Default[e] !== this.config[e] && (t[e] = this.config[e]);
6698                  return t;
6699              }),
6700              (t._cleanTipClass = function () {
6701                  var t = g(this.getTipElement()),
6702                      e = t.attr("class").match(Le);
6703                  null !== e && e.length && t.removeClass(e.join(""));
6704              }),
6705              (t._handlePopperPlacementChange = function (t) {
6706                  var e = t.instance;
6707                  (this.tip = e.popper), this._cleanTipClass(), this.addAttachmentClass(this._getAttachment(t.placement));
6708              }),
6709              (t._fixTransition = function () {
6710                  var t = this.getTipElement(),
6711                      e = this.config.animation;
6712                  null === t.getAttribute("x-placement") && (g(t).removeClass(qe), (this.config.animation = !1), this.hide(), this.show(), (this.config.animation = e));
6713              }),
6714              (i._jQueryInterface = function (n) {
6715                  return this.each(function () {
6716                      var t = g(this).data(Ne),
6717                          e = "object" == typeof n && n;
6718                      if ((t || !/dispose|hide/.test(n)) && (t || ((t = new i(this, e)), g(this).data(Ne, t)), "string" == typeof n)) {
6719                          if ("undefined" == typeof t[n]) throw new TypeError('No method n
6719amed "' + n + '"');
6720                          t[n]();
6721                      }
6722                  });
6723              }),
6724              s(i, null, [
6725                  {
6726                      key: "VERSION",
6727                      get: function () {
6728                          return "4.4.1";
6729                      },
6730                  },
6731                  {
6732                      key: "Default",
6733                      get: function () {
6734                          return xe;
6735                      },
6736                  },
6737                  {
6738                      key: "NAME",
6739                      get: function () {
6740                          return Ae;
6741                      },
6742                  },
6743                  {
6744                      key: "DATA_KEY",
6745                      get: function () {
6746                          return Ne;
6747                      },
6748                  },
6749                  {
6750                      key: "Event",
6751                      get: function () {
6752                          return We;
6753                      },
6754                  },
6755                  {
6756                      key: "EVENT_KEY",
6757                      get: function () {
6758                          return Oe;
6759                      },
6760                  },
6761                  {
6762                      key: "DefaultType",
6763                      get: function () {
6764                          return He;
6765                      },
6766                  },
6767              ]),
6768              i
6769          );
6770      })();
6771  (g.fn[Ae] = Xe._jQueryInterface),
6772      (g.fn[Ae].Constructor = Xe),
6773      (g.fn[Ae].noConflict = function () {
6774          return (g.fn[Ae] = ke), Xe._jQueryInterface;
6775      });
6776  var $e = "popover",
6777      Ge = "bs.popover",
6778      Je = "." + Ge,
6779      Ze = g.fn[$e],
6780      tn = "bs-popover",
6781      en = new RegExp("(^|\\s)" + tn + "\\S+", "g"),
6782      nn = l({}, Xe.Default, { placement: "right", trigger: "click", content: "", template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>' }),
6783      on = l({}, Xe.DefaultType, { content: "(string|element|function)" }),
6784      rn = "fade",
6785      sn = "show",
6786      an = ".popover-header",
6787      ln = ".popover-body",
6788      cn = {
6789          HIDE: "hide" + Je,
6790          HIDDEN: "hidden" + Je,
6791          SHOW: "show" + Je,
6792          SHOWN: "shown" + Je,
6793          INSERTED: "inserted" + Je,
6794          CLICK: "click" + Je,
6795          FOCUSIN: "focusin" + Je,
6796          FOCUSOUT: "focusout" + Je,
6797          MOUSEENTER: "mouseenter" + Je,
6798          MOUSELEAVE: "mouseleave" + Je,
6799      },
6800      hn = (function (t) {
6801          function i() {
6802              return t.apply(this, arguments) || this;
6803          }
6804          !(function (t, e) {
6805              (t.prototype = Object.create(e.prototype)), ((t.prototype.constructor = t).__proto__ = e);
6806          })(i, t);
6807          var e = i.prototype;
6808          return (
6809              (e.isWithContent = function () {
6810                  return this.getTitle() || this._getContent();
6811              }),
6812              (e.addAttachmentClass = function (t) {
6813                  g(this.getTipElement()).addClass(tn + "-" + t);
6814              }),
6815              (e.getTipElement = function () {
6816                  return (this.tip = this.tip || g(this.config.template)[0]), this.tip;
6817              }),
6818              (e.setContent = function () {
6819                  var t = g(this.getTipElement());
6820                  this.setElementContent(t.find(an), this.getTitle());
6821                  var e = this._getContent();
6822                  "function" == typeof e && (e = e.call(this.element)), this.setElementContent(t.find(ln), e), t.removeClass(rn + " " + sn);
6823              }),
6824              (e._getContent = function () {
6825                  return this.element.getAttribute("data-content") || this.config.content;
6826              }),
6827              (e._cleanTipClass = function () {
6828                  var t = g(this.getTipElement()),
6829                      e = t.attr("class").match(en);
6830                  null !== e && 0 < e.length && t.removeClass(e.join(""));
6831              }),
6832              (i._jQueryInterface = function (n) {
6833                  return this.each(function () {
6834                      var t = g(this).data(Ge),
6835                          e = "object" == typeof n ? n : null;
6836                      if ((t || !/dispose|hide/.test(n)) && (t || ((t = new i(this, e)), g(this).data(Ge, t)), "string" == typeof n)) {
6837                          if ("undefined" == typeof t[n]) throw new TypeError('No method n
6837amed "' + n + '"');
6838                          t[n]();
6839                      }
6840                  });
6841              }),
6842              s(i, null, [
6843                  {
6844                      key: "VERSION",
6845                      get: function () {
6846                          return "4.4.1";
6847                      },
6848                  },
6849                  {
6850                      key: "Default",
6851                      get: function () {
6852                          return nn;
6853                      },
6854                  },
6855                  {
6856                      key: "NAME",
6857                      get: function () {
6858                          return $e;
6859                      },
6860                  },
6861                  {
6862                      key: "DATA_KEY",
6863                      get: function () {
6864                          return Ge;
6865                      },
6866                  },
6867                  {
6868                      key: "Event",
6869                      get: function () {
6870                          return cn;
6871                      },
6872                  },
6873                  {
6874                      key: "EVENT_KEY",
6875                      get: function () {
6876                          return Je;
6877                      },
6878                  },
6879                  {
6880                      key: "DefaultType",
6881                      get: function () {
6882                          return on;
6883                      },
6884                  },
6885              ]),
6886              i
6887          );
6888      })(Xe);
6889  (g.fn[$e] = hn._jQueryInterface),
6890      (g.fn[$e].Constructor = hn),
6891      (g.fn[$e].noConflict = function () {
6892          return (g.fn[$e] = Ze), hn._jQueryInterface;
6893      });
6894  var un = "scrollspy",
6895      fn = "bs.scrollspy",
6896      dn = "." + fn,
6897      gn = g.fn[un],
6898      _n = { offset: 10, method: "auto", target: "" },
6899      mn = { offset: "number", method: "string", target: "(string|element)" },
6900      pn = { ACTIVATE: "activate" + dn, SCROLL: "scroll" + dn, LOAD_DATA_API: "load" + dn + ".data-api" },
6901      vn = "dropdown-item",
6902      yn = "active",
6903      En = '[data-spy="scroll"]',
6904      Cn = ".nav, .list-group",
6905      Tn = ".nav-link",
6906      bn = ".nav-item",
6907      Sn = ".list-group-item",
6908      Dn = ".dropdown",
6909      In = ".dropdown-item",
6910      wn = ".dropdown-toggle",
6911      An = "offset",
6912      Nn = "position",
6913      On = (function () {
6914          function n(t, e) {
6915              var n = this;
6916              (this._element = t),
6917                  (this._scrollElement = "BODY" === t.tagName ? window : t),
6918                  (this._config = this._getConfig(e)),
6919                  (this._selector = this._config.target + " " + Tn + "," + this._config.target + " " + Sn + "," + this._config.target + " " + In),
6920                  (this._offsets = []),
6921                  (this._targets = []),
6922                  (this._activeTarget = null),
6923                  (this._scrollHeight = 0),
6924                  g(this._scrollElement).on(pn.SCROLL, function (t) {
6925                      return n._process(t);
6926                  }),
6927                  this.refresh(),
6928                  this._process();
6929          }
6930          var t = n.prototype;
6931          return (
6932              (t.refresh = function () {
6933                  var e = this,
6934                      t = this._scrollElement === this._scrollElement.window ? An : Nn,
6935                      o = "auto" === this._config.method ? t : this._config.method,
6936                      r = o === Nn ? this._getScrollTop() : 0;
6937                  (this._offsets = []),
6938                      (this._targets = []),
6939                      (this._scrollHeight = this._getScrollHeight()),
6940                      [].slice
6941                          .call(document.querySelectorAll(this._selector))
6942                          .map(function (t) {
6943                              var e,
6944                                  n = _.getSelectorFromElement(t);
6945                              if ((n && (e = document.querySelector(n)), e)) {
6946                                  var i = e.getBoundingClientRect();
6947                                  if (i.width || i.height) return [g(e)[o]().top + r, n];
6948                              }
6949                              return null;
6950                          })
6951                          .filter(function (t) {
6952                              return t;
6953                          })
6954                          .sort(function (t, e) {
6955                              return t[0] - e[0];
6956                          })
6957                          .forEach(function (t) {
6958                              e._offsets.push(t[0]), e._targets.push(t[1]);
6959                          });
6960              }),
6961              (t.dispose = function () {
6962                  g.removeData(this._element, fn),
6963                      g(this._scrollElement).off(dn),
6964                      (this._element = null),
6965                      (this._scrollElement = null),
6966                      (this._config = null),
6967                      (this._selector = null),
6968                      (this._offsets = null),
6969                      (this._targets = null),
6970                      (this._activeTarget = null),
6971                      (this._scrollHeight = null);
6972              }),
6973              (t._getConfig = function (t) {
6974                  if ("string" != typeof (t = l({}, _n, {}, "object" == typeof t && t ? t : {})).target) {
6975                      var e = g(t.target).attr("id");
6976                      e || ((e = _.getUID(un)), g(t.target).attr("id", e)), (t.target = "#" + e);
6977                  }
6978                  return _.typeCheckConfig(un, t, mn), t;
6979              }),
6980              (t._getScrollTop = function () {
6981                  return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
6982              }),
6983              (t._getScrollHeight = function () {
6984                  return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
6985              }),
6986              (t._getOffsetHeight = function () {
6987                  return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height;
6988              }),
6989              (t._process = function () {
6990                  var t = this._getScrollTop() + this._config.offset,
6991                      e = this._getScrollHeight(),
6992                      n = this._config.offset + e - this._getOffsetHeight();
6993                  if ((this._scrollHeight !== e && this.refresh(), n <= t)) {
6994                      var i = this._targets[this._targets.length - 1];
6995                      this._activeTarget !== i && this._activate(i);
6996                  } else {
6997                      if (this._activeTarget && t < this._offsets[0] && 0 < this._offsets[0]) return (this._activeTarget = null), void this._clear();
6998                      for (var o = this._offsets.length; o--; ) {
6999                          this._activeTarget !== this._targets[o] && t >= this._offsets[o] && ("undefined" == typeof this._offsets[o + 1] || t < this._offsets[o + 1]) && this._activate(this._targets[o]);
7000                      }
7001                  }
7002              }),
7003              (t._activate = function (e) {
7004                  (this._activeTarget = e), this._clear();
7005                  var t = this._selector.split(",").map(function (t) {
7006                          return t + '[data-target="' + e + '"],' + t + '[href="' + e + '"]';
7007                      }),
7008                      n = g([].slice.call(document.querySelectorAll(t.join(","))));
7009                  n.hasClass(vn)
7010                      ? (n.closest(Dn).find(wn).addClass(yn), n.addClass(yn))
7011                      : (n.addClass(yn),
7012                        n
7013                            .parents(Cn)
7014                            .prev(Tn + ", " + Sn)
7015                            .addClass(yn),
7016                        n.parents(Cn).prev(bn).children(Tn).addClass(yn)),
7017                      g(this._scrollElement).trigger(pn.ACTIVATE, { relatedTarget: e });
7018              }),
7019              (t._clear = function () {
7020                  [].slice
7021                      .call(document.querySelectorAll(this._selector))
7022                      .filter(function (t) {
7023                          return t.classList.contains(yn);
7024                      })
7025                      .forEach(function (t) {
7026                          return t.classList.remove(yn);
7027                      });
7028              }),
7029              (n._jQueryInterface = function (e) {
7030                  return this.each(function () {
7031                      var t = g(this).data(fn);
7032                      if ((t || ((t = new n(this, "object" == typeof e && e)), g(this).data(fn, t)), "string" == typeof e)) {
7033                          if ("undefined" == typeof t[e]) throw new TypeError('No method named "' + e + '"');
7034                          t[e]();
7035                      }
7036                  });
7037              }),
7038              s(n, null, [
7039                  {
7040                      key: "VERSION",
7041                      get: function () {
7042                          return "4.4.1";
7043                      },
7044                  },
7045                  {
7046                      key: "Default",
7047                      get: function () {
7048                          return _n;
7049                      },
7050                  },
7051              ]),
7052              n
7053          );
7054      })();
7055  g(window).on(pn.LOAD_DATA_API, function () {
7056      for (var t = [].slice.call(document.querySelectorAll(En)), e = t.length; e--; ) {
7057          var n = g(t[e]);
7058          On._jQueryInterface.call(n, n.data());
7059      }
7060  }),
7061      (g.fn[un] = On._jQueryInterface),
7062      (g.fn[un].Constructor = On),
7063      (g.fn[un].noConflict = function () {
7064          return (g.fn[un] = gn), On._jQueryInterface;
7065      });
7066  var kn = "bs.tab",
7067      Pn = "." + kn,
7068      Ln = g.fn.tab,
7069      jn = { HIDE: "hide" + Pn, HIDDEN: "hidden" + Pn, SHOW: "show" + Pn, SHOWN: "shown" + Pn, CLICK_DATA_API: "click" + Pn + ".data-api" },
7070      Hn = "dropdown-menu",
7071      Rn = "active",
7072      xn = "disabled",
7073      Fn = "fade",
7074      Un = "show",
7075      Wn = ".dropdown",
7076      qn = ".nav, .list-group",
7077      Mn = ".active",
7078      Kn = "> li > .active",
7079      Qn = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
7080      Bn = ".dropdown-toggle",
7081      Vn = "> .dropdown-menu .active",
7082      Yn = (function () {
7083          function i(t) {
7084              this._element = t;
7085          }
7086          var t = i.prototype;
7087          return (
7088              (t.show = function () {
7089                  var n = this;
7090                  if (!((this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && g(this._element).hasClass(Rn)) || g(this._element).hasClass(xn))) {
7091                      var t,
7092                          i,
7093                          e = g(this._element).closest(qn)[0],
7094                          o = _.getSelectorFromElement(this._element);
7095                      if (e) {
7096                          var r = "UL" === e.nodeName || "OL" === e.nodeName ? Kn : Mn;
7097                          i = (i = g.makeArray(g(e).find(r)))[i.length - 1];
7098                      }
7099                      var s = g.Event(jn.HIDE, { relatedTarget: this._element }),
7100                          a = g.Event(jn.SHOW, { relatedTarget: i });
7101                      if ((i && g(i).trigger(s), g(this._element).trigger(a), !a.isDefaultPrevented() && !s.isDefaultPrevented())) {
7102                          o && (t = document.querySelector(o)), this._activate(this._element, e);
7103                          var l = function () {
7104                              var t = g.Event(jn.HIDDEN, { relatedTarget: n._element }),
7105                                  e = g.Event(jn.SHOWN, { relatedTarget: i });
7106                              g(i).trigger(t), g(n._element).trigger(e);
7107                          };
7108                          t ? this._activate(t, t.parentNode, l) : l();
7109                      }
7110                  }
7111              }),
7112              (t.dispose = function () {
7113                  g.removeData(this._element, kn), (this._element = null);
7114              }),
7115              (t._activate = function (t, e, n) {
7116                  function i() {
7117                      return o._transitionComplete(t, r, n);
7118                  }
7119                  var o = this,
7120                      r = (!e || ("UL" !== e.nodeName && "OL" !== e.nodeName) ? g(e).children(Mn) : g(e).find(Kn))[0],
7121                      s = n && r && g(r).hasClass(Fn);
7122                  if (r && s) {
7123                      var a = _.getTransitionDurationFromElement(r);
7124                      g(r).removeClass(Un).one(_.TRANSITION_END, i).emulateTransitionEnd(a);
7125                  } else i();
7126              }),
7127              (t._transitionComplete = function (t, e, n) {
7128                  if (e) {
7129                      g(e).removeClass(Rn);
7130                      var i = g(e.parentNode).find(Vn)[0];
7131                      i && g(i).removeClass(Rn), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !1);
7132                  }
7133                  if ((g(t).addClass(Rn), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !0), _.reflow(t), t.classList.contains(Fn) && t.classList.add(Un), t.parentNode && g(t.parentNode).hasClass(Hn))) {
7134                      var o = g(t).closest(Wn)[0];
7135                      if (o) {
7136                          var r = [].slice.call(o.querySelectorAll(Bn));
7137                          g(r).addClass(Rn);
7138                      }
7139                      t.setAttribute("aria-expanded", !0);
7140                  }
7141                  n && n();
7142              }),
7143              (i._jQueryInterface = function (n) {
7144                  return this.each(function () {
7145                      var t = g(this),
7146                          e = t.data(kn);
7147                      if ((e || ((e = new i(this)), t.data(kn, e)), "string" == typeof n)) {
7148                          if ("undefined" == typeof e[n]) throw new TypeError('No method n
7148amed "' + n + '"');
7149                          e[n]();
7150                      }
7151                  });
7152              }),
7153              s(i, null, [
7154                  {
7155                      key: "VERSION",
7156                      get: function () {
7157                          return "4.4.1";
7158                      },
7159                  },
7160              ]),
7161              i
7162          );
7163      })();
7164  g(document).on(jn.CLICK_DATA_API, Qn, function (t) {
7165      t.preventDefault(), Yn._jQueryInterface.call(g(this), "show");
7166  }),
7167      (g.fn.tab = Yn._jQueryInterface),
7168      (g.fn.tab.Constructor = Yn),
7169      (g.fn.tab.noConflict = function () {
7170          return (g.fn.tab = Ln), Yn._jQueryInterface;
7171      });
7172  var zn = "toast",
7173      Xn = "bs.toast",
7174      $n = "." + Xn,
7175      Gn = g.fn[zn],
7176      Jn = { CLICK_DISMISS: "click.dismiss" + $n, HIDE: "hide" + $n, HIDDEN: "hidden" + $n, SHOW: "show" + $n, SHOWN: "shown" + $n },
7177      Zn = "fade",
7178      ti = "hide",
7179      ei = "show",
7180      ni = "showing",
7181      ii = { animation: "boolean", autohide: "boolean", delay: "number" },
7182      oi = { animation: !0, autohide: !0, delay: 500 },
7183      ri = '[data-dismiss="toast"]',
7184      si = (function () {
7185          function i(t, e) {
7186              (this._element = t), (this._config = this._getConfig(e)), (this._timeout = null), this._setListeners();
7187          }
7188          var t = i.prototype;
7189          return (
7190              (t.show = function () {
7191                  var t = this,
7192                      e = g.Event(Jn.SHOW);
7193                  if ((g(this._element).trigger(e), !e.isDefaultPrevented())) {
7194                      this._config.animation && this._element.classList.add(Zn);
7195                      var n = function () {
7196                          t._element.classList.remove(ni),
7197                              t._element.classList.add(ei),
7198                              g(t._element).trigger(Jn.SHOWN),
7199                              t._config.autohide &&
7200                                  (t._timeout = setTimeout(function () {
7201                                      t.hide();
7202                                  }, t._config.delay));
7203                      };
7204                      if ((this._element.classList.remove(ti), _.reflow(this._element), this._element.classList.add(ni), this._config.animation)) {
7205                          var i = _.getTransitionDurationFromElement(this._element);
7206                          g(this._element).one(_.TRANSITION_END, n).emulateTransitionEnd(i);
7207                      } else n();
7208                  }
7209              }),
7210              (t.hide = function () {
7211                  if (this._element.classList.contains(ei)) {
7212                      var t = g.Event(Jn.HIDE);
7213                      g(this._element).trigger(t), t.isDefaultPrevented() || this._close();
7214                  }
7215              }),
7216              (t.dispose = function () {
7217                  clearTimeout(this._timeout),
7218                      (this._timeout = null),
7219                      this._element.classList.contains(ei) && this._element.classList.remove(ei),
7220                      g(this._element).off(Jn.CLICK_DISMISS),
7221                      g.removeData(this._element, Xn),
7222                      (this._element = null),
7223                      (this._config = null);
7224              }),
7225              (t._getConfig = function (t) {
7226                  return (t = l({}, oi, {}, g(this._element).data(), {}, "object" == typeof t && t ? t : {})), _.typeCheckConfig(zn, t, this.constructor.DefaultType), t;
7227              }),
7228              (t._setListeners = function () {
7229                  var t = this;
7230                  g(this._element).on(Jn.CLICK_DISMISS, ri, function () {
7231                      return t.hide();
7232                  });
7233              }),
7234              (t._close = function () {
7235                  function t() {
7236                      e._element.classList.add(ti), g(e._element).trigger(Jn.HIDDEN);
7237                  }
7238                  var e = this;
7239                  if ((this._element.classList.remove(ei), this._config.animation)) {
7240                      var n = _.getTransitionDurationFromElement(this._element);
7241                      g(this._element).one(_.TRANSITION_END, t).emulateTransitionEnd(n);
7242                  } else t();
7243              }),
7244              (i._jQueryInterface = function (n) {
7245                  return this.each(function () {
7246                      var t = g(this),
7247                          e = t.data(Xn);
7248                      if ((e || ((e = new i(this, "object" == typeof n && n)), t.data(Xn, e)), "string" == typeof n)) {
7249                          if ("undefined" == typeof e[n]) throw new TypeError('No method n
7249amed "' + n + '"');
7250                          e[n](this);
7251                      }
7252                  });
7253              }),
7254              s(i, null, [
7255                  {
7256                      key: "VERSION",
7257                      get: function () {
7258                          return "4.4.1";
7259                      },
7260                  },
7261                  {
7262                      key: "DefaultType",
7263                      get: function () {
7264                          return ii;
7265                      },
7266                  },
7267                  {
7268                      key: "Default",
7269                      get: function () {
7270                          return oi;
7271                      },
7272                  },
7273              ]),
7274              i
7275          );
7276      })();
7277  (g.fn[zn] = si._jQueryInterface),
7278      (g.fn[zn].Constructor = si),
7279      (g.fn[zn].noConflict = function () {
7280          return (g.fn[zn] = Gn), si._jQueryInterface;
7281      }),
7282      (t.Alert = v),
7283      (t.Button = H),
7284      (t.Carousel = ut),
7285      (t.Collapse = wt),
7286      (t.Dropdown = ee),
7287      (t.Modal = Te),
7288      (t.Popover = hn),
7289      (t.Scrollspy = On),
7290      (t.Tab = Yn),
7291      (t.Toast = si),
7292      (t.Tooltip = Xe),
7293      (t.Util = _),
7294      Object.defineProperty(t, "__esModule", { value: !0 });
7295});
7296
7297/**
7298* @module Navigation
7299*/
7300!(function ($) {
7301  "use strict";
7302  $.fn.menumaker = function (options) {
7303      var nav = $(this),
7304          settings = $.extend({ format: "dropdown", sticky: false }, options);
7305      return this.each(function () {
7306          $(this)
7307              .find(".navbar-toggler")
7308              .on("click", function () {
7309                  $(this).toggleClass("menu-opened");
7310                  var mainmenu = $(this).next("ul");
7311                  if (mainmenu.hasClass("open")) {
7312                      mainmenu.slideToggle().removeClass("open");
7313                  } else {
7314                      mainmenu.slideToggle().addClass("open");
7315                      if (settings.format === "dropdown") {
7316                          mainmenu.find("ul").show();
7317                      }
7318                  }
7319              });
7320        //   nav.find(".navbar-nav li ul").parent().addClass("has-sub");
7321        //   nav.find(".navbar-nav li ul li").parent().addClass("sub-menu");
7322            if (window.innerWidth <= 768) {
7323                // Adicione a classe "has-sub" quando a tela for 768 pixels ou menor
7324                nav.find(".navbar-nav li ul").parent().addClass("has-sub");                
7325            } else {
7326                // Remova a classe "has-sub" quando a tela for maior que 768 pixels
7327                nav.find(".navbar-nav li ul").parent().removeClass("has-sub");                
7328            }    
7329            nav.find(".navbar-nav li ul li").parent().addClass("sub-menu");
7330          var multiTg = function () {
7331              nav.find(".has-sub").prepend('<span class="submenu-button"></span>');
7332              nav.find(".navbar-nav > li.has-sub > .submenu-button").on("click", function () {
7333                  $(this).next(".sub-menu").slideToggle();
7334                  $(this).siblings("ul").addClass("open").slideToggle();
7335                  $(this).parents(".navbar-nav > li.has-sub").toggleClass("active").siblings(".has-sub").children(".sub-menu").slideUp().removeClass("open").parents("li").removeClass("active");
7336              });
7337              nav.find(".sub-menu > li.has-sub > .submenu-button").on("click", function () {
7338                  $(this).next(".sub-menu").slideToggle();
7339                  $(this).siblings("ul").addClass("open").slideToggle();
7340                  $(this).parents(".sub-menu > li").toggleClass("active").siblings(".has-sub").children(".sub-menu").slideUp().removeClass("open").parents("li").removeClass("active");
7341                  if ($(this).siblings("ul").hasClass("open")) {
7342                      $(this).parents("li").eq(1).addClass("active");
7343                  }
7344              });
7345          };
7346          if (settings.format === "multitoggle") multiTg();
7347          else nav.addClass("dropdown");
7348          if (settings.sticky === true) nav.css("position", "fixed");
7349          var resizeFix = function () {
7350              var mediasize = 991;
7351              if ($(window).width() > mediasize) {
7352                  nav.find("ul").show();
7353              }
7354          };
7355          resizeFix();
7356          return $(window).on("resize", resizeFix);
7357      });
7358  };
7359  $(document).ready(function () {
7360      $("nav").menumaker({ format: "multitoggle" });
7361      var urlparam = window.location.pathname.split("/");
7362      var menuselctor = window.location.pathname;
7363      if (urlparam[urlparam.length - 1].length > 0) menuselctor = urlparam[urlparam.length - 1];
7364      else menuselctor = urlparam[urlparam.length - 2];
7365      $(".navbar-nav li")
7366          .find('a[href="' + menuselctor + '"]')
7367          .closest("li")
7368          .addClass("active")
7369          .parents()
7370          .eq(1)
7371          .addClass("current");
7372      $(".navbar-nav li.has-sub ul li")
7373          .find('a[href="' + menuselctor + '"]')
7374          .parents()
7375          .eq(4)
7376          .addClass("current");
7377  });
7378  $(".navbar-default .attr-nav").each(function () {
7379      $("li.search > a", this).on("click", function (e) {
7380          e.preventDefault();
7381          $(".top-search").slideToggle();
7382      });
7383  });
7384  $(".input-group-addon.close-search").on("click", function () {
7385      $(".top-search").slideUp();
7386  });
7387})(jQuery);
7388
7389// Easy Responsive Tabs Plugin
7390// Author: Samson.Onna <Email : [email protected]>
7391(function ($) {
7392  $.fn.extend({
7393      easyResponsiveTabs: function (options) {
7394          var defaults = { type: "default", width: "auto", fit: true, closed: false, tabidentify: "", activate: function () {} };
7395          var options = $.extend(defaults, options);
7396          var opt = options,
7397              jtype = opt.type,
7398              jfit = opt.fit,
7399              jwidth = opt.width,
7400              vtabs = "vertical",
7401              accord = "accordion";
7402          var hash = window.location.hash;
7403          var historyApi = !!(window.history && history.replaceState);
7404          $(this).on("bind", "tabactivate", function (e, currentTab) {
7405              if (typeof options.activate === "function") {
7406                  options.activate.call(currentTab, e);
7407              }
7408          });
7409          this.each(function () {
7410              var $respTabs = $(this);
7411              var $respTabsList = $respTabs.find("ul.resp-tabs-list." + options.tabidentify);
7412              var respTabsId = $respTabs.attr("id");
7413              $respTabs
7414                  .find("ul.resp-tabs-list." + options.tabidentify + " li")
7415                  .addClass("resp-tab-item")
7416                  .addClass(options.tabidentify);
7417              $respTabs.css({ display: "block", width: jwidth });
7418              if (options.type == "vertical") $respTabsList.css("margin-top", "3px");
7419              $respTabs.find(".resp-tabs-container." + options.tabidentify).css("border-color", options.active_content_border_color);
7420              $respTabs
7421                  .find(".resp-tabs-container." + options.tabidentify + " > div")
7422                  .addClass("resp-tab-content")
7423                  .addClass(options.tabidentify);
7424              jtab_options();
7425              function jtab_options() {
7426                  if (jtype == vtabs) {
7427                      $respTabs.addClass("resp-vtabs").addClass(options.tabidentify);
7428                  }
7429                  if (jfit == true) {
7430                      $respTabs.css({ width: "100%", margin: "0px" });
7431                  }
7432                  if (jtype == accord) {
7433                      $respTabs.addClass("resp-easy-accordion").addClass(options.tabidentify);
7434                      $respTabs.find(".resp-tabs-list").css("display", "none");
7435                  }
7436              }
7437              var $tabItemh2;
7438              $respTabs.find(".resp-tab-content." + options.tabidentify).before("<h2 class='resp-accordion " + options.tabidentify + "' role='tab'><span class='resp-arrow'></span></h2>");
7439              $respTabs
7440                  .find(".resp-tab-content." + options.tabidentify)
7441                  .prev("h2")
7442                  .css({ "background-color": options.inactive_bg, "border-color": options.active_border_color });
7443              var itemCount = 0;
7444              $respTabs.find(".resp-accordion").each(function () {
7445                  $tabItemh2 = $(this);
7446                  var $tabItem = $respTabs.find(".resp-tab-item:eq(" + itemCount + ")");
7447                  var $accItem = $respTabs.find(".resp-accordion:eq(" + itemCount + ")");
7448                  $accItem.append($tabItem.html());
7449                  $accItem.data($tabItem.data());
7450                  $tabItemh2.attr("aria-controls", options.tabidentify + "_tab_item-" + itemCount);
7451                  itemCount++;
7452              });
7453              var count = 0,
7454                  $tabContent;
7455              $respTabs.find(".resp-tab-item").each(function () {
7456                  $tabItem = $(this);
7457                  $tabItem.attr("aria-controls", options.tabidentify + "_tab_item-" + count);
7458                  $tabItem.attr("role", "tab");
7459                  $tabItem.css({ "background-color": options.inactive_bg, "border-color": "none" });
7460                  var tabcount = 0;
7461                  $respTabs.find(".resp-tab-content." + options.tabidentify).each(function () {
7462                      $tabContent = $(this);
7463                      $tabContent.attr("aria-labelledby", options.tabidentify + "_tab_item-" + tabcount).css({ "border-color": options.active_border_color });
7464                      tabcount++;
7465                  });
7466                  count++;
7467              });
7468              var tabNum = 0;
7469              if (hash != "") {
7470                  var matches = hash.match(new RegExp(respTabsId + "([0-9]+)"));
7471                  if (matches !== null && matches.length === 2) {
7472                      tabNum = parseInt(matches[1], 10) - 1;
7473                      if (tabNum > count) {
7474                          tabNum = 0;
7475                      }
7476                  }
7477              }
7478              $($respTabs.find(".resp-tab-item." + options.tabidentify)[tabNum])
7479                  .addClass("resp-tab-active")
7480                  .css({ "background-color": options.activetab_bg, "border-color": options.active_border_color });
7481              if (options.closed !== true && !(options.closed === "accordion" && !$respTabsList.is(":visible")) && !(options.closed === "tabs" && $respTabsList.is(":visible"))) {
7482                  $($respTabs.find(".resp-accordion." + options.tabidentify)[tabNum])
7483                      .addClass("resp-tab-active")
7484                      .css({ "background-color": options.activetab_bg + " !important", "border-color": options.active_border_color, background: "none" });
7485                  $($respTabs.find(".resp-tab-content." + options.tabidentify)[tabNum])
7486                      .addClass("resp-tab-content-active")
7487                      .addClass(options.tabidentify)
7488                      .attr("style", "display:block");
7489              } else {
7490              }
7491              $respTabs.find("[role=tab]").each(function () {
7492                  var $currentTab = $(this);
7493                  $currentTab.on("click", function () {
7494                      var $currentTab = $(this);
7495                      var $tabAria = $currentTab.attr("aria-controls");
7496                      if ($currentTab.hasClass("resp-accordion") && $currentTab.hasClass("resp-tab-active")) {
7497                          $respTabs.find(".resp-tab-content-active." + options.tabidentify).slideUp("", function () {
7498                              $(this).addClass("resp-accordion-closed");
7499                          });
7500                          $currentTab.removeClass("resp-tab-active").css({});
7501                          return false;
7502                      }
7503                      if (!$currentTab.hasClass("resp-tab-active") && $currentTab.hasClass("resp-accordion")) {
7504                          $respTabs
7505                              .find(".resp-tab-active." + options.tabidentify)
7506                              .removeClass("resp-tab-active")
7507                              .css({});
7508                          $respTabs
7509                              .find(".resp-tab-content-active." + options.tabidentify)
7510                              .slideUp()
7511                              .removeClass("resp-tab-content-active resp-accordion-closed");
7512                          $respTabs
7513                              .find("[aria-controls=" + $tabAria + "]")
7514                              .addClass("resp-tab-active")
7515                              .css({});
7516                          $respTabs
7517                              .find(".resp-tab-content[aria-labelledby = " + $tabAria + "]." + options.tabidentify)
7518                              .slideDown()
7519                              .addClass("resp-tab-content-active");
7520                      } else {
7521                          $respTabs
7522                              .find(".resp-tab-active." + options.tabidentify)
7523                              .removeClass("resp-tab-active")
7524                              .css({});
7525                          $respTabs
7526                              .find(".resp-tab-content-active." + options.tabidentify)
7527                              .removeAttr("style")
7528                              .removeClass("resp-tab-content-active")
7529                              .removeClass("resp-accordion-closed");
7530                          $respTabs
7531                              .find("[aria-controls=" + $tabAria + "]")
7532                              .addClass("resp-tab-active")
7533                              .css({});
7534                          $respTabs
7535                              .find(".resp-tab-content[aria-labelledby = " + $tabAria + "]." + options.tabidentify)
7536                              .addClass("resp-tab-content-active")
7537                              .attr("style", "display:block");
7538                      }
7539                      $currentTab.trigger("tabactivate", $currentTab);
7540                      if (historyApi) {
7541                          var currentHash = window.location.hash;
7542                          var tabAriaParts = $tabAria.split("tab_item-");
7543                          var newHash = "";
7544                          if (currentHash != "") {
7545                              var re = new RegExp(respTabsId + "[0-9]+");
7546                              if (currentHash.match(re) != null) {
7547                                  newHash = currentHash.replace(re, newHash);
7548                              } else {
7549                                  newHash = currentHash + "|" + newHash;
7550                              }
7551                          } else {
7552                              newHash = "" + newHash;
7553                          }
7554                          history.replaceState(null, null, newHash);
7555                      }
7556                  });
7557              });
7558              $(window).resize(function () {
7559                  $respTabs.find(".resp-accordion-closed").removeAttr("style");
7560              });
7561          });
7562      },
7563  });
7564})(jQuery);
7565
7566/**
7567* Owl Carousel v2.3.4
7568* Copyright 2013-2018 David Deutsch
7569* Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
7570*/
7571!(function (a, b, c, d) {
7572  function e(b, c) {
7573      (this.settings = null),
7574          (this.options = a.extend({}, e.Defaults, c)),
7575          (this.$element = a(b)),
7576          (this._handlers = {}),
7577          (this._plugins = {}),
7578          (this._supress = {}),
7579          (this._current = null),
7580          (this._speed = null),
7581          (this._coordinates = []),
7582          (this._breakpoint = null),
7583          (this._width = null),
7584          (this._items = []),
7585          (this._clones = []),
7586          (this._mergers = []),
7587          (this._widths = []),
7588          (this._invalidated = {}),
7589          (this._pipe = []),
7590          (this._drag = { time: null, target: null, pointer: null, stage: { start: null, current: null }, direction: null }),
7591          (this._states = { current: {}, tags: { initializing: ["busy"], animating: ["busy"], dragging: ["interacting"] } }),
7592          a.each(
7593              ["onResize", "onThrottledResize"],
7594              a.proxy(function (b, c) {
7595                  this._handlers[c] = a.proxy(this[c], this);
7596              }, this)
7597          ),
7598          a.each(
7599              e.Plugins,
7600              a.proxy(function (a, b) {
7601                  this._plugins[a.charAt(0).toLowerCase() + a.slice(1)] = new b(this);
7602              }, this)
7603          ),
7604          a.each(
7605              e.Workers,
7606              a.proxy(function (b, c) {
7607                  this._pipe.push({ filter: c.filter, run: a.proxy(c.run, this) });
7608              }, this)
7609          ),
7610          this.setup(),
7611          this.initialize();
7612  }
7613  (e.Defaults = {
7614      items: 3,
7615      loop: !1,
7616      center: !1,
7617      rewind: !1,
7618      checkVisibility: !0,
7619      mouseDrag: !0,
7620      touchDrag: !0,
7621      pullDrag: !0,
7622      freeDrag: !1,
7623      margin: 0,
7624      stagePadding: 0,
7625      merge: !1,
7626      mergeFit: !0,
7627      autoWidth: !1,
7628      startPosition: 0,
7629      rtl: !1,
7630      smartSpeed: 250,
7631      fluidSpeed: !1,
7632      dragEndSpeed: !1,
7633      responsive: {},
7634      responsiveRefreshRate: 200,
7635      responsiveBaseElement: b,
7636      fallbackEasing: "swing",
7637      slideTransition: "",
7638      info: !1,
7639      nestedItemSelector: !1,
7640      itemElement: "div",
7641      stageElement: "div",
7642      refreshClass: "owl-refresh",
7643      loadedClass: "owl-loaded",
7644      loadingClass: "owl-loading",
7645      rtlClass: "owl-rtl",
7646      responsiveClass: "owl-responsive",
7647      dragClass: "owl-drag",
7648      itemClass: "owl-item",
7649      stageClass: "owl-stage",
7650      stageOuterClass: "owl-stage-outer",
7651      grabClass: "owl-grab",
7652  }),
7653      (e.Width = { Default: "default", Inner: "inner", Outer: "outer" }),
7654      (e.Type = { Event: "event", State: "state" }),
7655      (e.Plugins = {}),
7656      (e.Workers = [
7657          {
7658              filter: ["width", "settings"],
7659              run: function () {
7660                  this._width = this.$element.width();
7661              },
7662          },
7663          {
7664              filter: ["width", "items", "settings"],
7665              run: function (a) {
7666                  a.current = this._items && this._items[this.relative(this._current)];
7667              },
7668          },
7669          {
7670              filter: ["items", "settings"],
7671              run: function () {
7672                  this.$stage.children(".cloned").remove();
7673              },
7674          },
7675          {
7676              filter: ["width", "items", "settings"],
7677              run: function (a) {
7678                  var b = this.settings.margin || "",
7679                      c = !this.settings.autoWidth,
7680                      d = this.settings.rtl,
7681                      e = { width: "auto", "margin-left": d ? b : "", "margin-right": d ? "" : b };
7682                  !c && this.$stage.children().css(e), (a.css = e);
7683              },
7684          },
7685          {
7686              filter: ["width", "items", "settings"],
7687              run: function (a) {
7688                  var b = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,
7689                      c = null,
7690                      d = this._items.length,
7691                      e = !this.settings.autoWidth,
7692                      f = [];
7693                  for (a.items = { merge: !1, width: b }; d--; )
7694                      (c = this._mergers[d]), (c = (this.settings.mergeFit && Math.min(c, this.settings.items)) || c), (a.items.merge = c > 1 || a.items.merge), (f[d] = e ? b * c : this._items[d].width());
7695                  this._widths = f;
7696              },
7697          },
7698          {
7699              filter: ["items", "settings"],
7700              run: function () {
7701                  var b = [],
7702                      c = this._items,
7703                      d = this.settings,
7704                      e = Math.max(2 * d.items, 4),
7705                      f = 2 * Math.ceil(c.length / 2),
7706                      g = d.loop && c.length ? (d.rewind ? e : Math.max(e, f)) : 0,
7707                      h = "",
7708                      i = "";
7709                  for (g /= 2; g > 0; ) b.push(this.normalize(b.length / 2, !0)), (h += c[b[b.length - 1]][0].outerHTML), b.push(this.normalize(c.length - 1 - (b.length - 1) / 2, !0)), (i = c[b[b.length - 1]][0].outerHTML + i), (g -= 1);
7710                  (this._clones = b), a(h).addClass("cloned").appendTo(this.$stage), a(i).addClass("cloned").prependTo(this.$stage);
7711              },
7712          },
7713          {
7714              filter: ["width", "items", "settings"],
7715              run: function () {
7716                  for (var a = this.settings.rtl ? 1 : -1, b = this._clones.length + this._items.length, c = -1, d = 0, e = 0, f = []; ++c < b; )
7717                      (d = f[c - 1] || 0), (e = this._widths[this.relative(c)] + this.settings.margin), f.push(d + e * a);
7718                  this._coordinates = f;
7719              },
7720          },
7721          {
7722              filter: ["width", "items", "settings"],
7723              run: function () {
7724                  var a = this.settings.stagePadding,
7725                      b = this._coordinates,
7726                      c = { width: Math.ceil(Math.abs(b[b.length - 1])) + 2 * a, "padding-left": a || "", "padding-right": a || "" };
7727                  this.$stage.css(c);
7728              },
7729          },
7730          {
7731              filter: ["width", "items", "settings"],
7732              run: function (a) {
7733                  var b = this._coordinates.length,
7734                      c = !this.settings.autoWidth,
7735                      d = this.$stage.children();
7736                  if (c && a.items.merge) for (; b--; ) (a.css.width = this._widths[this.relative(b)]), d.eq(b).css(a.css);
7737                  else c && ((a.css.width = a.items.width), d.css(a.css));
7738              },
7739          },
7740          {
7741              filter: ["items"],
7742              run: function () {
7743                  this._coordinates.length < 1 && this.$stage.removeAttr("style");
7744              },
7745          },
7746          {
7747              filter: ["width", "items", "settings"],
7748              run: function (a) {
7749                  (a.current = a.current ? this.$stage.children().index(a.current) : 0), (a.current = Math.max(this.minimum(), Math.min(this.maximum(), a.current))), this.reset(a.current);
7750              },
7751          },
7752          {
7753              filter: ["position"],
7754              run: function () {
7755                  this.animate(this.coordinates(this._current));
7756              },
7757          },
7758          {
7759              filter: ["width", "position", "items", "settings"],
7760              run: function () {
7761                  var a,
7762                      b,
7763                      c,
7764                      d,
7765                      e = this.settings.rtl ? 1 : -1,
7766                      f = 2 * this.settings.stagePadding,
7767                      g = this.coordinates(this.current()) + f,
7768                      h = g + this.width() * e,
7769                      i = [];
7770                  for (c = 0, d = this._coordinates.length; c < d; c++)
7771                      (a = this._coordinates[c - 1] || 0), (b = Math.abs(this._coordinates[c]) + f * e), ((this.op(a, "<=", g) && this.op(a, ">", h)) || (this.op(b, "<", g) && this.op(b, ">", h))) && i.push(c);
7772                  this.$stage.children(".active").removeClass("active"),
7773                      this.$stage.children(":eq(" + i.join("), :eq(") + ")").addClass("active"),
7774                      this.$stage.children(".center").removeClass("center"),
7775                      this.settings.center && this.$stage.children().eq(this.current()).addClass("center");
7776              },
7777          },
7778      ]),
7779      (e.prototype.initializeStage = function () {
7780          (this.$stage = this.$element.find("." + this.settings.stageClass)),
7781              this.$stage.length ||
7782                  (this.$element.addClass(this.options.loadingClass),
7783                  (this.$stage = a("<" + this.settings.stageElement + ">", { class: this.settings.stageClass }).wrap(a("<div/>", { class: this.settings.stageOuterClass }))),
7784                  this.$element.append(this.$stage.parent()));
7785      }),
7786      (e.prototype.initializeItems = function () {
7787          var b = this.$element.find(".owl-item");
7788          if (b.length)
7789              return (
7790                  (this._items = b.get().map(function (b) {
7791                      return a(b);
7792                  })),
7793                  (this._mergers = this._items.map(function () {
7794                      return 1;
7795                  })),
7796                  void this.refresh()
7797              );
7798          this.replace(this.$element.children().not(this.$stage.parent())), this.isVisible() ? this.refresh() : this.invalidate("width"), this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass);
7799      }),
7800      (e.prototype.initialize = function () {
7801          if ((this.enter("initializing"), this.trigger("initialize"), this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl), this.settings.autoWidth && !this.is("pre-loading"))) {
7802              var a, b, c;
7803              (a = this.$element.find("img")), (b = this.settings.nestedItemSelector ? "." + this.settings.nestedItemSelector : d), (c = this.$element.children(b).width()), a.length && c <= 0 && this.preloadAutoWidthImages(a);
7804          }
7805          this.initializeStage(), this.initializeItems(), this.registerEventHandlers(), this.leave("initializing"), this.trigger("initialized");
7806      }),
7807      (e.prototype.isVisible = function () {
7808          return !this.settings.checkVisibility || this.$element.is(":visible");
7809      }),
7810      (e.prototype.setup = function () {
7811          var b = this.viewport(),
7812              c = this.options.responsive,
7813              d = -1,
7814              e = null;
7815          c
7816              ? (a.each(c, function (a) {
7817                    a <= b && a > d && (d = Number(a));
7818                }),
7819                (e = a.extend({}, this.options, c[d])),
7820                "function" == typeof e.stagePadding && (e.stagePadding = e.stagePadding()),
7821                delete e.responsive,
7822                e.responsiveClass && this.$element.attr("class", this.$element.attr("class").replace(new RegExp("(" + this.options.responsiveClass + "-)\\S+\\s", "g"), "$1" + d)))
7823              : (e = a.extend({}, this.options)),
7824              this.trigger("change", { property: { name: "settings", value: e } }),
7825              (this._breakpoint = d),
7826              (this.settings = e),
7827              this.invalidate("settings"),
7828              this.trigger("changed", { property: { name: "settings", value: this.settings } });
7829      }),
7830      (e.prototype.optionsLogic = function () {
7831          this.settings.autoWidth && ((this.settings.stagePadding = !1), (this.settings.merge = !1));
7832      }),
7833      (e.prototype.prepare = function (b) {
7834          var c = this.trigger("prepare", { content: b });
7835          return (
7836              c.data ||
7837                  (c.data = a("<" + this.settings.itemElement + "/>")
7838                      .addClass(this.options.itemClass)
7839                      .append(b)),
7840              this.trigger("prepared", { content: c.data }),
7841              c.data
7842          );
7843      }),
7844      (e.prototype.update = function () {
7845          for (
7846              var b = 0,
7847                  c = this._pipe.length,
7848                  d = a.proxy(function (a) {
7849                      return this[a];
7850                  }, this._invalidated),
7851                  e = {};
7852              b < c;
7853
7854          )
7855              (this._invalidated.all || a.grep(this._pipe[b].filter, d).length > 0) && this._pipe[b].run(e), b++;
7856          (this._invalidated = {}), !this.is("valid") && this.enter("valid");
7857      }),
7858      (e.prototype.width = function (a) {
7859          switch ((a = a || e.Width.Default)) {
7860              case e.Width.Inner:
7861              case e.Width.Outer:
7862                  return this._width;
7863              default:
7864                  return this._width - 2 * this.settings.stagePadding + this.settings.margin;
7865          }
7866      }),
7867      (e.prototype.refresh = function () {
7868          this.enter("refreshing"),
7869              this.trigger("refresh"),
7870              this.setup(),
7871              this.optionsLogic(),
7872              this.$element.addClass(this.options.refreshClass),
7873              this.update(),
7874              this.$element.removeClass(this.options.refreshClass),
7875              this.leave("refreshing"),
7876              this.trigger("refreshed");
7877      }),
7878      (e.prototype.onThrottledResize = function () {
7879          b.clearTimeout(this.resizeTimer), (this.resizeTimer = b.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate));
7880      }),
7881      (e.prototype.onResize = function () {
7882          return (
7883              !!this._items.length &&
7884              this._width !== this.$element.width() &&
7885              !!this.isVisible() &&
7886              (this.enter("resizing"), this.trigger("resize").isDefaultPrevented() ? (this.leave("resizing"), !1) : (this.invalidate("width"), this.refresh(), this.leave("resizing"), void this.trigger("resized")))
7887          );
7888      }),
7889      (e.prototype.registerEventHandlers = function () {
7890          a.support.transition && this.$stage.on(a.support.transition.end + ".owl.core", a.proxy(this.onTransitionEnd, this)),
7891              !1 !== this.settings.responsive && this.on(b, "resize", this._handlers.onThrottledResize),
7892              this.settings.mouseDrag &&
7893                  (this.$element.addClass(this.options.dragClass),
7894                  this.$stage.on("mousedown.owl.core", a.proxy(this.onDragStart, this)),
7895                  this.$stage.on("dragstart.owl.core selectstart.owl.core", function () {
7896                      return !1;
7897                  })),
7898              this.settings.touchDrag && (this.$stage.on("touchstart.owl.core", a.proxy(this.onDragStart, this)), this.$stage.on("touchcancel.owl.core", a.proxy(this.onDragEnd, this)));
7899      }),
7900      (e.prototype.onDragStart = function (b) {
7901          var d = null;
7902          3 !== b.which &&
7903              (a.support.transform
7904                  ? ((d = this.$stage
7905                        .css("transform")
7906                        .replace(/.*\(|\)| /g, "")
7907                        .split(",")),
7908                    (d = { x: d[16 === d.length ? 12 : 4], y: d[16 === d.length ? 13 : 5] }))
7909                  : ((d = this.$stage.position()), (d = { x: this.settings.rtl ? d.left + this.$stage.width() - this.width() + this.settings.margin : d.left, y: d.top })),
7910              this.is("animating") && (a.support.transform ? this.animate(d.x) : this.$stage.stop(), this.invalidate("position")),
7911              this.$element.toggleClass(this.options.grabClass, "mousedown" === b.type),
7912              this.speed(0),
7913              (this._drag.time = new Date().getTime()),
7914              (this._drag.target = a(b.target)),
7915              (this._drag.stage.start = d),
7916              (this._drag.stage.current = d),
7917              (this._drag.pointer = this.pointer(b)),
7918              a(c).on("mouseup.owl.core touchend.owl.core", a.proxy(this.onDragEnd, this)),
7919              a(c).one(
7920                  "mousemove.owl.core touchmove.owl.core",
7921                  a.proxy(function (b) {
7922                      var d = this.difference(this._drag.pointer, this.pointer(b));
7923                      a(c).on("mousemove.owl.core touchmove.owl.core", a.proxy(this.onDragMove, this)), (Math.abs(d.x) < Math.abs(d.y) && this.is("valid")) || (b.preventDefault(), this.enter("dragging"), this.trigger("drag"));
7924                  }, this)
7925              ));
7926      }),
7927      (e.prototype.onDragMove = function (a) {
7928          var b = null,
7929              c = null,
7930              d = null,
7931              e = this.difference(this._drag.pointer, this.pointer(a)),
7932              f = this.difference(this._drag.stage.start, e);
7933          this.is("dragging") &&
7934              (a.preventDefault(),
7935              this.settings.loop
7936                  ? ((b = this.coordinates(this.minimum())), (c = this.coordinates(this.maximum() + 1) - b), (f.x = ((((f.x - b) % c) + c) % c) + b))
7937                  : ((b = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum())),
7938                    (c = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum())),
7939                    (d = this.settings.pullDrag ? (-1 * e.x) / 5 : 0),
7940                    (f.x = Math.max(Math.min(f.x, b + d), c + d))
7940),
7941              (this._drag.stage.current = f),
7942              this.animate(f.x));
7943      }),
7944      (e.prototype.onDragEnd = function (b) {
7945          var d = this.difference(this._drag.pointer, this.pointer(b)),
7946              e = this._drag.stage.current,
7947              f = (d.x > 0) ^ this.settings.rtl ? "left" : "right";
7948          a(c).off(".owl.core"),
7949              this.$element.removeClass(this.options.grabClass),
7950              ((0 !== d.x && this.is("dragging")) || !this.is("valid")) &&
7951                  (this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed),
7952                  this.current(this.closest(e.x, 0 !== d.x ? f : this._drag.direction)),
7953                  this.invalidate("position"),
7954                  this.update(),
7955                  (this._drag.direction = f),
7956                  (Math.abs(d.x) > 3 || new Date().getTime() - this._drag.time > 300) &&
7957                      this._drag.target.one("click.owl.core", function () {
7958                          return !1;
7959                      })),
7960              this.is("dragging") && (this.leave("dragging"), this.trigger("dragged"));
7961      }),
7962      (e.prototype.closest = function (b, c) {
7963          var e = -1,
7964              f = 30,
7965              g = this.width(),
7966              h = this.coordinates();
7967          return (
7968              this.settings.freeDrag ||
7969                  a.each(
7970                      h,
7971                      a.proxy(function (a, i) {
7972                          return (
7973                              "left" === c && b > i - f && b < i + f
7974                                  ? (e = a)
7975                                  : "right" === c && b > i - g - f && b < i - g + f
7976                                  ? (e = a + 1)
7977                                  : this.op(b, "<", i) && this.op(b, ">", h[a + 1] !== d ? h[a + 1] : i - g) && (e = "left" === c ? a + 1 : a),
7978                              -1 === e
7979                          );
7980                      }, this)
7981                  ),
7982              this.settings.loop || (this.op(b, ">", h[this.minimum()]) ? (e = b = this.minimum()) : this.op(b, "<", h[this.maximum()]) && (e = b = this.maximum())),
7983              e
7984          );
7985      }),
7986      (e.prototype.animate = function (b) {
7987          var c = this.speed() > 0;
7988          this.is("animating") && this.onTransitionEnd(),
7989              c && (this.enter("animating"), this.trigger("translate")),
7990              a.support.transform3d && a.support.transition
7991                  ? this.$stage.css({ transform: "translate3d(" + b + "px,0px,0px)", transition: this.speed() / 1e3 + "s" + (this.settings.slideTransition ? " " + this.settings.slideTransition : "") })
7992                  : c
7993                  ? this.$stage.animate({ left: b + "px" }, this.speed(), this.settings.fallbackEasing, a.proxy(this.onTransitionEnd, this))
7994                  : this.$stage.css({ left: b + "px" });
7995      }),
7996      (e.prototype.is = function (a) {
7997          return this._states.current[a] && this._states.current[a] > 0;
7998      }),
7999      (e.prototype.current = function (a) {
8000          if (a === d) return this._current;
8001          if (0 === this._items.length) return d;
8002          if (((a = this.normalize(a)), this._current !== a)) {
8003              var b = this.trigger("change", { property: { name: "position", value: a } });
8004              b.data !== d && (a = this.normalize(b.data)), (this._current = a), this.invalidate("position"), this.trigger("changed", { property: { name: "position", value: this._current } });
8005          }
8006          return this._current;
8007      }),
8008      (e.prototype.invalidate = function (b) {
8009          return (
8010              "string" === a.type(b) && ((this._invalidated[b] = !0), this.is("valid") && this.leave("valid")),
8011              a.map(this._invalidated, function (a, b) {
8012                  return b;
8013              })
8014          );
8015      }),
8016      (e.prototype.reset = function (a) {
8017          (a = this.normalize(a)) !== d && ((this._speed = 0), (this._current = a), this.suppress(["translate", "translated"]), this.animate(this.coordinates(a)), this.release(["translate", "translated"]));
8018      }),
8019      (e.prototype.normalize = function (a, b) {
8020          var c = this._items.length,
8021              e = b ? 0 : this._clones.length;
8022          return !this.isNumeric(a) || c < 1 ? (a = d) : (a < 0 || a >= c + e) && (a = ((((a - e / 2) % c) + c) % c) + e / 2), a;
8023      }),
8024      (e.prototype.relative = function (a) {
8025          return (a -= this._clones.length / 2), this.normalize(a, !0);
8026      }),
8027      (e.prototype.maximum = function (a) {
8028          var b,
8029              c,
8030              d,
8031              e = this.settings,
8032              f = this._coordinates.length;
8033          if (e.loop) f = this._clones.length / 2 + this._items.length - 1;
8034          else if (e.autoWidth || e.merge) {
8035              if ((b = this._items.length)) for (c = this._items[--b].width(), d = this.$element.width(); b-- && !((c += this._items[b].width() + this.settings.margin) > d); );
8036              f = b + 1;
8037          } else f = e.center ? this._items.length - 1 : this._items.length - e.items;
8038          return a && (f -= this._clones.length / 2), Math.max(f, 0);
8039      }),
8040      (e.prototype.minimum = function (a) {
8041          return a ? 0 : this._clones.length / 2;
8042      }),
8043      (e.prototype.items = function (a) {
8044          return a === d ? this._items.slice() : ((a = this.normalize(a, !0)), this._items[a]);
8045      }),
8046      (e.prototype.mergers = function (a) {
8047          return a === d ? this._mergers.slice() : ((a = this.normalize(a, !0)), this._mergers[a]);
8048      }),
8049      (e.prototype.clones = function (b) {
8050          var c = this._clones.length / 2,
8051              e = c + this._items.length,
8052              f = function (a) {
8053                  return a % 2 == 0 ? e + a / 2 : c - (a + 1) / 2;
8054              };
8055          return b === d
8056              ? a.map(this._clones, function (a, b) {
8057                    return f(b);
8058                })
8059              : a.map(this._clones, function (a, c) {
8060                    return a === b ? f(c) : null;
8061                });
8062      }),
8063      (e.prototype.speed = function (a) {
8064          return a !== d && (this._speed = a), this._speed;
8065      }),
8066      (e.prototype.coordinates = function (b) {
8067          var c,
8068              e = 1,
8069              f = b - 1;
8070          return b === d
8071              ? a.map(
8072                    this._coordinates,
8073                    a.proxy(function (a, b) {
8074                        return this.coordinates(b);
8075                    }, this)
8076                )
8077              : (this.settings.center ? (this.settings.rtl && ((e = -1), (f = b + 1)), (c = this._coordinates[b]), (c += ((this.width() - c + (this._coordinates[f] || 0)) / 2) * e)) : (c = this._coordinates[f] || 0), (c = Math.ceil(c)));
8078      }),
8079      (e.prototype.duration = function (a, b, c) {
8080          return 0 === c ? 0 : Math.min(Math.max(Math.abs(b - a), 1), 6) * Math.abs(c || this.settings.smartSpeed);
8081      }),
8082      (e.prototype.to = function (a, b) {
8083          var c = this.current(),
8084              d = null,
8085              e = a - this.relative(c),
8086              f = (e > 0) - (e < 0),
8087              g = this._items.length,
8088              h = this.minimum(),
8089              i = this.maximum();
8090          this.settings.loop
8091              ? (!this.settings.rewind && Math.abs(e) > g / 2 && (e += -1 * f * g), (a = c + e), (d = ((((a - h) % g) + g) % g) + h) !== a && d - e <= i && d - e > 0 && ((c = d - e), (a = d), this.reset(c)))
8092              : this.settings.rewind
8093              ? ((i += 1), (a = ((a % i) + i) % i))
8094              : (a = Math.max(h, Math.min(i, a))),
8095              this.speed(this.duration(c, a, b)),
8096              this.current(a),
8097              this.isVisible() && this.update();
8098      }),
8099      (e.prototype.next = function (a) {
8100          (a = a || !1), this.to(this.relative(this.current()) + 1, a);
8101      }),
8102      (e.prototype.prev = function (a) {
8103          (a = a || !1), this.to(this.relative(this.current()) - 1, a);
8104      }),
8105      (e.prototype.onTransitionEnd = function (a) {
8106          if (a !== d && (a.stopPropagation(), (a.target || a.srcElement || a.originalTarget) !== this.$stage.get(0))) return !1;
8107          this.leave("animating"), this.trigger("translated");
8108      }),
8109      (e.prototype.viewport = function () {
8110          var d;
8111          return (
8112              this.options.responsiveBaseElement !== b
8113                  ? (d = a(this.options.responsiveBaseElement).width())
8114                  : b.innerWidth
8115                  ? (d = b.innerWidth)
8116                  : c.documentElement && c.documentElement.clientWidth
8117                  ? (d = c.documentElement.clientWidth)
8118                  : console.warn("Can not detect viewport width."),
8119              d
8120          );
8121      }),
8122      (e.prototype.replace = function (b) {
8123          this.$stage.empty(),
8124              (this._items = []),
8125              b && (b = b instanceof jQuery ? b : a(b)),
8126              this.settings.nestedItemSelector && (b = b.find("." + this.settings.nestedItemSelector)),
8127              b
8128                  .filter(function () {
8129                      return 1 === this.nodeType;
8130                  })
8131                  .each(
8132                      a.proxy(function (a, b) {
8133                          (b = this.prepare(b)), this.$stage.append(b), this._items.push(b), this._mergers.push(1 * b.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1);
8134                      }, this)
8135                  ),
8136              this.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0),
8137              this.invalidate("items");
8138      }),
8139      (e.prototype.add = function (b, c) {
8140          var e = this.relative(this._current);
8141          (c = c === d ? this._items.length : this.normalize(c, !0)),
8142              (b = b instanceof jQuery ? b : a(b)),
8143              this.trigger("add", { content: b, position: c }),
8144              (b = this.prepare(b)),
8145              0 === this._items.length || c === this._items.length
8146                  ? (0 === this._items.length && this.$stage.append(b),
8147                    0 !== this._items.length && this._items[c - 1].after(b),
8148                    this._items.push(b),
8149                    this._mergers.push(1 * b.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1))
8150                  : (this._items[c].before(b), this._items.splice(c, 0, b), this._mergers.splice(c, 0, 1 * b.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)),
8151              this._items[e] && this.reset(this._items[e].index()),
8152              this.invalidate("items"),
8153              this.trigger("added", { content: b, position: c });
8154      }),
8155      (e.prototype.remove = function (a) {
8156          (a = this.normalize(a, !0)) !== d &&
8157              (this.trigger("remove", { content: this._items[a], position: a }),
8158              this._items[a].remove(),
8159              this._items.splice(a, 1),
8160              this._mergers.splice(a, 1),
8161              this.invalidate("items"),
8162              this.trigger("removed", { content: null, position: a }));
8163      }),
8164      (e.prototype.preloadAutoWidthImages = function (b) {
8165          b.each(
8166              a.proxy(function (b, c) {
8167                  this.enter("pre-loading"),
8168                      (c = a(c)),
8169                      a(new Image())
8170                          .one(
8171                              "load",
8172                              a.proxy(function (a) {
8173                                  c.attr("src", a.target.src), c.css("opacity", 1), this.leave("pre-loading"), !this.is("pre-loading") && !this.is("initializing") && this.refresh();
8174                              }, this)
8175                          )
8176                          .attr("src", c.attr("src") || c.attr("data-src") || c.attr("data-src-retina"));
8177              }, this)
8178          );
8179      }),
8180      (e.prototype.destroy = function () {
8181          this.$element.off(".owl.core"), this.$stage.off(".owl.core"), a(c).off(".owl.core"), !1 !== this.settings.responsive && (b.clearTimeout(this.resizeTimer), this.off(b, "resize", this._handlers.onThrottledResize));
8182          for (var d in this._plugins) this._plugins[d].destroy();
8183          this.$stage.children(".cloned").remove(),
8184              this.$stage.unwrap(),
8185              this.$stage.children().contents().unwrap(),
8186              this.$stage.children().unwrap(),
8187              this.$stage.remove(),
8188              this.$element
8189                  .removeClass(this.options.refreshClass)
8190                  .removeClass(this.options.loadingClass)
8191                  .removeClass(this.options.loadedClass)
8192                  .removeClass(this.options.rtlClass)
8193                  .removeClass(this.options.dragClass)
8194                  .removeClass(this.options.grabClass)
8195                  .attr("class", this.$element.attr("class").replace(new RegExp(this.options.responsiveClass + "-\\S+\\s", "g"), ""))
8196                  .removeData("owl.carousel");
8197      }),
8198      (e.prototype.op = function (a, b, c) {
8199          var d = this.settings.rtl;
8200          switch (b) {
8201              case "<":
8202                  return d ? a > c : a < c;
8203              case ">":
8204                  return d ? a < c : a > c;
8205              case ">=":
8206                  return d ? a <= c : a >= c;
8207              case "<=":
8208                  return d ? a >= c : a <= c;
8209          }
8210      }),
8211      (e.prototype.on = function (a, b, c, d) {
8212          a.addEventListener ? a.addEventListener(b, c, d) : a.attachEvent && a.attachEvent("on" + b, c);
8213      }),
8214      (e.prototype.off = function (a, b, c, d) {
8215          a.removeEventListener ? a.removeEventListener(b, c, d) : a.detachEvent && a.detachEvent("on" + b, c);
8216      }),
8217      (e.prototype.trigger = function (b, c, d, f, g) {
8218          var h = { item: { count: this._items.length, index: this.current() } },
8219              i = a.camelCase(
8220                  a
8221                      .grep(["on", b, d], function (a) {
8222                          return a;
8223                      })
8224                      .join("-")
8225                      .toLowerCase()
8226              ),
8227              j = a.Event([b, "owl", d || "carousel"].join(".").toLowerCase(), a.extend({ relatedTarget: this }, h, c));
8228          return (
8229              this._supress[b] ||
8230                  (a.each(this._plugins, function (a, b) {
8231                      b.onTrigger && b.onTrigger(j);
8232                  }),
8233                  this.register({ type: e.Type.Event, name: b }),
8234                  this.$element.trigger(j),
8235                  this.settings && "function" == typeof this.settings[i] && this.settings[i].call(this, j)),
8236              j
8237          );
8238      }),
8239      (e.prototype.enter = function (b) {
8240          a.each(
8241              [b].concat(this._states.tags[b] || []),
8242              a.proxy(function (a, b) {
8243                  this._states.current[b] === d && (this._states.current[b] = 0), this._states.current[b]++;
8244              }, this)
8245          );
8246      }),
8247      (e.prototype.leave = function (b) {
8248          a.each(
8249              [b].concat(this._states.tags[b] || []),
8250              a.proxy(function (a, b) {
8251                  this._states.current[b]--;
8252              }, this)
8253          );
8254      }),
8255      (e.prototype.register = function (b) {
8256          if (b.type === e.Type.Event) {
8257              if ((a.event.special[b.name] || (a.event.special[b.name] = {}), !a.event.special[b.name].owl)) {
8258                  var c = a.event.special[b.name]._default;
8259                  (a.event.special[b.name]._default = function (a) {
8260                      return !c || !c.apply || (a.namespace && -1 !== a.namespace.indexOf("owl")) ? a.namespace && a.namespace.indexOf("owl") > -1 : c.apply(this, arguments);
8261                  }),
8262                      (a.event.special[b.name].owl = !0);
8263              }
8264          } else
8265              b.type === e.Type.State &&
8266                  (this._states.tags[b.name] ? (this._states.tags[b.name] = this._states.tags[b.name].
8266concat(b.tags)) : (this._states.tags[b.name] = b.tags),
8267                  (this._states.tags[b.name] = a.grep(
8268                      this._states.tags[b.name],
8269                      a.proxy(function (c, d) {
8270                          return a.inArray(c, this._states.tags[b.name]) === d;
8271                      }, this)
8272                  )));
8273      }),
8274      (e.prototype.suppress = function (b) {
8275          a.each(
8276              b,
8277              a.proxy(function (a, b) {
8278                  this._supress[b] = !0;
8279              }, this)
8280          );
8281      }),
8282      (e.prototype.release = function (b) {
8283          a.each(
8284              b,
8285              a.proxy(function (a, b) {
8286                  delete this._supress[b];
8287              }, this)
8288          );
8289      }),
8290      (e.prototype.pointer = function (a) {
8291          var c = { x: null, y: null };
8292          return (
8293              (a = a.originalEvent || a || b.event),
8294              (a = a.touches && a.touches.length ? a.touches[0] : a.changedTouches && a.changedTouches.length ? a.changedTouches[0] : a),
8295              a.pageX ? ((c.x = a.pageX), (c.y = a.pageY)) : ((c.x = a.clientX), (c.y = a.clientY)),
8296              c
8297          );
8298      }),
8299      (e.prototype.isNumeric = function (a) {
8300          return !isNaN(parseFloat(a));
8301      }),
8302      (e.prototype.difference = function (a, b) {
8303          return { x: a.x - b.x, y: a.y - b.y };
8304      }),
8305      (a.fn.owlCarousel = function (b) {
8306          var c = Array.prototype.slice.call(arguments, 1);
8307          return this.each(function () {
8308              var d = a(this),
8309                  f = d.data("owl.carousel");
8310              f ||
8311                  ((f = new e(this, "object" == typeof b && b)),
8312                  d.data("owl.carousel", f),
8313                  a.each(["next", "prev", "to", "destroy", "refresh", "replace", "add", "remove"], function (b, c) {
8314                      f.register({ type: e.Type.Event, name: c }),
8315                          f.$element.on(
8316                              c + ".owl.carousel.core",
8317                              a.proxy(function (a) {
8318                                  a.namespace && a.relatedTarget !== this && (this.suppress([c]), f[c].apply(this, [].slice.call(arguments, 1)), this.release([c]));
8319                              }, f)
8320                          );
8321                  })),
8322                  "string" == typeof b && "_" !== b.charAt(0) && f[b].apply(f, c);
8323          });
8324      }),
8325      (a.fn.owlCarousel.Constructor = e);
8326})(window.Zepto || window.jQuery, window, document),
8327  (function (a, b, c, d) {
8328      var e = function (b) {
8329          (this._core = b),
8330              (this._interval = null),
8331              (this._visible = null),
8332              (this._handlers = {
8333                  "initialized.owl.carousel": a.proxy(function (a) {
8334                      a.namespace && this._core.settings.autoRefresh && this.watch();
8335                  }, this),
8336              }),
8337              (this._core.options = a.extend({}, e.Defaults, this._core.options)),
8338              this._core.$element.on(this._handlers);
8339      };
8340      (e.Defaults = { autoRefresh: !0, autoRefreshInterval: 500 }),
8341          (e.prototype.watch = function () {
8342              this._interval || ((this._visible = this._core.isVisible()), (this._interval = b.setInterval(a.proxy(this.refresh, this), this._core.settings.autoRefreshInterval)));
8343          }),
8344          (e.prototype.refresh = function () {
8345              this._core.isVisible() !== this._visible && ((this._visible = !this._visible), this._core.$element.toggleClass("owl-hidden", !this._visible), this._visible && this._core.invalidate("width") && this._core.refresh());
8346          }),
8347          (e.prototype.destroy = function () {
8348              var a, c;
8349              b.clearInterval(this._interval);
8350              for (a in this._handlers) this._core.$element.off(a, this._handlers[a]);
8351              for (c in Object.getOwnPropertyNames(this)) "function" != typeof this[c] && (this[c] = null);
8352          }),
8353          (a.fn.owlCarousel.Constructor.Plugins.AutoRefresh = e);
8354  })(window.Zepto || window.jQuery, window, document),
8355  (function (a, b, c, d) {
8356      var e = function (b) {
8357          (this._core = b),
8358              (this._loaded = []),
8359              (this._handlers = {
8360                  "initialized.owl.carousel change.owl.carousel resized.owl.carousel": a.proxy(function (b) {
8361                      if (b.namespace && this._core.settings && this._core.settings.lazyLoad && ((b.property && "position" == b.property.name) || "initialized" == b.type)) {
8362                          var c = this._core.settings,
8363                              e = (c.center && Math.ceil(c.items / 2)) || c.items,
8364                              f = (c.center && -1 * e) || 0,
8365                              g = (b.property && b.property.value !== d ? b.property.value : this._core.current()) + f,
8366                              h = this._core.clones().length,
8367                              i = a.proxy(function (a, b) {
8368                                  this.load(b);
8369                              }, this);
8370                          for (c.lazyLoadEager > 0 && ((e += c.lazyLoadEager), c.loop && ((g -= c.lazyLoadEager), e++)); f++ < e; ) this.load(h / 2 + this._core.relative(g)), h && a.each(this._core.clones(this._core.relative(g)), i), g++;
8371                      }
8372                  }, this),
8373              }),
8374              (this._core.options = a.extend({}, e.Defaults, this._core.options)),
8375              this._core.$element.on(this._handlers);
8376      };
8377      (e.Defaults = { lazyLoad: !1, lazyLoadEager: 0 }),
8378          (e.prototype.load = function (c) {
8379              var d = this._core.$stage.children().eq(c),
8380                  e = d && d.find(".owl-lazy");
8381              !e ||
8382                  a.inArray(d.get(0), this._loaded) > -1 ||
8383                  (e.each(
8384                      a.proxy(function (c, d) {
8385                          var e,
8386                              f = a(d),
8387                              g = (b.devicePixelRatio > 1 && f.attr("data-src-retina")) || f.attr("data-src") || f.attr("data-srcset");
8388                          this._core.trigger("load", { element: f, url: g }, "lazy"),
8389                              f.is("img")
8390                                  ? f
8391                                        .one(
8392                                            "load.owl.lazy",
8393                                            a.proxy(function () {
8394                                                f.css("opacity", 1), this._core.trigger("loaded", { element: f, url: g }, "lazy");
8395                                            }, this)
8396                                        )
8397                                        .attr("src", g)
8398                                  : f.is("source")
8399                                  ? f
8400                                        .one(
8401                                            "load.owl.lazy",
8402                                            a.proxy(function () {
8403                                                this._core.trigger("loaded", { element: f, url: g }, "lazy");
8404                                            }, this)
8405                                        )
8406                                        .attr("srcset", g)
8407                                  : ((e = new Image()),
8408                                    (e.onload = a.proxy(function () {
8409                                        f.css({ "background-image": 'url("' + g + '")', opacity: "1" }), this._core.trigger("loaded", { element: f, url: g }, "lazy");
8410                                    }, this)),
8411                                    (e.src = g));
8412                      }, this)
8413                  ),
8414                  this._loaded.push(d.get(0)));
8415          }),
8416          (e.prototype.destroy = function () {
8417              var a, b;
8418              for (a in this.handlers) this._core.$element.off(a, this.handlers[a]);
8419              for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null);
8420          }),
8421          (a.fn.owlCarousel.Constructor.Plugins.Lazy = e);
8422  })(window.Zepto || window.jQuery, window, document),
8423  (function (a, b, c, d) {
8424      var e = function (c) {
8425          (this._core = c),
8426              (this._previousHeight = null),
8427              (this._handlers = {
8428                  "initialized.owl.carousel refreshed.owl.carousel": a.proxy(function (a) {
8429                      a.namespace && this._core.settings.autoHeight && this.update();
8430                  }, this),
8431                  "changed.owl.carousel": a.proxy(function (a) {
8432                      a.namespace && this._core.settings.autoHeight && "position" === a.property.name && this.update();
8433                  }, this),
8434                  "loaded.owl.lazy": a.proxy(function (a) {
8435                      a.namespace && this._core.settings.autoHeight && a.element.closest("." + this._core.settings.itemClass).index() === this._core.current() && this.update();
8436                  }, this),
8437              }),
8438              (this._core.options = a.extend({}, e.Defaults, this._core.options)),
8439              this._core.$element.on(this._handlers),
8440              (this._intervalId = null);
8441          var d = this;
8442          a(b).on("load", function () {
8443              d._core.settings.autoHeight && d.update();
8444          }),
8445              a(b).resize(function () {
8446                  d._core.settings.autoHeight &&
8447                      (null != d._intervalId && clearTimeout(d._intervalId),
8448                      (d._intervalId = setTimeout(function () {
8449                          d.update();
8450                      }, 250)));
8451              });
8452      };
8453      (e.Defaults = { autoHeight: !1, autoHeightClass: "owl-height" }),
8454          (e.prototype.update = function () {
8455              var b = this._core._current,
8456                  c = b + this._core.settings.items,
8457                  d = this._core.settings.lazyLoad,
8458                  e = this._core.$stage.children().toArray().slice(b, c),
8459                  f = [],
8460                  g = 0;
8461              a.each(e, function (b, c) {
8462                  f.push(a(c).height());
8463              }),
8464                  (g = Math.max.apply(null, f)),
8465                  g <= 1 && d && this._previousHeight && (g = this._previousHeight),
8466                  (this._previousHeight = g),
8467                  this._core.$stage.parent().height(g).addClass(this._core.settings.autoHeightClass);
8468          }),
8469          (e.prototype.destroy = function () {
8470              var a, b;
8471              for (a in this._handlers) this._core.$element.off(a, this._handlers[a]);
8472              for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null);
8473          }),
8474          (a.fn.owlCarousel.Constructor.Plugins.AutoHeight = e);
8475  })(window.Zepto || window.jQuery, window, document),
8476  (function (a, b, c, d) {
8477      var e = function (b) {
8478          (this._core = b),
8479              (this._videos = {}),
8480              (this._playing = null),
8481              (this._handlers = {
8482                  "initialized.owl.carousel": a.proxy(function (a) {
8483                      a.namespace && this._core.register({ type: "state", name: "playing", tags: ["interacting"] });
8484                  }, this),
8485                  "resize.owl.carousel": a.proxy(function (a) {
8486                      a.namespace && this._core.settings.video && this.isInFullScreen() && a.preventDefault();
8487                  }, this),
8488                  "refreshed.owl.carousel": a.proxy(function (a) {
8489                      a.namespace && this._core.is("resizing") && this._core.$stage.find(".cloned .owl-video-frame").remove();
8490                  }, this),
8491                  "changed.owl.carousel": a.proxy(function (a) {
8492                      a.namespace && "position" === a.property.name && this._playing && this.stop();
8493                  }, this),
8494                  "prepared.owl.carousel": a.proxy(function (b) {
8495                      if (b.namespace) {
8496                          var c = a(b.content).find(".owl-video");
8497                          c.length && (c.css("display", "none"), this.fetch(c, a(b.content)));
8498                      }
8499                  }, this),
8500              }),
8501              (this._core.options = a.extend({}, e.Defaults, this._core.options)),
8502              this._core.$element.on(this._handlers),
8503              this._core.$element.on(
8504                  "click.owl.video",
8505                  ".owl-video-play-icon",
8506                  a.proxy(function (a) {
8507                      this.play(a);
8508                  }, this)
8509              );
8510      };
8511      (e.Defaults = { video: !1, videoHeight: !1, videoWidth: !1 }),
8512          (e.prototype.fetch = function (a, b) {
8513              var c = (function () {
8514                      return a.attr("data-vimeo-id") ? "vimeo" : a.attr("data-vzaar-id") ? "vzaar" : "youtube";
8515                  })(),
8516                  d = a.attr("data-vimeo-id") || a.attr("data-youtube-id") || a.attr("data-vzaar-id"),
8517                  e = a.attr("data-width") || this._core.settings.videoWidth,
8518                  f = a.attr("data-height") || this._core.settings.videoHeight,
8519                  g = a.attr("href");
8520              if (!g) throw new Error("Missing video URL.");
8521              if (
8522                  ((d = g.match(
8523                      /(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com|be\-nocookie\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/
8524                  )),
8525                  d[3].indexOf("youtu") > -1)
8526              )
8527                  c = "youtube";
8528              else if (d[3].indexOf("vimeo") > -1) c = "vimeo";
8529              else {
8530                  if (!(d[3].indexOf("vzaar") > -1)) throw new Error("Video URL not supported.");
8531                  c = "vzaar";
8532              }
8533              (d = d[6]), (this._videos[g] = { type: c, id: d, width: e, height: f }), b.attr("data-video", g), this.thumbnail(a, this._videos[g]);
8534          }),
8535          (e.prototype.thumbnail = function (b, c) {
8536              var d,
8537                  e,
8538                  f,
8539                  g = c.width && c.height ? "width:" + c.width + "px;height:" + c.height + "px;" : "",
8540                  h = b.find("img"),
8541                  i = "src",
8542                  j = "",
8543                  k = this._core.settings,
8544                  l = function (c) {
8545                      (e = '<div class="owl-video-play-icon"></div>'),
8546                          (d = k.lazyLoad ? a("<div/>", { class: "owl-video-tn " + j, srcType: c }) : a("<div/>", { class: "owl-video-tn", style: "opacity:1;background-image:url(" + c + ")" })),
8547                          b.after(d),
8548                          b.after(e);
8549                  };
8550              if ((b.wrap(a("<div/>", { class: "owl-video-wrapper", style: g })), this._core.settings.lazyLoad && ((i = "data-src"), (j = "owl-lazy")), h.length)) return l(h.attr(i)), h.remove(), !1;
8551              "youtube" === c.type
8552                  ? ((f = "//img.youtube.com/vi/" + c.id + "/hqdefault.jpg"), l(f))
8553                  : "vimeo" === c.type
8554                  ? a.ajax({
8555                        type: "GET",
8556                        url: "//vimeo.com/api/v2/video/" + c.id + ".json",
8557                        jsonp: "callback",
8558                        dataType: "jsonp",
8559                        success: function (a) {
8560                            (f = a[0].thumbnail_large), l(f);
8561                        },
8562                    })
8563                  : "vzaar" === c.type &&
8564                    a.ajax({
8565                        type: "GET",
8566                        url: "//vzaar.com/api/videos/" + c.id + ".json",
8567                        jsonp: "callback",
8568                        dataType: "jsonp",
8569                        success: function (a) {
8570                            (f = a.framegrab_url), l(f);
8571                        },
8572                    });
8573          }),
8574          (e.prototype.stop = function () {
8575              this._core.trigger("stop", null, "video"),
8576                  this._playing.find(".owl-video-frame").remove(),
8577                  this._playing.removeClass("owl-video-playing"),
8578                  (this._playing = null),
8579                  this._core.leave("playing"),
8580                  this._core.trigger("stopped", null, "video");
8581          }),
8582          (e.prototype.play = function (b) {
8583              var c,
8584                  d = a(b.target),
8585                  e = d.closest("." + this._core.settings.itemClass),
8586                  f = this._videos[e.attr("data-video")],
8587                  g = f.width || "100%",
8588                  h = f.height || this._core.$stage.height();
8589              this._playing ||
8590                  (this._core.enter("playing"),
8591                  this._core.trigger("play", null, "video"),
8592                  (e = this._core.items(this._core.relative(e.index()))),
8593                  this._core.reset(e.index()),
8594                  (c = a('<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>')),
8595                  c.attr("height", h),
8596                  c.attr("width", g),
8597                  "youtube" === f.type
8598                      ? c.attr("src", "//www.youtube.com/embed/" + f.id + "?autoplay=1&rel=0&v=" + f.id)
8599                      : "vimeo" === f.type
8600                      ? c.attr("src", "//player.vimeo.com/video/" + f.id + "?autoplay=1")
8601                      : "vzaar" === f.type && c.attr("src", "//view.vzaar.com/" + f.id + "/player?autoplay=true"),
8602                  a(c).wrap('<div class="owl-video-frame" />').insertAfter(e.find(".owl-video")),
8603                  (this._playing = e.addClass("owl-video-playing")));
8604          }),
8605          (e.prototype.isInFullScreen = function () {
8606              var b = c.fullscreenElement || c.mozFullScreenElement || c.webkitFullscreenElement;
8607              return b && a(b).parent().hasClass("owl-video-frame");
8608          }),
8609          (e.prototype.destroy = function () {
8610              var a, b;
8611              this._core.$element.off("click.owl.video");
8612              for (a in this._handlers) this._core.$element.off(a, this._handlers[a]);
8613              for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null);
8614          }),
8615          (a.fn.owlCarousel.Constructor.Plugins.Video = e);
8616  })(window.Zepto || window.jQuery, window, document),
8617  (function (a, b, c, d) {
8618      var e = function (b) {
8619          (this.core = b),
8620              (this.core.options = a.extend({}, e.Defaults, this.core.options)),
8621              (this.swapping = !0),
8622              (this.previous = d),
8623              (this.next = d),
8624              (this.handlers = {
8625                  "change.owl.carousel": a.proxy(function (a) {
8626                      a.namespace && "position" == a.property.name && ((this.previous = this.core.current()), (this.next = a.property.value));
8627                  }, this),
8628                  "drag.owl.carousel dragged.owl.carousel translated.owl.carousel": a.proxy(function (a) {
8629                      a.namespace && (this.swapping = "translated" == a.type);
8630                  }, this),
8631                  "translate.owl.carousel": a.proxy(function (a) {
8632                      a.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn) && this.swap();
8633                  }, this),
8634              }),
8635              this.core.$element.on(this.handlers);
8636      };
8637      (e.Defaults = { animateOut: !1, animateIn: !1 }),
8638          (e.prototype.swap = function () {
8639              if (1 === this.core.settings.items && a.support.animation && a.support.transition) {
8640                  this.core.speed(0);
8641                  var b,
8642                      c = a.proxy(this.clear, this),
8643                      d = this.core.$stage.children().eq(this.previous),
8644                      e = this.core.$stage.children().eq(this.next),
8645                      f = this.core.settings.animateIn,
8646                      g = this.core.settings.animateOut;
8647                  this.core.current() !== this.previous &&
8648                      (g &&
8649                          ((b = this.core.coordinates(this.previous) - this.core.coordinates(this.next)),
8650                          d
8651                              .one(a.support.animation.end, c)
8652                              .css({ left: b + "px" })
8653                              .addClass("animated owl-animated-out")
8654                              .addClass(g)),
8655                      f && e.one(a.support.animation.end, c).addClass("animated owl-animated-in").addClass(f));
8656              }
8657          }),
8658          (e.prototype.clear = function (b) {
8659              a(b.target).css({ left: "" }).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut), this.core.onTransitionEnd();
8660          }),
8661          (e.prototype.destroy = function () {
8662              var a, b;
8663              for (a in this.handlers) this.core.$element.off(a, this.handlers[a]);
8664              for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null);
8665          }),
8666          (a.fn.owlCarousel.Constructor.Plugins.Animate = e);
8667  })(window.Zepto || window.jQuery, window, document),
8668  (function (a, b, c, d) {
8669      var e = function (b) {
8670          (this._core = b),
8671              (this._call = null),
8672              (this._time = 0),
8673              (this._timeout = 0),
8674              (this._paused = !0),
8675              (this._handlers = {
8676                  "changed.owl.carousel": a.proxy(function (a) {
8677                      a.namespace && "settings" === a.property.name ? (this._core.settings.autoplay ? this.play() : this.stop()) : a.namespace && "position" === a.property.name && this._paused && (this._time = 0);
8678                  }, this),
8679                  "initialized.owl.carousel": a.proxy(function (a) {
8680                      a.namespace && this._core.settings.autoplay && this.play();
8681                  }, this),
8682                  "play.owl.autoplay": a.proxy(function (a, b, c) {
8683                      a.namespace && this.play(b, c);
8684                  }, this),
8685                  "stop.owl.autoplay": a.proxy(function (a) {
8686                      a.namespace && this.stop();
8687                  }, this),
8688                  "mouseover.owl.autoplay": a.proxy(function () {
8689                      this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause();
8690                  }, this),
8691                  "mouseleave.owl.autoplay": a.proxy(function () {
8692                      this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.play();
8693                  }, this),
8694                  "touchstart.owl.core": a.proxy(function () {
8695                      this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause();
8696                  }, this),
8697                  "touchend.owl.core": a.proxy(function () {
8698                      this._core.settings.autoplayHoverPause && this.play();
8699                  }, this),
8700              }),
8701              this._core.$element.on(this._handlers),
8702              (this._core.options = a.extend({}, e.Defaults, this._core.options));
8703      };
8704      (e.Defaults = { autoplay: !1, autoplayTimeout: 5e3, autoplayHoverPause: !1, autoplaySpeed: !1 }),
8705          (e.prototype._next = function (d) {
8706              (this._call = b.setTimeout(a.proxy(this._next, this, d), this._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read())),
8707                  this._core.is("interacting") || c.hidden || this._core.next(d || this._core.settings.autoplaySpeed);
8708          }),
8709          (e.prototype.read = function () {
8710              return new Date().getTime() - this._time;
8711          }),
8712          (e.prototype.play = function (c, d) {
8713              var e;
8714              this._core.is("rotating") || this._core.enter("rotating"),
8715                  (c = c || this._core.settings.autoplayTimeout),
8716                  (e = Math.min(this._time % (this._timeout || c), c)),
8717                  this._paused ? ((this._time = this.read()), (this._paused = !1)) : b.clearTimeout(this._call),
8718                  (this._time += (this.read() % c) - e),
8719                  (this._timeout = c),
8720                  (this._call = b.setTimeout(a.proxy(this._next, this, d), c - e));
8721          }),
8722          (e.prototype.stop = function () {
8723              this._core.is("rotating") && ((this._time = 0), (this._paused = !0), b.clearTimeout(this._call), this._core.leave("rotating"));
8724          }),
8725          (e.prototype.pause = function () {
8726              this._core.is("rotating") && !this._paused && ((this._time = this.read()), (this._paused = !0), b.clearTimeout(this._call));
8727          }),
8728          (e.prototype.destroy = function () {
8729              var a, b;
8730              this.stop();
8731              for (a in this._handlers) this._core.$element.off(a, this._handlers[a]);
8732              for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null);
8733          }),
8734          (a.fn.owlCarousel.Constructor.Plugins.autoplay = e);
8735  })(window.Zepto || window.jQuery, window, document),
8736  (function (a, b, c, d) {
8737      "use strict";
8738      var e = function (b) {
8739          (this._core = b),
8740              (this._initialized = !1),
8741              (this._pages = []),
8742              (this._controls = {}),
8743              (this._templates = []),
8744              (this.$element = this._core.$element),
8745              (this._overrides = { next: this._core.next, prev: this._core.prev, to: this._core.to }),
8746              (this._handlers = {
8747                  "prepared.owl.carousel": a.proxy(function (b) {
8748                      b.namespace && this._core.settings.dotsData && this._templates.push('<div class="' + this._core.settings.dotClass + '">' + a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot") + "</div>");
8749                  }, this),
8750                  "added.owl.carousel": a.proxy(function (a) {
8751                      a.namespace && this._core.settings.dotsData && this._templates.splice(a.position, 0, this._templates.pop());
8752                  }, this),
8753                  "remove.owl.carousel": a.proxy(function (a) {
8754                      a.namespace && this._core.settings.dotsData && this._templates.splice(a.position, 1);
8755                  }, this),
8756                  "changed.owl.carousel": a.proxy(function (a) {
8757                      a.namespace && "position" == a.property.name && this.draw();
8758                  }, this),
8759                  "initialized.owl.carousel": a.proxy(function (a) {
8760                      a.namespace &&
8761                          !this._initialized &&
8762                          (this._core.trigger("initialize", null, "navigation"), this.initialize(), this.update(), this.draw(), (this._initialized = !0), this._core.trigger("initialized", null, "navigation"));
8763                  }, this),
8764                  "refreshed.owl.carousel": a.proxy(function (a) {
8765                      a.namespace && this._initialized && (this._core.trigger("refresh", null, "navigation"), this.update(), this.draw(), this._core.trigger("refreshed", null, "navigation"));
8766                  }, this),
8767              }),
8768              (this._core.options = a.extend({}, e.Defaults, this._core.options)),
8769              this.$element.on(this._handlers);
8770      };
8771      (e.Defaults = {
8772          nav: !1,
8773          navText: ['<span aria-label="Previous">&#x2039;</span>', '<span aria-label="Next">&#x203a;</span>'],
8774          navSpeed: !1,
8775          navElement: 'button type="button" role="presentation"',
8776          navContainer: !1,
8777          navContainerClass: "owl-nav",
8778          navClass: ["owl-prev", "owl-next"],
8779          slideBy: 1,
8780          dotClass: "owl-dot",
8781          dotsClass: "owl-dots",
8782          dots: !0,
8783          dotsEach: !1,
8784          dotsData: !1,
8785          dotsSpeed: !1,
8786          dotsContainer: !1,
8787      }),
8788          (e.prototype.initialize = function () {
8789              var b,
8790                  c = this._core.settings;
8791              (this._controls.$relative = (c.navContainer ? a(c.navContainer) : a("<div>").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled")),
8792                  (this._controls.$previous = a("<" + c.navElement + ">")
8793                      .addClass(c.navClass[0])
8794                      .html(c.navText[0])
8795                      .prependTo(this._controls.$relative)
8796                      .on(
8797                          "click",
8798                          a.proxy(function (a) {
8799                              this.prev(c.navSpeed);
8800                          }, this)
8801                      )),
8802                  (this._controls.$next = a("<" + c.navElement + ">")
8803                      .addClass(c.navClass[1])
8804                      .html(c.navText[1])
8805                      .appendTo(this._controls.$relative)
8806                      .on(
8807                          "click",
8808                          a.proxy(function (a) {
8809                              this.next(c.navSpeed);
8810                          }, this)
8811                      )),
8812                  c.dotsData || (this._templates = [a('<button role="button">').addClass(c.dotClass).append(a("<span>")).prop("outerHTML")]),
8813                  (this._controls.$absolute = (c.dotsContainer ? a(c.dotsContainer) : a("<div>").addClass(c.dotsClass).appendTo(this.$element)).addClass("disabled")),
8814                  this._controls.$absolute.on(
8815                      "click",
8816                      "button",
8817                      a.proxy(function (b) {
8818                          var d = a(b.target).parent().is(this._controls.$absolute) ? a(b.target).index() : a(b.target).parent().index();
8819                          b.preventDefault(), this.to(d, c.dotsSpeed);
8820                      }, this)
8821                  );
8822              for (b in this._overrides) this._core[b] = a.proxy(this[b], this);
8823          }),
8824          (e.prototype.destroy = function () {
8825              var a, b, c, d, e;
8826              e = this._core.settings;
8827              for (a in this._handlers) this.$element.off(a, this._handlers[a]);
8828              for (b in this._controls) "$relative" === b && e.navContainer ? this._controls[b].html("") : this._controls[b].remove();
8829              for (d in this.overides) this._core[d] = this._overrides[d];
8830              for (c in Object.getOwnPropertyNames(this)) "function" != typeof this[c] && (this[c] = null);
8831          }),
8832          (e.prototype.update = function () {
8833              var a,
8834                  b,
8835                  c,
8836                  d = this._core.clones().length / 2,
8837                  e = d + this._core.items().length,
8838                  f = this._core.maximum(!0),
8839                  g = this._core.settings,
8840                  h = g.center || g.autoWidth || g.dotsData ? 1 : g.dotsEach || g.items;
8841              if (("page" !== g.slideBy && (g.slideBy = Math.min(g.slideBy, g.items)), g.dots || "page" == g.slideBy))
8842                  for (this._pages = [], a = d, b = 0, c = 0; a < e; a++) {
8843                      if (b >= h || 0 === b) {
8844                          if ((this._pages.push({ start: Math.min(f, a - d), end: a - d + h - 1 }), Math.min(f, a - d) === f)) break;
8845                          (b = 0), ++c;
8846                      }
8847                      b += this._core.mergers(this._core.relative(a));
8848                  }
8849          }),
8850          (e.prototype.draw = function () {
8851              var b,
8852                  c = this._core.settings,
8853                  d = this._core.items().length <= c.items,
8854                  e = this._core.relative(this._core.current()),
8855                  f = c.loop || c.rewind;
8856              this._controls.$relative.toggleClass("disabled", !c.nav || d),
8857                  c.nav && (this._controls.$previous.toggleClass("disabled", !f && e <= this._core.minimum(!0)), this._controls.$next.toggleClass("disabled", !f && e >= this._core.maximum(!0))),
8858                  this._controls.$absolute.toggleClass("disabled", !c.dots || d),
8859                  c.dots &&
8860                      ((b = this._pages.length - this._controls.$absolute.children().length),
8861                      c.dotsData && 0 !== b
8862                          ? this._controls.$absolute.html(this._templates.join(""))
8863                          : b > 0
8864                          ? this._controls.$absolute.append(new Array(b + 1).join(this._templates[0]))
8865                          : b < 0 && this._controls.$absolute.children().slice(b).remove(),
8866                      this._controls.$absolute.find(".active").removeClass("active"),
8867                      this._controls.$absolute.children().eq(a.inArray(this.current(), this._pages)).addClass("active"));
8868          }),
8869          (e.prototype.onTrigger = function (b) {
8870              var c = this._core.settings;
8871              b.page = { index: a.inArray(this.current(), this._pages), count: this._pages.length, size: c && (c.center || c.autoWidth || c.dotsData ? 1 : c.dotsEach || c.items) };
8872          }),
8873          (e.prototype.current = function () {
8874              var b = this._core.relative(this._core.current());
8875              return a
8876                  .grep(
8877                      this._pages,
8878                      a.proxy(function (a, c) {
8879                          return a.start <= b && a.end >= b;
8880                      }, this)
8881                  )
8882                  .pop();
8883          }),
8884          (e.prototype.getPosition = function (b) {
8885              var c,
8886                  d,
8887                  e = this._core.settings;
8888              return (
8889                  "page" == e.slideBy
8890                      ? ((c = a.inArray(this.current(), this._pages)), (d = this._pages.length), b ? ++c : --c, (c = this._pages[((c % d) + d) % d].start))
8891                      : ((c = this._core.relative(this._core.current())), (d = this._core.items().length), b ? (c += e.slideBy) : (c -= e.slideBy)),
8892                  c
8893              );
8894          }),
8895          (e.prototype.next = function (b) {
8896              a.proxy(this._overrides.to, this._core)(this.getPosition(!0), b);
8897          }),
8898          (e.prototype.prev = function (b) {
8899              a.proxy(this._overrides.to, this._core)(this.getPosition(!1), b);
8900          }),
8901          (e.prototype.to = function (b, c, d) {
8902              var e;
8903              !d && this._pages.length ? ((e = this._pages.length), a.proxy(this._overrides.to, this._core)(this._pages[((b % e) + e) % e].start, c)) : a.proxy(this._overrides.to, this._core)(b, c);
8904          }),
8905          (a.fn.owlCarousel.Constructor.Plugins.Navigation = e);
8906  })(window.Zepto || window.jQuery, window, document),
8907  (function (a, b, c, d) {
8908      "use strict";
8909      var e = function (c) {
8910          (this._core = c),
8911              (this._hashes = {}),
8912              (this.$element = this._core.$element),
8913              (this._handlers = {
8914                  "initialized.owl.carousel": a.proxy(function (c) {
8915                      c.namespace && "URLHash" === this._core.settings.startPosition && a(b).trigger("hashchange.owl.navigation");
8916                  }, this),
8917                  "prepared.owl.carousel": a.proxy(function (b) {
8918                      if (b.namespace) {
8919                          var c = a(b.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");
8920                          if (!c) return;
8921                          this._hashes[c] = b.content;
8922                      }
8923                  }, this),
8924                  "changed.owl.carousel": a.proxy(function (c) {
8925                      if (c.namespace && "position" === c.property.name) {
8926                          var d = this._core.items(this._core.relative(this._core.current())),
8927                              e = a
8928                                  .map(this._hashes, function (a, b) {
8929                                      return a === d ? b : null;
8930                                  })
8931                                  .join();
8932                          if (!e || b.location.hash.slice(1) === e) return;
8933                          b.location.hash = e;
8934                      }
8935                  }, this),
8936              }),
8937              (this._core.options = a.extend({}, e.Defaults, this._core.options)),
8938              this.$element.on(this._handlers),
8939              a(b).on(
8940                  "hashchange.owl.navigation",
8941                  a.proxy(function (a) {
8942                      var c = b.location.hash.substring(1),
8943                          e = this._core.$stage.children(),
8944                          f = this._hashes[c] && e.index(this._hashes[c]);
8945                      f !== d && f !== this._core.current() && this._core.to(this._core.relative(f), !1, !0);
8946                  }, this)
8947              );
8948      };
8949      (e.Defaults = { URLhashListener: !1 }),
8950          (e.prototype.destroy = function () {
8951              var c, d;
8952              a(b).off("hashchange.owl.navigation");
8953              for (c in this._handlers) this._core.$element.off(c, this._handlers[c]);
8954              for (d in Object.getOwnPropertyNames(this)) "function" != typeof this[d] && (this[d] = null);
8955          }),
8956          (a.fn.owlCarousel.Constructor.Plugins.Hash = e);
8957  })(window.Zepto || window.jQuery, window, document),
8958  (function (a, b, c, d) {
8959      function e(b, c) {
8960          var e = !1,
8961              f = b.charAt(0).toUpperCase() + b.slice(1);
8962          return (
8963              a.each((b + " " + h.join(f + " ") + f).split(" "), function (a, b) {
8964                  if (g[b] !== d) return (e = !c || b), !1;
8965              }),
8966              e
8967          );
8968      }
8969      function f(a) {
8970          return e(a, !0);
8971      }
8972      var g = a("<support>").get(0).style,
8973          h = "Webkit Moz O ms".split(" "),
8974          i = 
8974{
8975              transition: { end: { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd", transition: "transitionend" } },
8976              animation: { end: { WebkitAnimation: "webkitAnimationEnd", MozAnimation: "animationend", OAnimation: "oAnimationEnd", animation: "animationend" } },
8977          },
8978          j = {
8979              csstransforms: function () {
8980                  return !!e("transform");
8981              },
8982              csstransforms3d: function () {
8983                  return !!e("perspective");
8984              },
8985              csstransitions: function () {
8986                  return !!e("transition");
8987              },
8988              cssanimations: function () {
8989                  return !!e("animation");
8990              },
8991          };
8992      j.csstransitions() && ((a.support.transition = new String(f("transition"))), (a.support.transition.end = i.transition.end[a.support.transition])),
8993          j.cssanimations() && ((a.support.animation = new String(f("animation"))), (a.support.animation.end = i.animation.end[a.support.animation])),
8994          j.csstransforms() && ((a.support.transform = new String(f("transform"))), (a.support.transform3d = j.csstransforms3d()));
8995  })(window.Zepto || window.jQuery, window, document);
8996
8997/*!
8998* jquery.counterup.js 1.0
8999*
9000* Copyright 2013, Benjamin Intal http://gambit.ph @bfintal
9001* Released under the GPL v2 License
9002*
9003* Date: Nov 26, 2013
9004*/ (function (e) {
9005  "use strict";
9006  e.fn.counterUp = function (t) {
9007      var n = e.extend({ time: 400, delay: 10 }, t);
9008      return this.each(function () {
9009          var t = e(this),
9010              r = n,
9011              i = function () {
9012                  var e = [],
9013                      n = r.time / r.delay,
9014                      i = t.text(),
9015                      s = /[0-9]+,[0-9]+/.test(i);
9016                  i = i.replace(/,/g, "");
9017                  var o = /^[0-9]+$/.test(i),
9018                      u = /^[0-9]+\.[0-9]+$/.test(i),
9019                      a = u ? (i.split(".")[1] || []).length : 0;
9020                  for (var f = n; f >= 1; f--) {
9021                      var l = parseInt((i / n) * f);
9022                      u && (l = parseFloat((i / n) * f).toFixed(a));
9023                      if (s) while (/(\d+)(\d{3})/.test(l.toString())) l = l.toString().replace(/(\d+)(\d{3})/, "$1,$2");
9024                      e.unshift(l);
9025                  }
9026                  t.data("counterup-nums", e);
9027                  t.text("0");
9028                  var c = function () {
9029                      t.text(t.data("counterup-nums").shift());
9030                      if (t.data("counterup-nums").length) setTimeout(t.data("counterup-func"), r.delay);
9031                      else {
9032                          delete t.data("counterup-nums");
9033                          t.data("counterup-nums", null);
9034                          t.data("counterup-func", null);
9035                      }
9036                  };
9037                  t.data("counterup-func", c);
9038                  setTimeout(t.data("counterup-func"), r.delay);
9039              };
9040          t.waypoint(i, { offset: "100%", triggerOnce: !0 });
9041      });
9042  };
9043})(jQuery);
9044
9045/**
9046* @module countdown
9047*/
9048(function ($) {
9049  "use strict";
9050  $.fn.countdown = function (options, callback) {
9051      var thisEl = $(this);
9052      var settings = { date: null, format: null };
9053      if (options) {
9054          $.extend(settings, options);
9055      }
9056      function countdown_proc() {
9057          var eventDate = Date.parse(settings["date"]) / 1000;
9058          var currentDate = Math.floor($.now() / 1000);
9059          if (eventDate <= currentDate) {
9060              callback.call(this);
9061              clearInterval(interval);
9062          }
9063          var seconds = eventDate - currentDate;
9064          var days = Math.floor(seconds / (60 * 60 * 24));
9065          seconds -= days * 60 * 60 * 24;
9066          var hours = Math.floor(seconds / (60 * 60));
9067          seconds -= hours * 60 * 60;
9068          var minutes = Math.floor(seconds / 60);
9069          seconds -= minutes * 60;
9070          if (days == 1) {
9071              thisEl.find(".timeRefDays").text("day");
9072          } else {
9073              thisEl.find(".timeRefDays").text("days");
9074          }
9075          if (hours == 1) {
9076              thisEl.find(".timeRefHours").text("hour");
9077          } else {
9078              thisEl.find(".timeRefHours").text("hours");
9079          }
9080          if (minutes == 1) {
9081              thisEl.find(".timeRefMinutes").text("minute");
9082          } else {
9083              thisEl.find(".timeRefMinutes").text("minutes");
9084          }
9085          if (seconds == 1) {
9086              thisEl.find(".timeRefSeconds").text("second");
9087          } else {
9088              thisEl.find(".timeRefSeconds").text("seconds");
9089          }
9090          if (settings["format"] == "on") {
9091              var days = String(days).length >= 2 ? days : "0" + days;
9092              var hours = String(hours).length >= 2 ? hours : "0" + hours;
9093              var minutes = String(minutes).length >= 2 ? minutes : "0" + minutes;
9094              var seconds = String(seconds).length >= 2 ? seconds : "0" + seconds;
9095          }
9096          if (!isNaN(eventDate)) {
9097              thisEl.find(".days").text(days);
9098              thisEl.find(".hours").text(hours);
9099              thisEl.find(".minutes").text(minutes);
9100              thisEl.find(".seconds").text(seconds);
9101          } else {
9102              alert("Invalid date. Here's an example: 12 Tuesday 2012 17:30:00");
9103              clearInterval(interval);
9104          }
9105      }
9106      countdown_proc();
9107      var interval = setInterval(countdown_proc, 1000);
9108  };
9109})(jQuery);
9110
9111/**
9112* @module date picker
9113*/
9114!(function (t, e) {
9115  function i() {
9116      return new Date(Date.UTC.apply(Date, arguments));
9117  }
9118  function a() {
9119      var t = new Date();
9120      return i(t.getFullYear(), t.getMonth(), t.getDate());
9121  }
9122  function s(t) {
9123      return function () {
9124          return this[t].apply(this, arguments);
9125      };
9126  }
9127  function n(e, i) {
9128      function a(t, e) {
9129          return e.toLowerCase();
9130      }
9131      var s,
9132          n = t(e).data(),
9133          r = {},
9134          h = new RegExp("^" + i.toLowerCase() + "([A-Z])");
9135      i = new RegExp("^" + i.toLowerCase());
9136      for (var o in n) i.test(o) && ((s = o.replace(h, a)), (r[s] = n[o]));
9137      return r;
9138  }
9139  function r(e) {
9140      var i = {};
9141      if (f[e] || ((e = e.split("-")[0]), f[e])) {
9142          var a = f[e];
9143          return (
9144              t.each(p, function (t, e) {
9145                  e in a && (i[e] = a[e]);
9146              }),
9147              i
9148          );
9149      }
9150  }
9151  var h = t(window),
9152      o = (function () {
9153          var e = {
9154              get: function (t) {
9155                  return this.slice(t)[0];
9156              },
9157              contains: function (t) {
9158                  for (var e = t && t.valueOf(), i = 0, a = this.length; a > i; i++) if (this[i].valueOf() === e) return i;
9159                  return -1;
9160              },
9161              remove: function (t) {
9162                  this.splice(t, 1);
9163              },
9164              replace: function (e) {
9165                  e && (t.isArray(e) || (e = [e]), this.clear(), this.push.apply(this, e));
9166              },
9167              clear: function () {
9168                  this.splice(0);
9169              },
9170              copy: function () {
9171                  var t = new o();
9172                  return t.replace(this), t;
9173              },
9174          };
9175          return function () {
9176              var i = [];
9177              return i.push.apply(i, arguments), t.extend(i, e), i;
9178          };
9179      })(),
9180      d = function (e, i) {
9181          (this.dates = new o()),
9182              (this.viewDate = a()),
9183              (this.focusDate = null),
9184              this._process_options(i),
9185              (this.element = t(e)),
9186              (this.isInline = !1),
9187              (this.isInput = this.element.is("input")),
9188              (this.component = this.element.is(".date") ? this.element.find(".add-on, .input-group-addon, .btn") : !1),
9189              (this.hasInput = this.component && this.element.find("input").length),
9190              this.component && 0 === this.component.length && (this.component = !1),
9191              (this.picker = t(g.template)),
9192              this._buildEvents(),
9193              this._attachEvents(),
9194              this.isInline ? this.picker.addClass("datepicker-inline").appendTo(this.element) : this.picker.addClass("datepicker-dropdown dropdown-menu"),
9195              this.o.rtl && this.picker.addClass("datepicker-rtl"),
9196              (this.viewMode = this.o.startView),
9197              this.o.calendarWeeks &&
9198                  this.picker.find("tfoot th.today").attr("colspan", function (t, e) {
9199                      return parseInt(e) + 1;
9200                  }),
9201              (this._allow_update = !1),
9202              this.setStartDate(this._o.startDate),
9203              this.setEndDate(this._o.endDate),
9204              this.setDaysOfWeekDisabled(this.o.daysOfWeekDisabled),
9205              this.fillDow(),
9206              this.fillMonths(),
9207              (this._allow_update = !0),
9208              this.update(),
9209              this.showMode(),
9210              this.isInline && this.show();
9211      };
9212  d.prototype = {
9213      constructor: d,
9214      _process_options: function (e) {
9215          this._o = t.extend({}, this._o, e);
9216          var i = (this.o = t.extend({}, this._o)),
9217              a = i.language;
9218          switch ((f[a] || ((a = a.split("-")[0]), f[a] || (a = u.language)), (i.language = a), i.startView)) {
9219              case 2:
9220              case "decade":
9221                  i.startView = 2;
9222                  break;
9223              case 1:
9224              case "year":
9225                  i.startView = 1;
9226                  break;
9227              default:
9228                  i.startView = 0;
9229          }
9230          switch (i.minViewMode) {
9231              case 1:
9232              case "months":
9233                  i.minViewMode = 1;
9234                  break;
9235              case 2:
9236              case "years":
9237                  i.minViewMode = 2;
9238                  break;
9239              default:
9240                  i.minViewMode = 0;
9241          }
9242          (i.startView = Math.max(i.startView, i.minViewMode)),
9243              i.multidate !== !0 && ((i.multidate = Number(i.multidate) || !1), (i.multidate = i.multidate !== !1 ? Math.max(0, i.multidate) : 1)),
9244              (i.multidateSeparator = String(i.multidateSeparator)),
9245              (i.weekStart %= 7),
9246              (i.weekEnd = (i.weekStart + 6) % 7);
9247          var s = g.parseFormat(i.format);
9248          i.startDate !== -1 / 0 && (i.startDate = i.startDate ? (i.startDate instanceof Date ? this._local_to_utc(this._zero_time(i.startDate)) : g.parseDate(i.startDate, s, i.language)) : -1 / 0),
9249              1 / 0 !== i.endDate && (i.endDate = i.endDate ? (i.endDate instanceof Date ? this._local_to_utc(this._zero_time(i.endDate)) : g.parseDate(i.endDate, s, i.language)) : 1 / 0),
9250              (i.daysOfWeekDisabled = i.daysOfWeekDisabled || []),
9251              t.isArray(i.daysOfWeekDisabled) || (i.daysOfWeekDisabled = i.daysOfWeekDisabled.split(/[,\s]*/)),
9252              (i.daysOfWeekDisabled = t.map(i.daysOfWeekDisabled, function (t) {
9253                  return parseInt(t, 10);
9254              }));
9255          var n = String(i.orientation).toLowerCase().split(/\s+/g),
9256              r = i.orientation.toLowerCase();
9257          if (
9258              ((n = t.grep(n, function (t) {
9259                  return /^auto|left|right|top|bottom$/.test(t);
9260              })),
9261              (i.orientation = { x: "auto", y: "auto" }),
9262              r && "auto" !== r)
9263          )
9264              if (1 === n.length)
9265                  switch (n[0]) {
9266                      case "top":
9267                      case "bottom":
9268                          i.orientation.y = n[0];
9269                          break;
9270                      case "left":
9271                      case "right":
9272                          i.orientation.x = n[0];
9273                  }
9274              else
9275                  (r = t.grep(n, function (t) {
9276                      return /^left|right$/.test(t);
9277                  })),
9278                      (i.orientation.x = r[0] || "auto"),
9279                      (r = t.grep(n, function (t) {
9280                          return /^top|bottom$/.test(t);
9281                      })),
9282                      (i.orientation.y = r[0] || "auto");
9283          else;
9284      },
9285      _events: [],
9286      _secondaryEvents: [],
9287      _applyEvents: function (t) {
9288          for (var i, a, s, n = 0; n < t.length; n++) (i = t[n][0]), 2 === t[n].length ? ((a = e), (s = t[n][1])) : 3 === t[n].length && ((a = t[n][1]), (s = t[n][2])), i.on(s, a);
9289      },
9290      _unapplyEvents: function (t) {
9291          for (var i, a, s, n = 0; n < t.length; n++) (i = t[n][0]), 2 === t[n].length ? ((s = e), (a = t[n][1])) : 3 === t[n].length && ((s = t[n][1]), (a = t[n][2])), i.off(a, s);
9292      },
9293      _buildEvents: function () {
9294          this.isInput
9295              ? (this._events = [
9296                    [
9297                        this.element,
9298                        {
9299                            focus: t.proxy(this.show, this),
9300                            keyup: t.proxy(function (e) {
9301                                -1 === t.inArray(e.keyCode, [27, 37, 39, 38, 40, 32, 13, 9]) && this.update();
9302                            }, this),
9303                            keydown: t.proxy(this.keydown, this),
9304                        },
9305                    ],
9306                ])
9307              : this.component && this.hasInput
9308              ? (this._events = [
9309                    [
9310                        this.element.find("input"),
9311                        {
9312                            focus: t.proxy(this.show, this),
9313                            keyup: t.proxy(function (e) {
9314                                -1 === t.inArray(e.keyCode, [27, 37, 39, 38, 40, 32, 13, 9]) && this.update();
9315                            }, this),
9316                            keydown: t.proxy(this.keydown, this),
9317                        },
9318                    ],
9319                    [this.component, { click: t.proxy(this.show, this) }],
9320                ])
9321              : this.element.is("div")
9322              ? (this.isInline = !0)
9323              : (this._events = [[this.element, { click: t.proxy(this.show, this) }]]),
9324              this._events.push(
9325                  [
9326                      this.element,
9327                      "*",
9328                      {
9329                          blur: t.proxy(function (t) {
9330                              this._focused_from = t.target;
9331                          }, this),
9332                      },
9333                  ],
9334                  [
9335                      this.element,
9336                      {
9337                          blur: t.proxy(function (t) {
9338                              this._focused_from = t.target;
9339                          }, this),
9340                      },
9341                  ]
9342              ),
9343              (this._secondaryEvents = [
9344                  [this.picker, { click: t.proxy(this.click, this) }],
9345                  [t(window), { resize: t.proxy(this.place, this) }],
9346                  [
9347                      t(document),
9348                      {
9349                          "mousedown touchstart": t.proxy(function (t) {
9350                              this.element.is(t.target) || this.element.find(t.target).length || this.picker.is(t.target) || this.picker.find(t.target).length || this.hide();
9351                          }, this),
9352                      },
9353                  ],
9354              ]);
9355      },
9356      _attachEvents: function () {
9357          this._detachEvents(), this._applyEvents(this._events);
9358      },
9359      _detachEvents: function () {
9360          this._unapplyEvents(this._events);
9361      },
9362      _attachSecondaryEvents: function () {
9363          this._detachSecondaryEvents(), this._applyEvents(this._secondaryEvents);
9364      },
9365      _detachSecondaryEvents: function () {
9366          this._unapplyEvents(this._secondaryEvents);
9367      },
9368      _trigger: function (e, i) {
9369          var a = i || this.dates.get(-1),
9370              s = this._utc_to_local(a);
9371          this.element.trigger({
9372              type: e,
9373              date: s,
9374              dates: t.map(this.dates, this._utc_to_local),
9375              format: t.proxy(function (t, e) {
9376                  0 === arguments.length ? ((t = this.dates.length - 1), (e = this.o.format)) : "string" == typeof t && ((e = t), (t = this.dates.length - 1)), (e = e || this.o.format);
9377                  var i = this.dates.get(t);
9378                  return g.formatDate(i, e, this.o.language);
9379              }, this),
9380          });
9381      },
9382      show: function () {
9383          this.isInline || this.picker.appendTo("body"), this.picker.show(), this.place(), this._attachSecondaryEvents(), this._trigger("show");
9384      },
9385      hide: function () {
9386          this.isInline ||
9387              (this.picker.is(":visible") &&
9388                  ((this.focusDate = null),
9389                  this.picker.hide().detach(),
9390                  this._detachSecondaryEvents(),
9391                  (this.viewMode = this.o.startView),
9392                  this.showMode(),
9393                  this.o.forceParse && ((this.isInput && this.element.val()) || (this.hasInput && this.element.find("input").val())) && this.setValue(),
9394                  this._trigger("hide")));
9395      },
9396      remove: function () {
9397          this.hide(), this._detachEvents(), this._detachSecondaryEvents(), this.picker.remove(), delete this.element.data().datepicker, this.isInput || delete this.element.data().date;
9398      },
9399      _utc_to_local: function (t) {
9400          return t && new Date(t.getTime() + 6e4 * t.getTimezoneOffset());
9401      },
9402      _local_to_utc: function (t) {
9403          return t && new Date(t.getTime() - 6e4 * t.getTimezoneOffset());
9404      },
9405      _zero_time: function (t) {
9406          return t && new Date(t.getFullYear(), t.getMonth(), t.getDate());
9407      },
9408      _zero_utc_time: function (t) {
9409          return t && new Date(Date.UTC(t.getUTCFullYear(), t.getUTCMonth(), t.getUTCDate()));
9410      },
9411      getDates: function () {
9412          return t.map(this.dates, this._utc_to_local);
9413      },
9414      getUTCDates: function () {
9415          return t.map(this.dates, function (t) {
9416              return new Date(t);
9417          });
9418      },
9419      getDate: function () {
9420          return this._utc_to_local(this.getUTCDate());
9421      },
9422      getUTCDate: function () {
9423          return new Date(this.dates.get(-1));
9424      },
9425      setDates: function () {
9426          var e = t.isArray(arguments[0]) ? arguments[0] : arguments;
9427          this.update.apply(this, e), this._trigger("changeDate"), this.setValue();
9428      },
9429      setUTCDates: function () {
9430          var e = t.isArray(arguments[0]) ? arguments[0] : arguments;
9431          this.update.apply(this, t.map(e, this._utc_to_local)), this._trigger("changeDate"), this.setValue();
9432      },
9433      setDate: s("setDates"),
9434      setUTCDate: s("setUTCDates"),
9435      setValue: function () {
9436          var t = this.getFormattedDate();
9437          this.isInput ? this.element.val(t).change() : this.component && this.element.find("input").val(t).change();
9438      },
9439      getFormattedDate: function (i) {
9440          i === e && (i = this.o.format);
9441          var a = this.o.language;
9442          return t
9443              .map(this.dates, function (t) {
9444                  return g.formatDate(t, i, a);
9445              })
9446              .join(this.o.multidateSeparator);
9447      },
9448      setStartDate: function (t) {
9449          this._process_options({ startDate: t }), this.update(), this.updateNavArrows();
9450      },
9451      setEndDate: function (t) {
9452          this._process_options({ endDate: t }), this.update(), this.updateNavArrows();
9453      },
9454      setDaysOfWeekDisabled: function (t) {
9455          this._process_options({ daysOfWeekDisabled: t }), this.update(), this.updateNavArrows();
9456      },
9457      place: function () {
9458          if (!this.isInline) {
9459              var e = this.picker.outerWidth(),
9460                  i = this.picker.outerHeight(),
9461                  a = 10,
9462                  s = h.width(),
9463                  n = h.height(),
9464                  r = h.scrollTop(),
9465                  o =
9466                      parseInt(
9467                          this.element
9468                              .parents()
9469                              .filter(function () {
9470                                  return "auto" !== t(this).css("z-index");
9471                              })
9472                              .first()
9473                              .css("z-index")
9474                      ) + 10,
9475                  d = this.component ? this.component.parent().offset() : this.element.offset(),
9476                  l = this.component ? this.component.outerHeight(!0) : this.element.outerHeight(!1),
9477                  c = this.component ? this.component.outerWidth(!0) : this.element.outerWidth(!1),
9478                  u = d.left,
9479                  p = d.top;
9480              this.picker.removeClass("datepicker-orient-top datepicker-orient-bottom datepicker-orient-right datepicker-orient-left"),
9481                  "auto" !== this.o.orientation.x
9482                      ? (this.picker.addClass("datepicker-orient-" + this.o.orientation.x), "right" === this.o.orientation.x && (u -= e - c))
9483                      : (this.picker.addClass("datepicker-orient-left"), d.left < 0 ? (u -= d.left - a) : d.left + e >
9483 s && (u = s - e - a));
9484              var f,
9485                  g,
9486                  v = this.o.orientation.y;
9487              "auto" === v && ((f = -r + d.top - i), (g = r + n - (d.top + l + i)), (v = Math.max(f, g) === g ? "top" : "bottom")),
9488                  this.picker.addClass("datepicker-orient-" + v),
9489                  "top" === v ? (p += l) : (p -= i + parseInt(this.picker.css("padding-top"))),
9490                  this.picker.css({ top: p, left: u, zIndex: o });
9491          }
9492      },
9493      _allow_update: !0,
9494      update: function () {
9495          if (this._allow_update) {
9496              var e = this.dates.copy(),
9497                  i = [],
9498                  a = !1;
9499              arguments.length
9500                  ? (t.each(
9501                        arguments,
9502                        t.proxy(function (t, e) {
9503                            e instanceof Date && (e = this._local_to_utc(e)), i.push(e);
9504                        }, this)
9505                    ),
9506                    (a = !0))
9507                  : ((i = this.isInput ? this.element.val() : this.element.data("date") || this.element.find("input").val()), (i = i && this.o.multidate ? i.split(this.o.multidateSeparator) : [i]), delete this.element.data().date),
9508                  (i = t.map(
9509                      i,
9510                      t.proxy(function (t) {
9511                          return g.parseDate(t, this.o.format, this.o.language);
9512                      }, this)
9513                  )),
9514                  (i = t.grep(
9515                      i,
9516                      t.proxy(function (t) {
9517                          return t < this.o.startDate || t > this.o.endDate || !t;
9518                      }, this),
9519                      !0
9520                  )),
9521                  this.dates.replace(i),
9522                  this.dates.length
9523                      ? (this.viewDate = new Date(this.dates.get(-1)))
9524                      : this.viewDate < this.o.startDate
9525                      ? (this.viewDate = new Date(this.o.startDate))
9526                      : this.viewDate > this.o.endDate && (this.viewDate = new Date(this.o.endDate)),
9527                  a ? this.setValue() : i.length && String(e) !== String(this.dates) && this._trigger("changeDate"),
9528                  !this.dates.length && e.length && this._trigger("clearDate"),
9529                  this.fill();
9530          }
9531      },
9532      fillDow: function () {
9533          var t = this.o.weekStart,
9534              e = "<tr>";
9535          if (this.o.calendarWeeks) {
9536              var i = '<th class="cw">&nbsp;</th>';
9537              (e += i), this.picker.find(".datepicker-days thead tr:first-child").prepend(i);
9538          }
9539          for (; t < this.o.weekStart + 7; ) e += '<th class="dow">' + f[this.o.language].daysMin[t++ % 7] + "</th>";
9540          (e += "</tr>"), this.picker.find(".datepicker-days thead").append(e);
9541      },
9542      fillMonths: function () {
9543          for (var t = "", e = 0; 12 > e; ) t += '<span class="month">' + f[this.o.language].monthsShort[e++] + "</span>";
9544          this.picker.find(".datepicker-months td").html(t);
9545      },
9546      setRange: function (e) {
9547          e && e.length
9548              ? (this.range = t.map(e, function (t) {
9549                    return t.valueOf();
9550                }))
9551              : delete this.range,
9552              this.fill();
9553      },
9554      getClassNames: function (e) {
9555          var i = [],
9556              a = this.viewDate.getUTCFullYear(),
9557              s = this.viewDate.getUTCMonth(),
9558              n = new Date();
9559          return (
9560              e.getUTCFullYear() < a || (e.getUTCFullYear() === a && e.getUTCMonth() < s) ? i.push("old") : (e.getUTCFullYear() > a || (e.getUTCFullYear() === a && e.getUTCMonth() > s)) && i.push("new"),
9561              this.focusDate && e.valueOf() === this.focusDate.valueOf() && i.push("focused"),
9562              this.o.todayHighlight && e.getUTCFullYear() === n.getFullYear() && e.getUTCMonth() === n.getMonth() && e.getUTCDate() === n.getDate() && i.push("today"),
9563              -1 !== this.dates.contains(e) && i.push("active"),
9564              (e.valueOf() < this.o.startDate || e.valueOf() > this.o.endDate || -1 !== t.inArray(e.getUTCDay(), this.o.daysOfWeekDisabled)) && i.push("disabled"),
9565              this.range && (e > this.range[0] && e < this.range[this.range.length - 1] && i.push("range"), -1 !== t.inArray(e.valueOf(), this.range) && i.push("selected")),
9566              i
9567          );
9568      },
9569      fill: function () {
9570          var a,
9571              s = new Date(this.viewDate),
9572              n = s.getUTCFullYear(),
9573              r = s.getUTCMonth(),
9574              h = this.o.startDate !== -1 / 0 ? this.o.startDate.getUTCFullYear() : -1 / 0,
9575              o = this.o.startDate !== -1 / 0 ? this.o.startDate.getUTCMonth() : -1 / 0,
9576              d = 1 / 0 !== this.o.endDate ? this.o.endDate.getUTCFullYear() : 1 / 0,
9577              l = 1 / 0 !== this.o.endDate ? this.o.endDate.getUTCMonth() : 1 / 0,
9578              c = f[this.o.language].today || f.en.today || "",
9579              u = f[this.o.language].clear || f.en.clear || "";
9580          this.picker.find(".datepicker-days thead th.datepicker-switch").text(f[this.o.language].months[r] + " " + n
9580),
9581              this.picker
9582                  .find("tfoot th.today")
9583                  .text(c)
9584                  .toggle(this.o.todayBtn !== !1),
9585              this.picker
9586                  .find("tfoot th.clear")
9587                  .text(u)
9588                  .toggle(this.o.clearBtn !== !1),
9589              this.updateNavArrows(),
9590              this.fillMonths();
9591          var p = i(n, r - 1, 28),
9592              v = g.getDaysInMonth(p.getUTCFullYear(), p.getUTCMonth());
9593          p.setUTCDate(v), p.setUTCDate(v - ((p.getUTCDay() - this.o.weekStart + 7) % 7));
9594          var D = new Date(p);
9595          D.setUTCDate(D.getUTCDate() + 42), (D = D.valueOf());
9596          for (var m, y = []; p.valueOf() < D; ) {
9597              if (p.getUTCDay() === this.o.weekStart && (y.push("<tr>"), this.o.calendarWeeks)) {
9598                  var w = new Date(+p + ((this.o.weekStart - p.getUTCDay() - 7) % 7) * 864e5),
9599                      k = new Date(Number(w) + ((11 - w.getUTCDay()) % 7) * 864e5),
9600                      _ = new Date(Number((_ = i(k.getUTCFullYear(), 0, 1))) + ((11 - _.getUTCDay()) % 7) * 864e5),
9601                      C = (k - _) / 864e5 / 7 + 1;
9602                  y.push('<td class="cw">' + C + "</td>");
9603              }
9604              if (((m = this.getClassNames(p)), m.push("day"), this.o.beforeShowDay !== t.noop)) {
9605                  var T = this.o.beforeShowDay(this._utc_to_local(p));
9606                  T === e ? (T = {}) : "boolean" == typeof T ? (T = { enabled: T }) : "string" == typeof T && (T = { classes: T }),
9607                      T.enabled === !1 && m.push("disabled"),
9608                      T.classes && (m = m.concat(T.classes.split(/\s+/))),
9609                      T.tooltip && (a = T.tooltip);
9610              }
9611              (m = t.unique(m)), y.push('<td class="' + m.join(" ") + '"' + (a ? ' title="' + a + '"' : "") + ">" + p.getUTCDate() + "</td>"), p.getUTCDay() === this.o.weekEnd && y.push("</tr>"), p.setUTCDate(p.getUTCDate() + 1);
9612          }
9613          this.picker.find(".datepicker-days tbody").empty().append(y.join(""));
9614          var b = this.picker.find(".datepicker-months").find("th:eq(1)").text(n).end().find("span").removeClass("active");
9615          t.each(this.dates, function (t, e) {
9616              e.getUTCFullYear() === n && b.eq(e.getUTCMonth()).addClass("active");
9617          }),
9618              (h > n || n > d) && b.addClass("disabled"),
9619              n === h && b.slice(0, o).addClass("disabled"),
9620              n === d && b.slice(l + 1).addClass("disabled"),
9621              (y = ""),
9622              (n = 10 * parseInt(n / 10, 10));
9623          var U = this.picker
9624              .find(".datepicker-years")
9625              .find("th:eq(1)")
9626              .text(n + "-" + (n + 9))
9627              .end()
9628              .find("td");
9629          n -= 1;
9630          for (
9631              var M,
9632                  x = t.map(this.dates, function (t) {
9633                      return t.getUTCFullYear();
9634                  }),
9635                  S = -1;
9636              11 > S;
9637              S++
9638          )
9639              (M = ["year"]), -1 === S ? M.push("old") : 10 === S && M.push("new"), -1 !== t.inArray(n, x) && M.push("active"), (h > n || n > d) && M.push("disabled"), (y += '<span class="' + M.join(" ") + '">' + n + "</span>"), (n += 1);
9640          U.html(y);
9641      },
9642      updateNavArrows: function () {
9643          if (this._allow_update) {
9644              var t = new Date(this.viewDate),
9645                  e = t.getUTCFullYear(),
9646                  i = t.getUTCMonth();
9647              switch (this.viewMode) {
9648                  case 0:
9649                      this.o.startDate !== -1 / 0 && e <= this.o.startDate.getUTCFullYear() && i <= this.o.startDate.getUTCMonth()
9650                          ? this.picker.find(".prev").css({ visibility: "hidden" })
9651                          : this.picker.find(".prev").css({ visibility: "visible" }),
9652                          1 / 0 !== this.o.endDate && e >= this.o.endDate.getUTCFullYear() && i >= this.o.endDate.getUTCMonth()
9653                              ? this.picker.find(".next").css({ visibility: "hidden" })
9654                              : this.picker.find(".next").css({ visibility: "visible" });
9655                      break;
9656                  case 1:
9657                  case 2:
9658                      this.o.startDate !== -1 / 0 && e <= this.o.startDate.getUTCFullYear() ? this.picker.find(".prev").css({ visibility: "hidden" }) : this.picker.find(".prev").css({ visibility: "visible" }),
9659                          1 / 0 !== this.o.endDate && e >= this.o.endDate.getUTCFullYear() ? this.picker.find(".next").css({ visibility: "hidden" }) : this.picker.find(".next").css({ visibility: "visible" });
9660              }
9661          }
9662      },
9663      click: function (e) {
9664          e.preventDefault();
9665          var a,
9666              s,
9667              n,
9668              r = t(e.target).closest("span, td, th");
9669          if (1 === r.length)
9670              switch (r[0].nodeName.toLowerCase()) {
9671                  case "th":
9672                      switch (r[0].className) {
9673                          case "datepicker-switch":
9674                              this.showMode(1);
9675                              break;
9676                          case "prev":
9677                          case "next":
9678                              var h = g.modes[this.viewMode].navStep * ("prev" === r[0].className ? -1 : 1);
9679                              switch (this.viewMode) {
9680                                  case 0:
9681                                      (this.viewDate = this.moveMonth(this.viewDate, h)), this._trigger("changeMonth", this.viewDate);
9682                                      break;
9683                                  case 1:
9684                                  case 2:
9685                                      (this.viewDate = this.moveYear(this.viewDate, h)), 1 === this.viewMode && this._trigger("changeYear", this.viewDate);
9686                              }
9687                              this.fill();
9688                              break;
9689                          case "today":
9690                              var o = new Date();
9691                              (o = i(o.getFullYear(), o.getMonth(), o.getDate(), 0, 0, 0)), this.showMode(-2);
9692                              var d = "linked" === this.o.todayBtn ? null : "view";
9693                              this._setDate(o, d);
9694                              break;
9695                          case "clear":
9696                              var l;
9697                              this.isInput ? (l = this.element) : this.component && (l = this.element.find("input")), l && l.val("").change(), this.update(), this._trigger("changeDate"), this.o.autoclose && this.hide();
9698                      }
9699                      break;
9700                  case "span":
9701                      r.is(".disabled") ||
9702                          (this.viewDate.setUTCDate(1),
9703                          r.is(".month")
9704                              ? ((n = 1),
9705                                (s = r.parent().find("span").index(r)),
9706                                (a = this.viewDate.getUTCFullYear()),
9707                                this.viewDate.setUTCMonth(s),
9708                                this._trigger("changeMonth", this.viewDate),
9709                                1 === this.o.minViewMode && this._setDate(i(a, s, n)))
9710                              : ((n = 1), (s = 0), (a = parseInt(r.text(), 10) || 0), this.viewDate.setUTCFullYear(a), this._trigger("changeYear", this.viewDate), 2 === this.o.minViewMode && this._setDate(i(a, s, n))),
9711                          this.showMode(-1),
9712                          this.fill());
9713                      break;
9714                  case "td":
9715                      r.is(".day") &&
9716                          !r.is(".disabled") &&
9717                          ((n = parseInt(r.text(), 10) || 1),
9718                          (a = this.viewDate.getUTCFullYear()),
9719                          (s = this.viewDate.getUTCMonth()),
9720                          r.is(".old") ? (0 === s ? ((s = 11), (a -= 1)) : (s -= 1)) : r.is(".new") && (11 === s ? ((s = 0), (a += 1)) : (s += 1)
9720),
9721                          this._setDate(i(a, s, n)));
9722              }
9723          this.picker.is(":visible") && this._focused_from && t(this._focused_from).focus(), delete this._focused_from;
9724      },
9725      _toggle_multidate: function (t) {
9726          var e = this.dates.contains(t);
9727          if ((t ? (-1 !== e ? this.dates.remove(e) : this.dates.push(t)) : this.dates.clear(), "number" == typeof this.o.multidate)) for (; this.dates.length > this.o.multidate; ) this.dates.remove(0);
9728      },
9729      _setDate: function (t, e) {
9730          (e && "date" !== e) || this._toggle_multidate(t && new Date(t)), (e && "view" !== e) || (this.viewDate = t && new Date(t)), this.fill(), this.setValue(), this._trigger("changeDate");
9731          var i;
9732          this.isInput ? (i = this.element) : this.component && (i = this.element.find("input")), i && i.change(), !this.o.autoclose || (e && "date" !== e) || this.hide();
9733      },
9734      moveMonth: function (t, i) {
9735          if (!t) return e;
9736          if (!i) return t;
9737          var a,
9738              s,
9739              n = new Date(t.valueOf()),
9740              r = n.getUTCDate(),
9741              h = n.getUTCMonth(),
9742              o = Math.abs(i);
9743          if (((i = i > 0 ? 1 : -1), 1 === o))
9744              (s =
9745                  -1 === i
9746                      ? function () {
9747                            return n.getUTCMonth() === h;
9748                        }
9749                      : function () {
9750                            return n.getUTCMonth() !== a;
9751                        }),
9752                  (a = h + i),
9753                  n.setUTCMonth(a),
9754                  (0 > a || a > 11) && (a = (a + 12) % 12);
9755          else {
9756              for (var d = 0; o > d; d++) n = this.moveMonth(n, i);
9757              (a = n.getUTCMonth()),
9758                  n.setUTCDate(r),
9759                  (s = function () {
9760                      return a !== n.getUTCMonth();
9761                  });
9762          }
9763          for (; s(); ) n.setUTCDate(--r), n.setUTCMonth(a);
9764          return n;
9765      },
9766      moveYear: function (t, e) {
9767          return this.moveMonth(t, 12 * e);
9768      },
9769      dateWithinRange: function (t) {
9770          return t >= this.o.startDate && t <= this.o.endDate;
9771      },
9772      keydown: function (t) {
9773          if (this.picker.is(":not(:visible)")) return 27 === t.keyCode && this.show(), void 0;
9774          var e,
9775              i,
9776              s,
9777              n = !1,
9778              r = this.focusDate || this.viewDate;
9779          switch (t.keyCode) {
9780              case 27:
9781                  this.focusDate ? ((this.focusDate = null), (this.viewDate = this.dates.get(-1) || this.viewDate), this.fill()) : this.hide(), t.preventDefault();
9782                  break;
9783              case 37:
9784              case 39:
9785                  if (!this.o.keyboardNavigation) break;
9786                  (e = 37 === t.keyCode ? -1 : 1),
9787                      t.ctrlKey
9788                          ? ((i = this.moveYear(this.dates.get(-1) || a(), e)), (s = this.moveYear(r, e)), this._trigger("changeYear", this.viewDate))
9789                          : t.shiftKey
9790                          ? ((i = this.moveMonth(this.dates.get(-1) || a(), e)), (s = this.moveMonth(r, e)), this._trigger("changeMonth", this.viewDate))
9791                          : ((i = new Date(this.dates.get(-1) || a())), i.setUTCDate(i.getUTCDate() + e), (s = new Date(r)), s.setUTCDate(r.getUTCDate() + e)),
9792                      this.dateWithinRange(i) && ((this.focusDate = this.viewDate = s), this.setValue(), this.fill(), t.preventDefault());
9793                  break;
9794              case 38:
9795              case 40:
9796                  if (!this.o.keyboardNavigation) break;
9797                  (e = 38 === t.keyCode ? -1 : 1),
9798                      t.ctrlKey
9799                          ? ((i = this.moveYear(this.dates.get(-1) || a(), e)), (s = this.moveYear(r, e)), this._trigger("changeYear", this.viewDate))
9800                          : t.shiftKey
9801                          ? ((i = this.moveMonth(this.dates.get(-1) || a(), e)), (s = this.moveMonth(r, e)), this._trigger("changeMonth", this.viewDate))
9802                          : ((i = new Date(this.dates.get(-1) || a())), i.setUTCDate(i.getUTCDate() + 7 * e), (s = new Date(r)), s.setUTCDate(r.getUTCDate() + 7 * e)),
9803                      this.dateWithinRange(i) && ((this.focusDate = this.viewDate = s), this.setValue(), this.fill(), t.preventDefault());
9804                  break;
9805              case 32:
9806                  break;
9807              case 13:
9808                  (r = this.focusDate || this.dates.get(-1) || this.viewDate),
9809                      this._toggle_multidate(r),
9810                      (n = !0),
9811                      (this.focusDate = null),
9812                      (this.viewDate = this.dates.get(-1) || this.viewDate),
9813                      this.setValue(),
9814                      this.fill(),
9815                      this.picker.is(":visible") && (t.preventDefault(), this.o.autoclose && this.hide());
9816                  break;
9817              case 9:
9818                  (this.focusDate = null), (this.viewDate = this.dates.get(-1) || this.viewDate), this.fill(), this.hide();
9819          }
9820          if (n) {
9821              this.dates.length ? this._trigger("changeDate") : this._trigger("clearDate");
9822              var h;
9823              this.isInput ? (h = this.element) : this.component && (h = this.element.find("input")), h && h.change();
9824          }
9825      },
9826      showMode: function (t) {
9827          t && (this.viewMode = Math.max(this.o.minViewMode, Math.min(2, this.viewMode + t))),
9828              this.picker
9829                  .find(">div")
9830                  .hide()
9831                  .filter(".datepicker-" + g.modes[this.viewMode].clsName)
9832                  .css("display", "block"),
9833              this.updateNavArrows();
9834      },
9835  };
9836  var l = function (e, i) {
9837      (this.element = t(e)),
9838          (this.inputs = t.map(i.inputs, function (t) {
9839              return t.jquery ? t[0] : t;
9840          })),
9841          delete i.inputs,
9842          t(this.inputs).datepicker(i).bind("changeDate", t.proxy(this.dateUpdated, this)),
9843          (this.pickers = t.map(this.inputs, function (e) {
9844              return t(e).data("datepicker");
9845          })),
9846          this.updateDates();
9847  };
9848  l.prototype = {
9849      updateDates: function () {
9850          (this.dates = t.map(this.pickers, function (t) {
9851              return t.getUTCDate();
9852          })),
9853              this.updateRanges();
9854      },
9855      updateRanges: function () {
9856          var e = t.map(this.dates, function (t) {
9857              return t.valueOf();
9858          });
9859          t.each(this.pickers, function (t, i) {
9860              i.setRange(e);
9861          });
9862      },
9863      dateUpdated: function (e) {
9864          if (!this.updating) {
9865              this.updating = !0;
9866              var i = t(e.target).data("datepicker"),
9867                  a = i.getUTCDate(),
9868                  s = t.inArray(e.target, this.inputs),
9869                  n = this.inputs.length;
9870              if (-1 !== s) {
9871                  if (
9872                      (t.each(this.pickers, function (t, e) {
9873                          e.getUTCDate() || e.setUTCDate(a);
9874                      }),
9875                      a < this.dates[s])
9876                  )
9877                      for (; s >= 0 && a < this.dates[s]; ) this.pickers[s--].setUTCDate(a);
9878                  else if (a > this.dates[s]) for (; n > s && a > this.dates[s]; ) this.pickers[s++].setUTCDate(a);
9879                  this.updateDates(), delete this.updating;
9880              }
9881          }
9882      },
9883      remove: function () {
9884          t.map(this.pickers, function (t) {
9885              t.remove();
9886          }),
9887              delete this.element.data().datepicker;
9888      },
9889  };
9890  var c = t.fn.datepicker;
9891  t.fn.datepicker = function (i) {
9892      var a = Array.apply(null, arguments);
9893      a.shift();
9894      var s;
9895      return (
9896          this.each(function () {
9897              var h = t(this),
9898                  o = h.data("datepicker"),
9899                  c = "object" == typeof i && i;
9900              if (!o) {
9901                  var p = n(this, "date"),
9902                      f = t.extend({}, u, p, c),
9903                      g = r(f.language),
9904                      v = t.extend({}, u, g, p, c);
9905                  if (h.is(".input-daterange") || v.inputs) {
9906                      var D = { inputs: v.inputs || h.find("input").toArray() };
9907                      h.data("datepicker", (o = new l(this, t.extend(v, D))));
9908                  } else h.data("datepicker", (o = new d(this, v)));
9909              }
9910              return "string" == typeof i && "function" == typeof o[i] && ((s = o[i].apply(o, a)), s !== e) ? !1 : void 0;
9911          }),
9912          s !== e ? s : this
9913      );
9914  };
9915  var u = (t.fn.datepicker.defaults = {
9916          autoclose: !1,
9917          beforeShowDay: t.noop,
9918          calendarWeeks: !1,
9919          clearBtn: !1,
9920          daysOfWeekDisabled: [],
9921          endDate: 1 / 0,
9922          forceParse: !0,
9923          format: "mm/dd/yyyy",
9924          keyboardNavigation: !0,
9925          language: "en",
9926          minViewMode: 0,
9927          multidate: !1,
9928          multidateSeparator: ",",
9929          orientation: "auto",
9930          rtl: !1,
9931          startDate: -1 / 0,
9932          startView: 0,
9933          todayBtn: !1,
9934          todayHighlight: !1,
9935          weekStart: 0,
9936      }),
9937      p = (t.fn.datepicker.locale_opts = ["format", "rtl", "weekStart"]);
9938  t.fn.datepicker.Constructor = d;
9939  var f = (t.fn.datepicker.dates = {
9940          en: {
9941              days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"],
9942              daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],
9943              daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"],
9944              months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "
9944November", "December"],
9945              monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
9946              today: "Today",
9947              clear: "Clear",
9948          },
9949      }),
9950      g = {
9951          modes: [
9952              { clsName: "days", navFnc: "Month", navStep: 1 },
9953              { clsName: "months", navFnc: "FullYear", navStep: 1 },
9954              { clsName: "years", navFnc: "FullYear", navStep: 10 },
9955          ],
9956          isLeapYear: function (t) {
9957              return (t % 4 === 0 && t % 100 !== 0) || t % 400 === 0;
9958          },
9959          getDaysInMonth: function (t, e) {
9960              return [31, g.isLeapYear(t) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][e];
9961          },
9962          validParts: /dd?|DD?|mm?|MM?|yy(?:yy)?/g,
9963          nonpunctuation: /[^ -\/:-@\[\u3400-\u9fff-`{-~\t\n\r]+/g,
9964          parseFormat: function (t) {
9965              var e = t.replace(this.validParts, "\x00").split("\x00"),
9966                  i = t.match(this.validParts);
9967              if (!e || !e.length || !i || 0 === i.length) throw new Error("Invalid date format.");
9968              return { separators: e, parts: i };
9969          },
9970          parseDate: function (a, s, n) {
9971              function r() {
9972                  var t = this.slice(0, u[l].length),
9973                      e = u[l].slice(0, t.length);
9974                  return t === e;
9975              }
9976              if (!a) return e;
9977              if (a instanceof Date) return a;
9978              "string" == typeof s && (s = g.parseFormat(s));
9979              var h,
9980                  o,
9981                  l,
9982                  c = /([\-+]\d+)([dmwy])/,
9983                  u = a.match(/([\-+]\d+)([dmwy])/g);
9984              if (/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/.test(a)) {
9985                  for (a = new Date(), l = 0; l < u.length; l++)
9986                      switch (((h = c.exec(u[l])), (o = parseInt(h[1])), h[2])) {
9987                          case "d":
9988                              a.setUTCDate(a.getUTCDate() + o);
9989                              break;
9990                          case "m":
9991                              a = d.prototype.moveMonth.call(d.prototype, a, o);
9992                              break;
9993                          case "w":
9994                              a.setUTCDate(a.getUTCDate() + 7 * o);
9995                              break;
9996                          case "y":
9997                              a = d.prototype.moveYear.call(d.prototype, a, o);
9998                      }
9999                  return i(a.getUTCFullYear(), a.getUTCMonth(), a.getUTCDate(), 0, 0, 0);
10000              }
10001              (u = (a && a.match(this.nonpunctuation)) || []), (a = new Date());
10002              var p,
10003                  v,
10004                  D = {},
10005                  m = ["yyyy", "yy", "M", "MM", "m", "mm", "d", "dd"],
10006                  y = {
10007                      yyyy: function (t, e) {
10008                          return t.setUTCFullYear(e);
10009                      },
10010                      yy: function (t, e) {
10011                          return t.setUTCFullYear(2e3 + e);
10012                      },
10013                      m: function (t, e) {
10014                          if (isNaN(t)) return t;
10015                          for (e -= 1; 0 > e; ) e += 12;
10016                          for (e %= 12, t.setUTCMonth(e); t.getUTCMonth() !== e; ) t.setUTCDate(t.getUTCDate() - 1);
10017                          return t;
10018                      },
10019                      d: function (t, e) {
10020                          return t.setUTCDate(e);
10021                      },
10022                  };
10023              (y.M = y.MM = y.mm = y.m), (y.dd = y.d), (a = i(a.getFullYear(), a.getMonth(), a.getDate(), 0, 0, 0));
10024              var w = s.parts.slice();
10025              if (
10026                  (u.length !== w.length &&
10027                      (w = t(w)
10028                          .filter(function (e, i) {
10029                              return -1 !== t.inArray(i, m);
10030                          })
10031                          .toArray()),
10032                  u.length === w.length)
10033              ) {
10034                  var k;
10035                  for (l = 0, k = w.length; k > l; l++) {
10036                      if (((p = parseInt(u[l], 10)), (h = w[l]), isNaN(p)))
10037                          switch (h) {
10038                              case "MM":
10039                                  (v = t(f[n].months).filter(r)), (p = t.inArray(v[0], f[n].months) + 1);
10040                                  break;
10041                              case "M":
10042                                  (v = t(f[n].monthsShort).filter(r)), (p = t.inArray(v[0], f[n].monthsShort) + 1);
10043                          }
10044                      D[h] = p;
10045                  }
10046                  var _, C;
10047                  for (l = 0; l < m.length; l++) (C = m[l]), C in D && !isNaN(D[C]) && ((_ = new Date(a)), y[C](_, D[C]), isNaN(_) || (a = _));
10048              }
10049              return a;
10050          },
10051          formatDate: function (e, i, a) {
10052              if (!e) return "";
10053              "string" == typeof i && (i = g.parseFormat(i));
10054              var s = {
10055                  d: e.getUTCDate(),
10056                  D: f[a].daysShort[e.getUTCDay()],
10057                  DD: f[a].days[e.getUTCDay()],
10058                  m: e.getUTCMonth() + 1,
10059                  M: f[a].monthsShort[e.getUTCMonth()],
10060                  MM: f[a].months[e.getUTCMonth()],
10061                  yy: e.getUTCFullYear().toString().substring(2),
10062                  yyyy: e.getUTCFullYear(),
10063              };
10064              (s.dd = (s.d < 10 ? "0" : "") + s.d), (s.mm = (s.m < 10 ? "0" : "") + s.m), (e = []);
10065              for (var n = t.extend([], i.separators), r = 0, h = i.parts.length; h >= r; r++) n.length && e.push(n.shift()), e.push(s[i.parts[r]]);
10066              return e.join("");
10067          },
10068          headTemplate: '<thead><tr><th class="prev">&laquo;</th><th colspan="5" class="datepicker-switch"></th><th class="next">&raquo;</th></tr></thead>',
10069          contTemplate: '<tbody><tr><td colspan="7"></td></tr></tbody>',
10070          footTemplate: '<tfoot><tr><th colspan="7" class="today"></th></tr><tr><th colspan="7" class="clear"></th></tr></tfoot>',
10071      };
10072  (g.template =
10073      '<div class="datepicker"><div class="datepicker-days"><table class=" table-condensed">' +
10074      g.headTemplate +
10075      "<tbody></tbody>" +
10076      g.footTemplate +
10077      '</table></div><div class="datepicker-months"><table class="table-condensed">' +
10078      g.headTemplate +
10079      g.contTemplate +
10080      g.footTemplate +
10081      '</table></div><div class="datepicker-years"><table class="table-condensed">' +
10082      g.headTemplate +
10083      g.contTemplate +
10084      g.footTemplate +
10085      "</table></div></div>"),
10086      (t.fn.datepicker.DPGlobal = g),
10087      (t.fn.datepicker.noConflict = function () {
10088          return (t.fn.datepicker = c), this;
10089      }),
10090      t(document).on("focus.datepicker.data-api click.datepicker.data-api", '[data-
10090provide="datepicker"]', function (e) {
10091          var i = t(this);
10092          i.data("datepicker") || (e.preventDefault(), i.datepicker("show"));
10093      }),
10094      t(function () {
10095          t('[data-provide="datepicker-inline"]').datepicker();
10096      });
10097})(window.jQuery);
10098
10099/*! Stellar.js v0.6.2 | Copyright 2014, Mark Dalgleish | http://markdalgleish.com/projects/stellar.js | http://markdalgleish.mit-license.org */
10100!(function (a, b, c, d) {
10101  function e(b, c) {
10102      (this.element = b), (this.options = a.extend({}, g, c)), (this._defaults = g), (this._name = f), this.init();
10103  }
10104  var f = "stellar",
10105      g = {
10106          scrollProperty: "scroll",
10107          positionProperty: "position",
10108          horizontalScrolling: !0,
10109          verticalScrolling: !0,
10110          horizontalOffset: 0,
10111          verticalOffset: 0,
10112          responsive: !1,
10113          parallaxBackgrounds: !0,
10114          parallaxElements: !0,
10115          hideDistantElements: !0,
10116          hideElement: function (a) {
10117              a.hide();
10118          },
10119          showElement: function (a) {
10120              a.show();
10121          },
10122      },
10123      h = {
10124          scroll: {
10125              getLeft: function (a) {
10126                  return a.scrollLeft();
10127              },
10128              setLeft: function (a, b) {
10129                  a.scrollLeft(b);
10130              },
10131              getTop: function (a) {
10132                  return a.scrollTop();
10133              },
10134              setTop: function (a, b) {
10135                  a.scrollTop(b);
10136              },
10137          },
10138          position: {
10139              getLeft: function (a) {
10140                  return -1 * parseInt(a.css("left"), 10);
10141              },
10142              getTop: function (a) {
10143                  return -1 * parseInt(a.css("top"), 10);
10144              },
10145          },
10146          margin: {
10147              getLeft: function (a) {
10148                  return -1 * parseInt(a.css("margin-left"), 10);
10149              },
10150              getTop: function (a) {
10151                  return -1 * parseInt(a.css("margin-top"), 10);
10152              },
10153          },
10154          transform: {
10155              getLeft: function (a) {
10156                  var b = getComputedStyle(a[0])[k];
10157                  return "none" !== b ? -1 * parseInt(b.match(/(-?[0-9]+)/g)[4], 10) : 0;
10158              },
10159              getTop: function (a) {
10160                  var b = getComputedStyle(a[0])[k];
10161                  return "none" !== b ? -1 * parseInt(b.match(/(-?[0-9]+)/g)[5], 10) : 0;
10162              },
10163          },
10164      },
10165      i = {
10166          position: {
10167              setLeft: function (a, b) {
10168                  a.css("left", b);
10169              },
10170              setTop: function (a, b) {
10171                  a.css("top", b);
10172              },
10173          },
10174          transform: {
10175              setPosition: function (a, b, c, d, e) {
10176                  a[0].style[k] = "translate3d(" + (b - c) + "px, " + (d - e) + "px, 0)";
10177              },
10178          },
10179      },
10180      j = (function () {
10181          var b,
10182              c = /^(Moz|Webkit|Khtml|O|ms|Icab)(?=[A-Z])/,
10183              d = a("script")[0].style,
10184              e = "";
10185          for (b in d)
10186              if (c.test(b)) {
10187                  e = b.match(c)[0];
10188                  break;
10189              }
10190          return (
10191              "WebkitOpacity" in d && (e = "Webkit"),
10192              "KhtmlOpacity" in d && (e = "Khtml"),
10193              function (a) {
10194                  return e + (e.length > 0 ? a.charAt(0).toUpperCase() + a.slice(1) : a);
10195              }
10196          );
10197      })(),
10198      k = j("transform"),
10199      l = a("<div />", { style: "background:#fff" }).css("background-position-x") !== d,
10200      m = l
10201          ? function (a, b, c) {
10202                a.css({ "background-position-x": b, "background-position-y": c });
10203            }
10204          : function (a, b, c) {
10205                a.css("background-position", b + " " + c);
10206            },
10207      n = l
10208          ? function (a) {
10209                return [a.css("background-position-x"), a.css("background-position-y")];
10210            }
10211          : function (a) {
10212                return a.css("background-position").split(" ");
10213            },
10214      o =
10215          b.requestAnimationFrame ||
10216          b.webkitRequestAnimationFrame ||
10217          b.mozRequestAnimationFrame ||
10218          b.oRequestAnimationFrame ||
10219          b.msRequestAnimationFrame ||
10220          function (a) {
10221              setTimeout(a, 1e3 / 60);
10222          };
10223  (e.prototype = {
10224      init: function () {
10225          (this.options.name = f + "_" + Math.floor(1e9 * Math.random())),
10226              this._defineElements(),
10227              this._defineGetters(),
10228              this._defineSetters(),
10229              this._handleWindowLoadAndResize(),
10230              this._detectViewport(),
10231              this.refresh({ firstLoad: !0 }),
10232              "scroll" === this.options.scrollProperty ? this._handleScrollEvent() : this._startAnimationLoop();
10233      },
10234      _defineElements: function () {
10235          this.element === c.body && (this.element = b),
10236              (this.$scrollElement = a(this.element)),
10237              (this.$element = this.element === b ? a("body") : this.$scrollElement),
10238              (this.$viewportElement = this.options.viewportElement !== d ? a(this.options.viewportElement) : this.$scrollElement[0] === b || "scroll" === this.options.scrollProperty ? this.$scrollElement : this.$scrollElement.parent());
10239      },
10240      _defineGetters: function () {
10241          var a = this,
10242              b = h[a.options.scrollProperty];
10243          (this._getScrollLeft = function () {
10244              return b.getLeft(a.$scrollElement);
10245          }),
10246              (this._getScrollTop = function () {
10247                  return b.getTop(a.$scrollElement);
10248              });
10249      },
10250      _defineSetters: function () {
10251          var b = this,
10252              c = h[b.options.scrollProperty],
10253              d = i[b.options.positionProperty],
10254              e = c.setLeft,
10255              f = c.setTop;
10256          (this._setScrollLeft =
10257              "function" == typeof e
10258                  ? function (a) {
10259                        e(b.$scrollElement, a);
10260                    }
10261                  : a.noop),
10262              (this._setScrollTop =
10263                  "function" == typeof f
10264                      ? function (a) {
10265                            f(b.$scrollElement, a);
10266                        }
10267                      : a.noop),
10268              (this._setPosition =
10269                  d.setPosition ||
10270                  function (a, c, e, f, g) {
10271                      b.options.horizontalScrolling && d.setLeft(a, c, e), b.options.verticalScrolling && d.setTop(a, f, g);
10272                  });
10273      },
10274      _handleWindowLoadAndResize: function () {
10275          var c = this,
10276              d = a(b);
10277          c.options.responsive &&
10278              d.bind("load." + this.name, function () {
10279                  c.refresh();
10280              }),
10281              d.bind("resize." + this.name, function () {
10282                  c._detectViewport(), c.options.responsive && c.refresh();
10283              });
10284      },
10285      refresh: function (c) {
10286          var d = this,
10287              e = d._getScrollLeft(),
10288              f = d._getScrollTop();
10289          (c && c.firstLoad) || this._reset(),
10290              this._setScrollLeft(0),
10291              this._setScrollTop(0),
10292              this._setOffsets(),
10293              this._findParticles(),
10294              this._findBackgrounds(),
10295              c &&
10296                  c.firstLoad &&
10297                  /WebKit/.test(navigator.userAgent) &&
10298                  a(b).load(function () {
10299                      var a = d._getScrollLeft(),
10300                          b = d._getScrollTop();
10301                      d._setScrollLeft(a + 1), d._setScrollTop(b + 1), d._setScrollLeft(a), d._setScrollTop(b);
10302                  }),
10303              this._setScrollLeft(e),
10304              this._setScrollTop(f);
10305      },
10306      _detectViewport: function () {
10307          var a = this.$viewportElement.offset(),
10308              b = null !== a && a !== d;
10309          (this.viewportWidth = this.$viewportElement.width()), (this.viewportHeight = this.$viewportElement.height()), (this.viewportOffsetTop = b ? a.top : 0), (this.viewportOffsetLeft = b ? a.left : 0);
10310      },
10311      _findParticles: function () {
10312          {
10313              var b = this;
10314              this._getScrollLeft(), this._getScrollTop();
10315          }
10316          if (this.particles !== d) for (var c = this.particles.length - 1; c >= 0; c--) this.particles[c].$element.data("stellar-elementIsActive", d);
10317          (this.particles = []),
10318              this.options.parallaxElements &&
10319                  this.$element.find("[data-stellar-ratio]").each(function () {
10320                      var c,
10321                          e,
10322                          f,
10323                          g,
10324                          h,
10325                          i,
10326                          j,
10327                          k,
10328                          l,
10329                          m = a(this),
10330                          n = 0,
10331                          o = 0,
10332                          p = 0,
10333                          q = 0;
10334                      if (m.data("stellar-elementIsActive")) {
10335                          if (m.data("stellar-elementIsActive") !== this) return;
10336                      } else m.data("stellar-elementIsActive", this);
10337                      b.options.showElement(m),
10338                          m.data("stellar-startingLeft")
10339                              ? (m.css("left", m.data("stellar-startingLeft")), m.css("top", m.data("stellar-startingTop")))
10340                              : (m.data("stellar-startingLeft", m.css("left")), m.data("stellar-startingTop", m.css("top"))),
10341                          (f = m.position().left),
10342                          (g = m.position().top),
10343                          (h = "auto" === m.css("margin-left") ? 0 : parseInt(m.css("margin-left"), 10)),
10344                          (i = "auto" === m.css("margin-top") ? 0 : parseInt(m.css("margin-top"), 10)),
10345                          (k = m.offset().left - h),
10346                          (l = m.offset().top - i),
10347                          m.parents().each(function () {
10348                              var b = a(this);
10349                              return b.data("stellar-offset-parent") === !0 ? ((n = p), (o = q), (j = b), !1) : ((p += b.position().left), void (q += b.position().top));
10350                          }),
10351                          (c = m.data("stellar-horizontal-offset") !== d ? m.data("stellar-horizontal-offset") : j !== d && j.data("stellar-horizontal-offset") !== d ? j.data("stellar-horizontal-offset") : b.horizontalOffset),
10352                          (e = m.data("stellar-vertical-offset") !== d ? m.data("stellar-vertical-offset") : j !== d && j.data("stellar-vertical-offset") !== d ? j.data("stellar-vertical-offset") : b.verticalOffset),
10353                          b.particles.push({
10354                              $element: m,
10355                              $offsetParent: j,
10356                              isFixed: "fixed" === m.css("position"),
10357                              horizontalOffset: c,
10358                              verticalOffset: e,
10359                              startingPositionLeft: f,
10360                              startingPositionTop: g,
10361                              startingOffsetLeft: k,
10362                              startingOffsetTop: l,
10363                              parentOffsetLeft: n,
10364                              parentOffsetTop: o,
10365                              stellarRatio: m.data("stellar-ratio") !== d ? m.data("stellar-ratio") : 1,
10366                              width: m.outerWidth(!0),
10367                              height: m.outerHeight(!0),
10368                              isHidden: !1,
10369                          });
10370                  });
10371      },
10372      _findBackgrounds: function () {
10373          var b,
10374              c = this,
10375              e = this._getScrollLeft(),
10376              f = this._getScrollTop();
10377          (this.backgrounds = []),
10378              this.options.parallaxBackgrounds &&
10379                  ((b = this.$element.find("[data-stellar-background-ratio]")),
10380                  this.$element.data("stellar-background-ratio") && (b = b.add(this.$element)),
10381                  b.each(function () {
10382                      var b,
10383                          g,
10384                          h,
10385                          i,
10386                          j,
10387                          k,
10388                          l,
10389                          o = a(this),
10390                          p = n(o),
10391                          q = 0,
10392                          r = 0,
10393                          s = 0,
10394                          t = 0;
10395                      if (o.data("stellar-backgroundIsActive")) {
10396                          if (o.data("stellar-backgroundIsActive") !== this) return;
10397                      } else o.data("stellar-backgroundIsActive", this);
10398                      o.data("stellar-backgroundStartingLeft")
10399                          ? m(o, o.data("stellar-backgroundStartingLeft"), o.data("stellar-backgroundStartingTop"))
10400                          : (o.data("stellar-backgroundStartingLeft", p[0]), o.data("stellar-backgroundStartingTop", p[1])),
10401                          (h = "auto" === o.css("margin-left") ? 0 : parseInt(o.css("margin-left"), 10)),
10402                          (i = "auto" === o.css("margin-top") ? 0 : parseInt(o.css("margin-top"), 10)),
10403                          (j = o.offset().left - h - e),
10404                          (k = o.offset().top - i - f),
10405                          o.parents().each(function () {
10406                              var b = a(this);
10407                              return b.data("stellar-offset-parent") === !0 ? ((q = s), (r = t), (l = b), !1) : ((s += b.position().left), void (t += b.position().top));
10408                          }),
10409                          (b = o.data("stellar-horizontal-offset") !== d ? o.data("stellar-horizontal-offset") : l !== d && l.data("stellar-horizontal-offset") !== d ? l.data("stellar-horizontal-offset") : c.horizontalOffset),
10410                          (g = o.data("stellar-vertical-offset") !== d ? o.data("stellar-vertical-offset") : l !== d && l.data("stellar-vertical-offset") !== d ? l.data("stellar-vertical-offset") : c.verticalOffset),
10411                          c.backgrounds.push({
10412                              $element: o,
10413                              $offsetParent: l,
10414                              isFixed: "fixed" === o.css("background-attachment"),
10415                              horizontalOffset: b,
10416                              verticalOffset: g,
10417                              startingValueLeft: p[0],
10418                              startingValueTop: p[1],
10419                              startingBackgroundPositionLeft: isNaN(parseInt(p[0], 10)) ? 0 : parseInt(p[0], 10),
10420                              startingBackgroundPositionTop: isNaN(parseInt(p[1], 10)) ? 0 : parseInt(p[1], 10),
10421                              startingPositionLeft: o.position().left,
10422                              startingPositionTop: o.position().top,
10423                              startingOffsetLeft: j,
10424                              startingOffsetTop: k,
10425                              parentOffsetLeft: q,
10426                              parentOffsetTop: r,
10427                              stellarRatio: o.data("stellar-background-ratio") === d ? 1 : o.data("stellar-background-ratio"),
10428                          });
10429                  }));
10430      },
10431      _reset: function () {
10432          var a, b, c, d, e;
10433          for (e = this.particles.length - 1; e >= 0; e--)
10434              (a = this.particles[e]),
10435                  (b = a.$element.data("stellar-startingLeft")),
10436                  (c = a.$element.data("stellar-startingTop")),
10437                  this._setPosition(a.$element, b, b, c, c),
10438                  this.options.showElement(a.$element),
10439                  a.$element.data("stellar-startingLeft", null).data("stellar-elementIsActive", null).data("stellar-backgroundIsActive", null);
10440          for (e = this.backgrounds.length - 1; e >= 0; e--)
10441              (d = this.backgrounds[e]), d.$element.data("stellar-backgroundStartingLeft", null).data("stellar-backgroundStartingTop", null), m(d.$element, d.startingValueLeft, d.startingValueTop);
10442      },
10443      destroy: function () {
10444          this._reset(),
10445              this.$scrollElement.unbind("resize." + this.name).unbind("scroll." + this.name),
10446              (this._animationLoop = a.noop),
10447              a(b)
10448                  .unbind("load." + this.name)
10449                  .unbind("resize." + this.name);
10450      },
10451      _setOffsets: function () {
10452          var c = this,
10453              d = a(b);
10454          d.unbind("resize.horizontal-" + this.name).unbind("resize.vertical-" + this.name),
10455              "function" == typeof this.options.horizontalOffset
10456                  ? ((this.horizontalOffset = this.options.horizontalOffset()),
10457                    d.bind("resize.horizontal-" + this.name, function () {
10458                        c.horizontalOffset = c.options.horizontalOffset();
10459                    }))
10460                  : (this.horizontalOffset = this.options.horizontalOffset),
10461              "function" == typeof this.options.verticalOffset
10462                  ? ((this.verticalOffset = this.options.verticalOffset()),
10463                    d.bind("resize.vertical-" + this.name, function () {
10464                        c.verticalOffset = c.options.verticalOffset();
10465                    }))
10466                  : (this.verticalOffset = this.options.verticalOffset);
10467      },
10468      _repositionElements: function () {
10469          var a,
10470              b,
10471              c,
10472              d,
10473              e,
10474              f,
10475              g,
10476              h,
10477              i,
10478              j,
10479              k = this._getScrollLeft(),
10480              l = this._getScrollTop(),
10481              n = !0,
10482              o = !0;
10483          if (this.currentScrollLeft !== k || this.currentScrollTop !== l || this.currentWidth !== this.viewportWidth || this.currentHeight !== this.viewportHeight) {
10484              for (this.currentScrollLeft = k, this.currentScrollTop = l, this.currentWidth = this.viewportWidth, this.currentHeight = this.viewportHeight, j = this.particles.length - 1; j >= 0; j--)
10485                  (a = this.particles[j]),
10486                      (b = a.isFixed ? 1 : 0),
10487                      this.options.horizontalScrolling
10488                          ? ((f = (k + a.horizontalOffset + this.viewportOffsetLeft + a.startingPositionLeft - a.startingOffsetLeft + a.parentOffsetLeft) * -(a.stellarRatio + b - 1) + a.startingPositionLeft),
10489                            (h = f - a.startingPositionLeft + a.startingOffsetLeft))
10490                          : ((f = a.startingPositionLeft), (h = a.startingOffsetLeft)),
10491                      this.options.verticalScrolling
10492                          ? ((g = (l + a.verticalOffset + this.viewportOffsetTop + a.startingPositionTop - a.startingOffsetTop + a.parentOffsetTop) * -(a.stellarRatio + b - 1) + a.startingPositionTop),
10493                            (i = g - a.startingPositionTop + a.startingOffsetTop))
10494                          : ((g = a.startingPositionTop), (i = a.startingOffsetTop)),
10495                      this.options.hideDistantElements &&
10496                          ((o = !this.options.horizontalScrolling || (h + a.width > (a.isFixed ? 0 : k) && h < (a.isFixed ? 0 : k) + this.viewportWidth + this.viewportOffsetLeft)),
10497                          (n = !this.options.verticalScrolling || (i + a.height > (a.isFixed ? 0 : l) && i < (a.isFixed ? 0 : l) + this.viewportHe
10497ight + this.viewportOffsetTop))),
10498                      o && n
10499                          ? (a.isHidden && (this.options.showElement(a.$element), (a.isHidden = !1)), this._setPosition(a.$element, f, a.startingPositionLeft, g, a.startingPositionTop))
10500                          : a.isHidden || (this.options.hideElement(a.$element), (a.isHidden = !0));
10501              for (j = this.backgrounds.length - 1; j >= 0; j--)
10502                  (c = this.backgrounds[j]),
10503                      (b = c.isFixed ? 0 : 1),
10504                      (d = this.options.horizontalScrolling
10505                          ? (k + c.horizontalOffset - this.viewportOffsetLeft - c.startingOffsetLeft + c.parentOffsetLeft - c.startingBackgroundPositionLeft) * (b - c.stellarRatio) + "px"
10506                          : c.startingValueLeft),
10507                      (e = this.options.verticalScrolling ? (l + c.verticalOffset - this.viewportOffsetTop - c.startingOffsetTop + c.parentOffsetTop - c.startingBackgroundPositionTop) * (b - c.stellarRatio) + "px" : c.startingValueTop),
10508                      m(c.$element, d, e);
10509          }
10510      },
10511      _handleScrollEvent: function () {
10512          var a = this,
10513              b = !1,
10514              c = function () {
10515                  a._repositionElements(), (b = !1);
10516              },
10517              d = function () {
10518                  b || (o(c), (b = !0));
10519              };
10520          this.$scrollElement.bind("scroll." + this.name, d), d();
10521      },
10522      _startAnimationLoop: function () {
10523          var a = this;
10524          (this._animationLoop = function () {
10525              o(a._animationLoop), a._repositionElements();
10526          }),
10527              this._animationLoop();
10528      },
10529  }),
10530      (a.fn[f] = function (b) {
10531          var c = arguments;
10532          return b === d || "object" == typeof b
10533              ? this.each(function () {
10534                    a.data(this, "plugin_" + f) || a.data(this, "plugin_" + f, new e(this, b));
10535                })
10536              : "string" == typeof b && "_" !== b[0] && "init" !== b
10537              ? this.each(function () {
10538                    var d = a.data(this, "plugin_" + f);
10539                    d instanceof e && "function" == typeof d[b] && d[b].apply(d, Array.prototype.slice.call(c, 1)), "destroy" === b && a.data(this, "plugin_" + f, null);
10540                })
10541              : void 0;
10542      }),
10543      (a[f] = function () {
10544          var c = a(b);
10545          return c.stellar.apply(c, Array.prototype.slice.call(arguments, 0));
10546      }),
10547      (a[f].scrollProperty = h),
10548      (a[f].positionProperty = i),
10549      (b.Stellar = e);
10550})(jQuery, this, document);
10551
10552// Generated by CoffeeScript 1.6.2
10553/*
10554jQuery Waypoints - v2.0.3
10555Copyright (c) 2011-2013 Caleb Troughton
10556Dual licensed under the MIT license and GPL license.
10557https://github.com/imakewebthings/jquery-waypoints/blob/master/licenses.txt
10558*/
10559(function () {
10560  var t =
10561          [].indexOf ||
10562          function (t) {
10563              for (var e = 0, n = this.length; e < n; e++) {
10564                  if (e in this && this[e] === t) return e;
10565              }
10566              return -1;
10567          },
10568      e = [].slice;
10569  (function (t, e) {
10570      if (typeof define === "function" && define.amd) {
10571          return define("waypoints", ["jquery"], function (n) {
10572              return e(n, t);
10573          });
10574      } else {
10575          return e(t.jQuery, t);
10576      }
10577  })(this, function (n, r) {
10578      var i, o, l, s, f, u, a, c, h, d, p, y, v, w, g, m;
10579      i = n(r);
10580      c = t.call(r, "ontouchstart") >= 0;
10581      s = { horizontal: {}, vertical: {} };
10582      f = 1;
10583      a = {};
10584      u = "waypoints-context-id";
10585      p = "resize.waypoints";
10586      y = "scroll.waypoints";
10587      v = 1;
10588      w = "waypoints-waypoint-ids";
10589      g = "waypoint";
10590      m = "waypoints";
10591      o = (function () {
10592          function t(t) {
10593              var e = this;
10594              this.$element = t;
10595              this.element = t[0];
10596              this.didResize = false;
10597              this.didScroll = false;
10598              this.id = "context" + f++;
10599              this.oldScroll = { x: t.scrollLeft(), y: t.scrollTop() };
10600              this.waypoints = { horizontal: {}, vertical: {} };
10601              t.data(u, this.id);
10602              a[this.id] = this;
10603              t.bind(y, function () {
10604                  var t;
10605                  if (!(e.didScroll || c)) {
10606                      e.didScroll = true;
10607                      t = function () {
10608                          e.doScroll();
10609                          return (e.didScroll = false);
10610                      };
10611                      return r.setTimeout(t, n[m].settings.scrollThrottle);
10612                  }
10613              });
10614              t.bind(p, function () {
10615                  var t;
10616                  if (!e.didResize) {
10617                      e.didResize = true;
10618                      t = function () {
10619                          n[m]("refresh");
10620                          return (e.didResize = false);
10621                      };
10622                      return r.setTimeout(t, n[m].settings.resizeThrottle);
10623                  }
10624              });
10625          }
10626          t.prototype.doScroll = function () {
10627              var t,
10628                  e = this;
10629              t = {
10630                  horizontal: { newScroll: this.$element.scrollLeft(), oldScroll: this.oldScroll.x, forward: "right", backward: "left" },
10631                  vertical: { newScroll: this.$element.scrollTop(), oldScroll: this.oldScroll.y, forward: "down", backward: "up" },
10632              };
10633              if (c && (!t.vertical.oldScroll || !t.vertical.newScroll)) {
10634                  n[m]("refresh");
10635              }
10636              n.each(t, function (t, r) {
10637                  var i, o, l;
10638                  l = [];
10639                  o = r.newScroll > r.oldScroll;
10640                  i = o ? r.forward : r.backward;
10641                  n.each(e.waypoints[t], function (t, e) {
10642                      var n, i;
10643                      if (r.oldScroll < (n = e.offset) && n <= r.newScroll) {
10644                          return l.push(e);
10645                      } else if (r.newScroll < (i = e.offset) && i <= r.oldScroll) {
10646                          return l.push(e);
10647                      }
10648                  });
10649                  l.sort(function (t, e) {
10650                      return t.offset - e.offset;
10651                  });
10652                  if (!o) {
10653                      l.reverse();
10654                  }
10655                  return n.each(l, function (t, e) {
10656                      if (e.options.continuous || t === l.length - 1) {
10657                          return e.trigger([i]);
10658                      }
10659                  });
10660              });
10661              return (this.oldScroll = { x: t.horizontal.newScroll, y: t.vertical.newScroll });
10662          };
10663          t.prototype.refresh = function () {
10664              var t,
10665                  e,
10666                  r,
10667                  i = this;
10668              r = n.isWindow(this.element);
10669              e = this.$element.offset();
10670              this.doScroll();
10671              t = {
10672                  horizontal: { contextOffset: r ? 0 : e.left, contextScroll: r ? 0 : this.oldScroll.x, contextDimension: this.$element.width(), oldScroll: this.oldScroll.x, forward: "right", backward: "left", offsetProp: "left" },
10673                  vertical: {
10674                      contextOffset: r ? 0 : e.top,
10675                      contextScroll: r ? 0 : this.oldScroll.y,
10676                      contextDimension: r ? n[m]("viewportHeight") : this.$element.height(),
10677                      oldScroll: this.oldScroll.y,
10678                      forward: "down",
10679                      backward: "up",
10680                      offsetProp: "top",
10681                  },
10682              };
10683              return n.each(t, function (t, e) {
10684                  return n.each(i.waypoints[t], function (t, r) {
10685                      var i, o, l, s, f;
10686                      i = r.options.offset;
10687                      l = r.offset;
10688                      o = n.isWindow(r.element) ? 0 : r.$element.offset()[e.offsetProp];
10689                      if (n.isFunction(i)) {
10690                          i = i.apply(r.element);
10691                      } else if (typeof i === "string") {
10692                          i = parseFloat(i);
10693                          if (r.options.offset.indexOf("%") > -1) {
10694                              i = Math.ceil((e.contextDimension * i) / 100);
10695                          }
10696                      }
10697                      r.offset = o - e.contextOffset + e.contextScroll - i;
10698                      if ((r.options.onlyOnScroll && l != null) || !r.enabled) {
10699                          return;
10700                      }
10701                      if (l !== null && l < (s = e.oldScroll) && s <= r.offset) {
10702                          return r.trigger([e.backward]);
10703                      } else if (l !== null && l > (f = e.oldScroll) && f >= r.offset) {
10704                          return r.trigger([e.forward]);
10705                      } else if (l === null && e.oldScroll >= r.offset) {
10706                          return r.trigger([e.forward]);
10707                      }
10708                  });
10709              });
10710          };
10711          t.prototype.checkEmpty = function () {
10712              if (n.isEmptyObject(this.waypoints.horizontal) && n.isEmptyObject(this.waypoints.vertical)) {
10713                  this.$element.unbind([p, y].join(" "));
10714                  return delete a[this.id];
10715              }
10716          };
10717          return t;
10718      })();
10719      l = (function () {
10720          function t(t, e, r) {
10721              var i, o;
10722              r = n.extend({}, n.fn[g].defaults, r);
10723              if (r.offset === "bottom-in-view") {
10724                  r.offset = function () {
10725                      var t;
10726                      t = n[m]("viewportHeight");
10727                      if (!n.isWindow(e.element)) {
10728                          t = e.$element.height();
10729                      }
10730                      return t - n(this).outerHeight();
10731                  };
10732              }
10733              this.$element = t;
10734              this.element = t[0];
10735              this.axis = r.horizontal ? "horizontal" : "vertical";
10736              this.callback = r.handler;
10737              this.context = e;
10738              this.enabled = r.enabled;
10739              this.id = "waypoints" + v++;
10740              this.offset = null;
10741              this.options = r;
10742              e.waypoints[this.axis][this.id] = this;
10743              s[this.axis][this.id] = this;
10744              i = (o = t.data(w)) != null ? o : [];
10745              i.push(this.id);
10746              t.data(w, i);
10747          }
10748          t.prototype.trigger = function (t) {
10749              if (!this.enabled) {
10750                  return;
10751              }
10752              if (this.callback != null) {
10753                  this.callback.apply(this.element, t);
10754              }
10755              if (this.options.triggerOnce) {
10756                  return this.destroy();
10757              }
10758          };
10759          t.prototype.disable = function () {
10760              return (this.enabled = false);
10761          };
10762          t.prototype.enable = function () {
10763              this.context.refresh();
10764              return (this.enabled = true);
10765          };
10766          t.prototype.destroy = function () {
10767              delete s[this.axis][this.id];
10768              delete this.context.waypoints[this.axis][this.id];
10769              return this.context.checkEmpty();
10770          };
10771          t.getWaypointsByElement = function (t) {
10772              var e, r;
10773              r = n(t).data(w);
10774              if (!r) {
10775                  return [];
10776              }
10777              e = n.extend({}, s.horizontal, s.vertical);
10778              return n.map(r, function (t) {
10779                  return e[t];
10780              });
10781          };
10782          return t;
10783      })();
10784      d = {
10785          init: function (t, e) {
10786              var r;
10787              if (e == null) {
10788                  e = {};
10789              }
10790              if ((r = e.handler) == null) {
10791                  e.handler = t;
10792              }
10793              this.each(function () {
10794                  var t, r, i, s;
10795                  t = n(this);
10796                  i = (s = e.context) != null ? s : n.fn[g].defaults.context;
10797                  if (!n.isWindow(i)) {
10798                      i = t.closest(i);
10799                  }
10800                  i = n(i);
10801                  r = a[i.data(u)];
10802                  if (!r) {
10803                      r = new o(i);
10804                  }
10805                  return new l(t, r, e);
10806              });
10807              n[m]("refresh");
10808              return this;
10809          },
10810          disable: function () {
10811              return d._invoke(this, "disable");
10812          },
10813          enable: function () {
10814              return d._invoke(this, "enable");
10815          },
10816          destroy: function () {
10817              return d._invoke(this, "destroy");
10818          },
10819          prev: function (t, e) {
10820              return d._traverse.call(this, t, e, function (t, e, n) {
10821                  if (e > 0) {
10822                      return t.push(n[e - 1]);
10823                  }
10824              });
10825          },
10826          next: function (t, e) {
10827              return d._traverse.call(this, t, e, function (t, e, n) {
10828                  if (e < n.length - 1) {
10829                      return t.push(n[e + 1]);
10830                  }
10831              });
10832          },
10833          _traverse: function (t, e, i) {
10834              var o, l;
10835              if (t == null) {
10836                  t = "vertical";
10837              }
10838              if (e == null) {
10839                  e = r;
10840              }
10841              l = h.aggregate(e);
10842              o = [];
10843              this.each(function () {
10844                  var e;
10845                  e = n.inArray(this, l[t]);
10846                  return i(o, e, l[t]);
10847              });
10848              return this.pushStack(o);
10849          },
10850          _invoke: function (t, e) {
10851              t.each(function () {
10852                  var t;
10853                  t = l.getWaypointsByElement(this);
10854                  return n.each(t, function (t, n) {
10855                      n[e]();
10856                      return true;
10857                  });
10858              });
10859              return this;
10860          },
10861      };
10862      n.fn[g] = function () {
10863          var t, r;
10864          (r = arguments[0]), (t = 2 <= arguments.length ? e.call(arguments, 1) : []);
10865          if (d[r]) {
10866              return d[r].apply(this, t);
10867          } else if (n.isFunction(r)) {
10868              return d.init.apply(this, arguments);
10869          } else if (n.isPlainObject(r)) {
10870              return d.init.apply(this, [null, r]);
10871          } else if (!r) {
10872              return n.error("jQuery Waypoints needs a callback function or handler option.");
10873          } else {
10874              return n.error("The " + r + " method does not exist in jQuery Waypoints.");
10875          }
10876      };
10877      n.fn[g].defaults = { context: r, continuous: true, enabled: true, horizontal: false, offset: 0, triggerOnce: false };
10878      h = {
10879          refresh: function () {
10880              return n.each(a, function (t, e) {
10881                  return e.refresh();
10882              });
10883          },
10884          viewportHeight: function () {
10885              var t;
10886              return (t = r.innerHeight) != null ? t : i.height();
10887          },
10888          aggregate: function (t) {
10889              var e, r, i;
10890              e = s;
10891              if (t) {
10892                  e = (i = a[n(t).data(u)]) != null ? i.waypoints : void 0;
10893              }
10894              if (!e) {
10895                  return [];
10896              }
10897              r = { horizontal: [], vertical: [] };
10898              n.each(r, function (t, i) {
10899                  n.each(e[t], function (t, e) {
10900                      return i.push(e);
10901                  });
10902                  i.sort(function (t, e) {
10903                      return t.offset - e.offset;
10904                  });
10905                  r[t] = n.map(i, function (t) {
10906                      return t.element;
10907                  });
10908                  return (r[t] = n.unique(r[t]));
10909              });
10910              return r;
10911          },
10912          above: function (t) {
10913              if (t == null) {
10914                  t = r;
10915              }
10916              return h._filter(t, "vertical", function (t, e) {
10917                  return e.offset <= t.oldScroll.y;
10918              });
10919          },
10920          below: function (t) {
10921              if (t == null) {
10922                  t = r;
10923              }
10924              return h._filter(t, "vertical", function (t, e) {
10925                  return e.offset > t.oldScroll.y;
10926              });
10927          },
10928          left: function (t) {
10929              if (t == null) {
10930                  t = r;
10931              }
10932              return h._filter(t, "horizontal", function (t, e) {
10933                  return e.offset <= t.oldScroll.x;
10934              });
10935          },
10936          right: function (t) {
10937              if (t == null) {
10938                  t = r;
10939              }
10940              return h._filter(t, "horizontal", function (t, e) {
10941                  return e.offset > t.oldScroll.x;
10942              });
10943          },
10944          enable: function () {
10945              return h._invoke("enable");
10946          },
10947          disable: function () {
10948              return h._invoke("disable");
10949          },
10950          destroy: function () {
10951              return h._invoke("destroy");
10952          },
10953          extendFn: function (t, e) {
10954              return (d[t] = e);
10955          },
10956          _invoke: function (t) {
10957              var e;
10958              e = n.extend({}, s.vertical, s.horizontal);
10959              return n.each(e, function (e, n) {
10960                  n[t]();
10961                  return true;
10962              });
10963          },
10964          _filter: function (t, e, r) {
10965              var i, o;
10966              i = a[n(t).data(u)];
10967              if (!i) {
10968                  return [];
10969              }
10970              o = [];
10971              n.each(i.waypoints[e], function (t, e) {
10972                  if (r(i, e)) {
10973                      return o.push(e);
10974                  }
10975              });
10976              o.sort(function (t, e) {
10977                  return t.offset - e.offset;
10978              });
10979              return n.map(o, function (t) {
10980                  return t.element;
10981              });
10982          },
10983      };
10984      n[m] = function () {
10985          var t, n;
10986          (n = arguments[0]), (t = 2 <= arguments.length ? e.call(arguments, 1) : []);
10987          if (h[n]) {
10988              return h[n].apply(null, t);
10989          } else {
10990              return h.aggregate.call(null, n);
10991          }
10992      };
10993      n[m].settings = { resizeThrottle: 100, scrollThrottle: 30 };
10994      return i.load(function () {
10995          return n[m]("refresh");
10996      });
10997  });
10998}.call(this));
10999
11000/*! Magnific Popup - v1.1.0 - 2016-02-20
11001* http://dimsemenov.com/plugins/magnific-popup/
11002* Copyright (c) 2016 Dmitry Semenov; */
11003!(function (a) {
11004  "function" == typeof define && define.amd ? define(["jquery"], a) : a("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto);
11005})(function (a) {
11006  var b,
11007      c,
11008      d,
11009      e,
11010      f,
11011      g,
11012      h = "Close",
11013      i = "BeforeClose",
11014      j = "AfterClose",
11015      k = "BeforeAppend",
11016      l = "MarkupParse",
11017      m = "Open",
11018      n = "Change",
11019      o = "mfp",
11020      p = "." + o,
11021      q = "mfp-ready",
11022      r = "mfp-removing",
11023      s = "mfp-prevent-close",
11024      t = function () {},
11025      u = !!window.jQuery,
11026      v = a(window),
11027      w = function (a, c) {
11028          b.ev.on(o + a + p, c);
11029      },
11030      x = function (b, c, d, e) {
11031          var f = document.createElement("div");
11032          return (f.className = "mfp-" + b), d && (f.innerHTML = d), e ? c && c.appendChild(f) : ((f = a(f)), c && f.appendTo(c)), f;
11033      },
11034      y = function (c, d) {
11035          b.ev.triggerHandler(o + c, d), b.st.callbacks && ((c = c.charAt(0).toLowerCase() + c.slice(1)), b.st.callbacks[c] && b.st.callbacks[c].apply(b, a.isArray(d) ? d : [d]));
11036      },
11037      z = function (c) {
11038          return (c === g && b.currTemplate.closeBtn) || ((b.currTemplate.closeBtn = a(b.st.closeMarkup.replace("%title%", b.st.tClose))), (g = c)), b.currTemplate.closeBtn;
11039      },
11040      A = function () {
11041          a.magnificPopup.instance || ((b = new t()), b.init(), (a.magnificPopup.instance = b));
11042      },
11043      B = function () {
11044          var a = document.createElement("p").style,
11045              b = ["ms", "O", "Moz", "Webkit"];
11046          if (void 0 !== a.transition) return !0;
11047          for (; b.length; ) if (b.pop() + "Transition" in a) return !0;
11048          return !1;
11049      };
11050  (t.prototype = {
11051      constructor: t,
11052      init: function () {
11053          var c = navigator.appVersion;
11054          (b.isLowIE = b.isIE8 = document.all && !document.addEventListener),
11055              (b.isAndroid = /android/gi.test(c)),
11056              (b.isIOS = /iphone|ipad|ipod/gi.test(c)),
11057              (b.supportsTransition = B()),
11058              (b.probablyMobile = b.isAndroid || b.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent)),
11059              (d = a(document)),
11060              (b.popupsCache = {});
11061      },
11062      open: function (c) {
11063          var e;
11064          if (c.isObj === !1) {
11065              (b.items = c.items.toArray()), (b.index = 0);
11066              var g,
11067                  h = c.items;
11068              for (e = 0; e < h.length; e++)
11069                  if (((g = h[e]), g.parsed && (g = g.el[0]), g === c.el[0])) {
11070                      b.index = e;
11071                      break;
11072                  }
11073          } else (b.items = a.isArray(c.items) ? c.items : [c.items]), (b.index = c.index || 0);
11074          if (b.isOpen) return void b.updateItemHTML();
11075          (b.types = []),
11076              (f = ""),
11077              c.mainEl && c.mainEl.length ? (b.ev = c.mainEl.eq(0)) : (b.ev = d),
11078              c.key ? (b.popupsCache[c.key] || (b.popupsCache[c.key] = {}), (b.currTemplate = b.popupsCache[c.key])) : (b.currTemplate = {}),
11079              (b.st = a.extend(!0, {}, a.magnificPopup.defaults, c)),
11080              (b.fixedContentPos = "auto" === b.st.fixedContentPos ? !b.probablyMobile : b.st.fixedContentPos),
11081              b.st.modal && ((b.st.closeOnContentClick = !1), (b.st.closeOnBgClick = !1), (b.st.showCloseBtn = !1), (b.st.enableEscapeKey = !1)),
11082              b.bgOverlay ||
11083                  ((b.bgOverlay = x("bg").on("click" + p, function () {
11084                      b.close();
11085                  })),
11086                  (b.wrap = x("wrap")
11087                      .attr("tabindex", -1)
11088                      .on("click" + p, function (a) {
11089                          b._checkIfClose(a.target) && b.close();
11090                      })),
11091                  (b.container = x("container", b.wrap))),
11092              (b.contentContainer = x("content")),
11093              b.st.preloader && (b.preloader = x("preloader", b.container, b.st.tLoading));
11094          var i = a.magnificPopup.modules;
11095          for (e = 0; e < i.length; e++) {
11096              var j = i[e];
11097              (j = j.charAt(0).toUpperCase() + j.slice(1)), b["init" + j].call(b);
11098          }
11099          y("BeforeOpen"),
11100              b.st.showCloseBtn &&
11101                  (b.st.closeBtnInside
11102                      ? (w(l, function (a, b, c, d) {
11103                            c.close_replaceWith = z(d.type);
11104                        }),
11105                        (f += " mfp-close-btn-in"))
11106                      : b.wrap.append(z())),
11107              b.st.alignTop && (f += " mfp-align-top"),
11108              b.fixedContentPos ? b.wrap.css({ overflow: b.st.overflowY, overflowX: "hidden", overflowY: b.st.overflowY }) : b.wrap.css({ top: v.scrollTop(), position: "absolute" }),
11109              (b.st.fixedBgPos === !1 || ("auto" === b.st.fixedBgPos && !b.fixedContentPos)) && b.bgOverlay.css({ height: d.height(), position: "absolute" }),
11110              b.st.enableEscapeKey &&
11111                  d.on("keyup" + p, function (a) {
11112                      27 === a.keyCode && b.close();
11113                  }),
11114              v.on("resize" + p, function () {
11115                  b.updateSize();
11116              }),
11117              b.st.closeOnContentClick || (f += " mfp-auto-cursor"),
11118              f && b.wrap.addClass(f);
11119          var k = (b.wH = v.height()),
11120              n = {};
11121          if (b.fixedContentPos && b._hasScrollBar(k)) {
11122              var o = b._getScrollbarSize();
11123              o && (n.marginRight = o);
11124          }
11125          b.fixedContentPos && (b.isIE7 ? a("body, html").css("overflow", "hidden") : (n.overflow = "hidden"));
11126          var r = b.st.mainClass;
11127          return (
11128              b.isIE7 && (r += " mfp-ie7"),
11129              r && b._addClassToMFP(r),
11130              b.updateItemHTML(),
11131              y("BuildControls"),
11132              a("html").css(n),
11133              b.bgOverlay.add(b.wrap).prependTo(b.st.prependTo || a(document.body)),
11134              (b._lastFocusedEl = document.activeElement),
11135              setTimeout(function () {
11136                  b.content ? (b._addClassToMFP(q), b._setFocus()) : b.bgOverlay.addClass(q), d.on("focusin" + p, b._onFocusIn);
11137              }, 16),
11138              (b.isOpen = !0),
11139              b.updateSize(k),
11140              y(m),
11141              c
11142          );
11143      },
11144      close: function () {
11145          b.isOpen &&
11146              (y(i),
11147              (b.isOpen = !1),
11148              b.st.removalDelay && !b.isLowIE && b.supportsTransition
11149                  ? (b._addClassToMFP(r),
11150                    setTimeout(function () {
11151                        b._close();
11152                    }, b.st.removalDelay))
11153                  : b._close());
11154      },
11155      _close: function () {
11156          y(h);
11157          var c = r + " " + q + " ";
11158          if ((b.bgOverlay.detach(), b.wrap.detach(), b.container.empty(), b.st.mainClass && (c += b.st.mainClass + " "), b._removeClassFromMFP(c), b.fixedContentPos)) {
11159              var e = { marginRight: "" };
11160              b.isIE7 ? a("body, html").css("overflow", "") : (e.overflow = ""), a("html").css(e);
11161          }
11162          d.off("keyup" + p + " focusin" + p),
11163              b.ev.off(p),
11164              b.wrap.attr("class", "mfp-wrap").removeAttr("style"),
11165              b.bgOverlay.attr("class", "mfp-bg"),
11166              b.container.attr("class", "mfp-container"),
11167              !b.st.showCloseBtn || (b.st.closeBtnInside && b.currTemplate[b.currItem.type] !== !0) || (b.currTemplate.closeBtn && b.currTemplate.closeBtn.detach()),
11168              b.st.autoFocusLast && b._lastFocusedEl && a(b._lastFocusedEl).focus(),
11169              (b.currItem = null),
11170              (b.content = null),
11171              (b.currTemplate = null),
11172              (b.prevHeight = 0),
11173              y(j);
11174      },
11175      updateSize: function (a) {
11176          if (b.isIOS) {
11177              var c = document.documentElement.clientWidth / window.innerWidth,
11178                  d = window.innerHeight * c;
11179              b.wrap.css("height", d), (b.wH = d);
11180          } else b.wH = a || v.height();
11181          b.fixedContentPos || b.wrap.css("height", b.wH), y("Resize");
11182      },
11183      updateItemHTML: function () {
11184          var c = b.items[b.index];
11185          b.contentContainer.detach(), b.content && b.content.detach(), c.parsed || (c = b.parseEl(b.index));
11186          var d = c.type;
11187          if ((y("BeforeChange", [b.currItem ? b.currItem.type : "", d]), (b.currItem = c), !b.currTemplate[d])) {
11188              var f = b.st[d] ? b.st[d].markup : !1;
11189              y("FirstMarkupParse", f), f ? (b.currTemplate[d] = a(f)) : (b.currTemplate[d] = !0);
11190          }
11191          e && e !== c.type && b.container.removeClass("mfp-" + e + "-holder");
11192          var g = b["get" + d.charAt(0).toUpperCase() + d.slice(1)](c, b.currTemplate[d]);
11193          b.appendContent(g, d), (c.preloaded = !0), y(n, c), (e = c.type), b.container.prepend(b.contentContainer), y("AfterChange");
11194      },
11195      appendContent: function (a, c) {
11196          (b.content = a),
11197              a ? (b.st.showCloseBtn && b.st.closeBtnInside && b.currTemplate[c] === !0 ? b.content.find(".mfp-close").length || b.content.append(z()) : (b.content = a)) : (b.content = ""),
11198              y(k),
11199              b.container.addClass("mfp-" + c + "-holder"),
11200              b.contentContainer.append(b.content);
11201      },
11202      parseEl: function (c) {
11203          var d,
11204              e = b.items[c];
11205          if ((e.tagName ? (e = { el: a(e) }) : ((d = e.type), (e = { data: e, src: e.src })), e.el)) {
11206              for (var f = b.types, g = 0; g < f.length; g++)
11207                  if (e.el.hasClass("mfp-" + f[g])) {
11208                      d = f[g];
11209                      break;
11210                  }
11211              (e.src = e.el.attr("data-mfp-src")), e.src || (e.src = e.el.attr("href"));
11212          }
11213          return (e.type = d || b.st.type || "inline"), (e.index = c), (e.parsed = !0), (b.items[c] = e), y("ElementParse", e), b.items[c];
11214      },
11215      addGroup: function (a, c) {
11216          var d = function (d) {
11217              (d.mfpEl = this), b._openClick(d, a, c);
11218          };
11219          c || (c = {});
11220          var e = "click.magnificPopup";
11221          (c.mainEl = a), c.items ? ((c.isObj = !0), a.off(e).on(e, d)) : ((c.isObj = !1), c.delegate ? a.off(e).on(e, c.delegate, d) : ((c.items = a), a.off(e).on(e, d)));
11222      },
11223      _openClick: function (c, d, e) {
11224          var f = void 0 !== e.midClick ? e.midClick : a.magnificPopup.defaults.midClick;
11225          if (f || !(2 === c.which || c.ctrlKey || c.metaKey || c.altKey || c.shift
11225Key)) {
11226              var g = void 0 !== e.disableOn ? e.disableOn : a.magnificPopup.defaults.disableOn;
11227              if (g)
11228                  if (a.isFunction(g)) {
11229                      if (!g.call(b)) return !0;
11230                  } else if (v.width() < g) return !0;
11231              c.type && (c.preventDefault(), b.isOpen && c.stopPropagation()), (e.el = a(c.mfpEl)), e.delegate && (e.items = d.find(e.delegate)), b.open(e);
11232          }
11233      },
11234      updateStatus: function (a, d) {
11235          if (b.preloader) {
11236              c !== a && b.container.removeClass("mfp-s-" + c), d || "loading" !== a || (d = b.st.tLoading);
11237              var e = { status: a, text: d };
11238              y("UpdateStatus", e),
11239                  (a = e.status),
11240                  (d = e.text),
11241                  b.preloader.html(d),
11242                  b.preloader.find("a").on("click", function (a) {
11243                      a.stopImmediatePropagation();
11244                  }),
11245                  b.container.addClass("mfp-s-" + a),
11246                  (c = a);
11247          }
11248      },
11249      _checkIfClose: function (c) {
11250          if (!a(c).hasClass(s)) {
11251              var d = b.st.closeOnContentClick,
11252                  e = b.st.closeOnBgClick;
11253              if (d && e) return !0;
11254              if (!b.content || a(c).hasClass("mfp-close") || (b.preloader && c === b.preloader[0])) return !0;
11255              if (c === b.content[0] || a.contains(b.content[0], c)) {
11256                  if (d) return !0;
11257              } else if (e && a.contains(document, c)) return !0;
11258              return !1;
11259          }
11260      },
11261      _addClassToMFP: function (a) {
11262          b.bgOverlay.addClass(a), b.wrap.addClass(a);
11263      },
11264      _removeClassFromMFP: function (a) {
11265          this.bgOverlay.removeClass(a), b.wrap.removeClass(a);
11266      },
11267      _hasScrollBar: function (a) {
11268          return (b.isIE7 ? d.height() : document.body.scrollHeight) > (a || v.height());
11269      },
11270      _setFocus: function () {
11271          (b.st.focus ? b.content.find(b.st.focus).eq(0) : b.wrap).focus();
11272      },
11273      _onFocusIn: function (c) {
11274          return c.target === b.wrap[0] || a.contains(b.wrap[0], c.target) ? void 0 : (b._setFocus(), !1);
11275      },
11276      _parseMarkup: function (b, c, d) {
11277          var e;
11278          d.data && (c = a.extend(d.data, c)),
11279              y(l, [b, c, d]),
11280              a.each(c, function (c, d) {
11281                  if (void 0 === d || d === !1) return !0;
11282                  if (((e = c.split("_")), e.length > 1)) {
11283                      var f = b.find(p + "-" + e[0]);
11284                      if (f.length > 0) {
11285                          var g = e[1];
11286                          "replaceWith" === g ? f[0] !== d[0] && f.replaceWith(d) : "img" === g ? (f.is("img") ? f.attr("src", d) : f.replaceWith(a("<img>").attr("src", d).attr("class", f.attr("class")))) : f.attr(e[1], d);
11287                      }
11288                  } else b.find(p + "-" + c).html(d);
11289              });
11290      },
11291      _getScrollbarSize: function () {
11292          if (void 0 === b.scrollbarSize) {
11293              var a = document.createElement("div");
11294              (a.style.cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;"), document.body.appendChild(a), (b.scrollbarSize = a.offsetWidth - a.clientWidth), document.body.removeChild(a);
11295          }
11296          return b.scrollbarSize;
11297      },
11298  }),
11299      (a.magnificPopup = {
11300          instance: null,
11301          proto: t.prototype,
11302          modules: [],
11303          open: function (b, c) {
11304              return A(), (b = b ? a.extend(!0, {}, b) : {}), (b.isObj = !0), (b.index = c || 0), this.instance.open(b);
11305          },
11306          close: function () {
11307              return a.magnificPopup.instance && a.magnificPopup.instance.close();
11308          },
11309          registerModule: function (b, c) {
11310              c.options && (a.magnificPopup.defaults[b] = c.options), a.extend(this.proto, c.proto), this.modules.push(b);
11311          },
11312          defaults: {
11313              disableOn: 0,
11314              key: null,
11315              midClick: !1,
11316              mainClass: "",
11317              preloader: !0,
11318              focus: "",
11319              closeOnContentClick: !1,
11320              closeOnBgClick: !0,
11321              closeBtnInside: !0,
11322              showCloseBtn: !0,
11323              enableEscapeKey: !0,
11324              modal: !1,
11325              alignTop: !1,
11326              removalDelay: 0,
11327              prependTo: null,
11328              fixedContentPos: "auto",
11329              fixedBgPos: "auto",
11330              overflowY: "auto",
11331              closeMarkup: '<button title="%title%" type="button" class="mfp-close">&#215;</button>',
11332              tClose: "Close (Esc)",
11333              tLoading: "Loading...",
11334              autoFocusLast: !0,
11335          },
11336      }),
11337      (a.fn.magnificPopup = function (c) {
11338          A();
11339          var d = a(this);
11340          if ("string" == typeof c)
11341              if ("open" === c) {
11342                  var e,
11343                      f = u ? d.data("magnificPopup") : d[0].magnificPopup,
11344                      g = parseInt(arguments[1], 10) || 0;
11345                  f.items ? (e = f.items[g]) : ((e = d), f.delegate && (e = e.find(f.delegate)), (e = e.eq
11345(g))), b._openClick({ mfpEl: e }, d, f);
11346              } else b.isOpen && b[c].apply(b, Array.prototype.slice.call(arguments, 1));
11347          else (c = a.extend(!0, {}, c)), u ? d.data("magnificPopup", c) : (d[0].magnificPopup = c), b.addGroup(d, c);
11348          return d;
11349      });
11350  var C,
11351      D,
11352      E,
11353      F = "inline",
11354      G = function () {
11355          E && (D.after(E.addClass(C)).detach(), (E = null));
11356      };
11357  a.magnificPopup.registerModule(F, {
11358      options: { hiddenClass: "hide", markup: "", tNotFound: "Content not found" },
11359      proto: {
11360          initInline: function () {
11361              b.types.push(F),
11362                  w(h + "." + F, function () {
11363                      G();
11364                  });
11365          },
11366          getInline: function (c, d) {
11367              if ((G(), c.src)) {
11368                  var e = b.st.inline,
11369                      f = a(c.src);
11370                  if (f.length) {
11371                      var g = f[0].parentNode;
11372                      g && g.tagName && (D || ((C = e.hiddenClass), (D = x(C)), (C = "mfp-" + C)), (E = f.after(D).detach().removeClass(C))), b.updateStatus("ready");
11373                  } else b.updateStatus("error", e.tNotFound), (f = a("<div>"));
11374                  return (c.inlineElement = f), f;
11375              }
11376              return b.updateStatus("ready"), b._parseMarkup(d, {}, c), d;
11377          },
11378      },
11379  });
11380  var H,
11381      I = "ajax",
11382      J = function () {
11383          H && a(document.body).removeClass(H);
11384      },
11385      K = function () {
11386          J(), b.req && b.req.abort();
11387      };
11388  a.magnificPopup.registerModule(I, {
11389      options: { settings: null, cursor: "mfp-ajax-cur", tError: '<a href="%url%">The content</a> could not be loaded.' },
11390      proto: {
11391          initAjax: function () {
11392              b.types.push(I), (H = b.st.ajax.cursor), w(h + "." + I, K), w("BeforeChange." + I, K);
11393          },
11394          getAjax: function (c) {
11395              H && a(document.body).addClass(H), b.updateStatus("loading");
11396              var d = a.extend(
11397                  {
11398                      url: c.src,
11399                      success: function (d, e, f) {
11400                          var g = { data: d, xhr: f };
11401                          y("ParseAjax", g),
11402                              b.appendContent(a(g.data), I),
11403                              (c.finished = !0),
11404                              J(),
11405                              b._setFocus(),
11406                              setTimeout(function () {
11407                                  b.wrap.addClass(q);
11408                              }, 16),
11409                              b.updateStatus("ready"),
11410                              y("AjaxContentAdded");
11411                      },
11412                      error: function () {
11413                          J(), (c.finished = c.loadError = !0), b.updateStatus("error", b.st.ajax.tError.replace("%url%", c.src));
11414                      },
11415                  },
11416                  b.st.ajax.settings
11417              );
11418              return (b.req = a.ajax(d)), "";
11419          },
11420      },
11421  });
11422  var L,
11423      M = function (c) {
11424          if (c.data && void 0 !== c.data.title) return c.data.title;
11425          var d = b.st.image.titleSrc;
11426          if (d) {
11427              if (a.isFunction(d)) return d.call(b, c);
11428              if (c.el) return c.el.attr(d) || "";
11429          }
11430          return "";
11431      };
11432  a.magnificPopup.registerModule("image", {
11433      options: {
11434          markup:
11435              '<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',
11436          cursor: "mfp-zoom-out-cur",
11437          titleSrc: "title",
11438          verticalFit: !0,
11439          tError: '<a href="%url%">The image</a> could not be loaded.',
11440      },
11441      proto: {
11442          initImage: function () {
11443              var c = b.st.image,
11444                  d = ".image";
11445              b.types.push("image"),
11446                  w(m + d, function () {
11447                      "image" === b.currItem.type && c.cursor && a(document.body).addClass(c.cursor);
11448                  }),
11449                  w(h + d, function () {
11450                      c.cursor && a(document.body).removeClass(c.cursor), v.off("resize" + p);
11451                  }),
11452                  w("Resize" + d, b.resizeImage),
11453                  b.isLowIE && w("AfterChange", b.resizeImage);
11454          },
11455          resizeImage: function () {
11456              var a = b.currItem;
11457              if (a && a.img && b.st.image.verticalFit) {
11458                  var c = 0;
11459                  b.isLowIE && (c = parseInt(a.img.css("padding-top"), 10) + parseInt(a.img.css("padding-bottom"), 10)), a.img.css("max-height", b.wH - c);
11460              }
11461          },
11462          _onImageHasSize: function (a) {
11463              a.img && ((a.hasSize = !0), L && clearInterval(L), (a.isCheckingImgSize = !1), y("ImageHasSize", a), a.imgHidden && (b.content && b.content.removeClass("mfp-loading"), (a.imgHidden = !1)));
11464          },
11465          findImageSize: function (a) {
11466              var c = 0,
11467                  d = a.img[0],
11468                  e = function (f) {
11469                      L && clearInterval(L),
11470                          (L = setInterval(function () {
11471                              return d.naturalWidth > 0 ? void b._onImageHasSize(a) : (c > 200 && clearInterval(L), c++, void (3 === c ? e(10) : 40 === c ? e(50) : 100 === c && e(500)));
11472                          }, f));
11473                  };
11474              e(1);
11475          },
11476          getImage: function (c, d) {
11477              var e = 0,
11478                  f = function () {
11479                      c &&
11480                          (c.img[0].complete
11481                              ? (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("ready")), (c.hasSize = !0), (c.loaded = !0), y("ImageLoadComplete"))
11482                              : (e++, 200 > e ? setTimeout(f, 100) : g()));
11483                  },
11484                  g = function () {
11485                      c && (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("error", h.tError.replace("%url%", c.src))), (c.hasSize = !0), (c.loaded = !0), (c.loadError = !0));
11486                  },
11487                  h = b.st.image,
11488                  i = d.find(".mfp-img");
11489              if (i.length) {
11490                  var j = document.createElement("img");
11491                  (j.className = "mfp-img"),
11492                      c.el && c.el.find("img").length && (j.alt = c.el.find("img").attr("alt")),
11493                      (c.img = a(j).on("load.mfploader", f).on("error.mfploader", g)),
11494                      (j.src = c.src),
11495                      i.is("img") && (c.img = c.img.clone()),
11496                      (j = c.img[0]),
11497                      j.naturalWidth > 0 ? (c.hasSize = !0) : j.width || (c.hasSize = !1);
11498              }
11499              return (
11500                  b._parseMarkup(d, { title: M(c), img_replaceWith: c.img }, c),
11501                  b.resizeImage(),
11502                  c.hasSize
11503                      ? (L && clearInterval(L), c.loadError ? (d.addClass("mfp-loading"), b.updateStatus("error", h.tError.replace("%url%", c.src))) : (d.removeClass("mfp-loading"), b.updateStatus("ready")), d)
11504                      : (b.updateStatus("loading"), (c.loading = !0), c.hasSize || ((c.imgHidden = !0), d.addClass("mfp-loading"), b.findImageSize(c)), d)
11505              );
11506          },
11507      },
11508  });
11509  var N,
11510      O = function () {
11511          return void 0 === N && (N = void 0 !== document.createElement("p").style.MozTransform), N;
11512      };
11513  a.magnificPopup.registerModule("zoom", {
11514      options: {
11515          enabled: !1,
11516          easing: "ease-in-out",
11517          duration: 300,
11518          opener: function (a) {
11519              return a.is("img") ? a : a.find("img");
11520          },
11521      },
11522      proto: {
11523          initZoom: function () {
11524              var a,
11525                  c = b.st.zoom,
11526                  d = ".zoom";
11527              if (c.enabled && b.supportsTransition) {
11528                  var e,
11529                      f,
11530                      g = c.duration,
11531                      j = function (a) {
11532                          var b = a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),
11533                              d = "all " + c.duration / 1e3 + "s " + c.easing,
11534                              e = { position: "fixed", zIndex: 9999, left: 0, top: 0, "-webkit-backface-visibility": "hidden" },
11535                              f = "transition";
11536                          return (e["-webkit-" + f] = e["-moz-" + f] = e["-o-" + f] = e[f] = d), b.css(e), b;
11537                      },
11538                      k = function () {
11539                          b.content.css("visibility", "visible");
11540                      };
11541                  w("BuildControls" + d, function () {
11542                      if (b._allowZoom()) {
11543                          if ((clearTimeout(e), b.content.css("visibility", "hidden"), (a = b._getItemToZoom()), !a)) return void k();
11544                          (f = j(a)),
11545                              f.css(b._getOffset()),
11546                              b.wrap.append(f),
11547                              (e = setTimeout(function () {
11548                                  f.css(b._getOffset(!0)),
11549                                      (e = setTimeout(function () {
11550                                          k(),
11551                                              setTimeout(function () {
11552                                                  f.remove(), (a = f = null), y("ZoomAnimationEnded");
11553                                              }, 16);
11554                                      }, g));
11555                              }, 16));
11556                      }
11557                  }),
11558                      w(i + d, function () {
11559                          if (b._allowZoom()) {
11560                              if ((clearTimeout(e), (b.st.removalDelay = g), !a)) {
11561                                  if (((a = b._getItemToZoom()), !a)) return;
11562                                  f = j(a);
11563                              }
11564                              f.css(b._getOffset(!0)),
11565                                  b.wrap.append(f),
11566                                  b.content.css("visibility", "hidden"),
11567                                  setTimeout(function () {
11568                                      f.css(b._getOffset());
11569                                  }, 16);
11570                          }
11571                      }),
11572                      w(h + d, function () {
11573                          b._allowZoom() && (k(), f && f.remove(), (a = null));
11574                      });
11575              }
11576          },
11577          _allowZoom: function () {
11578              return "image" === b.currItem.type;
11579          },
11580          _getItemToZoom: function () {
11581              return b.currItem.hasSize ? b.currItem.img : !1;
11582          },
11583          _getOffset: function (c) {
11584              var d;
11585              d = c ? b.currItem.img : b.st.zoom.opener(b.currItem.el || b.currItem);
11586              var e = d.offset(),
11587                  f = parseInt(d.css("padding-top"), 10),
11588                  g = parseInt(d.css("padding-bottom"), 10);
11589              e.top -= a(window).scrollTop() - f;
11590              var h = { width: d.width(), height: (u ? d.innerHeight() : d[0].offsetHeight) - g - f };
11591              return O() ? (h["-moz-transform"] = h.transform = "translate(" + e.left + "px," + e.top + "px)") : ((h.left = e.left), (h.top = e.top)), h;
11592          },
11593      },
11594  });
11595  var P = "iframe",
11596      Q = "//about:blank",
11597      R = function (a) {
11598          if (b.currTemplate[P]) {
11599              var c = b.currTemplate[P].find("iframe");
11600              c.length && (a || (c[0].src = Q), b.isIE8 && c.css("display", a ? "block" : "none"));
11601          }
11602      };
11603  a.magnificPopup.registerModule(P, {
11604      options: {
11605          markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',
11606          srcAction: "iframe_src",
11607          patterns: {
11608              youtube: { index: "youtube.com", id: "v=", src: "//www.youtube.com/embed/%id%?autoplay=1" },
11609              vimeo: { index: "vimeo.com/", id: "/", src: "//player.vimeo.com/video/%id%?autoplay=1" },
11610              gmaps: { index: "//maps.google.", src: "%id%&output=embed" },
11611          },
11612      },
11613      proto: {
11614          initIframe: function () {
11615              b.types.push(P),
11616                  w("BeforeChange", function (a, b, c) {
11617                      b !== c && (b === P ? R() : c === P && R(!0));
11618                  }),
11619                  w(h + "." + P, function () {
11620                      R();
11621                  });
11622          },
11623          getIframe: function (c, d) {
11624              var e = c.src,
11625                  f = b.st.iframe;
11626              a.each(f.patterns, function () {
11627                  return e.indexOf(this.index) > -1 ? (this.id && (e = "string" == typeof this.id ? e.substr(e.lastIndexOf(this.id) + this.id.length, e.length) : this.id.call(this, e)), (e = this.src.replace("%id%", e)), !1) : void 0;
11628              });
11629              var g = {};
11630              return f.srcAction && (g[f.srcAction] = e), b._parseMarkup(d, g, c), b.updateStatus("ready"), d;
11631          },
11632      },
11633  });
11634  var S = function (a) {
11635          var c = b.items.length;
11636          return a > c - 1 ? a - c : 0 > a ? c + a : a;
11637      },
11638      T = function (a, b, c) {
11639          return a.replace(/%curr%/gi, b + 1).replace(/%total%/gi, c);
11640      };
11641  a.magnificPopup.registerModule("gallery", {
11642      options: {
11643          enabled: !1,
11644          arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',
11645          preload: [0, 2],
11646          navigateByImgClick: !0,
11647          arrows: !0,
11648          tPrev: "Previous (Left arrow key)",
11649          tNext: "Next (Right arrow key)",
11650          tCounter: "%curr% of %total%",
11651      },
11652      proto: {
11653          initGallery: function () {
11654              var c = b.st.gallery,
11655                  e = ".mfp-gallery";
11656              return (
11657                  (b.direction = !0),
11658                  c && c.enabled
11659                      ? ((f += " mfp-gallery"),
11660                        w(m + e, function () {
11661                            c.navigateByImgClick &&
11662                                b.wrap.on("click" + e, ".mfp-img", function () {
11663                                    return b.items.length > 1 ? (b.next(), !1) : void 0;
11664                                }),
11665                                d.on("keydown" + e, function (a) {
11666                                    37 === a.keyCode ? b.prev() : 39 === a.keyCode && b.next();
11667                                });
11668                        }),
11669                        w("UpdateStatus" + e, function (a, c) {
11670                            c.text && (c.text = T(c.text, b.currItem.index, b.items.length));
11671                        }),
11672                        w(l + e, function (a, d, e, f) {
11673                            var g = b.items.length;
11674                            e.counter = g > 1 ? T(c.tCounter, f.index, g) : "";
11675                        }),
11676                        w("BuildControls" + e, function () {
11677                            if (b.items.length > 1 && c.arrows && !b.arrowLeft) {
11678                                var d = c.arrowMarkup,
11679                                    e = (b.arrowLeft = a(d.replace(/%title%/gi, c.tPrev).replace(/%dir%/gi, "left")).addClass(s)),
11680                                    f = (b.arrowRight = a(d.replace(/%title%/gi, c.tNext).replace(/%dir%/gi, "right")).addClass(s));
11681                                e.click(function () {
11682                                    b.prev();
11683                                }),
11684                                    f.click(function () {
11685                                        b.next();
11686                                    }),
11687                                    b.container.append(e.add(f));
11688                            }
11689                        }),
11690                        w(n + e, function () {
11691                            b._preloadTimeout && clearTimeout(b._preloadTimeout),
11692                                (b._preloadTimeout = setTimeout(function () {
11693                                    b.preloadNearbyImages(), (b._preloadTimeout = null);
11694                                }, 16));
11695                        }),
11696                        void w(h + e, function () {
11697                            d.off(e), b.wrap.off("click" + e), (b.arrowRight = b.arrowLeft = null);
11698                        }))
11699                      : !1
11700              );
11701          },
11702          next: function () {
11703              (b.direction = !0), (b.index = S(b.index + 1)), b.updateItemHTML();
11704          },
11705          prev: function () {
11706              (b.direction = !1), (b.index = S(b.index - 1)), b.updateItemHTML();
11707          },
11708          goTo: function (a) {
11709              (b.direction = a >= b.index), (b.index = a), b.updateItemHTML();
11710          },
11711          preloadNearbyImages: function () {
11712              var a,
11713                  c = b.st.gallery.preload,
11714                  d = Math.min(c[0], b.items.length),
11715                  e = Math.min(c[1], b.items.length);
11716              for (a = 1; a <= (b.direction ? e : d); a++) b._preloadItem(b.index + a);
11717              for (a = 1; a <= (b.direction ? d : e); a++) b._preloadItem(b.index - a);
11718          },
11719          _preloadItem: function (c) {
11720              if (((c = S(c)), !b.items[c].preloaded)) {
11721                  var d = b.items[c];
11722                  d.parsed || (d = b.parseEl(c)),
11723                      y("LazyLoad", d),
11724                      "image" === d.type &&
11725                          (d.img = a('<img class="mfp-img" />')
11726                              .on("load.mfploader", function () {
11727                                  d.hasSize = !0;
11728                              })
11729                              .on("error.mfploader", function () {
11730                                  (d.hasSize = !0), (d.loadError = !0), y("LazyLoadError", d);
11731                              })
11732                              .attr("src", d.src)),
11733                      (d.preloaded = !0);
11734              }
11735          },
11736      },
11737  });
11738  var U = "retina";
11739  a.magnificPopup.registerModule(U, {
11740      options: {
11741          replaceSrc: function (a) {
11742              return a.src.replace(/\.\w+$/, function (a) {
11743                  return "@2x" + a;
11744              });
11745          },
11746          ratio: 1,
11747      },
11748      proto: {
11749          initRetina: function () {
11750              if (window.devicePixelRatio > 1) {
11751                  var a = b.st.retina,
11752                      c = a.ratio;
11753                  (c = isNaN(c) ? c() : c),
11754                      c > 1 &&
11755                          (w("ImageHasSize." + U, function (a, b) {
11756                              b.img.css({ "max-width": b.img[0].naturalWidth / c, width: "100%" });
11757                          }),
11758                          w("ElementParse." + U, function (b, d) {
11759                              d.src = a.replaceSrc(d, c);
11760                          }));
11761              }
11762          },
11763      },
11764  }),
11765      A();
11766});
11767
11768/*!
11769* Isotope PACKAGED v3.0.4
11770*
11771* Licensed GPLv3 for open source use
11772* or Isotope Commercial License for commercial use
11773*
11774* http://isotope.metafizzy.co
11775* Copyright 2017 Metafizzy
11776*/
11777
11778!(function (t, e) {
11779  "function" == typeof define && define.amd
11780      ? define("jquery-bridget/jquery-bridget", ["jquery"], function (i) {
11781            return e(t, i);
11782        })
11783      : "object" == typeof module && module.exports
11784      ? (module.exports = e(t, require("jquery")))
11785      : (t.jQueryBridget = e(t, t.jQuery));
11786})(window, function (t, e) {
11787  "use strict";
11788  function i(i, s, a) {
11789      function u(t, e, o) {
11790          var n,
11791              s = "$()." + i + '("' + e + '")';
11792          return (
11793              t.each(function (t, u) {
11794                  var h = a.data(u, i);
11795                  if (!h) return void r(i + " not initialized. Cannot call methods, i.e. " + s);
11796                  var d = h[e];
11797                  if (!d || "_" == e.charAt(0)) return void r(s + " is not a valid method");
11798                  var l = d.apply(h, o);
11799                  n = void 0 === n ? l : n;
11800              }),
11801              void 0 !== n ? n : t
11802          );
11803      }
11804      function h(t, e) {
11805          t.each(function (t, o) {
11806              var n = a.data(o, i);
11807              n ? (n.option(e), n._init()) : ((n = new s(o, e)), a.data(o, i, n));
11808          });
11809      }
11810      (a = a || e || t.jQuery),
11811          a &&
11812              (s.prototype.option ||
11813                  (s.prototype.option = function (t) {
11814                      a.isPlainObject(t) && (this.options = a.extend(!0, this.options, t));
11815                  }),
11816              (a.fn[i] = function (t) {
11817                  if ("string" == typeof t) {
11818                      var e = n.call(arguments, 1);
11819                      return u(this, t, e);
11820                  }
11821                  return h(this, t), this;
11822              }),
11823              o(a));
11824  }
11825  function o(t) {
11826      !t || (t && t.bridget) || (t.bridget = i);
11827  }
11828  var n = Array.prototype.slice,
11829      s = t.console,
11830      r =
11831          "undefined" == typeof s
11832              ? function () {}
11833              : function (t) {
11834                    s.error(t);
11835                };
11836  return o(e || t.jQuery), i;
11837}),
11838  (function (t, e) {
11839      "function" == typeof define && define.amd ? define("ev-emitter/ev-emitter", e) : "object" == typeof module && module.exports ? (module.exports = e()) : (t.EvEmitter = e());
11840  })("undefined" != typeof window ? window : this, function () {
11841      function t() {}
11842      var e = t.prototype;
11843      return (
11844          (e.on = function (t, e) {
11845              if (t && e) {
11846                  var i = (this._events = this._events || {}),
11847                      o = (i[t] = i[t] || []);
11848                  return o.indexOf(e) == -1 && o.push(e), this;
11849              }
11850          }),
11851          (e.once = function (t, e) {
11852              if (t && e) {
11853                  this.on(t, e);
11854                  var i = (this._onceEvents = this._onceEvents || {}),
11855                      o = (i[t] = i[t] || {});
11856                  return (o[e] = !0), this;
11857              }
11858          }),
11859          (e.off = function (t, e) {
11860              var i = this._events && this._events[t];
11861              if (i && i.length) {
11862                  var o = i.indexOf(e);
11863                  return o != -1 && i.splice(o, 1), this;
11864              }
11865          }),
11866          (e.emitEvent = function (t, e) {
11867              var i = this._events && this._events[t];
11868              if (i && i.length) {
11869                  var o = 0,
11870                      n = i[o];
11871                  e = e || [];
11872                  for (var s = this._onceEvents && this._onceEvents[t]; n; ) {
11873                      var r = s && s[n];
11874                      r && (this.off(t, n), delete s[n]), n.apply(this, e), (o += r ? 0 : 1), (n = i[o]);
11875                  }
11876                  return this;
11877              }
11878          }),
11879          t
11880      );
11881  }),
11882  (function (t, e) {
11883      "use strict";
11884      "function" == typeof define && define.amd
11885          ? define("get-size/get-size", [], function () {
11886                return e();
11887            })
11888          : "object" == typeof module && module.exports
11889          ? (module.exports = e())
11890          : (t.getSize = e());
11891  })(window, function () {
11892      "use strict";
11893      function t(t) {
11894          var e = parseFloat(t),
11895              i = t.indexOf("%") == -1 && !isNaN(e);
11896          return i && e;
11897      }
11898      function e() {}
11899      function i() {
11900          for (var t = { width: 0, height: 0, innerWidth: 0, innerHeight: 0, outerWidth: 0, outerHeight: 0 }, e = 0; e < h; e++) {
11901              var i = u[e];
11902              t[i] = 0;
11903          }
11904          return t;
11905      }
11906      function o(t) {
11907          var e = getComputedStyle(t);
11908          return e || a("Style returned " + e + ". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1"), e;
11909      }
11910      function n() {
11911          if (!d) {
11912              d = !0;
11913              var e = document.createElement("div");
11914              (e.style.width = "200px"), (e.style.padding = "1px 2px 3px 4px"), (e.style.borderStyle = "solid"), (e.style.borderWidth = "1px 2px 3px 4px"), (e.style.boxSizing = "border-box");
11915              var i = document.body || document.documentElement;
11916              i.appendChild(e);
11917              var n = o(e);
11918              (s.isBoxSizeOuter = r = 200 == t(n.width)), i.removeChild(e);
11919          }
11920      }
11921      function s(e) {
11922          if ((n(), "string" == typeof e && (e = document.querySelector(e)), e && "object" == typeof e && e.nodeType)) {
11923              var s = o(e);
11924              if ("none" == s.display) return i();
11925              var a = {};
11926              (a.width = e.offsetWidth), (a.height = e.offsetHeight);
11927              for (var d = (a.isBorderBox = "border-box" == s.boxSizing), l = 0; l < h; l++) {
11928                  var f = u[l],
11929                      c = s[f],
11930                      m = parseFloat(c);
11931                  a[f] = isNaN(m) ? 0 : m;
11932              }
11933              var p = a.paddingLeft + a.paddingRight,
11934                  y = a.paddingTop + a.paddingBottom,
11935                  g = a.marginLeft + a.marginRight,
11936                  v = a.marginTop + a.marginBottom,
11937                  _ = a.borderLeftWidth + a.borderRightWidth,
11938                  I = a.borderTopWidth + a.borderBottomWidth,
11939                  z = d && r,
11940                  x = t(s.width);
11941              x !== !1 && (a.width = x + (z ? 0 : p + _));
11942              var S = t(s.height);
11943              return S !== !1 && (a.height = S + (z ? 0 : y + I)), (a.innerWidth = a.width - (p + _)), (a.innerHeight = a.height - (y + I)), (a.outerWidth = a.width + g), (a.outerHeight = a.height + v), a;
11944          }
11945      }
11946      var r,
11947          a =
11948              "undefined" == typeof console
11949                  ? e
11950                  : function (t) {
11951                        console.error(t);
11952                    },
11953          u = ["paddingLeft", "paddingRight", "paddingTop", "paddingBottom", "marginLeft", "marginRight", "marginTop", "marginBottom", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth"],
11954          h = u.length,
11955          d = !1;
11956      return s;
11957  }),
11958  (function (t, e) {
11959      "use strict";
11960      "function" == typeof define && define.amd ? define("desandro-matches-selector/matches-selector", e) : "object" == typeof module && module.exports ? (module.exports = e()) : (t.matchesSelector = e());
11961  })(window, function () {
11962      "use strict";
11963      var t = (function () {
11964          var t = window.Element.prototype;
11965          if (t.matches) return "matches";
11966          if (t.matchesSelector) return "matchesSelector";
11967          for (var e = ["webkit", "moz", "ms", "o"], i = 0; i < e.length; i++) {
11968              var o = e[i],
11969                  n = o + "MatchesSelector";
11970              if (t[n]) return n;
11971          }
11972      })();
11973      return function (e, i) {
11974          return e[t](i);
11975      };
11976  }),
11977  (function (t, e) {
11978      "function" == typeof define && define.amd
11979          ? define("fizzy-ui-utils/utils", ["desandro-matches-selector/matches-selector"], function (i) {
11980                return e(t, i);
11981            })
11982          : "object" == typeof module && module.exports
11983          ? (module.exports = e(t, require("desandro-matches-selector")))
11984          : (t.fizzyUIUtils = e(t, t.matchesSelector));
11985  })(window, function (t, e) {
11986      var i = {};
11987      (i.extend = function (t, e) {
11988          for (var i in e) t[i] = e[i];
11989          return t;
11990      }),
11991          (i.modulo = function (t, e) {
11992              return ((t % e) + e) % e;
11993          }),
11994          (i.makeArray = function (t) {
11995              var e = [];
11996              if (Array.isArray(t)) e = t;
11997              else if (t && "object" == typeof t && "number" == typeof t.length) for (var i = 0; i < t.length; i++) e.push(t[i]);
11998              else e.push(t);
11999              return e;
12000          }),
12001          (i.removeFrom = function (t, e) {
12002              var i = t.indexOf(e);
12003              i != -1 && t.splice(i, 1);
12004          }),
12005          (i.getParent = function (t, i) {
12006              for (; t.parentNode && t != document.body; ) if (((t = t.parentNode), e(t, i))) return t;
12007          }),
12008          (i.getQueryElement = function (t) {
12009              return "string" == typeof t ? document.querySelector(t) : t;
12010          }),
12011          (i.handleEvent = function (t) {
12012              var e = "on" + t.type;
12013              this[e] && this[e](t);
12014          }),
12015          (i.filterFindElements = function (t, o) {
12016              t = i.makeArray(t);
12017              var n = [];
12018              return (
12019                  t.forEach(function (t) {
12020                      if (t instanceof HTMLElement) {
12021                          if (!o) return void n.push(t);
12022                          e(t, o) && n.push(t);
12023                          for (var i = t.querySelectorAll(o), s = 0; s < i.length; s++) n.push(i[s]);
12024                      }
12025                  }),
12026                  n
12027              );
12028          }),
12029          (i.debounceMethod = function (t, e, i) {
12030              var o = t.prototype[e],
12031                  n = e + "Timeout";
12032              t.prototype[e] = function () {
12033                  var t = this[n];
12034                  t && clearTimeout(t);
12035                  var e = arguments,
12036                      s = this;
12037                  this[n] = setTimeout(function () {
12038                      o.apply(s, e), delete s[n];
12039                  }, i || 100);
12040              };
12041          }),
12042          (i.docReady = function (t) {
12043              var e = document.readyState;
12044              "complete" == e || "interactive" == e ? setTimeout(t) : document.addEventListener("DOMContentLoaded", t);
12045          }),
12046          (i.toDashed = function (t) {
12047              return t
12048                  .replace(/(.)([A-Z])/g, function (t, e, i) {
12049                      return e + "-" + i;
12050                  })
12051                  .toLowerCase();
12052          });
12053      var o = t.console;
12054      return (
12055          (i.htmlInit = function (e, n) {
12056              i.docReady(function () {
12057                  var s = i.toDashed(n),
12058                      r = "data-" + s,
12059                      a = document.querySelectorAll("[" + r + "]"),
12060                      u = document.querySelectorAll(".js-" + s),
12061                      h = i.makeArray(a).concat(i.makeArray(u)),
12062                      d = r + "-options",
12063                      l = t.jQuery;
12064                  h.forEach(function (t) {
12065                      var i,
12066                          s = t.getAttribute(r) || t.getAttribute(d);
12067                      try {
12068                          i = s && JSON.parse(s);
12069                      } catch (a) {
12070                          return void (o && o.error("Error parsing " + r + " on " + t.className + ": " + a));
12071                      }
12072                      var u = new e(t, i);
12073                      l && l.data(t, n, u);
12074                  });
12075              });
12076          }),
12077          i
12078      );
12079  }),
12080  (function (t, e) {
12081      "function" == typeof define && define.amd
12082          ? define("outlayer/item", ["ev-emitter/ev-emitter", "get-size/get-size"], e)
12083          : "object" == typeof module && module.exports
12084          ? (module.exports = e(require("ev-emitter"), require("get-size")))
12085          : ((t.Outlayer = {}), (t.Outlayer.Item = e(t.EvEmitter, t.getSize)));
12086  })(window, function (t, e) {
12087      "use strict";
12088      function i(t) {
12089          for (var e in t) return !1;
12090          return (e = null), !0;
12091      }
12092      function o(t, e) {
12093          t && ((this.element = t), (this.layout = e), (this.position = { x: 0, y: 0 }), this._create());
12094      }
12095      function n(t) {
12096          return t.replace(/([A-Z])/g, function (t) {
12097              return "-" + t.toLowerCase();
12098          });
12099      }
12100      var s = document.documentElement.style,
12101          r = "string" == typeof s.transition ? "transition" : "WebkitTransition",
12102          a = "string" == typeof s.transform ? "transform" : "WebkitTransform",
12103          u = { WebkitTransition: "webkitTransitionEnd", transition: "transitionend" }[r],
12104          h = { transform: a, transition: r, transitionDuration: r + "Duration", transitionProperty: r + "Property", transitionDelay: r + "Delay" },
12105          d = (o.prototype = Object.create(t.prototype));
12106      (d.constructor = o),
12107          (d._create = function () {
12108              (this._transn = { ingProperties: {}, clean: {}, onEnd: {} }), this.css({ position: "absolute" });
12109          }),
12110          (d.handleEvent = function (t) {
12111              var e = "on" + t.type;
12112              this[e] && this[e](t);
12113          }),
12114          (d.getSize = function () {
12115              this.size = e(this.element);
12116          }),
12117          (d.css = function (t) {
12118              var e = this.element.style;
12119              for (var i in t) {
12120                  var o = h[i] || i;
12121                  e[o] = t[i];
12122              }
12123          }),
12124          (d.getPosition = function () {
12125              var t = getComputedStyle(this.element),
12126                  e = this.layout._getOption("originLeft"),
12127                  i = this.layout._getOption("originTop"),
12128                  o = t[e ? "left" : "right"],
12129                  n = t[i ? "top" : "bottom"],
12130                  s = this.layout.size,
12131                  r = o.indexOf("%") != -1 ? (parseFloat(o) / 100) * s.width : parseInt(o, 10),
12132                  a = n.indexOf("%") != -1 ? (parseFloat(n) / 100) * s.height : parseInt(n, 10);
12133              (r = isNaN(r) ? 0 : r), (a = isNaN(a) ? 0 : a), (r -= e ? s.paddingLeft : s.paddingRight), (a -= i ? s.paddingTop : s.paddingBottom), (this.position.x = r), (this.position.y = a);
12134          }),
12135          (d.layoutPosition = function () {
12136              var t = this.layout.size,
12137                  e = {},
12138                  i = this.layout._getOption("originLeft"),
12139                  o = this.layout._getOption("originTop"),
12140                  n = i ? "paddingLeft" : "paddingRight",
12141                  s = i ? "left" : "right",
12142                  r = i ? "right" : "left",
12143                  a = this.position.x + t[n];
12144              (e[s] = this.getXValue(a)), (e[r] = "");
12145              var u = o ? "paddingTop" : "paddingBottom",
12146                  h = o ? "top" : "bottom",
12147                  d = o ? "bottom" : "top",
12148                  l = this.position.y + t[u];
12149              (e[h] = this.getYValue(l)), (e[d] = ""), this.css(e), this.emitEvent("layout", [this]);
12150          }),
12151          (d.getXValue = function (t) {
12152              var e = this.layout._getOption("horizontal");
12153              return this.layout.options.percentPosition && !e ? (t / this.layout.size.width) * 100 + "%" : t + "px";
12154          }),
12155          (d.getYValue = function (t) {
12156              var e = this.layout._getOption("horizontal");
12157              return this.layout.options.percentPosition && e ? (t / this.layout.size.height) * 100 + "%" : t + "px";
12158          }),
12159          (d._transitionTo = function (t, e) {
12160              this.getPosition();
12161              var i = this.position.x,
12162                  o = this.position.y,
12163                  n = parseInt(t, 10),
12164                  s = parseInt(e, 10),
12165                  r = n === this.position.x && s === this.position.y;
12166              if ((this.setPosition(t, e), r && !this.isTransitioning)) return void this.layoutPosition();
12167              var a = t - i,
12168                  u = e - o,
12169                  h = {};
12170              (h.transform = this.getTranslate(a, u)), this.transition({ to: h, onTransitionEnd: { transform: this.layoutPosition }, isCleaning: !0 });
12171          }),
12172          (d.getTranslate = function (t, e) {
12173              var i = this.layout._getOption("originLeft"),
12174                  o = this.layout._getOption("originTop");
12175              return (t = i ? t : -t), (e = o ? e : -e), "translate3d(" + t + "px, " + e + "px, 0)";
12176          }),
12177          (d.goTo = function (t, e) {
12178              this.setPosition(t, e), this.layoutPosition();
12179          }),
12180          (d.moveTo = d._transitionTo),
12181          (d.setPosition = function (t, e) {
12182              (this.position.x = parseInt(t, 10)), (this.position.y = parseInt(e, 10));
12183          }),
12184          (d._nonTransition = function (t) {
12185              this.css(t.to), t.isCleaning && this._removeStyles(t.to);
12186              for (var e in t.onTransitionEnd) t.onTransitionEnd[e].call(this);
12187          }),
12188          (d.transition = function (t) {
12189              if (!parseFloat(this.layout.options.transitionDuration)) return void this._nonTransition(t);
12190              var e = this._transn;
12191              for (var i in t.onTransitionEnd) e.onEnd[i] = t.onTransitionEnd[i];
12192              for (i in t.to) (e.ingProperties[i] = !0), t.isCleaning && (e.clean[i] = !0);
12193              if (t.from) {
12194                  this.css(t.from);
12195                  var o = this.element.offsetHeight;
12196                  o = null;
12197              }
12198              this.enableTransition(t.to), this.css(t.to), (this.isTransitioning = !0);
12199          });
12200      var l = "opacity," + n(a);
12201      (d.enableTransition = function () {
12202          if (!this.isTransitioning) {
12203              var t = this.layout.options.transitionDuration;
12204              (t = "number" == typeof t ? t + "ms" : t), this.css({ transitionProperty: l, transitionDuration: t, transitionDelay: this.staggerDelay || 0 }), this.element.addEventListener(u, this, !1);
12205          }
12206      }),
12207          (d.onwebkitTransitionEnd = function (t) {
12208              this.ontransitionend(t);
12209          }),
12210          (d.onotransitionend = function (t) {
12211              this.ontransitionend(t);
12212          });
12213      var f = { "-webkit-transform": "transform" };
12214      (d.ontransitionend = function (t) {
12215          if (t.target === this.element) {
12216              var e = this._transn,
12217                  o = f[t.propertyName] || t.propertyName;
12218              if ((delete e.ingProperties[o], i(e.ingProperties) && this.disableTransition(), o in e.clean && ((this.element.style[t.propertyName] = ""), delete e.clean[o]), o in e.onEnd)) {
12219                  var n = e.onEnd[o];
12220                  n.call(this), delete e.onEnd[o];
12221              }
12222              this.emitEvent("transitionEnd", [this]);
12223          }
12224      }),
12225          (d.disableTransition = function () {
12226              this.removeTransitionStyles(), this.element.removeEventListener(u, this, !1), (this.isTransitioning = !1);
12227          }),
12228          (d._removeStyles = function (t) {
12229              var e = {};
12230              for (var i in t) e[i] = "";
12231              this.css(e);
12232          });
12233      var c = { transitionProperty: "", transitionDuration: "", transitionDelay: "" };
12234      return (
12235          (d.removeTransitionStyles = function () {
12236              this.css(c);
12237          }),
12238          (d.stagger = function (t) {
12239              (t = isNaN(t) ? 0 : t), (this.staggerDelay = t + "ms");
12240          }),
12241          (d.removeElem = function () {
12242              this.element.parentNode.removeChild(this.element), this.css({ display: "" }), this.emitEvent("remove", [this]);
12243          }),
12244          (d.remove = function () {
12245              return r && parseFloat(this.layout.options.transitionDuration)
12246                  ? (this.once("transitionEnd", function () {
12247                        this.removeElem();
12248                    }),
12249                    void this.hide())
12250                  : void this.removeElem();
12251          }),
12252          (d.reveal = function () {
12253              delete this.isHidden, this.css({ display: "" });
12254              var t = this.layout.options,
12255                  e = {},
12256                  i = this.getHideRevealTransitionEndProperty("visibleStyle");
12257              (e[i] = this.onRevealTransitionEnd), this.transition({ from: t.hiddenStyle, to: t.visibleStyle, isCleaning: !0, onTransitionEnd: e });
12258          }),
12259          (d.onRevealTransitionEnd = function () {
12260              this.isHidden || this.emitEvent("reveal");
12261          }),
12262          (d.getHideRevealTransitionEndProperty = function (t) {
12263              var e = this.layout.options[t];
12264              if (e.opacity) return "opacity";
12265              for (var i in e) return i;
12266          }),
12267          (d.hide = function () {
12268              (this.isHidden = !0), this.css({ display: "" });
12269              var t = this.layout.options,
12270                  e = {},
12271                  i = this.getHideRevealTransitionEndProperty("hiddenStyle");
12272              (e[i] = this.onHideTransitionEnd), this.transition({ from: t.visibleStyle, to: t.hiddenStyle, isCleaning: !0, onTransitionEnd: e });
12273          }),
12274          (d.onHideTransitionEnd = function () {
12275              this.isHidden && (this.css({ display: "none" }), this.emitEvent("hide"));
12276          }),
12277          (d.destroy = function () {
12278              this.css({ position: "", left: "", right: "", top: "", bottom: "", transition: "", transform: "" });
12279          }),
12280          o
12281      );
12282  }),
12283  (function (t, e) {
12284      "use strict";
12285      "function" == typeof define && define.amd
12286          ? define("outlayer/outlayer", ["ev-emitter/ev-emitter", "get-size/get-size", "fizzy-ui-utils/utils", "./item"], function (i, o, n, s) {
12287                return e(t, i, o, n, s);
12288            })
12289          : "object" == typeof module && module.exports
12290          ? (module.exports = e(t, require("ev-emitter"), require("get-size"), require("fizzy-ui-utils"), require("./item")))
12291          : (t.Outlayer = e(t, t.EvEmitter, t.getSize, t.fizzyUIUtils, t.Outlayer.Item));
12292  })(window, function (t, e, i, o, n) {
12293      "use strict";
12294      function s(t, e) {
12295          var i = o.getQueryElement(t);
12296          if (!i) return void (u && u.error("Bad element for " + this.constructor.namespace + ": " + (i || t)));
12297          (this.element = i), h && (this.$element = h(this.element)), (this.options = o.extend({}, this.constructor.defaults)), this.option(e);
12298          var n = ++l;
12299          (this.element.outlayerGUID = n), (f[n] = this), this._create();
12300          var s = this._getOption("initLayout");
12301          s && this.layout();
12302      }
12303      function r(t) {
12304          function e() {
12305              t.apply(this, arguments);
12306          }
12307          return (e.prototype = Object.create(t.prototype)), (e.prototype.constructor = e), e;
12308      }
12309      function a(t) {
12310          if ("number" == typeof t) return t;
12311          var e = t.match(/(^\d*\.?\d*)(\w*)/),
12312              i = e && e[1],
12313              o = e && e[2];
12314          if (!i.length) return 0;
12315          i = parseFloat(i);
12316          var n = m[o] || 1;
12317          return i * n;
12318      }
12319      var u = t.console,
12320          h = t.jQuery,
12321          d = function () {},
12322          l = 0,
12323          f = {};
12324      (s.namespace = "outlayer"),
12325          (s.Item = n),
12326          (s.defaults = {
12327              containerStyle: { position: "relative" },
12328              initLayout: !0,
12329              originLeft: !0,
12330              originTop: !0,
12331              resize: !0,
12332              resizeContainer: !0,
12333              transitionDuration: "0.4s",
12334              hiddenStyle: { opacity: 0, transform: "scale(0.001)" },
12335              visibleStyle: { opacity: 1, transform: "scale(1)" },
12336          });
12337      var c = s.prototype;
12338      o.extend(c, e.prototype),
12339          (c.option = function (t) {
12340              o.extend(this.options, t);
12341          }),
12342          (c._getOption = function (t) {
12343              var e = this.constructor.compatOptions[t];
12344              return e && void 0 !== this.options[e] ? this.options[e] : this.options[t];
12345          }),
12346          (s.compatOptions = {
12347              initLayout: "isInitLayout",
12348              horizontal: "isHorizontal",
12349              layoutInstant: "isLayoutInstant",
12350              originLeft: "isOriginLeft",
12351              originTop: "isOriginTop",
12352              resize: "isResizeBound",
12353              resizeContainer: "isResizingContainer",
12354          }),
12355          (c._create = function () {
12356              this.reloadItems(), (this.stamps = []), this.stamp(this.options.stamp), o.extend(this.element.style, this.options.containerStyle);
12357              var t = this._getOption("resize");
12358              t && this.bindResize();
12359          }),
12360          (c.reloadItems = function () {
12361              this.items = this._itemize(this.element.children);
12362          }),
12363          (c._itemize = function (t) {
12364              for (var e = this._filterFindItemElements(t), i = this.constructor.Item, o = [], n = 0; n < e.length; n++) {
12365                  var s = e[n],
12366                      r = new i(s, this);
12367                  o.push(r);
12368              }
12369              return o;
12370          }),
12371          (c._filterFindItemElements = function (t) {
12372              return o.filterFindElements(t, this.options.itemSelector);
12373          }),
12374          (c.getItemElements = function () {
12375              return this.items.map(function (t) {
12376                  return t.element;
12377              });
12378          }),
12379          (c.layout = function () {
12380              this._resetLayout(), this._manageStamps();
12381              var t = this._getOption("layoutInstant"),
12382                  e = void 0 !== t ? t : !this._isLayoutInited;
12383              this.layoutItems(this.items, e), (this._isLayoutInited = !0);
12384          }),
12385          (c._init = c.layout),
12386          (c._resetLayout = function () {
12387              this.getSize();
12388          }),
12389          (c.getSize = function () {
12390              this.size = i(this.element);
12391          }),
12392          (c._getMeasurement = function (t, e) {
12393              var o,
12394                  n = this.options[t];
12395              n ? ("string" == typeof n ? (o = this.element.querySelector(n)) : n instanceof HTMLElement && (o = n), (this[t] = o ? i(o)[e] : n)) : (this[t] = 0);
12396          }),
12397          (c.layoutItems = function (t, e) {
12398              (t = this._getItemsForLayout(t)), this._layoutItems(t, e), this._postLayout();
12399          }),
12400          (c._getItemsForLayout = function (t) {
12401              return t.filter(function (t) {
12402                  return !t.isIgnored;
12403              });
12404          }),
12405          (c._layoutItems = function (t, e) {
12406              if ((this._emitCompleteOnItems("layout", t), t && t.length)) {
12407                  var i = [];
12408                  t.forEach(function (t) {
12409                      var o = this._getItemLayoutPosition(t);
12410                      (o.item = t), (o.isInstant = e || t.isLayoutInstant), i.push(o);
12411                  }, this),
12412                      this._processLayoutQueue(i);
12413              }
12414          }),
12415          (c._getItemLayoutPosition = function () {
12416              return { x: 0, y: 0 };
12417          }),
12418          (c._processLayoutQueue = function (t) {
12419              this.updateStagger(),
12420                  t.forEach(function (t, e) {
12421                      this._positionItem(t.item, t.x, t.y, t.isInstant, e);
12422                  }, this);
12423          }),
12424          (c.updateStagger = function () {
12425              var t = this.options.stagger;
12426              return null === t || void 0 === t ? void (this.stagger = 0) : ((this.stagger = a(t)), this.stagger);
12427          }),
12428          (c._positionItem = function (t, e, i, o, n) {
12429              o ? t.goTo(e, i) : (t.stagger(n * this.stagger), t.moveTo(e, i));
12430          }),
12431          (c._postLayout = function () {
12432              this.resizeContainer();
12433          }),
12434          (c.resizeContainer = function () {
12435              var t = this._getOption("resizeContainer");
12436              if (t) {
12437                  var e = this._getContainerSize();
12438                  e && (this._setContainerMeasure(e.width, !0), this._setContainerMeasure(e.height, !1));
12439              }
12440          }),
12441          (c._getContainerSize = d),
12442          (c._setContainerMeasure = function (t, e) {
12443              if (void 0 !== t) {
12444                  var i = this.size;
12445                  i.isBorderBox && (t += e ? i.paddingLeft + i.paddingRight + i.borderLeftWidth + i.borderRightWidth : i.paddingBottom + i.paddingTop + i.borderTopWidth + i.borderBottomWidth),
12446                      (t = Math.max(t, 0)),
12447                      (this.element.style[e ? "width" : "height"] = t + "px");
12448              }
12449          }),
12450          (c._emitCompleteOnItems = function (t, e) {
12451              function i() {
12452                  n.dispatchEvent(t + "Complete", null, [e]);
12453              }
12454              function o() {
12455                  r++, r == s && i();
12456              }
12457              var n = this,
12458                  s = e.length;
12459              if (!e || !s) return void i();
12460              var r = 0;
12461              e.forEach(function (e) {
12462                  e.once(t, o);
12463              });
12464          }),
12465          (c.dispatchEvent = function (t, e, i) {
12466              var o = e ? [e].concat(i) : i;
12467              if ((this.emitEvent(t, o), h))
12468                  if (((this.$element = this.$element || h(this.element)), e)) {
12469                      var n = h.Event(e);
12470                      (n.type = t), this.$element.trigger(n, i);
12471                  } else this.$element.trigger(t, i);
12472          }),
12473          (c.ignore = function (t) {
12474              var e = this.getItem(t);
12475              e && (e.isIgnored = !0);
12476          }),
12477          (c.unignore = function (t) {
12478              var e = this.getItem(t);
12479              e && delete e.isIgnored;
12480          }),
12481          (c.stamp = function (t) {
12482              (t = this._find(t)), t && ((this.stamps = this.stamps.concat(t)), t.forEach(this.ignore, this));
12483          }),
12484          (c.unstamp = function (t) {
12485              (t = this._find(t)),
12486                  t &&
12487                      t.forEach(function (t) {
12488                          o.removeFrom(this.stamps, t), this.unignore(t);
12489                      }, this);
12490          }),
12491          (c._find = function (t) {
12492              if (t) return "string" == typeof t && (t = this.element.querySelectorAll(t)), (t = o.makeArray(t));
12493          }),
12494          (c._manageStamps = function () {
12495              this.stamps && this.stamps.length && (this._getBoundingRect
12495(), this.stamps.forEach(this._manageStamp, this));
12496          }),
12497          (c._getBoundingRect = function () {
12498              var t = this.element.getBoundingClientRect(),
12499                  e = this.size;
12500              this._boundingRect = {
12501                  left: t.left + e.paddingLeft + e.borderLeftWidth,
12502                  top: t.top + e.paddingTop + e.borderTopWidth,
12503                  right: t.right - (e.paddingRight + e.borderRightWidth),
12504                  bottom: t.bottom - (e.paddingBottom + e.borderBottomWidth),
12505              };
12506          }),
12507          (c._manageStamp = d),
12508          (c._getElementOffset = function (t) {
12509              var e = t.getBoundingClientRect(),
12510                  o = this._boundingRect,
12511                  n = i(t),
12512                  s = { left: e.left - o.left - n.marginLeft, top: e.top - o.top - n.marginTop, right: o.right - e.right - n.marginRight, bottom: o.bottom - e.bottom - n.marginBottom };
12513              return s;
12514          }),
12515          (c.handleEvent = o.handleEvent),
12516          (c.bindResize = function () {
12517              t.addEventListener("resize", this), (this.isResizeBound = !0);
12518          }),
12519          (c.unbindResize = function () {
12520              t.removeEventListener("resize", this), (this.isResizeBound = !1);
12521          }),
12522          (c.onresize = function () {
12523              this.resize();
12524          }),
12525          o.debounceMethod(s, "onresize", 100),
12526          (c.resize = function () {
12527              this.isResizeBound && this.needsResizeLayout() && this.layout();
12528          }),
12529          (c.needsResizeLayout = function () {
12530              var t = i(this.element),
12531                  e = this.size && t;
12532              return e && t.innerWidth !== this.size.innerWidth;
12533          }),
12534          (c.addItems = function (t) {
12535              var e = this._itemize(t);
12536              return e.length && (this.items = this.items.concat(e)), e;
12537          }),
12538          (c.appended = function (t) {
12539              var e = this.addItems(t);
12540              e.length && (this.layoutItems(e, !0), this.reveal(e));
12541          }),
12542          (c.prepended = function (t) {
12543              var e = this._itemize(t);
12544              if (e.length) {
12545                  var i = this.items.slice(0);
12546                  (this.items = e.concat(i)), this._resetLayout(), this._manageStamps(), this.layoutItems(e, !0), this.reveal(e), this.layoutItems(i);
12547              }
12548          }),
12549          (c.reveal = function (t) {
12550              if ((this._emitCompleteOnItems("reveal", t), t && t.length)) {
12551                  var e = this.updateStagger();
12552                  t.forEach(function (t, i) {
12553                      t.stagger(i * e), t.reveal();
12554                  });
12555              }
12556          }),
12557          (c.hide = function (t) {
12558              if ((this._emitCompleteOnItems("hide", t), t && t.length)) {
12559                  var e = this.updateStagger();
12560                  t.forEach(function (t, i) {
12561                      t.stagger(i * e), t.hide();
12562                  });
12563              }
12564          }),
12565          (c.revealItemElements = function (t) {
12566              var e = this.getItems(t);
12567              this.reveal(e);
12568          }),
12569          (c.hideItemElements = function (t) {
12570              var e = this.getItems(t);
12571              this.hide(e);
12572          }),
12573          (c.getItem = function (t) {
12574              for (var e = 0; e < this.items.length; e++) {
12575                  var i = this.items[e];
12576                  if (i.element == t) return i;
12577              }
12578          }),
12579          (c.getItems = function (t) {
12580              t = o.makeArray(t);
12581              var e = [];
12582              return (
12583                  t.forEach(function (t) {
12584                      var i = this.getItem(t);
12585                      i && e.push(i);
12586                  }, this),
12587                  e
12588              );
12589          }),
12590          (c.remove = function (t) {
12591              var e = this.getItems(t);
12592              this._emitCompleteOnItems("remove", e),
12593                  e &&
12594                      e.length &&
12595                      e.forEach(function (t) {
12596                          t.remove(), o.removeFrom(this.items, t);
12597                      }, this);
12598          }),
12599          (c.destroy = function () {
12600              var t = this.element.style;
12601              (t.height = ""),
12602                  (t.position = ""),
12603                  (t.width = ""),
12604                  this.items.forEach(function (t) {
12605                      t.destroy();
12606                  }),
12607                  this.unbindResize();
12608              var e = this.element.outlayerGUID;
12609              delete f[e], delete this.element.outlayerGUID, h && h.removeData(this.element, this.constructor.namespace);
12610          }),
12611          (s.data = function (t) {
12612              t = o.getQueryElement(t);
12613              var e = t && t.outlayerGUID;
12614              return e && f[e];
12615          }),
12616          (s.create = function (t, e) {
12617              var i = r(s);
12618              return (
12619                  (i.defaults = o.extend({}, s.defaults)),
12620                  o.extend(i.defaults, e),
12621                  (i.compatOptions = o.extend({}, s.compatOptions)),
12622                  (i.namespace = t),
12623                  (i.data = s.data),
12624                  (i.Item = r(n)),
12625                  o.htmlInit(i, t),
12626                  h && h.bridget && h.bridget(t, i),
12627                  i
12628              );
12629          });
12630      var m = { ms: 1, s: 1e3 };
12631      return (s.Item = n), s;
12632  }),
12633  (function (t, e) {
12634      "function" == typeof define && define.amd
12635          ? define("isotope/js/item", ["outlayer/outlayer"], e)
12636          : "object" == typeof module && module.exports
12637          ? (module.exports = e(require("outlayer")))
12638          : ((t.Isotope = t.Isotope || {}), (t.Isotope.Item = e(t.Outlayer)));
12639  })(window, function (t) {
12640      "use strict";
12641      function e() {
12642          t.Item.apply(this, arguments);
12643      }
12644      var i = (e.prototype = Object.create(t.Item.prototype)),
12645          o = i._create;
12646      (i._create = function () {
12647          (this.id = this.layout.itemGUID++), o.call(this), (this.sortData = {});
12648      }),
12649          (i.updateSortData = function () {
12650              if (!this.isIgnored) {
12651                  (this.sortData.id = this.id), (this.sortData["original-order"] = this.id), (this.sortData.random = Math.random());
12652                  var t = this.layout.options.getSortData,
12653                      e = this.layout._sorters;
12654                  for (var i in t) {
12655                      var o = e[i];
12656                      this.sortData[i] = o(this.element, this);
12657                  }
12658              }
12659          });
12660      var n = i.destroy;
12661      return (
12662          (i.destroy = function () {
12663              n.apply(this, arguments), this.css({ display: "" });
12664          }),
12665          e
12666      );
12667  }),
12668  (function (t, e) {
12669      "function" == typeof define && define.amd
12670          ? define("isotope/js/layout-mode", ["get-size/get-size", "outlayer/outlayer"], e)
12671          : "object" == typeof module && module.exports
12672          ? (module.exports = e(require("get-size"), require("outlayer")))
12673          : ((t.Isotope = t.Isotope || {}), (t.Isotope.LayoutMode = e(t.getSize, t.Outlayer)));
12674  })(window, function (t, e) {
12675      "use strict";
12676      function i(t) {
12677          (this.isotope = t), t && ((this.options = t.options[this.namespace]), (this.element = t.element), (this.items = t.filteredItems), (this.size = t.size));
12678      }
12679      var o = i.prototype,
12680          n = ["_resetLayout", "_getItemLayoutPosition", "_manageStamp", "_getContainerSize", "_getElementOffset", "needsResizeLayout", "_getOption"];
12681      return (
12682          n.forEach(function (t) {
12683              o[t] = function () {
12684                  return e.prototype[t].apply(this.isotope, arguments);
12685              };
12686          }),
12687          (o.needsVerticalResizeLayout = function () {
12688              var e = t(this.isotope.element),
12689                  i = this.isotope.size && e;
12690              return i && e.innerHeight != this.isotope.size.innerHeight;
12691          }),
12692          (o._getMeasurement = function () {
12693              this.isotope._getMeasurement.apply(this, arguments);
12694          }),
12695          (o.getColumnWidth = function () {
12696              this.getSegmentSize("column", "Width");
12697          }),
12698          (o.getRowHeight = function () {
12699              this.getSegmentSize("row", "Height");
12700          }),
12701          (o.getSegmentSize = function (t, e) {
12702              var i = t + e,
12703                  o = "outer" + e;
12704              if ((this._getMeasurement(i, o), !this[i])) {
12705                  var n = this.getFirstItemSize();
12706                  this[i] = (n && n[o]) || this.isotope.size["inner" + e];
12707              }
12708          }),
12709          (o.getFirstItemSize = function () {
12710              var e = this.isotope.filteredItems[0];
12711              return e && e.element && t(e.element);
12712          }),
12713          (o.layout = function () {
12714              this.isotope.layout.apply(this.isotope, arguments);
12715          }),
12716          (o.getSize = function () {
12717              this.isotope.getSize(), (this.size = this.isotope.size);
12718          }),
12719          (i.modes = {}),
12720          (i.create = function (t, e) {
12721              function n() {
12722                  i.apply(this, arguments);
12723              }
12724              return (n.prototype = Object.create(o)), (n.prototype.constructor = n), e && (n.options = e), (n.prototype.namespace = t), (i.modes[t] = n), n;
12725          }),
12726          i
12727      );
12728  }),
12729  (function (t, e) {
12730      "function" == typeof define && define.amd
12731          ? define("masonry/masonry", ["outlayer/outlayer", "get-size/get-size"], e)
12732          : "object" == typeof module && module.exports
12733          ? (module.exports = e(require("outlayer"), require("get-size")))
12734          : (t.Masonry = e(t.Outlayer, t.getSize));
12735  })(window, function (t, e) {
12736      var i = t.create("masonry");
12737      i.compatOptions.fitWidth = "isFitWidth";
12738      var o = i.prototype;
12739      return (
12740          (o._resetLayout = function () {
12741              this.getSize(), this._getMeasurement("columnWidth", "outerWidth"), this._getMeasurement("gutter", "outerWidth"), this.measureColumns(), (this.colYs = []);
12742              for (var t = 0; t < this.cols; t++) this.colYs.push(0);
12743              (this.maxY = 0), (this.horizontalColIndex = 0);
12744          }),
12745          (o.measureColumns = function () {
12746              if ((this.getContainerWidth(), !this.columnWidth)) {
12747                  var t = this.items[0],
12748                      i = t && t.element;
12749                  this.columnWidth = (i && e(i).outerWidth) || this.containerWidth;
12750              }
12751              var o = (this.columnWidth += this.gutter),
12752                  n = this.containerWidth + this.gutter,
12753                  s = n / o,
12754                  r = o - (n % o),
12755                  a = r && r < 1 ? "round" : "floor";
12756              (s = Math[a](s)), (this.cols = Math.max(s, 1));
12757          }),
12758          (o.getContainerWidth = function () {
12759              var t = this._getOption("fitWidth"),
12760                  i = t ? this.element.parentNode : this.element,
12761                  o = e(i);
12762              this.containerWidth = o && o.innerWidth;
12763          }),
12764          (o._getItemLayoutPosition = function (t) {
12765              t.getSize();
12766              var e = t.size.outerWidth % this.columnWidth,
12767                  i = e && e < 1 ? "round" : "ceil",
12768                  o = Math[i](t.size.outerWidth / this.columnWidth);
12769              o = Math.min(o, this.cols);
12770              for (
12771                  var n = this.options.horizontalOrder ? "_getHorizontalColPosition" : "_getTopColPosition", s = this[n](o, t), r = { x: this.columnWidth * s.col, y: s.y }, a = s.y + t.size.outerHeight, u = o + s.col, h = s.col;
12772                  h < u;
12773                  h++
12774              )
12775                  this.colYs[h] = a;
12776              return r;
12777          }),
12778          (o._getTopColPosition = function (t) {
12779              var e = this._getTopColGroup(t),
12780                  i = Math.min.apply(Math, e);
12781              return { col: e.indexOf(i), y: i };
12782          }),
12783          (o._getTopColGroup = function (t) {
12784              if (t < 2) return this.colYs;
12785              for (var e = [], i = this.cols + 1 - t, o = 0; o < i; o++) e[o] = this._getColGroupY(o, t);
12786              return e;
12787          }),
12788          (o._getColGroupY = function (t, e) {
12789              if (e < 2) return this.colYs[t];
12790              var i = this.colYs.slice(t, t + e);
12791              return Math.max.apply(Math, i);
12792          }),
12793          (o._getHorizontalColPosition = function (t, e) {
12794              var i = this.horizontalColIndex % this.cols,
12795                  o = t > 1 && i + t > this.cols;
12796              i = o ? 0 : i;
12797              var n = e.size.outerWidth && e.size.outerHeight;
12798              return (this.horizontalColIndex = n ? i + t : this.horizontalColIndex), { col: i, y: this._getColGroupY(i, t) };
12799          }),
12800          (o._manageStamp = function (t) {
12801              var i = e(t),
12802                  o = this._getElementOffset(t),
12803                  n = this._getOption("originLeft"),
12804                  s = n ? o.left : o.right,
12805                  r = s + i.outerWidth,
12806                  a = Math.floor(s / this.columnWidth);
12807              a = Math.max(0, a);
12808              var u = Math.floor(r / this.columnWidth);
12809              (u -= r % this.columnWidth ? 0 : 1), (u = Math.min(this.cols - 1, u));
12810              for (var h = this._getOption("originTop"), d = (h ? o.top : o.bottom) + i.outerHeight, l = a; l <= u; l++) this.colYs[l] = Math.max(d, this.colYs[l]);
12811          }),
12812          (o._getContainerSize = function () {
12813              this.maxY = Math.max.apply(Math, this.colYs);
12814              var t = { height: this.maxY };
12815              return this._getOption("fitWidth") && (t.width = this._getContainerFitWidth()), t;
12816          }),
12817          (o._getContainerFitWidth = function () {
12818              for (var t = 0, e = this.cols; --e && 0 === this.colYs[e]; ) t++;
12819              return (this.cols - t) * this.columnWidth - this.gutter;
12820          }),
12821          (o.needsResizeLayout = function () {
12822              var t = this.containerWidth;
12823              return this.getContainerWidth(), t != this.containerWidth;
12824          }),
12825          i
12826      );
12827  }),
12828  (function (t, e) {
12829      "function" == typeof define && define.amd
12830          ? define("isotope/js/layout-modes/masonry", ["../layout-mode", "masonry/masonry"], e)
12831          : "object" == typeof module && module.exports
12832          ? (module.exports = e(require("../layout-mode"), require("masonry-layout")))
12833          : e(t.Isotope.LayoutMode, t.Masonry);
12834  })(window, function (t, e) {
12835      "use strict";
12836      var i = t.create("masonry"),
12837          o = i.prototype,
12838          n = { _getElementOffset: !0, layout: !0, _getMeasurement: !0 };
12839      for (var s in e.prototype) n[s] || (o[s] = e.prototype[s]);
12840      var r = o.measureColumns;
12841      o.measureColumns = function () {
12842          (this.items = this.isotope.filteredItems), r.call(this);
12843      };
12844      var a = o._getOption;
12845      return (
12846          (o._getOption = function (t) {
12847              return "fitWidth" == t ? (void 0 !== this.options.isFitWidth ? this.options.isFitWidth : this.options.fitWidth) : a.apply(this.isotope, arguments);
12848          }),
12849          i
12850      );
12851  }),
12852  (function (t, e) {
12853      "function" == typeof define && define.amd ? define("isotope/js/layout-modes/fit-rows", ["../layout-mode"], e) : "object" == typeof exports ? (module.exports = e(require("../layout-mode"))) : e(t.Isotope.LayoutMode);
12854  })(window, function (t) {
12855      "use strict";
12856      var e = t.create("fitRows"),
12857          i = e.prototype;
12858      return (
12859          (i._resetLayout = function () {
12860              (this.x = 0), (this.y = 0), (this.maxY = 0), this._getMeasurement("gutter", "outerWidth");
12861          }),
12862          (i._getItemLayoutPosition = function (t) {
12863              t.getSize();
12864              var e = t.size.outerWidth + this.gutter,
12865                  i = this.isotope.size.innerWidth + this.gutter;
12866              0 !== this.x && e + this.x > i && ((this.x = 0), (this.y = this.maxY));
12867              var o = { x: this.x, y: this.y };
12868              return (this.maxY = Math.max(this.maxY, this.y + t.size.outerHeight)), (this.x += e), o;
12869          }),
12870          (i._getContainerSize = function () {
12871              return { height: this.maxY };
12872          }),
12873          e
12874      );
12875  }),
12876  (function (t, e) {
12877      "function" == typeof define && define.amd ? define("isotope/js/layout-modes/vertical", ["../layout-mode"], e) : "object" == typeof module && module.exports ? (module.exports = e(require("../layout-mode"))) : e(t.Isotope.LayoutMode);
12878  })(window, function (t) {
12879      "use strict";
12880      var e = t.create("vertical", { horizontalAlignment: 0 }),
12881          i = e.prototype;
12882      return (
12883          (i._resetLayout = function () {
12884              this.y = 0;
12885          }),
12886          (i._getItemLayoutPosition = function (t) {
12887              t.getSize();
12888              var e = (this.isotope.size.innerWidth - t.size.outerWidth) * this.options.horizontalAlignment,
12889                  i = this.y;
12890              return (this.y += t.size.outerHeight), { x: e, y: i };
12891          }),
12892          (i._getContainerSize = function () {
12893              return { height: this.y };
12894          }),
12895          e
12896      );
12897  }),
12898  (function (t, e) {
12899      "function" == typeof define && define.amd
12900          ? define([
12901                "outlayer/outlayer",
12902                "get-size/get-size",
12903                "desandro-matches-selector/matches-selector",
12904                "fizzy-ui-utils/utils",
12905                "isotope/js/item",
12906                "isotope/js/layout-mode",
12907                "isotope/js/layout-modes/masonry",
12908                "isotope/js/layout-modes/fit-rows",
12909                "isotope/js/layout-modes/vertical",
12910            ], function (i, o, n, s, r, a) {
12911                return e(t, i, o, n, s, r, a);
12912            })
12913          : "object" == typeof module && module.exports
12914          ? (module.exports = e(
12915                t,
12916                require("outlayer"),
12917                require("get-size"),
12918                require("desandro-matches-selector"),
12919                require("fizzy-ui-utils"),
12920                require("isotope/js/item"),
12921                require("isotope/js/layout-mode"),
12922                require("isotope/js/layout-modes/masonry"),
12923                require("isotope/js/layout-modes/fit-rows"),
12924                require("isotope/js/layout-modes/vertical")
12925            ))
12926          : (t.Isotope = e(t, t.Outlayer, t.getSize, t.matchesSelector, t.fizzyUIUtils, t.Isotope.Item, t.Isotope.LayoutMode));
12927  })(window, function (t, e, i, o, n, s, r) {
12928      function a(t, e) {
12929          return function (i, o) {
12930              for (var n = 0; n < t.length; n++) {
12931                  var s = t[n],
12932                      r = i.sortData[s],
12933                      a = o.sortData[s];
12934                  if (r > a || r < a) {
12935                      var u = void 0 !== e[s] ? e[s] : e,
12936                          h = u ? 1 : -1;
12937                      return (r > a ? 1 : -1) * h;
12938                  }
12939              }
12940              return 0;
12941          };
12942      }
12943      var u = t.jQuery,
12944          h = String.prototype.trim
12945              ? function (t) {
12946                    return t.trim();
12947                }
12948              : function (t) {
12949                    return t.replace(/^\s+|\s+$/g, "");
12950                },
12951          d = e.create("isotope", { layoutMode: "masonry", isJQueryFiltering: !0, sortAscending: !0 });
12952      (d.Item = s), (d.LayoutMode = r);
12953      var l = d.prototype;
12954      (l._create = function () {
12955          (this.itemGUID = 0), (this._sorters = {}), this._getSorters(), e.prototype._create.call(this), (this.modes = {}), (this.filteredItems = this.items), (this.sortHistory = ["original-order"]);
12956          for (var t in r.modes) this._initLayoutMode(t);
12957      }),
12958          (l.reloadItems = function () {
12959              (this.itemGUID = 0), e.prototype.reloadItems.call(this);
12960          }),
12961          (l._itemize = function () {
12962              for (var t = e.prototype._itemize.apply(this, arguments), i = 0; i < t.length; i++) {
12963                  var o = t[i];
12964                  o.id = this.itemGUID++;
12965              }
12966              return this._updateItemsSortData(t), t;
12967          }),
12968          (l._initLayoutMode = function (t) {
12969              var e = r.modes[t],
12970                  i = this.options[t] || {};
12971              (this.options[t] = e.options ? n.extend(e.options, i) : i), (this.modes[t] = new e(this));
12972          }),
12973          (l.layout = function () {
12974              return !this._isLayoutInited && this._getOption("initLayout") ? void this.arrange() : void this._layout();
12975          }),
12976          (l._layout = function () {
12977              var t = this._getIsInstant();
12978              this._resetLayout(), this._manageStamps(), this.layoutItems(this.filteredItems, t), (this._isLayoutInited = !0);
12979          }),
12980          (l.arrange = function (t) {
12981              this.option(t), this._getIsInstant();
12982              var e = this._filter(this.items);
12983              (this.filteredItems = e.matches), this._bindArrangeComplete(), this._isInstant ? this._noTransition(this._hideReveal, [e]) : this._hideReveal(e), this._sort(), this._layout();
12984          }),
12985          (l._init = l.arrange),
12986          (l._hideReveal = function (t) {
12987              this.reveal(t.needReveal), this.hide(t.needHide);
12988          }),
12989          (l._getIsInstant = function () {
12990              var t = this._getOption("layoutInstant"),
12991                  e = void 0 !== t ? t : !this._isLayoutInited;
12992              return (this._isInstant = e), e;
12993          }),
12994          (l._bindArrangeComplete = function () {
12995              function t() {
12996                  e && i && o && n.dispatchEvent("arrangeComplete", null, [n.filteredItems]);
12997              }
12998              var e,
12999                  i,
13000                  o,
13001                  n = this;
13002              this.once("layoutComplete", function () {
13003                  (e = !0), t();
13004              }),
13005                  this.once("hideComplete", function () {
13006                      (i = !0), t();
13007                  }),
13008                  this.once("revealComplete", function () {
13009                      (o = !0), t();
13010                  });
13011          }),
13012          (l._filter = function (t) {
13013              var e = this.options.filter;
13014              e = e || "*";
13015              for (var i = [], o = [], n = [], s = this._getFilterTest(e), r = 0; r < t.length; r++) {
13016                  var a = t[r];
13017                  if (!a.isIgnored) {
13018                      var u = s(a);
13019                      u && i.push(a), u && a.isHidden ? o.push(a) : u || a.isHidden || n.push(a);
13020                  }
13021              }
13022              return { matches: i, needReveal: o, needHide: n };
13023          }),
13024          (l._getFilterTest = function (t) {
13025              return u && this.options.isJQueryFiltering
13026                  ? function (e) {
13027                        return u(e.element).is(t);
13028                    }
13029                  : "function" == typeof t
13030                  ? function (e) {
13031                        return t(e.element);
13032                    }
13033                  : function (e) {
13034                        return o(e.element, t);
13035                    };
13036          }),
13037          (l.updateSortData = function (t) {
13038              var e;
13039              t ? ((t = n.makeArray(t)), (e = this.getItems(t))) : (e = this.items), this._getSorters(), this._updateItemsSortData(e);
13040          }),
13041          (l._getSorters = function () {
13042              var t = this.options.getSortData;
13043              for (var e in t) {
13044                  var i = t[e];
13045                  this._sorters[e] = f(i);
13046              }
13047          }),
13048          (l._updateItemsSortData = function (t) {
13049              for (var e = t && t.length, i = 0; e && i < e; i++) {
13050                  var o = t[i];
13051                  o.updateSortData();
13052              }
13053          });
13054      var f = (function () {
13055          function t(t) {
13056              if ("string" != typeof t) return t;
13057              var i = h(t).split(" "),
13058                  o = i[0],
13059                  n = o.match(/^\[(.+)\]$/),
13060                  s = n && n[1],
13061                  r = e(s, o),
13062                  a = d.sortDataParsers[i[1]];
13063              return (t = a
13064                  ? function (t) {
13065                        return t && a(r(t));
13066                    }
13067                  : function (t) {
13068                        return t && r(t);
13069                    });
13070          }
13071          function e(t, e) {
13072              return t
13073                  ? function (e) {
13074                        return e.getAttribute(t);
13075                    }
13076                  : function (t) {
13077                        var i = t.querySelector(e);
13078                        return i && i.textContent;
13079                    };
13080          }
13081          return t;
13082      })();
13083      (d.sortDataParsers = {
13084          parseInt: function (t) {
13085              return parseInt(t, 10);
13086          },
13087          parseFloat: function (t) {
13088              return parseFloat(t);
13089          },
13090      }),
13091          (l._sort = function () {
13092              if (this.options.sortBy) {
13093                  var t = n.makeArray(this.options.sortBy);
13094                  this._getIsSameSortBy(t) || (this.sortHistory = t.concat(this.sortHistory));
13095                  var e = a(this.sortHistory, this.options.sortAscending);
13096                  this.filteredItems.sort(e);
13097              }
13098          }),
13099          (l._getIsSameSortBy = function (t) {
13100              for (var e = 0; e < t.length; e++) if (t[e] != this.sortHistory[e]) return !1;
13101              return !0;
13102          }),
13103          (l._mode = function () {
13104              var t = this.options.layoutMode,
13105                  e = this.modes[t];
13106              if (!e) throw new Error("No layout mode: " + t);
13107              return (e.options = this.options[t]), e;
13108          }),
13109          (l._resetLayout = function () {
13110              e.prototype._resetLayout.call(this), this._mode()._resetLayout();
13111          }),
13112          (l._getItemLayoutPosition = function (t) {
13113              return this._mode()._getItemLayoutPosition(t);
13114          }),
13115          (l._manageStamp = function (t) {
13116              this._mode()._manageStamp(t);
13117          }),
13118          (l._getContainerSize = function () {
13119              
13119return this._mode()._getContainerSize();
13120          }),
13121          (l.needsResizeLayout = function () {
13122              return this._mode().needsResizeLayout();
13123          }),
13124          (l.appended = function (t) {
13125              var e = this.addItems(t);
13126              if (e.length) {
13127                  var i = this._filterRevealAdded(e);
13128                  this.filteredItems = this.filteredItems.concat(i);
13129              }
13130          }),
13131          (l.prepended = function (t) {
13132              var e = this._itemize(t);
13133              if (e.length) {
13134                  this._resetLayout(), this._manageStamps();
13135                  var i = this._filterRevealAdded(e);
13136                  this.layoutItems(this.filteredItems), (this.filteredItems = i.concat(this.filteredItems)), (this.items = e.concat(this.items));
13137              }
13138          }),
13139          (l._filterRevealAdded = function (t) {
13140              var e = this._filter(t);
13141              return this.hide(e.needHide), this.reveal(e.matches), this.layoutItems(e.matches, !0), e.matches;
13142          }),
13143          (l.insert = function (t) {
13144              var e = this.addItems(t);
13145              if (e.length) {
13146                  var i,
13147                      o,
13148                      n = e.length;
13149                  for (i = 0; i < n; i++) (o = e[i]), this.element.appendChild(o.element);
13150                  var s = this._filter(e).matches;
13151                  for (i = 0; i < n; i++) e[i].isLayoutInstant = !0;
13152                  for (this.arrange(), i = 0; i < n; i++) delete e[i].isLayoutInstant;
13153                  this.reveal(s);
13154              }
13155          });
13156      var c = l.remove;
13157      return (
13158          (l.remove = function (t) {
13159              t = n.makeArray(t);
13160              var e = this.getItems(t);
13161              c.call(this, t);
13162              for (var i = e && e.length, o = 0; i && o < i; o++) {
13163                  var s = e[o];
13164                  n.removeFrom(this.filteredItems, s);
13165              }
13166          }),
13167          (l.shuffle = function () {
13168              for (var t = 0; t < this.items.length; t++) {
13169                  var e = this.items[t];
13170                  e.sortData.random = Math.random();
13171              }
13172              (this.options.sortBy = "random"), this._sort(), this._layout();
13173          }),
13174          (l._noTransition = function (t, e) {
13175              var i = this.options.transitionDuration;
13176              this.options.transitionDuration = 0;
13177              var o = t.apply(this, e);
13178              return (this.options.transitionDuration = i), o;
13179          }),
13180          (l.getFilteredItemElements = function () {
13181              return this.filteredItems.map(function (t) {
13182                  return t.element;
13183              });
13184          }),
13185          d
13186      );
13187  });

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.