Guest User

Untitled

a guest
Dec 5th, 2016
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 361.59 KB | None | 0 0
  1. /*! jQuery v1.11.3 | (c) 2005, 2015 jQuery Foundation, Inc. | jquery.org/license */ ! function (a, b) {
  2. "object" == typeof module && "object" == typeof module.exports ? module.exports = a.document ? b(a, !0) : function (a) {
  3. if (!a.document) throw new Error("jQuery requires a window with a document");
  4. return b(a)
  5. } : b(a)
  6. }("undefined" != typeof window ? window : this, function (a, b) {
  7. var c = [],
  8. d = c.slice,
  9. e = c.concat,
  10. f = c.push,
  11. g = c.indexOf,
  12. h = {},
  13. i = h.toString,
  14. j = h.hasOwnProperty,
  15. k = {},
  16. l = "1.11.3",
  17. m = function (a, b) {
  18. return new m.fn.init(a, b)
  19. },
  20. n = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
  21. o = /^-ms-/,
  22. p = /-([\da-z])/gi,
  23. q = function (a, b) {
  24. return b.toUpperCase()
  25. };
  26. m.fn = m.prototype = {
  27. jquery: l,
  28. constructor: m,
  29. selector: "",
  30. length: 0,
  31. toArray: function () {
  32. return d.call(this)
  33. },
  34. get: function (a) {
  35. return null != a ? 0 > a ? this[a + this.length] : this[a] : d.call(this)
  36. },
  37. pushStack: function (a) {
  38. var b = m.merge(this.constructor(), a);
  39. return b.prevObject = this, b.context = this.context, b
  40. },
  41. each: function (a, b) {
  42. return m.each(this, a, b)
  43. },
  44. map: function (a) {
  45. return this.pushStack(m.map(this, function (b, c) {
  46. return a.call(b, c, b)
  47. }))
  48. },
  49. slice: function () {
  50. return this.pushStack(d.apply(this, arguments))
  51. },
  52. first: function () {
  53. return this.eq(0)
  54. },
  55. last: function () {
  56. return this.eq(-1)
  57. },
  58. eq: function (a) {
  59. var b = this.length,
  60. c = +a + (0 > a ? b : 0);
  61. return this.pushStack(c >= 0 && b > c ? [this[c]] : [])
  62. },
  63. end: function () {
  64. return this.prevObject || this.constructor(null)
  65. },
  66. push: f,
  67. sort: c.sort,
  68. splice: c.splice
  69. }, m.extend = m.fn.extend = function () {
  70. var a, b, c, d, e, f, g = arguments[0] || {},
  71. h = 1,
  72. i = arguments.length,
  73. j = !1;
  74. for ("boolean" == typeof g && (j = g, g = arguments[h] || {}, h++), "object" == typeof g || m.isFunction(g) || (g = {}), h === i && (g = this, h--); i > h; h++)
  75. if (null != (e = arguments[h]))
  76. for (d in e) a = g[d], c = e[d], g !== c && (j && c && (m.isPlainObject(c) || (b = m.isArray(c))) ? (b ? (b = !1, f = a && m.isArray(a) ? a : []) : f = a && m.isPlainObject(a) ? a : {}, g[d] = m.extend(j, f, c)) : void 0 !== c && (g[d] = c));
  77. return g
  78. }, m.extend({
  79. expando: "jQuery" + (l + Math.random()).replace(/\D/g, ""),
  80. isReady: !0,
  81. error: function (a) {
  82. throw new Error(a)
  83. },
  84. noop: function () {},
  85. isFunction: function (a) {
  86. return "function" === m.type(a)
  87. },
  88. isArray: Array.isArray || function (a) {
  89. return "array" === m.type(a)
  90. },
  91. isWindow: function (a) {
  92. return null != a && a == a.window
  93. },
  94. isNumeric: function (a) {
  95. return !m.isArray(a) && a - parseFloat(a) + 1 >= 0
  96. },
  97. isEmptyObject: function (a) {
  98. var b;
  99. for (b in a) return !1;
  100. return !0
  101. },
  102. isPlainObject: function (a) {
  103. var b;
  104. if (!a || "object" !== m.type(a) || a.nodeType || m.isWindow(a)) return !1;
  105. try {
  106. if (a.constructor && !j.call(a, "constructor") && !j.call(a.constructor.prototype, "isPrototypeOf")) return !1
  107. } catch (c) {
  108. return !1
  109. }
  110. if (k.ownLast)
  111. for (b in a) return j.call(a, b);
  112. for (b in a);
  113. return void 0 === b || j.call(a, b)
  114. },
  115. type: function (a) {
  116. return null == a ? a + "" : "object" == typeof a || "function" == typeof a ? h[i.call(a)] || "object" : typeof a
  117. },
  118. globalEval: function (b) {
  119. b && m.trim(b) && (a.execScript || function (b) {
  120. a.eval.call(a, b)
  121. })(b)
  122. },
  123. camelCase: function (a) {
  124. return a.replace(o, "ms-").replace(p, q)
  125. },
  126. nodeName: function (a, b) {
  127. return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase()
  128. },
  129. each: function (a, b, c) {
  130. var d, e = 0,
  131. f = a.length,
  132. g = r(a);
  133. if (c) {
  134. if (g) {
  135. for (; f > e; e++)
  136. if (d = b.apply(a[e], c), d === !1) break
  137. } else
  138. for (e in a)
  139. if (d = b.apply(a[e], c), d === !1) break
  140. } else if (g) {
  141. for (; f > e; e++)
  142. if (d = b.call(a[e], e, a[e]), d === !1) break
  143. } else
  144. for (e in a)
  145. if (d = b.call(a[e], e, a[e]), d === !1) break; return a
  146. },
  147. trim: function (a) {
  148. return null == a ? "" : (a + "").replace(n, "")
  149. },
  150. makeArray: function (a, b) {
  151. var c = b || [];
  152. return null != a && (r(Object(a)) ? m.merge(c, "string" == typeof a ? [a] : a) : f.call(c, a)), c
  153. },
  154. inArray: function (a, b, c) {
  155. var d;
  156. if (b) {
  157. if (g) return g.call(b, a, c);
  158. for (d = b.length, c = c ? 0 > c ? Math.max(0, d + c) : c : 0; d > c; c++)
  159. if (c in b && b[c] === a) return c
  160. }
  161. return -1
  162. },
  163. merge: function (a, b) {
  164. var c = +b.length,
  165. d = 0,
  166. e = a.length;
  167. while (c > d) a[e++] = b[d++];
  168. if (c !== c)
  169. while (void 0 !== b[d]) a[e++] = b[d++];
  170. return a.length = e, a
  171. },
  172. grep: function (a, b, c) {
  173. 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]);
  174. return e
  175. },
  176. map: function (a, b, c) {
  177. var d, f = 0,
  178. g = a.length,
  179. h = r(a),
  180. i = [];
  181. if (h)
  182. for (; g > f; f++) d = b(a[f], f, c), null != d && i.push(d);
  183. else
  184. for (f in a) d = b(a[f], f, c), null != d && i.push(d);
  185. return e.apply([], i)
  186. },
  187. guid: 1,
  188. proxy: function (a, b) {
  189. var c, e, f;
  190. return "string" == typeof b && (f = a[b], b = a, a = f), m.isFunction(a) ? (c = d.call(arguments, 2), e = function () {
  191. return a.apply(b || this, c.concat(d.call(arguments)))
  192. }, e.guid = a.guid = a.guid || m.guid++, e) : void 0
  193. },
  194. now: function () {
  195. return +new Date
  196. },
  197. support: k
  198. }), m.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (a, b) {
  199. h["[object " + b + "]"] = b.toLowerCase()
  200. });
  201.  
  202. function r(a) {
  203. var b = "length" in a && a.length,
  204. c = m.type(a);
  205. return "function" === c || m.isWindow(a) ? !1 : 1 === a.nodeType && b ? !0 : "array" === c || 0 === b || "number" == typeof b && b > 0 && b - 1 in a
  206. }
  207. var s = function (a) {
  208. var b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u = "sizzle" + 1 * new Date,
  209. v = a.document,
  210. w = 0,
  211. x = 0,
  212. y = ha(),
  213. z = ha(),
  214. A = ha(),
  215. B = function (a, b) {
  216. return a === b && (l = !0), 0
  217. },
  218. C = 1 << 31,
  219. D = {}.hasOwnProperty,
  220. E = [],
  221. F = E.pop,
  222. G = E.push,
  223. H = E.push,
  224. I = E.slice,
  225. J = function (a, b) {
  226. for (var c = 0, d = a.length; d > c; c++)
  227. if (a[c] === b) return c;
  228. return -1
  229. },
  230. K = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
  231. L = "[\\x20\\t\\r\\n\\f]",
  232. M = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
  233. N = M.replace("w", "w#"),
  234. O = "\\[" + L + "*(" + M + ")(?:" + L + "*([*^$|!~]?=)" + L + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + N + "))|)" + L + "*\\]",
  235. P = ":(" + M + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + O + ")*)|.*)\\)|)",
  236. Q = new RegExp(L + "+", "g"),
  237. R = new RegExp("^" + L + "+|((?:^|[^\\\\])(?:\\\\.)*)" + L + "+$", "g"),
  238. S = new RegExp("^" + L + "*," + L + "*"),
  239. T = new RegExp("^" + L + "*([>+~]|" + L + ")" + L + "*"),
  240. U = new RegExp("=" + L + "*([^\\]'\"]*?)" + L + "*\\]", "g"),
  241. V = new RegExp(P),
  242. W = new RegExp("^" + N + "$"),
  243. X = {
  244. ID: new RegExp("^#(" + M + ")"),
  245. CLASS: new RegExp("^\\.(" + M + ")"),
  246. TAG: new RegExp("^(" + M.replace("w", "w*") + ")"),
  247. ATTR: new RegExp("^" + O),
  248. PSEUDO: new RegExp("^" + P),
  249. CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + L + "*(even|odd|(([+-]|)(\\d*)n|)" + L + "*(?:([+-]|)" + L + "*(\\d+)|))" + L + "*\\)|)", "i"),
  250. bool: new RegExp("^(?:" + K + ")$", "i"),
  251. needsContext: new RegExp("^" + L + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + L + "*((?:-\\d)?\\d*)" + L + "*\\)|)(?=[^-]|$)", "i")
  252. },
  253. Y = /^(?:input|select|textarea|button)$/i,
  254. Z = /^h\d$/i,
  255. $ = /^[^{]+\{\s*\[native \w/,
  256. _ = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
  257. aa = /[+~]/,
  258. ba = /'|\\/g,
  259. ca = new RegExp("\\\\([\\da-f]{1,6}" + L + "?|(" + L + ")|.)", "ig"),
  260. da = function (a, b, c) {
  261. var d = "0x" + b - 65536;
  262. return d !== d || c ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode(d >> 10 | 55296, 1023 & d | 56320)
  263. },
  264. ea = function () {
  265. m()
  266. };
  267. try {
  268. H.apply(E = I.call(v.childNodes), v.childNodes), E[v.childNodes.length].nodeType
  269. } catch (fa) {
  270. H = {
  271. apply: E.length ? function (a, b) {
  272. G.apply(a, I.call(b))
  273. } : function (a, b) {
  274. var c = a.length,
  275. d = 0;
  276. while (a[c++] = b[d++]);
  277. a.length = c - 1
  278. }
  279. }
  280. }
  281.  
  282. function ga(a, b, d, e) {
  283. var f, h, j, k, l, o, r, s, w, x;
  284. if ((b ? b.ownerDocument || b : v) !== n && m(b), b = b || n, d = d || [], k = b.nodeType, "string" != typeof a || !a || 1 !== k && 9 !== k && 11 !== k) return d;
  285. if (!e && p) {
  286. if (11 !== k && (f = _.exec(a)))
  287. if (j = f[1]) {
  288. if (9 === k) {
  289. if (h = b.getElementById(j), !h || !h.parentNode) return d;
  290. if (h.id === j) return d.push(h), d
  291. } else if (b.ownerDocument && (h = b.ownerDocument.getElementById(j)) && t(b, h) && h.id === j) return d.push(h), d
  292. } else {
  293. if (f[2]) return H.apply(d, b.getElementsByTagName(a)), d;
  294. if ((j = f[3]) && c.getElementsByClassName) return H.apply(d, b.getElementsByClassName(j)), d
  295. }
  296. if (c.qsa && (!q || !q.test(a))) {
  297. if (s = r = u, w = b, x = 1 !== k && a, 1 === k && "object" !== b.nodeName.toLowerCase()) {
  298. o = g(a), (r = b.getAttribute("id")) ? s = r.replace(ba, "\\$&") : b.setAttribute("id", s), s = "[id='" + s + "'] ", l = o.length;
  299. while (l--) o[l] = s + ra(o[l]);
  300. w = aa.test(a) && pa(b.parentNode) || b, x = o.join(",")
  301. }
  302. if (x) try {
  303. return H.apply(d, w.querySelectorAll(x)), d
  304. } catch (y) {} finally {
  305. r || b.removeAttribute("id")
  306. }
  307. }
  308. }
  309. return i(a.replace(R, "$1"), b, d, e)
  310. }
  311.  
  312. function ha() {
  313. var a = [];
  314.  
  315. function b(c, e) {
  316. return a.push(c + " ") > d.cacheLength && delete b[a.shift()], b[c + " "] = e
  317. }
  318. return b
  319. }
  320.  
  321. function ia(a) {
  322. return a[u] = !0, a
  323. }
  324.  
  325. function ja(a) {
  326. var b = n.createElement("div");
  327. try {
  328. return !!a(b)
  329. } catch (c) {
  330. return !1
  331. } finally {
  332. b.parentNode && b.parentNode.removeChild(b), b = null
  333. }
  334. }
  335.  
  336. function ka(a, b) {
  337. var c = a.split("|"),
  338. e = a.length;
  339. while (e--) d.attrHandle[c[e]] = b
  340. }
  341.  
  342. function la(a, b) {
  343. var c = b && a,
  344. d = c && 1 === a.nodeType && 1 === b.nodeType && (~b.sourceIndex || C) - (~a.sourceIndex || C);
  345. if (d) return d;
  346. if (c)
  347. while (c = c.nextSibling)
  348. if (c === b) return -1;
  349. return a ? 1 : -1
  350. }
  351.  
  352. function ma(a) {
  353. return function (b) {
  354. var c = b.nodeName.toLowerCase();
  355. return "input" === c && b.type === a
  356. }
  357. }
  358.  
  359. function na(a) {
  360. return function (b) {
  361. var c = b.nodeName.toLowerCase();
  362. return ("input" === c || "button" === c) && b.type === a
  363. }
  364. }
  365.  
  366. function oa(a) {
  367. return ia(function (b) {
  368. return b = +b, ia(function (c, d) {
  369. var e, f = a([], c.length, b),
  370. g = f.length;
  371. while (g--) c[e = f[g]] && (c[e] = !(d[e] = c[e]))
  372. })
  373. })
  374. }
  375.  
  376. function pa(a) {
  377. return a && "undefined" != typeof a.getElementsByTagName && a
  378. }
  379. c = ga.support = {}, f = ga.isXML = function (a) {
  380. var b = a && (a.ownerDocument || a).documentElement;
  381. return b ? "HTML" !== b.nodeName : !1
  382. }, m = ga.setDocument = function (a) {
  383. var b, e, g = a ? a.ownerDocument || a : v;
  384. return g !== n && 9 === g.nodeType && g.documentElement ? (n = g, o = g.documentElement, e = g.defaultView, e && e !== e.top && (e.addEventListener ? e.addEventListener("unload", ea, !1) : e.attachEvent && e.attachEvent("onunload", ea)), p = !f(g), c.attributes = ja(function (a) {
  385. return a.className = "i", !a.getAttribute("className")
  386. }), c.getElementsByTagName = ja(function (a) {
  387. return a.appendChild(g.createComment("")), !a.getElementsByTagName("*").length
  388. }), c.getElementsByClassName = $.test(g.getElementsByClassName), c.getById = ja(function (a) {
  389. return o.appendChild(a).id = u, !g.getElementsByName || !g.getElementsByName(u).length
  390. }), c.getById ? (d.find.ID = function (a, b) {
  391. if ("undefined" != typeof b.getElementById && p) {
  392. var c = b.getElementById(a);
  393. return c && c.parentNode ? [c] : []
  394. }
  395. }, d.filter.ID = function (a) {
  396. var b = a.replace(ca, da);
  397. return function (a) {
  398. return a.getAttribute("id") === b
  399. }
  400. }) : (delete d.find.ID, d.filter.ID = function (a) {
  401. var b = a.replace(ca, da);
  402. return function (a) {
  403. var c = "undefined" != typeof a.getAttributeNode && a.getAttributeNode("id");
  404. return c && c.value === b
  405. }
  406. }), d.find.TAG = c.getElementsByTagName ? function (a, b) {
  407. return "undefined" != typeof b.getElementsByTagName ? b.getElementsByTagName(a) : c.qsa ? b.querySelectorAll(a) : void 0
  408. } : function (a, b) {
  409. var c, d = [],
  410. e = 0,
  411. f = b.getElementsByTagName(a);
  412. if ("*" === a) {
  413. while (c = f[e++]) 1 === c.nodeType && d.push(c);
  414. return d
  415. }
  416. return f
  417. }, d.find.CLASS = c.getElementsByClassName && function (a, b) {
  418. return p ? b.getElementsByClassName(a) : void 0
  419. }, r = [], q = [], (c.qsa = $.test(g.querySelectorAll)) && (ja(function (a) {
  420. o.appendChild(a).innerHTML = "<a id='" + u + "'></a><select id='" + u + "-\f]' msallowcapture=''><option selected=''></option></select>", a.querySelectorAll("[msallowcapture^='']").length && q.push("[*^$]=" + L + "*(?:''|\"\")"), a.querySelectorAll("[selected]").length || q.push("\\[" + L + "*(?:value|" + K + ")"), a.querySelectorAll("[id~=" + u + "-]").length || q.push("~="), a.querySelectorAll(":checked").length || q.push(":checked"), a.querySelectorAll("a#" + u + "+*").length || q.push(".#.+[+~]")
  421. }), ja(function (a) {
  422. var b = g.createElement("input");
  423. b.setAttribute("type", "hidden"), a.appendChild(b).setAttribute("name", "D"), a.querySelectorAll("[name=d]").length && q.push("name" + L + "*[*^$|!~]?="), a.querySelectorAll(":enabled").length || q.push(":enabled", ":disabled"), a.querySelectorAll("*,:x"), q.push(",.*:")
  424. })), (c.matchesSelector = $.test(s = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.oMatchesSelector || o.msMatchesSelector)) && ja(function (a) {
  425. c.disconnectedMatch = s.call(a, "div"), s.call(a, "[s!='']:x"), r.push("!=", P)
  426. }), q = q.length && new RegExp(q.join("|")), r = r.length && new RegExp(r.join("|")), b = $.test(o.compareDocumentPosition), t = b || $.test(o.contains) ? function (a, b) {
  427. var c = 9 === a.nodeType ? a.documentElement : a,
  428. d = b && b.parentNode;
  429. return a === d || !(!d || 1 !== d.nodeType || !(c.contains ? c.contains(d) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d)))
  430. } : function (a, b) {
  431. if (b)
  432. while (b = b.parentNode)
  433. if (b === a) return !0;
  434. return !1
  435. }, B = b ? function (a, b) {
  436. if (a === b) return l = !0, 0;
  437. var d = !a.compareDocumentPosition - !b.compareDocumentPosition;
  438. return d ? d : (d = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1, 1 & d || !c.sortDetached && b.compareDocumentPosition(a) === d ? a === g || a.ownerDocument === v && t(v, a) ? -1 : b === g || b.ownerDocument === v && t(v, b) ? 1 : k ? J(k, a) - J(k, b) : 0 : 4 & d ? -1 : 1)
  439. } : function (a, b) {
  440. if (a === b) return l = !0, 0;
  441. var c, d = 0,
  442. e = a.parentNode,
  443. f = b.parentNode,
  444. h = [a],
  445. i = [b];
  446. if (!e || !f) return a === g ? -1 : b === g ? 1 : e ? -1 : f ? 1 : k ? J(k, a) - J(k, b) : 0;
  447. if (e === f) return la(a, b);
  448. c = a;
  449. while (c = c.parentNode) h.unshift(c);
  450. c = b;
  451. while (c = c.parentNode) i.unshift(c);
  452. while (h[d] === i[d]) d++;
  453. return d ? la(h[d], i[d]) : h[d] === v ? -1 : i[d] === v ? 1 : 0
  454. }, g) : n
  455. }, ga.matches = function (a, b) {
  456. return ga(a, null, null, b)
  457. }, ga.matchesSelector = function (a, b) {
  458. if ((a.ownerDocument || a) !== n && m(a), b = b.replace(U, "='$1']"), !(!c.matchesSelector || !p || r && r.test(b) || q && q.test(b))) try {
  459. var d = s.call(a, b);
  460. if (d || c.disconnectedMatch || a.document && 11 !== a.document.nodeType) return d
  461. } catch (e) {}
  462. return ga(b, n, null, [a]).length > 0
  463. }, ga.contains = function (a, b) {
  464. return (a.ownerDocument || a) !== n && m(a), t(a, b)
  465. }, ga.attr = function (a, b) {
  466. (a.ownerDocument || a) !== n && m(a);
  467. var e = d.attrHandle[b.toLowerCase()],
  468. f = e && D.call(d.attrHandle, b.toLowerCase()) ? e(a, b, !p) : void 0;
  469. return void 0 !== f ? f : c.attributes || !p ? a.getAttribute(b) : (f = a.getAttributeNode(b)) && f.specified ? f.value : null
  470. }, ga.error = function (a) {
  471. throw new Error("Syntax error, unrecognized expression: " + a)
  472. }, ga.uniqueSort = function (a) {
  473. var b, d = [],
  474. e = 0,
  475. f = 0;
  476. if (l = !c.detectDuplicates, k = !c.sortStable && a.slice(0), a.sort(B), l) {
  477. while (b = a[f++]) b === a[f] && (e = d.push(f));
  478. while (e--) a.splice(d[e], 1)
  479. }
  480. return k = null, a
  481. }, e = ga.getText = function (a) {
  482. var b, c = "",
  483. d = 0,
  484. f = a.nodeType;
  485. if (f) {
  486. if (1 === f || 9 === f || 11 === f) {
  487. if ("string" == typeof a.textContent) return a.textContent;
  488. for (a = a.firstChild; a; a = a.nextSibling) c += e(a)
  489. } else if (3 === f || 4 === f) return a.nodeValue
  490. } else
  491. while (b = a[d++]) c += e(b);
  492. return c
  493. }, d = ga.selectors = {
  494. cacheLength: 50,
  495. createPseudo: ia,
  496. match: X,
  497. attrHandle: {},
  498. find: {},
  499. relative: {
  500. ">": {
  501. dir: "parentNode",
  502. first: !0
  503. },
  504. " ": {
  505. dir: "parentNode"
  506. },
  507. "+": {
  508. dir: "previousSibling",
  509. first: !0
  510. },
  511. "~": {
  512. dir: "previousSibling"
  513. }
  514. },
  515. preFilter: {
  516. ATTR: function (a) {
  517. return a[1] = a[1].replace(ca, da), a[3] = (a[3] || a[4] || a[5] || "").replace(ca, da), "~=" === a[2] && (a[3] = " " + a[3] + " "), a.slice(0, 4)
  518. },
  519. CHILD: function (a) {
  520. return a[1] = a[1].toLowerCase(), "nth" === a[1].slice(0, 3) ? (a[3] || ga.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] && ga.error(a[0]), a
  521. },
  522. PSEUDO: function (a) {
  523. var b, c = !a[6] && a[2];
  524. return X.CHILD.test(a[0]) ? null : (a[3] ? a[2] = a[4] || a[5] || "" : c && V.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))
  525. }
  526. },
  527. filter: {
  528. TAG: function (a) {
  529. var b = a.replace(ca, da).toLowerCase();
  530. return "*" === a ? function () {
  531. return !0
  532. } : function (a) {
  533. return a.nodeName && a.nodeName.toLowerCase() === b
  534. }
  535. },
  536. CLASS: function (a) {
  537. var b = y[a + " "];
  538. return b || (b = new RegExp("(^|" + L + ")" + a + "(" + L + "|$)")) && y(a, function (a) {
  539. return b.test("string" == typeof a.className && a.className || "undefined" != typeof a.getAttribute && a.getAttribute("class") || "")
  540. })
  541. },
  542. ATTR: function (a, b, c) {
  543. return function (d) {
  544. var e = ga.attr(d, a);
  545. return null == e ? "!=" === b : b ? (e += "", "=" === b ? e === c : "!=" === b ? e !== c : "^=" === b ? c && 0 === e.indexOf(c) : "*=" === b ? c && e.indexOf(c) > -1 : "$=" === b ? c && e.slice(-c.length) === c : "~=" === b ? (" " + e.replace(Q, " ") + " ").indexOf(c) > -1 : "|=" === b ? e === c || e.slice(0, c.length + 1) === c + "-" : !1) : !0
  546. }
  547. },
  548. CHILD: function (a, b, c, d, e) {
  549. var f = "nth" !== a.slice(0, 3),
  550. g = "last" !== a.slice(-4),
  551. h = "of-type" === b;
  552. return 1 === d && 0 === e ? function (a) {
  553. return !!a.parentNode
  554. } : function (b, c, i) {
  555. var j, k, l, m, n, o, p = f !== g ? "nextSibling" : "previousSibling",
  556. q = b.parentNode,
  557. r = h && b.nodeName.toLowerCase(),
  558. s = !i && !h;
  559. if (q) {
  560. if (f) {
  561. while (p) {
  562. l = b;
  563. while (l = l[p])
  564. if (h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) return !1;
  565. o = p = "only" === a && !o && "nextSibling"
  566. }
  567. return !0
  568. }
  569. if (o = [g ? q.firstChild : q.lastChild], g && s) {
  570. k = q[u] || (q[u] = {}), j = k[a] || [], n = j[0] === w && j[1], m = j[0] === w && j[2], l = n && q.childNodes[n];
  571. while (l = ++n && l && l[p] || (m = n = 0) || o.pop())
  572. if (1 === l.nodeType && ++m && l === b) {
  573. k[a] = [w, n, m];
  574. break
  575. }
  576. } else if (s && (j = (b[u] || (b[u] = {}))[a]) && j[0] === w) m = j[1];
  577. else
  578. while (l = ++n && l && l[p] || (m = n = 0) || o.pop())
  579. if ((h ? l.nodeName.toLowerCase() === r : 1 === l.nodeType) && ++m && (s && ((l[u] || (l[u] = {}))[a] = [w, m]), l === b)) break; return m -= e, m === d || m % d === 0 && m / d >= 0
  580. }
  581. }
  582. },
  583. PSEUDO: function (a, b) {
  584. var c, e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || ga.error("unsupported pseudo: " + a);
  585. return e[u] ? e(b) : e.length > 1 ? (c = [a, a, "", b], d.setFilters.hasOwnProperty(a.toLowerCase()) ? ia(function (a, c) {
  586. var d, f = e(a, b),
  587. g = f.length;
  588. while (g--) d = J(a, f[g]), a[d] = !(c[d] = f[g])
  589. }) : function (a) {
  590. return e(a, 0, c)
  591. }) : e
  592. }
  593. },
  594. pseudos: {
  595. not: ia(function (a) {
  596. var b = [],
  597. c = [],
  598. d = h(a.replace(R, "$1"));
  599. return d[u] ? ia(function (a, b, c, e) {
  600. var f, g = d(a, null, e, []),
  601. h = a.length;
  602. while (h--)(f = g[h]) && (a[h] = !(b[h] = f))
  603. }) : function (a, e, f) {
  604. return b[0] = a, d(b, null, f, c), b[0] = null, !c.pop()
  605. }
  606. }),
  607. has: ia(function (a) {
  608. return function (b) {
  609. return ga(a, b).length > 0
  610. }
  611. }),
  612. contains: ia(function (a) {
  613. return a = a.replace(ca, da),
  614. function (b) {
  615. return (b.textContent || b.innerText || e(b)).indexOf(a) > -1
  616. }
  617. }),
  618. lang: ia(function (a) {
  619. return W.test(a || "") || ga.error("unsupported lang: " + a), a = a.replace(ca, da).toLowerCase(),
  620. function (b) {
  621. var c;
  622. do
  623. if (c = p ? b.lang : b.getAttribute("xml:lang") || b.getAttribute("lang")) return c = c.toLowerCase(), c === a || 0 === c.indexOf(a + "-");
  624. while ((b = b.parentNode) && 1 === b.nodeType);
  625. return !1
  626. }
  627. }),
  628. target: function (b) {
  629. var c = a.location && a.location.hash;
  630. return c && c.slice(1) === b.id
  631. },
  632. root: function (a) {
  633. return a === o
  634. },
  635. focus: function (a) {
  636. return a === n.activeElement && (!n.hasFocus || n.hasFocus()) && !!(a.type || a.href || ~a.tabIndex)
  637. },
  638. enabled: function (a) {
  639. return a.disabled === !1
  640. },
  641. disabled: function (a) {
  642. return a.disabled === !0
  643. },
  644. checked: function (a) {
  645. var b = a.nodeName.toLowerCase();
  646. return "input" === b && !!a.checked || "option" === b && !!a.selected
  647. },
  648. selected: function (a) {
  649. return a.parentNode && a.parentNode.selectedIndex, a.selected === !0
  650. },
  651. empty: function (a) {
  652. for (a = a.firstChild; a; a = a.nextSibling)
  653. if (a.nodeType < 6) return !1;
  654. return !0
  655. },
  656. parent: function (a) {
  657. return !d.pseudos.empty(a)
  658. },
  659. header: function (a) {
  660. return Z.test(a.nodeName)
  661. },
  662. input: function (a) {
  663. return Y.test(a.nodeName)
  664. },
  665. button: function (a) {
  666. var b = a.nodeName.toLowerCase();
  667. return "input" === b && "button" === a.type || "button" === b
  668. },
  669. text: function (a) {
  670. var b;
  671. return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase())
  672. },
  673. first: oa(function () {
  674. return [0]
  675. }),
  676. last: oa(function (a, b) {
  677. return [b - 1]
  678. }),
  679. eq: oa(function (a, b, c) {
  680. return [0 > c ? c + b : c]
  681. }),
  682. even: oa(function (a, b) {
  683. for (var c = 0; b > c; c += 2) a.push(c);
  684. return a
  685. }),
  686. odd: oa(function (a, b) {
  687. for (var c = 1; b > c; c += 2) a.push(c);
  688. return a
  689. }),
  690. lt: oa(function (a, b, c) {
  691. for (var d = 0 > c ? c + b : c; --d >= 0;) a.push(d);
  692. return a
  693. }),
  694. gt: oa(function (a, b, c) {
  695. for (var d = 0 > c ? c + b : c; ++d < b;) a.push(d);
  696. return a
  697. })
  698. }
  699. }, d.pseudos.nth = d.pseudos.eq;
  700. for (b in {
  701. radio: !0,
  702. checkbox: !0,
  703. file: !0,
  704. password: !0,
  705. image: !0
  706. }) d.pseudos[b] = ma(b);
  707. for (b in {
  708. submit: !0,
  709. reset: !0
  710. }) d.pseudos[b] = na(b);
  711.  
  712. function qa() {}
  713. qa.prototype = d.filters = d.pseudos, d.setFilters = new qa, g = ga.tokenize = function (a, b) {
  714. var c, e, f, g, h, i, j, k = z[a + " "];
  715. if (k) return b ? 0 : k.slice(0);
  716. h = a, i = [], j = d.preFilter;
  717. while (h) {
  718. (!c || (e = S.exec(h))) && (e && (h = h.slice(e[0].length) || h), i.push(f = [])), c = !1, (e = T.exec(h)) && (c = e.shift(), f.push({
  719. value: c,
  720. type: e[0].replace(R, " ")
  721. }), h = h.slice(c.length));
  722. for (g in d.filter) !(e = X[g].exec(h)) || j[g] && !(e = j[g](e)) || (c = e.shift(), f.push({
  723. value: c,
  724. type: g,
  725. matches: e
  726. }), h = h.slice(c.length));
  727. if (!c) break
  728. }
  729. return b ? h.length : h ? ga.error(a) : z(a, i).slice(0)
  730. };
  731.  
  732. function ra(a) {
  733. for (var b = 0, c = a.length, d = ""; c > b; b++) d += a[b].value;
  734. return d
  735. }
  736.  
  737. function sa(a, b, c) {
  738. var d = b.dir,
  739. e = c && "parentNode" === d,
  740. f = x++;
  741. return b.first ? function (b, c, f) {
  742. while (b = b[d])
  743. if (1 === b.nodeType || e) return a(b, c, f)
  744. } : function (b, c, g) {
  745. var h, i, j = [w, f];
  746. if (g) {
  747. while (b = b[d])
  748. if ((1 === b.nodeType || e) && a(b, c, g)) return !0
  749. } else
  750. while (b = b[d])
  751. if (1 === b.nodeType || e) {
  752. if (i = b[u] || (b[u] = {}), (h = i[d]) && h[0] === w && h[1] === f) return j[2] = h[2];
  753. if (i[d] = j, j[2] = a(b, c, g)) return !0
  754. }
  755. }
  756. }
  757.  
  758. function ta(a) {
  759. return a.length > 1 ? function (b, c, d) {
  760. var e = a.length;
  761. while (e--)
  762. if (!a[e](b, c, d)) return !1;
  763. return !0
  764. } : a[0]
  765. }
  766.  
  767. function ua(a, b, c) {
  768. for (var d = 0, e = b.length; e > d; d++) ga(a, b[d], c);
  769. return c
  770. }
  771.  
  772. function va(a, b, c, d, e) {
  773. 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));
  774. return g
  775. }
  776.  
  777. function wa(a, b, c, d, e, f) {
  778. return d && !d[u] && (d = wa(d)), e && !e[u] && (e = wa(e, f)), ia(function (f, g, h, i) {
  779. var j, k, l, m = [],
  780. n = [],
  781. o = g.length,
  782. p = f || ua(b || "*", h.nodeType ? [h] : h, []),
  783. q = !a || !f && b ? p : va(p, m, a, h, i),
  784. r = c ? e || (f ? a : o || d) ? [] : g : q;
  785. if (c && c(q, r, h, i), d) {
  786. j = va(r, n), d(j, [], h, i), k = j.length;
  787. while (k--)(l = j[k]) && (r[n[k]] = !(q[n[k]] = l))
  788. }
  789. if (f) {
  790. if (e || a) {
  791. if (e) {
  792. j = [], k = r.length;
  793. while (k--)(l = r[k]) && j.push(q[k] = l);
  794. e(null, r = [], j, i)
  795. }
  796. k = r.length;
  797. while (k--)(l = r[k]) && (j = e ? J(f, l) : m[k]) > -1 && (f[j] = !(g[j] = l))
  798. }
  799. } else r = va(r === g ? r.splice(o, r.length) : r), e ? e(null, g, r, i) : H.apply(g, r)
  800. })
  801. }
  802.  
  803. function xa(a) {
  804. for (var b, c, e, f = a.length, g = d.relative[a[0].type], h = g || d.relative[" "], i = g ? 1 : 0, k = sa(function (a) {
  805. return a === b
  806. }, h, !0), l = sa(function (a) {
  807. return J(b, a) > -1
  808. }, h, !0), m = [function (a, c, d) {
  809. var e = !g && (d || c !== j) || ((b = c).nodeType ? k(a, c, d) : l(a, c, d));
  810. return b = null, e
  811. }]; f > i; i++)
  812. if (c = d.relative[a[i].type]) m = [sa(ta(m), c)];
  813. else {
  814. if (c = d.filter[a[i].type].apply(null, a[i].matches), c[u]) {
  815. for (e = ++i; f > e; e++)
  816. if (d.relative[a[e].type]) break;
  817. return wa(i > 1 && ta(m), i > 1 && ra(a.slice(0, i - 1).concat({
  818. value: " " === a[i - 2].type ? "*" : ""
  819. })).replace(R, "$1"), c, e > i && xa(a.slice(i, e)), f > e && xa(a = a.slice(e)), f > e && ra(a))
  820. }
  821. m.push(c)
  822. }
  823. return ta(m)
  824. }
  825.  
  826. function ya(a, b) {
  827. var c = b.length > 0,
  828. e = a.length > 0,
  829. f = function (f, g, h, i, k) {
  830. var l, m, o, p = 0,
  831. q = "0",
  832. r = f && [],
  833. s = [],
  834. t = j,
  835. u = f || e && d.find.TAG("*", k),
  836. v = w += null == t ? 1 : Math.random() || .1,
  837. x = u.length;
  838. for (k && (j = g !== n && g); q !== x && null != (l = u[q]); q++) {
  839. if (e && l) {
  840. m = 0;
  841. while (o = a[m++])
  842. if (o(l, g, h)) {
  843. i.push(l);
  844. break
  845. }
  846. k && (w = v)
  847. }
  848. c && ((l = !o && l) && p--, f && r.push(l))
  849. }
  850. if (p += q, c && q !== p) {
  851. m = 0;
  852. while (o = b[m++]) o(r, s, g, h);
  853. if (f) {
  854. if (p > 0)
  855. while (q--) r[q] || s[q] || (s[q] = F.call(i));
  856. s = va(s)
  857. }
  858. H.apply(i, s), k && !f && s.length > 0 && p + b.length > 1 && ga.uniqueSort(i)
  859. }
  860. return k && (w = v, j = t), r
  861. };
  862. return c ? ia(f) : f
  863. }
  864. return h = ga.compile = function (a, b) {
  865. var c, d = [],
  866. e = [],
  867. f = A[a + " "];
  868. if (!f) {
  869. b || (b = g(a)), c = b.length;
  870. while (c--) f = xa(b[c]), f[u] ? d.push(f) : e.push(f);
  871. f = A(a, ya(e, d)), f.selector = a
  872. }
  873. return f
  874. }, i = ga.select = function (a, b, e, f) {
  875. var i, j, k, l, m, n = "function" == typeof a && a,
  876. o = !f && g(a = n.selector || a);
  877. if (e = e || [], 1 === o.length) {
  878. 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]) {
  879. if (b = (d.find.ID(k.matches[0].replace(ca, da), b) || [])[0], !b) return e;
  880. n && (b = b.parentNode), a = a.slice(j.shift().value.length)
  881. }
  882. i = X.needsContext.test(a) ? 0 : j.length;
  883. while (i--) {
  884. if (k = j[i], d.relative[l = k.type]) break;
  885. if ((m = d.find[l]) && (f = m(k.matches[0].replace(ca, da), aa.test(j[0].type) && pa(b.parentNode) || b))) {
  886. if (j.splice(i, 1), a = f.length && ra(j), !a) return H.apply(e, f), e;
  887. break
  888. }
  889. }
  890. }
  891. return (n || h(a, o))(f, b, !p, e, aa.test(a) && pa(b.parentNode) || b), e
  892. }, c.sortStable = u.split("").sort(B).join("") === u, c.detectDuplicates = !!l, m(), c.sortDetached = ja(function (a) {
  893. return 1 & a.compareDocumentPosition(n.createElement("div"))
  894. }), ja(function (a) {
  895. return a.innerHTML = "<a href='#'></a>", "#" === a.firstChild.getAttribute("href")
  896. }) || ka("type|href|height|width", function (a, b, c) {
  897. return c ? void 0 : a.getAttribute(b, "type" === b.toLowerCase() ? 1 : 2)
  898. }), c.attributes && ja(function (a) {
  899. return a.innerHTML = "<input/>", a.firstChild.setAttribute("value", ""), "" === a.firstChild.getAttribute("value")
  900. }) || ka("value", function (a, b, c) {
  901. return c || "input" !== a.nodeName.toLowerCase() ? void 0 : a.defaultValue
  902. }), ja(function (a) {
  903. return null == a.getAttribute("disabled")
  904. }) || ka(K, function (a, b, c) {
  905. var d;
  906. return c ? void 0 : a[b] === !0 ? b.toLowerCase() : (d = a.getAttributeNode(b)) && d.specified ? d.value : null
  907. }), ga
  908. }(a);
  909. m.find = s, m.expr = s.selectors, m.expr[":"] = m.expr.pseudos, m.unique = s.uniqueSort, m.text = s.getText, m.isXMLDoc = s.isXML, m.contains = s.contains;
  910. var t = m.expr.match.needsContext,
  911. u = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
  912. v = /^.[^:#\[\.,]*$/;
  913.  
  914. function w(a, b, c) {
  915. if (m.isFunction(b)) return m.grep(a, function (a, d) {
  916. return !!b.call(a, d, a) !== c
  917. });
  918. if (b.nodeType) return m.grep(a, function (a) {
  919. return a === b !== c
  920. });
  921. if ("string" == typeof b) {
  922. if (v.test(b)) return m.filter(b, a, c);
  923. b = m.filter(b, a)
  924. }
  925. return m.grep(a, function (a) {
  926. return m.inArray(a, b) >= 0 !== c
  927. })
  928. }
  929. m.filter = function (a, b, c) {
  930. var d = b[0];
  931. return c && (a = ":not(" + a + ")"), 1 === b.length && 1 === d.nodeType ? m.find.matchesSelector(d, a) ? [d] : [] : m.find.matches(a, m.grep(b, function (a) {
  932. return 1 === a.nodeType
  933. }))
  934. }, m.fn.extend({
  935. find: function (a) {
  936. var b, c = [],
  937. d = this,
  938. e = d.length;
  939. if ("string" != typeof a) return this.pushStack(m(a).filter(function () {
  940. for (b = 0; e > b; b++)
  941. if (m.contains(d[b], this)) return !0
  942. }));
  943. for (b = 0; e > b; b++) m.find(a, d[b], c);
  944. return c = this.pushStack(e > 1 ? m.unique(c) : c), c.selector = this.selector ? this.selector + " " + a : a, c
  945. },
  946. filter: function (a) {
  947. return this.pushStack(w(this, a || [], !1))
  948. },
  949. not: function (a) {
  950. return this.pushStack(w(this, a || [], !0))
  951. },
  952. is: function (a) {
  953. return !!w(this, "string" == typeof a && t.test(a) ? m(a) : a || [], !1).length
  954. }
  955. });
  956. var x, y = a.document,
  957. z = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
  958. A = m.fn.init = function (a, b) {
  959. var c, d;
  960. if (!a) return this;
  961. if ("string" == typeof a) {
  962. if (c = "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && a.length >= 3 ? [null, a, null] : z.exec(a), !c || !c[1] && b) return !b || b.jquery ? (b || x).find(a) : this.constructor(b).find(a);
  963. if (c[1]) {
  964. if (b = b instanceof m ? b[0] : b, m.merge(this, m.parseHTML(c[1], b && b.nodeType ? b.ownerDocument || b : y, !0)), u.test(c[1]) && m.isPlainObject(b))
  965. for (c in b) m.isFunction(this[c]) ? this[c](b[c]) : this.attr(c, b[c]);
  966. return this
  967. }
  968. if (d = y.getElementById(c[2]), d && d.parentNode) {
  969. if (d.id !== c[2]) return x.find(a);
  970. this.length = 1, this[0] = d
  971. }
  972. return this.context = y, this.selector = a, this
  973. }
  974. return a.nodeType ? (this.context = this[0] = a, this.length = 1, this) : m.isFunction(a) ? "undefined" != typeof x.ready ? x.ready(a) : a(m) : (void 0 !== a.selector && (this.selector = a.selector, this.context = a.context), m.makeArray(a, this))
  975. };
  976. A.prototype = m.fn, x = m(y);
  977. var B = /^(?:parents|prev(?:Until|All))/,
  978. C = {
  979. children: !0,
  980. contents: !0,
  981. next: !0,
  982. prev: !0
  983. };
  984. m.extend({
  985. dir: function (a, b, c) {
  986. var d = [],
  987. e = a[b];
  988. while (e && 9 !== e.nodeType && (void 0 === c || 1 !== e.nodeType || !m(e).is(c))) 1 === e.nodeType && d.push(e), e = e[b];
  989. return d
  990. },
  991. sibling: function (a, b) {
  992. for (var c = []; a; a = a.nextSibling) 1 === a.nodeType && a !== b && c.push(a);
  993. return c
  994. }
  995. }), m.fn.extend({
  996. has: function (a) {
  997. var b, c = m(a, this),
  998. d = c.length;
  999. return this.filter(function () {
  1000. for (b = 0; d > b; b++)
  1001. if (m.contains(this, c[b])) return !0
  1002. })
  1003. },
  1004. closest: function (a, b) {
  1005. for (var c, d = 0, e = this.length, f = [], g = t.test(a) || "string" != typeof a ? m(a, b || this.context) : 0; e > d; d++)
  1006. for (c = this[d]; c && c !== b; c = c.parentNode)
  1007. if (c.nodeType < 11 && (g ? g.index(c) > -1 : 1 === c.nodeType && m.find.matchesSelector(c, a))) {
  1008. f.push(c);
  1009. break
  1010. }
  1011. return this.pushStack(f.length > 1 ? m.unique(f) : f)
  1012. },
  1013. index: function (a) {
  1014. return a ? "string" == typeof a ? m.inArray(this[0], m(a)) : m.inArray(a.jquery ? a[0] : a, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
  1015. },
  1016. add: function (a, b) {
  1017. return this.pushStack(m.unique(m.merge(this.get(), m(a, b))))
  1018. },
  1019. addBack: function (a) {
  1020. return this.add(null == a ? this.prevObject : this.prevObject.filter(a))
  1021. }
  1022. });
  1023.  
  1024. function D(a, b) {
  1025. do a = a[b]; while (a && 1 !== a.nodeType);
  1026. return a
  1027. }
  1028. m.each({
  1029. parent: function (a) {
  1030. var b = a.parentNode;
  1031. return b && 11 !== b.nodeType ? b : null
  1032. },
  1033. parents: function (a) {
  1034. return m.dir(a, "parentNode")
  1035. },
  1036. parentsUntil: function (a, b, c) {
  1037. return m.dir(a, "parentNode", c)
  1038. },
  1039. next: function (a) {
  1040. return D(a, "nextSibling")
  1041. },
  1042. prev: function (a) {
  1043. return D(a, "previousSibling")
  1044. },
  1045. nextAll: function (a) {
  1046. return m.dir(a, "nextSibling")
  1047. },
  1048. prevAll: function (a) {
  1049. return m.dir(a, "previousSibling")
  1050. },
  1051. nextUntil: function (a, b, c) {
  1052. return m.dir(a, "nextSibling", c)
  1053. },
  1054. prevUntil: function (a, b, c) {
  1055. return m.dir(a, "previousSibling", c)
  1056. },
  1057. siblings: function (a) {
  1058. return m.sibling((a.parentNode || {}).firstChild, a)
  1059. },
  1060. children: function (a) {
  1061. return m.sibling(a.firstChild)
  1062. },
  1063. contents: function (a) {
  1064. return m.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : m.merge([], a.childNodes)
  1065. }
  1066. }, function (a, b) {
  1067. m.fn[a] = function (c, d) {
  1068. var e = m.map(this, b, c);
  1069. return "Until" !== a.slice(-5) && (d = c), d && "string" == typeof d && (e = m.filter(d, e)), this.length > 1 && (C[a] || (e = m.unique(e)), B.test(a) && (e = e.reverse())), this.pushStack(e)
  1070. }
  1071. });
  1072. var E = /\S+/g,
  1073. F = {};
  1074.  
  1075. function G(a) {
  1076. var b = F[a] = {};
  1077. return m.each(a.match(E) || [], function (a, c) {
  1078. b[c] = !0
  1079. }), b
  1080. }
  1081. m.Callbacks = function (a) {
  1082. a = "string" == typeof a ? F[a] || G(a) : m.extend({}, a);
  1083. var b, c, d, e, f, g, h = [],
  1084. i = !a.once && [],
  1085. j = function (l) {
  1086. for (c = a.memory && l, d = !0, f = g || 0, g = 0, e = h.length, b = !0; h && e > f; f++)
  1087. if (h[f].apply(l[0], l[1]) === !1 && a.stopOnFalse) {
  1088. c = !1;
  1089. break
  1090. }
  1091. b = !1, h && (i ? i.length && j(i.shift()) : c ? h = [] : k.disable())
  1092. },
  1093. k = {
  1094. add: function () {
  1095. if (h) {
  1096. var d = h.length;
  1097. ! function f(b) {
  1098. m.each(b, function (b, c) {
  1099. var d = m.type(c);
  1100. "function" === d ? a.unique && k.has(c) || h.push(c) : c && c.length && "string" !== d && f(c)
  1101. })
  1102. }(arguments), b ? e = h.length : c && (g = d, j(c))
  1103. }
  1104. return this
  1105. },
  1106. remove: function () {
  1107. return h && m.each(arguments, function (a, c) {
  1108. var d;
  1109. while ((d = m.inArray(c, h, d)) > -1) h.splice(d, 1), b && (e >= d && e--, f >= d && f--)
  1110. }), this
  1111. },
  1112. has: function (a) {
  1113. return a ? m.inArray(a, h) > -1 : !(!h || !h.length)
  1114. },
  1115. empty: function () {
  1116. return h = [], e = 0, this
  1117. },
  1118. disable: function () {
  1119. return h = i = c = void 0, this
  1120. },
  1121. disabled: function () {
  1122. return !h
  1123. },
  1124. lock: function () {
  1125. return i = void 0, c || k.disable(), this
  1126. },
  1127. locked: function () {
  1128. return !i
  1129. },
  1130. fireWith: function (a, c) {
  1131. return !h || d && !i || (c = c || [], c = [a, c.slice ? c.slice() : c], b ? i.push(c) : j(c)), this
  1132. },
  1133. fire: function () {
  1134. return k.fireWith(this, arguments), this
  1135. },
  1136. fired: function () {
  1137. return !!d
  1138. }
  1139. };
  1140. return k
  1141. }, m.extend({
  1142. Deferred: function (a) {
  1143. var b = [["resolve", "done", m.Callbacks("once memory"), "resolved"], ["reject", "fail", m.Callbacks("once memory"), "rejected"], ["notify", "progress", m.Callbacks("memory")]],
  1144. c = "pending",
  1145. d = {
  1146. state: function () {
  1147. return c
  1148. },
  1149. always: function () {
  1150. return e.done(arguments).fail(arguments), this
  1151. },
  1152. then: function () {
  1153. var a = arguments;
  1154. return m.Deferred(function (c) {
  1155. m.each(b, function (b, f) {
  1156. var g = m.isFunction(a[b]) && a[b];
  1157. e[f[1]](function () {
  1158. var a = g && g.apply(this, arguments);
  1159. a && m.isFunction(a.promise) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[f[0] + "With"](this === d ? c.promise() : this, g ? [a] : arguments)
  1160. })
  1161. }), a = null
  1162. }).promise()
  1163. },
  1164. promise: function (a) {
  1165. return null != a ? m.extend(a, d) : d
  1166. }
  1167. },
  1168. e = {};
  1169. return d.pipe = d.then, m.each(b, function (a, f) {
  1170. var g = f[2],
  1171. h = f[3];
  1172. d[f[1]] = g.add, h && g.add(function () {
  1173. c = h
  1174. }, b[1 ^ a][2].disable, b[2][2].lock), e[f[0]] = function () {
  1175. return e[f[0] + "With"](this === e ? d : this, arguments), this
  1176. }, e[f[0] + "With"] = g.fireWith
  1177. }), d.promise(e), a && a.call(e, e), e
  1178. },
  1179. when: function (a) {
  1180. var b = 0,
  1181. c = d.call(arguments),
  1182. e = c.length,
  1183. f = 1 !== e || a && m.isFunction(a.promise) ? e : 0,
  1184. g = 1 === f ? a : m.Deferred(),
  1185. h = function (a, b, c) {
  1186. return function (e) {
  1187. b[a] = this, c[a] = arguments.length > 1 ? d.call(arguments) : e, c === i ? g.notifyWith(b, c) : --f || g.resolveWith(b, c)
  1188. }
  1189. },
  1190. i, j, k;
  1191. if (e > 1)
  1192. for (i = new Array(e), j = new Array(e), k = new Array(e); e > b; b++) c[b] && m.isFunction(c[b].promise) ? c[b].promise().done(h(b, k, c)).fail(g.reject).progress(h(b, j, i)) : --f;
  1193. return f || g.resolveWith(k, c), g.promise()
  1194. }
  1195. });
  1196. var H;
  1197. m.fn.ready = function (a) {
  1198. return m.ready.promise().done(a), this
  1199. }, m.extend({
  1200. isReady: !1,
  1201. readyWait: 1,
  1202. holdReady: function (a) {
  1203. a ? m.readyWait++ : m.ready(!0)
  1204. },
  1205. ready: function (a) {
  1206. if (a === !0 ? !--m.readyWait : !m.isReady) {
  1207. if (!y.body) return setTimeout(m.ready);
  1208. m.isReady = !0, a !== !0 && --m.readyWait > 0 || (H.resolveWith(y, [m]), m.fn.triggerHandler && (m(y).triggerHandler("ready"), m(y).off("ready")))
  1209. }
  1210. }
  1211. });
  1212.  
  1213. function I() {
  1214. y.addEventListener ? (y.removeEventListener("DOMContentLoaded", J, !1), a.removeEventListener("load", J, !1)) : (y.detachEvent("onreadystatechange", J), a.detachEvent("onload", J))
  1215. }
  1216.  
  1217. function J() {
  1218. (y.addEventListener || "load" === event.type || "complete" === y.readyState) && (I(), m.ready())
  1219. }
  1220. m.ready.promise = function (b) {
  1221. if (!H)
  1222. if (H = m.Deferred(), "complete" === y.readyState) setTimeout(m.ready);
  1223. else if (y.addEventListener) y.addEventListener("DOMContentLoaded", J, !1), a.addEventListener("load", J, !1);
  1224. else {
  1225. y.attachEvent("onreadystatechange", J), a.attachEvent("onload", J);
  1226. var c = !1;
  1227. try {
  1228. c = null == a.frameElement && y.documentElement
  1229. } catch (d) {}
  1230. c && c.doScroll && ! function e() {
  1231. if (!m.isReady) {
  1232. try {
  1233. c.doScroll("left")
  1234. } catch (a) {
  1235. return setTimeout(e, 50)
  1236. }
  1237. I(), m.ready()
  1238. }
  1239. }()
  1240. }
  1241. return H.promise(b)
  1242. };
  1243. var K = "undefined",
  1244. L;
  1245. for (L in m(k)) break;
  1246. k.ownLast = "0" !== L, k.inlineBlockNeedsLayout = !1, m(function () {
  1247. var a, b, c, d;
  1248. c = y.getElementsByTagName("body")[0], c && c.style && (b = y.createElement("div"), d = y.createElement("div"), d.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", c.appendChild(d).appendChild(b), typeof b.style.zoom !== K && (b.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1", k.inlineBlockNeedsLayout = a = 3 === b.offsetWidth, a && (c.style.zoom = 1)), c.removeChild(d))
  1249. }),
  1250. function () {
  1251. var a = y.createElement("div");
  1252. if (null == k.deleteExpando) {
  1253. k.deleteExpando = !0;
  1254. try {
  1255. delete a.test
  1256. } catch (b) {
  1257. k.deleteExpando = !1
  1258. }
  1259. }
  1260. a = null
  1261. }(), m.acceptData = function (a) {
  1262. var b = m.noData[(a.nodeName + " ").toLowerCase()],
  1263. c = +a.nodeType || 1;
  1264. return 1 !== c && 9 !== c ? !1 : !b || b !== !0 && a.getAttribute("classid") === b
  1265. };
  1266. var M = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
  1267. N = /([A-Z])/g;
  1268.  
  1269. function O(a, b, c) {
  1270. if (void 0 === c && 1 === a.nodeType) {
  1271. var d = "data-" + b.replace(N, "-$1").toLowerCase();
  1272. if (c = a.getAttribute(d), "string" == typeof c) {
  1273. try {
  1274. c = "true" === c ? !0 : "false" === c ? !1 : "null" === c ? null : +c + "" === c ? +c : M.test(c) ? m.parseJSON(c) : c
  1275. } catch (e) {}
  1276. m.data(a, b, c)
  1277. } else c = void 0
  1278. }
  1279. return c
  1280. }
  1281.  
  1282. function P(a) {
  1283. var b;
  1284. for (b in a)
  1285. if (("data" !== b || !m.isEmptyObject(a[b])) && "toJSON" !== b) return !1;
  1286.  
  1287. return !0
  1288. }
  1289.  
  1290. function Q(a, b, d, e) {
  1291. if (m.acceptData(a)) {
  1292. var f, g, h = m.expando,
  1293. i = a.nodeType,
  1294. j = i ? m.cache : a,
  1295. k = i ? a[h] : a[h] && h;
  1296. if (k && j[k] && (e || j[k].data) || void 0 !== d || "string" != typeof b) return k || (k = i ? a[h] = c.pop() || m.guid++ : h), j[k] || (j[k] = i ? {} : {
  1297. toJSON: m.noop
  1298. }), ("object" == typeof b || "function" == typeof b) && (e ? j[k] = m.extend(j[k], b) : j[k].data = m.extend(j[k].data, b)), g = j[k], e || (g.data || (g.data = {}), g = g.data), void 0 !== d && (g[m.camelCase(b)] = d), "string" == typeof b ? (f = g[b], null == f && (f = g[m.camelCase(b)])) : f = g, f
  1299. }
  1300. }
  1301.  
  1302. function R(a, b, c) {
  1303. if (m.acceptData(a)) {
  1304. var d, e, f = a.nodeType,
  1305. g = f ? m.cache : a,
  1306. h = f ? a[m.expando] : m.expando;
  1307. if (g[h]) {
  1308. if (b && (d = c ? g[h] : g[h].data)) {
  1309. m.isArray(b) ? b = b.concat(m.map(b, m.camelCase)) : b in d ? b = [b] : (b = m.camelCase(b), b = b in d ? [b] : b.split(" ")), e = b.length;
  1310. while (e--) delete d[b[e]];
  1311. if (c ? !P(d) : !m.isEmptyObject(d)) return
  1312. }(c || (delete g[h].data, P(g[h]))) && (f ? m.cleanData([a], !0) : k.deleteExpando || g != g.window ? delete g[h] : g[h] = null)
  1313. }
  1314. }
  1315. }
  1316. m.extend({
  1317. cache: {},
  1318. noData: {
  1319. "applet ": !0,
  1320. "embed ": !0,
  1321. "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
  1322. },
  1323. hasData: function (a) {
  1324. return a = a.nodeType ? m.cache[a[m.expando]] : a[m.expando], !!a && !P(a)
  1325. },
  1326. data: function (a, b, c) {
  1327. return Q(a, b, c)
  1328. },
  1329. removeData: function (a, b) {
  1330. return R(a, b)
  1331. },
  1332. _data: function (a, b, c) {
  1333. return Q(a, b, c, !0)
  1334. },
  1335. _removeData: function (a, b) {
  1336. return R(a, b, !0)
  1337. }
  1338. }), m.fn.extend({
  1339. data: function (a, b) {
  1340. var c, d, e, f = this[0],
  1341. g = f && f.attributes;
  1342. if (void 0 === a) {
  1343. if (this.length && (e = m.data(f), 1 === f.nodeType && !m._data(f, "parsedAttrs"))) {
  1344. c = g.length;
  1345. while (c--) g[c] && (d = g[c].name, 0 === d.indexOf("data-") && (d = m.camelCase(d.slice(5)), O(f, d, e[d])));
  1346. m._data(f, "parsedAttrs", !0)
  1347. }
  1348. return e
  1349. }
  1350. return "object" == typeof a ? this.each(function () {
  1351. m.data(this, a)
  1352. }) : arguments.length > 1 ? this.each(function () {
  1353. m.data(this, a, b)
  1354. }) : f ? O(f, a, m.data(f, a)) : void 0
  1355. },
  1356. removeData: function (a) {
  1357. return this.each(function () {
  1358. m.removeData(this, a)
  1359. })
  1360. }
  1361. }), m.extend({
  1362. queue: function (a, b, c) {
  1363. var d;
  1364. return a ? (b = (b || "fx") + "queue", d = m._data(a, b), c && (!d || m.isArray(c) ? d = m._data(a, b, m.makeArray(c)) : d.push(c)), d || []) : void 0
  1365. },
  1366. dequeue: function (a, b) {
  1367. b = b || "fx";
  1368. var c = m.queue(a, b),
  1369. d = c.length,
  1370. e = c.shift(),
  1371. f = m._queueHooks(a, b),
  1372. g = function () {
  1373. m.dequeue(a, b)
  1374. };
  1375. "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()
  1376. },
  1377. _queueHooks: function (a, b) {
  1378. var c = b + "queueHooks";
  1379. return m._data(a, c) || m._data(a, c, {
  1380. empty: m.Callbacks("once memory").add(function () {
  1381. m._removeData(a, b + "queue"), m._removeData(a, c)
  1382. })
  1383. })
  1384. }
  1385. }), m.fn.extend({
  1386. queue: function (a, b) {
  1387. var c = 2;
  1388. return "string" != typeof a && (b = a, a = "fx", c--), arguments.length < c ? m.queue(this[0], a) : void 0 === b ? this : this.each(function () {
  1389. var c = m.queue(this, a, b);
  1390. m._queueHooks(this, a), "fx" === a && "inprogress" !== c[0] && m.dequeue(this, a)
  1391. })
  1392. },
  1393. dequeue: function (a) {
  1394. return this.each(function () {
  1395. m.dequeue(this, a)
  1396. })
  1397. },
  1398. clearQueue: function (a) {
  1399. return this.queue(a || "fx", [])
  1400. },
  1401. promise: function (a, b) {
  1402. var c, d = 1,
  1403. e = m.Deferred(),
  1404. f = this,
  1405. g = this.length,
  1406. h = function () {
  1407. --d || e.resolveWith(f, [f])
  1408. };
  1409. "string" != typeof a && (b = a, a = void 0), a = a || "fx";
  1410. while (g--) c = m._data(f[g], a + "queueHooks"), c && c.empty && (d++, c.empty.add(h));
  1411. return h(), e.promise(b)
  1412. }
  1413. });
  1414. var S = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
  1415. T = ["Top", "Right", "Bottom", "Left"],
  1416. U = function (a, b) {
  1417. return a = b || a, "none" === m.css(a, "display") || !m.contains(a.ownerDocument, a)
  1418. },
  1419. V = m.access = function (a, b, c, d, e, f, g) {
  1420. var h = 0,
  1421. i = a.length,
  1422. j = null == c;
  1423. if ("object" === m.type(c)) {
  1424. e = !0;
  1425. for (h in c) m.access(a, b, h, c[h], !0, f, g)
  1426. } else if (void 0 !== d && (e = !0, m.isFunction(d) || (g = !0), j && (g ? (b.call(a, d), b = null) : (j = b, b = function (a, b, c) {
  1427. return j.call(m(a), c)
  1428. })), b))
  1429. for (; i > h; h++) b(a[h], c, g ? d : d.call(a[h], h, b(a[h], c)));
  1430. return e ? a : j ? b.call(a) : i ? b(a[0], c) : f
  1431. },
  1432. W = /^(?:checkbox|radio)$/i;
  1433. ! function () {
  1434. var a = y.createElement("input"),
  1435. b = y.createElement("div"),
  1436. c = y.createDocumentFragment();
  1437. if (b.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", k.leadingWhitespace = 3 === b.firstChild.nodeType, k.tbody = !b.getElementsByTagName("tbody").length, k.htmlSerialize = !!b.getElementsByTagName("link").length, k.html5Clone = "<:nav></:nav>" !== y.createElement("nav").cloneNode(!0).outerHTML, a.type = "checkbox", a.checked = !0, c.appendChild(a), k.appendChecked = a.checked, b.innerHTML = "<textarea>x</textarea>", k.noCloneChecked = !!b.cloneNode(!0).lastChild.defaultValue, c.appendChild(b), b.innerHTML = "<input type='radio' checked='checked' name='t'/>", k.checkClone = b.cloneNode(!0).cloneNode(!0).lastChild.checked, k.noCloneEvent = !0, b.attachEvent && (b.attachEvent("onclick", function () {
  1438. k.noCloneEvent = !1
  1439. }), b.cloneNode(!0).click()), null == k.deleteExpando) {
  1440. k.deleteExpando = !0;
  1441. try {
  1442. delete b.test
  1443. } catch (d) {
  1444. k.deleteExpando = !1
  1445. }
  1446. }
  1447. }(),
  1448. function () {
  1449. var b, c, d = y.createElement("div");
  1450. for (b in {
  1451. submit: !0,
  1452. change: !0,
  1453. focusin: !0
  1454. }) c = "on" + b, (k[b + "Bubbles"] = c in a) || (d.setAttribute(c, "t"), k[b + "Bubbles"] = d.attributes[c].expando === !1);
  1455. d = null
  1456. }();
  1457. var X = /^(?:input|select|textarea)$/i,
  1458. Y = /^key/,
  1459. Z = /^(?:mouse|pointer|contextmenu)|click/,
  1460. $ = /^(?:focusinfocus|focusoutblur)$/,
  1461. _ = /^([^.]*)(?:\.(.+)|)$/;
  1462.  
  1463. function aa() {
  1464. return !0
  1465. }
  1466.  
  1467. function ba() {
  1468. return !1
  1469. }
  1470.  
  1471. function ca() {
  1472. try {
  1473. return y.activeElement
  1474. } catch (a) {}
  1475. }
  1476. m.event = {
  1477. global: {},
  1478. add: function (a, b, c, d, e) {
  1479. var f, g, h, i, j, k, l, n, o, p, q, r = m._data(a);
  1480. if (r) {
  1481. c.handler && (i = c, c = i.handler, e = i.selector), c.guid || (c.guid = m.guid++), (g = r.events) || (g = r.events = {}), (k = r.handle) || (k = r.handle = function (a) {
  1482. return typeof m === K || a && m.event.triggered === a.type ? void 0 : m.event.dispatch.apply(k.elem, arguments)
  1483. }, k.elem = a), b = (b || "").match(E) || [""], h = b.length;
  1484. while (h--) f = _.exec(b[h]) || [], o = q = f[1], p = (f[2] || "").split(".").sort(), o && (j = m.event.special[o] || {}, o = (e ? j.delegateType : j.bindType) || o, j = m.event.special[o] || {}, l = m.extend({
  1485. type: o,
  1486. origType: q,
  1487. data: d,
  1488. handler: c,
  1489. guid: c.guid,
  1490. selector: e,
  1491. needsContext: e && m.expr.match.needsContext.test(e),
  1492. namespace: p.join(".")
  1493. }, i), (n = g[o]) || (n = g[o] = [], n.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))), j.add && (j.add.call(a, l), l.handler.guid || (l.handler.guid = c.guid)), e ? n.splice(n.delegateCount++, 0, l) : n.push(l), m.event.global[o] = !0);
  1494. a = null
  1495. }
  1496. },
  1497. remove: function (a, b, c, d, e) {
  1498. var f, g, h, i, j, k, l, n, o, p, q, r = m.hasData(a) && m._data(a);
  1499. if (r && (k = r.events)) {
  1500. b = (b || "").match(E) || [""], j = b.length;
  1501. while (j--)
  1502. if (h = _.exec(b[j]) || [], o = q = h[1], p = (h[2] || "").split(".").sort(), o) {
  1503. l = m.event.special[o] || {}, o = (d ? l.delegateType : l.bindType) || o, n = k[o] || [], h = h[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), i = f = n.length;
  1504. while (f--) g = n[f], !e && q !== g.origType || c && c.guid !== g.guid || h && !h.test(g.namespace) || d && d !== g.selector && ("**" !== d || !g.selector) || (n.splice(f, 1), g.selector && n.delegateCount--, l.remove && l.remove.call(a, g));
  1505. i && !n.length && (l.teardown && l.teardown.call(a, p, r.handle) !== !1 || m.removeEvent(a, o, r.handle), delete k[o])
  1506. } else
  1507. for (o in k) m.event.remove(a, o + b[j], c, d, !0);
  1508. m.isEmptyObject(k) && (delete r.handle, m._removeData(a, "events"))
  1509. }
  1510. },
  1511. trigger: function (b, c, d, e) {
  1512. var f, g, h, i, k, l, n, o = [d || y],
  1513. p = j.call(b, "type") ? b.type : b,
  1514. q = j.call(b, "namespace") ? b.namespace.split(".") : [];
  1515. if (h = l = d = d || y, 3 !== d.nodeType && 8 !== d.nodeType && !$.test(p + m.event.triggered) && (p.indexOf(".") >= 0 && (q = p.split("."), p = q.shift(), q.sort()), g = p.indexOf(":") < 0 && "on" + p, b = b[m.expando] ? b : new m.Event(p, "object" == typeof b && b), b.isTrigger = e ? 2 : 3, b.namespace = q.join("."), b.namespace_re = b.namespace ? new RegExp("(^|\\.)" + q.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, b.result = void 0, b.target || (b.target = d), c = null == c ? [b] : m.makeArray(c, [b]), k = m.event.special[p] || {}, e || !k.trigger || k.trigger.apply(d, c) !== !1)) {
  1516. if (!e && !k.noBubble && !m.isWindow(d)) {
  1517. for (i = k.delegateType || p, $.test(i + p) || (h = h.parentNode); h; h = h.parentNode) o.push(h), l = h;
  1518. l === (d.ownerDocument || y) && o.push(l.defaultView || l.parentWindow || a)
  1519. }
  1520. n = 0;
  1521. while ((h = o[n++]) && !b.isPropagationStopped()) b.type = n > 1 ? i : k.bindType || p, f = (m._data(h, "events") || {})[b.type] && m._data(h, "handle"), f && f.apply(h, c), f = g && h[g], f && f.apply && m.acceptData(h) && (b.result = f.apply(h, c), b.result === !1 && b.preventDefault());
  1522. if (b.type = p, !e && !b.isDefaultPrevented() && (!k._default || k._default.apply(o.pop(), c) === !1) && m.acceptData(d) && g && d[p] && !m.isWindow(d)) {
  1523. l = d[g], l && (d[g] = null), m.event.triggered = p;
  1524. try {
  1525. d[p]()
  1526. } catch (r) {}
  1527. m.event.triggered = void 0, l && (d[g] = l)
  1528. }
  1529. return b.result
  1530. }
  1531. },
  1532. dispatch: function (a) {
  1533. a = m.event.fix(a);
  1534. var b, c, e, f, g, h = [],
  1535. i = d.call(arguments),
  1536. j = (m._data(this, "events") || {})[a.type] || [],
  1537. k = m.event.special[a.type] || {};
  1538. if (i[0] = a, a.delegateTarget = this, !k.preDispatch || k.preDispatch.call(this, a) !== !1) {
  1539. h = m.event.handlers.call(this, a, j), b = 0;
  1540. while ((f = h[b++]) && !a.isPropagationStopped()) {
  1541. a.currentTarget = f.elem, g = 0;
  1542. while ((e = f.handlers[g++]) && !a.isImmediatePropagationStopped())(!a.namespace_re || a.namespace_re.test(e.namespace)) && (a.handleObj = e, a.data = e.data, c = ((m.event.special[e.origType] || {}).handle || e.handler).apply(f.elem, i), void 0 !== c && (a.result = c) === !1 && (a.preventDefault(), a.stopPropagation()))
  1543. }
  1544. return k.postDispatch && k.postDispatch.call(this, a), a.result
  1545. }
  1546. },
  1547. handlers: function (a, b) {
  1548. var c, d, e, f, g = [],
  1549. h = b.delegateCount,
  1550. i = a.target;
  1551. if (h && i.nodeType && (!a.button || "click" !== a.type))
  1552. for (; i != this; i = i.parentNode || this)
  1553. if (1 === i.nodeType && (i.disabled !== !0 || "click" !== a.type)) {
  1554. for (e = [], f = 0; h > f; f++) d = b[f], c = d.selector + " ", void 0 === e[c] && (e[c] = d.needsContext ? m(c, this).index(i) >= 0 : m.find(c, this, null, [i]).length), e[c] && e.push(d);
  1555. e.length && g.push({
  1556. elem: i,
  1557. handlers: e
  1558. })
  1559. }
  1560. return h < b.length && g.push({
  1561. elem: this,
  1562. handlers: b.slice(h)
  1563. }), g
  1564. },
  1565. fix: function (a) {
  1566. if (a[m.expando]) return a;
  1567. var b, c, d, e = a.type,
  1568. f = a,
  1569. g = this.fixHooks[e];
  1570. g || (this.fixHooks[e] = g = Z.test(e) ? this.mouseHooks : Y.test(e) ? this.keyHooks : {}), d = g.props ? this.props.concat(g.props) : this.props, a = new m.Event(f), b = d.length;
  1571. while (b--) c = d[b], a[c] = f[c];
  1572. return a.target || (a.target = f.srcElement || y), 3 === a.target.nodeType && (a.target = a.target.parentNode), a.metaKey = !!a.metaKey, g.filter ? g.filter(a, f) : a
  1573. },
  1574. props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
  1575. fixHooks: {},
  1576. keyHooks: {
  1577. props: "char charCode key keyCode".split(" "),
  1578. filter: function (a, b) {
  1579. return null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode), a
  1580. }
  1581. },
  1582. mouseHooks: {
  1583. props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
  1584. filter: function (a, b) {
  1585. var c, d, e, f = b.button,
  1586. g = b.fromElement;
  1587. return null == a.pageX && null != b.clientX && (d = a.target.ownerDocument || y, e = d.documentElement, c = d.body, a.pageX = b.clientX + (e && e.scrollLeft || c && c.scrollLeft || 0) - (e && e.clientLeft || c && c.clientLeft || 0), a.pageY = b.clientY + (e && e.scrollTop || c && c.scrollTop || 0) - (e && e.clientTop || c && c.clientTop || 0)), !a.relatedTarget && g && (a.relatedTarget = g === a.target ? b.toElement : g), a.which || void 0 === f || (a.which = 1 & f ? 1 : 2 & f ? 3 : 4 & f ? 2 : 0), a
  1588. }
  1589. },
  1590. special: {
  1591. load: {
  1592. noBubble: !0
  1593. },
  1594. focus: {
  1595. trigger: function () {
  1596. if (this !== ca() && this.focus) try {
  1597. return this.focus(), !1
  1598. } catch (a) {}
  1599. },
  1600. delegateType: "focusin"
  1601. },
  1602. blur: {
  1603. trigger: function () {
  1604. return this === ca() && this.blur ? (this.blur(), !1) : void 0
  1605. },
  1606. delegateType: "focusout"
  1607. },
  1608. click: {
  1609. trigger: function () {
  1610. return m.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0
  1611. },
  1612. _default: function (a) {
  1613. return m.nodeName(a.target, "a")
  1614. }
  1615. },
  1616. beforeunload: {
  1617. postDispatch: function (a) {
  1618. void 0 !== a.result && a.originalEvent && (a.originalEvent.returnValue = a.result)
  1619. }
  1620. }
  1621. },
  1622. simulate: function (a, b, c, d) {
  1623. var e = m.extend(new m.Event, c, {
  1624. type: a,
  1625. isSimulated: !0,
  1626. originalEvent: {}
  1627. });
  1628. d ? m.event.trigger(e, null, b) : m.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault()
  1629. }
  1630. }, m.removeEvent = y.removeEventListener ? function (a, b, c) {
  1631. a.removeEventListener && a.removeEventListener(b, c, !1)
  1632. } : function (a, b, c) {
  1633. var d = "on" + b;
  1634. a.detachEvent && (typeof a[d] === K && (a[d] = null), a.detachEvent(d, c))
  1635. }, m.Event = function (a, b) {
  1636. return this instanceof m.Event ? (a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || void 0 === a.defaultPrevented && a.returnValue === !1 ? aa : ba) : this.type = a, b && m.extend(this, b), this.timeStamp = a && a.timeStamp || m.now(), void(this[m.expando] = !0)) : new m.Event(a, b)
  1637. }, m.Event.prototype = {
  1638. isDefaultPrevented: ba,
  1639. isPropagationStopped: ba,
  1640. isImmediatePropagationStopped: ba,
  1641. preventDefault: function () {
  1642. var a = this.originalEvent;
  1643. this.isDefaultPrevented = aa, a && (a.preventDefault ? a.preventDefault() : a.returnValue = !1)
  1644. },
  1645. stopPropagation: function () {
  1646. var a = this.originalEvent;
  1647. this.isPropagationStopped = aa, a && (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0)
  1648. },
  1649. stopImmediatePropagation: function () {
  1650. var a = this.originalEvent;
  1651. this.isImmediatePropagationStopped = aa, a && a.stopImmediatePropagation && a.stopImmediatePropagation(), this.stopPropagation()
  1652. }
  1653. }, m.each({
  1654. mouseenter: "mouseover",
  1655. mouseleave: "mouseout",
  1656. pointerenter: "pointerover",
  1657. pointerleave: "pointerout"
  1658. }, function (a, b) {
  1659. m.event.special[a] = {
  1660. delegateType: b,
  1661. bindType: b,
  1662. handle: function (a) {
  1663. var c, d = this,
  1664. e = a.relatedTarget,
  1665. f = a.handleObj;
  1666. return (!e || e !== d && !m.contains(d, e)) && (a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b), c
  1667. }
  1668. }
  1669. }), k.submitBubbles || (m.event.special.submit = {
  1670. setup: function () {
  1671. return m.nodeName(this, "form") ? !1 : void m.event.add(this, "click._submit keypress._submit", function (a) {
  1672. var b = a.target,
  1673. c = m.nodeName(b, "input") || m.nodeName(b, "button") ? b.form : void 0;
  1674. c && !m._data(c, "submitBubbles") && (m.event.add(c, "submit._submit", function (a) {
  1675. a._submit_bubble = !0
  1676. }), m._data(c, "submitBubbles", !0))
  1677. })
  1678. },
  1679. postDispatch: function (a) {
  1680. a._submit_bubble && (delete a._submit_bubble, this.parentNode && !a.isTrigger && m.event.simulate("submit", this.parentNode, a, !0))
  1681. },
  1682. teardown: function () {
  1683. return m.nodeName(this, "form") ? !1 : void m.event.remove(this, "._submit")
  1684. }
  1685. }), k.changeBubbles || (m.event.special.change = {
  1686. setup: function () {
  1687. return X.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (m.event.add(this, "propertychange._change", function (a) {
  1688. "checked" === a.originalEvent.propertyName && (this._just_changed = !0)
  1689. }), m.event.add(this, "click._change", function (a) {
  1690. this._just_changed && !a.isTrigger && (this._just_changed = !1), m.event.simulate("change", this, a, !0)
  1691. })), !1) : void m.event.add(this, "beforeactivate._change", function (a) {
  1692. var b = a.target;
  1693. X.test(b.nodeName) && !m._data(b, "changeBubbles") && (m.event.add(b, "change._change", function (a) {
  1694. !this.parentNode || a.isSimulated || a.isTrigger || m.event.simulate("change", this.parentNode, a, !0)
  1695. }), m._data(b, "changeBubbles", !0))
  1696. })
  1697. },
  1698. handle: function (a) {
  1699. var b = a.target;
  1700. return this !== b || a.isSimulated || a.isTrigger || "radio" !== b.type && "checkbox" !== b.type ? a.handleObj.handler.apply(this, arguments) : void 0
  1701. },
  1702. teardown: function () {
  1703. return m.event.remove(this, "._change"), !X.test(this.nodeName)
  1704. }
  1705. }), k.focusinBubbles || m.each({
  1706. focus: "focusin",
  1707. blur: "focusout"
  1708. }, function (a, b) {
  1709. var c = function (a) {
  1710. m.event.simulate(b, a.target, m.event.fix(a), !0)
  1711. };
  1712. m.event.special[b] = {
  1713. setup: function () {
  1714. var d = this.ownerDocument || this,
  1715. e = m._data(d, b);
  1716. e || d.addEventListener(a, c, !0), m._data(d, b, (e || 0) + 1)
  1717. },
  1718. teardown: function () {
  1719. var d = this.ownerDocument || this,
  1720. e = m._data(d, b) - 1;
  1721. e ? m._data(d, b, e) : (d.removeEventListener(a, c, !0), m._removeData(d, b))
  1722. }
  1723. }
  1724. }), m.fn.extend({
  1725. on: function (a, b, c, d, e) {
  1726. var f, g;
  1727. if ("object" == typeof a) {
  1728. "string" != typeof b && (c = c || b, b = void 0);
  1729. for (f in a) this.on(f, b, c, a[f], e);
  1730. return this
  1731. }
  1732. if (null == c && null == d ? (d = b, c = b = void 0) : null == d && ("string" == typeof b ? (d = c, c = void 0) : (d = c, c = b, b = void 0)), d === !1) d = ba;
  1733. else if (!d) return this;
  1734. return 1 === e && (g = d, d = function (a) {
  1735. return m().off(a), g.apply(this, arguments)
  1736. }, d.guid = g.guid || (g.guid = m.guid++)), this.each(function () {
  1737. m.event.add(this, a, d, c, b)
  1738. })
  1739. },
  1740. one: function (a, b, c, d) {
  1741. return this.on(a, b, c, d, 1)
  1742. },
  1743. off: function (a, b, c) {
  1744. var d, e;
  1745. if (a && a.preventDefault && a.handleObj) return d = a.handleObj, m(a.delegateTarget).off(d.namespace ? d.origType + "." + d.namespace : d.origType, d.selector, d.handler), this;
  1746. if ("object" == typeof a) {
  1747. for (e in a) this.off(e, b, a[e]);
  1748. return this
  1749. }
  1750. return (b === !1 || "function" == typeof b) && (c = b, b = void 0), c === !1 && (c = ba), this.each(function () {
  1751. m.event.remove(this, a, c, b)
  1752. })
  1753. },
  1754. trigger: function (a, b) {
  1755. return this.each(function () {
  1756. m.event.trigger(a, b, this)
  1757. })
  1758. },
  1759. triggerHandler: function (a, b) {
  1760. var c = this[0];
  1761. return c ? m.event.trigger(a, b, c, !0) : void 0
  1762. }
  1763. });
  1764.  
  1765. function da(a) {
  1766. var b = ea.split("|"),
  1767. c = a.createDocumentFragment();
  1768. if (c.createElement)
  1769. while (b.length) c.createElement(b.pop());
  1770. return c
  1771. }
  1772. var ea = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
  1773. fa = / jQuery\d+="(?:null|\d+)"/g,
  1774. ga = new RegExp("<(?:" + ea + ")[\\s/>]", "i"),
  1775. ha = /^\s+/,
  1776. ia = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
  1777. ja = /<([\w:]+)/,
  1778. ka = /<tbody/i,
  1779. la = /<|&#?\w+;/,
  1780. ma = /<(?:script|style|link)/i,
  1781. na = /checked\s*(?:[^=]|=\s*.checked.)/i,
  1782. oa = /^$|\/(?:java|ecma)script/i,
  1783. pa = /^true\/(.*)/,
  1784. qa = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
  1785. ra = {
  1786. option: [1, "<select multiple='multiple'>", "</select>"],
  1787. legend: [1, "<fieldset>", "</fieldset>"],
  1788. area: [1, "<map>", "</map>"],
  1789. param: [1, "<object>", "</object>"],
  1790. thead: [1, "<table>", "</table>"],
  1791. tr: [2, "<table><tbody>", "</tbody></table>"],
  1792. col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
  1793. td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
  1794. _default: k.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
  1795. },
  1796. sa = da(y),
  1797. ta = sa.appendChild(y.createElement("div"));
  1798. ra.optgroup = ra.option, ra.tbody = ra.tfoot = ra.colgroup = ra.caption = ra.thead, ra.th = ra.td;
  1799.  
  1800. function ua(a, b) {
  1801. var c, d, e = 0,
  1802. f = typeof a.getElementsByTagName !== K ? a.getElementsByTagName(b || "*") : typeof a.querySelectorAll !== K ? a.querySelectorAll(b || "*") : void 0;
  1803. if (!f)
  1804. for (f = [], c = a.childNodes || a; null != (d = c[e]); e++) !b || m.nodeName(d, b) ? f.push(d) : m.merge(f, ua(d, b));
  1805. return void 0 === b || b && m.nodeName(a, b) ? m.merge([a], f) : f
  1806. }
  1807.  
  1808. function va(a) {
  1809. W.test(a.type) && (a.defaultChecked = a.checked)
  1810. }
  1811.  
  1812. function wa(a, b) {
  1813. return m.nodeName(a, "table") && m.nodeName(11 !== b.nodeType ? b : b.firstChild, "tr") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a
  1814. }
  1815.  
  1816. function xa(a) {
  1817. return a.type = (null !== m.find.attr(a, "type")) + "/" + a.type, a
  1818. }
  1819.  
  1820. function ya(a) {
  1821. var b = pa.exec(a.type);
  1822. return b ? a.type = b[1] : a.removeAttribute("type"), a
  1823. }
  1824.  
  1825. function za(a, b) {
  1826. for (var c, d = 0; null != (c = a[d]); d++) m._data(c, "globalEval", !b || m._data(b[d], "globalEval"))
  1827. }
  1828.  
  1829. function Aa(a, b) {
  1830. if (1 === b.nodeType && m.hasData(a)) {
  1831. var c, d, e, f = m._data(a),
  1832. g = m._data(b, f),
  1833. h = f.events;
  1834. if (h) {
  1835. delete g.handle, g.events = {};
  1836. for (c in h)
  1837. for (d = 0, e = h[c].length; e > d; d++) m.event.add(b, c, h[c][d])
  1838. }
  1839. g.data && (g.data = m.extend({}, g.data))
  1840. }
  1841. }
  1842.  
  1843. function Ba(a, b) {
  1844. var c, d, e;
  1845. if (1 === b.nodeType) {
  1846. if (c = b.nodeName.toLowerCase(), !k.noCloneEvent && b[m.expando]) {
  1847. e = m._data(b);
  1848. for (d in e.events) m.removeEvent(b, d, e.handle);
  1849. b.removeAttribute(m.expando)
  1850. }
  1851. "script" === c && b.text !== a.text ? (xa(b).text = a.text, ya(b)) : "object" === c ? (b.parentNode && (b.outerHTML = a.outerHTML), k.html5Clone && a.innerHTML && !m.trim(b.innerHTML) && (b.innerHTML = a.innerHTML)) : "input" === c && W.test(a.type) ? (b.defaultChecked = b.checked = a.checked, b.value !== a.value && (b.value = a.value)) : "option" === c ? b.defaultSelected = b.selected = a.defaultSelected : ("input" === c || "textarea" === c) && (b.defaultValue = a.defaultValue)
  1852. }
  1853. }
  1854. m.extend({
  1855. clone: function (a, b, c) {
  1856. var d, e, f, g, h, i = m.contains(a.ownerDocument, a);
  1857. if (k.html5Clone || m.isXMLDoc(a) || !ga.test("<" + a.nodeName + ">") ? f = a.cloneNode(!0) : (ta.innerHTML = a.outerHTML, ta.removeChild(f = ta.firstChild)), !(k.noCloneEvent && k.noCloneChecked || 1 !== a.nodeType && 11 !== a.nodeType || m.isXMLDoc(a)))
  1858. for (d = ua(f), h = ua(a), g = 0; null != (e = h[g]); ++g) d[g] && Ba(e, d[g]);
  1859. if (b)
  1860. if (c)
  1861. for (h = h || ua(a), d = d || ua(f), g = 0; null != (e = h[g]); g++) Aa(e, d[g]);
  1862. else Aa(a, f);
  1863. return d = ua(f, "script"), d.length > 0 && za(d, !i && ua(a, "script")), d = h = e = null, f
  1864. },
  1865. buildFragment: function (a, b, c, d) {
  1866. for (var e, f, g, h, i, j, l, n = a.length, o = da(b), p = [], q = 0; n > q; q++)
  1867. if (f = a[q], f || 0 === f)
  1868. if ("object" === m.type(f)) m.merge(p, f.nodeType ? [f] : f);
  1869. else if (la.test(f)) {
  1870. h = h || o.appendChild(b.createElement("div")), i = (ja.exec(f) || ["", ""])[1].toLowerCase(), l = ra[i] || ra._default, h.innerHTML = l[1] + f.replace(ia, "<$1></$2>") + l[2], e = l[0];
  1871. while (e--) h = h.lastChild;
  1872. if (!k.leadingWhitespace && ha.test(f) && p.push(b.createTextNode(ha.exec(f)[0])), !k.tbody) {
  1873. f = "table" !== i || ka.test(f) ? "<table>" !== l[1] || ka.test(f) ? 0 : h : h.firstChild, e = f && f.childNodes.length;
  1874. while (e--) m.nodeName(j = f.childNodes[e], "tbody") && !j.childNodes.length && f.removeChild(j)
  1875. }
  1876. m.merge(p, h.childNodes), h.textContent = "";
  1877. while (h.firstChild) h.removeChild(h.firstChild);
  1878. h = o.lastChild
  1879. } else p.push(b.createTextNode(f));
  1880. h && o.removeChild(h), k.appendChecked || m.grep(ua(p, "input"), va), q = 0;
  1881. while (f = p[q++])
  1882. if ((!d || -1 === m.inArray(f, d)) && (g = m.contains(f.ownerDocument, f), h = ua(o.appendChild(f), "script"), g && za(h), c)) {
  1883. e = 0;
  1884. while (f = h[e++]) oa.test(f.type || "") && c.push(f)
  1885. }
  1886. return h = null, o
  1887. },
  1888. cleanData: function (a, b) {
  1889. for (var d, e, f, g, h = 0, i = m.expando, j = m.cache, l = k.deleteExpando, n = m.event.special; null != (d = a[h]); h++)
  1890. if ((b || m.acceptData(d)) && (f = d[i], g = f && j[f])) {
  1891. if (g.events)
  1892. for (e in g.events) n[e] ? m.event.remove(d, e) : m.removeEvent(d, e, g.handle);
  1893. j[f] && (delete j[f], l ? delete d[i] : typeof d.removeAttribute !== K ? d.removeAttribute(i) : d[i] = null, c.push(f))
  1894. }
  1895. }
  1896. }), m.fn.extend({
  1897. text: function (a) {
  1898. return V(this, function (a) {
  1899. return void 0 === a ? m.text(this) : this.empty().append((this[0] && this[0].ownerDocument || y).createTextNode(a))
  1900. }, null, a, arguments.length)
  1901. },
  1902. append: function () {
  1903. return this.domManip(arguments, function (a) {
  1904. if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
  1905. var b = wa(this, a);
  1906. b.appendChild(a)
  1907. }
  1908. })
  1909. },
  1910. prepend: function () {
  1911. return this.domManip(arguments, function (a) {
  1912. if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
  1913. var b = wa(this, a);
  1914. b.insertBefore(a, b.firstChild)
  1915. }
  1916. })
  1917. },
  1918. before: function () {
  1919. return this.domManip(arguments, function (a) {
  1920. this.parentNode && this.parentNode.insertBefore(a, this)
  1921. })
  1922. },
  1923. after: function () {
  1924. return this.domManip(arguments, function (a) {
  1925. this.parentNode && this.parentNode.insertBefore(a, this.nextSibling)
  1926. })
  1927. },
  1928. remove: function (a, b) {
  1929. for (var c, d = a ? m.filter(a, this) : this, e = 0; null != (c = d[e]); e++) b || 1 !== c.nodeType || m.cleanData(ua(c)), c.parentNode && (b && m.contains(c.ownerDocument, c) && za(ua(c, "script")), c.parentNode.removeChild(c));
  1930. return this
  1931. },
  1932. empty: function () {
  1933. for (var a, b = 0; null != (a = this[b]); b++) {
  1934. 1 === a.nodeType && m.cleanData(ua(a, !1));
  1935. while (a.firstChild) a.removeChild(a.firstChild);
  1936. a.options && m.nodeName(a, "select") && (a.options.length = 0)
  1937. }
  1938. return this
  1939. },
  1940. clone: function (a, b) {
  1941. return a = null == a ? !1 : a, b = null == b ? a : b, this.map(function () {
  1942. return m.clone(this, a, b)
  1943. })
  1944. },
  1945. html: function (a) {
  1946. return V(this, function (a) {
  1947. var b = this[0] || {},
  1948. c = 0,
  1949. d = this.length;
  1950. if (void 0 === a) return 1 === b.nodeType ? b.innerHTML.replace(fa, "") : void 0;
  1951. if (!("string" != typeof a || ma.test(a) || !k.htmlSerialize && ga.test(a) || !k.leadingWhitespace && ha.test(a) || ra[(ja.exec(a) || ["", ""])[1].toLowerCase()])) {
  1952. a = a.replace(ia, "<$1></$2>");
  1953. try {
  1954. for (; d > c; c++) b = this[c] || {}, 1 === b.nodeType && (m.cleanData(ua(b, !1)), b.innerHTML = a);
  1955. b = 0
  1956. } catch (e) {}
  1957. }
  1958. b && this.empty().append(a)
  1959. }, null, a, arguments.length)
  1960. },
  1961. replaceWith: function () {
  1962. var a = arguments[0];
  1963. return this.domManip(arguments, function (b) {
  1964. a = this.parentNode, m.cleanData(ua(this)), a && a.replaceChild(b, this)
  1965. }), a && (a.length || a.nodeType) ? this : this.remove()
  1966. },
  1967. detach: function (a) {
  1968. return this.remove(a, !0)
  1969. },
  1970. domManip: function (a, b) {
  1971. a = e.apply([], a);
  1972. var c, d, f, g, h, i, j = 0,
  1973. l = this.length,
  1974. n = this,
  1975. o = l - 1,
  1976. p = a[0],
  1977. q = m.isFunction(p);
  1978. if (q || l > 1 && "string" == typeof p && !k.checkClone && na.test(p)) return this.each(function (c) {
  1979. var d = n.eq(c);
  1980. q && (a[0] = p.call(this, c, d.html())), d.domManip(a, b)
  1981. });
  1982. if (l && (i = m.buildFragment(a, this[0].ownerDocument, !1, this), c = i.firstChild, 1 === i.childNodes.length && (i = c), c)) {
  1983. for (g = m.map(ua(i, "script"), xa), f = g.length; l > j; j++) d = i, j !== o && (d = m.clone(d, !0, !0), f && m.merge(g, ua(d, "script"))), b.call(this[j], d, j);
  1984. if (f)
  1985. for (h = g[g.length - 1].ownerDocument, m.map(g, ya), j = 0; f > j; j++) d = g[j], oa.test(d.type || "") && !m._data(d, "globalEval") && m.contains(h, d) && (d.src ? m._evalUrl && m._evalUrl(d.src) : m.globalEval((d.text || d.textContent || d.innerHTML || "").replace(qa, "")));
  1986. i = c = null
  1987. }
  1988. return this
  1989. }
  1990. }), m.each({
  1991. appendTo: "append",
  1992. prependTo: "prepend",
  1993. insertBefore: "before",
  1994. insertAfter: "after",
  1995. replaceAll: "replaceWith"
  1996. }, function (a, b) {
  1997. m.fn[a] = function (a) {
  1998. for (var c, d = 0, e = [], g = m(a), h = g.length - 1; h >= d; d++) c = d === h ? this : this.clone(!0), m(g[d])[b](c), f.apply(e, c.get());
  1999. return this.pushStack(e)
  2000. }
  2001. });
  2002. var Ca, Da = {};
  2003.  
  2004. function Ea(b, c) {
  2005. var d, e = m(c.createElement(b)).appendTo(c.body),
  2006. f = a.getDefaultComputedStyle && (d = a.getDefaultComputedStyle(e[0])) ? d.display : m.css(e[0], "display");
  2007. return e.detach(), f
  2008. }
  2009.  
  2010. function Fa(a) {
  2011. var b = y,
  2012. c = Da[a];
  2013. return c || (c = Ea(a, b), "none" !== c && c || (Ca = (Ca || m("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement), b = (Ca[0].contentWindow || Ca[0].contentDocument).document, b.write(), b.close(), c = Ea(a, b), Ca.detach()), Da[a] = c), c
  2014. }! function () {
  2015. var a;
  2016. k.shrinkWrapBlocks = function () {
  2017. if (null != a) return a;
  2018. a = !1;
  2019. var b, c, d;
  2020. return c = y.getElementsByTagName("body")[0], c && c.style ? (b = y.createElement("div"), d = y.createElement("div"), d.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", c.appendChild(d).appendChild(b), typeof b.style.zoom !== K && (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", b.appendChild(y.createElement("div")).style.width = "5px", a = 3 !== b.offsetWidth), c.removeChild(d), a) : void 0
  2021. }
  2022. }();
  2023. var Ga = /^margin/,
  2024. Ha = new RegExp("^(" + S + ")(?!px)[a-z%]+$", "i"),
  2025. Ia, Ja, Ka = /^(top|right|bottom|left)$/;
  2026. a.getComputedStyle ? (Ia = function (b) {
  2027. return b.ownerDocument.defaultView.opener ? b.ownerDocument.defaultView.getComputedStyle(b, null) : a.getComputedStyle(b, null)
  2028. }, Ja = function (a, b, c) {
  2029. var d, e, f, g, h = a.style;
  2030. return c = c || Ia(a), g = c ? c.getPropertyValue(b) || c[b] : void 0, c && ("" !== g || m.contains(a.ownerDocument, a) || (g = m.style(a, b)), Ha.test(g) && Ga.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)), void 0 === g ? g : g + ""
  2031. }) : y.documentElement.currentStyle && (Ia = function (a) {
  2032. return a.currentStyle
  2033. }, Ja = function (a, b, c) {
  2034. var d, e, f, g, h = a.style;
  2035. return c = c || Ia(a), g = c ? c[b] : void 0, null == g && h && h[b] && (g = h[b]), Ha.test(g) && !Ka.test(b) && (d = h.left, e = a.runtimeStyle, f = e && e.left, f && (e.left = a.currentStyle.left), h.left = "fontSize" === b ? "1em" : g, g = h.pixelLeft + "px", h.left = d, f && (e.left = f)), void 0 === g ? g : g + "" || "auto"
  2036. });
  2037.  
  2038. function La(a, b) {
  2039. return {
  2040. get: function () {
  2041. var c = a();
  2042. if (null != c) return c ? void delete this.get : (this.get = b).apply(this, arguments)
  2043. }
  2044. }
  2045. }! function () {
  2046. var b, c, d, e, f, g, h;
  2047. if (b = y.createElement("div"), b.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", d = b.getElementsByTagName("a")[0], c = d && d.style) {
  2048. c.cssText = "float:left;opacity:.5", k.opacity = "0.5" === c.opacity, k.cssFloat = !!c.cssFloat, b.style.backgroundClip = "content-box", b.cloneNode(!0).style.backgroundClip = "", k.clearCloneStyle = "content-box" === b.style.backgroundClip, k.boxSizing = "" === c.boxSizing || "" === c.MozBoxSizing || "" === c.WebkitBoxSizing, m.extend(k, {
  2049. reliableHiddenOffsets: function () {
  2050. return null == g && i(), g
  2051. },
  2052. boxSizingReliable: function () {
  2053. return null == f && i(), f
  2054. },
  2055. pixelPosition: function () {
  2056. return null == e && i(), e
  2057. },
  2058. reliableMarginRight: function () {
  2059. return null == h && i(), h
  2060. }
  2061. });
  2062.  
  2063. function i() {
  2064. var b, c, d, i;
  2065. c = y.getElementsByTagName("body")[0], c && c.style && (b = y.createElement("div"), d = y.createElement("div"), d.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", c.appendChild(d).appendChild(b), b.style.cssText = "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute", e = f = !1, h = !0, a.getComputedStyle && (e = "1%" !== (a.getComputedStyle(b, null) || {}).top, f = "4px" === (a.getComputedStyle(b, null) || {
  2066. width: "4px"
  2067. }).width, i = b.appendChild(y.createElement("div")), i.style.cssText = b.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0", i.style.marginRight = i.style.width = "0", b.style.width = "1px", h = !parseFloat((a.getComputedStyle(i, null) || {}).marginRight), b.removeChild(i)), b.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", i = b.getElementsByTagName("td"), i[0].style.cssText = "margin:0;border:0;padding:0;display:none", g = 0 === i[0].offsetHeight, g && (i[0].style.display = "", i[1].style.display = "none", g = 0 === i[0].offsetHeight), c.removeChild(d))
  2068. }
  2069. }
  2070. }(), m.swap = function (a, b, c, d) {
  2071. var e, f, g = {};
  2072. for (f in b) g[f] = a.style[f], a.style[f] = b[f];
  2073. e = c.apply(a, d || []);
  2074. for (f in b) a.style[f] = g[f];
  2075. return e
  2076. };
  2077. var Ma = /alpha\([^)]*\)/i,
  2078. Na = /opacity\s*=\s*([^)]*)/,
  2079. Oa = /^(none|table(?!-c[ea]).+)/,
  2080. Pa = new RegExp("^(" + S + ")(.*)$", "i"),
  2081. Qa = new RegExp("^([+-])=(" + S + ")", "i"),
  2082. Ra = {
  2083. position: "absolute",
  2084. visibility: "hidden",
  2085. display: "block"
  2086. },
  2087. Sa = {
  2088. letterSpacing: "0",
  2089. fontWeight: "400"
  2090. },
  2091. Ta = ["Webkit", "O", "Moz", "ms"];
  2092.  
  2093. function Ua(a, b) {
  2094. if (b in a) return b;
  2095. var c = b.charAt(0).toUpperCase() + b.slice(1),
  2096. d = b,
  2097. e = Ta.length;
  2098. while (e--)
  2099. if (b = Ta[e] + c, b in a) return b;
  2100. return d
  2101. }
  2102.  
  2103. function Va(a, b) {
  2104. for (var c, d, e, f = [], g = 0, h = a.length; h > g; g++) d = a[g], d.style && (f[g] = m._data(d, "olddisplay"), c = d.style.display, b ? (f[g] || "none" !== c || (d.style.display = ""), "" === d.style.display && U(d) && (f[g] = m._data(d, "olddisplay", Fa(d.nodeName)))) : (e = U(d), (c && "none" !== c || !e) && m._data(d, "olddisplay", e ? c : m.css(d, "display"))));
  2105. 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"));
  2106. return a
  2107. }
  2108.  
  2109. function Wa(a, b, c) {
  2110. var d = Pa.exec(b);
  2111. return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b
  2112. }
  2113.  
  2114. function Xa(a, b, c, d, e) {
  2115. for (var f = c === (d ? "border" : "content") ? 4 : "width" === b ? 1 : 0, g = 0; 4 > f; f += 2) "margin" === c && (g += m.css(a, c + T[f], !0, e)), d ? ("content" === c && (g -= m.css(a, "padding" + T[f], !0, e)), "margin" !== c && (g -= m.css(a, "border" + T[f] + "Width", !0, e))) : (g += m.css(a, "padding" + T[f], !0, e), "padding" !== c && (g += m.css(a, "border" + T[f] + "Width", !0, e)));
  2116. return g
  2117. }
  2118.  
  2119. function Ya(a, b, c) {
  2120. var d = !0,
  2121. e = "width" === b ? a.offsetWidth : a.offsetHeight,
  2122. f = Ia(a),
  2123. g = k.boxSizing && "border-box" === m.css(a, "boxSizing", !1, f);
  2124. if (0 >= e || null == e) {
  2125. if (e = Ja(a, b, f), (0 > e || null == e) && (e = a.style[b]), Ha.test(e)) return e;
  2126. d = g && (k.boxSizingReliable() || e === a.style[b]), e = parseFloat(e) || 0
  2127. }
  2128. return e + Xa(a, b, c || (g ? "border" : "content"), d, f) + "px"
  2129. }
  2130. m.extend({
  2131. cssHooks: {
  2132. opacity: {
  2133. get: function (a, b) {
  2134. if (b) {
  2135. var c = Ja(a, "opacity");
  2136. return "" === c ? "1" : c
  2137. }
  2138. }
  2139. }
  2140. },
  2141. cssNumber: {
  2142. columnCount: !0,
  2143. fillOpacity: !0,
  2144. flexGrow: !0,
  2145. flexShrink: !0,
  2146. fontWeight: !0,
  2147. lineHeight: !0,
  2148. opacity: !0,
  2149. order: !0,
  2150. orphans: !0,
  2151. widows: !0,
  2152. zIndex: !0,
  2153. zoom: !0
  2154. },
  2155. cssProps: {
  2156. "float": k.cssFloat ? "cssFloat" : "styleFloat"
  2157. },
  2158. style: function (a, b, c, d) {
  2159. if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) {
  2160. var e, f, g, h = m.camelCase(b),
  2161. i = a.style;
  2162. if (b = m.cssProps[h] || (m.cssProps[h] = Ua(i, h)), g = m.cssHooks[b] || m.cssHooks[h], void 0 === c) return g && "get" in g && void 0 !== (e = g.get(a, !1, d)) ? e : i[b];
  2163. if (f = typeof c, "string" === f && (e = Qa.exec(c)) && (c = (e[1] + 1) * e[2] + parseFloat(m.css(a, b)), f = "number"), null != c && c === c && ("number" !== f || m.cssNumber[h] || (c += "px"), k.clearCloneStyle || "" !== c || 0 !== b.indexOf("background") || (i[b] = "inherit"), !(g && "set" in g && void 0 === (c = g.set(a, c, d))))) try {
  2164. i[b] = c
  2165. } catch (j) {}
  2166. }
  2167. },
  2168. css: function (a, b, c, d) {
  2169. var e, f, g, h = m.camelCase(b);
  2170. return b = m.cssProps[h] || (m.cssProps[h] = Ua(a.style, h)), g = m.cssHooks[b] || m.cssHooks[h], g && "get" in g && (f = g.get(a, !0, c)), void 0 === f && (f = Ja(a, b, d)), "normal" === f && b in Sa && (f = Sa[b]), "" === c || c ? (e = parseFloat(f), c === !0 || m.isNumeric(e) ? e || 0 : f) : f
  2171. }
  2172. }), m.each(["height", "width"], function (a, b) {
  2173. m.cssHooks[b] = {
  2174. get: function (a, c, d) {
  2175. return c ? Oa.test(m.css(a, "display")) && 0 === a.offsetWidth ? m.swap(a, Ra, function () {
  2176. return Ya(a, b, d)
  2177. }) : Ya(a, b, d) : void 0
  2178. },
  2179. set: function (a, c, d) {
  2180. var e = d && Ia(a);
  2181. return Wa(a, c, d ? Xa(a, b, d, k.boxSizing && "border-box" === m.css(a, "boxSizing", !1, e), e) : 0)
  2182. }
  2183. }
  2184. }), k.opacity || (m.cssHooks.opacity = {
  2185. get: function (a, b) {
  2186. return Na.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : b ? "1" : ""
  2187. },
  2188. set: function (a, b) {
  2189. var c = a.style,
  2190. d = a.currentStyle,
  2191. e = m.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : "",
  2192. f = d && d.filter || c.filter || "";
  2193. c.zoom = 1, (b >= 1 || "" === b) && "" === m.trim(f.replace(Ma, "")) && c.removeAttribute && (c.removeAttribute("filter"), "" === b || d && !d.filter) || (c.filter = Ma.test(f) ? f.replace(Ma, e) : f + " " + e)
  2194. }
  2195. }), m.cssHooks.marginRight = La(k.reliableMarginRight, function (a, b) {
  2196. return b ? m.swap(a, {
  2197. display: "inline-block"
  2198. }, Ja, [a, "marginRight"]) : void 0
  2199. }), m.each({
  2200. margin: "",
  2201. padding: "",
  2202. border: "Width"
  2203. }, function (a, b) {
  2204. m.cssHooks[a + b] = {
  2205. expand: function (c) {
  2206. for (var d = 0, e = {}, f = "string" == typeof c ? c.split(" ") : [c]; 4 > d; d++) e[a + T[d] + b] = f[d] || f[d - 2] || f[0];
  2207. return e
  2208. }
  2209. }, Ga.test(a) || (m.cssHooks[a + b].set = Wa)
  2210. }), m.fn.extend({
  2211. css: function (a, b) {
  2212. return V(this, function (a, b, c) {
  2213. var d, e, f = {},
  2214. g = 0;
  2215. if (m.isArray(b)) {
  2216. for (d = Ia(a), e = b.length; e > g; g++) f[b[g]] = m.css(a, b[g], !1, d);
  2217. return f
  2218. }
  2219. return void 0 !== c ? m.style(a, b, c) : m.css(a, b)
  2220. }, a, b, arguments.length > 1)
  2221. },
  2222. show: function () {
  2223. return Va(this, !0)
  2224. },
  2225. hide: function () {
  2226. return Va(this)
  2227. },
  2228. toggle: function (a) {
  2229. return "boolean" == typeof a ? a ? this.show() : this.hide() : this.each(function () {
  2230. U(this) ? m(this).show() : m(this).hide()
  2231. })
  2232. }
  2233. });
  2234.  
  2235. function Za(a, b, c, d, e) {
  2236. return new Za.prototype.init(a, b, c, d, e)
  2237. }
  2238. m.Tween = Za, Za.prototype = {
  2239. constructor: Za,
  2240. init: function (a, b, c, d, e, f) {
  2241. this.elem = a, this.prop = c, this.easing = e || "swing", this.options = b, this.start = this.now = this.cur(), this.end = d, this.unit = f || (m.cssNumber[c] ? "" : "px")
  2242. },
  2243. cur: function () {
  2244. var a = Za.propHooks[this.prop];
  2245. return a && a.get ? a.get(this) : Za.propHooks._default.get(this)
  2246. },
  2247. run: function (a) {
  2248. var b, c = Za.propHooks[this.prop];
  2249. return this.options.duration ? this.pos = b = m.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration) : this.pos = b = a, this.now = (this.end - this.start) * b + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), c && c.set ? c.set(this) : Za.propHooks._default.set(this), this
  2250. }
  2251. }, Za.prototype.init.prototype = Za.prototype, Za.propHooks = {
  2252. _default: {
  2253. get: function (a) {
  2254. var b;
  2255. return null == a.elem[a.prop] || a.elem.style && null != a.elem.style[a.prop] ? (b = m.css(a.elem, a.prop, ""), b && "auto" !== b ? b : 0) : a.elem[a.prop]
  2256. },
  2257. set: function (a) {
  2258. m.fx.step[a.prop] ? m.fx.step[a.prop](a) : a.elem.style && (null != a.elem.style[m.cssProps[a.prop]] || m.cssHooks[a.prop]) ? m.style(a.elem, a.prop, a.now + a.unit) : a.elem[a.prop] = a.now
  2259. }
  2260. }
  2261. }, Za.propHooks.scrollTop = Za.propHooks.scrollLeft = {
  2262. set: function (a) {
  2263. a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now)
  2264. }
  2265. }, m.easing = {
  2266. linear: function (a) {
  2267. return a
  2268. },
  2269. swing: function (a) {
  2270. return .5 - Math.cos(a * Math.PI) / 2
  2271. }
  2272. }, m.fx = Za.prototype.init, m.fx.step = {};
  2273. var $a, _a, ab = /^(?:toggle|show|hide)$/,
  2274. bb = new RegExp("^(?:([+-])=|)(" + S + ")([a-z%]*)$", "i"),
  2275. cb = /queueHooks$/,
  2276. db = [ib],
  2277. eb = {
  2278. "*": [function (a, b) {
  2279. var c = this.createTween(a, b),
  2280. d = c.cur(),
  2281. e = bb.exec(b),
  2282. f = e && e[3] || (m.cssNumber[a] ? "" : "px"),
  2283. g = (m.cssNumber[a] || "px" !== f && +d) && bb.exec(m.css(c.elem, a)),
  2284. h = 1,
  2285. i = 20;
  2286. if (g && g[3] !== f) {
  2287. f = f || g[3], e = e || [], g = +d || 1;
  2288. do h = h || ".5", g /= h, m.style(c.elem, a, g + f); while (h !== (h = c.cur() / d) && 1 !== h && --i)
  2289. }
  2290. return e && (g = c.start = +g || +d || 0, c.unit = f, c.end = e[1] ? g + (e[1] + 1) * e[2] : +e[2]), c
  2291. }]
  2292. };
  2293.  
  2294. function fb() {
  2295. return setTimeout(function () {
  2296. $a = void 0
  2297. }), $a = m.now()
  2298. }
  2299.  
  2300. function gb(a, b) {
  2301. var c, d = {
  2302. height: a
  2303. },
  2304. e = 0;
  2305. for (b = b ? 1 : 0; 4 > e; e += 2 - b) c = T[e], d["margin" + c] = d["padding" + c] = a;
  2306. return b && (d.opacity = d.width = a), d
  2307. }
  2308.  
  2309. function hb(a, b, c) {
  2310. for (var d, e = (eb[b] || []).concat(eb["*"]), f = 0, g = e.length; g > f; f++)
  2311. if (d = e[f].call(c, b, a)) return d
  2312. }
  2313.  
  2314. function ib(a, b, c) {
  2315. var d, e, f, g, h, i, j, l, n = this,
  2316. o = {},
  2317. p = a.style,
  2318. q = a.nodeType && U(a),
  2319. r = m._data(a, "fxshow");
  2320. c.queue || (h = m._queueHooks(a, "fx"), null == h.unqueued && (h.unqueued = 0, i = h.empty.fire, h.empty.fire = function () {
  2321. h.unqueued || i()
  2322. }), h.unqueued++, n.always(function () {
  2323. n.always(function () {
  2324. h.unqueued--, m.queue(a, "fx").length || h.empty.fire()
  2325. })
  2326. })), 1 === a.nodeType && ("height" in b || "width" in b) && (c.overflow = [p.overflow, p.overflowX, p.overflowY], j = m.css(a, "display"), l = "none" === j ? m._data(a, "olddisplay") || Fa(a.nodeName) : j, "inline" === l && "none" === m.css(a, "float") && (k.inlineBlockNeedsLayout && "inline" !== Fa(a.nodeName) ? p.zoom = 1 : p.display = "inline-block")), c.overflow && (p.overflow = "hidden", k.shrinkWrapBlocks() || n.always(function () {
  2327. p.overflow = c.overflow[0], p.overflowX = c.overflow[1], p.overflowY = c.overflow[2]
  2328. }));
  2329. for (d in b)
  2330. if (e = b[d], ab.exec(e)) {
  2331. if (delete b[d], f = f || "toggle" === e, e === (q ? "hide" : "show")) {
  2332. if ("show" !== e || !r || void 0 === r[d]) continue;
  2333. q = !0
  2334. }
  2335. o[d] = r && r[d] || m.style(a, d)
  2336. } else j = void 0;
  2337. if (m.isEmptyObject(o)) "inline" === ("none" === j ? Fa(a.nodeName) : j) && (p.display = j);
  2338. else {
  2339. r ? "hidden" in r && (q = r.hidden) : r = m._data(a, "fxshow", {}), f && (r.hidden = !q), q ? m(a).show() : n.done(function () {
  2340. m(a).hide()
  2341. }), n.done(function () {
  2342. var b;
  2343. m._removeData(a, "fxshow");
  2344. for (b in o) m.style(a, b, o[b])
  2345. });
  2346. for (d in o) g = hb(q ? r[d] : 0, d, n), d in r || (r[d] = g.start, q && (g.end = g.start, g.start = "width" === d || "height" === d ? 1 : 0))
  2347. }
  2348. }
  2349.  
  2350. function jb(a, b) {
  2351. var c, d, e, f, g;
  2352. for (c in a)
  2353. if (d = m.camelCase(c), e = b[d], f = a[c], m.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = m.cssHooks[d], g && "expand" in g) {
  2354. f = g.expand(f), delete a[d];
  2355. for (c in f) c in a || (a[c] = f[c], b[c] = e)
  2356. } else b[d] = e
  2357. }
  2358.  
  2359. function kb(a, b, c) {
  2360. var d, e, f = 0,
  2361. g = db.length,
  2362. h = m.Deferred().always(function () {
  2363. delete i.elem
  2364. }),
  2365. i = function () {
  2366. if (e) return !1;
  2367. for (var b = $a || fb(), 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);
  2368. return h.notifyWith(a, [j, f, c]), 1 > f && i ? c : (h.resolveWith(a, [j]), !1)
  2369. },
  2370. j = h.promise({
  2371. elem: a,
  2372. props: m.extend({}, b),
  2373. opts: m.extend(!0, {
  2374. specialEasing: {}
  2375. }, c),
  2376. originalProperties: b,
  2377. originalOptions: c,
  2378. startTime: $a || fb(),
  2379. duration: c.duration,
  2380. tweens: [],
  2381. createTween: function (b, c) {
  2382. var d = m.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing);
  2383. return j.tweens.push(d), d
  2384. },
  2385. stop: function (b) {
  2386. var c = 0,
  2387. d = b ? j.tweens.length : 0;
  2388. if (e) return this;
  2389. for (e = !0; d > c; c++) j.tweens[c].run(1);
  2390. return b ? h.resolveWith(a, [j, b]) : h.rejectWith(a, [j, b]), this
  2391. }
  2392. }),
  2393. k = j.props;
  2394. for (jb(k, j.opts.specialEasing); g > f; f++)
  2395. if (d = db[f].call(j, a, k, j.opts)) return d;
  2396. return m.map(k, hb, j), m.isFunction(j.opts.start) && j.opts.start.call(a, j), m.fx.timer(m.extend(i, {
  2397. elem: a,
  2398. anim: j,
  2399. queue: j.opts.queue
  2400. })), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always)
  2401. }
  2402. m.Animation = m.extend(kb, {
  2403. tweener: function (a, b) {
  2404. m.isFunction(a) ? (b = a, a = ["*"]) : a = a.split(" ");
  2405. for (var c, d = 0, e = a.length; e > d; d++) c = a[d], eb[c] = eb[c] || [], eb[c].unshift(b)
  2406. },
  2407. prefilter: function (a, b) {
  2408. b ? db.unshift(a) : db.push(a)
  2409. }
  2410. }), m.speed = function (a, b, c) {
  2411. var d = a && "object" == typeof a ? m.extend({}, a) : {
  2412. complete: c || !c && b || m.isFunction(a) && a,
  2413. duration: a,
  2414. easing: c && b || b && !m.isFunction(b) && b
  2415. };
  2416. return d.duration = m.fx.off ? 0 : "number" == typeof d.duration ? d.duration : d.duration in m.fx.speeds ? m.fx.speeds[d.duration] : m.fx.speeds._default, (null == d.queue || d.queue === !0) && (d.queue = "fx"), d.old = d.complete, d.complete = function () {
  2417. m.isFunction(d.old) && d.old.call(this), d.queue && m.dequeue(this, d.queue)
  2418. }, d
  2419. }, m.fn.extend({
  2420. fadeTo: function (a, b, c, d) {
  2421. return this.filter(U).css("opacity", 0).show().end().animate({
  2422. opacity: b
  2423. }, a, c, d)
  2424. },
  2425. animate: function (a, b, c, d) {
  2426. var e = m.isEmptyObject(a),
  2427. f = m.speed(b, c, d),
  2428. g = function () {
  2429. var b = kb(this, m.extend({}, a), f);
  2430. (e || m._data(this, "finish")) && b.stop(!0)
  2431. };
  2432. return g.finish = g, e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g)
  2433. },
  2434. stop: function (a, b, c) {
  2435. var d = function (a) {
  2436. var b = a.stop;
  2437. delete a.stop, b(c)
  2438. };
  2439. return "string" != typeof a && (c = b, b = a, a = void 0), b && a !== !1 && this.queue(a || "fx", []), this.each(function () {
  2440. var b = !0,
  2441. e = null != a && a + "queueHooks",
  2442. f = m.timers,
  2443. g = m._data(this);
  2444. if (e) g[e] && g[e].stop && d(g[e]);
  2445. else
  2446. for (e in g) g[e] && g[e].stop && cb.test(e) && d(g[e]);
  2447. 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));
  2448. (b || !c) && m.dequeue(this, a)
  2449. })
  2450. },
  2451. finish: function (a) {
  2452. return a !== !1 && (a = a || "fx"), this.each(function () {
  2453. var b, c = m._data(this),
  2454. d = c[a + "queue"],
  2455. e = c[a + "queueHooks"],
  2456. f = m.timers,
  2457. g = d ? d.length : 0;
  2458. for (c.finish = !0, m.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));
  2459. for (b = 0; g > b; b++) d[b] && d[b].finish && d[b].finish.call(this);
  2460. delete c.finish
  2461. })
  2462. }
  2463. }), m.each(["toggle", "show", "hide"], function (a, b) {
  2464. var c = m.fn[b];
  2465. m.fn[b] = function (a, d, e) {
  2466. return null == a || "boolean" == typeof a ? c.apply(this, arguments) : this.animate(gb(b, !0), a, d, e)
  2467. }
  2468. }), m.each({
  2469. slideDown: gb("show"),
  2470. slideUp: gb("hide"),
  2471. slideToggle: gb("toggle"),
  2472. fadeIn: {
  2473. opacity: "show"
  2474. },
  2475. fadeOut: {
  2476. opacity: "hide"
  2477. },
  2478. fadeToggle: {
  2479. opacity: "toggle"
  2480. }
  2481. }, function (a, b) {
  2482. m.fn[a] = function (a, c, d) {
  2483. return this.animate(b, a, c, d)
  2484. }
  2485. }), m.timers = [], m.fx.tick = function () {
  2486. var a, b = m.timers,
  2487. c = 0;
  2488. for ($a = m.now(); c < b.length; c++) a = b[c], a() || b[c] !== a || b.splice(c--, 1);
  2489. b.length || m.fx.stop(), $a = void 0
  2490. }, m.fx.timer = function (a) {
  2491. m.timers.push(a), a() ? m.fx.start() : m.timers.pop()
  2492. }, m.fx.interval = 13, m.fx.start = function () {
  2493. _a || (_a = setInterval(m.fx.tick, m.fx.interval))
  2494. }, m.fx.stop = function () {
  2495. clearInterval(_a), _a = null
  2496. }, m.fx.speeds = {
  2497. slow: 600,
  2498. fast: 200,
  2499. _default: 400
  2500. }, m.fn.delay = function (a, b) {
  2501. return a = m.fx ? m.fx.speeds[a] || a : a, b = b || "fx", this.queue(b, function (b, c) {
  2502. var d = setTimeout(b, a);
  2503. c.stop = function () {
  2504. clearTimeout(d)
  2505. }
  2506. })
  2507. },
  2508. function () {
  2509. var a, b, c, d, e;
  2510. b = y.createElement("div"), b.setAttribute("className", "t"), b.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", d = b.getElementsByTagName("a")[0], c = y.createElement("select"), e = c.appendChild(y.createElement("option")), a = b.getElementsByTagName("input")[0], d.style.cssText = "top:1px", k.getSetAttribute = "t" !== b.className, k.style = /top/.test(d.getAttribute("style")), k.hrefNormalized = "/a" === d.getAttribute("href"), k.checkOn = !!a.value, k.optSelected = e.selected, k.enctype = !!y.createElement("form").enctype, c.disabled = !0, k.optDisabled = !e.disabled, a = y.createElement("input"), a.setAttribute("value", ""), k.input = "" === a.getAttribute("value"), a.value = "t", a.setAttribute("type", "radio"), k.radioValue = "t" === a.value
  2511. }();
  2512. var lb = /\r/g;
  2513. m.fn.extend({
  2514. val: function (a) {
  2515. var b, c, d, e = this[0]; {
  2516. if (arguments.length) return d = m.isFunction(a), this.each(function (c) {
  2517. var e;
  2518. 1 === this.nodeType && (e = d ? a.call(this, c, m(this).val()) : a, null == e ? e = "" : "number" == typeof e ? e += "" : m.isArray(e) && (e = m.map(e, function (a) {
  2519. return null == a ? "" : a + ""
  2520. })), b = m.valHooks[this.type] || m.valHooks[this.nodeName.toLowerCase()], b && "set" in b && void 0 !== b.set(this, e, "value") || (this.value = e))
  2521. });
  2522. if (e) return b = m.valHooks[e.type] || m.valHooks[e.nodeName.toLowerCase()], b && "get" in b && void 0 !== (c = b.get(e, "value")) ? c : (c = e.value, "string" == typeof c ? c.replace(lb, "") : null == c ? "" : c)
  2523. }
  2524. }
  2525. }), m.extend({
  2526. valHooks: {
  2527. option: {
  2528. get: function (a) {
  2529. var b = m.find.attr(a, "value");
  2530. return null != b ? b : m.trim(m.text(a))
  2531. }
  2532. },
  2533. select: {
  2534. get: function (a) {
  2535. 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++)
  2536. if (c = d[i], !(!c.selected && i !== e || (k.optDisabled ? c.disabled : null !== c.getAttribute("disabled")) || c.parentNode.disabled && m.nodeName(c.parentNode, "optgroup"))) {
  2537. if (b = m(c).val(), f) return b;
  2538. g.push(b)
  2539. }
  2540. return g
  2541. },
  2542. set: function (a, b) {
  2543. var c, d, e = a.options,
  2544. f = m.makeArray(b),
  2545. g = e.length;
  2546. while (g--)
  2547. if (d = e[g], m.inArray(m.valHooks.option.get(d), f) >= 0) try {
  2548. d.selected = c = !0
  2549. } catch (h) {
  2550. d.scrollHeight
  2551. } else d.selected = !1;
  2552. return c || (a.selectedIndex = -1), e
  2553. }
  2554. }
  2555. }
  2556. }), m.each(["radio", "checkbox"], function () {
  2557. m.valHooks[this] = {
  2558. set: function (a, b) {
  2559. return m.isArray(b) ? a.checked = m.inArray(m(a).val(), b) >= 0 : void 0
  2560. }
  2561. }, k.checkOn || (m.valHooks[this].get = function (a) {
  2562. return null === a.getAttribute("value") ? "on" : a.value
  2563. })
  2564. });
  2565. var mb, nb, ob = m.expr.attrHandle,
  2566. pb = /^(?:checked|selected)$/i,
  2567. qb = k.getSetAttribute,
  2568. rb = k.input;
  2569. m.fn.extend({
  2570. attr: function (a, b) {
  2571. return V(this, m.attr, a, b, arguments.length > 1)
  2572. },
  2573. removeAttr: function (a) {
  2574. return this.each(function () {
  2575. m.removeAttr(this, a)
  2576. })
  2577. }
  2578. }), m.extend({
  2579. attr: function (a, b, c) {
  2580. var d, e, f = a.nodeType;
  2581. if (a && 3 !== f && 8 !== f && 2 !== f) return typeof a.getAttribute === K ? m.prop(a, b, c) : (1 === f && m.isXMLDoc(a) || (b = b.toLowerCase(), d = m.attrHooks[b] || (m.expr.match.bool.test(b) ? nb : mb)), void 0 === c ? d && "get" in d && null !== (e = d.get(a, b)) ? e : (e = m.find.attr(a, b), null == e ? void 0 : e) : null !== c ? d && "set" in d && void 0 !== (e = d.set(a, c, b)) ? e : (a.setAttribute(b, c + ""), c) : void m.removeAttr(a, b))
  2582. },
  2583. removeAttr: function (a, b) {
  2584. var c, d, e = 0,
  2585. f = b && b.match(E);
  2586. if (f && 1 === a.nodeType)
  2587. while (c = f[e++]) d = m.propFix[c] || c, m.expr.match.bool.test(c) ? rb && qb || !pb.test(c) ? a[d] = !1 : a[m.camelCase("default-" + c)] = a[d] = !1 : m.attr(a, c, ""), a.removeAttribute(qb ? c : d)
  2588. },
  2589. attrHooks: {
  2590. type: {
  2591. set: function (a, b) {
  2592. if (!k.radioValue && "radio" === b && m.nodeName(a, "input")) {
  2593. var c = a.value;
  2594. return a.setAttribute("type", b), c && (a.value = c), b
  2595. }
  2596. }
  2597. }
  2598. }
  2599. }), nb = {
  2600. set: function (a, b, c) {
  2601. return b === !1 ? m.removeAttr(a, c) : rb && qb || !pb.test(c) ? a.setAttribute(!qb && m.propFix[c] || c, c) : a[m.camelCase("default-" + c)] = a[c] = !0, c
  2602. }
  2603. }, m.each(m.expr.match.bool.source.match(/\w+/g), function (a, b) {
  2604. var c = ob[b] || m.find.attr;
  2605. ob[b] = rb && qb || !pb.test(b) ? function (a, b, d) {
  2606. var e, f;
  2607. return d || (f = ob[b], ob[b] = e, e = null != c(a, b, d) ? b.toLowerCase() : null, ob[b] = f), e
  2608. } : function (a, b, c) {
  2609. return c ? void 0 : a[m.camelCase("default-" + b)] ? b.toLowerCase() : null
  2610. }
  2611. }), rb && qb || (m.attrHooks.value = {
  2612. set: function (a, b, c) {
  2613. return m.nodeName(a, "input") ? void(a.defaultValue = b) : mb && mb.set(a, b, c)
  2614. }
  2615. }), qb || (mb = {
  2616. set: function (a, b, c) {
  2617. var d = a.getAttributeNode(c);
  2618. return d || a.setAttributeNode(d = a.ownerDocument.createAttribute(c)), d.value = b += "", "value" === c || b === a.getAttribute(c) ? b : void 0
  2619. }
  2620. }, ob.id = ob.name = ob.coords = function (a, b, c) {
  2621. var d;
  2622. return c ? void 0 : (d = a.getAttributeNode(b)) && "" !== d.value ? d.value : null
  2623. }, m.valHooks.button = {
  2624. get: function (a, b) {
  2625. var c = a.getAttributeNode(b);
  2626. return c && c.specified ? c.value : void 0
  2627. },
  2628. set: mb.set
  2629. }, m.attrHooks.contenteditable = {
  2630. set: function (a, b, c) {
  2631. mb.set(a, "" === b ? !1 : b, c)
  2632. }
  2633. }, m.each(["width", "height"], function (a, b) {
  2634. m.attrHooks[b] = {
  2635. set: function (a, c) {
  2636. return "" === c ? (a.setAttribute(b, "auto"), c) : void 0
  2637. }
  2638. }
  2639. })), k.style || (m.attrHooks.style = {
  2640. get: function (a) {
  2641. return a.style.cssText || void 0
  2642. },
  2643. set: function (a, b) {
  2644. return a.style.cssText = b + ""
  2645. }
  2646. });
  2647. var sb = /^(?:input|select|textarea|button|object)$/i,
  2648. tb = /^(?:a|area)$/i;
  2649. m.fn.extend({
  2650. prop: function (a, b) {
  2651. return V(this, m.prop, a, b, arguments.length > 1)
  2652. },
  2653. removeProp: function (a) {
  2654. return a = m.propFix[a] || a, this.each(function () {
  2655. try {
  2656. this[a] = void 0, delete this[a]
  2657. } catch (b) {}
  2658. })
  2659. }
  2660. }), m.extend({
  2661. propFix: {
  2662. "for": "htmlFor",
  2663. "class": "className"
  2664. },
  2665. prop: function (a, b, c) {
  2666. var d, e, f, g = a.nodeType;
  2667. if (a && 3 !== g && 8 !== g && 2 !== g) return f = 1 !== g || !m.isXMLDoc(a), f && (b = m.propFix[b] || b, e = m.propHooks[b]), 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]
  2668. },
  2669. propHooks: {
  2670. tabIndex: {
  2671. get: function (a) {
  2672. var b = m.find.attr(a, "tabindex");
  2673. return b ? parseInt(b, 10) : sb.test(a.nodeName) || tb.test(a.nodeName) && a.href ? 0 : -1
  2674. }
  2675. }
  2676. }
  2677. }), k.hrefNormalized || m.each(["href", "src"], function (a, b) {
  2678. m.propHooks[b] = {
  2679. get: function (a) {
  2680. return a.getAttribute(b, 4)
  2681. }
  2682. }
  2683. }), k.optSelected || (m.propHooks.selected = {
  2684. get: function (a) {
  2685. var b = a.parentNode;
  2686. return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null
  2687. }
  2688. }), m.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
  2689. m.propFix[this.toLowerCase()] = this
  2690. }), k.enctype || (m.propFix.enctype = "encoding");
  2691. var ub = /[\t\r\n\f]/g;
  2692. m.fn.extend({
  2693. addClass: function (a) {
  2694. var b, c, d, e, f, g, h = 0,
  2695. i = this.length,
  2696. j = "string" == typeof a && a;
  2697. if (m.isFunction(a)) return this.each(function (b) {
  2698. m(this).addClass(a.call(this, b, this.className))
  2699. });
  2700. if (j)
  2701. for (b = (a || "").match(E) || []; i > h; h++)
  2702. if (c = this[h], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(ub, " ") : " ")) {
  2703. f = 0;
  2704. while (e = b[f++]) d.indexOf(" " + e + " ") < 0 && (d += e + " ");
  2705. g = m.trim(d), c.className !== g && (c.className = g)
  2706. }
  2707. return this
  2708. },
  2709. removeClass: function (a) {
  2710. var b, c, d, e, f, g, h = 0,
  2711. i = this.length,
  2712. j = 0 === arguments.length || "string" == typeof a && a;
  2713. if (m.isFunction(a)) return this.each(function (b) {
  2714. m(this).removeClass(a.call(this, b, this.className))
  2715. });
  2716. if (j)
  2717. for (b = (a || "").match(E) || []; i > h; h++)
  2718. if (c = this[h], d = 1 === c.nodeType && (c.className ? (" " + c.className + " ").replace(ub, " ") : "")) {
  2719. f = 0;
  2720. while (e = b[f++])
  2721. while (d.indexOf(" " + e + " ") >= 0) d = d.replace(" " + e + " ", " ");
  2722. g = a ? m.trim(d) : "", c.className !== g && (c.className = g)
  2723. }
  2724. return this
  2725. },
  2726. toggleClass: function (a, b) {
  2727. var c = typeof a;
  2728. return "boolean" == typeof b && "string" === c ? b ? this.addClass(a) : this.removeClass(a) : this.each(m.isFunction(a) ? function (c) {
  2729. m(this).toggleClass(a.call(this, c, this.className, b), b)
  2730. } : function () {
  2731. if ("string" === c) {
  2732. var b, d = 0,
  2733. e = m(this),
  2734. f = a.match(E) || [];
  2735. while (b = f[d++]) e.hasClass(b) ? e.removeClass(b) : e.addClass(b)
  2736. } else(c === K || "boolean" === c) && (this.className && m._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : m._data(this, "__className__") || "")
  2737. })
  2738. },
  2739. hasClass: function (a) {
  2740. for (var b = " " + a + " ", c = 0, d = this.length; d > c; c++)
  2741. if (1 === this[c].nodeType && (" " + this[c].className + " ").replace(ub, " ").indexOf(b) >= 0) return !0;
  2742. return !1
  2743. }
  2744. }), m.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 (a, b) {
  2745. m.fn[b] = function (a, c) {
  2746. return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b)
  2747. }
  2748. }), m.fn.extend({
  2749. hover: function (a, b) {
  2750. return this.mouseenter(a).mouseleave(b || a)
  2751. },
  2752. bind: function (a, b, c) {
  2753. return this.on(a, null, b, c)
  2754. },
  2755. unbind: function (a, b) {
  2756. return this.off(a, null, b)
  2757. },
  2758. delegate: function (a, b, c, d) {
  2759. return this.on(b, a, c, d)
  2760. },
  2761. undelegate: function (a, b, c) {
  2762. return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", c)
  2763. }
  2764. });
  2765. var vb = m.now(),
  2766. wb = /\?/,
  2767. xb = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;
  2768. m.parseJSON = function (b) {
  2769. if (a.JSON && a.JSON.parse) return a.JSON.parse(b + "");
  2770. var c, d = null,
  2771. e = m.trim(b + "");
  2772. return e && !m.trim(e.replace(xb, function (a, b, e, f) {
  2773. return c && b && (d = 0), 0 === d ? a : (c = e || b, d += !f - !e, "")
  2774. })) ? Function("return " + e)() : m.error("Invalid JSON: " + b)
  2775. }, m.parseXML = function (b) {
  2776. var c, d;
  2777. if (!b || "string" != typeof b) return null;
  2778. try {
  2779. a.DOMParser ? (d = new DOMParser, c = d.parseFromString(b, "text/xml")) : (c = new ActiveXObject("Microsoft.XMLDOM"), c.async = "false", c.loadXML(b))
  2780. } catch (e) {
  2781. c = void 0
  2782. }
  2783. return c && c.documentElement && !c.getElementsByTagName("parsererror").length || m.error("Invalid XML: " + b), c
  2784. };
  2785. var yb, zb, Ab = /#.*$/,
  2786. Bb = /([?&])_=[^&]*/,
  2787. Cb = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
  2788. Db = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
  2789. Eb = /^(?:GET|HEAD)$/,
  2790. Fb = /^\/\//,
  2791. Gb = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
  2792. Hb = {},
  2793. Ib = {},
  2794. Jb = "*/".concat("*");
  2795. try {
  2796. zb = location.href
  2797. } catch (Kb) {
  2798. zb = y.createElement("a"), zb.href = "", zb = zb.href
  2799. }
  2800. yb = Gb.exec(zb.toLowerCase()) || [];
  2801.  
  2802. function Lb(a) {
  2803. return function (b, c) {
  2804. "string" != typeof b && (c = b, b = "*");
  2805. var d, e = 0,
  2806. f = b.toLowerCase().match(E) || [];
  2807. if (m.isFunction(c))
  2808. while (d = f[e++]) "+" === d.charAt(0) ? (d = d.slice(1) || "*", (a[d] = a[d] || []).unshift(c)) : (a[d] = a[d] || []).push(c)
  2809. }
  2810. }
  2811.  
  2812. function Mb(a, b, c, d) {
  2813. var e = {},
  2814. f = a === Ib;
  2815.  
  2816. function g(h) {
  2817. var i;
  2818. return e[h] = !0, m.each(a[h] || [], function (a, h) {
  2819. var j = h(b, c, d);
  2820. return "string" != typeof j || f || e[j] ? f ? !(i = j) : void 0 : (b.dataTypes.unshift(j), g(j), !1)
  2821. }), i
  2822. }
  2823. return g(b.dataTypes[0]) || !e["*"] && g("*")
  2824. }
  2825.  
  2826. function Nb(a, b) {
  2827. var c, d, e = m.ajaxSettings.flatOptions || {};
  2828. for (d in b) void 0 !== b[d] && ((e[d] ? a : c || (c = {}))[d] = b[d]);
  2829. return c && m.extend(!0, a, c), a
  2830. }
  2831.  
  2832. function Ob(a, b, c) {
  2833. var d, e, f, g, h = a.contents,
  2834. i = a.dataTypes;
  2835. while ("*" === i[0]) i.shift(), void 0 === e && (e = a.mimeType || b.getResponseHeader("Content-Type"));
  2836. if (e)
  2837. for (g in h)
  2838. if (h[g] && h[g].test(e)) {
  2839. i.unshift(g);
  2840. break
  2841. }
  2842. if (i[0] in c) f = i[0];
  2843. else {
  2844. for (g in c) {
  2845. if (!i[0] || a.converters[g + " " + i[0]]) {
  2846. f = g;
  2847. break
  2848. }
  2849. d || (d = g)
  2850. }
  2851. f = f || d
  2852. }
  2853. return f ? (f !== i[0] && i.unshift(f), c[f]) : void 0
  2854. }
  2855.  
  2856. function Pb(a, b, c, d) {
  2857. var e, f, g, h, i, j = {},
  2858. k = a.dataTypes.slice();
  2859. if (k[1])
  2860. for (g in a.converters) j[g.toLowerCase()] = a.converters[g];
  2861. f = k.shift();
  2862. while (f)
  2863. if (a.responseFields[f] && (c[a.responseFields[f]] = b), !i && d && a.dataFilter && (b = a.dataFilter(b, a.dataType)), i = f, f = k.shift())
  2864. if ("*" === f) f = i;
  2865. else if ("*" !== i && i !== f) {
  2866. if (g = j[i + " " + f] || j["* " + f], !g)
  2867. for (e in j)
  2868. if (h = e.split(" "), h[1] === f && (g = j[i + " " + h[0]] || j["* " + h[0]])) {
  2869. g === !0 ? g = j[e] : j[e] !== !0 && (f = h[0], k.unshift(h[1]));
  2870. break
  2871. }
  2872. if (g !== !0)
  2873. if (g && a["throws"]) b = g(b);
  2874. else try {
  2875. b = g(b)
  2876. } catch (l) {
  2877. return {
  2878. state: "parsererror",
  2879. error: g ? l : "No conversion from " + i + " to " + f
  2880. }
  2881. }
  2882. }
  2883. return {
  2884. state: "success",
  2885. data: b
  2886. }
  2887. }
  2888. m.extend({
  2889. active: 0,
  2890. lastModified: {},
  2891. etag: {},
  2892. ajaxSettings: {
  2893. url: zb,
  2894. type: "GET",
  2895. isLocal: Db.test(yb[1]),
  2896. global: !0,
  2897. processData: !0,
  2898. async: !0,
  2899. contentType: "application/x-www-form-urlencoded; charset=UTF-8",
  2900. accepts: {
  2901. "*": Jb,
  2902. text: "text/plain",
  2903. html: "text/html",
  2904. xml: "application/xml, text/xml",
  2905. json: "application/json, text/javascript"
  2906. },
  2907. contents: {
  2908. xml: /xml/,
  2909. html: /html/,
  2910. json: /json/
  2911. },
  2912. responseFields: {
  2913. xml: "responseXML",
  2914. text: "responseText",
  2915. json: "responseJSON"
  2916. },
  2917. converters: {
  2918. "* text": String,
  2919. "text html": !0,
  2920. "text json": m.parseJSON,
  2921. "text xml": m.parseXML
  2922. },
  2923. flatOptions: {
  2924. url: !0,
  2925. context: !0
  2926. }
  2927. },
  2928. ajaxSetup: function (a, b) {
  2929. return b ? Nb(Nb(a, m.ajaxSettings), b) : Nb(m.ajaxSettings, a)
  2930. },
  2931. ajaxPrefilter: Lb(Hb),
  2932. ajaxTransport: Lb(Ib),
  2933. ajax: function (a, b) {
  2934. "object" == typeof a && (b = a, a = void 0), b = b || {};
  2935. var c, d, e, f, g, h, i, j, k = m.ajaxSetup({}, b),
  2936. l = k.context || k,
  2937. n = k.context && (l.nodeType || l.jquery) ? m(l) : m.event,
  2938. o = m.Deferred(),
  2939. p = m.Callbacks("once memory"),
  2940. q = k.statusCode || {},
  2941. r = {},
  2942. s = {},
  2943. t = 0,
  2944. u = "canceled",
  2945. v = {
  2946. readyState: 0,
  2947. getResponseHeader: function (a) {
  2948. var b;
  2949. if (2 === t) {
  2950. if (!j) {
  2951. j = {};
  2952. while (b = Cb.exec(f)) j[b[1].toLowerCase()] = b[2]
  2953. }
  2954. b = j[a.toLowerCase()]
  2955. }
  2956. return null == b ? null : b
  2957. },
  2958. getAllResponseHeaders: function () {
  2959. return 2 === t ? f : null
  2960. },
  2961. setRequestHeader: function (a, b) {
  2962. var c = a.toLowerCase();
  2963. return t || (a = s[c] = s[c] || a, r[a] = b), this
  2964. },
  2965. overrideMimeType: function (a) {
  2966. return t || (k.mimeType = a), this
  2967. },
  2968. statusCode: function (a) {
  2969. var b;
  2970. if (a)
  2971. if (2 > t)
  2972. for (b in a) q[b] = [q[b], a[b]];
  2973. else v.always(a[v.status]);
  2974. return this
  2975. },
  2976. abort: function (a) {
  2977. var b = a || u;
  2978. return i && i.abort(b), x(0, b), this
  2979. }
  2980. };
  2981. if (o.promise(v).complete = p.add, v.success = v.done, v.error = v.fail, k.url = ((a || k.url || zb) + "").replace(Ab, "").replace(Fb, yb[1] + "//"), k.type = b.method || b.type || k.method || k.type, k.dataTypes = m.trim(k.dataType || "*").toLowerCase().match(E) || [""], null == k.crossDomain && (c = Gb.exec(k.url.toLowerCase()), k.crossDomain = !(!c || c[1] === yb[1] && c[2] === yb[2] && (c[3] || ("http:" === c[1] ? "80" : "443")) === (yb[3] || ("http:" === yb[1] ? "80" : "443")))), k.data && k.processData && "string" != typeof k.data && (k.data = m.param(k.data, k.traditional)), Mb(Hb, k, b, v), 2 === t) return v;
  2982. h = m.event && k.global, h && 0 === m.active++ && m.event.trigger("ajaxStart"), k.type = k.type.toUpperCase(), k.hasContent = !Eb.test(k.type), e = k.url, k.hasContent || (k.data && (e = k.url += (wb.test(e) ? "&" : "?") + k.data, delete k.data), k.cache === !1 && (k.url = Bb.test(e) ? e.replace(Bb, "$1_=" + vb++) : e + (wb.test(e) ? "&" : "?") + "_=" + vb++)), k.ifModified && (m.lastModified[e] && v.setRequestHeader("If-Modified-Since", m.lastModified[e]), m.etag[e] && v.setRequestHeader("If-None-Match", m.etag[e])), (k.data && k.hasContent && k.contentType !== !1 || b.contentType) && v.setRequestHeader("Content-Type", k.contentType), v.setRequestHeader("Accept", k.dataTypes[0] && k.accepts[k.dataTypes[0]] ? k.accepts[k.dataTypes[0]] + ("*" !== k.dataTypes[0] ? ", " + Jb + "; q=0.01" : "") : k.accepts["*"]);
  2983. for (d in k.headers) v.setRequestHeader(d, k.headers[d]);
  2984. if (k.beforeSend && (k.beforeSend.call(l, v, k) === !1 || 2 === t)) return v.abort();
  2985. u = "abort";
  2986. for (d in {
  2987. success: 1,
  2988. error: 1,
  2989. complete: 1
  2990. }) v[d](k[d]);
  2991. if (i = Mb(Ib, k, b, v)) {
  2992. v.readyState = 1, h && n.trigger("ajaxSend", [v, k]), k.async && k.timeout > 0 && (g = setTimeout(function () {
  2993. v.abort("timeout")
  2994. }, k.timeout));
  2995. try {
  2996. t = 1, i.send(r, x)
  2997. } catch (w) {
  2998. if (!(2 > t)) throw w;
  2999. x(-1, w)
  3000. }
  3001. } else x(-1, "No Transport");
  3002.  
  3003. function x(a, b, c, d) {
  3004. var j, r, s, u, w, x = b;
  3005. 2 !== t && (t = 2, g && clearTimeout(g), i = void 0, f = d || "", v.readyState = a > 0 ? 4 : 0, j = a >= 200 && 300 > a || 304 === a, c && (u = Ob(k, v, c)), u = Pb(k, u, v, j), j ? (k.ifModified && (w = v.getResponseHeader("Last-Modified"), w && (m.lastModified[e] = w), w = v.getResponseHeader("etag"), w && (m.etag[e] = w)), 204 === a || "HEAD" === k.type ? x = "nocontent" : 304 === a ? x = "notmodified" : (x = u.state, r = u.data, s = u.error, j = !s)) : (s = x, (a || !x) && (x = "error", 0 > a && (a = 0))), v.status = a, v.statusText = (b || x) + "", j ? o.resolveWith(l, [r, x, v]) : o.rejectWith(l, [v, x, s]), v.statusCode(q), q = void 0, h && n.trigger(j ? "ajaxSuccess" : "ajaxError", [v, k, j ? r : s]), p.fireWith(l, [v, x]), h && (n.trigger("ajaxComplete", [v, k]), --m.active || m.event.trigger("ajaxStop")))
  3006. }
  3007. return v
  3008. },
  3009. getJSON: function (a, b, c) {
  3010. return m.get(a, b, c, "json")
  3011. },
  3012. getScript: function (a, b) {
  3013. return m.get(a, void 0, b, "script")
  3014. }
  3015. }), m.each(["get", "post"], function (a, b) {
  3016. m[b] = function (a, c, d, e) {
  3017. return m.isFunction(c) && (e = e || d, d = c, c = void 0), m.ajax({
  3018. url: a,
  3019. type: b,
  3020. dataType: e,
  3021. data: c,
  3022. success: d
  3023. })
  3024. }
  3025. }), m._evalUrl = function (a) {
  3026. return m.ajax({
  3027. url: a,
  3028. type: "GET",
  3029. dataType: "script",
  3030. async: !1,
  3031. global: !1,
  3032. "throws": !0
  3033. })
  3034. }, m.fn.extend({
  3035. wrapAll: function (a) {
  3036. if (m.isFunction(a)) return this.each(function (b) {
  3037. m(this).wrapAll(a.call(this, b))
  3038. });
  3039. if (this[0]) {
  3040. var b = m(a, this[0].ownerDocument).eq(0).clone(!0);
  3041. this[0].parentNode && b.insertBefore(this[0]), b.map(function () {
  3042. var a = this;
  3043. while (a.firstChild && 1 === a.firstChild.nodeType) a = a.firstChild;
  3044. return a
  3045. }).append(this)
  3046. }
  3047. return this
  3048. },
  3049. wrapInner: function (a) {
  3050. return this.each(m.isFunction(a) ? function (b) {
  3051. m(this).wrapInner(a.call(this, b))
  3052. } : function () {
  3053. var b = m(this),
  3054. c = b.contents();
  3055. c.length ? c.wrapAll(a) : b.append(a)
  3056. })
  3057. },
  3058. wrap: function (a) {
  3059. var b = m.isFunction(a);
  3060. return this.each(function (c) {
  3061. m(this).wrapAll(b ? a.call(this, c) : a)
  3062. })
  3063. },
  3064. unwrap: function () {
  3065. return this.parent().each(function () {
  3066. m.nodeName(this, "body") || m(this).replaceWith(this.childNodes)
  3067. }).end()
  3068. }
  3069. }), m.expr.filters.hidden = function (a) {
  3070. return a.offsetWidth <= 0 && a.offsetHeight <= 0 || !k.reliableHiddenOffsets() && "none" === (a.style && a.style.display || m.css(a, "display"))
  3071. }, m.expr.filters.visible = function (a) {
  3072. return !m.expr.filters.hidden(a)
  3073. };
  3074. var Qb = /%20/g,
  3075. Rb = /\[\]$/,
  3076. Sb = /\r?\n/g,
  3077. Tb = /^(?:submit|button|image|reset|file)$/i,
  3078. Ub = /^(?:input|select|textarea|keygen)/i;
  3079.  
  3080. function Vb(a, b, c, d) {
  3081. var e;
  3082. if (m.isArray(b)) m.each(b, function (b, e) {
  3083. c || Rb.test(a) ? d(a, e) : Vb(a + "[" + ("object" == typeof e ? b : "") + "]", e, c, d)
  3084. });
  3085. else if (c || "object" !== m.type(b)) d(a, b);
  3086. else
  3087. for (e in b) Vb(a + "[" + e + "]", b[e], c, d)
  3088. }
  3089. m.param = function (a, b) {
  3090. var c, d = [],
  3091. e = function (a, b) {
  3092. b = m.isFunction(b) ? b() : null == b ? "" : b, d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
  3093. };
  3094. if (void 0 === b && (b = m.ajaxSettings && m.ajaxSettings.traditional), m.isArray(a) || a.jquery && !m.isPlainObject(a)) m.each(a, function () {
  3095. e(this.name, this.value)
  3096. });
  3097. else
  3098. for (c in a) Vb(c, a[c], b, e);
  3099. return d.join("&").replace(Qb, "+")
  3100. }, m.fn.extend({
  3101. serialize: function () {
  3102. return m.param(this.serializeArray())
  3103. },
  3104. serializeArray: function () {
  3105. return this.map(function () {
  3106. var a = m.prop(this, "elements");
  3107. return a ? m.makeArray(a) : this
  3108. }).filter(function () {
  3109. var a = this.type;
  3110. return this.name && !m(this).is(":disabled") && Ub.test(this.nodeName) && !Tb.test(a) && (this.checked || !W.test(a))
  3111. }).map(function (a, b) {
  3112. var c = m(this).val();
  3113. return null == c ? null : m.isArray(c) ? m.map(c, function (a) {
  3114. return {
  3115. name: b.name,
  3116. value: a.replace(Sb, "\r\n")
  3117. }
  3118. }) : {
  3119. name: b.name,
  3120. value: c.replace(Sb, "\r\n")
  3121. }
  3122. }).get()
  3123. }
  3124. }), m.ajaxSettings.xhr = void 0 !== a.ActiveXObject ? function () {
  3125. return !this.isLocal && /^(get|post|head|put|delete|options)$/i.test(this.type) && Zb() || $b()
  3126. } : Zb;
  3127. var Wb = 0,
  3128. Xb = {},
  3129. Yb = m.ajaxSettings.xhr();
  3130. a.attachEvent && a.attachEvent("onunload", function () {
  3131. for (var a in Xb) Xb[a](void 0, !0)
  3132. }), k.cors = !!Yb && "withCredentials" in Yb, Yb = k.ajax = !!Yb, Yb && m.ajaxTransport(function (a) {
  3133. if (!a.crossDomain || k.cors) {
  3134. var b;
  3135. return {
  3136. send: function (c, d) {
  3137. var e, f = a.xhr(),
  3138. g = ++Wb;
  3139. if (f.open(a.type, a.url, a.async, a.username, a.password), a.xhrFields)
  3140. for (e in a.xhrFields) f[e] = a.xhrFields[e];
  3141. a.mimeType && f.overrideMimeType && f.overrideMimeType(a.mimeType), a.crossDomain || c["X-Requested-With"] || (c["X-Requested-With"] = "XMLHttpRequest");
  3142. for (e in c) void 0 !== c[e] && f.setRequestHeader(e, c[e] + "");
  3143. f.send(a.hasContent && a.data || null), b = function (c, e) {
  3144. var h, i, j;
  3145. if (b && (e || 4 === f.readyState))
  3146. if (delete Xb[g], b = void 0, f.onreadystatechange = m.noop, e) 4 !== f.readyState && f.abort();
  3147. else {
  3148. j = {}, h = f.status, "string" == typeof f.responseText && (j.text = f.responseText);
  3149. try {
  3150. i = f.statusText
  3151. } catch (k) {
  3152. i = ""
  3153. }
  3154. h || !a.isLocal || a.crossDomain ? 1223 === h && (h = 204) : h = j.text ? 200 : 404
  3155. }
  3156. j && d(h, i, j, f.getAllResponseHeaders())
  3157. }, a.async ? 4 === f.readyState ? setTimeout(b) : f.onreadystatechange = Xb[g] = b : b()
  3158. },
  3159. abort: function () {
  3160. b && b(void 0, !0)
  3161. }
  3162. }
  3163. }
  3164. });
  3165.  
  3166. function Zb() {
  3167. try {
  3168. return new a.XMLHttpRequest
  3169. } catch (b) {}
  3170. }
  3171.  
  3172. function $b() {
  3173. try {
  3174. return new a.ActiveXObject("Microsoft.XMLHTTP")
  3175. } catch (b) {}
  3176. }
  3177. m.ajaxSetup({
  3178. accepts: {
  3179. script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
  3180. },
  3181. contents: {
  3182. script: /(?:java|ecma)script/
  3183. },
  3184. converters: {
  3185. "text script": function (a) {
  3186. return m.globalEval(a), a
  3187. }
  3188. }
  3189. }), m.ajaxPrefilter("script", function (a) {
  3190. void 0 === a.cache && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1)
  3191. }), m.ajaxTransport("script", function (a) {
  3192. if (a.crossDomain) {
  3193. var b, c = y.head || m("head")[0] || y.documentElement;
  3194. return {
  3195. send: function (d, e) {
  3196. b = y.createElement("script"), b.async = !0, a.scriptCharset && (b.charset = a.scriptCharset), b.src = a.url, b.onload = b.onreadystatechange = function (a, c) {
  3197. (c || !b.readyState || /loaded|complete/.test(b.readyState)) && (b.onload = b.onreadystatechange = null, b.parentNode && b.parentNode.removeChild(b), b = null, c || e(200, "success"))
  3198. }, c.insertBefore(b, c.firstChild)
  3199. },
  3200. abort: function () {
  3201. b && b.onload(void 0, !0)
  3202. }
  3203. }
  3204. }
  3205. });
  3206. var _b = [],
  3207. ac = /(=)\?(?=&|$)|\?\?/;
  3208. m.ajaxSetup({
  3209. jsonp: "callback",
  3210. jsonpCallback: function () {
  3211. var a = _b.pop() || m.expando + "_" + vb++;
  3212. return this[a] = !0, a
  3213. }
  3214. }), m.ajaxPrefilter("json jsonp", function (b, c, d) {
  3215. var e, f, g, h = b.jsonp !== !1 && (ac.test(b.url) ? "url" : "string" == typeof b.data && !(b.contentType || "").indexOf("application/x-www-form-urlencoded") && ac.test(b.data) && "data");
  3216. return h || "jsonp" === b.dataTypes[0] ? (e = b.jsonpCallback = m.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback, h ? b[h] = b[h].replace(ac, "$1" + e) : b.jsonp !== !1 && (b.url += (wb.test(b.url) ? "&" : "?") + b.jsonp + "=" + e), b.converters["script json"] = function () {
  3217. return g || m.error(e + " was not called"), g[0]
  3218. }, b.dataTypes[0] = "json", f = a[e], a[e] = function () {
  3219. g = arguments
  3220. }, d.always(function () {
  3221. a[e] = f, b[e] && (b.jsonpCallback = c.jsonpCallback, _b.push(e)), g && m.isFunction(f) && f(g[0]), g = f = void 0
  3222. }), "script") : void 0
  3223. }), m.parseHTML = function (a, b, c) {
  3224. if (!a || "string" != typeof a) return null;
  3225. "boolean" == typeof b && (c = b, b = !1), b = b || y;
  3226. var d = u.exec(a),
  3227. e = !c && [];
  3228. return d ? [b.createElement(d[1])] : (d = m.buildFragment([a], b, e), e && e.length && m(e).remove(), m.merge([], d.childNodes))
  3229. };
  3230. var bc = m.fn.load;
  3231. m.fn.load = function (a, b, c) {
  3232. if ("string" != typeof a && bc) return bc.apply(this, arguments);
  3233. var d, e, f, g = this,
  3234. h = a.indexOf(" ");
  3235. return h >= 0 && (d = m.trim(a.slice(h, a.length)), a = a.slice(0, h)), m.isFunction(b) ? (c = b, b = void 0) : b && "object" == typeof b && (f = "POST"), g.length > 0 && m.ajax({
  3236. url: a,
  3237. type: f,
  3238. dataType: "html",
  3239. data: b
  3240. }).done(function (a) {
  3241. e = arguments, g.html(d ? m("<div>").append(m.parseHTML(a)).find(d) : a)
  3242. }).complete(c && function (a, b) {
  3243. g.each(c, e || [a.responseText, b, a])
  3244. }), this
  3245. }, m.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (a, b) {
  3246. m.fn[b] = function (a) {
  3247. return this.on(b, a)
  3248. }
  3249. }), m.expr.filters.animated = function (a) {
  3250. return m.grep(m.timers, function (b) {
  3251. return a === b.elem
  3252. }).length
  3253. };
  3254. var cc = a.document.documentElement;
  3255.  
  3256. function dc(a) {
  3257. return m.isWindow(a) ? a : 9 === a.nodeType ? a.defaultView || a.parentWindow : !1
  3258. }
  3259. m.offset = {
  3260. setOffset: function (a, b, c) {
  3261. var d, e, f, g, h, i, j, k = m.css(a, "position"),
  3262. l = m(a),
  3263. n = {};
  3264. "static" === k && (a.style.position = "relative"), h = l.offset(), f = m.css(a, "top"), i = m.css(a, "left"), j = ("absolute" === k || "fixed" === k) && m.inArray("auto", [f, i]) > -1, j ? (d = l.position(), g = d.top, e = d.left) : (g = parseFloat(f) || 0, e = parseFloat(i) || 0), m.isFunction(b) && (b = b.call(a, c, h)), null != b.top && (n.top = b.top - h.top + g), null != b.left && (n.left = b.left - h.left + e), "using" in b ? b.using.call(a, n) : l.css(n)
  3265. }
  3266. }, m.fn.extend({
  3267. offset: function (a) {
  3268. if (arguments.length) return void 0 === a ? this : this.each(function (b) {
  3269. m.offset.setOffset(this, a, b)
  3270. });
  3271. var b, c, d = {
  3272. top: 0,
  3273. left: 0
  3274. },
  3275. e = this[0],
  3276. f = e && e.ownerDocument;
  3277. if (f) return b = f.documentElement, m.contains(b, e) ? (typeof e.getBoundingClientRect !== K && (d = e.getBoundingClientRect()), c = dc(f), {
  3278. top: d.top + (c.pageYOffset || b.scrollTop) - (b.clientTop || 0),
  3279. left: d.left + (c.pageXOffset || b.scrollLeft) - (b.clientLeft || 0)
  3280. }) : d
  3281. },
  3282. position: function () {
  3283. if (this[0]) {
  3284. var a, b, c = {
  3285. top: 0,
  3286. left: 0
  3287. },
  3288. d = this[0];
  3289. return "fixed" === m.css(d, "position") ? b = d.getBoundingClientRect() : (a = this.offsetParent(), b = this.offset(), m.nodeName(a[0], "html") || (c = a.offset()), c.top += m.css(a[0], "borderTopWidth", !0), c.left += m.css(a[0], "borderLeftWidth", !0)), {
  3290. top: b.top - c.top - m.css(d, "marginTop", !0),
  3291. left: b.left - c.left - m.css(d, "marginLeft", !0)
  3292. }
  3293. }
  3294. },
  3295. offsetParent: function () {
  3296. return this.map(function () {
  3297. var a = this.offsetParent || cc;
  3298. while (a && !m.nodeName(a, "html") && "static" === m.css(a, "position")) a = a.offsetParent;
  3299. return a || cc
  3300. })
  3301. }
  3302. }), m.each({
  3303. scrollLeft: "pageXOffset",
  3304. scrollTop: "pageYOffset"
  3305. }, function (a, b) {
  3306. var c = /Y/.test(b);
  3307. m.fn[a] = function (d) {
  3308. return V(this, function (a, d, e) {
  3309. var f = dc(a);
  3310. return void 0 === e ? f ? b in f ? f[b] : f.document.documentElement[d] : a[d] : void(f ? f.scrollTo(c ? m(f).scrollLeft() : e, c ? e : m(f).scrollTop()) : a[d] = e)
  3311. }, a, d, arguments.length, null)
  3312. }
  3313. }), m.each(["top", "left"], function (a, b) {
  3314. m.cssHooks[b] = La(k.pixelPosition, function (a, c) {
  3315. return c ? (c = Ja(a, b), Ha.test(c) ? m(a).position()[b] + "px" : c) : void 0
  3316. })
  3317. }), m.each({
  3318. Height: "height",
  3319. Width: "width"
  3320. }, function (a, b) {
  3321. m.each({
  3322. padding: "inner" + a,
  3323. content: b,
  3324. "": "outer" + a
  3325. }, function (c, d) {
  3326. m.fn[d] = function (d, e) {
  3327. var f = arguments.length && (c || "boolean" != typeof d),
  3328. g = c || (d === !0 || e === !0 ? "margin" : "border");
  3329. return V(this, function (b, c, d) {
  3330. var e;
  3331. return m.isWindow(b) ? b.document.documentElement["client" + a] : 9 === b.nodeType ? (e = b.documentElement, Math.max(b.body["scroll" + a], e["scroll" + a], b.body["offset" + a], e["offset" + a], e["client" + a])) : void 0 === d ? m.css(b, c, g) : m.style(b, c, d, g)
  3332. }, b, f ? d : void 0, f, null)
  3333. }
  3334. })
  3335. }), m.fn.size = function () {
  3336. return this.length
  3337. }, m.fn.andSelf = m.fn.addBack, "function" == typeof define && define.amd && define("jquery", [], function () {
  3338. return m
  3339. });
  3340. var ec = a.jQuery,
  3341. fc = a.$;
  3342. return m.noConflict = function (b) {
  3343. return a.$ === m && (a.$ = fc), b && a.jQuery === m && (a.jQuery = ec), m
  3344. }, typeof b === K && (a.jQuery = a.$ = m), m
  3345. });
  3346.  
  3347.  
  3348. /*!
  3349. * Bootstrap v3.3.5 (http://getbootstrap.com)
  3350. * Copyright 2011-2015 Twitter, Inc.
  3351. * Licensed under the MIT license
  3352. */
  3353. if ("undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); + function (a) {
  3354. "use strict";
  3355. var b = a.fn.jquery.split(" ")[0].split(".");
  3356. if (b[0] < 2 && b[1] < 9 || 1 == b[0] && 9 == b[1] && b[2] < 1) throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")
  3357. }(jQuery), + function (a) {
  3358. "use strict";
  3359.  
  3360. function b() {
  3361. var a = document.createElement("bootstrap"),
  3362. b = {
  3363. WebkitTransition: "webkitTransitionEnd",
  3364. MozTransition: "transitionend",
  3365. OTransition: "oTransitionEnd otransitionend",
  3366. transition: "transitionend"
  3367. };
  3368. for (var c in b)
  3369. if (void 0 !== a.style[c]) return {
  3370. end: b[c]
  3371. };
  3372. return !1
  3373. }
  3374. a.fn.emulateTransitionEnd = function (b) {
  3375. var c = !1,
  3376. d = this;
  3377. a(this).one("bsTransitionEnd", function () {
  3378. c = !0
  3379. });
  3380. var e = function () {
  3381. c || a(d).trigger(a.support.transition.end)
  3382. };
  3383. return setTimeout(e, b), this
  3384. }, a(function () {
  3385. a.support.transition = b(), a.support.transition && (a.event.special.bsTransitionEnd = {
  3386. bindType: a.support.transition.end,
  3387. delegateType: a.support.transition.end,
  3388. handle: function (b) {
  3389. return a(b.target).is(this) ? b.handleObj.handler.apply(this, arguments) : void 0
  3390. }
  3391. })
  3392. })
  3393. }(jQuery), + function (a) {
  3394. "use strict";
  3395.  
  3396. function b(b) {
  3397. return this.each(function () {
  3398. var c = a(this),
  3399. e = c.data("bs.alert");
  3400. e || c.data("bs.alert", e = new d(this)), "string" == typeof b && e[b].call(c)
  3401. })
  3402. }
  3403. var c = '[data-dismiss="alert"]',
  3404. d = function (b) {
  3405. a(b).on("click", c, this.close)
  3406. };
  3407. d.VERSION = "3.3.5", d.TRANSITION_DURATION = 150, d.prototype.close = function (b) {
  3408. function c() {
  3409. g.detach().trigger("closed.bs.alert").remove()
  3410. }
  3411. var e = a(this),
  3412. f = e.attr("data-target");
  3413. f || (f = e.attr("href"), f = f && f.replace(/.*(?=#[^\s]*$)/, ""));
  3414. var g = a(f);
  3415. b && b.preventDefault(), g.length || (g = e.closest(".alert")), g.trigger(b = a.Event("close.bs.alert")), b.isDefaultPrevented() || (g.removeClass("in"), a.support.transition && g.hasClass("fade") ? g.one("bsTransitionEnd", c).emulateTransitionEnd(d.TRANSITION_DURATION) : c())
  3416. };
  3417. var e = a.fn.alert;
  3418. a.fn.alert = b, a.fn.alert.Constructor = d, a.fn.alert.noConflict = function () {
  3419. return a.fn.alert = e, this
  3420. }, a(document).on("click.bs.alert.data-api", c, d.prototype.close)
  3421. }(jQuery), + function (a) {
  3422. "use strict";
  3423.  
  3424. function b(b) {
  3425. return this.each(function () {
  3426. var d = a(this),
  3427. e = d.data("bs.button"),
  3428. f = "object" == typeof b && b;
  3429. e || d.data("bs.button", e = new c(this, f)), "toggle" == b ? e.toggle() : b && e.setState(b)
  3430. })
  3431. }
  3432. var c = function (b, d) {
  3433. this.$element = a(b), this.options = a.extend({}, c.DEFAULTS, d), this.isLoading = !1
  3434. };
  3435. c.VERSION = "3.3.5", c.DEFAULTS = {
  3436. loadingText: "loading..."
  3437. }, c.prototype.setState = function (b) {
  3438. var c = "disabled",
  3439. d = this.$element,
  3440. e = d.is("input") ? "val" : "html",
  3441. f = d.data();
  3442. b += "Text", null == f.resetText && d.data("resetText", d[e]()), setTimeout(a.proxy(function () {
  3443. d[e](null == f[b] ? this.options[b] : f[b]), "loadingText" == b ? (this.isLoading = !0, d.addClass(c).attr(c, c)) : this.isLoading && (this.isLoading = !1, d.removeClass(c).removeAttr(c))
  3444. }, this), 0)
  3445. }, c.prototype.toggle = function () {
  3446. var a = !0,
  3447. b = this.$element.closest('[data-toggle="buttons"]');
  3448. if (b.length) {
  3449. var c = this.$element.find("input");
  3450. "radio" == c.prop("type") ? (c.prop("checked") && (a = !1), b.find(".active").removeClass("active"), this.$element.addClass("active")) : "checkbox" == c.prop("type") && (c.prop("checked") !== this.$element.hasClass("active") && (a = !1), this.$element.toggleClass("active")), c.prop("checked", this.$element.hasClass("active")), a && c.trigger("change")
  3451. } else this.$element.attr("aria-pressed", !this.$element.hasClass("active")), this.$element.toggleClass("active")
  3452. };
  3453. var d = a.fn.button;
  3454. a.fn.button = b, a.fn.button.Constructor = c, a.fn.button.noConflict = function () {
  3455. return a.fn.button = d, this
  3456. }, a(document).on("click.bs.button.data-api", '[data-toggle^="button"]', function (c) {
  3457. var d = a(c.target);
  3458. d.hasClass("btn") || (d = d.closest(".btn")), b.call(d, "toggle"), a(c.target).is('input[type="radio"]') || a(c.target).is('input[type="checkbox"]') || c.preventDefault()
  3459. }).on("focus.bs.button.data-api blur.bs.button.data-api", '[data-toggle^="button"]', function (b) {
  3460. a(b.target).closest(".btn").toggleClass("focus", /^focus(in)?$/.test(b.type))
  3461. })
  3462. }(jQuery), + function (a) {
  3463. "use strict";
  3464.  
  3465. function b(b) {
  3466. return this.each(function () {
  3467. var d = a(this),
  3468. e = d.data("bs.carousel"),
  3469. f = a.extend({}, c.DEFAULTS, d.data(), "object" == typeof b && b),
  3470. g = "string" == typeof b ? b : f.slide;
  3471. e || d.data("bs.carousel", e = new c(this, f)), "number" == typeof b ? e.to(b) : g ? e[g]() : f.interval && e.pause().cycle()
  3472. })
  3473. }
  3474. var c = function (b, c) {
  3475. this.$element = a(b), this.$indicators = this.$element.find(".carousel-indicators"), this.options = c, this.paused = null, this.sliding = null, this.interval = null, this.$active = null, this.$items = null, this.options.keyboard && this.$element.on("keydown.bs.carousel", a.proxy(this.keydown, this)), "hover" == this.options.pause && !("ontouchstart" in document.documentElement) && this.$element.on("mouseenter.bs.carousel", a.proxy(this.pause, this)).on("mouseleave.bs.carousel", a.proxy(this.cycle, this))
  3476. };
  3477. c.VERSION = "3.3.5", c.TRANSITION_DURATION = 600, c.DEFAULTS = {
  3478. interval: 5e3,
  3479. pause: "hover",
  3480. wrap: !0,
  3481. keyboard: !0
  3482. }, c.prototype.keydown = function (a) {
  3483. if (!/input|textarea/i.test(a.target.tagName)) {
  3484. switch (a.which) {
  3485. case 37:
  3486. this.prev();
  3487. break;
  3488. case 39:
  3489. this.next();
  3490. break;
  3491. default:
  3492. return
  3493. }
  3494. a.preventDefault()
  3495. }
  3496. }, c.prototype.cycle = function (b) {
  3497. return b || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)), this
  3498. }, c.prototype.getItemIndex = function (a) {
  3499. return this.$items = a.parent().children(".item"), this.$items.index(a || this.$active)
  3500. }, c.prototype.getItemForDirection = function (a, b) {
  3501. var c = this.getItemIndex(b),
  3502. d = "prev" == a && 0 === c || "next" == a && c == this.$items.length - 1;
  3503. if (d && !this.options.wrap) return b;
  3504. var e = "prev" == a ? -1 : 1,
  3505. f = (c + e) % this.$items.length;
  3506. return this.$items.eq(f)
  3507. }, c.prototype.to = function (a) {
  3508. var b = this,
  3509. c = this.getItemIndex(this.$active = this.$element.find(".item.active"));
  3510. return a > this.$items.length - 1 || 0 > a ? void 0 : this.sliding ? this.$element.one("slid.bs.carousel", function () {
  3511. b.to(a)
  3512. }) : c == a ? this.pause().cycle() : this.slide(a > c ? "next" : "prev", this.$items.eq(a))
  3513. }, c.prototype.pause = function (b) {
  3514. return b || (this.paused = !0), this.$element.find(".next, .prev").length && a.support.transition && (this.$element.trigger(a.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this
  3515. }, c.prototype.next = function () {
  3516. return this.sliding ? void 0 : this.slide("next")
  3517. }, c.prototype.prev = function () {
  3518. return this.sliding ? void 0 : this.slide("prev")
  3519. }, c.prototype.slide = function (b, d) {
  3520. var e = this.$element.find(".item.active"),
  3521. f = d || this.getItemForDirection(b, e),
  3522. g = this.interval,
  3523. h = "next" == b ? "left" : "right",
  3524. i = this;
  3525. if (f.hasClass("active")) return this.sliding = !1;
  3526. var j = f[0],
  3527. k = a.Event("slide.bs.carousel", {
  3528. relatedTarget: j,
  3529. direction: h
  3530. });
  3531. if (this.$element.trigger(k), !k.isDefaultPrevented()) {
  3532. if (this.sliding = !0, g && this.pause(), this.$indicators.length) {
  3533. this.$indicators.find(".active").removeClass("active");
  3534. var l = a(this.$indicators.children()[this.getItemIndex(f)]);
  3535. l && l.addClass("active")
  3536. }
  3537. var m = a.Event("slid.bs.carousel", {
  3538. relatedTarget: j,
  3539. direction: h
  3540. });
  3541. return a.support.transition && this.$element.hasClass("slide") ? (f.addClass(b), f[0].offsetWidth, e.addClass(h), f.addClass(h), e.one("bsTransitionEnd", function () {
  3542. f.removeClass([b, h].join(" ")).addClass("active"), e.removeClass(["active", h].join(" ")), i.sliding = !1, setTimeout(function () {
  3543. i.$element.trigger(m)
  3544. }, 0)
  3545. }).emulateTransitionEnd(c.TRANSITION_DURATION)) : (e.removeClass("active"), f.addClass("active"), this.sliding = !1, this.$element.trigger(m)), g && this.cycle(), this
  3546. }
  3547. };
  3548. var d = a.fn.carousel;
  3549. a.fn.carousel = b, a.fn.carousel.Constructor = c, a.fn.carousel.noConflict = function () {
  3550. return a.fn.carousel = d, this
  3551. };
  3552. var e = function (c) {
  3553. var d, e = a(this),
  3554. f = a(e.attr("data-target") || (d = e.attr("href")) && d.replace(/.*(?=#[^\s]+$)/, ""));
  3555. if (f.hasClass("carousel")) {
  3556. var g = a.extend({}, f.data(), e.data()),
  3557. h = e.attr("data-slide-to");
  3558. h && (g.interval = !1), b.call(f, g), h && f.data("bs.carousel").to(h), c.preventDefault()
  3559. }
  3560. };
  3561. a(document).on("click.bs.carousel.data-api", "[data-slide]", e).on("click.bs.carousel.data-api", "[data-slide-to]", e), a(window).on("load", function () {
  3562. a('[data-ride="carousel"]').each(function () {
  3563. var c = a(this);
  3564. b.call(c, c.data())
  3565. })
  3566. })
  3567. }(jQuery), + function (a) {
  3568. "use strict";
  3569.  
  3570. function b(b) {
  3571. var c, d = b.attr("data-target") || (c = b.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, "");
  3572. return a(d)
  3573. }
  3574.  
  3575. function c(b) {
  3576. return this.each(function () {
  3577. var c = a(this),
  3578. e = c.data("bs.collapse"),
  3579. f = a.extend({}, d.DEFAULTS, c.data(), "object" == typeof b && b);
  3580. !e && f.toggle && /show|hide/.test(b) && (f.toggle = !1), e || c.data("bs.collapse", e = new d(this, f)), "string" == typeof b && e[b]()
  3581. })
  3582. }
  3583. var d = function (b, c) {
  3584. this.$element = a(b), this.options = a.extend({}, d.DEFAULTS, c), this.$trigger = a('[data-toggle="collapse"][href="#' + b.id + '"],[data-toggle="collapse"][data-target="#' + b.id + '"]'), this.transitioning = null, this.options.parent ? this.$parent = this.getParent() : this.addAriaAndCollapsedClass(this.$element, this.$trigger), this.options.toggle && this.toggle()
  3585. };
  3586. d.VERSION = "3.3.5", d.TRANSITION_DURATION = 350, d.DEFAULTS = {
  3587. toggle: !0
  3588. }, d.prototype.dimension = function () {
  3589. var a = this.$element.hasClass("width");
  3590. return a ? "width" : "height"
  3591. }, d.prototype.show = function () {
  3592. if (!this.transitioning && !this.$element.hasClass("in")) {
  3593. var b, e = this.$parent && this.$parent.children(".panel").children(".in, .collapsing");
  3594. if (!(e && e.length && (b = e.data("bs.collapse"), b && b.transitioning))) {
  3595. var f = a.Event("show.bs.collapse");
  3596. if (this.$element.trigger(f), !f.isDefaultPrevented()) {
  3597. e && e.length && (c.call(e, "hide"), b || e.data("bs.collapse", null));
  3598. var g = this.dimension();
  3599. this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded", !0), this.$trigger.removeClass("collapsed").attr("aria-expanded", !0), this.transitioning = 1;
  3600. var h = function () {
  3601. this.$element.removeClass("collapsing").addClass("collapse in")[g](""), this.transitioning = 0, this.$element.trigger("shown.bs.collapse")
  3602. };
  3603. if (!a.support.transition) return h.call(this);
  3604. var i = a.camelCase(["scroll", g].join("-"));
  3605. this.$element.one("bsTransitionEnd", a.proxy(h, this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])
  3606. }
  3607. }
  3608. }
  3609. }, d.prototype.hide = function () {
  3610. if (!this.transitioning && this.$element.hasClass("in")) {
  3611. var b = a.Event("hide.bs.collapse");
  3612. if (this.$element.trigger(b), !b.isDefaultPrevented()) {
  3613. var c = this.dimension();
  3614. this.$element[c](this.$element[c]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded", !1), this.$trigger.addClass("collapsed").attr("aria-expanded", !1), this.transitioning = 1;
  3615. var e = function () {
  3616. this.transitioning = 0, this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")
  3617. };
  3618. return a.support.transition ? void this.$element[c](0).one("bsTransitionEnd", a.proxy(e, this)).emulateTransitionEnd(d.TRANSITION_DURATION) : e.call(this)
  3619. }
  3620. }
  3621. }, d.prototype.toggle = function () {
  3622. this[this.$element.hasClass("in") ? "hide" : "show"]()
  3623. }, d.prototype.getParent = function () {
  3624. return a(this.options.parent).find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]').each(a.proxy(function (c, d) {
  3625. var e = a(d);
  3626. this.addAriaAndCollapsedClass(b(e), e)
  3627. }, this)).end()
  3628. }, d.prototype.addAriaAndCollapsedClass = function (a, b) {
  3629. var c = a.hasClass("in");
  3630. a.attr("aria-expanded", c), b.toggleClass("collapsed", !c).attr("aria-expanded", c)
  3631. };
  3632. var e = a.fn.collapse;
  3633. a.fn.collapse = c, a.fn.collapse.Constructor = d, a.fn.collapse.noConflict = function () {
  3634. return a.fn.collapse = e, this
  3635. }, a(document).on("click.bs.collapse.data-api", '[data-toggle="collapse"]', function (d) {
  3636. var e = a(this);
  3637. e.attr("data-target") || d.preventDefault();
  3638. var f = b(e),
  3639. g = f.data("bs.collapse"),
  3640. h = g ? "toggle" : e.data();
  3641. c.call(f, h)
  3642. })
  3643. }(jQuery), + function (a) {
  3644. "use strict";
  3645.  
  3646. function b(b) {
  3647. var c = b.attr("data-target");
  3648. c || (c = b.attr("href"), c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, ""));
  3649. var d = c && a(c);
  3650. return d && d.length ? d : b.parent()
  3651. }
  3652.  
  3653. function c(c) {
  3654. c && 3 === c.which || (a(e).remove(), a(f).each(function () {
  3655. var d = a(this),
  3656. e = b(d),
  3657. f = {
  3658. relatedTarget: this
  3659. };
  3660. e.hasClass("open") && (c && "click" == c.type && /input|textarea/i.test(c.target.tagName) && a.contains(e[0], c.target) || (e.trigger(c = a.Event("hide.bs.dropdown", f)), c.isDefaultPrevented() || (d.attr("aria-expanded", "false"), e.removeClass("open").trigger("hidden.bs.dropdown", f))))
  3661. }))
  3662. }
  3663.  
  3664. function d(b) {
  3665. return this.each(function () {
  3666. var c = a(this),
  3667. d = c.data("bs.dropdown");
  3668. d || c.data("bs.dropdown", d = new g(this)), "string" == typeof b && d[b].call(c)
  3669. })
  3670. }
  3671. var e = ".dropdown-backdrop",
  3672. f = '[data-toggle="dropdown"]',
  3673. g = function (b) {
  3674. a(b).on("click.bs.dropdown", this.toggle)
  3675. };
  3676. g.VERSION = "3.3.5", g.prototype.toggle = function (d) {
  3677. var e = a(this);
  3678. if (!e.is(".disabled, :disabled")) {
  3679. var f = b(e),
  3680. g = f.hasClass("open");
  3681. if (c(), !g) {
  3682. "ontouchstart" in document.documentElement && !f.closest(".navbar-nav").length && a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click", c);
  3683. var h = {
  3684. relatedTarget: this
  3685. };
  3686. if (f.trigger(d = a.Event("show.bs.dropdown", h)), d.isDefaultPrevented()) return;
  3687. e.trigger("focus").attr("aria-expanded", "true"), f.toggleClass("open").trigger("shown.bs.dropdown", h)
  3688. }
  3689. return !1
  3690. }
  3691. }, g.prototype.keydown = function (c) {
  3692. if (/(38|40|27|32)/.test(c.which) && !/input|textarea/i.test(c.target.tagName)) {
  3693. var d = a(this);
  3694. if (c.preventDefault(), c.stopPropagation(), !d.is(".disabled, :disabled")) {
  3695. var e = b(d),
  3696. g = e.hasClass("open");
  3697. if (!g && 27 != c.which || g && 27 == c.which) return 27 == c.which && e.find(f).trigger("focus"), d.trigger("click");
  3698. var h = " li:not(.disabled):visible a",
  3699. i = e.find(".dropdown-menu" + h);
  3700. if (i.length) {
  3701. var j = i.index(c.target);
  3702. 38 == c.which && j > 0 && j--, 40 == c.which && j < i.length - 1 && j++, ~j || (j = 0), i.eq(j).trigger("focus")
  3703. }
  3704. }
  3705. }
  3706. };
  3707. var h = a.fn.dropdown;
  3708. a.fn.dropdown = d, a.fn.dropdown.Constructor = g, a.fn.dropdown.noConflict = function () {
  3709. return a.fn.dropdown = h, this
  3710. }, a(document).on("click.bs.dropdown.data-api", c).on("click.bs.dropdown.data-api", ".dropdown form", function (a) {
  3711. a.stopPropagation()
  3712. }).on("click.bs.dropdown.data-api", f, g.prototype.toggle).on("keydown.bs.dropdown.data-api", f, g.prototype.keydown).on("keydown.bs.dropdown.data-api", ".dropdown-menu", g.prototype.keydown)
  3713. }(jQuery), + function (a) {
  3714. "use strict";
  3715.  
  3716. function b(b, d) {
  3717. return this.each(function () {
  3718. var e = a(this),
  3719. f = e.data("bs.modal"),
  3720. g = a.extend({}, c.DEFAULTS, e.data(), "object" == typeof b && b);
  3721. f || e.data("bs.modal", f = new c(this, g)), "string" == typeof b ? f[b](d) : g.show && f.show(d)
  3722. })
  3723. }
  3724. var c = function (b, c) {
  3725. this.options = c, this.$body = a(document.body), this.$element = a(b), this.$dialog = this.$element.find(".modal-dialog"), this.$backdrop = null, this.isShown = null, this.originalBodyPad = null, this.scrollbarWidth = 0, this.ignoreBackdropClick = !1, this.options.remote && this.$element.find(".modal-content").load(this.options.remote, a.proxy(function () {
  3726. this.$element.trigger("loaded.bs.modal")
  3727. }, this))
  3728. };
  3729. c.VERSION = "3.3.5", c.TRANSITION_DURATION = 300, c.BACKDROP_TRANSITION_DURATION = 150, c.DEFAULTS = {
  3730. backdrop: !0,
  3731. keyboard: !0,
  3732. show: !0
  3733. }, c.prototype.toggle = function (a) {
  3734. return this.isShown ? this.hide() : this.show(a)
  3735. }, c.prototype.show = function (b) {
  3736. var d = this,
  3737. e = a.Event("show.bs.modal", {
  3738. relatedTarget: b
  3739. });
  3740. this.$element.trigger(e), this.isShown || e.isDefaultPrevented() || (this.isShown = !0, this.checkScrollbar(), this.setScrollbar(), this.$body.addClass("modal-open"), this.escape(), this.resize(), this.$element.on("click.dismiss.bs.modal", '[data-dismiss="modal"]', a.proxy(this.hide, this)), this.$dialog.on("mousedown.dismiss.bs.modal", function () {
  3741. d.$element.one("mouseup.dismiss.bs.modal", function (b) {
  3742. a(b.target).is(d.$element) && (d.ignoreBackdropClick = !0)
  3743. })
  3744. }), this.backdrop(function () {
  3745. var e = a.support.transition && d.$element.hasClass("fade");
  3746. d.$element.parent().length || d.$element.appendTo(d.$body), d.$element.show().scrollTop(0), d.adjustDialog(), e && d.$element[0].offsetWidth, d.$element.addClass("in"), d.enforceFocus();
  3747. var f = a.Event("shown.bs.modal", {
  3748. relatedTarget: b
  3749. });
  3750. e ? d.$dialog.one("bsTransitionEnd", function () {
  3751. d.$element.trigger("focus").trigger(f)
  3752. }).emulateTransitionEnd(c.TRANSITION_DURATION) : d.$element.trigger("focus").trigger(f)
  3753. }))
  3754. }, c.prototype.hide = function (b) {
  3755. b && b.preventDefault(), b = a.Event("hide.bs.modal"), this.$element.trigger(b), this.isShown && !b.isDefaultPrevented() && (this.isShown = !1, this.escape(), this.resize(), a(document).off("focusin.bs.modal"), this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"), this.$dialog.off("mousedown.dismiss.bs.modal"), a.support.transition && this.$element.hasClass("fade") ? this.$element.one("bsTransitionEnd", a.proxy(this.hideModal, this)).emulateTransitionEnd(c.TRANSITION_DURATION) : this.hideModal())
  3756. }, c.prototype.enforceFocus = function () {
  3757. a(document).off("focusin.bs.modal").on("focusin.bs.modal", a.proxy(function (a) {
  3758. this.$element[0] === a.target || this.$element.has(a.target).length || this.$element.trigger("focus")
  3759. }, this))
  3760. }, c.prototype.escape = function () {
  3761. this.isShown && this.options.keyboard ? this.$element.on("keydown.dismiss.bs.modal", a.proxy(function (a) {
  3762. 27 == a.which && this.hide()
  3763. }, this)) : this.isShown || this.$element.off("keydown.dismiss.bs.modal")
  3764. }, c.prototype.resize = function () {
  3765. this.isShown ? a(window).on("resize.bs.modal", a.proxy(this.handleUpdate, this)) : a(window).off("resize.bs.modal")
  3766. }, c.prototype.hideModal = function () {
  3767. var a = this;
  3768. this.$element.hide(), this.backdrop(function () {
  3769. a.$body.removeClass("modal-open"), a.resetAdjustments(), a.resetScrollbar(), a.$element.trigger("hidden.bs.modal")
  3770. })
  3771. }, c.prototype.removeBackdrop = function () {
  3772. this.$backdrop && this.$backdrop.remove(), this.$backdrop = null
  3773. }, c.prototype.backdrop = function (b) {
  3774. var d = this,
  3775. e = this.$element.hasClass("fade") ? "fade" : "";
  3776. if (this.isShown && this.options.backdrop) {
  3777. var f = a.support.transition && e;
  3778. if (this.$backdrop = a(document.createElement("div")).addClass("modal-backdrop " + e).appendTo(this.$body), this.$element.on("click.dismiss.bs.modal", a.proxy(function (a) {
  3779. return this.ignoreBackdropClick ? void(this.ignoreBackdropClick = !1) : void(a.target === a.currentTarget && ("static" == this.options.backdrop ? this.$element[0].focus() : this.hide()))
  3780. }, this)), f && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !b) return;
  3781. f ? this.$backdrop.one("bsTransitionEnd", b).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION) : b()
  3782. } else if (!this.isShown && this.$backdrop) {
  3783. this.$backdrop.removeClass("in");
  3784. var g = function () {
  3785. d.removeBackdrop(), b && b()
  3786. };
  3787. a.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one("bsTransitionEnd", g).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION) : g()
  3788. } else b && b()
  3789. }, c.prototype.handleUpdate = function () {
  3790. this.adjustDialog()
  3791. }, c.prototype.adjustDialog = function () {
  3792. var a = this.$element[0].scrollHeight > document.documentElement.clientHeight;
  3793. this.$element.css({
  3794. paddingLeft: !this.bodyIsOverflowing && a ? this.scrollbarWidth : "",
  3795. paddingRight: this.bodyIsOverflowing && !a ? this.scrollbarWidth : ""
  3796. })
  3797. }, c.prototype.resetAdjustments = function () {
  3798. this.$element.css({
  3799. paddingLeft: "",
  3800. paddingRight: ""
  3801. })
  3802. }, c.prototype.checkScrollbar = function () {
  3803. var a = window.innerWidth;
  3804. if (!a) {
  3805. var b = document.documentElement.getBoundingClientRect();
  3806. a = b.right - Math.abs(b.left)
  3807. }
  3808. this.bodyIsOverflowing = document.body.clientWidth < a, this.scrollbarWidth = this.measureScrollbar()
  3809. }, c.prototype.setScrollbar = function () {
  3810. var a = parseInt(this.$body.css("padding-right") || 0, 10);
  3811. this.originalBodyPad = document.body.style.paddingRight || "", this.bodyIsOverflowing && this.$body.css("padding-right", a + this.scrollbarWidth)
  3812. }, c.prototype.resetScrollbar = function () {
  3813. this.$body.css("padding-right", this.originalBodyPad)
  3814. }, c.prototype.measureScrollbar = function () {
  3815. var a = document.createElement("div");
  3816. a.className = "modal-scrollbar-measure", this.$body.append(a);
  3817. var b = a.offsetWidth - a.clientWidth;
  3818. return this.$body[0].removeChild(a), b
  3819. };
  3820. var d = a.fn.modal;
  3821. a.fn.modal = b, a.fn.modal.Constructor = c, a.fn.modal.noConflict = function () {
  3822. return a.fn.modal = d, this
  3823. }, a(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function (c) {
  3824. var d = a(this),
  3825. e = d.attr("href"),
  3826. f = a(d.attr("data-target") || e && e.replace(/.*(?=#[^\s]+$)/, "")),
  3827. g = f.data("bs.modal") ? "toggle" : a.extend({
  3828. remote: !/#/.test(e) && e
  3829. }, f.data(), d.data());
  3830. d.is("a") && c.preventDefault(), f.one("show.bs.modal", function (a) {
  3831. a.isDefaultPrevented() || f.one("hidden.bs.modal", function () {
  3832. d.is(":visible") && d.trigger("focus")
  3833. })
  3834. }), b.call(f, g, this)
  3835. })
  3836. }(jQuery), + function (a) {
  3837. "use strict";
  3838.  
  3839. function b(b) {
  3840. return this.each(function () {
  3841. var d = a(this),
  3842. e = d.data("bs.tooltip"),
  3843. f = "object" == typeof b && b;
  3844. (e || !/destroy|hide/.test(b)) && (e || d.data("bs.tooltip", e = new c(this, f)), "string" == typeof b && e[b]())
  3845. })
  3846. }
  3847. var c = function (a, b) {
  3848. this.type = null, this.options = null, this.enabled = null, this.timeout = null, this.hoverState = null, this.$element = null, this.inState = null, this.init("tooltip", a, b)
  3849. };
  3850. c.VERSION = "3.3.5", c.TRANSITION_DURATION = 150, c.DEFAULTS = {
  3851. animation: !0,
  3852. placement: "top",
  3853. selector: !1,
  3854. template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
  3855. trigger: "hover focus",
  3856. title: "",
  3857. delay: 0,
  3858. html: !1,
  3859. container: !1,
  3860. viewport: {
  3861. selector: "body",
  3862. padding: 0
  3863. }
  3864. }, c.prototype.init = function (b, c, d) {
  3865. if (this.enabled = !0, this.type = b, this.$element = a(c), this.options = this.getOptions(d), this.$viewport = this.options.viewport && a(a.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : this.options.viewport.selector || this.options.viewport), this.inState = {
  3866. click: !1,
  3867. hover: !1,
  3868. focus: !1
  3869. }, this.$element[0] instanceof document.constructor && !this.options.selector) throw new Error("`selector` option must be specified when initializing " + this.type + " on the window.document object!");
  3870. for (var e = this.options.trigger.split(" "), f = e.length; f--;) {
  3871. var g = e[f];
  3872. if ("click" == g) this.$element.on("click." + this.type, this.options.selector, a.proxy(this.toggle, this));
  3873. else if ("manual" != g) {
  3874. var h = "hover" == g ? "mouseenter" : "focusin",
  3875. i = "hover" == g ? "mouseleave" : "focusout";
  3876. this.$element.on(h + "." + this.type, this.options.selector, a.proxy(this.enter, this)), this.$element.on(i + "." + this.type, this.options.selector, a.proxy(this.leave, this))
  3877. }
  3878. }
  3879. this.options.selector ? this._options = a.extend({}, this.options, {
  3880. trigger: "manual",
  3881. selector: ""
  3882. }) : this.fixTitle()
  3883. }, c.prototype.getDefaults = function () {
  3884. return c.DEFAULTS
  3885. }, c.prototype.getOptions = function (b) {
  3886. return b = a.extend({}, this.getDefaults(), this.$element.data(), b), b.delay && "number" == typeof b.delay && (b.delay = {
  3887. show: b.delay,
  3888. hide: b.delay
  3889. }), b
  3890. }, c.prototype.getDelegateOptions = function () {
  3891. var b = {},
  3892. c = this.getDefaults();
  3893. return this._options && a.each(this._options, function (a, d) {
  3894. c[a] != d && (b[a] = d)
  3895. }), b
  3896. }, c.prototype.enter = function (b) {
  3897. var c = b instanceof this.constructor ? b : a(b.currentTarget).data("bs." + this.type);
  3898. return c || (c = new this.constructor(b.currentTarget, this.getDelegateOptions()), a(b.currentTarget).data("bs." + this.type, c)), b instanceof a.Event && (c.inState["focusin" == b.type ? "focus" : "hover"] = !0), c.tip().hasClass("in") || "in" == c.hoverState ? void(c.hoverState = "in") : (clearTimeout(c.timeout), c.hoverState = "in", c.options.delay && c.options.delay.show ? void(c.timeout = setTimeout(function () {
  3899. "in" == c.hoverState && c.show()
  3900. }, c.options.delay.show)) : c.show())
  3901. }, c.prototype.isInStateTrue = function () {
  3902. for (var a in this.inState)
  3903. if (this.inState[a]) return !0;
  3904. return !1
  3905. }, c.prototype.leave = function (b) {
  3906. var c = b instanceof this.constructor ? b : a(b.currentTarget).data("bs." + this.type);
  3907. return c || (c = new this.constructor(b.currentTarget, this.getDelegateOptions()), a(b.currentTarget).data("bs." + this.type, c)), b instanceof a.Event && (c.inState["focusout" == b.type ? "focus" : "hover"] = !1), c.isInStateTrue() ? void 0 : (clearTimeout(c.timeout), c.hoverState = "out", c.options.delay && c.options.delay.hide ? void(c.timeout = setTimeout(function () {
  3908. "out" == c.hoverState && c.hide()
  3909. }, c.options.delay.hide)) : c.hide())
  3910. }, c.prototype.show = function () {
  3911. var b = a.Event("show.bs." + this.type);
  3912. if (this.hasContent() && this.enabled) {
  3913. this.$element.trigger(b);
  3914. var d = a.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]);
  3915. if (b.isDefaultPrevented() || !d) return;
  3916. var e = this,
  3917. f = this.tip(),
  3918. g = this.getUID(this.type);
  3919. this.setContent(), f.attr("id", g), this.$element.attr("aria-describedby", g), this.options.animation && f.addClass("fade");
  3920. var h = "function" == typeof this.options.placement ? this.options.placement.call(this, f[0], this.$element[0]) : this.options.placement,
  3921. i = /\s?auto?\s?/i,
  3922. j = i.test(h);
  3923. j && (h = h.replace(i, "") || "top"), f.detach().css({
  3924. top: 0,
  3925. left: 0,
  3926. display: "block"
  3927. }).addClass(h).data("bs." + this.type, this), this.options.container ? f.appendTo(this.options.container) : f.insertAfter(this.$element), this.$element.trigger("inserted.bs." + this.type);
  3928. var k = this.getPosition(),
  3929. l = f[0].offsetWidth,
  3930. m = f[0].offsetHeight;
  3931. if (j) {
  3932. var n = h,
  3933. o = this.getPosition(this.$viewport);
  3934. h = "bottom" == h && k.bottom + m > o.bottom ? "top" : "top" == h && k.top - m < o.top ? "bottom" : "right" == h && k.right + l > o.width ? "left" : "left" == h && k.left - l < o.left ? "right" : h, f.removeClass(n).addClass(h)
  3935. }
  3936. var p = this.getCalculatedOffset(h, k, l, m);
  3937. this.applyPlacement(p, h);
  3938. var q = function () {
  3939. var a = e.hoverState;
  3940. e.$element.trigger("shown.bs." + e.type), e.hoverState = null, "out" == a && e.leave(e)
  3941. };
  3942. a.support.transition && this.$tip.hasClass("fade") ? f.one("bsTransitionEnd", q).emulateTransitionEnd(c.TRANSITION_DURATION) : q()
  3943. }
  3944. }, c.prototype.applyPlacement = function (b, c) {
  3945. var d = this.tip(),
  3946. e = d[0].offsetWidth,
  3947. f = d[0].offsetHeight,
  3948. g = parseInt(d.css("margin-top"), 10),
  3949. h = parseInt(d.css("margin-left"), 10);
  3950. isNaN(g) && (g = 0), isNaN(h) && (h = 0), b.top += g, b.left += h, a.offset.setOffset(d[0], a.extend({
  3951. using: function (a) {
  3952. d.css({
  3953. top: Math.round(a.top),
  3954. left: Math.round(a.left)
  3955. })
  3956. }
  3957. }, b), 0), d.addClass("in");
  3958. var i = d[0].offsetWidth,
  3959. j = d[0].offsetHeight;
  3960. "top" == c && j != f && (b.top = b.top + f - j);
  3961. var k = this.getViewportAdjustedDelta(c, b, i, j);
  3962. k.left ? b.left += k.left : b.top += k.top;
  3963. var l = /top|bottom/.test(c),
  3964. m = l ? 2 * k.left - e + i : 2 * k.top - f + j,
  3965. n = l ? "offsetWidth" : "offsetHeight";
  3966. d.offset(b), this.replaceArrow(m, d[0][n], l)
  3967. }, c.prototype.replaceArrow = function (a, b, c) {
  3968. this.arrow().css(c ? "left" : "top", 50 * (1 - a / b) + "%").css(c ? "top" : "left", "")
  3969. }, c.prototype.setContent = function () {
  3970. var a = this.tip(),
  3971. b = this.getTitle();
  3972. a.find(".tooltip-inner")[this.options.html ? "html" : "text"](b), a.removeClass("fade in top bottom left right")
  3973. }, c.prototype.hide = function (b) {
  3974. function d() {
  3975. "in" != e.hoverState && f.detach(), e.$element.removeAttr("aria-describedby").trigger("hidden.bs." + e.type), b && b()
  3976. }
  3977. var e = this,
  3978. f = a(this.$tip),
  3979. g = a.Event("hide.bs." + this.type);
  3980. return this.$element.trigger(g), g.isDefaultPrevented() ? void 0 : (f.removeClass("in"), a.support.transition && f.hasClass("fade") ? f.one("bsTransitionEnd", d).emulateTransitionEnd(c.TRANSITION_DURATION) : d(), this.hoverState = null, this)
  3981. }, c.prototype.fixTitle = function () {
  3982. var a = this.$element;
  3983. (a.attr("title") || "string" != typeof a.attr("data-original-title")) && a.attr("data-original-title", a.attr("title") || "").attr("title", "")
  3984. }, c.prototype.hasContent = function () {
  3985. return this.getTitle()
  3986. }, c.prototype.getPosition = function (b) {
  3987. b = b || this.$element;
  3988. var c = b[0],
  3989. d = "BODY" == c.tagName,
  3990. e = c.getBoundingClientRect();
  3991. null == e.width && (e = a.extend({}, e, {
  3992. width: e.right - e.left,
  3993. height: e.bottom - e.top
  3994. }));
  3995. var f = d ? {
  3996. top: 0,
  3997. left: 0
  3998. } : b.offset(),
  3999. g = {
  4000. scroll: d ? document.documentElement.scrollTop || document.body.scrollTop : b.scrollTop()
  4001. },
  4002. h = d ? {
  4003. width: a(window).width(),
  4004. height: a(window).height()
  4005. } : null;
  4006. return a.extend({}, e, g, h, f)
  4007. }, c.prototype.getCalculatedOffset = function (a, b, c, d) {
  4008. return "bottom" == a ? {
  4009. top: b.top + b.height,
  4010. left: b.left + b.width / 2 - c / 2
  4011. } : "top" == a ? {
  4012. top: b.top - d,
  4013. left: b.left + b.width / 2 - c / 2
  4014. } : "left" == a ? {
  4015. top: b.top + b.height / 2 - d / 2,
  4016. left: b.left - c
  4017. } : {
  4018. top: b.top + b.height / 2 - d / 2,
  4019. left: b.left + b.width
  4020. }
  4021. }, c.prototype.getViewportAdjustedDelta = function (a, b, c, d) {
  4022. var e = {
  4023. top: 0,
  4024. left: 0
  4025. };
  4026. if (!this.$viewport) return e;
  4027. var f = this.options.viewport && this.options.viewport.padding || 0,
  4028. g = this.getPosition(this.$viewport);
  4029. if (/right|left/.test(a)) {
  4030. var h = b.top - f - g.scroll,
  4031. i = b.top + f - g.scroll + d;
  4032. h < g.top ? e.top = g.top - h : i > g.top + g.height && (e.top = g.top + g.height - i)
  4033. } else {
  4034. var j = b.left - f,
  4035. k = b.left + f + c;
  4036. j < g.left ? e.left = g.left - j : k > g.right && (e.left = g.left + g.width - k)
  4037. }
  4038. return e
  4039. }, c.prototype.getTitle = function () {
  4040. var a, b = this.$element,
  4041. c = this.options;
  4042. return a = b.attr("data-original-title") || ("function" == typeof c.title ? c.title.call(b[0]) : c.title)
  4043. }, c.prototype.getUID = function (a) {
  4044. do a += ~~(1e6 * Math.random()); while (document.getElementById(a));
  4045. return a
  4046. }, c.prototype.tip = function () {
  4047. if (!this.$tip && (this.$tip = a(this.options.template), 1 != this.$tip.length)) throw new Error(this.type + " `template` option must consist of exactly 1 top-level element!");
  4048. return this.$tip
  4049. }, c.prototype.arrow = function () {
  4050. return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow")
  4051. }, c.prototype.enable = function () {
  4052. this.enabled = !0
  4053. }, c.prototype.disable = function () {
  4054. this.enabled = !1
  4055. }, c.prototype.toggleEnabled = function () {
  4056. this.enabled = !this.enabled
  4057. }, c.prototype.toggle = function (b) {
  4058. var c = this;
  4059. b && (c = a(b.currentTarget).data("bs." + this.type), c || (c = new this.constructor(b.currentTarget, this.getDelegateOptions()), a(b.currentTarget).data("bs." + this.type, c))), b ? (c.inState.click = !c.inState.click, c.isInStateTrue() ? c.enter(c) : c.leave(c)) : c.tip().hasClass("in") ? c.leave(c) : c.enter(c)
  4060. }, c.prototype.destroy = function () {
  4061. var a = this;
  4062. clearTimeout(this.timeout), this.hide(function () {
  4063. a.$element.off("." + a.type).removeData("bs." + a.type), a.$tip && a.$tip.detach(), a.$tip = null, a.$arrow = null, a.$viewport = null
  4064. })
  4065. };
  4066. var d = a.fn.tooltip;
  4067. a.fn.tooltip = b, a.fn.tooltip.Constructor = c, a.fn.tooltip.noConflict = function () {
  4068. return a.fn.tooltip = d, this
  4069. }
  4070. }(jQuery), + function (a) {
  4071. "use strict";
  4072.  
  4073. function b(b) {
  4074. return this.each(function () {
  4075. var d = a(this),
  4076. e = d.data("bs.popover"),
  4077. f = "object" == typeof b && b;
  4078. (e || !/destroy|hide/.test(b)) && (e || d.data("bs.popover", e = new c(this, f)), "string" == typeof b && e[b]())
  4079. })
  4080. }
  4081. var c = function (a, b) {
  4082. this.init("popover", a, b)
  4083. };
  4084. if (!a.fn.tooltip) throw new Error("Popover requires tooltip.js");
  4085. c.VERSION = "3.3.5", c.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, {
  4086. placement: "right",
  4087. trigger: "click",
  4088. content: "",
  4089. template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
  4090. }), c.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype), c.prototype.constructor = c, c.prototype.getDefaults = function () {
  4091. return c.DEFAULTS
  4092. }, c.prototype.setContent = function () {
  4093. var a = this.tip(),
  4094. b = this.getTitle(),
  4095. c = this.getContent();
  4096. a.find(".popover-title")[this.options.html ? "html" : "text"](b), a.find(".popover-content").children().detach().end()[this.options.html ? "string" == typeof c ? "html" : "append" : "text"](c), a.removeClass("fade top bottom left right in"), a.find(".popover-title").html() || a.find(".popover-title").hide()
  4097. }, c.prototype.hasContent = function () {
  4098. return this.getTitle() || this.getContent()
  4099. }, c.prototype.getContent = function () {
  4100. var a = this.$element,
  4101. b = this.options;
  4102. return a.attr("data-content") || ("function" == typeof b.content ? b.content.call(a[0]) : b.content)
  4103. }, c.prototype.arrow = function () {
  4104. return this.$arrow = this.$arrow || this.tip().find(".arrow")
  4105. };
  4106. var d = a.fn.popover;
  4107. a.fn.popover = b, a.fn.popover.Constructor = c, a.fn.popover.noConflict = function () {
  4108. return a.fn.popover = d, this
  4109. }
  4110. }(jQuery), + function (a) {
  4111. "use strict";
  4112.  
  4113. function b(c, d) {
  4114. this.$body = a(document.body), this.$scrollElement = a(a(c).is(document.body) ? window : c), this.options = a.extend({}, b.DEFAULTS, d), this.selector = (this.options.target || "") + " .nav li > a", this.offsets = [], this.targets = [], this.activeTarget = null, this.scrollHeight = 0, this.$scrollElement.on("scroll.bs.scrollspy", a.proxy(this.process, this)), this.refresh(), this.process()
  4115. }
  4116.  
  4117. function c(c) {
  4118. return this.each(function () {
  4119. var d = a(this),
  4120. e = d.data("bs.scrollspy"),
  4121. f = "object" == typeof c && c;
  4122. e || d.data("bs.scrollspy", e = new b(this, f)), "string" == typeof c && e[c]()
  4123. })
  4124. }
  4125. b.VERSION = "3.3.5", b.DEFAULTS = {
  4126. offset: 10
  4127. }, b.prototype.getScrollHeight = function () {
  4128. return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight)
  4129. }, b.prototype.refresh = function () {
  4130. var b = this,
  4131. c = "offset",
  4132. d = 0;
  4133. this.offsets = [], this.targets = [], this.scrollHeight = this.getScrollHeight(), a.isWindow(this.$scrollElement[0]) || (c = "position", d = this.$scrollElement.scrollTop()), this.$body.find(this.selector).map(function () {
  4134. var b = a(this),
  4135. e = b.data("target") || b.attr("href"),
  4136. f = /^#./.test(e) && a(e);
  4137. return f && f.length && f.is(":visible") && [[f[c]().top + d, e]] || null
  4138. }).sort(function (a, b) {
  4139. return a[0] - b[0]
  4140. }).each(function () {
  4141. b.offsets.push(this[0]), b.targets.push(this[1])
  4142. })
  4143. }, b.prototype.process = function () {
  4144. var a, b = this.$scrollElement.scrollTop() + this.options.offset,
  4145. c = this.getScrollHeight(),
  4146. d = this.options.offset + c - this.$scrollElement.height(),
  4147. e = this.offsets,
  4148. f = this.targets,
  4149. g = this.activeTarget;
  4150. if (this.scrollHeight != c && this.refresh(), b >= d) return g != (a = f[f.length - 1]) && this.activate(a);
  4151. if (g && b < e[0]) return this.activeTarget = null, this.clear();
  4152. for (a = e.length; a--;) g != f[a] && b >= e[a] && (void 0 === e[a + 1] || b < e[a + 1]) && this.activate(f[a])
  4153. }, b.prototype.activate = function (b) {
  4154. this.activeTarget = b, this.clear();
  4155. var c = this.selector + '[data-target="' + b + '"],' + this.selector + '[href="' + b + '"]',
  4156. d = a(c).parents("li").addClass("active");
  4157. d.parent(".dropdown-menu").length && (d = d.closest("li.dropdown").addClass("active")),
  4158. d.trigger("activate.bs.scrollspy")
  4159. }, b.prototype.clear = function () {
  4160. a(this.selector).parentsUntil(this.options.target, ".active").removeClass("active")
  4161. };
  4162. var d = a.fn.scrollspy;
  4163. a.fn.scrollspy = c, a.fn.scrollspy.Constructor = b, a.fn.scrollspy.noConflict = function () {
  4164. return a.fn.scrollspy = d, this
  4165. }, a(window).on("load.bs.scrollspy.data-api", function () {
  4166. a('[data-spy="scroll"]').each(function () {
  4167. var b = a(this);
  4168. c.call(b, b.data())
  4169. })
  4170. })
  4171. }(jQuery), + function (a) {
  4172. "use strict";
  4173.  
  4174. function b(b) {
  4175. return this.each(function () {
  4176. var d = a(this),
  4177. e = d.data("bs.tab");
  4178. e || d.data("bs.tab", e = new c(this)), "string" == typeof b && e[b]()
  4179. })
  4180. }
  4181. var c = function (b) {
  4182. this.element = a(b)
  4183. };
  4184. c.VERSION = "3.3.5", c.TRANSITION_DURATION = 150, c.prototype.show = function () {
  4185. var b = this.element,
  4186. c = b.closest("ul:not(.dropdown-menu)"),
  4187. d = b.data("target");
  4188. if (d || (d = b.attr("href"), d = d && d.replace(/.*(?=#[^\s]*$)/, "")), !b.parent("li").hasClass("active")) {
  4189. var e = c.find(".active:last a"),
  4190. f = a.Event("hide.bs.tab", {
  4191. relatedTarget: b[0]
  4192. }),
  4193. g = a.Event("show.bs.tab", {
  4194. relatedTarget: e[0]
  4195. });
  4196. if (e.trigger(f), b.trigger(g), !g.isDefaultPrevented() && !f.isDefaultPrevented()) {
  4197. var h = a(d);
  4198. this.activate(b.closest("li"), c), this.activate(h, h.parent(), function () {
  4199. e.trigger({
  4200. type: "hidden.bs.tab",
  4201. relatedTarget: b[0]
  4202. }), b.trigger({
  4203. type: "shown.bs.tab",
  4204. relatedTarget: e[0]
  4205. })
  4206. })
  4207. }
  4208. }
  4209. }, c.prototype.activate = function (b, d, e) {
  4210. function f() {
  4211. g.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded", !1), b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded", !0), h ? (b[0].offsetWidth, b.addClass("in")) : b.removeClass("fade"), b.parent(".dropdown-menu").length && b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded", !0), e && e()
  4212. }
  4213. var g = d.find("> .active"),
  4214. h = e && a.support.transition && (g.length && g.hasClass("fade") || !!d.find("> .fade").length);
  4215. g.length && h ? g.one("bsTransitionEnd", f).emulateTransitionEnd(c.TRANSITION_DURATION) : f(), g.removeClass("in")
  4216. };
  4217. var d = a.fn.tab;
  4218. a.fn.tab = b, a.fn.tab.Constructor = c, a.fn.tab.noConflict = function () {
  4219. return a.fn.tab = d, this
  4220. };
  4221. var e = function (c) {
  4222. c.preventDefault(), b.call(a(this), "show")
  4223. };
  4224. a(document).on("click.bs.tab.data-api", '[data-toggle="tab"]', e).on("click.bs.tab.data-api", '[data-toggle="pill"]', e)
  4225. }(jQuery), + function (a) {
  4226. "use strict";
  4227.  
  4228. function b(b) {
  4229. return this.each(function () {
  4230. var d = a(this),
  4231. e = d.data("bs.affix"),
  4232. f = "object" == typeof b && b;
  4233. e || d.data("bs.affix", e = new c(this, f)), "string" == typeof b && e[b]()
  4234. })
  4235. }
  4236. var c = function (b, d) {
  4237. this.options = a.extend({}, c.DEFAULTS, d), this.$target = a(this.options.target).on("scroll.bs.affix.data-api", a.proxy(this.checkPosition, this)).on("click.bs.affix.data-api", a.proxy(this.checkPositionWithEventLoop, this)), this.$element = a(b), this.affixed = null, this.unpin = null, this.pinnedOffset = null, this.checkPosition()
  4238. };
  4239. c.VERSION = "3.3.5", c.RESET = "affix affix-top affix-bottom", c.DEFAULTS = {
  4240. offset: 0,
  4241. target: window
  4242. }, c.prototype.getState = function (a, b, c, d) {
  4243. var e = this.$target.scrollTop(),
  4244. f = this.$element.offset(),
  4245. g = this.$target.height();
  4246. if (null != c && "top" == this.affixed) return c > e ? "top" : !1;
  4247. if ("bottom" == this.affixed) return null != c ? e + this.unpin <= f.top ? !1 : "bottom" : a - d >= e + g ? !1 : "bottom";
  4248. var h = null == this.affixed,
  4249. i = h ? e : f.top,
  4250. j = h ? g : b;
  4251. return null != c && c >= e ? "top" : null != d && i + j >= a - d ? "bottom" : !1
  4252. }, c.prototype.getPinnedOffset = function () {
  4253. if (this.pinnedOffset) return this.pinnedOffset;
  4254. this.$element.removeClass(c.RESET).addClass("affix");
  4255. var a = this.$target.scrollTop(),
  4256. b = this.$element.offset();
  4257. return this.pinnedOffset = b.top - a
  4258. }, c.prototype.checkPositionWithEventLoop = function () {
  4259. setTimeout(a.proxy(this.checkPosition, this), 1)
  4260. }, c.prototype.checkPosition = function () {
  4261. if (this.$element.is(":visible")) {
  4262. var b = this.$element.height(),
  4263. d = this.options.offset,
  4264. e = d.top,
  4265. f = d.bottom,
  4266. g = Math.max(a(document).height(), a(document.body).height());
  4267. "object" != typeof d && (f = e = d), "function" == typeof e && (e = d.top(this.$element)), "function" == typeof f && (f = d.bottom(this.$element));
  4268. var h = this.getState(g, b, e, f);
  4269. if (this.affixed != h) {
  4270. null != this.unpin && this.$element.css("top", "");
  4271. var i = "affix" + (h ? "-" + h : ""),
  4272. j = a.Event(i + ".bs.affix");
  4273. if (this.$element.trigger(j), j.isDefaultPrevented()) return;
  4274. this.affixed = h, this.unpin = "bottom" == h ? this.getPinnedOffset() : null, this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix", "affixed") + ".bs.affix")
  4275. }
  4276. "bottom" == h && this.$element.offset({
  4277. top: g - b - f
  4278. })
  4279. }
  4280. };
  4281. var d = a.fn.affix;
  4282. a.fn.affix = b, a.fn.affix.Constructor = c, a.fn.affix.noConflict = function () {
  4283. return a.fn.affix = d, this
  4284. }, a(window).on("load", function () {
  4285. a('[data-spy="affix"]').each(function () {
  4286. var c = a(this),
  4287. d = c.data();
  4288. d.offset = d.offset || {}, null != d.offsetBottom && (d.offset.bottom = d.offsetBottom), null != d.offsetTop && (d.offset.top = d.offsetTop), b.call(c, d)
  4289. })
  4290. })
  4291. }(jQuery);
  4292.  
  4293.  
  4294.  
  4295. /*
  4296. * jQuery.appear
  4297. * http://code.google.com/p/jquery-appear/
  4298. *
  4299. * Copyright (c) 2009 Michael Hixson
  4300. * Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php)
  4301. */
  4302. (function (a) {
  4303. a.fn.appear = function (d, b) {
  4304. var c = a.extend({
  4305. data: undefined,
  4306. one: true,
  4307. accX: 0,
  4308. accY: 0
  4309. }, b);
  4310. return this.each(function () {
  4311. var g = a(this);
  4312. g.appeared = false;
  4313. if (!d) {
  4314. g.trigger("appear", c.data);
  4315. return;
  4316. }
  4317. var f = a(window);
  4318. var e = function () {
  4319. if (!g.is(":visible")) {
  4320. g.appeared = false;
  4321. return;
  4322. }
  4323. var r = f.scrollLeft();
  4324. var q = f.scrollTop();
  4325. var l = g.offset();
  4326. var s = l.left;
  4327. var p = l.top;
  4328. var i = c.accX;
  4329. var t = c.accY;
  4330. var k = g.height();
  4331. var j = f.height();
  4332. var n = g.width();
  4333. var m = f.width();
  4334. if (p + k + t >= q && p <= q + j + t && s + n + i >= r && s <= r + m + i) {
  4335. if (!g.appeared) {
  4336. g.trigger("appear", c.data);
  4337. }
  4338. } else {
  4339. g.appeared = false;
  4340. }
  4341. };
  4342. var h = function () {
  4343. g.appeared = true;
  4344. if (c.one) {
  4345. f.unbind("scroll", e);
  4346. var j = a.inArray(e, a.fn.appear.checks);
  4347. if (j >= 0) {
  4348. a.fn.appear.checks.splice(j, 1);
  4349. }
  4350. }
  4351. d.apply(this, arguments);
  4352. };
  4353. if (c.one) {
  4354. g.one("appear", c.data, h);
  4355. } else {
  4356. g.bind("appear", c.data, h);
  4357. }
  4358. f.scroll(e);
  4359. a.fn.appear.checks.push(e);
  4360. (e)();
  4361. });
  4362. };
  4363. a.extend(a.fn.appear, {
  4364. checks: [],
  4365. timeout: null,
  4366. checkAll: function () {
  4367. var b = a.fn.appear.checks.length;
  4368. if (b > 0) {
  4369. while (b--) {
  4370. (a.fn.appear.checks[b])();
  4371. }
  4372. }
  4373. },
  4374. run: function () {
  4375. if (a.fn.appear.timeout) {
  4376. clearTimeout(a.fn.appear.timeout);
  4377. }
  4378. a.fn.appear.timeout = setTimeout(a.fn.appear.checkAll, 20);
  4379. }
  4380. });
  4381. a.each(["append", "prepend", "after", "before", "attr", "removeAttr", "addClass", "removeClass", "toggleClass", "remove", "css", "show", "hide"], function (c, d) {
  4382. var b = a.fn[d];
  4383. if (b) {
  4384. a.fn[d] = function () {
  4385. var e = b.apply(this, arguments);
  4386. a.fn.appear.run();
  4387. return e;
  4388. };
  4389. }
  4390. });
  4391. })(jQuery);
  4392. (function (a) {
  4393. a.fn.countTo = function (d) {
  4394. d = a.extend({}, a.fn.countTo.defaults, d || {});
  4395. var c = Math.ceil(d.speed / d.refreshInterval),
  4396. b = (d.to - d.from) / c;
  4397. return a(this).each(function () {
  4398. var i = this,
  4399. e = 0,
  4400. h = d.from,
  4401. f = setInterval(g, d.refreshInterval);
  4402.  
  4403. function g() {
  4404. h += b;
  4405. e++;
  4406. a(i).html(h.toFixed(d.decimals));
  4407. if (typeof (d.onUpdate) == "function") {
  4408. d.onUpdate.call(i, h);
  4409. }
  4410. if (e >= c) {
  4411. clearInterval(f);
  4412. h = d.to;
  4413. if (typeof (d.onComplete) == "function") {
  4414. d.onComplete.call(i, h);
  4415. }
  4416. }
  4417. }
  4418. });
  4419. };
  4420. a.fn.countTo.defaults = {
  4421. from: 0,
  4422. to: 100,
  4423. speed: 1000,
  4424. refreshInterval: 100,
  4425. decimals: 0,
  4426. onUpdate: null,
  4427. onComplete: null,
  4428. };
  4429. })(jQuery);
  4430.  
  4431.  
  4432. /*
  4433. * jQuery Easing v1.3.2 - http://gsgd.co.uk/sandbox/jquery/easing/
  4434. * Open source under the BSD License.
  4435. * Copyright © 2008 George McGinley Smith
  4436. * All rights reserved.
  4437. * https://raw.github.com/gdsmith/jquery-easing/master/LICENSE
  4438. */
  4439. (function (h) {
  4440. h.easing.jswing = h.easing.swing;
  4441. h.extend(h.easing, {
  4442. def: "easeOutQuad",
  4443. swing: function (e, a, c, b, d) {
  4444. return h.easing[h.easing.def](e, a, c, b, d)
  4445. },
  4446. easeInQuad: function (e, a, c, b, d) {
  4447. return b * (a /= d) * a + c
  4448. },
  4449. easeOutQuad: function (e, a, c, b, d) {
  4450. return -b * (a /= d) * (a - 2) + c
  4451. },
  4452. easeInOutQuad: function (e, a, c, b, d) {
  4453. return 1 > (a /= d / 2) ? b / 2 * a * a + c : -b / 2 * (--a * (a - 2) - 1) + c
  4454. },
  4455. easeInCubic: function (e, a, c, b, d) {
  4456. return b * (a /= d) * a * a + c
  4457. },
  4458. easeOutCubic: function (e, a, c, b, d) {
  4459. return b * ((a = a / d - 1) * a * a + 1) + c
  4460. },
  4461. easeInOutCubic: function (e, a, c, b, d) {
  4462. return 1 >
  4463. (a /= d / 2) ? b / 2 * a * a * a + c : b / 2 * ((a -= 2) * a * a + 2) + c
  4464. },
  4465. easeInQuart: function (e, a, c, b, d) {
  4466. return b * (a /= d) * a * a * a + c
  4467. },
  4468. easeOutQuart: function (e, a, c, b, d) {
  4469. return -b * ((a = a / d - 1) * a * a * a - 1) + c
  4470. },
  4471. easeInOutQuart: function (e, a, c, b, d) {
  4472. return 1 > (a /= d / 2) ? b / 2 * a * a * a * a + c : -b / 2 * ((a -= 2) * a * a * a - 2) + c
  4473. },
  4474. easeInQuint: function (e, a, c, b, d) {
  4475. return b * (a /= d) * a * a * a * a + c
  4476. },
  4477. easeOutQuint: function (e, a, c, b, d) {
  4478. return b * ((a = a / d - 1) * a * a * a * a + 1) + c
  4479. },
  4480. easeInOutQuint: function (e, a, c, b, d) {
  4481. return 1 > (a /= d / 2) ? b / 2 * a * a * a * a * a + c : b / 2 * ((a -= 2) * a * a * a * a + 2) + c
  4482. },
  4483. easeInSine: function (e, a,
  4484. c, b, d) {
  4485. return -b * Math.cos(a / d * (Math.PI / 2)) + b + c
  4486. },
  4487. easeOutSine: function (e, a, c, b, d) {
  4488. return b * Math.sin(a / d * (Math.PI / 2)) + c
  4489. },
  4490. easeInOutSine: function (e, a, c, b, d) {
  4491. return -b / 2 * (Math.cos(Math.PI * a / d) - 1) + c
  4492. },
  4493. easeInExpo: function (e, a, c, b, d) {
  4494. return 0 == a ? c : b * Math.pow(2, 10 * (a / d - 1)) + c
  4495. },
  4496. easeOutExpo: function (e, a, c, b, d) {
  4497. return a == d ? c + b : b * (-Math.pow(2, -10 * a / d) + 1) + c
  4498. },
  4499. easeInOutExpo: function (e, a, c, b, d) {
  4500. return 0 == a ? c : a == d ? c + b : 1 > (a /= d / 2) ? b / 2 * Math.pow(2, 10 * (a - 1)) + c : b / 2 * (-Math.pow(2, -10 * --a) + 2) + c
  4501. },
  4502. easeInCirc: function (e, a, c, b, d) {
  4503. return -b *
  4504. (Math.sqrt(1 - (a /= d) * a) - 1) + c
  4505. },
  4506. easeOutCirc: function (e, a, c, b, d) {
  4507. return b * Math.sqrt(1 - (a = a / d - 1) * a) + c
  4508. },
  4509. easeInOutCirc: function (e, a, c, b, d) {
  4510. return 1 > (a /= d / 2) ? -b / 2 * (Math.sqrt(1 - a * a) - 1) + c : b / 2 * (Math.sqrt(1 - (a -= 2) * a) + 1) + c
  4511. },
  4512. easeInElastic: function (e, a, c, b, d) {
  4513. e = 1.70158;
  4514. var f = 0,
  4515. g = b;
  4516. if (0 == a) return c;
  4517. if (1 == (a /= d)) return c + b;
  4518. f || (f = .3 * d);
  4519. g < Math.abs(b) ? (g = b, e = f / 4) : e = f / (2 * Math.PI) * Math.asin(b / g);
  4520. return -(g * Math.pow(2, 10 * --a) * Math.sin(2 * (a * d - e) * Math.PI / f)) + c
  4521. },
  4522. easeOutElastic: function (e, a, c, b, d) {
  4523. e = 1.70158;
  4524. var f = 0,
  4525. g = b;
  4526. if (0 ==
  4527. a) return c;
  4528. if (1 == (a /= d)) return c + b;
  4529. f || (f = .3 * d);
  4530. g < Math.abs(b) ? (g = b, e = f / 4) : e = f / (2 * Math.PI) * Math.asin(b / g);
  4531. return g * Math.pow(2, -10 * a) * Math.sin(2 * (a * d - e) * Math.PI / f) + b + c
  4532. },
  4533. easeInOutElastic: function (e, a, c, b, d) {
  4534. e = 1.70158;
  4535. var f = 0,
  4536. g = b;
  4537. if (0 == a) return c;
  4538. if (2 == (a /= d / 2)) return c + b;
  4539. f || (f = .3 * d * 1.5);
  4540. g < Math.abs(b) ? (g = b, e = f / 4) : e = f / (2 * Math.PI) * Math.asin(b / g);
  4541. return 1 > a ? -.5 * g * Math.pow(2, 10 * --a) * Math.sin(2 * (a * d - e) * Math.PI / f) + c : g * Math.pow(2, -10 * --a) * Math.sin(2 * (a * d - e) * Math.PI / f) * .5 + b + c
  4542. },
  4543. easeInBack: function (e, a, c, b, d, f) {
  4544. void 0 ==
  4545. f && (f = 1.70158);
  4546. return b * (a /= d) * a * ((f + 1) * a - f) + c
  4547. },
  4548. easeOutBack: function (e, a, c, b, d, f) {
  4549. void 0 == f && (f = 1.70158);
  4550. return b * ((a = a / d - 1) * a * ((f + 1) * a + f) + 1) + c
  4551. },
  4552. easeInOutBack: function (e, a, c, b, d, f) {
  4553. void 0 == f && (f = 1.70158);
  4554. return 1 > (a /= d / 2) ? b / 2 * a * a * (((f *= 1.525) + 1) * a - f) + c : b / 2 * ((a -= 2) * a * (((f *= 1.525) + 1) * a + f) + 2) + c
  4555. },
  4556. easeInBounce: function (e, a, c, b, d) {
  4557. return b - h.easing.easeOutBounce(e, d - a, 0, b, d) + c
  4558. },
  4559. easeOutBounce: function (e, a, c, b, d) {
  4560. return (a /= d) < 1 / 2.75 ? 7.5625 * b * a * a + c : a < 2 / 2.75 ? b * (7.5625 * (a -= 1.5 / 2.75) * a + .75) + c : a < 2.5 / 2.75 ? b * (7.5625 *
  4561. (a -= 2.25 / 2.75) * a + .9375) + c : b * (7.5625 * (a -= 2.625 / 2.75) * a + .984375) + c
  4562. },
  4563. easeInOutBounce: function (e, a, c, b, d) {
  4564. return a < d / 2 ? .5 * h.easing.easeInBounce(e, 2 * a, 0, b, d) + c : .5 * h.easing.easeOutBounce(e, 2 * a - d, 0, b, d) + .5 * b + c
  4565. }
  4566. })
  4567. })(jQuery);
  4568.  
  4569.  
  4570. /**
  4571. * Isotope v1.5.25
  4572. * An exquisite jQuery plugin for magical layouts
  4573. * http://isotope.metafizzy.co
  4574. *
  4575. * Commercial use requires one-time purchase of a commercial license
  4576. * http://isotope.metafizzy.co/docs/license.html
  4577. *
  4578. * Non-commercial use is licensed under the MIT License
  4579. *
  4580. * Copyright 2013 Metafizzy
  4581. */
  4582. eval(function (a, b, c) {
  4583. "use strict";
  4584. var d = a.document,
  4585. e = a.Modernizr,
  4586. f = function (a) {
  4587. return a.charAt(0).toUpperCase() + a.slice(1)
  4588. },
  4589. g = "Moz Webkit O Ms".split(" "),
  4590. h = function (a) {
  4591. var b = d.documentElement.style,
  4592. c;
  4593. if (typeof b[a] == "string") return a;
  4594. a = f(a);
  4595. for (var e = 0, h = g.length; e < h; e++) {
  4596. c = g[e] + a;
  4597. if (typeof b[c] == "string") return c
  4598. }
  4599. },
  4600. i = h("transform"),
  4601. j = h("transitionProperty"),
  4602. k = {
  4603. csstransforms: function () {
  4604. return !!i
  4605. },
  4606. csstransforms3d: function () {
  4607. var a = !!h("perspective");
  4608. if (a) {
  4609. var c = " -o- -moz- -ms- -webkit- -khtml- ".split(" "),
  4610. d = "@media (" + c.join("transform-3d),(") + "modernizr)",
  4611. e = b("<style>" + d + "{#modernizr{height:3px}}" + "</style>").appendTo("head"),
  4612. f = b('<div id="modernizr" />').appendTo("html");
  4613. a = f.height() === 3, f.remove(), e.remove()
  4614. }
  4615. return a
  4616. },
  4617. csstransitions: function () {
  4618. return !!j
  4619. }
  4620. },
  4621. l;
  4622. if (e)
  4623. for (l in k) e.hasOwnProperty(l) || e.addTest(l, k[l]);
  4624. else {
  4625. e = a.Modernizr = {
  4626. _version: "1.6ish: miniModernizr for Isotope"
  4627. };
  4628. var m = " ",
  4629. n;
  4630. for (l in k) n = k[l](), e[l] = n, m += " " + (n ? "" : "no-") + l;
  4631. b("html").addClass(m)
  4632. }
  4633. if (e.csstransforms) {
  4634. var o = e.csstransforms3d ? {
  4635. translate: function (a) {
  4636. return "translate3d(" + a[0] + "px, " + a[1] + "px, 0) "
  4637. },
  4638. scale: function (a) {
  4639. return "scale3d(" + a + ", " + a + ", 1) "
  4640. }
  4641. } : {
  4642. translate: function (a) {
  4643. return "translate(" + a[0] + "px, " + a[1] + "px) "
  4644. },
  4645. scale: function (a) {
  4646. return "scale(" + a + ") "
  4647. }
  4648. },
  4649. p = function (a, c, d) {
  4650. var e = b.data(a, "isoTransform") || {},
  4651. f = {},
  4652. g, h = {},
  4653. j;
  4654. f[c] = d, b.extend(e, f);
  4655. for (g in e) j = e[g], h[g] = o[g](j);
  4656. var k = h.translate || "",
  4657. l = h.scale || "",
  4658. m = k + l;
  4659. b.data(a, "isoTransform", e), a.style[i] = m
  4660. };
  4661. b.cssNumber.scale = !0, b.cssHooks.scale = {
  4662. set: function (a, b) {
  4663. p(a, "scale", b)
  4664. },
  4665. get: function (a, c) {
  4666. var d = b.data(a, "isoTransform");
  4667. return d && d.scale ? d.scale : 1
  4668. }
  4669. }, b.fx.step.scale = function (a) {
  4670. b.cssHooks.scale.set(a.elem, a.now + a.unit)
  4671. }, b.cssNumber.translate = !0, b.cssHooks.translate = {
  4672. set: function (a, b) {
  4673. p(a, "translate", b)
  4674. },
  4675. get: function (a, c) {
  4676. var d = b.data(a, "isoTransform");
  4677. return d && d.translate ? d.translate : [0, 0]
  4678. }
  4679. }
  4680. }
  4681. var q, r;
  4682. e.csstransitions && (q = {
  4683. WebkitTransitionProperty: "webkitTransitionEnd",
  4684. MozTransitionProperty: "transitionend",
  4685. OTransitionProperty: "oTransitionEnd otransitionend",
  4686. transitionProperty: "transitionend"
  4687. }[j], r = h("transitionDuration"));
  4688. var s = b.event,
  4689. t = b.event.handle ? "handle" : "dispatch",
  4690. u;
  4691. s.special.smartresize = {
  4692. setup: function () {
  4693. b(this).bind("resize", s.special.smartresize.handler)
  4694. },
  4695. teardown: function () {
  4696. b(this).unbind("resize", s.special.smartresize.handler)
  4697. },
  4698. handler: function (a, b) {
  4699. var c = this,
  4700. d = arguments;
  4701. a.type = "smartresize", u && clearTimeout(u), u = setTimeout(function () {
  4702. s[t].apply(c, d)
  4703. }, b === "execAsap" ? 0 : 100)
  4704. }
  4705. }, b.fn.smartresize = function (a) {
  4706. return a ? this.bind("smartresize", a) : this.trigger("smartresize", ["execAsap"])
  4707. }, b.Isotope = function (a, c, d) {
  4708. this.element = b(c), this._create(a), this._init(d)
  4709. };
  4710. var v = ["width", "height"],
  4711. w = b(a);
  4712. b.Isotope.settings = {
  4713. resizable: !0,
  4714. layoutMode: "masonry",
  4715. containerClass: "isotope",
  4716. itemClass: "isotope-item",
  4717. hiddenClass: "isotope-hidden",
  4718. hiddenStyle: {
  4719. opacity: 0,
  4720. scale: .001
  4721. },
  4722. visibleStyle: {
  4723. opacity: 1,
  4724. scale: 1
  4725. },
  4726. containerStyle: {
  4727. position: "relative",
  4728. overflow: "hidden"
  4729. },
  4730. animationEngine: "best-available",
  4731. animationOptions: {
  4732. queue: !1,
  4733. duration: 800
  4734. },
  4735. sortBy: "original-order",
  4736. sortAscending: !0,
  4737. resizesContainer: !0,
  4738. transformsEnabled: !0,
  4739. itemPositionDataEnabled: !1
  4740. }, b.Isotope.prototype = {
  4741. _create: function (a) {
  4742. this.options = b.extend({}, b.Isotope.settings, a), this.styleQueue = [], this.elemCount = 0;
  4743. var c = this.element[0].style;
  4744. this.originalStyle = {};
  4745. var d = v.slice(0);
  4746. for (var e in this.options.containerStyle) d.push(e);
  4747. for (var f = 0, g = d.length; f < g; f++) e = d[f], this.originalStyle[e] = c[e] || "";
  4748. this.element.css(this.options.containerStyle), this._updateAnimationEngine(), this._updateUsingTransforms();
  4749. var h = {
  4750. "original-order": function (a, b) {
  4751. return b.elemCount++, b.elemCount
  4752. },
  4753. random: function () {
  4754. return Math.random()
  4755. }
  4756. };
  4757. this.options.getSortData = b.extend(this.options.getSortData, h), this.reloadItems(), this.offset = {
  4758. left: parseInt(this.element.css("padding-left") || 0, 10),
  4759. top: parseInt(this.element.css("padding-top") || 0, 10)
  4760. };
  4761. var i = this;
  4762. setTimeout(function () {
  4763. i.element.addClass(i.options.containerClass)
  4764. }, 0), this.options.resizable && w.bind("smartresize.isotope", function () {
  4765. i.resize()
  4766. }), this.element.delegate("." + this.options.hiddenClass, "click", function () {
  4767. return !1
  4768. })
  4769. },
  4770. _getAtoms: function (a) {
  4771. var b = this.options.itemSelector,
  4772. c = b ? a.filter(b).add(a.find(b)) : a,
  4773. d = {
  4774. position: "absolute"
  4775. };
  4776. return c = c.filter(function (a, b) {
  4777. return b.nodeType === 1
  4778. }), this.usingTransforms && (d.left = 0, d.top = 0), c.css(d).addClass(this.options.itemClass), this.updateSortData(c, !0), c
  4779. },
  4780. _init: function (a) {
  4781. this.$filteredAtoms = this._filter(this.$allAtoms), this._sort(), this.reLayout(a)
  4782. },
  4783. option: function (a) {
  4784. if (b.isPlainObject(a)) {
  4785. this.options = b.extend(!0, this.options, a);
  4786. var c;
  4787. for (var d in a) c = "_update" + f(d), this[c] && this[c]()
  4788. }
  4789. },
  4790. _updateAnimationEngine: function () {
  4791. var a = this.options.animationEngine.toLowerCase().replace(/[ _\-]/g, ""),
  4792. b;
  4793. switch (a) {
  4794. case "css":
  4795. case "none":
  4796. b = !1;
  4797. break;
  4798. case "jquery":
  4799. b = !0;
  4800. break;
  4801. default:
  4802. b = !e.csstransitions
  4803. }
  4804. this.isUsingJQueryAnimation = b, this._updateUsingTransforms()
  4805. },
  4806. _updateTransformsEnabled: function () {
  4807. this._updateUsingTransforms()
  4808. },
  4809. _updateUsingTransforms: function () {
  4810. var a = this.usingTransforms = this.options.transformsEnabled && e.csstransforms && e.csstransitions && !this.isUsingJQueryAnimation;
  4811. a || (delete this.options.hiddenStyle.scale, delete this.options.visibleStyle.scale), this.getPositionStyles = a ? this._translate : this._positionAbs
  4812. },
  4813. _filter: function (a) {
  4814. var b = this.options.filter === "" ? "*" : this.options.filter;
  4815. if (!b) return a;
  4816. var c = this.options.hiddenClass,
  4817. d = "." + c,
  4818. e = a.filter(d),
  4819. f = e;
  4820. if (b !== "*") {
  4821. f = e.filter(b);
  4822. var g = a.not(d).not(b).addClass(c);
  4823. this.styleQueue.push({
  4824. $el: g,
  4825. style: this.options.hiddenStyle
  4826. })
  4827. }
  4828. return this.styleQueue.push({
  4829. $el: f,
  4830. style: this.options.visibleStyle
  4831. }), f.removeClass(c), a.filter(b)
  4832. },
  4833. updateSortData: function (a, c) {
  4834. var d = this,
  4835. e = this.options.getSortData,
  4836. f, g;
  4837. a.each(function () {
  4838. f = b(this), g = {};
  4839. for (var a in e) !c && a === "original-order" ? g[a] = b.data(this, "isotope-sort-data")[a] : g[a] = e[a](f, d);
  4840. b.data(this, "isotope-sort-data", g)
  4841. })
  4842. },
  4843. _sort: function () {
  4844. var a = this.options.sortBy,
  4845. b = this._getSorter,
  4846. c = this.options.sortAscending ? 1 : -1,
  4847. d = function (d, e) {
  4848. var f = b(d, a),
  4849. g = b(e, a);
  4850. return f === g && a !== "original-order" && (f = b(d, "original-order"), g = b(e, "original-order")), (f > g ? 1 : f < g ? -1 : 0) * c
  4851. };
  4852. this.$filteredAtoms.sort(d)
  4853. },
  4854. _getSorter: function (a, c) {
  4855. return b.data(a, "isotope-sort-data")[c]
  4856. },
  4857. _translate: function (a, b) {
  4858. return {
  4859. translate: [a, b]
  4860. }
  4861. },
  4862. _positionAbs: function (a, b) {
  4863. return {
  4864. left: a,
  4865. top: b
  4866. }
  4867. },
  4868. _pushPosition: function (a, b, c) {
  4869. b = Math.round(b + this.offset.left), c = Math.round(c + this.offset.top);
  4870. var d = this.getPositionStyles(b, c);
  4871. this.styleQueue.push({
  4872. $el: a,
  4873. style: d
  4874. }), this.options.itemPositionDataEnabled && a.data("isotope-item-position", {
  4875. x: b,
  4876. y: c
  4877. })
  4878. },
  4879. layout: function (a, b) {
  4880. var c = this.options.layoutMode;
  4881. this["_" + c + "Layout"](a);
  4882. if (this.options.resizesContainer) {
  4883. var d = this["_" + c + "GetContainerSize"]();
  4884. this.styleQueue.push({
  4885. $el: this.element,
  4886. style: d
  4887. })
  4888. }
  4889. this._processStyleQueue(a, b), this.isLaidOut = !0
  4890. },
  4891. _processStyleQueue: function (a, c) {
  4892. var d = this.isLaidOut ? this.isUsingJQueryAnimation ? "animate" : "css" : "css",
  4893. f = this.options.animationOptions,
  4894. g = this.options.onLayout,
  4895. h, i, j, k;
  4896. i = function (a, b) {
  4897. b.$el[d](b.style, f)
  4898. };
  4899. if (this._isInserting && this.isUsingJQueryAnimation) i = function (a, b) {
  4900. h = b.$el.hasClass("no-transition") ? "css" : d, b.$el[h](b.style, f)
  4901. };
  4902. else if (c || g || f.complete) {
  4903. var l = !1,
  4904. m = [c, g, f.complete],
  4905. n = this;
  4906. j = !0, k = function () {
  4907. if (l) return;
  4908. var b;
  4909. for (var c = 0, d = m.length; c < d; c++) b = m[c], typeof b == "function" && b.call(n.element, a, n);
  4910. l = !0
  4911. };
  4912. if (this.isUsingJQueryAnimation && d === "animate") f.complete = k, j = !1;
  4913. else if (e.csstransitions) {
  4914. var o = 0,
  4915. p = this.styleQueue[0],
  4916. s = p && p.$el,
  4917. t;
  4918. while (!s || !s.length) {
  4919. t = this.styleQueue[o++];
  4920. if (!t) return;
  4921. s = t.$el
  4922. }
  4923. var u = parseFloat(getComputedStyle(s[0])[r]);
  4924. u > 0 && (i = function (a, b) {
  4925. b.$el[d](b.style, f).one(q, k)
  4926. }, j = !1)
  4927. }
  4928. }
  4929. b.each(this.styleQueue, i), j && k(), this.styleQueue = []
  4930. },
  4931. resize: function () {
  4932. this["_" + this.options.layoutMode + "ResizeChanged"]() && this.reLayout()
  4933. },
  4934. reLayout: function (a) {
  4935. this["_" + this.options.layoutMode + "Reset"](), this.layout(this.$filteredAtoms, a)
  4936. },
  4937. addItems: function (a, b) {
  4938. var c = this._getAtoms(a);
  4939. this.$allAtoms = this.$allAtoms.add(c), b && b(c)
  4940. },
  4941. insert: function (a, b) {
  4942. this.element.append(a);
  4943. var c = this;
  4944. this.addItems(a, function (a) {
  4945. var d = c._filter(a);
  4946. c._addHideAppended(d), c._sort(), c.reLayout(), c._revealAppended(d, b)
  4947. })
  4948. },
  4949. appended: function (a, b) {
  4950. var c = this;
  4951. this.addItems(a, function (a) {
  4952. c._addHideAppended(a), c.layout(a), c._revealAppended(a, b)
  4953. })
  4954. },
  4955. _addHideAppended: function (a) {
  4956. this.$filteredAtoms = this.$filteredAtoms.add(a), a.addClass("no-transition"), this._isInserting = !0, this.styleQueue.push({
  4957. $el: a,
  4958. style: this.options.hiddenStyle
  4959. })
  4960. },
  4961. _revealAppended: function (a, b) {
  4962. var c = this;
  4963. setTimeout(function () {
  4964. a.removeClass("no-transition"), c.styleQueue.push({
  4965. $el: a,
  4966. style: c.options.visibleStyle
  4967. }), c._isInserting = !1, c._processStyleQueue(a, b)
  4968. }, 10)
  4969. },
  4970. reloadItems: function () {
  4971. this.$allAtoms = this._getAtoms(this.element.children())
  4972. },
  4973. remove: function (a, b) {
  4974. this.$allAtoms = this.$allAtoms.not(a), this.$filteredAtoms = this.$filteredAtoms.not(a);
  4975. var c = this,
  4976. d = function () {
  4977. a.remove(), b && b.call(c.element)
  4978. };
  4979. a.filter(":not(." + this.options.hiddenClass + ")").length ? (this.styleQueue.push({
  4980. $el: a,
  4981. style: this.options.hiddenStyle
  4982. }), this._sort(), this.reLayout(d)) : d()
  4983. },
  4984. shuffle: function (a) {
  4985. this.updateSortData(this.$allAtoms), this.options.sortBy = "random", this._sort(), this.reLayout(a)
  4986. },
  4987. destroy: function () {
  4988. var a = this.usingTransforms,
  4989. b = this.options;
  4990. this.$allAtoms.removeClass(b.hiddenClass + " " + b.itemClass).each(function () {
  4991. var b = this.style;
  4992. b.position = "", b.top = "", b.left = "", b.opacity = "", a && (b[i] = "")
  4993. });
  4994. var c = this.element[0].style;
  4995. for (var d in this.originalStyle) c[d] = this.originalStyle[d];
  4996. this.element.unbind(".isotope").undelegate("." + b.hiddenClass, "click").removeClass(b.containerClass).removeData("isotope"), w.unbind(".isotope")
  4997. },
  4998. _getSegments: function (a) {
  4999. var b = this.options.layoutMode,
  5000. c = a ? "rowHeight" : "columnWidth",
  5001. d = a ? "height" : "width",
  5002. e = a ? "rows" : "cols",
  5003. g = this.element[d](),
  5004. h, i = this.options[b] && this.options[b][c] || this.$filteredAtoms["outer" + f(d)](!0) || g;
  5005. h = Math.floor(g / i), h = Math.max(h, 1), this[b][e] = h, this[b][c] = i
  5006. },
  5007. _checkIfSegmentsChanged: function (a) {
  5008. var b = this.options.layoutMode,
  5009. c = a ? "rows" : "cols",
  5010. d = this[b][c];
  5011. return this._getSegments(a), this[b][c] !== d
  5012. },
  5013. _masonryReset: function () {
  5014. this.masonry = {}, this._getSegments();
  5015. var a = this.masonry.cols;
  5016. this.masonry.colYs = [];
  5017. while (a--) this.masonry.colYs.push(0)
  5018. },
  5019. _masonryLayout: function (a) {
  5020. var c = this,
  5021. d = c.masonry;
  5022. a.each(function () {
  5023. var a = b(this),
  5024. e = Math.ceil(a.outerWidth(!0) / d.columnWidth);
  5025. e = Math.min(e, d.cols);
  5026. if (e === 1) c._masonryPlaceBrick(a, d.colYs);
  5027. else {
  5028. var f = d.cols + 1 - e,
  5029. g = [],
  5030. h, i;
  5031. for (i = 0; i < f; i++) h = d.colYs.slice(i, i + e), g[i] = Math.max.apply(Math, h);
  5032. c._masonryPlaceBrick(a, g)
  5033. }
  5034. })
  5035. },
  5036. _masonryPlaceBrick: function (a, b) {
  5037. var c = Math.min.apply(Math, b),
  5038. d = 0;
  5039. for (var e = 0, f = b.length; e < f; e++)
  5040. if (b[e] === c) {
  5041. d = e;
  5042. break
  5043. }
  5044. var g = this.masonry.columnWidth * d,
  5045. h = c;
  5046. this._pushPosition(a, g, h);
  5047. var i = c + a.outerHeight(!0),
  5048. j = this.masonry.cols + 1 - f;
  5049. for (e = 0; e < j; e++) this.masonry.colYs[d + e] = i
  5050. },
  5051. _masonryGetContainerSize: function () {
  5052. var a = Math.max.apply(Math, this.masonry.colYs);
  5053. return {
  5054. height: a
  5055. }
  5056. },
  5057. _masonryResizeChanged: function () {
  5058. return this._checkIfSegmentsChanged()
  5059. },
  5060. _fitRowsReset: function () {
  5061. this.fitRows = {
  5062. x: 0,
  5063. y: 0,
  5064. height: 0
  5065. }
  5066. },
  5067. _fitRowsLayout: function (a) {
  5068. var c = this,
  5069. d = this.element.width(),
  5070. e = this.fitRows;
  5071. a.each(function () {
  5072. var a = b(this),
  5073. f = a.outerWidth(!0),
  5074. g = a.outerHeight(!0);
  5075. e.x !== 0 && f + e.x > d && (e.x = 0, e.y = e.height), c._pushPosition(a, e.x, e.y), e.height = Math.max(e.y + g, e.height), e.x += f
  5076. })
  5077. },
  5078. _fitRowsGetContainerSize: function () {
  5079. return {
  5080. height: this.fitRows.height
  5081. }
  5082. },
  5083. _fitRowsResizeChanged: function () {
  5084. return !0
  5085. },
  5086. _cellsByRowReset: function () {
  5087. this.cellsByRow = {
  5088. index: 0
  5089. }, this._getSegments(), this._getSegments(!0)
  5090. },
  5091. _cellsByRowLayout: function (a) {
  5092. var c = this,
  5093. d = this.cellsByRow;
  5094. a.each(function () {
  5095. var a = b(this),
  5096. e = d.index % d.cols,
  5097. f = Math.floor(d.index / d.cols),
  5098. g = (e + .5) * d.columnWidth - a.outerWidth(!0) / 2,
  5099. h = (f + .5) * d.rowHeight - a.outerHeight(!0) / 2;
  5100. c._pushPosition(a, g, h), d.index++
  5101. })
  5102. },
  5103. _cellsByRowGetContainerSize: function () {
  5104. return {
  5105. height: Math.ceil(this.$filteredAtoms.length / this.cellsByRow.cols) * this.cellsByRow.rowHeight + this.offset.top
  5106. }
  5107. },
  5108. _cellsByRowResizeChanged: function () {
  5109. return this._checkIfSegmentsChanged()
  5110. },
  5111. _straightDownReset: function () {
  5112. this.straightDown = {
  5113. y: 0
  5114. }
  5115. },
  5116. _straightDownLayout: function (a) {
  5117. var c = this;
  5118. a.each(function (a) {
  5119. var d = b(this);
  5120. c._pushPosition(d, 0, c.straightDown.y), c.straightDown.y += d.outerHeight(!0)
  5121. })
  5122. },
  5123. _straightDownGetContainerSize: function () {
  5124. return {
  5125. height: this.straightDown.y
  5126. }
  5127. },
  5128. _straightDownResizeChanged: function () {
  5129. return !0
  5130. },
  5131. _masonryHorizontalReset: function () {
  5132. this.masonryHorizontal = {}, this._getSegments(!0);
  5133. var a = this.masonryHorizontal.rows;
  5134. this.masonryHorizontal.rowXs = [];
  5135. while (a--) this.masonryHorizontal.rowXs.push(0)
  5136. },
  5137. _masonryHorizontalLayout: function (a) {
  5138. var c = this,
  5139. d = c.masonryHorizontal;
  5140. a.each(function () {
  5141. var a = b(this),
  5142. e = Math.ceil(a.outerHeight(!0) / d.rowHeight);
  5143. e = Math.min(e, d.rows);
  5144. if (e === 1) c._masonryHorizontalPlaceBrick(a, d.rowXs);
  5145. else {
  5146. var f = d.rows + 1 - e,
  5147. g = [],
  5148. h, i;
  5149. for (i = 0; i < f; i++) h = d.rowXs.slice(i, i + e), g[i] = Math.max.apply(Math, h);
  5150. c._masonryHorizontalPlaceBrick(a, g)
  5151. }
  5152. })
  5153. },
  5154. _masonryHorizontalPlaceBrick: function (a, b) {
  5155. var c = Math.min.apply(Math, b),
  5156. d = 0;
  5157. for (var e = 0, f = b.length; e < f; e++)
  5158. if (b[e] === c) {
  5159. d = e;
  5160. break
  5161. }
  5162. var g = c,
  5163. h = this.masonryHorizontal.rowHeight * d;
  5164. this._pushPosition(a, g, h);
  5165. var i = c + a.outerWidth(!0),
  5166. j = this.masonryHorizontal.rows + 1 - f;
  5167. for (e = 0; e < j; e++) this.masonryHorizontal.rowXs[d + e] = i
  5168. },
  5169. _masonryHorizontalGetContainerSize: function () {
  5170. var a = Math.max.apply(Math, this.masonryHorizontal.rowXs);
  5171. return {
  5172. width: a
  5173. }
  5174. },
  5175. _masonryHorizontalResizeChanged: function () {
  5176. return this._checkIfSegmentsChanged(!0)
  5177. },
  5178. _fitColumnsReset: function () {
  5179. this.fitColumns = {
  5180. x: 0,
  5181. y: 0,
  5182. width: 0
  5183. }
  5184. },
  5185. _fitColumnsLayout: function (a) {
  5186. var c = this,
  5187. d = this.element.height(),
  5188. e = this.fitColumns;
  5189. a.each(function () {
  5190. var a = b(this),
  5191. f = a.outerWidth(!0),
  5192. g = a.outerHeight(!0);
  5193. e.y !== 0 && g + e.y > d && (e.x = e.width, e.y = 0), c._pushPosition(a, e.x, e.y), e.width = Math.max(e.x + f, e.width), e.y += g
  5194. })
  5195. },
  5196. _fitColumnsGetContainerSize: function () {
  5197. return {
  5198. width: this.fitColumns.width
  5199. }
  5200. },
  5201. _fitColumnsResizeChanged: function () {
  5202. return !0
  5203. },
  5204. _cellsByColumnReset: function () {
  5205. this.cellsByColumn = {
  5206. index: 0
  5207. }, this._getSegments(), this._getSegments(!0)
  5208. },
  5209. _cellsByColumnLayout: function (a) {
  5210. var c = this,
  5211. d = this.cellsByColumn;
  5212. a.each(function () {
  5213. var a = b(this),
  5214. e = Math.floor(d.index / d.rows),
  5215. f = d.index % d.rows,
  5216. g = (e + .5) * d.columnWidth - a.outerWidth(!0) / 2,
  5217. h = (f + .5) * d.rowHeight - a.outerHeight(!0) / 2;
  5218. c._pushPosition(a, g, h), d.index++
  5219. })
  5220. },
  5221. _cellsByColumnGetContainerSize: function () {
  5222. return {
  5223. width: Math.ceil(this.$filteredAtoms.length / this.cellsByColumn.rows) * this.cellsByColumn.columnWidth
  5224. }
  5225. },
  5226. _cellsByColumnResizeChanged: function () {
  5227. return this._checkIfSegmentsChanged(!0)
  5228. },
  5229. _straightAcrossReset: function () {
  5230. this.straightAcross = {
  5231. x: 0
  5232. }
  5233. },
  5234. _straightAcrossLayout: function (a) {
  5235. var c = this;
  5236. a.each(function (a) {
  5237. var d = b(this);
  5238. c._pushPosition(d, c.straightAcross.x, 0), c.straightAcross.x += d.outerWidth(!0)
  5239. })
  5240. },
  5241. _straightAcrossGetContainerSize: function () {
  5242. return {
  5243. width: this.straightAcross.x
  5244. }
  5245. },
  5246. _straightAcrossResizeChanged: function () {
  5247. return !0
  5248. }
  5249. }, b.fn.imagesLoaded = function (a) {
  5250. function h() {
  5251. a.call(c, d)
  5252. }
  5253.  
  5254. function i(a) {
  5255. var c = a.target;
  5256. c.src !== f && b.inArray(c, g) === -1 && (g.push(c), --e <= 0 && (setTimeout(h), d.unbind(".imagesLoaded", i)))
  5257. }
  5258. var c = this,
  5259. d = c.find("img").add(c.filter("img")),
  5260. e = d.length,
  5261. f = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",
  5262. g = [];
  5263. return e || h(), d.bind("load.imagesLoaded error.imagesLoaded", i).each(function () {
  5264. var a = this.src;
  5265. this.src = f, this.src = a
  5266. }), c
  5267. };
  5268. var x = function (b) {
  5269. a.console && a.console.error(b)
  5270. };
  5271. b.fn.isotope = function (a, c) {
  5272. if (typeof a == "string") {
  5273. var d = Array.prototype.slice.call(arguments, 1);
  5274. this.each(function () {
  5275. var c = b.data(this, "isotope");
  5276. if (!c) {
  5277. x("cannot call methods on isotope prior to initialization; attempted to call method '" + a + "'");
  5278. return
  5279. }
  5280. if (!b.isFunction(c[a]) || a.charAt(0) === "_") {
  5281. x("no such method '" + a + "' for isotope instance");
  5282. return
  5283. }
  5284. c[a].apply(c, d)
  5285. })
  5286. } else this.each(function () {
  5287. var d = b.data(this, "isotope");
  5288. d ? (d.option(a), d._init(c)) : b.data(this, "isotope", new b.Isotope(a, this, c))
  5289. });
  5290. return this
  5291. }
  5292. })(window, jQuery);
  5293.  
  5294.  
  5295.  
  5296. /*! Magnific Popup - v1.0.0 - 2015-01-03
  5297. * http://dimsemenov.com/plugins/magnific-popup/
  5298. * Copyright (c) 2015 Dmitry Semenov; */
  5299. ! function (a) {
  5300. "function" == typeof define && define.amd ? define(["jquery"], a) : a("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto)
  5301. }(function (a) {
  5302. var b, c, d, e, f, g, h = "Close",
  5303. i = "BeforeClose",
  5304. j = "AfterClose",
  5305. k = "BeforeAppend",
  5306. l = "MarkupParse",
  5307. m = "Open",
  5308. n = "Change",
  5309. o = "mfp",
  5310. p = "." + o,
  5311. q = "mfp-ready",
  5312. r = "mfp-removing",
  5313. s = "mfp-prevent-close",
  5314. t = function () {},
  5315. u = !!window.jQuery,
  5316. v = a(window),
  5317. w = function (a, c) {
  5318. b.ev.on(o + a + p, c)
  5319. },
  5320. x = function (b, c, d, e) {
  5321. var f = document.createElement("div");
  5322. return f.className = "mfp-" + b, d && (f.innerHTML = d), e ? c && c.appendChild(f) : (f = a(f), c && f.appendTo(c)), f
  5323. },
  5324. y = function (c, d) {
  5325. 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]))
  5326. },
  5327. z = function (c) {
  5328. return c === g && b.currTemplate.closeBtn || (b.currTemplate.closeBtn = a(b.st.closeMarkup.replace("%title%", b.st.tClose)), g = c), b.currTemplate.closeBtn
  5329. },
  5330. A = function () {
  5331. a.magnificPopup.instance || (b = new t, b.init(), a.magnificPopup.instance = b)
  5332. },
  5333. B = function () {
  5334. var a = document.createElement("p").style,
  5335. b = ["ms", "O", "Moz", "Webkit"];
  5336. if (void 0 !== a.transition) return !0;
  5337. for (; b.length;)
  5338. if (b.pop() + "Transition" in a) return !0;
  5339. return !1
  5340. };
  5341. t.prototype = {
  5342. constructor: t,
  5343. init: function () {
  5344. var c = navigator.appVersion;
  5345. b.isIE7 = -1 !== c.indexOf("MSIE 7."), b.isIE8 = -1 !== c.indexOf("MSIE 8."), b.isLowIE = b.isIE7 || b.isIE8, b.isAndroid = /android/gi.test(c), b.isIOS = /iphone|ipad|ipod/gi.test(c), b.supportsTransition = B(), b.probablyMobile = b.isAndroid || b.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent), d = a(document), b.popupsCache = {}
  5346. },
  5347. open: function (c) {
  5348. var e;
  5349. if (c.isObj === !1) {
  5350. b.items = c.items.toArray(), b.index = 0;
  5351. var g, h = c.items;
  5352. for (e = 0; e < h.length; e++)
  5353. if (g = h[e], g.parsed && (g = g.el[0]), g === c.el[0]) {
  5354. b.index = e;
  5355. break
  5356. }
  5357. } else b.items = a.isArray(c.items) ? c.items : [c.items], b.index = c.index || 0;
  5358. if (b.isOpen) return void b.updateItemHTML();
  5359. b.types = [], f = "", b.ev = c.mainEl && c.mainEl.length ? c.mainEl.eq(0) : d, c.key ? (b.popupsCache[c.key] || (b.popupsCache[c.key] = {}), b.currTemplate = b.popupsCache[c.key]) : b.currTemplate = {}, b.st = a.extend(!0, {}, a.magnificPopup.defaults, c), b.fixedContentPos = "auto" === b.st.fixedContentPos ? !b.probablyMobile : b.st.fixedContentPos, b.st.modal && (b.st.closeOnContentClick = !1, b.st.closeOnBgClick = !1, b.st.showCloseBtn = !1, b.st.enableEscapeKey = !1), b.bgOverlay || (b.bgOverlay = x("bg").on("click" + p, function () {
  5360. b.close()
  5361. }), b.wrap = x("wrap").attr("tabindex", -1).on("click" + p, function (a) {
  5362. b._checkIfClose(a.target) && b.close()
  5363. }), b.container = x("container", b.wrap)), b.contentContainer = x("content"), b.st.preloader && (b.preloader = x("preloader", b.container, b.st.tLoading));
  5364. var i = a.magnificPopup.modules;
  5365. for (e = 0; e < i.length; e++) {
  5366. var j = i[e];
  5367. j = j.charAt(0).toUpperCase() + j.slice(1), b["init" + j].call(b)
  5368. }
  5369. y("BeforeOpen"), b.st.showCloseBtn && (b.st.closeBtnInside ? (w(l, function (a, b, c, d) {
  5370. c.close_replaceWith = z(d.type)
  5371. }), f += " mfp-close-btn-in") : b.wrap.append(z())), b.st.alignTop && (f += " mfp-align-top"), b.wrap.css(b.fixedContentPos ? {
  5372. overflow: b.st.overflowY,
  5373. overflowX: "hidden",
  5374. overflowY: b.st.overflowY
  5375. } : {
  5376. top: v.scrollTop(),
  5377. position: "absolute"
  5378. }), (b.st.fixedBgPos === !1 || "auto" === b.st.fixedBgPos && !b.fixedContentPos) && b.bgOverlay.css({
  5379. height: d.height(),
  5380. position: "absolute"
  5381. }), b.st.enableEscapeKey && d.on("keyup" + p, function (a) {
  5382. 27 === a.keyCode && b.close()
  5383. }), v.on("resize" + p, function () {
  5384. b.updateSize()
  5385. }), b.st.closeOnContentClick || (f += " mfp-auto-cursor"), f && b.wrap.addClass(f);
  5386. var k = b.wH = v.height(),
  5387. n = {};
  5388. if (b.fixedContentPos && b._hasScrollBar(k)) {
  5389. var o = b._getScrollbarSize();
  5390. o && (n.marginRight = o)
  5391. }
  5392. b.fixedContentPos && (b.isIE7 ? a("body, html").css("overflow", "hidden") : n.overflow = "hidden");
  5393. var r = b.st.mainClass;
  5394. return b.isIE7 && (r += " mfp-ie7"), r && b._addClassToMFP(r), b.updateItemHTML(), y("BuildControls"), a("html").css(n), b.bgOverlay.add(b.wrap).prependTo(b.st.prependTo || a(document.body)), b._lastFocusedEl = document.activeElement, setTimeout(function () {
  5395. b.content ? (b._addClassToMFP(q), b._setFocus()) : b.bgOverlay.addClass(q), d.on("focusin" + p, b._onFocusIn)
  5396. }, 16), b.isOpen = !0, b.updateSize(k), y(m), c
  5397. },
  5398. close: function () {
  5399. b.isOpen && (y(i), b.isOpen = !1, b.st.removalDelay && !b.isLowIE && b.supportsTransition ? (b._addClassToMFP(r), setTimeout(function () {
  5400. b._close()
  5401. }, b.st.removalDelay)) : b._close())
  5402. },
  5403. _close: function () {
  5404. y(h);
  5405. var c = r + " " + q + " ";
  5406. if (b.bgOverlay.detach(), b.wrap.detach(), b.container.empty(), b.st.mainClass && (c += b.st.mainClass + " "), b._removeClassFromMFP(c), b.fixedContentPos) {
  5407. var e = {
  5408. marginRight: ""
  5409. };
  5410. b.isIE7 ? a("body, html").css("overflow", "") : e.overflow = "", a("html").css(e)
  5411. }
  5412. d.off("keyup" + p + " focusin" + p), b.ev.off(p), b.wrap.attr("class", "mfp-wrap").removeAttr("style"), b.bgOverlay.attr("class", "mfp-bg"), b.container.attr("class", "mfp-container"), !b.st.showCloseBtn || b.st.closeBtnInside && b.currTemplate[b.currItem.type] !== !0 || b.currTemplate.closeBtn && b.currTemplate.closeBtn.detach(), b._lastFocusedEl && a(b._lastFocusedEl).focus(), b.currItem = null, b.content = null, b.currTemplate = null, b.prevHeight = 0, y(j)
  5413. },
  5414. updateSize: function (a) {
  5415. if (b.isIOS) {
  5416. var c = document.documentElement.clientWidth / window.innerWidth,
  5417. d = window.innerHeight * c;
  5418. b.wrap.css("height", d), b.wH = d
  5419. } else b.wH = a || v.height();
  5420. b.fixedContentPos || b.wrap.css("height", b.wH), y("Resize")
  5421. },
  5422. updateItemHTML: function () {
  5423. var c = b.items[b.index];
  5424. b.contentContainer.detach(), b.content && b.content.detach(), c.parsed || (c = b.parseEl(b.index));
  5425. var d = c.type;
  5426. if (y("BeforeChange", [b.currItem ? b.currItem.type : "", d]), b.currItem = c, !b.currTemplate[d]) {
  5427. var f = b.st[d] ? b.st[d].markup : !1;
  5428. y("FirstMarkupParse", f), b.currTemplate[d] = f ? a(f) : !0
  5429. }
  5430. e && e !== c.type && b.container.removeClass("mfp-" + e + "-holder");
  5431. var g = b["get" + d.charAt(0).toUpperCase() + d.slice(1)](c, b.currTemplate[d]);
  5432. b.appendContent(g, d), c.preloaded = !0, y(n, c), e = c.type, b.container.prepend(b.contentContainer), y("AfterChange")
  5433. },
  5434. appendContent: function (a, c) {
  5435. b.content = a, 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 = "", y(k), b.container.addClass("mfp-" + c + "-holder"), b.contentContainer.append(b.content)
  5436. },
  5437. parseEl: function (c) {
  5438. var d, e = b.items[c];
  5439. if (e.tagName ? e = {
  5440. el: a(e)
  5441. } : (d = e.type, e = {
  5442. data: e,
  5443. src: e.src
  5444. }), e.el) {
  5445. for (var f = b.types, g = 0; g < f.length; g++)
  5446. if (e.el.hasClass("mfp-" + f[g])) {
  5447. d = f[g];
  5448. break
  5449. }
  5450. e.src = e.el.attr("data-mfp-src"), e.src || (e.src = e.el.attr("href"))
  5451. }
  5452. return e.type = d || b.st.type || "inline", e.index = c, e.parsed = !0, b.items[c] = e, y("ElementParse", e), b.items[c]
  5453. },
  5454. addGroup: function (a, c) {
  5455. var d = function (d) {
  5456. d.mfpEl = this, b._openClick(d, a, c)
  5457. };
  5458. c || (c = {});
  5459. var e = "click.magnificPopup";
  5460. 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)))
  5461. },
  5462. _openClick: function (c, d, e) {
  5463. var f = void 0 !== e.midClick ? e.midClick : a.magnificPopup.defaults.midClick;
  5464. if (f || 2 !== c.which && !c.ctrlKey && !c.metaKey) {
  5465. var g = void 0 !== e.disableOn ? e.disableOn : a.magnificPopup.defaults.disableOn;
  5466. if (g)
  5467. if (a.isFunction(g)) {
  5468. if (!g.call(b)) return !0
  5469. } else if (v.width() < g) return !0;
  5470. c.type && (c.preventDefault(), b.isOpen && c.stopPropagation()), e.el = a(c.mfpEl), e.delegate && (e.items = d.find(e.delegate)), b.open(e)
  5471. }
  5472. },
  5473. updateStatus: function (a, d) {
  5474. if (b.preloader) {
  5475. c !== a && b.container.removeClass("mfp-s-" + c), d || "loading" !== a || (d = b.st.tLoading);
  5476. var e = {
  5477. status: a,
  5478. text: d
  5479. };
  5480. y("UpdateStatus", e), a = e.status, d = e.text, b.preloader.html(d), b.preloader.find("a").on("click", function (a) {
  5481. a.stopImmediatePropagation()
  5482. }), b.container.addClass("mfp-s-" + a), c = a
  5483. }
  5484. },
  5485. _checkIfClose: function (c) {
  5486. if (!a(c).hasClass(s)) {
  5487. var d = b.st.closeOnContentClick,
  5488. e = b.st.closeOnBgClick;
  5489. if (d && e) return !0;
  5490. if (!b.content || a(c).hasClass("mfp-close") || b.preloader && c === b.preloader[0]) return !0;
  5491. if (c === b.content[0] || a.contains(b.content[0], c)) {
  5492. if (d) return !0
  5493. } else if (e && a.contains(document, c)) return !0;
  5494. return !1
  5495. }
  5496. },
  5497. _addClassToMFP: function (a) {
  5498. b.bgOverlay.addClass(a), b.wrap.addClass(a)
  5499. },
  5500. _removeClassFromMFP: function (a) {
  5501. this.bgOverlay.removeClass(a), b.wrap.removeClass(a)
  5502. },
  5503. _hasScrollBar: function (a) {
  5504. return (b.isIE7 ? d.height() : document.body.scrollHeight) > (a || v.height())
  5505. },
  5506. _setFocus: function () {
  5507. (b.st.focus ? b.content.find(b.st.focus).eq(0) : b.wrap).focus()
  5508. },
  5509. _onFocusIn: function (c) {
  5510. return c.target === b.wrap[0] || a.contains(b.wrap[0], c.target) ? void 0 : (b._setFocus(), !1)
  5511. },
  5512. _parseMarkup: function (b, c, d) {
  5513. var e;
  5514. d.data && (c = a.extend(d.data, c)), y(l, [b, c, d]), a.each(c, function (a, c) {
  5515. if (void 0 === c || c === !1) return !0;
  5516. if (e = a.split("_"), e.length > 1) {
  5517. var d = b.find(p + "-" + e[0]);
  5518. if (d.length > 0) {
  5519. var f = e[1];
  5520. "replaceWith" === f ? d[0] !== c[0] && d.replaceWith(c) : "img" === f ? d.is("img") ? d.attr("src", c) : d.replaceWith('<img src="' + c + '" class="' + d.attr("class") + '" />') : d.attr(e[1], c)
  5521. }
  5522. } else b.find(p + "-" + a).html(c)
  5523. })
  5524. },
  5525. _getScrollbarSize: function () {
  5526. if (void 0 === b.scrollbarSize) {
  5527. var a = document.createElement("div");
  5528. 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)
  5529. }
  5530. return b.scrollbarSize
  5531. }
  5532. }, a.magnificPopup = {
  5533. instance: null,
  5534. proto: t.prototype,
  5535. modules: [],
  5536. open: function (b, c) {
  5537. return A(), b = b ? a.extend(!0, {}, b) : {}, b.isObj = !0, b.index = c || 0, this.instance.open(b)
  5538. },
  5539. close: function () {
  5540. return a.magnificPopup.instance && a.magnificPopup.instance.close()
  5541. },
  5542. registerModule: function (b, c) {
  5543. c.options && (a.magnificPopup.defaults[b] = c.options), a.extend(this.proto, c.proto), this.modules.push(b)
  5544. },
  5545. defaults: {
  5546. disableOn: 0,
  5547. key: null,
  5548. midClick: !1,
  5549. mainClass: "",
  5550. preloader: !0,
  5551. focus: "",
  5552. closeOnContentClick: !1,
  5553. closeOnBgClick: !0,
  5554. closeBtnInside: !0,
  5555. showCloseBtn: !0,
  5556. enableEscapeKey: !0,
  5557. modal: !1,
  5558. alignTop: !1,
  5559. removalDelay: 0,
  5560. prependTo: null,
  5561. fixedContentPos: "auto",
  5562. fixedBgPos: "auto",
  5563. overflowY: "auto",
  5564. closeMarkup: '<button title="%title%" type="button" class="mfp-close">&times;</button>',
  5565. tClose: "Close (Esc)",
  5566. tLoading: "Loading..."
  5567. }
  5568. }, a.fn.magnificPopup = function (c) {
  5569. A();
  5570. var d = a(this);
  5571. if ("string" == typeof c)
  5572. if ("open" === c) {
  5573. var e, f = u ? d.data("magnificPopup") : d[0].magnificPopup,
  5574. g = parseInt(arguments[1], 10) || 0;
  5575. f.items ? e = f.items[g] : (e = d, f.delegate && (e = e.find(f.delegate)), e = e.eq(g)), b._openClick({
  5576. mfpEl: e
  5577. }, d, f)
  5578. } else b.isOpen && b[c].apply(b, Array.prototype.slice.call(arguments, 1));
  5579. else c = a.extend(!0, {}, c), u ? d.data("magnificPopup", c) : d[0].magnificPopup = c, b.addGroup(d, c);
  5580. return d
  5581. };
  5582. var C, D, E, F = "inline",
  5583. G = function () {
  5584. E && (D.after(E.addClass(C)).detach(), E = null)
  5585. };
  5586. a.magnificPopup.registerModule(F, {
  5587. options: {
  5588. hiddenClass: "hide",
  5589. markup: "",
  5590. tNotFound: "Content not found"
  5591. },
  5592. proto: {
  5593. initInline: function () {
  5594. b.types.push(F), w(h + "." + F, function () {
  5595. G()
  5596. })
  5597. },
  5598. getInline: function (c, d) {
  5599. if (G(), c.src) {
  5600. var e = b.st.inline,
  5601. f = a(c.src);
  5602. if (f.length) {
  5603. var g = f[0].parentNode;
  5604. g && g.tagName && (D || (C = e.hiddenClass, D = x(C), C = "mfp-" + C), E = f.after(D).detach().removeClass(C)), b.updateStatus("ready")
  5605. } else b.updateStatus("error", e.tNotFound), f = a("<div>");
  5606. return c.inlineElement = f, f
  5607. }
  5608. return b.updateStatus("ready"), b._parseMarkup(d, {}, c), d
  5609. }
  5610. }
  5611. });
  5612. var H, I = "ajax",
  5613. J = function () {
  5614. H && a(document.body).removeClass(H)
  5615. },
  5616. K = function () {
  5617. J(), b.req && b.req.abort()
  5618. };
  5619. a.magnificPopup.registerModule(I, {
  5620. options: {
  5621. settings: null,
  5622. cursor: "mfp-ajax-cur",
  5623. tError: '<a href="%url%">The content</a> could not be loaded.'
  5624. },
  5625. proto: {
  5626. initAjax: function () {
  5627. b.types.push(I), H = b.st.ajax.cursor, w(h + "." + I, K), w("BeforeChange." + I, K)
  5628. },
  5629. getAjax: function (c) {
  5630. H && a(document.body).addClass(H), b.updateStatus("loading");
  5631. var d = a.extend({
  5632. url: c.src,
  5633. success: function (d, e, f) {
  5634. var g = {
  5635. data: d,
  5636. xhr: f
  5637. };
  5638. y("ParseAjax", g), b.appendContent(a(g.data), I), c.finished = !0, J(), b._setFocus(), setTimeout(function () {
  5639. b.wrap.addClass(q)
  5640. }, 16), b.updateStatus("ready"), y("AjaxContentAdded")
  5641. },
  5642. error: function () {
  5643. J(), c.finished = c.loadError = !0, b.updateStatus("error", b.st.ajax.tError.replace("%url%", c.src))
  5644. }
  5645. }, b.st.ajax.settings);
  5646. return b.req = a.ajax(d), ""
  5647. }
  5648. }
  5649. });
  5650. var L, M = function (c) {
  5651. if (c.data && void 0 !== c.data.title) return c.data.title;
  5652. var d = b.st.image.titleSrc;
  5653. if (d) {
  5654. if (a.isFunction(d)) return d.call(b, c);
  5655. if (c.el) return c.el.attr(d) || ""
  5656. }
  5657. return ""
  5658. };
  5659. a.magnificPopup.registerModule("image", {
  5660. options: {
  5661. markup: '<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>',
  5662. cursor: "mfp-zoom-out-cur",
  5663. titleSrc: "title",
  5664. verticalFit: !0,
  5665. tError: '<a href="%url%">The image</a> could not be loaded.'
  5666. },
  5667. proto: {
  5668. initImage: function () {
  5669. var c = b.st.image,
  5670. d = ".image";
  5671. b.types.push("image"), w(m + d, function () {
  5672. "image" === b.currItem.type && c.cursor && a(document.body).addClass(c.cursor)
  5673. }), w(h + d, function () {
  5674. c.cursor && a(document.body).removeClass(c.cursor), v.off("resize" + p)
  5675. }), w("Resize" + d, b.resizeImage), b.isLowIE && w("AfterChange", b.resizeImage)
  5676. },
  5677. resizeImage: function () {
  5678. var a = b.currItem;
  5679. if (a && a.img && b.st.image.verticalFit) {
  5680. var c = 0;
  5681. 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)
  5682. }
  5683. },
  5684. _onImageHasSize: function (a) {
  5685. 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))
  5686. },
  5687. findImageSize: function (a) {
  5688. var c = 0,
  5689. d = a.img[0],
  5690. e = function (f) {
  5691. L && clearInterval(L), L = setInterval(function () {
  5692. 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)))
  5693. }, f)
  5694. };
  5695. e(1)
  5696. },
  5697. getImage: function (c, d) {
  5698. var e = 0,
  5699. f = function () {
  5700. c && (c.img[0].complete ? (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("ready")), c.hasSize = !0, c.loaded = !0, y("ImageLoadComplete")) : (e++, 200 > e ? setTimeout(f, 100) : g()))
  5701. },
  5702. g = function () {
  5703. 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)
  5704. },
  5705. h = b.st.image,
  5706. i = d.find(".mfp-img");
  5707. if (i.length) {
  5708. var j = document.createElement("img");
  5709. j.className = "mfp-img", c.el && c.el.find("img").length && (j.alt = c.el.find("img").attr("alt")), c.img = a(j).on("load.mfploader", f).on("error.mfploader", g), j.src = c.src, i.is("img") && (c.img = c.img.clone()), j = c.img[0], j.naturalWidth > 0 ? c.hasSize = !0 : j.width || (c.hasSize = !1)
  5710. }
  5711. return b._parseMarkup(d, {
  5712. title: M(c),
  5713. img_replaceWith: c.img
  5714. }, c), b.resizeImage(), c.hasSize ? (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) : (b.updateStatus("loading"), c.loading = !0, c.hasSize || (c.imgHidden = !0, d.addClass("mfp-loading"), b.findImageSize(c)), d)
  5715. }
  5716. }
  5717. });
  5718. var N, O = function () {
  5719. return void 0 === N && (N = void 0 !== document.createElement("p").style.MozTransform), N
  5720. };
  5721. a.magnificPopup.registerModule("zoom", {
  5722. options: {
  5723. enabled: !1,
  5724. easing: "ease-in-out",
  5725. duration: 300,
  5726. opener: function (a) {
  5727. return a.is("img") ? a : a.find("img")
  5728. }
  5729. },
  5730. proto: {
  5731. initZoom: function () {
  5732. var a, c = b.st.zoom,
  5733. d = ".zoom";
  5734. if (c.enabled && b.supportsTransition) {
  5735. var e, f, g = c.duration,
  5736. j = function (a) {
  5737. var b = a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),
  5738. d = "all " + c.duration / 1e3 + "s " + c.easing,
  5739. e = {
  5740. position: "fixed",
  5741. zIndex: 9999,
  5742. left: 0,
  5743. top: 0,
  5744. "-webkit-backface-visibility": "hidden"
  5745. },
  5746. f = "transition";
  5747. return e["-webkit-" + f] = e["-moz-" + f] = e["-o-" + f] = e[f] = d, b.css(e), b
  5748. },
  5749. k = function () {
  5750. b.content.css("visibility", "visible")
  5751. };
  5752. w("BuildControls" + d, function () {
  5753. if (b._allowZoom()) {
  5754. if (clearTimeout(e), b.content.css("visibility", "hidden"), a = b._getItemToZoom(), !a) return void k();
  5755. f = j(a), f.css(b._getOffset()), b.wrap.append(f), e = setTimeout(function () {
  5756. f.css(b._getOffset(!0)), e = setTimeout(function () {
  5757. k(), setTimeout(function () {
  5758. f.remove(), a = f = null, y("ZoomAnimationEnded")
  5759. }, 16)
  5760. }, g)
  5761. }, 16)
  5762. }
  5763. }), w(i + d, function () {
  5764. if (b._allowZoom()) {
  5765. if (clearTimeout(e), b.st.removalDelay = g, !a) {
  5766. if (a = b._getItemToZoom(), !a) return;
  5767. f = j(a)
  5768. }
  5769. f.css(b._getOffset(!0)), b.wrap.append(f), b.content.css("visibility", "hidden"), setTimeout(function () {
  5770. f.css(b._getOffset())
  5771. }, 16)
  5772. }
  5773. }), w(h + d, function () {
  5774. b._allowZoom() && (k(), f && f.remove(), a = null)
  5775. })
  5776. }
  5777. },
  5778. _allowZoom: function () {
  5779. return "image" === b.currItem.type
  5780. },
  5781. _getItemToZoom: function () {
  5782. return b.currItem.hasSize ? b.currItem.img : !1
  5783. },
  5784. _getOffset: function (c) {
  5785. var d;
  5786. d = c ? b.currItem.img : b.st.zoom.opener(b.currItem.el || b.currItem);
  5787. var e = d.offset(),
  5788. f = parseInt(d.css("padding-top"), 10),
  5789. g = parseInt(d.css("padding-bottom"), 10);
  5790. e.top -= a(window).scrollTop() - f;
  5791. var h = {
  5792. width: d.width(),
  5793. height: (u ? d.innerHeight() : d[0].offsetHeight) - g - f
  5794. };
  5795. return O() ? h["-moz-transform"] = h.transform = "translate(" + e.left + "px," + e.top + "px)" : (h.left = e.left, h.top = e.top), h
  5796. }
  5797. }
  5798. });
  5799. var P = "iframe",
  5800. Q = "//about:blank",
  5801. R = function (a) {
  5802. if (b.currTemplate[P]) {
  5803. var c = b.currTemplate[P].find("iframe");
  5804. c.length && (a || (c[0].src = Q), b.isIE8 && c.css("display", a ? "block" : "none"))
  5805. }
  5806. };
  5807. a.magnificPopup.registerModule(P, {
  5808. options: {
  5809. markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',
  5810. srcAction: "iframe_src",
  5811. patterns: {
  5812. youtube: {
  5813. index: "youtube.com",
  5814. id: "v=",
  5815. src: "//www.youtube.com/embed/%id%?autoplay=1"
  5816. },
  5817. vimeo: {
  5818. index: "vimeo.com/",
  5819. id: "/",
  5820. src: "//player.vimeo.com/video/%id%?autoplay=1"
  5821. },
  5822. gmaps: {
  5823. index: "//maps.google.",
  5824. src: "%id%&output=embed"
  5825. }
  5826. }
  5827. },
  5828. proto: {
  5829. initIframe: function () {
  5830. b.types.push(P), w("BeforeChange", function (a, b, c) {
  5831. b !== c && (b === P ? R() : c === P && R(!0))
  5832. }), w(h + "." + P, function () {
  5833. R()
  5834. })
  5835. },
  5836. getIframe: function (c, d) {
  5837. var e = c.src,
  5838. f = b.st.iframe;
  5839. a.each(f.patterns, function () {
  5840. 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
  5841. });
  5842. var g = {};
  5843. return f.srcAction && (g[f.srcAction] = e), b._parseMarkup(d, g, c), b.updateStatus("ready"), d
  5844. }
  5845. }
  5846. });
  5847. var S = function (a) {
  5848. var c = b.items.length;
  5849. return a > c - 1 ? a - c : 0 > a ? c + a : a
  5850. },
  5851. T = function (a, b, c) {
  5852. return a.replace(/%curr%/gi, b + 1).replace(/%total%/gi, c)
  5853. };
  5854. a.magnificPopup.registerModule("gallery", {
  5855. options: {
  5856. enabled: !1,
  5857. arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',
  5858. preload: [0, 2],
  5859. navigateByImgClick: !0,
  5860. arrows: !0,
  5861. tPrev: "Previous (Left arrow key)",
  5862. tNext: "Next (Right arrow key)",
  5863. tCounter: "%curr% of %total%"
  5864. },
  5865. proto: {
  5866. initGallery: function () {
  5867. var c = b.st.gallery,
  5868. e = ".mfp-gallery",
  5869. g = Boolean(a.fn.mfpFastClick);
  5870. return b.direction = !0, c && c.enabled ? (f += " mfp-gallery", w(m + e, function () {
  5871. c.navigateByImgClick && b.wrap.on("click" + e, ".mfp-img", function () {
  5872. return b.items.length > 1 ? (b.next(), !1) : void 0
  5873. }), d.on("keydown" + e, function (a) {
  5874. 37 === a.keyCode ? b.prev() : 39 === a.keyCode && b.next()
  5875. })
  5876. }), w("UpdateStatus" + e, function (a, c) {
  5877. c.text && (c.text = T(c.text, b.currItem.index, b.items.length))
  5878. }), w(l + e, function (a, d, e, f) {
  5879. var g = b.items.length;
  5880. e.counter = g > 1 ? T(c.tCounter, f.index, g) : ""
  5881. }), w("BuildControls" + e, function () {
  5882. if (b.items.length > 1 && c.arrows && !b.arrowLeft) {
  5883. var d = c.arrowMarkup,
  5884. e = b.arrowLeft = a(d.replace(/%title%/gi, c.tPrev).replace(/%dir%/gi, "left")).addClass(s),
  5885. f = b.arrowRight = a(d.replace(/%title%/gi, c.tNext).replace(/%dir%/gi, "right")).addClass(s),
  5886. h = g ? "mfpFastClick" : "click";
  5887. e[h](function () {
  5888. b.prev()
  5889. }), f[h](function () {
  5890. b.next()
  5891. }), b.isIE7 && (x("b", e[0], !1, !0), x("a", e[0], !1, !0), x("b", f[0], !1, !0), x("a", f[0], !1, !0)), b.container.append(e.add(f))
  5892. }
  5893. }), w(n + e, function () {
  5894. b._preloadTimeout && clearTimeout(b._preloadTimeout), b._preloadTimeout = setTimeout(function () {
  5895. b.preloadNearbyImages(), b._preloadTimeout = null
  5896. }, 16)
  5897. }), void w(h + e, function () {
  5898. d.off(e), b.wrap.off("click" + e), b.arrowLeft && g && b.arrowLeft.add(b.arrowRight).destroyMfpFastClick(), b.arrowRight = b.arrowLeft = null
  5899. })) : !1
  5900. },
  5901. next: function () {
  5902. b.direction = !0, b.index = S(b.index + 1), b.updateItemHTML()
  5903. },
  5904. prev: function () {
  5905. b.direction = !1, b.index = S(b.index - 1), b.updateItemHTML()
  5906. },
  5907. goTo: function (a) {
  5908. b.direction = a >= b.index, b.index = a, b.updateItemHTML()
  5909. },
  5910. preloadNearbyImages: function () {
  5911. var a, c = b.st.gallery.preload,
  5912. d = Math.min(c[0], b.items.length),
  5913. e = Math.min(c[1], b.items.length);
  5914. for (a = 1; a <= (b.direction ? e : d); a++) b._preloadItem(b.index + a);
  5915. for (a = 1; a <= (b.direction ? d : e); a++) b._preloadItem(b.index - a)
  5916. },
  5917. _preloadItem: function (c) {
  5918. if (c = S(c), !b.items[c].preloaded) {
  5919. var d = b.items[c];
  5920. d.parsed || (d = b.parseEl(c)), y("LazyLoad", d), "image" === d.type && (d.img = a('<img class="mfp-img" />').on("load.mfploader", function () {
  5921. d.hasSize = !0
  5922. }).on("error.mfploader", function () {
  5923. d.hasSize = !0, d.loadError = !0, y("LazyLoadError", d)
  5924. }).attr("src", d.src)), d.preloaded = !0
  5925. }
  5926. }
  5927. }
  5928. });
  5929. var U = "retina";
  5930. a.magnificPopup.registerModule(U, {
  5931. options: {
  5932. replaceSrc: function (a) {
  5933. return a.src.replace(/\.\w+$/, function (a) {
  5934. return "@2x" + a
  5935. })
  5936. },
  5937. ratio: 1
  5938. },
  5939. proto: {
  5940. initRetina: function () {
  5941. if (window.devicePixelRatio > 1) {
  5942. var a = b.st.retina,
  5943. c = a.ratio;
  5944. c = isNaN(c) ? c() : c, c > 1 && (w("ImageHasSize." + U, function (a, b) {
  5945. b.img.css({
  5946. "max-width": b.img[0].naturalWidth / c,
  5947. width: "100%"
  5948. })
  5949. }), w("ElementParse." + U, function (b, d) {
  5950. d.src = a.replaceSrc(d, c)
  5951. }))
  5952. }
  5953. }
  5954. }
  5955. }),
  5956. function () {
  5957. var b = 1e3,
  5958. c = "ontouchstart" in window,
  5959. d = function () {
  5960. v.off("touchmove" + f + " touchend" + f)
  5961. },
  5962. e = "mfpFastClick",
  5963. f = "." + e;
  5964. a.fn.mfpFastClick = function (e) {
  5965. return a(this).each(function () {
  5966. var g, h = a(this);
  5967. if (c) {
  5968. var i, j, k, l, m, n;
  5969. h.on("touchstart" + f, function (a) {
  5970. l = !1, n = 1, m = a.originalEvent ? a.originalEvent.touches[0] : a.touches[0], j = m.clientX, k = m.clientY, v.on("touchmove" + f, function (a) {
  5971. m = a.originalEvent ? a.originalEvent.touches : a.touches, n = m.length, m = m[0], (Math.abs(m.clientX - j) > 10 || Math.abs(m.clientY - k) > 10) && (l = !0, d())
  5972. }).on("touchend" + f, function (a) {
  5973. d(), l || n > 1 || (g = !0, a.preventDefault(), clearTimeout(i), i = setTimeout(function () {
  5974. g = !1
  5975. }, b), e())
  5976. })
  5977. })
  5978. }
  5979. h.on("click" + f, function () {
  5980. g || e()
  5981. })
  5982. })
  5983. }, a.fn.destroyMfpFastClick = function () {
  5984. a(this).off("touchstart" + f + " click" + f), c && v.off("touchmove" + f + " touchend" + f)
  5985. }
  5986. }(), A()
  5987. });
  5988.  
  5989.  
  5990.  
  5991. /** Owl Carousel
  5992. * Copyright (c) 2007-2015 Ariel Flesler - aflesler<a>gmail<d>com | http://flesler.blogspot.com
  5993. * Licensed under MIT
  5994. * @author Ariel Flesler
  5995. * @version 2.1.1
  5996. */
  5997. ;
  5998. (function (f) {
  5999. "use strict";
  6000. "function" === typeof define && define.amd ? define(["jquery"], f) : "undefined" !== typeof module && module.exports ? module.exports = f(require("jquery")) : f(jQuery)
  6001. })(function ($) {
  6002. "use strict";
  6003.  
  6004. function n(a) {
  6005. return !a.nodeName || -1 !== $.inArray(a.nodeName.toLowerCase(), ["iframe", "#document", "html", "body"])
  6006. }
  6007.  
  6008. function h(a) {
  6009. return $.isFunction(a) || $.isPlainObject(a) ? a : {
  6010. top: a,
  6011. left: a
  6012. }
  6013. }
  6014. var p = $.scrollTo = function (a, d, b) {
  6015. return $(window).scrollTo(a, d, b)
  6016. };
  6017. p.defaults = {
  6018. axis: "xy",
  6019. duration: 0,
  6020. limit: !0
  6021. };
  6022. $.fn.scrollTo = function (a, d, b) {
  6023. "object" === typeof d && (b = d, d = 0);
  6024. "function" === typeof b && (b = {
  6025. onAfter: b
  6026. });
  6027. "max" === a && (a = 9E9);
  6028. b = $.extend({}, p.defaults, b);
  6029. d = d || b.duration;
  6030. var u = b.queue && 1 < b.axis.length;
  6031. u && (d /= 2);
  6032. b.offset = h(b.offset);
  6033. b.over = h(b.over);
  6034. return this.each(function () {
  6035. function k(a) {
  6036. var k = $.extend({}, b, {
  6037. queue: !0,
  6038. duration: d,
  6039. complete: a && function () {
  6040. a.call(q, e, b)
  6041. }
  6042. });
  6043. r.animate(f, k)
  6044. }
  6045. if (null !== a) {
  6046. var l = n(this),
  6047. q = l ? this.contentWindow || window : this,
  6048. r = $(q),
  6049. e = a,
  6050. f = {},
  6051. t;
  6052. switch (typeof e) {
  6053. case "number":
  6054. case "string":
  6055. if (/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)) {
  6056. e = h(e);
  6057. break
  6058. }
  6059. e = l ? $(e) : $(e, q);
  6060. if (!e.length) return;
  6061. case "object":
  6062. if (e.is || e.style) t = (e = $(e)).offset()
  6063. }
  6064. var v = $.isFunction(b.offset) && b.offset(q, e) || b.offset;
  6065. $.each(b.axis.split(""), function (a, c) {
  6066. var d = "x" === c ? "Left" : "Top",
  6067. m = d.toLowerCase(),
  6068. g = "scroll" + d,
  6069. h = r[g](),
  6070. n = p.max(q, c);
  6071. t ? (f[g] = t[m] + (l ? 0 : h - r.offset()[m]), b.margin && (f[g] -= parseInt(e.css("margin" + d), 10) || 0, f[g] -= parseInt(e.css("border" + d + "Width"), 10) || 0), f[g] += v[m] || 0, b.over[m] && (f[g] += e["x" === c ? "width" : "height"]() * b.over[m])) : (d = e[m], f[g] = d.slice && "%" === d.slice(-1) ? parseFloat(d) / 100 * n : d);
  6072. b.limit && /^\d+$/.test(f[g]) && (f[g] = 0 >= f[g] ? 0 : Math.min(f[g], n));
  6073. !a && 1 < b.axis.length && (h === f[g] ? f = {} : u && (k(b.onAfterFirst), f = {}))
  6074. });
  6075. k(b.onAfter)
  6076. }
  6077. })
  6078. };
  6079. p.max = function (a, d) {
  6080. var b = "x" === d ? "Width" : "Height",
  6081. h = "scroll" + b;
  6082. if (!n(a)) return a[h] - $(a)[b.toLowerCase()]();
  6083. var b = "client" + b,
  6084. k = a.ownerDocument || a.document,
  6085. l = k.documentElement,
  6086. k = k.body;
  6087. return Math.max(l[h], k[h]) - Math.min(l[b], k[b])
  6088. };
  6089. $.Tween.propHooks.scrollLeft = $.Tween.propHooks.scrollTop = {
  6090. get: function (a) {
  6091. return $(a.elem)[a.prop]()
  6092. },
  6093. set: function (a) {
  6094. var d = this.get(a);
  6095. if (a.options.interrupt && a._last && a._last !== d) return $(a.elem).stop();
  6096. var b = Math.round(a.now);
  6097. d !== b && ($(a.elem)[a.prop](b), a._last = this.get(a))
  6098. }
  6099. };
  6100. return p
  6101. });
  6102.  
  6103.  
  6104. "function" !== typeof Object.create && (Object.create = function (f) {
  6105. function g() {}
  6106. g.prototype = f;
  6107. return new g
  6108. });
  6109. (function (f, g, k) {
  6110. var l = {
  6111. init: function (a, b) {
  6112. this.$elem = f(b);
  6113. this.options = f.extend({}, f.fn.owlCarousel.options, this.$elem.data(), a);
  6114. this.userOptions = a;
  6115. this.loadContent()
  6116. },
  6117. loadContent: function () {
  6118. function a(a) {
  6119. var d, e = "";
  6120. if ("function" === typeof b.options.jsonSuccess) b.options.jsonSuccess.apply(this, [a]);
  6121. else {
  6122. for (d in a.owl) a.owl.hasOwnProperty(d) && (e += a.owl[d].item);
  6123. b.$elem.html(e)
  6124. }
  6125. b.logIn()
  6126. }
  6127. var b = this,
  6128. e;
  6129. "function" === typeof b.options.beforeInit && b.options.beforeInit.apply(this, [b.$elem]);
  6130. "string" === typeof b.options.jsonPath ?
  6131. (e = b.options.jsonPath, f.getJSON(e, a)) : b.logIn()
  6132. },
  6133. logIn: function () {
  6134. this.$elem.data("owl-originalStyles", this.$elem.attr("style"));
  6135. this.$elem.data("owl-originalClasses", this.$elem.attr("class"));
  6136. this.$elem.css({
  6137. opacity: 0
  6138. });
  6139. this.orignalItems = this.options.items;
  6140. this.checkBrowser();
  6141. this.wrapperWidth = 0;
  6142. this.checkVisible = null;
  6143. this.setVars()
  6144. },
  6145. setVars: function () {
  6146. if (0 === this.$elem.children().length) return !1;
  6147. this.baseClass();
  6148. this.eventTypes();
  6149. this.$userItems = this.$elem.children();
  6150. this.itemsAmount = this.$userItems.length;
  6151. this.wrapItems();
  6152. this.$owlItems = this.$elem.find(".owl-item");
  6153. this.$owlWrapper = this.$elem.find(".owl-wrapper");
  6154. this.playDirection = "next";
  6155. this.prevItem = 0;
  6156. this.prevArr = [0];
  6157. this.currentItem = 0;
  6158. this.customEvents();
  6159. this.onStartup()
  6160. },
  6161. onStartup: function () {
  6162. this.updateItems();
  6163. this.calculateAll();
  6164. this.buildControls();
  6165. this.updateControls();
  6166. this.response();
  6167. this.moveEvents();
  6168. this.stopOnHover();
  6169. this.owlStatus();
  6170. !1 !== this.options.transitionStyle && this.transitionTypes(this.options.transitionStyle);
  6171. !0 === this.options.autoPlay &&
  6172. (this.options.autoPlay = 5E3);
  6173. this.play();
  6174. this.$elem.find(".owl-wrapper").css("display", "block");
  6175. this.$elem.is(":visible") ? this.$elem.css("opacity", 1) : this.watchVisibility();
  6176. this.onstartup = !1;
  6177. this.eachMoveUpdate();
  6178. "function" === typeof this.options.afterInit && this.options.afterInit.apply(this, [this.$elem])
  6179. },
  6180. eachMoveUpdate: function () {
  6181. !0 === this.options.lazyLoad && this.lazyLoad();
  6182. !0 === this.options.autoHeight && this.autoHeight();
  6183. this.onVisibleItems();
  6184. "function" === typeof this.options.afterAction && this.options.afterAction.apply(this, [this.$elem])
  6185. },
  6186. updateVars: function () {
  6187. "function" === typeof this.options.beforeUpdate && this.options.beforeUpdate.apply(this, [this.$elem]);
  6188. this.watchVisibility();
  6189. this.updateItems();
  6190. this.calculateAll();
  6191. this.updatePosition();
  6192. this.updateControls();
  6193. this.eachMoveUpdate();
  6194. "function" === typeof this.options.afterUpdate && this.options.afterUpdate.apply(this, [this.$elem])
  6195. },
  6196. reload: function () {
  6197. var a = this;
  6198. g.setTimeout(function () {
  6199. a.updateVars()
  6200. }, 0)
  6201. },
  6202. watchVisibility: function () {
  6203. var a = this;
  6204. if (!1 === a.$elem.is(":visible")) a.$elem.css({
  6205. opacity: 0
  6206. }),
  6207. g.clearInterval(a.autoPlayInterval), g.clearInterval(a.checkVisible);
  6208. else return !1;
  6209. a.checkVisible = g.setInterval(function () {
  6210. a.$elem.is(":visible") && (a.reload(), a.$elem.animate({
  6211. opacity: 1
  6212. }, 200), g.clearInterval(a.checkVisible))
  6213. }, 500)
  6214. },
  6215. wrapItems: function () {
  6216. this.$userItems.wrapAll('<div class="owl-wrapper">').wrap('<div class="owl-item"></div>');
  6217. this.$elem.find(".owl-wrapper").wrap('<div class="owl-wrapper-outer">');
  6218. this.wrapperOuter = this.$elem.find(".owl-wrapper-outer");
  6219. this.$elem.css("display", "block")
  6220. },
  6221. baseClass: function () {
  6222. var a = this.$elem.hasClass(this.options.baseClass),
  6223. b = this.$elem.hasClass(this.options.theme);
  6224. a || this.$elem.addClass(this.options.baseClass);
  6225. b || this.$elem.addClass(this.options.theme)
  6226. },
  6227. updateItems: function () {
  6228. var a, b;
  6229. if (!1 === this.options.responsive) return !1;
  6230. if (!0 === this.options.singleItem) return this.options.items = this.orignalItems = 1, this.options.itemsCustom = !1, this.options.itemsDesktop = !1, this.options.itemsDesktopSmall = !1, this.options.itemsTablet = !1, this.options.itemsTabletSmall = !1, this.options.itemsMobile = !1;
  6231. a = f(this.options.responsiveBaseWidth).width();
  6232. a > (this.options.itemsDesktop[0] || this.orignalItems) && (this.options.items = this.orignalItems);
  6233. if (!1 !== this.options.itemsCustom)
  6234. for (this.options.itemsCustom.sort(function (a, b) {
  6235. return a[0] - b[0]
  6236. }), b = 0; b < this.options.itemsCustom.length; b += 1) this.options.itemsCustom[b][0] <= a && (this.options.items = this.options.itemsCustom[b][1]);
  6237. else a <= this.options.itemsDesktop[0] && !1 !== this.options.itemsDesktop && (this.options.items = this.options.itemsDesktop[1]),
  6238. a <= this.options.itemsDesktopSmall[0] && !1 !== this.options.itemsDesktopSmall && (this.options.items = this.options.itemsDesktopSmall[1]), a <= this.options.itemsTablet[0] && !1 !== this.options.itemsTablet && (this.options.items = this.options.itemsTablet[1]), a <= this.options.itemsTabletSmall[0] && !1 !== this.options.itemsTabletSmall && (this.options.items = this.options.itemsTabletSmall[1]), a <= this.options.itemsMobile[0] && !1 !== this.options.itemsMobile && (this.options.items = this.options.itemsMobile[1]);
  6239. this.options.items > this.itemsAmount &&
  6240. !0 === this.options.itemsScaleUp && (this.options.items = this.itemsAmount)
  6241. },
  6242. response: function () {
  6243. var a = this,
  6244. b, e;
  6245. if (!0 !== a.options.responsive) return !1;
  6246. e = f(g).width();
  6247. a.resizer = function () {
  6248. f(g).width() !== e && (!1 !== a.options.autoPlay && g.clearInterval(a.autoPlayInterval), g.clearTimeout(b), b = g.setTimeout(function () {
  6249. e = f(g).width();
  6250. a.updateVars()
  6251. }, a.options.responsiveRefreshRate))
  6252. };
  6253. f(g).resize(a.resizer)
  6254. },
  6255. updatePosition: function () {
  6256. this.jumpTo(this.currentItem);
  6257. !1 !== this.options.autoPlay && this.checkAp()
  6258. },
  6259. appendItemsSizes: function () {
  6260. var a =
  6261. this,
  6262. b = 0,
  6263. e = a.itemsAmount - a.options.items;
  6264. a.$owlItems.each(function (c) {
  6265. var d = f(this);
  6266. d.css({
  6267. width: a.itemWidth
  6268. }).data("owl-item", Number(c));
  6269. if (0 === c % a.options.items || c === e) c > e || (b += 1);
  6270. d.data("owl-roundPages", b)
  6271. })
  6272. },
  6273. appendWrapperSizes: function () {
  6274. this.$owlWrapper.css({
  6275. width: this.$owlItems.length * this.itemWidth * 2,
  6276. left: 0
  6277. });
  6278. this.appendItemsSizes()
  6279. },
  6280. calculateAll: function () {
  6281. this.calculateWidth();
  6282. this.appendWrapperSizes();
  6283. this.loops();
  6284. this.max()
  6285. },
  6286. calculateWidth: function () {
  6287. this.itemWidth = Math.round(this.$elem.width() /
  6288. this.options.items)
  6289. },
  6290. max: function () {
  6291. var a = -1 * (this.itemsAmount * this.itemWidth - this.options.items * this.itemWidth);
  6292. this.options.items > this.itemsAmount ? this.maximumPixels = a = this.maximumItem = 0 : (this.maximumItem = this.itemsAmount - this.options.items, this.maximumPixels = a);
  6293. return a
  6294. },
  6295. min: function () {
  6296. return 0
  6297. },
  6298. loops: function () {
  6299. var a = 0,
  6300. b = 0,
  6301. e, c;
  6302. this.positionsInArray = [0];
  6303. this.pagesInArray = [];
  6304. for (e = 0; e < this.itemsAmount; e += 1) b += this.itemWidth, this.positionsInArray.push(-b), !0 === this.options.scrollPerPage && (c = f(this.$owlItems[e]),
  6305. c = c.data("owl-roundPages"), c !== a && (this.pagesInArray[a] = this.positionsInArray[e], a = c))
  6306. },
  6307. buildControls: function () {
  6308. if (!0 === this.options.navigation || !0 === this.options.pagination) this.owlControls = f('<div class="owl-controls"/>').toggleClass("clickable", !this.browser.isTouch).appendTo(this.$elem);
  6309. !0 === this.options.pagination && this.buildPagination();
  6310. !0 === this.options.navigation && this.buildButtons()
  6311. },
  6312. buildButtons: function () {
  6313. var a = this,
  6314. b = f('<div class="owl-buttons"/>');
  6315. a.owlControls.append(b);
  6316. a.buttonPrev =
  6317. f("<div/>", {
  6318. "class": "owl-prev",
  6319. html: a.options.navigationText[0] || ""
  6320. });
  6321. a.buttonNext = f("<div/>", {
  6322. "class": "owl-next",
  6323. html: a.options.navigationText[1] || ""
  6324. });
  6325. b.append(a.buttonPrev).append(a.buttonNext);
  6326. b.on("touchstart.owlControls mousedown.owlControls", 'div[class^="owl"]', function (a) {
  6327. a.preventDefault()
  6328. });
  6329. b.on("touchend.owlControls mouseup.owlControls", 'div[class^="owl"]', function (b) {
  6330. b.preventDefault();
  6331. f(this).hasClass("owl-next") ? a.next() : a.prev()
  6332. })
  6333. },
  6334. buildPagination: function () {
  6335. var a = this;
  6336. a.paginationWrapper =
  6337. f('<div class="owl-pagination"/>');
  6338. a.owlControls.append(a.paginationWrapper);
  6339. a.paginationWrapper.on("touchend.owlControls mouseup.owlControls", ".owl-page", function (b) {
  6340. b.preventDefault();
  6341. Number(f(this).data("owl-page")) !== a.currentItem && a.goTo(Number(f(this).data("owl-page")), !0)
  6342. })
  6343. },
  6344. updatePagination: function () {
  6345. var a, b, e, c, d, g;
  6346. if (!1 === this.options.pagination) return !1;
  6347. this.paginationWrapper.html("");
  6348. a = 0;
  6349. b = this.itemsAmount - this.itemsAmount % this.options.items;
  6350. for (c = 0; c < this.itemsAmount; c += 1) 0 === c % this.options.items &&
  6351. (a += 1, b === c && (e = this.itemsAmount - this.options.items), d = f("<div/>", {
  6352. "class": "owl-page"
  6353. }), g = f("<span></span>", {
  6354. text: !0 === this.options.paginationNumbers ? a : "",
  6355. "class": !0 === this.options.paginationNumbers ? "owl-numbers" : ""
  6356. }), d.append(g), d.data("owl-page", b === c ? e : c), d.data("owl-roundPages", a), this.paginationWrapper.append(d));
  6357. this.checkPagination()
  6358. },
  6359. checkPagination: function () {
  6360. var a = this;
  6361. if (!1 === a.options.pagination) return !1;
  6362. a.paginationWrapper.find(".owl-page").each(function () {
  6363. f(this).data("owl-roundPages") ===
  6364. f(a.$owlItems[a.currentItem]).data("owl-roundPages") && (a.paginationWrapper.find(".owl-page").removeClass("active"), f(this).addClass("active"))
  6365. })
  6366. },
  6367. checkNavigation: function () {
  6368. if (!1 === this.options.navigation) return !1;
  6369. !1 === this.options.rewindNav && (0 === this.currentItem && 0 === this.maximumItem ? (this.buttonPrev.addClass("disabled"), this.buttonNext.addClass("disabled")) : 0 === this.currentItem && 0 !== this.maximumItem ? (this.buttonPrev.addClass("disabled"), this.buttonNext.removeClass("disabled")) : this.currentItem ===
  6370. this.maximumItem ? (this.buttonPrev.removeClass("disabled"), this.buttonNext.addClass("disabled")) : 0 !== this.currentItem && this.currentItem !== this.maximumItem && (this.buttonPrev.removeClass("disabled"), this.buttonNext.removeClass("disabled")))
  6371. },
  6372. updateControls: function () {
  6373. this.updatePagination();
  6374. this.checkNavigation();
  6375. this.owlControls && (this.options.items >= this.itemsAmount ? this.owlControls.hide() : this.owlControls.show())
  6376. },
  6377. destroyControls: function () {
  6378. this.owlControls && this.owlControls.remove()
  6379. },
  6380. next: function (a) {
  6381. if (this.isTransition) return !1;
  6382. this.currentItem += !0 === this.options.scrollPerPage ? this.options.items : 1;
  6383. if (this.currentItem > this.maximumItem + (!0 === this.options.scrollPerPage ? this.options.items - 1 : 0))
  6384. if (!0 === this.options.rewindNav) this.currentItem = 0, a = "rewind";
  6385. else return this.currentItem = this.maximumItem, !1;
  6386. this.goTo(this.currentItem, a)
  6387. },
  6388. prev: function (a) {
  6389. if (this.isTransition) return !1;
  6390. this.currentItem = !0 === this.options.scrollPerPage && 0 < this.currentItem && this.currentItem < this.options.items ? 0 : this.currentItem - (!0 === this.options.scrollPerPage ?
  6391. this.options.items : 1);
  6392. if (0 > this.currentItem)
  6393. if (!0 === this.options.rewindNav) this.currentItem = this.maximumItem, a = "rewind";
  6394. else return this.currentItem = 0, !1;
  6395. this.goTo(this.currentItem, a)
  6396. },
  6397. goTo: function (a, b, e) {
  6398. var c = this;
  6399. if (c.isTransition) return !1;
  6400. "function" === typeof c.options.beforeMove && c.options.beforeMove.apply(this, [c.$elem]);
  6401. a >= c.maximumItem ? a = c.maximumItem : 0 >= a && (a = 0);
  6402. c.currentItem = c.owl.currentItem = a;
  6403. if (!1 !== c.options.transitionStyle && "drag" !== e && 1 === c.options.items && !0 === c.browser.support3d) return c.swapSpeed(0), !0 === c.browser.support3d ? c.transition3d(c.positionsInArray[a]) : c.css2slide(c.positionsInArray[a], 1), c.afterGo(), c.singleItemTransition(), !1;
  6404. a = c.positionsInArray[a];
  6405. !0 === c.browser.support3d ? (c.isCss3Finish = !1, !0 === b ? (c.swapSpeed("paginationSpeed"), g.setTimeout(function () {
  6406. c.isCss3Finish = !0
  6407. }, c.options.paginationSpeed)) : "rewind" === b ? (c.swapSpeed(c.options.rewindSpeed), g.setTimeout(function () {
  6408. c.isCss3Finish = !0
  6409. }, c.options.rewindSpeed)) : (c.swapSpeed("slideSpeed"), g.setTimeout(function () {
  6410. c.isCss3Finish = !0
  6411. },
  6412. c.options.slideSpeed)), c.transition3d(a)) : !0 === b ? c.css2slide(a, c.options.paginationSpeed) : "rewind" === b ? c.css2slide(a, c.options.rewindSpeed) : c.css2slide(a, c.options.slideSpeed);
  6413. c.afterGo()
  6414. },
  6415. jumpTo: function (a) {
  6416. "function" === typeof this.options.beforeMove && this.options.beforeMove.apply(this, [this.$elem]);
  6417. a >= this.maximumItem || -1 === a ? a = this.maximumItem : 0 >= a && (a = 0);
  6418. this.swapSpeed(0);
  6419. !0 === this.browser.support3d ? this.transition3d(this.positionsInArray[a]) : this.css2slide(this.positionsInArray[a], 1);
  6420. this.currentItem =
  6421. this.owl.currentItem = a;
  6422. this.afterGo()
  6423. },
  6424. afterGo: function () {
  6425. this.prevArr.push(this.currentItem);
  6426. this.prevItem = this.owl.prevItem = this.prevArr[this.prevArr.length - 2];
  6427. this.prevArr.shift(0);
  6428. this.prevItem !== this.currentItem && (this.checkPagination(), this.checkNavigation(), this.eachMoveUpdate(), !1 !== this.options.autoPlay && this.checkAp());
  6429. "function" === typeof this.options.afterMove && this.prevItem !== this.currentItem && this.options.afterMove.apply(this, [this.$elem])
  6430. },
  6431. stop: function () {
  6432. this.apStatus = "stop";
  6433. g.clearInterval(this.autoPlayInterval)
  6434. },
  6435. checkAp: function () {
  6436. "stop" !== this.apStatus && this.play()
  6437. },
  6438. play: function () {
  6439. var a = this;
  6440. a.apStatus = "play";
  6441. if (!1 === a.options.autoPlay) return !1;
  6442. g.clearInterval(a.autoPlayInterval);
  6443. a.autoPlayInterval = g.setInterval(function () {
  6444. a.next(!0)
  6445. }, a.options.autoPlay)
  6446. },
  6447. swapSpeed: function (a) {
  6448. "slideSpeed" === a ? this.$owlWrapper.css(this.addCssSpeed(this.options.slideSpeed)) : "paginationSpeed" === a ? this.$owlWrapper.css(this.addCssSpeed(this.options.paginationSpeed)) : "string" !== typeof a && this.$owlWrapper.css(this.addCssSpeed(a))
  6449. },
  6450. addCssSpeed: function (a) {
  6451. return {
  6452. "-webkit-transition": "all " + a + "ms ease",
  6453. "-moz-transition": "all " + a + "ms ease",
  6454. "-o-transition": "all " + a + "ms ease",
  6455. transition: "all " + a + "ms ease"
  6456. }
  6457. },
  6458. removeTransition: function () {
  6459. return {
  6460. "-webkit-transition": "",
  6461. "-moz-transition": "",
  6462. "-o-transition": "",
  6463. transition: ""
  6464. }
  6465. },
  6466. doTranslate: function (a) {
  6467. return {
  6468. "-webkit-transform": "translate3d(" + a + "px, 0px, 0px)",
  6469. "-moz-transform": "translate3d(" + a + "px, 0px, 0px)",
  6470. "-o-transform": "translate3d(" + a + "px, 0px, 0px)",
  6471. "-ms-transform": "translate3d(" +
  6472. a + "px, 0px, 0px)",
  6473. transform: "translate3d(" + a + "px, 0px,0px)"
  6474. }
  6475. },
  6476. transition3d: function (a) {
  6477. this.$owlWrapper.css(this.doTranslate(a))
  6478. },
  6479. css2move: function (a) {
  6480. this.$owlWrapper.css({
  6481. left: a
  6482. })
  6483. },
  6484. css2slide: function (a, b) {
  6485. var e = this;
  6486. e.isCssFinish = !1;
  6487. e.$owlWrapper.stop(!0, !0).animate({
  6488. left: a
  6489. }, {
  6490. duration: b || e.options.slideSpeed,
  6491. complete: function () {
  6492. e.isCssFinish = !0
  6493. }
  6494. })
  6495. },
  6496. checkBrowser: function () {
  6497. var a = k.createElement("div");
  6498. a.style.cssText = " -moz-transform:translate3d(0px, 0px, 0px); -ms-transform:translate3d(0px, 0px, 0px); -o-transform:translate3d(0px, 0px, 0px); -webkit-transform:translate3d(0px, 0px, 0px); transform:translate3d(0px, 0px, 0px)";
  6499. a = a.style.cssText.match(/translate3d\(0px, 0px, 0px\)/g);
  6500. this.browser = {
  6501. support3d: null !== a && 1 === a.length,
  6502. isTouch: "ontouchstart" in g || g.navigator.msMaxTouchPoints
  6503. }
  6504. },
  6505. moveEvents: function () {
  6506. if (!1 !== this.options.mouseDrag || !1 !== this.options.touchDrag) this.gestures(), this.disabledEvents()
  6507. },
  6508. eventTypes: function () {
  6509. var a = ["s", "e", "x"];
  6510. this.ev_types = {};
  6511. !0 === this.options.mouseDrag && !0 === this.options.touchDrag ? a = ["touchstart.owl mousedown.owl", "touchmove.owl mousemove.owl", "touchend.owl touchcancel.owl mouseup.owl"] :
  6512. !1 === this.options.mouseDrag && !0 === this.options.touchDrag ? a = ["touchstart.owl", "touchmove.owl", "touchend.owl touchcancel.owl"] : !0 === this.options.mouseDrag && !1 === this.options.touchDrag && (a = ["mousedown.owl", "mousemove.owl", "mouseup.owl"]);
  6513. this.ev_types.start = a[0];
  6514. this.ev_types.move = a[1];
  6515. this.ev_types.end = a[2]
  6516. },
  6517. disabledEvents: function () {
  6518. this.$elem.on("dragstart.owl", function (a) {
  6519. a.preventDefault()
  6520. });
  6521. this.$elem.on("mousedown.disableTextSelect", function (a) {
  6522. return f(a.target).is("input, textarea, select, option")
  6523. })
  6524. },
  6525. gestures: function () {
  6526. function a(a) {
  6527. if (void 0 !== a.touches) return {
  6528. x: a.touches[0].pageX,
  6529. y: a.touches[0].pageY
  6530. };
  6531. if (void 0 === a.touches) {
  6532. if (void 0 !== a.pageX) return {
  6533. x: a.pageX,
  6534. y: a.pageY
  6535. };
  6536. if (void 0 === a.pageX) return {
  6537. x: a.clientX,
  6538. y: a.clientY
  6539. }
  6540. }
  6541. }
  6542.  
  6543. function b(a) {
  6544. "on" === a ? (f(k).on(d.ev_types.move, e), f(k).on(d.ev_types.end, c)) : "off" === a && (f(k).off(d.ev_types.move), f(k).off(d.ev_types.end))
  6545. }
  6546.  
  6547. function e(b) {
  6548. b = b.originalEvent || b || g.event;
  6549. d.newPosX = a(b).x - h.offsetX;
  6550. d.newPosY = a(b).y - h.offsetY;
  6551. d.newRelativeX = d.newPosX - h.relativePos;
  6552. "function" === typeof d.options.startDragging && !0 !== h.dragging && 0 !== d.newRelativeX && (h.dragging = !0, d.options.startDragging.apply(d, [d.$elem]));
  6553. (8 < d.newRelativeX || -8 > d.newRelativeX) && !0 === d.browser.isTouch && (void 0 !== b.preventDefault ? b.preventDefault() : b.returnValue = !1, h.sliding = !0);
  6554. (10 < d.newPosY || -10 > d.newPosY) && !1 === h.sliding && f(k).off("touchmove.owl");
  6555. d.newPosX = Math.max(Math.min(d.newPosX, d.newRelativeX / 5), d.maximumPixels + d.newRelativeX / 5);
  6556. !0 === d.browser.support3d ? d.transition3d(d.newPosX) : d.css2move(d.newPosX)
  6557. }
  6558.  
  6559. function c(a) {
  6560. a = a.originalEvent || a || g.event;
  6561. var c;
  6562. a.target = a.target || a.srcElement;
  6563. h.dragging = !1;
  6564. !0 !== d.browser.isTouch && d.$owlWrapper.removeClass("grabbing");
  6565. d.dragDirection = 0 > d.newRelativeX ? d.owl.dragDirection = "left" : d.owl.dragDirection = "right";
  6566. 0 !== d.newRelativeX && (c = d.getNewPosition(), d.goTo(c, !1, "drag"), h.targetElement === a.target && !0 !== d.browser.isTouch && (f(a.target).on("click.disable", function (a) {
  6567. a.stopImmediatePropagation();
  6568. a.stopPropagation();
  6569. a.preventDefault();
  6570. f(a.target).off("click.disable")
  6571. }),
  6572. a = f._data(a.target, "events").click, c = a.pop(), a.splice(0, 0, c)));
  6573. b("off")
  6574. }
  6575. var d = this,
  6576. h = {
  6577. offsetX: 0,
  6578. offsetY: 0,
  6579. baseElWidth: 0,
  6580. relativePos: 0,
  6581. position: null,
  6582. minSwipe: null,
  6583. maxSwipe: null,
  6584. sliding: null,
  6585. dargging: null,
  6586. targetElement: null
  6587. };
  6588. d.isCssFinish = !0;
  6589. d.$elem.on(d.ev_types.start, ".owl-wrapper", function (c) {
  6590. c = c.originalEvent || c || g.event;
  6591. var e;
  6592. if (3 === c.which) return !1;
  6593. if (!(d.itemsAmount <= d.options.items)) {
  6594. if (!1 === d.isCssFinish && !d.options.dragBeforeAnimFinish || !1 === d.isCss3Finish && !d.options.dragBeforeAnimFinish) return !1;
  6595. !1 !== d.options.autoPlay && g.clearInterval(d.autoPlayInterval);
  6596. !0 === d.browser.isTouch || d.$owlWrapper.hasClass("grabbing") || d.$owlWrapper.addClass("grabbing");
  6597. d.newPosX = 0;
  6598. d.newRelativeX = 0;
  6599. f(this).css(d.removeTransition());
  6600. e = f(this).position();
  6601. h.relativePos = e.left;
  6602. h.offsetX = a(c).x - e.left;
  6603. h.offsetY = a(c).y - e.top;
  6604. b("on");
  6605. h.sliding = !1;
  6606. h.targetElement = c.target || c.srcElement
  6607. }
  6608. })
  6609. },
  6610. getNewPosition: function () {
  6611. var a = this.closestItem();
  6612. a > this.maximumItem ? a = this.currentItem = this.maximumItem : 0 <= this.newPosX && (this.currentItem =
  6613. a = 0);
  6614. return a
  6615. },
  6616. closestItem: function () {
  6617. var a = this,
  6618. b = !0 === a.options.scrollPerPage ? a.pagesInArray : a.positionsInArray,
  6619. e = a.newPosX,
  6620. c = null;
  6621. f.each(b, function (d, g) {
  6622. e - a.itemWidth / 20 > b[d + 1] && e - a.itemWidth / 20 < g && "left" === a.moveDirection() ? (c = g, a.currentItem = !0 === a.options.scrollPerPage ? f.inArray(c, a.positionsInArray) : d) : e + a.itemWidth / 20 < g && e + a.itemWidth / 20 > (b[d + 1] || b[d] - a.itemWidth) && "right" === a.moveDirection() && (!0 === a.options.scrollPerPage ? (c = b[d + 1] || b[b.length - 1], a.currentItem = f.inArray(c, a.positionsInArray)) :
  6623. (c = b[d + 1], a.currentItem = d + 1))
  6624. });
  6625. return a.currentItem
  6626. },
  6627. moveDirection: function () {
  6628. var a;
  6629. 0 > this.newRelativeX ? (a = "right", this.playDirection = "next") : (a = "left", this.playDirection = "prev");
  6630. return a
  6631. },
  6632. customEvents: function () {
  6633. var a = this;
  6634. a.$elem.on("owl.next", function () {
  6635. a.next()
  6636. });
  6637. a.$elem.on("owl.prev", function () {
  6638. a.prev()
  6639. });
  6640. a.$elem.on("owl.play", function (b, e) {
  6641. a.options.autoPlay = e;
  6642. a.play();
  6643. a.hoverStatus = "play"
  6644. });
  6645. a.$elem.on("owl.stop", function () {
  6646. a.stop();
  6647. a.hoverStatus = "stop"
  6648. });
  6649. a.$elem.on("owl.goTo", function (b, e) {
  6650. a.goTo(e)
  6651. });
  6652. a.$elem.on("owl.jumpTo", function (b, e) {
  6653. a.jumpTo(e)
  6654. })
  6655. },
  6656. stopOnHover: function () {
  6657. var a = this;
  6658. !0 === a.options.stopOnHover && !0 !== a.browser.isTouch && !1 !== a.options.autoPlay && (a.$elem.on("mouseover", function () {
  6659. a.stop()
  6660. }), a.$elem.on("mouseout", function () {
  6661. "stop" !== a.hoverStatus && a.play()
  6662. }))
  6663. },
  6664. lazyLoad: function () {
  6665. var a, b, e, c, d;
  6666. if (!1 === this.options.lazyLoad) return !1;
  6667. for (a = 0; a < this.itemsAmount; a += 1) b = f(this.$owlItems[a]), "loaded" !== b.data("owl-loaded") && (e = b.data("owl-item"), c = b.find(".lazyOwl"), "string" !== typeof c.data("src") ?
  6668. b.data("owl-loaded", "loaded") : (void 0 === b.data("owl-loaded") && (c.hide(), b.addClass("loading").data("owl-loaded", "checked")), (d = !0 === this.options.lazyFollow ? e >= this.currentItem : !0) && e < this.currentItem + this.options.items && c.length && this.lazyPreload(b, c)))
  6669. },
  6670. lazyPreload: function (a, b) {
  6671. function e() {
  6672. a.data("owl-loaded", "loaded").removeClass("loading");
  6673. b.removeAttr("data-src");
  6674. "fade" === d.options.lazyEffect ? b.fadeIn(400) : b.show();
  6675. "function" === typeof d.options.afterLazyLoad && d.options.afterLazyLoad.apply(this, [d.$elem])
  6676. }
  6677.  
  6678. function c() {
  6679. f += 1;
  6680. d.completeImg(b.get(0)) || !0 === k ? e() : 100 >= f ? g.setTimeout(c, 100) : e()
  6681. }
  6682. var d = this,
  6683. f = 0,
  6684. k;
  6685. "DIV" === b.prop("tagName") ? (b.css("background-image", "url(" + b.data("src") + ")"), k = !0) : b[0].src = b.data("src");
  6686. c()
  6687. },
  6688. autoHeight: function () {
  6689. function a() {
  6690. var a = f(e.$owlItems[e.currentItem]).height();
  6691. e.wrapperOuter.css("height", a + "px");
  6692. e.wrapperOuter.hasClass("autoHeight") || g.setTimeout(function () {
  6693. e.wrapperOuter.addClass("autoHeight")
  6694. }, 0)
  6695. }
  6696.  
  6697. function b() {
  6698. d += 1;
  6699. e.completeImg(c.get(0)) ? a() : 100 >= d ? g.setTimeout(b,
  6700. 100) : e.wrapperOuter.css("height", "")
  6701. }
  6702. var e = this,
  6703. c = f(e.$owlItems[e.currentItem]).find("img"),
  6704. d;
  6705. void 0 !== c.get(0) ? (d = 0, b()) : a()
  6706. },
  6707. completeImg: function (a) {
  6708. return !a.complete || "undefined" !== typeof a.naturalWidth && 0 === a.naturalWidth ? !1 : !0
  6709. },
  6710. onVisibleItems: function () {
  6711. var a;
  6712. !0 === this.options.addClassActive && this.$owlItems.removeClass("active");
  6713. this.visibleItems = [];
  6714. for (a = this.currentItem; a < this.currentItem + this.options.items; a += 1) this.visibleItems.push(a), !0 === this.options.addClassActive && f(this.$owlItems[a]).addClass("active");
  6715. this.owl.visibleItems = this.visibleItems
  6716. },
  6717. transitionTypes: function (a) {
  6718. this.outClass = "owl-" + a + "-out";
  6719. this.inClass = "owl-" + a + "-in"
  6720. },
  6721. singleItemTransition: function () {
  6722. var a = this,
  6723. b = a.outClass,
  6724. e = a.inClass,
  6725. c = a.$owlItems.eq(a.currentItem),
  6726. d = a.$owlItems.eq(a.prevItem),
  6727. f = Math.abs(a.positionsInArray[a.currentItem]) + a.positionsInArray[a.prevItem],
  6728. g = Math.abs(a.positionsInArray[a.currentItem]) + a.itemWidth / 2;
  6729. a.isTransition = !0;
  6730. a.$owlWrapper.addClass("owl-origin").css({
  6731. "-webkit-transform-origin": g + "px",
  6732. "-moz-perspective-origin": g +
  6733. "px",
  6734. "perspective-origin": g + "px"
  6735. });
  6736. d.css({
  6737. position: "relative",
  6738. left: f + "px"
  6739. }).addClass(b).on("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend", function () {
  6740. a.endPrev = !0;
  6741. d.off("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend");
  6742. a.clearTransStyle(d, b)
  6743. });
  6744. c.addClass(e).on("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend", function () {
  6745. a.endCurrent = !0;
  6746. c.off("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend");
  6747. a.clearTransStyle(c, e)
  6748. })
  6749. },
  6750. clearTransStyle: function (a,
  6751. b) {
  6752. a.css({
  6753. position: "",
  6754. left: ""
  6755. }).removeClass(b);
  6756. this.endPrev && this.endCurrent && (this.$owlWrapper.removeClass("owl-origin"), this.isTransition = this.endCurrent = this.endPrev = !1)
  6757. },
  6758. owlStatus: function () {
  6759. this.owl = {
  6760. userOptions: this.userOptions,
  6761. baseElement: this.$elem,
  6762. userItems: this.$userItems,
  6763. owlItems: this.$owlItems,
  6764. currentItem: this.currentItem,
  6765. prevItem: this.prevItem,
  6766. visibleItems: this.visibleItems,
  6767. isTouch: this.browser.isTouch,
  6768. browser: this.browser,
  6769. dragDirection: this.dragDirection
  6770. }
  6771. },
  6772. clearEvents: function () {
  6773. this.$elem.off(".owl owl mousedown.disableTextSelect");
  6774. f(k).off(".owl owl");
  6775. f(g).off("resize", this.resizer)
  6776. },
  6777. unWrap: function () {
  6778. 0 !== this.$elem.children().length && (this.$owlWrapper.unwrap(), this.$userItems.unwrap().unwrap(), this.owlControls && this.owlControls.remove());
  6779. this.clearEvents();
  6780. this.$elem.attr("style", this.$elem.data("owl-originalStyles") || "").attr("class", this.$elem.data("owl-originalClasses"))
  6781. },
  6782. destroy: function () {
  6783. this.stop();
  6784. g.clearInterval(this.checkVisible);
  6785. this.unWrap();
  6786. this.$elem.removeData()
  6787. },
  6788. reinit: function (a) {
  6789. a = f.extend({}, this.userOptions,
  6790. a);
  6791. this.unWrap();
  6792. this.init(a, this.$elem)
  6793. },
  6794. addItem: function (a, b) {
  6795. var e;
  6796. if (!a) return !1;
  6797. if (0 === this.$elem.children().length) return this.$elem.append(a), this.setVars(), !1;
  6798. this.unWrap();
  6799. e = void 0 === b || -1 === b ? -1 : b;
  6800. e >= this.$userItems.length || -1 === e ? this.$userItems.eq(-1).after(a) : this.$userItems.eq(e).before(a);
  6801. this.setVars()
  6802. },
  6803. removeItem: function (a) {
  6804. if (0 === this.$elem.children().length) return !1;
  6805. a = void 0 === a || -1 === a ? -1 : a;
  6806. this.unWrap();
  6807. this.$userItems.eq(a).remove();
  6808. this.setVars()
  6809. }
  6810. };
  6811. f.fn.owlCarousel = function (a) {
  6812. return this.each(function () {
  6813. if (!0 ===
  6814. f(this).data("owl-init")) return !1;
  6815. f(this).data("owl-init", !0);
  6816. var b = Object.create(l);
  6817. b.init(a, this);
  6818. f.data(this, "owlCarousel", b)
  6819. })
  6820. };
  6821. f.fn.owlCarousel.options = {
  6822. items: 5,
  6823. itemsCustom: !1,
  6824. itemsDesktop: [1199, 4],
  6825. itemsDesktopSmall: [979, 3],
  6826. itemsTablet: [768, 2],
  6827. itemsTabletSmall: !1,
  6828. itemsMobile: [479, 1],
  6829. singleItem: !1,
  6830. itemsScaleUp: !1,
  6831. slideSpeed: 200,
  6832. paginationSpeed: 800,
  6833. rewindSpeed: 1E3,
  6834. autoPlay: !1,
  6835. stopOnHover: !1,
  6836. navigation: !1,
  6837. navigationText: ["prev", "next"],
  6838. rewindNav: !0,
  6839. scrollPerPage: !1,
  6840. pagination: !0,
  6841. paginationNumbers: !1,
  6842. responsive: !0,
  6843. responsiveRefreshRate: 200,
  6844. responsiveBaseWidth: g,
  6845. baseClass: "owl-carousel",
  6846. theme: "owl-theme",
  6847. lazyLoad: !1,
  6848. lazyFollow: !0,
  6849. lazyEffect: "fade",
  6850. autoHeight: !1,
  6851. jsonPath: !1,
  6852. jsonSuccess: !1,
  6853. dragBeforeAnimFinish: !0,
  6854. mouseDrag: !0,
  6855. touchDrag: !0,
  6856. addClassActive: !1,
  6857. transitionStyle: !1,
  6858. beforeUpdate: !1,
  6859. afterUpdate: !1,
  6860. beforeInit: !1,
  6861. afterInit: !1,
  6862. beforeMove: !1,
  6863. afterMove: !1,
  6864. afterAction: !1,
  6865. startDragging: !1,
  6866. afterLazyLoad: !1
  6867. }
  6868. })(jQuery, window, document);
  6869.  
  6870. // Twitter Live Feed
  6871.  
  6872. (function (e) {
  6873. "use strict";
  6874. e.fn.twittie = function () {
  6875. var t = arguments[0] instanceof Object ? arguments[0] : {},
  6876. n = typeof arguments[0] === "function" ? arguments[0] : arguments[1];
  6877. var r = e.extend({
  6878. username: null,
  6879. list: null,
  6880. hashtag: null,
  6881. count: 10,
  6882. hideReplies: false,
  6883. dateFormat: "%b/%d/%Y",
  6884. template: "{{date}} - {{tweet}}",
  6885. apiPath: "api/tweet.php",
  6886. loadingText: "Loading..."
  6887. }, t);
  6888. if (r.list && !r.username) {
  6889. e.error("If you want to fetch tweets from a list, you must define the username of the list owner.")
  6890. }
  6891. var i = function (e) {
  6892. var t = e.replace(/(https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w\/_\.]*(\?\S+)?)?)?)/ig, '<a href="$1" target="_blank" title="Visit this link">$1</a>').replace(/#([a-zA-Z0-9_]+)/g, '<a href="https://twitter.com/search?q=%23$1&src=hash" target="_blank" title="Search for #$1">#$1</a>').replace(/@([a-zA-Z0-9_]+)/g, '<a href="https://twitter.com/$1" target="_blank" title="$1 on Twitter">@$1</a>');
  6893. return t
  6894. };
  6895. var s = function (e) {
  6896. var t = e.split(" ");
  6897. e = new Date(Date.parse(t[1] + " " + t[2] + ", " + t[5] + " " + t[3] + " UTC"));
  6898. var n = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
  6899. var i = {
  6900. "%d": e.getDate(),
  6901. "%m": e.getMonth() + 1,
  6902. "%b": n[e.getMonth()].substr(0, 3),
  6903. "%B": n[e.getMonth()],
  6904. "%y": String(e.getFullYear()).slice(-2),
  6905. "%Y": e.getFullYear()
  6906. };
  6907. var s = r.dateFormat;
  6908. var o = r.dateFormat.match(/%[dmbByY]/g);
  6909. for (var u = 0, a = o.length; u < a; u++) {
  6910. s = s.replace(o[u], i[o[u]])
  6911. }
  6912. return s
  6913. };
  6914. var o = function (e) {
  6915. var t = r.template;
  6916. var n = ["date", "tweet", "avatar", "url", "retweeted", "screen_name", "user_name"];
  6917. for (var i = 0, s = n.length; i < s; i++) {
  6918. t = t.replace(new RegExp("{{" + n[i] + "}}", "gi"), e[n[i]])
  6919. }
  6920. return t
  6921. };
  6922. this.html("<span>" + r.loadingText + "</span>");
  6923. var u = this;
  6924. e.getJSON(r.apiPath, {
  6925. username: r.username,
  6926. list: r.list,
  6927. hashtag: r.hashtag,
  6928. count: r.count,
  6929. exclude_replies: r.hideReplies
  6930. }, function (e) {
  6931. u.find("span").fadeOut("fast", function () {
  6932. u.html("<ul></ul>");
  6933. for (var t = 0; t < r.count; t++) {
  6934. var a = false;
  6935. if (e[t]) {
  6936. a = e[t]
  6937. } else if (e.statuses !== undefined && e.statuses[t]) {
  6938. a = e.statuses[t]
  6939. } else {
  6940. break
  6941. }
  6942. var f = {
  6943. user_name: a.user.name,
  6944. date: s(a.created_at),
  6945. tweet: a.retweeted ? i("RT @" + a.user.screen_name + ": " + a.retweeted_status.text) : i(a.text),
  6946. avatar: '<img src="' + a.user.profile_image_url + '" />',
  6947. url: "https://twitter.com/" + a.user.screen_name + "/status/" + a.id_str,
  6948. retweeted: a.retweeted,
  6949. screen_name: i("@" + a.user.screen_name)
  6950. };
  6951. u.find("ul").append("<li>" + o(f) + "</li>")
  6952. }
  6953. if (typeof n === "function") {
  6954. n()
  6955. }
  6956. })
  6957. })
  6958. }
  6959. })(jQuery)
  6960.  
  6961.  
  6962.  
  6963.  
  6964. /*jshint browser:true */
  6965. /*!
  6966. * FitVids 1.1
  6967. *
  6968. * Copyright 2013, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com
  6969. * Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/
  6970. * Released under the WTFPL license - http://sam.zoy.org/wtfpl/
  6971. *
  6972. */
  6973.  
  6974. ;
  6975. (function ($) {
  6976.  
  6977. 'use strict';
  6978.  
  6979. $.fn.fitVids = function (options) {
  6980. var settings = {
  6981. customSelector: null,
  6982. ignore: null
  6983. };
  6984.  
  6985. if (!document.getElementById('fit-vids-style')) {
  6986. // appendStyles: https://github.com/toddmotto/fluidvids/blob/master/dist/fluidvids.js
  6987. var head = document.head || document.getElementsByTagName('head')[0];
  6988. var css = '.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}';
  6989. var div = document.createElement("div");
  6990. div.innerHTML = '<p>x</p><style id="fit-vids-style">' + css + '</style>';
  6991. head.appendChild(div.childNodes[1]);
  6992. }
  6993.  
  6994. if (options) {
  6995. $.extend(settings, options);
  6996. }
  6997.  
  6998. return this.each(function () {
  6999. var selectors = [
  7000. 'iframe[src*="player.vimeo.com"]',
  7001. 'iframe[src*="youtube.com"]',
  7002. 'iframe[src*="youtube-nocookie.com"]',
  7003. 'iframe[src*="kickstarter.com"][src*="video.html"]',
  7004. 'object',
  7005. 'embed'
  7006. ];
  7007.  
  7008. if (settings.customSelector) {
  7009. selectors.push(settings.customSelector);
  7010. }
  7011.  
  7012. var ignoreList = '.fitvidsignore';
  7013.  
  7014. if (settings.ignore) {
  7015. ignoreList = ignoreList + ', ' + settings.ignore;
  7016. }
  7017.  
  7018. var $allVideos = $(this).find(selectors.join(','));
  7019. $allVideos = $allVideos.not('object object'); // SwfObj conflict patch
  7020. $allVideos = $allVideos.not(ignoreList); // Disable FitVids on this video.
  7021.  
  7022. $allVideos.each(function (count) {
  7023. var $this = $(this);
  7024. if ($this.parents(ignoreList).length > 0) {
  7025. return; // Disable FitVids on this video.
  7026. }
  7027. if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) {
  7028. return;
  7029. }
  7030. if ((!$this.css('height') && !$this.css('width')) && (isNaN($this.attr('height')) || isNaN($this.attr('width')))) {
  7031. $this.attr('height', 9);
  7032. $this.attr('width', 16);
  7033. }
  7034. var height = (this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10)))) ? parseInt($this.attr('height'), 10) : $this.height(),
  7035. width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),
  7036. aspectRatio = height / width;
  7037. if (!$this.attr('id')) {
  7038. var videoID = 'fitvid' + count;
  7039. $this.attr('id', videoID);
  7040. }
  7041. $this.wrap('<div class="fluid-width-video-wrapper"></div>').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100) + '%');
  7042. $this.removeAttr('height').removeAttr('width');
  7043. });
  7044. });
  7045. };
  7046. // Works with either jQuery or Zepto
  7047. })(window.jQuery || window.Zepto);
  7048.  
  7049.  
  7050.  
  7051.  
  7052. /**
  7053. * uisearch.js v1.0.0
  7054. * http://www.codrops.com
  7055. *
  7056. * Licensed under the MIT license.
  7057. * http://www.opensource.org/licenses/mit-license.php
  7058. *
  7059. * Copyright 2013, Codrops
  7060. * http://www.codrops.com
  7061. */
  7062. ;
  7063. (function (window) {
  7064.  
  7065. 'use strict';
  7066.  
  7067. // EventListener | @jon_neal | //github.com/jonathantneal/EventListener
  7068. !window.addEventListener && window.Element && (function () {
  7069. function addToPrototype(name, method) {
  7070. Window.prototype[name] = HTMLDocument.prototype[name] = Element.prototype[name] = method;
  7071. }
  7072.  
  7073. var registry = [];
  7074.  
  7075. addToPrototype("addEventListener", function (type, listener) {
  7076. var target = this;
  7077.  
  7078. registry.unshift({
  7079. __listener: function (event) {
  7080. event.currentTarget = target;
  7081. event.pageX = event.clientX + document.documentElement.scrollLeft;
  7082. event.pageY = event.clientY + document.documentElement.scrollTop;
  7083. event.preventDefault = function () {
  7084. event.returnValue = false
  7085. };
  7086. event.relatedTarget = event.fromElement || null;
  7087. event.stopPropagation = function () {
  7088. event.cancelBubble = true
  7089. };
  7090. event.relatedTarget = event.fromElement || null;
  7091. event.target = event.srcElement || target;
  7092. event.timeStamp = +new Date;
  7093.  
  7094. listener.call(target, event);
  7095. },
  7096. listener: listener,
  7097. target: target,
  7098. type: type
  7099. });
  7100.  
  7101. this.attachEvent("on" + type, registry[0].__listener);
  7102. });
  7103.  
  7104. addToPrototype("removeEventListener", function (type, listener) {
  7105. for (var index = 0, length = registry.length; index < length; ++index) {
  7106. if (registry[index].target == this && registry[index].type == type && registry[index].listener == listener) {
  7107. return this.detachEvent("on" + type, registry.splice(index, 1)[0].__listener);
  7108. }
  7109. }
  7110. });
  7111.  
  7112. addToPrototype("dispatchEvent", function (eventObject) {
  7113. try {
  7114. return this.fireEvent("on" + eventObject.type, eventObject);
  7115. } catch (error) {
  7116. for (var index = 0, length = registry.length; index < length; ++index) {
  7117. if (registry[index].target == this && registry[index].type == eventObject.type) {
  7118. registry[index].call(this, eventObject);
  7119. }
  7120. }
  7121. }
  7122. });
  7123. })();
  7124.  
  7125. // http://stackoverflow.com/a/11381730/989439
  7126. function mobilecheck() {
  7127. var check = false;
  7128. (function (a) {
  7129. if (/(android|ipad|playbook|silk|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4))) check = true
  7130. })(navigator.userAgent || navigator.vendor || window.opera);
  7131. return check;
  7132. }
  7133.  
  7134. // http://www.jonathantneal.com/blog/polyfills-and-prototypes/
  7135. !String.prototype.trim && (String.prototype.trim = function () {
  7136. return this.replace(/^\s+|\s+$/g, '');
  7137. });
  7138.  
  7139. function UISearch(el, options) {
  7140. this.el = el;
  7141. this.inputEl = el.querySelector('form > input.sb-search-input');
  7142. this._initEvents();
  7143. }
  7144.  
  7145. UISearch.prototype = {
  7146. _initEvents: function () {
  7147. var self = this,
  7148. initSearchFn = function (ev) {
  7149. ev.stopPropagation();
  7150. // trim its value
  7151. self.inputEl.value = self.inputEl.value.trim();
  7152.  
  7153. if (!classie.has(self.el, 'sb-search-open')) { // open it
  7154. ev.preventDefault();
  7155. self.open();
  7156. } else if (classie.has(self.el, 'sb-search-open') && /^\s*$/.test(self.inputEl.value)) { // close it
  7157. ev.preventDefault();
  7158. self.close();
  7159. }
  7160. }
  7161.  
  7162. this.el.addEventListener('click', initSearchFn);
  7163. this.el.addEventListener('touchstart', initSearchFn);
  7164. this.inputEl.addEventListener('click', function (ev) {
  7165. ev.stopPropagation();
  7166. });
  7167. this.inputEl.addEventListener('touchstart', function (ev) {
  7168. ev.stopPropagation();
  7169. });
  7170. },
  7171. open: function () {
  7172. var self = this;
  7173. classie.add(this.el, 'sb-search-open');
  7174. // focus the input
  7175. if (!mobilecheck()) {
  7176. this.inputEl.focus();
  7177. }
  7178. // close the search input if body is clicked
  7179. var bodyFn = function (ev) {
  7180. self.close();
  7181. this.removeEventListener('click', bodyFn);
  7182. this.removeEventListener('touchstart', bodyFn);
  7183. };
  7184. document.addEventListener('click', bodyFn);
  7185. document.addEventListener('touchstart', bodyFn);
  7186. },
  7187. close: function () {
  7188. this.inputEl.blur();
  7189. classie.remove(this.el, 'sb-search-open');
  7190. }
  7191. }
  7192.  
  7193. // add to global namespace
  7194. window.UISearch = UISearch;
  7195.  
  7196. })(window);
  7197.  
  7198.  
  7199.  
  7200. /*!
  7201. * classie - class helper functions
  7202. * from bonzo https://github.com/ded/bonzo
  7203. *
  7204. * classie.has( elem, 'my-class' ) -> true/false
  7205. * classie.add( elem, 'my-new-class' )
  7206. * classie.remove( elem, 'my-unwanted-class' )
  7207. * classie.toggle( elem, 'my-class' )
  7208. */
  7209.  
  7210. /*jshint browser: true, strict: true, undef: true */
  7211. /*global define: false */
  7212.  
  7213. (function (window) {
  7214.  
  7215. 'use strict';
  7216.  
  7217. // class helper functions from bonzo https://github.com/ded/bonzo
  7218.  
  7219. function classReg(className) {
  7220. return new RegExp("(^|\\s+)" + className + "(\\s+|$)");
  7221. }
  7222.  
  7223. // classList support for class management
  7224. // altho to be fair, the api sucks because it won't accept multiple classes at once
  7225. var hasClass, addClass, removeClass;
  7226.  
  7227. if ('classList' in document.documentElement) {
  7228. hasClass = function (elem, c) {
  7229. return elem.classList.contains(c);
  7230. };
  7231. addClass = function (elem, c) {
  7232. elem.classList.add(c);
  7233. };
  7234. removeClass = function (elem, c) {
  7235. elem.classList.remove(c);
  7236. };
  7237. } else {
  7238. hasClass = function (elem, c) {
  7239. return classReg(c).test(elem.className);
  7240. };
  7241. addClass = function (elem, c) {
  7242. if (!hasClass(elem, c)) {
  7243. elem.className = elem.className + ' ' + c;
  7244. }
  7245. };
  7246. removeClass = function (elem, c) {
  7247. elem.className = elem.className.replace(classReg(c), ' ');
  7248. };
  7249. }
  7250.  
  7251. function toggleClass(elem, c) {
  7252. var fn = hasClass(elem, c) ? removeClass : addClass;
  7253. fn(elem, c);
  7254. }
  7255.  
  7256. var classie = {
  7257. // full names
  7258. hasClass: hasClass,
  7259. addClass: addClass,
  7260. removeClass: removeClass,
  7261. toggleClass: toggleClass,
  7262. // short names
  7263. has: hasClass,
  7264. add: addClass,
  7265. remove: removeClass,
  7266. toggle: toggleClass
  7267. };
  7268.  
  7269. // transport
  7270. if (typeof define === 'function' && define.amd) {
  7271. // AMD
  7272. define(classie);
  7273. } else {
  7274. // browser global
  7275. window.classie = classie;
  7276. }
  7277.  
  7278. })(window);
  7279.  
  7280.  
  7281.  
  7282. /*! Stellar.js v0.6.2 | Copyright 2014, Mark Dalgleish | http://markdalgleish.com/projects/stellar.js | http://markdalgleish.mit-license.org */
  7283. ! function (a, b, c, d) {
  7284. function e(b, c) {
  7285. this.element = b, this.options = a.extend({}, g, c), this._defaults = g, this._name = f, this.init()
  7286. }
  7287. var f = "stellar",
  7288. g = {
  7289. scrollProperty: "scroll",
  7290. positionProperty: "position",
  7291. horizontalScrolling: !0,
  7292. verticalScrolling: !0,
  7293. horizontalOffset: 0,
  7294. verticalOffset: 0,
  7295. responsive: !1,
  7296. parallaxBackgrounds: !0,
  7297. parallaxElements: !0,
  7298. hideDistantElements: !0,
  7299. hideElement: function (a) {
  7300. a.hide()
  7301. },
  7302. showElement: function (a) {
  7303. a.show()
  7304. }
  7305. },
  7306. h = {
  7307. scroll: {
  7308. getLeft: function (a) {
  7309. return a.scrollLeft()
  7310. },
  7311. setLeft: function (a, b) {
  7312. a.scrollLeft(b)
  7313. },
  7314. getTop: function (a) {
  7315. return a.scrollTop()
  7316. },
  7317. setTop: function (a, b) {
  7318. a.scrollTop(b)
  7319. }
  7320. },
  7321. position: {
  7322. getLeft: function (a) {
  7323. return -1 * parseInt(a.css("left"), 10)
  7324. },
  7325. getTop: function (a) {
  7326. return -1 * parseInt(a.css("top"), 10)
  7327. }
  7328. },
  7329. margin: {
  7330. getLeft: function (a) {
  7331. return -1 * parseInt(a.css("margin-left"), 10)
  7332. },
  7333. getTop: function (a) {
  7334. return -1 * parseInt(a.css("margin-top"), 10)
  7335. }
  7336. },
  7337. transform: {
  7338. getLeft: function (a) {
  7339. var b = getComputedStyle(a[0])[k];
  7340. return "none" !== b ? -1 * parseInt(b.match(/(-?[0-9]+)/g)[4], 10) : 0
  7341. },
  7342. getTop: function (a) {
  7343. var b = getComputedStyle(a[0])[k];
  7344. return "none" !== b ? -1 * parseInt(b.match(/(-?[0-9]+)/g)[5], 10) : 0
  7345. }
  7346. }
  7347. },
  7348. i = {
  7349. position: {
  7350. setLeft: function (a, b) {
  7351. a.css("left", b)
  7352. },
  7353. setTop: function (a, b) {
  7354. a.css("top", b)
  7355. }
  7356. },
  7357. transform: {
  7358. setPosition: function (a, b, c, d, e) {
  7359. a[0].style[k] = "translate3d(" + (b - c) + "px, " + (d - e) + "px, 0)"
  7360. }
  7361. }
  7362. },
  7363. j = function () {
  7364. var b, c = /^(Moz|Webkit|Khtml|O|ms|Icab)(?=[A-Z])/,
  7365. d = a("script")[0].style,
  7366. e = "";
  7367. for (b in d)
  7368. if (c.test(b)) {
  7369. e = b.match(c)[0];
  7370. break
  7371. }
  7372. return "WebkitOpacity" in d && (e = "Webkit"), "KhtmlOpacity" in d && (e = "Khtml"),
  7373. function (a) {
  7374. return e + (e.length > 0 ? a.charAt(0).toUpperCase() + a.slice(1) : a)
  7375. }
  7376. }(),
  7377. k = j("transform"),
  7378. l = a("<div />", {
  7379. style: "background:#fff"
  7380. }).css("background-position-x") !== d,
  7381. m = l ? function (a, b, c) {
  7382. a.css({
  7383. "background-position-x": b,
  7384. "background-position-y": c
  7385. })
  7386. } : function (a, b, c) {
  7387. a.css("background-position", b + " " + c)
  7388. },
  7389. n = l ? function (a) {
  7390. return [a.css("background-position-x"), a.css("background-position-y")]
  7391. } : function (a) {
  7392. return a.css("background-position").split(" ")
  7393. },
  7394. o = b.requestAnimationFrame || b.webkitRequestAnimationFrame || b.mozRequestAnimationFrame || b.oRequestAnimationFrame || b.msRequestAnimationFrame || function (a) {
  7395. setTimeout(a, 1e3 / 60)
  7396. };
  7397. e.prototype = {
  7398. init: function () {
  7399. this.options.name = f + "_" + Math.floor(1e9 * Math.random()), this._defineElements(), this._defineGetters(), this._defineSetters(), this._handleWindowLoadAndResize(), this._detectViewport(), this.refresh({
  7400. firstLoad: !0
  7401. }), "scroll" === this.options.scrollProperty ? this._handleScrollEvent() : this._startAnimationLoop()
  7402. },
  7403. _defineElements: function () {
  7404. this.element === c.body && (this.element = b), this.$scrollElement = a(this.element), this.$element = this.element === b ? a("body") : this.$scrollElement, this.$viewportElement = this.options.viewportElement !== d ? a(this.options.viewportElement) : this.$scrollElement[0] === b || "scroll" === this.options.scrollProperty ? this.$scrollElement : this.$scrollElement.parent()
  7405. },
  7406. _defineGetters: function () {
  7407. var a = this,
  7408. b = h[a.options.scrollProperty];
  7409. this._getScrollLeft = function () {
  7410. return b.getLeft(a.$scrollElement)
  7411. }, this._getScrollTop = function () {
  7412. return b.getTop(a.$scrollElement)
  7413. }
  7414. },
  7415. _defineSetters: function () {
  7416. var b = this,
  7417. c = h[b.options.scrollProperty],
  7418. d = i[b.options.positionProperty],
  7419. e = c.setLeft,
  7420. f = c.setTop;
  7421. this._setScrollLeft = "function" == typeof e ? function (a) {
  7422. e(b.$scrollElement, a)
  7423. } : a.noop, this._setScrollTop = "function" == typeof f ? function (a) {
  7424. f(b.$scrollElement, a)
  7425. } : a.noop, this._setPosition = d.setPosition || function (a, c, e, f, g) {
  7426. b.options.horizontalScrolling && d.setLeft(a, c, e), b.options.verticalScrolling && d.setTop(a, f, g)
  7427. }
  7428. },
  7429. _handleWindowLoadAndResize: function () {
  7430. var c = this,
  7431. d = a(b);
  7432. c.options.responsive && d.bind("load." + this.name, function () {
  7433. c.refresh()
  7434. }), d.bind("resize." + this.name, function () {
  7435. c._detectViewport(), c.options.responsive && c.refresh()
  7436. })
  7437. },
  7438. refresh: function (c) {
  7439. var d = this,
  7440. e = d._getScrollLeft(),
  7441. f = d._getScrollTop();
  7442. c && c.firstLoad || this._reset(), this._setScrollLeft(0), this._setScrollTop(0), this._setOffsets(), this._findParticles(), this._findBackgrounds(), c && c.firstLoad && /WebKit/.test(navigator.userAgent) && a(b).load(function () {
  7443. var a = d._getScrollLeft(),
  7444. b = d._getScrollTop();
  7445. d._setScrollLeft(a + 1), d._setScrollTop(b + 1), d._setScrollLeft(a), d._setScrollTop(b)
  7446. }), this._setScrollLeft(e), this._setScrollTop(f)
  7447. },
  7448. _detectViewport: function () {
  7449. var a = this.$viewportElement.offset(),
  7450. b = null !== a && a !== d;
  7451. this.viewportWidth = this.$viewportElement.width(), this.viewportHeight = this.$viewportElement.height(), this.viewportOffsetTop = b ? a.top : 0, this.viewportOffsetLeft = b ? a.left : 0
  7452. },
  7453. _findParticles: function () {
  7454. {
  7455. var b = this;
  7456. this._getScrollLeft(), this._getScrollTop()
  7457. }
  7458. if (this.particles !== d)
  7459. for (var c = this.particles.length - 1; c >= 0; c--) this.particles[c].$element.data("stellar-elementIsActive", d);
  7460. this.particles = [], this.options.parallaxElements && this.$element.find("[data-stellar-ratio]").each(function () {
  7461. var c, e, f, g, h, i, j, k, l, m = a(this),
  7462. n = 0,
  7463. o = 0,
  7464. p = 0,
  7465. q = 0;
  7466. if (m.data("stellar-elementIsActive")) {
  7467. if (m.data("stellar-elementIsActive") !== this) return
  7468. } else m.data("stellar-elementIsActive", this);
  7469. b.options.showElement(m), m.data("stellar-startingLeft") ? (m.css("left", m.data("stellar-startingLeft")), m.css("top", m.data("stellar-startingTop"))) : (m.data("stellar-startingLeft", m.css("left")), m.data("stellar-startingTop", m.css("top"))), f = m.position().left, g = m.position().top, h = "auto" === m.css("margin-left") ? 0 : parseInt(m.css("margin-left"), 10), i = "auto" === m.css("margin-top") ? 0 : parseInt(m.css("margin-top"), 10), k = m.offset().left - h, l = m.offset().top - i, m.parents().each(function () {
  7470. var b = a(this);
  7471. return b.data("stellar-offset-parent") === !0 ? (n = p, o = q, j = b, !1) : (p += b.position().left, void(q += b.position().top))
  7472. }), 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, 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, b.particles.push({
  7473. $element: m,
  7474. $offsetParent: j,
  7475. isFixed: "fixed" === m.css("position"),
  7476. horizontalOffset: c,
  7477. verticalOffset: e,
  7478. startingPositionLeft: f,
  7479. startingPositionTop: g,
  7480. startingOffsetLeft: k,
  7481. startingOffsetTop: l,
  7482. parentOffsetLeft: n,
  7483. parentOffsetTop: o,
  7484. stellarRatio: m.data("stellar-ratio") !== d ? m.data("stellar-ratio") : 1,
  7485. width: m.outerWidth(!0),
  7486. height: m.outerHeight(!0),
  7487. isHidden: !1
  7488. })
  7489. })
  7490. },
  7491. _findBackgrounds: function () {
  7492. var b, c = this,
  7493. e = this._getScrollLeft(),
  7494. f = this._getScrollTop();
  7495. this.backgrounds = [], this.options.parallaxBackgrounds && (b = this.$element.find("[data-stellar-background-ratio]"), this.$element.data("stellar-background-ratio") && (b = b.add(this.$element)), b.each(function () {
  7496. var b, g, h, i, j, k, l, o = a(this),
  7497. p = n(o),
  7498. q = 0,
  7499. r = 0,
  7500. s = 0,
  7501. t = 0;
  7502. if (o.data("stellar-backgroundIsActive")) {
  7503. if (o.data("stellar-backgroundIsActive") !== this) return
  7504. } else o.data("stellar-backgroundIsActive", this);
  7505. o.data("stellar-backgroundStartingLeft") ? m(o, o.data("stellar-backgroundStartingLeft"), o.data("stellar-backgroundStartingTop")) : (o.data("stellar-backgroundStartingLeft", p[0]), o.data("stellar-backgroundStartingTop", p[1])), h = "auto" === o.css("margin-left") ? 0 : parseInt(o.css("margin-left"), 10), i = "auto" === o.css("margin-top") ? 0 : parseInt(o.css("margin-top"), 10), j = o.offset().left - h - e, k = o.offset().top - i - f, o.parents().each(function () {
  7506. var b = a(this);
  7507. return b.data("stellar-offset-parent") === !0 ? (q = s, r = t, l = b, !1) : (s += b.position().left, void(t += b.position().top))
  7508. }), 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, 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, c.backgrounds.push({
  7509. $element: o,
  7510. $offsetParent: l,
  7511. isFixed: "fixed" === o.css("background-attachment"),
  7512. horizontalOffset: b,
  7513. verticalOffset: g,
  7514. startingValueLeft: p[0],
  7515. startingValueTop: p[1],
  7516. startingBackgroundPositionLeft: isNaN(parseInt(p[0], 10)) ? 0 : parseInt(p[0], 10),
  7517. startingBackgroundPositionTop: isNaN(parseInt(p[1], 10)) ? 0 : parseInt(p[1], 10),
  7518. startingPositionLeft: o.position().left,
  7519. startingPositionTop: o.position().top,
  7520. startingOffsetLeft: j,
  7521. startingOffsetTop: k,
  7522. parentOffsetLeft: q,
  7523. parentOffsetTop: r,
  7524. stellarRatio: o.data("stellar-background-ratio") === d ? 1 : o.data("stellar-background-ratio")
  7525. })
  7526. }))
  7527. },
  7528. _reset: function () {
  7529. var a, b, c, d, e;
  7530. for (e = this.particles.length - 1; e >= 0; e--) a = this.particles[e], b = a.$element.data("stellar-startingLeft"), c = a.$element.data("stellar-startingTop"), this._setPosition(a.$element, b, b, c, c), this.options.showElement(a.$element), a.$element.data("stellar-startingLeft", null).data("stellar-elementIsActive", null).data("stellar-backgroundIsActive", null);
  7531. for (e = this.backgrounds.length - 1; e >= 0; e--) d = this.backgrounds[e], d.$element.data("stellar-backgroundStartingLeft", null).data("stellar-backgroundStartingTop", null), m(d.$element, d.startingValueLeft, d.startingValueTop)
  7532. },
  7533. destroy: function () {
  7534. this._reset(), this.$scrollElement.unbind("resize." + this.name).unbind("scroll." + this.name), this._animationLoop = a.noop, a(b).unbind("load." + this.name).unbind("resize." + this.name)
  7535. },
  7536. _setOffsets: function () {
  7537. var c = this,
  7538. d = a(b);
  7539. d.unbind("resize.horizontal-" + this.name).unbind("resize.vertical-" + this.name), "function" == typeof this.options.horizontalOffset ? (this.horizontalOffset = this.options.horizontalOffset(), d.bind("resize.horizontal-" + this.name, function () {
  7540. c.horizontalOffset = c.options.horizontalOffset()
  7541. })) : this.horizontalOffset = this.options.horizontalOffset, "function" == typeof this.options.verticalOffset ? (this.verticalOffset = this.options.verticalOffset(), d.bind("resize.vertical-" + this.name, function () {
  7542. c.verticalOffset = c.options.verticalOffset()
  7543. })) : this.verticalOffset = this.options.verticalOffset
  7544. },
  7545. _repositionElements: function () {
  7546. var a, b, c, d, e, f, g, h, i, j, k = this._getScrollLeft(),
  7547. l = this._getScrollTop(),
  7548. n = !0,
  7549. o = !0;
  7550. if (this.currentScrollLeft !== k || this.currentScrollTop !== l || this.currentWidth !== this.viewportWidth || this.currentHeight !== this.viewportHeight) {
  7551. for (this.currentScrollLeft = k, this.currentScrollTop = l, this.currentWidth = this.viewportWidth, this.currentHeight = this.viewportHeight, j = this.particles.length - 1; j >= 0; j--) a = this.particles[j], b = a.isFixed ? 1 : 0, this.options.horizontalScrolling ? (f = (k + a.horizontalOffset + this.viewportOffsetLeft + a.startingPositionLeft - a.startingOffsetLeft + a.parentOffsetLeft) * -(a.stellarRatio + b - 1) + a.startingPositionLeft, h = f - a.startingPositionLeft + a.startingOffsetLeft) : (f = a.startingPositionLeft, h = a.startingOffsetLeft), this.options.verticalScrolling ? (g = (l + a.verticalOffset + this.viewportOffsetTop + a.startingPositionTop - a.startingOffsetTop + a.parentOffsetTop) * -(a.stellarRatio + b - 1) + a.startingPositionTop, i = g - a.startingPositionTop + a.startingOffsetTop) : (g = a.startingPositionTop, i = a.startingOffsetTop), this.options.hideDistantElements && (o = !this.options.horizontalScrolling || h + a.width > (a.isFixed ? 0 : k) && h < (a.isFixed ? 0 : k) + this.viewportWidth + this.viewportOffsetLeft, n = !this.options.verticalScrolling || i + a.height > (a.isFixed ? 0 : l) && i < (a.isFixed ? 0 : l) + this.viewportHeight + this.viewportOffsetTop), o && n ? (a.isHidden && (this.options.showElement(a.$element), a.isHidden = !1), this._setPosition(a.$element, f, a.startingPositionLeft, g, a.startingPositionTop)) : a.isHidden || (this.options.hideElement(a.$element), a.isHidden = !0);
  7552. for (j = this.backgrounds.length - 1; j >= 0; j--) c = this.backgrounds[j], b = c.isFixed ? 0 : 1, d = this.options.horizontalScrolling ? (k + c.horizontalOffset - this.viewportOffsetLeft - c.startingOffsetLeft + c.parentOffsetLeft - c.startingBackgroundPositionLeft) * (b - c.stellarRatio) + "px" : c.startingValueLeft, e = this.options.verticalScrolling ? (l + c.verticalOffset - this.viewportOffsetTop - c.startingOffsetTop + c.parentOffsetTop - c.startingBackgroundPositionTop) * (b - c.stellarRatio) + "px" : c.startingValueTop, m(c.$element, d, e)
  7553. }
  7554. },
  7555. _handleScrollEvent: function () {
  7556. var a = this,
  7557. b = !1,
  7558. c = function () {
  7559. a._repositionElements(), b = !1
  7560. },
  7561. d = function () {
  7562. b || (o(c), b = !0)
  7563. };
  7564. this.$scrollElement.bind("scroll." + this.name, d), d()
  7565. },
  7566. _startAnimationLoop: function () {
  7567. var a = this;
  7568. this._animationLoop = function () {
  7569. o(a._animationLoop), a._repositionElements()
  7570. }, this._animationLoop()
  7571. }
  7572. }, a.fn[f] = function (b) {
  7573. var c = arguments;
  7574. return b === d || "object" == typeof b ? this.each(function () {
  7575. a.data(this, "plugin_" + f) || a.data(this, "plugin_" + f, new e(this, b))
  7576. }) : "string" == typeof b && "_" !== b[0] && "init" !== b ? this.each(function () {
  7577. var d = a.data(this, "plugin_" + f);
  7578. 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)
  7579. }) : void 0
  7580. }, a[f] = function () {
  7581. var c = a(b);
  7582. return c.stellar.apply(c, Array.prototype.slice.call(arguments, 0))
  7583. }, a[f].scrollProperty = h, a[f].positionProperty = i, b.Stellar = e
  7584. }(jQuery, this, document);
  7585.  
  7586.  
  7587.  
  7588. /*!
  7589. * jQuery Countdown plugin v1.0
  7590. * http://www.littlewebthings.com/projects/countdown/
  7591. *
  7592. * Copyright 2010, Vassilis Dourdounis
  7593. *
  7594. * Permission is hereby granted, free of charge, to any person obtaining a copy
  7595. * of this software and associated documentation files (the "Software"), to deal
  7596. * in the Software without restriction, including without limitation the rights
  7597. * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  7598. * copies of the Software, and to permit persons to whom the Software is
  7599. * furnished to do so, subject to the following conditions:
  7600. *
  7601. * The above copyright notice and this permission notice shall be included in
  7602. * all copies or substantial portions of the Software.
  7603. *
  7604. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  7605. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  7606. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  7607. * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  7608. * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  7609. * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  7610. * THE SOFTWARE.
  7611. */
  7612. (function ($) {
  7613.  
  7614. $.fn.countDown = function (options) {
  7615.  
  7616. config = {};
  7617.  
  7618. $.extend(config, options);
  7619.  
  7620. diffSecs = this.setCountDown(config);
  7621.  
  7622. if (config.onComplete) {
  7623. $.data($(this)[0], 'callback', config.onComplete);
  7624. }
  7625. if (config.omitWeeks) {
  7626. $.data($(this)[0], 'omitWeeks', config.omitWeeks);
  7627. }
  7628.  
  7629. $('#' + $(this).attr('id') + ' .digit').html('<div class="top"></div><div class="bottom"></div>');
  7630. $(this).doCountDown($(this).attr('id'), diffSecs, 500);
  7631.  
  7632. return this;
  7633.  
  7634. };
  7635.  
  7636. $.fn.stopCountDown = function () {
  7637. clearTimeout($.data(this[0], 'timer'));
  7638. };
  7639.  
  7640. $.fn.startCountDown = function () {
  7641. this.doCountDown($(this).attr('id'), $.data(this[0], 'diffSecs'), 500);
  7642. };
  7643.  
  7644. $.fn.setCountDown = function (options) {
  7645. var targetTime = new Date();
  7646.  
  7647. if (options.targetDate) {
  7648. targetTime = new Date(options.targetDate.month + '/' + options.targetDate.day + '/' + options.targetDate.year + ' ' + options.targetDate.hour + ':' + options.targetDate.min + ':' + options.targetDate.sec + (options.targetDate.utc ? ' UTC' : ''));
  7649. } else if (options.targetOffset) {
  7650. targetTime.setFullYear(options.targetOffset.year + targetTime.getFullYear());
  7651. targetTime.setMonth(options.targetOffset.month + targetTime.getMonth());
  7652. targetTime.setDate(options.targetOffset.day + targetTime.getDate());
  7653. targetTime.setHours(options.targetOffset.hour + targetTime.getHours());
  7654. targetTime.setMinutes(options.targetOffset.min + targetTime.getMinutes());
  7655. targetTime.setSeconds(options.targetOffset.sec + targetTime.getSeconds());
  7656. }
  7657.  
  7658. var nowTime = new Date();
  7659.  
  7660. diffSecs = Math.floor((targetTime.valueOf() - nowTime.valueOf()) / 1000);
  7661.  
  7662. $.data(this[0], 'diffSecs', diffSecs);
  7663.  
  7664. return diffSecs;
  7665. };
  7666.  
  7667. $.fn.doCountDown = function (id, diffSecs, duration) {
  7668. $this = $('#' + id);
  7669. if (diffSecs <= 0) {
  7670. diffSecs = 0;
  7671. if ($.data($this[0], 'timer')) {
  7672. clearTimeout($.data($this[0], 'timer'));
  7673. }
  7674. }
  7675.  
  7676. secs = diffSecs % 60;
  7677. mins = Math.floor(diffSecs / 60) % 60;
  7678. hours = Math.floor(diffSecs / 60 / 60) % 24;
  7679. if ($.data($this[0], 'omitWeeks') == true) {
  7680. days = Math.floor(diffSecs / 60 / 60 / 24);
  7681. weeks = Math.floor(diffSecs / 60 / 60 / 24 / 7);
  7682. } else {
  7683. days = Math.floor(diffSecs / 60 / 60 / 24) % 7;
  7684. weeks = Math.floor(diffSecs / 60 / 60 / 24 / 7);
  7685. }
  7686.  
  7687. $this.dashChangeTo(id, 'seconds_dash', secs, duration ? duration : 800);
  7688. $this.dashChangeTo(id, 'minutes_dash', mins, duration ? duration : 1200);
  7689. $this.dashChangeTo(id, 'hours_dash', hours, duration ? duration : 1200);
  7690. $this.dashChangeTo(id, 'days_dash', days, duration ? duration : 1200);
  7691. $this.dashChangeTo(id, 'weeks_dash', weeks, duration ? duration : 1200);
  7692.  
  7693. $.data($this[0], 'diffSecs', diffSecs);
  7694. if (diffSecs > 0) {
  7695. e = $this;
  7696. t = setTimeout(function () {
  7697. e.doCountDown(id, diffSecs - 1)
  7698. }, 1000);
  7699. $.data(e[0], 'timer', t);
  7700. } else if (cb = $.data($this[0], 'callback')) {
  7701. $.data($this[0], 'callback')();
  7702. }
  7703.  
  7704. };
  7705.  
  7706. $.fn.dashChangeTo = function (id, dash, n, duration) {
  7707. $this = $('#' + id);
  7708.  
  7709. for (var i = ($this.find('.' + dash + ' .digit').length - 1); i >= 0; i--) {
  7710. var d = n % 10;
  7711. n = (n - d) / 10;
  7712. $this.digitChangeTo('#' + $this.attr('id') + ' .' + dash + ' .digit:eq(' + i + ')', d, duration);
  7713. }
  7714. };
  7715.  
  7716. $.fn.digitChangeTo = function (digit, n, duration) {
  7717. if (!duration) {
  7718. duration = 800;
  7719. }
  7720. if ($(digit + ' div.top').html() != n + '') {
  7721.  
  7722. $(digit + ' div.top').css({
  7723. 'display': 'none'
  7724. });
  7725. $(digit + ' div.top').html((n ? n : '0')).slideDown(duration);
  7726.  
  7727. $(digit + ' div.bottom').animate({
  7728. 'height': ''
  7729. }, duration, function () {
  7730. $(digit + ' div.bottom').html($(digit + ' div.top').html());
  7731. $(digit + ' div.bottom').css({
  7732. 'display': 'block',
  7733. 'height': ''
  7734. });
  7735. $(digit + ' div.top').hide().slideUp(10);
  7736.  
  7737.  
  7738. });
  7739. }
  7740. };
  7741.  
  7742. })(jQuery);
Add Comment
Please, Sign In to add comment