1if ( 2 (!(function (f, T) { 3 function t(e, t) { 4 return t.toUpperCase(); 5 } 6 function n(e) { 7 (!m.addEventListener && 8 "load" !== e.type && 9 "complete" !== m.readyState) || 10 (O(), ke.ready()); 11 } 12 var i, 13 o, 14 v = typeof T, 15 e = f.location, 16 m = f.document, 17 s = m.documentElement, 18 r = f.jQuery, 19 a = f.$, 20 l = {}, 21 u = [], 22 c = "1.10.1", 23 g = u.concat, 24 d = u.push, 25 p = u.slice, 26 h = u.indexOf, 27 y = l.toString, 28 w = l.hasOwnProperty, 29 b = c.trim, 30 ke = function (e, t) { 31 return new ke.fn.init(e, t, o); 32 }, 33 x = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, 34 C = /\S+/g, 35 k = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, 36 S = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, 37 z = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, 38 E = /^[\],:{}\s]*$/, 39 W = /(?:^|:|,)(?:\s*\[)+/g, 40 L = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, 41 A = /"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g, 42 $ = /^-ms-/, 43 F = /-([\da-z])/gi, 44 O = function () { 45 m.addEventListener 46 ? (m.removeEventListener("DOMContentLoaded", n, !1), 47 f.removeEventListener("load", n, !1)) 48 : (m.detachEvent("onreadystatechange", n), 49 f.detachEvent("onload", n)); 50 }; 51 function H(e) { 52 var t = e.length, 53 o = ke.type(e); 54 return ( 55 !ke.isWindow(e) && 56 (!(1 !== e.nodeType || !t) || 57 "array" === o || 58 ("function" !== o && 59 (0 === t || ("number" == typeof t && 0 < t && t - 1 in e)))) 60 ); 61 } 62 (ke.fn = ke.prototype = 63 { 64 jquery: c, 65 constructor: ke, 66 init: function (e, t, o) { 67 var n, i; 68 if (!e) return this; 69 if ("string" != typeof e) 70 return e.nodeType 71 ? ((this.context = this[0] = e), (this.length = 1), this) 72 : ke.isFunction(e) 73 ? o.ready(e) 74 : (e.selector !== T && 75 ((this.selector = e.selector), (this.context = e.context)), 76 ke.makeArray(e, this)); 77 if ( 78 !(n = 79 "<" === e.charAt(0) && 80 ">" === e.charAt(e.length - 1) && 81 3 <= e.length 82 ? [null, e, null] 83 : S.exec(e)) || 84 (!n[1] && t) 85 ) 86 return !t || t.jquery 87 ? (t || o).find(e) 88 : this.constructor(t).find(e); 89 if (n[1]) { 90 if ( 91 ((t = t instanceof ke ? t[0] : t), 92 ke.merge( 93 this, 94 ke.parseHTML( 95 n[1], 96 t && t.nodeType ? t.ownerDocument || t : m, 97 !0 98 ) 99 ), 100 z.test(n[1]) && ke.isPlainObject(t)) 101 ) 102 for (n in t) 103 ke.isFunction(this[n]) ? this[n](t[n]) : this.attr(n, t[n]); 104 return this; 105 } 106 if ((i = m.getElementById(n[2])) && i.parentNode) { 107 if (i.id !== n[2]) return o.find(e); 108 (this.length = 1), (this[0] = i); 109 } 110 return (this.context = m), (this.selector = e), this; 111 }, 112 selector: "", 113 length: 0, 114 toArray: function () { 115 return p.call(this); 116 }, 117 get: function (e) { 118 return null == e 119 ? this.toArray() 120 : e < 0 121 ? this[this.length + e] 122 : this[e]; 123 }, 124 pushStack: function (e) { 125 var t = ke.merge(this.constructor(), e); 126 return (t.prevObject = this), (t.context = this.context), t; 127 }, 128 each: function (e, t) { 129 return ke.each(this, e, t); 130 }, 131 ready: function (e) { 132 return ke.ready.promise().done(e), this; 133 }, 134 slice: function () { 135 return this.pushStack(p.apply(this, arguments)); 136 }, 137 first: function () { 138 return this.eq(0); 139 }, 140 last: function () { 141 return this.eq(-1); 142 }, 143 eq: function (e) { 144 var t = this.length, 145 o = +e + (e < 0 ? t : 0); 146 return this.pushStack(0 <= o && o < t ? [this[o]] : []); 147 }, 148 map: function (o) { 149 return this.pushStack( 150 ke.map(this, function (e, t) { 151 return o.call(e, t, e); 152 }) 153 ); 154 }, 155 end: function () { 156 return this.prevObject || this.constructor(null); 157 }, 158 push: d, 159 sort: [].sort, 160 splice: [].splice, 161 }), 162 (ke.fn.init.prototype = ke.fn), 163 (ke.extend = ke.fn.extend = 164 function () { 165 var e, 166 t, 167 o, 168 n, 169 i, 170 s, 171 r = arguments[0] || {}, 172 a = 1, 173 l = arguments.length, 174 c = !1; 175 for ( 176 "boolean" == typeof r && 177 ((c = r), (r = arguments[1] || {}), (a = 2)), 178 "object" == typeof r || ke.isFunction(r) || (r = {}), 179 l === a && ((r = this), --a); 180 a < l; 181 a++ 182 ) 183 if (null != (i = arguments[a])) 184 for (n in i) 185 (e = r[n]), 186 r !== (o = i[n]) && 187 (c && o && (ke.isPlainObject(o) || (t = ke.isArray(o))) 188 ? ((s = t 189 ? ((t = !1), e && ke.isArray(e) ? e : []) 190 : e && ke.isPlainObject(e) 191 ? e 192 : {}), 193 (r[n] = ke.extend(c, s, o))) 194 : o !== T && (r[n] = o)); 195 return r; 196 }), 197 ke.extend({ 198 expando: "jQuery" + (c + Math.random()).replace(/\D/g, ""), 199 noConflict: function (e) { 200 return ( 201 f.$ === ke && (f.$ = a), e && f.jQuery === ke && (f.jQuery = r), ke 202 ); 203 }, 204 isReady: !1, 205 readyWait: 1, 206 holdReady: function (e) { 207 e ? ke.readyWait++ : ke.ready(!0); 208 }, 209 ready: function (e) { 210 if (!0 === e ? !--ke.readyWait : !ke.isReady) { 211 if (!m.body) return setTimeout(ke.ready); 212 ((ke.isReady = !0) !== e && 0 < --ke.readyWait) || 213 (i.resolveWith(m, [ke]), 214 ke.fn.trigger && ke(m).trigger("ready").off("ready")); 215 } 216 }, 217 isFunction: function (e) { 218 return "function" === ke.type(e); 219 }, 220 isArray: 221 Array.isArray || 222 function (e) { 223 return "array" === ke.type(e); 224 }, 225 isWindow: function (e) { 226 return null != e && e == e.window; 227 }, 228 isNumeric: function (e) { 229 return !isNaN(parseFloat(e)) && isFinite(e); 230 }, 231 type: function (e) { 232 return null == e 233 ? e + "" 234 : "object" == typeof e || "function" == typeof e 235 ? l[y.call(e)] || "object" 236 : typeof e; 237 }, 238 isPlainObject: function (e) { 239 var t; 240 if (!e || "object" !== ke.type(e) || e.nodeType || ke.isWindow(e)) 241 return !1; 242 try { 243 if ( 244 e.constructor && 245 !w.call(e, "constructor") && 246 !w.call(e.constructor.prototype, "isPrototypeOf") 247 ) 248 return !1; 249 } catch (e) { 250 return !1; 251 } 252 if (ke.support.ownLast) for (t in e) return w.call(e, t); 253 for (t in e); 254 return t === T || w.call(e, t); 255 }, 256 isEmptyObject: function (e) { 257 var t; 258 for (t in e) return !1; 259 return !0; 260 }, 261 error: function (e) { 262 throw Error(e); 263 }, 264 parseHTML: function (e, t, o) { 265 if (!e || "string" != typeof e) return null; 266 "boolean" == typeof t && ((o = t), (t = !1)), (t = t || m); 267 var n = z.exec(e), 268 i = !o && []; 269 return n 270 ? [t.createElement(n[1])] 271 : ((n = ke.buildFragment([e], t, i)), 272 i && ke(i).remove(), 273 ke.merge([], n.childNodes)); 274 }, 275 parseJSON: function (e) { 276 return f.JSON && f.JSON.parse 277 ? f.JSON.parse(e) 278 : null === e 279 ? e 280 : "string" == typeof e && 281 (e = ke.trim(e)) && 282 E.test(e.replace(L, "@").replace(A, "]").replace(W, "")) 283 ? Function("return " + e)() 284 : (ke.error("Invalid JSON: " + e), T); 285 }, 286 parseXML: function (e) { 287 var t; 288 if (!e || "string" != typeof e) return null; 289 try { 290 f.DOMParser 291 ? (t = new DOMParser().parseFromString(e, "text/xml")) 292 : (((t = new ActiveXObject("Microsoft.XMLDOM")).async = "false"), 293 t.loadXML(e)); 294 } catch (e) { 295 t = T; 296 } 297 return ( 298 (t && 299 t.documentElement && 300 !t.getElementsByTagName("parsererror").length) || 301 ke.error("Invalid XML: " + e), 302 t 303 ); 304 }, 305 noop: function () {}, 306 globalEval: function (e) { 307 e && 308 ke.trim(e) && 309 ( 310 f.execScript || 311 function (e) { 312 f.eval.call(f, e); 313 } 314 )(e); 315 }, 316 camelCase: function (e) { 317 return e.replace($, "ms-").replace(F, t); 318 }, 319 nodeName: function (e, t) {
320 return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase(); 321 }, 322 each: function (e, t, o) { 323 var n = 0, 324 i = e.length, 325 s = H(e); 326 if (o) { 327 if (s) for (; n < i && !1 !== t.apply(e[n], o); n++); 328 else for (n in e) if (!1 === t.apply(e[n], o)) break; 329 } else if (s) for (; n < i && !1 !== t.call(e[n], n, e[n]); n++); 330 else for (n in e) if (!1 === t.call(e[n], n, e[n])) break; 331 return e; 332 }, 333 trim: 334 b && !b.call("\ufeffà ") 335 ? function (e) { 336 return null == e ? "" : b.call(e); 337 } 338 : function (e) { 339 return null == e ? "" : (e + "").replace(k, ""); 340 }, 341 makeArray: function (e, t) { 342 var o = t || []; 343 return ( 344 null != e && 345 (H(Object(e)) 346 ? ke.merge(o, "string" == typeof e ? [e] : e) 347 : d.call(o, e)), 348 o 349 ); 350 }, 351 inArray: function (e, t, o) { 352 var n; 353 if (t) { 354 if (h) return h.call(t, e, o); 355 for ( 356 n = t.length, o = o ? (o < 0 ? Math.max(0, n + o) : o) : 0; 357 o < n; 358 o++ 359 ) 360 if (o in t && t[o] === e) return o; 361 } 362 return -1; 363 }, 364 merge: function (e, t) { 365 var o = t.length, 366 n = e.length, 367 i = 0; 368 if ("number" == typeof o) for (; i < o; i++) e[n++] = t[i]; 369 else for (; t[i] !== T; ) e[n++] = t[i++]; 370 return (e.length = n), e; 371 }, 372 grep: function (e, t, o) { 373 var n = [], 374 i = 0, 375 s = e.length; 376 for (o = !!o; i < s; i++) o !== !!t(e[i], i) && n.push(e[i]); 377 return n; 378 }, 379 map: function (e, t, o) { 380 var n, 381 i = 0, 382 s = e.length, 383 r = []; 384 if (H(e)) 385 for (; i < s; i++) null != (n = t(e[i], i, o)) && (r[r.length] = n); 386 else for (i in e) null != (n = t(e[i], i, o)) && (r[r.length] = n); 387 return g.apply([], r); 388 }, 389 guid: 1, 390 proxy: function (e, t) { 391 var o, n, i; 392 return ( 393 "string" == typeof t && ((i = e[t]), (t = e), (e = i)), 394 ke.isFunction(e) 395 ? ((o = p.call(arguments, 2)), 396 ((n = function () { 397 return e.apply(t || this, o.concat(p.call(arguments))); 398 }).guid = e.guid = 399 e.guid || ke.guid++), 400 n) 401 : T 402 ); 403 }, 404 access: function (e, t, o, n, i, s, r) { 405 var a = 0, 406 l = e.length, 407 c = null == o; 408 if ("object" === ke.type(o)) 409 for (a in ((i = !0), o)) ke.access(e, t, a, o[a], !0, s, r); 410 else if ( 411 n !== T && 412 ((i = !0), 413 ke.isFunction(n) || (r = !0), 414 c && 415 (t = r 416 ? (t.call(e, n), null) 417 : ((c = t), 418 function (e, t, o) { 419 return c.call(ke(e), o); 420 })), 421 t) 422 ) 423 for (; a < l; a++) t(e[a], o, r ? n : n.call(e[a], a, t(e[a], o))); 424 return i ? e : c ? t.call(e) : l ? t(e[0], o) : s; 425 }, 426 now: function () { 427 return new Date().getTime(); 428 }, 429 swap: function (e, t, o, n) { 430 var i, 431 s, 432 r = {}; 433 for (s in t) (r[s] = e.style[s]), (e.style[s] = t[s]); 434 for (s in ((i = o.apply(e, n || [])), t)) e.style[s] = r[s]; 435 return i; 436 }, 437 }), 438 (ke.ready.promise = function (e) { 439 if (!i) 440 if (((i = ke.Deferred()), "complete" === m.readyState)) 441 setTimeout(ke.ready); 442 else if (m.addEventListener) 443 m.addEventListener("DOMContentLoaded", n, !1), 444 f.addEventListener("load", n, !1); 445 else { 446 m.attachEvent("onreadystatechange", n), f.attachEvent("onload", n); 447 var o = !1; 448 try { 449 o = null == f.frameElement && m.documentElement; 450 } catch (e) {} 451 o && 452 o.doScroll && 453 (function t() { 454 if (!ke.isReady) { 455 try { 456 o.doScroll("left"); 457 } catch (e) { 458 return setTimeout(t, 50); 459 } 460 O(), ke.ready(); 461 } 462 })(); 463 } 464 return i.promise(e); 465 }), 466 ke.each( 467 "Boolean Number String Function Array Date RegExp Object Error".split( 468 " " 469 ), 470 function (e, t) { 471 l["[object " + t + "]"] = t.toLowerCase(); 472 } 473 ), 474 (o = ke(m)), 475 (function (o, i) { 476 var e, 477 f, 478 x, 479 k, 480 s, 481 n, 482 m, 483 T, 484 c, 485 g, 486 C, 487 r, 488 v, 489 y, 490 a, 491 d, 492 w, 493 b = "sizzle" + -new Date(), 494 S = o.document, 495 z = 0, 496 u = 0, 497 l = se(), 498 p = se(), 499 h = se(), 500 E = !1, 501 W = function () { 502 return 0; 503 }, 504 L = typeof i, 505 A = {}.hasOwnProperty, 506 t = [], 507 $ = t.pop, 508 F = t.push, 509 O = t.push, 510 H = t.slice, 511 D = 512 t.indexOf || 513 function (e) { 514 for (var t = 0, o = this.length; t < o; t++) 515 if (this[t] === e) return t; 516 return -1; 517 }, 518 I = 519 "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", 520 N = "[\\x20\\t\\r\\n\\f]", 521 M = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", 522 P = M.replace("w", "w#"), 523 j = 524 "\\[" + 525 N + 526 "*(" + 527 M + 528 ")" + 529 N + 530 "*(?:([*^$|!~]?=)" + 531 N + 532 "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + 533 P + 534 ")|)|)" + 535 N + 536 "*\\]", 537 R = 538 ":(" + 539 M + 540 ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + 541 j.replace(3, 8) + 542 ")*)|.*)\\)|)", 543 B = RegExp("^" + N + "+|((?:^|[^\\\\])(?:\\\\.)*)" + N + "+$", "g"), 544 _ = RegExp("^" + N + "*," + N + "*"), 545 q = RegExp("^" + N + "*([>+~]|" + N + ")" + N + "*"), 546 U = RegExp(N + "*[+~]"), 547 X = RegExp("=" + N + "*([^\\]'\"]*)" + N + "*\\]", "g"), 548 Z = RegExp(R), 549 Y = RegExp("^" + P + "$"), 550 Q = { 551 ID: RegExp("^#(" + M + ")"), 552 CLASS: RegExp("^\\.(" + M + ")"), 553 TAG: RegExp("^(" + M.replace("w", "w*") + ")"), 554 ATTR: RegExp("^" + j), 555 PSEUDO: RegExp("^" + R), 556 CHILD: RegExp( 557 "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + 558 N + 559 "*(even|odd|(([+-]|)(\\d*)n|)" + 560 N + 561 "*(?:([+-]|)" + 562 N + 563 "*(\\d+)|))" + 564 N + 565 "*\\)|)", 566 "i" 567 ), 568 bool: RegExp("^(?:" + I + ")$", "i"), 569 needsContext: RegExp( 570 "^" + 571 N + 572 "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + 573 N + 574 "*((?:-\\d)?\\d*)" + 575 N + 576 "*\\)|)(?=[^-]|$)", 577 "i" 578 ), 579 }, 580 V = /^[^{]+\{\s*\[native \w/, 581 G = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, 582 K = /^(?:input|select|textarea|button)$/i, 583 J = /^h\d$/i, 584 ee = /'|\\/g, 585 te = RegExp("\\\\([\\da-f]{1,6}" + N + "?|(" + N + ")|.)", "ig"), 586 oe = function (e, t, o) { 587 var n = "0x" + t - 65536; 588 return n != n || o 589 ? t 590 : n < 0 591 ? String.fromCharCode(65536 + n) 592 : String.fromCharCode(55296 | (n >> 10), 56320 | (1023 & n)); 593 }; 594 try { 595 O.apply((t = H.call(S.childNodes)), S.childNodes), 596 t[S.childNodes.length].nodeType; 597 } catch (e) { 598 O = { 599 apply: t.length 600 ? function (e, t) { 601 F.apply(e, H.call(t)); 602 } 603 : function (e, t) { 604 for (var o = e.length, n = 0; (e[o++] = t[n++]); ); 605 e.length = o - 1; 606 }, 607 }; 608 } 609 function ne(e, t, o, n) { 610 var i, s, r, a, l, c, d, u, p, h; 611 if ( 612 ((t ? t.ownerDocument || t : S) !== C && g(t), 613 (o = o || []), 614 !e || "string" != typeof e) 615 ) 616 return o; 617 if (1 !== (a = (t = t || C).nodeType) && 9 !== a) return []; 618 if (v && !n) {
619 if ((i = G.exec(e))) 620 if ((r = i[1])) { 621 if (9 === a) { 622 if (!(s = t.getElementById(r)) || !s.parentNode) return o; 623 if (s.id === r) return o.push(s), o; 624 } else if ( 625 t.ownerDocument && 626 (s = t.ownerDocument.getElementById(r)) && 627 w(t, s) && 628 s.id === r 629 ) 630 return o.push(s), o; 631 } else { 632 if (i[2]) return O.apply(o, t.getElementsByTagName(e)), o; 633 if ( 634 (r = i[3]) && 635 f.getElementsByClassName && 636 t.getElementsByClassName 637 ) 638 return O.apply(o, t.getElementsByClassName(r)), o; 639 } 640 if (f.qsa && (!y || !y.test(e))) { 641 if ( 642 ((u = d = b), 643 (p = t), 644 (h = 9 === a && e), 645 1 === a && "object" !== t.nodeName.toLowerCase()) 646 ) { 647 for ( 648 c = fe(e), 649 (d = t.getAttribute("id")) 650 ? (u = d.replace(ee, "\\$&")) 651 : t.setAttribute("id", u), 652 u = "[id='" + u + "'] ", 653 l = c.length; 654 l--; 655 656 ) 657 c[l] = u + me(c[l]); 658 (p = (U.test(e) && t.parentNode) || t), (h = c.join(",")); 659 } 660 if (h) 661 try { 662 return O.apply(o, p.querySelectorAll(h)), o; 663 } catch (e) { 664 } finally { 665 d || t.removeAttribute("id"); 666 } 667 } 668 } 669 return (function (e, t, o, n) { 670 var i, 671 s, 672 r, 673 a, 674 l, 675 c = fe(e); 676 if (!n && 1 === c.length) { 677 if ( 678 2 < (s = c[0] = c[0].slice(0)).length && 679 "ID" === (r = s[0]).type && 680 f.getById && 681 9 === t.nodeType && 682 v && 683 k.relative[s[1].type] 684 ) { 685 if ( 686 !(t = (k.find.ID(r.matches[0].replace(te, oe), t) || [])[0]) 687 ) 688 return o; 689 e = e.slice(s.shift().value.length); 690 } 691 for ( 692 i = Q.needsContext.test(e) ? 0 : s.length; 693 i-- && ((r = s[i]), !k.relative[(a = r.type)]); 694 695 ) 696 if ( 697 (l = k.find[a]) && 698 (n = l( 699 r.matches[0].replace(te, oe), 700 (U.test(s[0].type) && t.parentNode) || t 701 )) 702 ) { 703 if ((s.splice(i, 1), !(e = n.length && me(s)))) 704 return O.apply(o, n), o; 705 break; 706 } 707 } 708 return m(e, c)(n, t, !v, o, U.test(e)), o; 709 })(e.replace(B, "$1"), t, o, n); 710 } 711 function ie(e) { 712 return V.test(e + ""); 713 } 714 function se() { 715 var o = []; 716 function n(e, t) { 717 return ( 718 o.push((e += " ")) > k.cacheLength && delete n[o.shift()], 719 (n[e] = t) 720 ); 721 } 722 return n; 723 } 724 function re(e) { 725 return (e[b] = !0), e; 726 } 727 function ae(e) { 728 var t = C.createElement("div"); 729 try { 730 return !!e(t); 731 } catch (e) { 732 return !1; 733 } finally { 734 t.parentNode && t.parentNode.removeChild(t), (t = null); 735 } 736 } 737 function le(e, t, o) { 738 for (var n, i = (e = e.split("|")).length, s = o ? null : t; i--; ) 739 ((n = k.attrHandle[e[i]]) && n !== t) || (k.attrHandle[e[i]] = s); 740 } 741 function ce(e, t) { 742 var o = e.getAttributeNode(t); 743 return o && o.specified 744 ? o.value 745 : !0 === e[t] 746 ? t.toLowerCase() 747 : null; 748 } 749 function de(e, t) { 750 return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2); 751 } 752 function ue(e) { 753 return "input" === e.nodeName.toLowerCase() ? e.defaultValue : i; 754 } 755 function pe(e, t) { 756 var o = t && e, 757 n = 758 o && 759 1 === e.nodeType && 760 1 === t.nodeType && 761 (~t.sourceIndex || 1 << 31) - (~e.sourceIndex || 1 << 31); 762 if (n) return n; 763 if (o) for (; (o = o.nextSibling); ) if (o === t) return -1; 764 return e ? 1 : -1; 765 } 766 function he(r) { 767 return re(function (s) { 768 return ( 769 (s = +s), 770 re(function (e, t) { 771 for (var o, n = r([], e.length, s), i = n.length; i--; ) 772 e[(o = n[i])] && (e[o] = !(t[o] = e[o])); 773 }) 774 ); 775 }); 776 } 777 for (e in ((n = ne.isXML = 778 function (e) { 779 var t = e && (e.ownerDocument || e).documentElement; 780 return !!t && "HTML" !== t.nodeName; 781 }), 782 (f = ne.support = {}), 783 (g = ne.setDocument = 784 function (e) { 785 var l = e ? e.ownerDocument || e : S, 786 t = l.parentWindow; 787 return l !== C && 9 === l.nodeType && l.documentElement 788 ? ((r = (C = l).documentElement), 789 (v = !n(l)), 790 t && 791 t.frameElement && 792 t.attachEvent("onbeforeunload", function () { 793 g(); 794 }), 795 (f.attributes = ae(function (e) { 796 return ( 797 (e.innerHTML = "<a href='#'></a>"), 798 le( 799 "type|href|height|width", 800 de, 801 "#" === e.firstChild.getAttribute("href") 802 ), 803 le(I, ce, null == e.getAttribute("disabled")), 804 (e.className = "i"), 805 !e.getAttribute("className") 806 ); 807 })), 808 (f.input = ae(function (e) { 809 return ( 810 (e.innerHTML = "<input>"), 811 e.firstChild.setAttribute("value", ""), 812 "" === e.firstChild.getAttribute("value") 813 ); 814 })), 815 le("value", ue, f.attributes && f.input), 816 (f.getElementsByTagName = ae(function (e) { 817 return ( 818 e.appendChild(l.createComment("")), 819 !e.getElementsByTagName("*").length 820 ); 821 })), 822 (f.getElementsByClassName = ae(function (e) { 823 return ( 824 (e.innerHTML = 825 "<div class='a'></div><div class='a i'></div>"), 826 (e.firstChild.className = "i"), 827 2 === e.getElementsByClassName("i").length 828 ); 829 })), 830 (f.getById = ae(function (e) { 831 return ( 832 (r.appendChild(e).id = b), 833 !l.getElementsByName || !l.getElementsByName(b).length 834 ); 835 })), 836 f.getById 837 ? ((k.find.ID = function (e, t) { 838 if (typeof t.getElementById != L && v) { 839 var o = t.getElementById(e); 840 return o && o.parentNode ? [o] : []; 841 } 842 }), 843 (k.filter.ID = function (e) { 844 var t = e.replace(te, oe); 845 return function (e) { 846 return e.getAttribute("id") === t; 847 }; 848 })) 849 : (delete k.find.ID, 850 (k.filter.ID = function (e) { 851 var o = e.replace(te, oe); 852 return function (e) { 853 var t = 854 typeof e.getAttributeNode != L && 855 e.getAttributeNode("id"); 856 return t && t.value === o; 857 }; 858 })), 859 (k.find.TAG = f.getElementsByTagName 860 ? function (e, t) { 861 return typeof t.getElementsByTagName != L 862 ? t.getElementsByTagName(e) 863 : i; 864 } 865 : function (e, t) { 866 var o, 867 n = [], 868 i = 0, 869 s = t.getElementsByTagName(e); 870 if ("*" !== e) return s; 871 for (; (o = s[i++]); ) 1 === o.nodeType && n.push(o); 872 return n; 873 }), 874 (k.find.CLASS = 875 f.getElementsByClassName && 876 function (e, t) { 877 return typeof t.getElementsByClassName != L && v 878 ? t.getElementsByClassName(e) 879 : i; 880 }), 881 (a = []), 882 (y = []), 883 (f.qsa = ie(l.querySelectorAll)) && 884 (ae(function (e) { 885 (e.innerHTML = 886 "<select><option selected=''></option></select>"), 887 e.querySelectorAll("[selected]").length || 888 y.push("\\[" + N + "*(?:value|" + I + ")"), 889 e.querySelectorAll(":checked").length || 890 y.push(":checked"); 891 }), 892 ae(function (e) { 893 var t = l.createElement("input"); 894 t.setAttribute("type", "hidden"), 895 e.appendChild(t).setAttribute("t", ""), 896 e.querySelectorAll("[t^='']").length && 897 y.push("[*^$]=" + N + "*(?:''|\"\")"), 898 e.querySelectorAll(":enabled").length || 899 y.push(":enabled", ":disabled"), 900 e.querySelectorAll("*,:x"), 901 y.push(",.*:"); 902 })), 903 (f.matchesSelector = ie( 904 (d = 905 r.webkitMatchesSelector || 906 r.mozMatchesSelector || 907 r.oMatchesSelector || 908 r.msMatchesSelector) 909 )) && 910 ae(function (e) {
911 (f.disconnectedMatch = d.call(e, "div")), 912 d.call(e, "[s!='']:x"), 913 a.push("!=", R); 914 }), 915 (y = y.length && RegExp(y.join("|"))), 916 (a = a.length && RegExp(a.join("|"))), 917 (w = 918 ie(r.contains) || r.compareDocumentPosition 919 ? function (e, t) { 920 var o = 9 === e.nodeType ? e.documentElement : e, 921 n = t && t.parentNode; 922 return ( 923 e === n || 924 !( 925 !n || 926 1 !== n.nodeType || 927 !(o.contains 928 ? o.contains(n) 929 : e.compareDocumentPosition && 930 16 & e.compareDocumentPosition(n)) 931 ) 932 ); 933 } 934 : function (e, t) { 935 if (t) 936 for (; (t = t.parentNode); ) if (t === e) return !0; 937 return !1; 938 }), 939 (f.sortDetached = ae(function (e) { 940 return 1 & e.compareDocumentPosition(l.createElement("div")); 941 })), 942 (W = r.compareDocumentPosition 943 ? function (e, t) { 944 if (e === t) return (E = !0), 0; 945 var o = 946 t.compareDocumentPosition && 947 e.compareDocumentPosition && 948 e.compareDocumentPosition(t); 949 return o 950 ? 1 & o || 951 (!f.sortDetached && 952 t.compareDocumentPosition(e) === o) 953 ? e === l || w(S, e) 954 ? -1 955 : t === l || w(S, t) 956 ? 1 957 : c 958 ? D.call(c, e) - D.call(c, t) 959 : 0 960 : 4 & o 961 ? -1 962 : 1 963 : e.compareDocumentPosition 964 ? -1 965 : 1; 966 } 967 : function (e, t) { 968 var o, 969 n = 0, 970 i = e.parentNode, 971 s = t.parentNode, 972 r = [e], 973 a = [t]; 974 if (e === t) return (E = !0), 0; 975 if (!i || !s) 976 return e === l 977 ? -1 978 : t === l 979 ? 1 980 : i 981 ? -1 982 : s 983 ? 1 984 : c 985 ? D.call(c, e) - D.call(c, t) 986 : 0; 987 if (i === s) return pe(e, t); 988 for (o = e; (o = o.parentNode); ) r.unshift(o); 989 for (o = t; (o = o.parentNode); ) a.unshift(o); 990 for (; r[n] === a[n]; ) n++; 991 return n 992 ? pe(r[n], a[n]) 993 : r[n] === S 994 ? -1 995 : a[n] === S 996 ? 1 997 : 0; 998 }), 999 l) 1000 : C; 1001 }), 1002 (ne.matches = function (e, t) { 1003 return ne(e, null, null, t); 1004 }), 1005 (ne.matchesSelector = function (e, t) { 1006 if ( 1007 ((e.ownerDocument || e) !== C && g(e), 1008 (t = t.replace(X, "='$1']")), 1009 !(!f.matchesSelector || !v || (a && a.test(t)) || (y && y.test(t)))) 1010 ) 1011 try { 1012 var o = d.call(e, t); 1013 if ( 1014 o || 1015 f.disconnectedMatch || 1016 (e.document && 11 !== e.document.nodeType) 1017 ) 1018 return o; 1019 } catch (e) {} 1020 return 0 < ne(t, C, null, [e]).length; 1021 }), 1022 (ne.contains = function (e, t) { 1023 return (e.ownerDocument || e) !== C && g(e), w(e, t); 1024 }), 1025 (ne.attr = function (e, t) { 1026 (e.ownerDocument || e) !== C && g(e); 1027 var o = k.attrHandle[t.toLowerCase()], 1028 n = o && A.call(k.attrHandle, t.toLowerCase()) ? o(e, t, !v) : i; 1029 return n === i 1030 ? f.attributes || !v 1031 ? e.getAttribute(t) 1032 : (n = e.getAttributeNode(t)) && n.specified 1033 ? n.value 1034 : null 1035 : n; 1036 }), 1037 (ne.error = function (e) { 1038 throw Error("Syntax error, unrecognized expression: " + e); 1039 }), 1040 (ne.uniqueSort = function (e) { 1041 var t, 1042 o = [], 1043 n = 0, 1044 i = 0; 1045 if ( 1046 ((E = !f.detectDuplicates), 1047 (c = !f.sortStable && e.slice(0)), 1048 e.sort(W), 1049 E) 1050 ) { 1051 for (; (t = e[i++]); ) t === e[i] && (n = o.push(i)); 1052 for (; n--;
1052 ) e.splice(o[n], 1); 1053 } 1054 return e; 1055 }), 1056 (s = ne.getText = 1057 function (e) { 1058 var t, 1059 o = "", 1060 n = 0, 1061 i = e.nodeType; 1062 if (i) { 1063 if (1 === i || 9 === i || 11 === i) { 1064 if ("string" == typeof e.textContent) return e.textContent; 1065 for (e = e.firstChild; e; e = e.nextSibling) o += s(e); 1066 } else if (3 === i || 4 === i) return e.nodeValue; 1067 } else for (; (t = e[n]); n++) o += s(t); 1068 return o; 1069 }), 1070 (k = ne.selectors = 1071 { 1072 cacheLength: 50, 1073 createPseudo: re, 1074 match: Q, 1075 attrHandle: {}, 1076 find: {}, 1077 relative: { 1078 ">": { dir: "parentNode", first: !0 }, 1079 " ": { dir: "parentNode" }, 1080 "+": { dir: "previousSibling", first: !0 }, 1081 "~": { dir: "previousSibling" }, 1082 }, 1083 preFilter: { 1084 ATTR: function (e) { 1085 return ( 1086 (e[1] = e[1].replace(te, oe)), 1087 (e[3] = (e[4] || e[5] || "").replace(te, oe)), 1088 "~=" === e[2] && (e[3] = " " + e[3] + " "), 1089 e.slice(0, 4) 1090 ); 1091 }, 1092 CHILD: function (e) { 1093 return ( 1094 (e[1] = e[1].toLowerCase()), 1095 "nth" === e[1].slice(0, 3) 1096 ? (e[3] || ne.error(e[0]), 1097 (e[4] = +(e[4] 1098 ? e[5] + (e[6] || 1) 1099 : 2 * ("even" === e[3] || "odd" === e[3]))), 1100 (e[5] = +(e[7] + e[8] || "odd" === e[3]))) 1101 : e[3] && ne.error(e[0]), 1102 e 1103 ); 1104 }, 1105 PSEUDO: function (e) { 1106 var t, 1107 o = !e[5] && e[2]; 1108 return Q.CHILD.test(e[0]) 1109 ? null 1110 : (e[3] && e[4] !== i 1111 ? (e[2] = e[4]) 1112 : o && 1113 Z.test(o) && 1114 (t = fe(o, !0)) && 1115 (t = o.indexOf(")", o.length - t) - o.length) && 1116 ((e[0] = e[0].slice(0, t)), (e[2] = o.slice(0, t))), 1117 e.slice(0, 3)); 1118 }, 1119 }, 1120 filter: { 1121 TAG: function (e) { 1122 var t = e.replace(te, oe).toLowerCase(); 1123 return "*" === e 1124 ? function () { 1125 return !0; 1126 } 1127 : function (e) { 1128 return e.nodeName && e.nodeName.toLowerCase() === t; 1129 }; 1130 }, 1131 CLASS: function (e) { 1132 var t = l[e + " "]; 1133 return ( 1134 t || 1135 ((t = RegExp("(^|" + N + ")" + e + "(" + N + "|$)")) && 1136 l(e, function (e) { 1137 return t.test( 1138 ("string" == typeof e.className && e.className) || 1139 (typeof e.getAttribute != L && 1140 e.getAttribute("class")) || 1141 "" 1142 ); 1143 })) 1144 ); 1145 }, 1146 ATTR: function (o, n, i) { 1147 return function (e) { 1148 var t = ne.attr(e, o); 1149 return null == t 1150 ? "!=" === n 1151 : !n || 1152 ((t += ""), 1153 "=" === n 1154 ? t === i 1155 : "!=" === n 1156 ? t !== i 1157 : "^=" === n 1158 ? i && 0 === t.indexOf(i) 1159 : "*=" === n 1160 ? i && -1 < t.indexOf(i) 1161 : "$=" === n 1162 ? i && t.slice(-i.length) === i 1163 : "~=" === n 1164 ? -1 < (" " + t + " ").indexOf(i) 1165 : "|=" === n && 1166 (t === i || t.slice(0, i.length + 1) === i + "-")); 1167 }; 1168 }, 1169 CHILD: function (h, e, t, f, m) { 1170 var g = "nth" !== h.slice(0, 3), 1171 v = "last" !== h.slice(-4), 1172 y = "of-type" === e; 1173 return 1 === f && 0 === m 1174 ? function (e) { 1175 return !!e.parentNode; 1176 } 1177 : function (e, t, o) { 1178 var n, 1179 i, 1180 s, 1181 r, 1182 a, 1183 l, 1184 c = g != v ? "nextSibling" : "previousSibling", 1185 d = e.parentNode, 1186 u = y && e.nodeName.toLowerCase(), 1187 p = !o && !y; 1188 if (d) { 1189 if (g) { 1190 for (; c; ) { 1191 for (s = e; (s = s[c]); ) 1192 if ( 1193 y 1194 ? s.nodeName.toLowerCase() === u 1195 : 1 === s.nodeType 1196 ) 1197 return !1; 1198 l = c = "only" === h && !l && "nextSibling"; 1199 } 1200 return !0; 1201 } 1202 if (((l = [v ? d.firstChild : d.lastChild]), v && p)) { 1203 for ( 1204 a = 1205 (n = (i = d[b] || (d[b] = {}))[h] || [])[0] === 1206 z && n[1], 1207 r = n[0] === z && n[2], 1208 s = a && d.childNodes[a]; 1209 (s = (++a && s && s[c]) || (r = a = 0) || l.pop()); 1210 1211 ) 1212 if (1 === s.nodeType && ++r && s === e) { 1213 i[h] = [z, a, r]; 1214 break; 1215 } 1216 } else if ( 1217 p && 1218 (n = (e[b] || (e[b] = {}))[h]) && 1219 n[0] === z 1220 ) 1221 r = n[1]; 1222 else 1223 for ( 1224 ; 1225 (s = 1226 (++a && s && s[c]) || (r = a = 0) || l.pop()) && 1227 ((y 1228 ? s.nodeName.toLowerCase() !== u 1229 : 1 !== s.nodeType) || 1230 !++r || 1231 (p && ((s[b] || (s[b] = {}))[h] = [z, r]), 1232 s !== e)); 1233 1234 ); 1235 return (r -= m) === f || (0 == r % f && 0 <= r / f); 1236 } 1237 }; 1238 }, 1239 PSEUDO: function (e, s) { 1240 var t, 1241 r = 1242 k.pseudos[e] || 1243 k.setFilters[e.toLowerCase()] || 1244 ne.error("unsupported pseudo: " + e); 1245 return r[b] 1246 ? r(s) 1247 : 1 < r.length 1248 ? ((t = [e, e, "", s]), 1249 k.setFilters.hasOwnProperty(e.toLowerCase()) 1250 ? re(function (e, t) { 1251 for (var o, n = r(e, s), i = n.length; i--; ) 1252 e[(o = D.call(e, n[i]))] = !(t[o] = n[i]); 1253 }) 1254 : function (e) { 1255 return r(e, 0, t); 1256 }) 1257 : r; 1258 }, 1259 }, 1260 pseudos: { 1261 not: re(function (e) { 1262 var n = [], 1263 i = [], 1264 a = m(e.replace(B, "$1")); 1265 return a[b] 1266 ? re(function (e, t, o, n) { 1267 for (var i, s = a(e, null, n, []), r = e.length; r--; ) 1268 (i = s[r]) && (e[r] = !(t[r] = i)); 1269 }) 1270 : function (e, t, o) { 1271 return (n[0] = e), a(n, null, o, i), !i.pop(); 1272 }; 1273 }), 1274 has: re(function (t) { 1275 return function (e) { 1276 return 0 < ne(t, e).length; 1277 }; 1278 }), 1279 contains: re(function (t) { 1280 return function (e) { 1281 return -1 < (e.textContent || e.innerText || s(e)).indexOf(t); 1282 }; 1283 }), 1284 lang: re(function (o) { 1285 return ( 1286 Y.test(o || "") || ne.error("unsupported lang: " + o), 1287 (o = o.replace(te, oe).toLowerCase()), 1288 function (e) { 1289 var t; 1290 do { 1291 if ( 1292 (t = v 1293 ? e.lang 1294 : e.getAttribute("xml:lang") || 1295 e.getAttribute("lang")) 1296 ) 1297 return ( 1298 (t = t.toLowerCase()) === o || 1299 0 === t.indexOf(o + "-") 1300 ); 1301 } while ((e = e.parentNode) && 1 === e.nodeType); 1302 return !1; 1303 } 1304 ); 1305 }), 1306 target: function (e) { 1307 var t = o.location && o.location.hash; 1308 return t && t.slice(1) === e.id; 1309 }, 1310 root: function (e) { 1311 return e === r; 1312 }, 1313 focus: function (e) { 1314 return ( 1315 e === C.activeElement && 1316 (!C.hasFocus || C.hasFocus()) && 1317 !!(e.type || e.href || ~e.tabIndex) 1318 ); 1319 }, 1320 enabled: function (e) { 1321 return !1 === e.disabled; 1322 }, 1323 disabled: function (e) { 1324 return !0 === e.disabled; 1325 }, 1326 checked: function (e) { 1327 var t = e.nodeName.toLowerCase(); 1328 return ( 1329 ("input" === t && !!e.checked) || 1330 ("option" === t && !!e.selected) 1331 ); 1332 }, 1333 selected: function (e) { 1334 return ( 1335 e.parentNode && e.parentNode.selectedIndex, !0 === e.selected 1336 ); 1337 }, 1338 empty: function (e) { 1339 for (e = e.firstChild; e; e = e.nextSibling)
1340 if ("@" < e.nodeName || 3 === e.nodeType || 4 === e.nodeType) 1341 return !1; 1342 return !0; 1343 }, 1344 parent: function (e) { 1345 return !k.pseudos.empty(e); 1346 }, 1347 header: function (e) { 1348 return J.test(e.nodeName); 1349 }, 1350 input: function (e) { 1351 return K.test(e.nodeName); 1352 }, 1353 button: function (e) { 1354 var t = e.nodeName.toLowerCase(); 1355 return ("input" === t && "button" === e.type) || "button" === t; 1356 }, 1357 text: function (e) { 1358 var t; 1359 return ( 1360 "input" === e.nodeName.toLowerCase() && 1361 "text" === e.type && 1362 (null == (t = e.getAttribute("type")) || 1363 t.toLowerCase() === e.type) 1364 ); 1365 }, 1366 first: he(function () { 1367 return [0]; 1368 }), 1369 last: he(function (e, t) { 1370 return [t - 1]; 1371 }), 1372 eq: he(function (e, t, o) { 1373 return [o < 0 ? o + t : o]; 1374 }), 1375 even: he(function (e, t) { 1376 for (var o = 0; o < t; o += 2) e.push(o); 1377 return e; 1378 }), 1379 odd: he(function (e, t) { 1380 for (var o = 1; o < t; o += 2) e.push(o); 1381 return e; 1382 }), 1383 lt: he(function (e, t, o) { 1384 for (var n = o < 0 ? o + t : o; 0 <= --n; ) e.push(n); 1385 return e; 1386 }), 1387 gt: he(function (e, t, o) { 1388 for (var n = o < 0 ? o + t : o; t > ++n; ) e.push(n); 1389 return e; 1390 }), 1391 }, 1392 }), 1393 { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 })) 1394 k.pseudos[e] = (function (t) { 1395 return function (e) { 1396 return "input" === e.nodeName.toLowerCase() && e.type === t; 1397 }; 1398 })(e); 1399 for (e in { submit: !0, reset: !0 }) 1400 k.pseudos[e] = (function (o) { 1401 return function (e) { 1402 var t = e.nodeName.toLowerCase(); 1403 return ("input" === t || "button" === t) && e.type === o; 1404 }; 1405 })(e); 1406 function fe(e, t) { 1407 var o, 1408 n, 1409 i, 1410 s, 1411 r, 1412 a, 1413 l, 1414 c = p[e + " "]; 1415 if (c) return t ? 0 : c.slice(0); 1416 for (r = e, a = [], l = k.preFilter; r; ) { 1417 for (s in ((o && !(n = _.exec(r))) || 1418 (n && (r = r.slice(n[0].length) || r), a.push((i = []))), 1419 (o = !1), 1420 (n = q.exec(r)) && 1421 ((o = n.shift()), 1422 i.push({ value: o, type: n[0].replace(B, " ") }), 1423 (r = r.slice(o.length))), 1424 k.filter)) 1425 !(n = Q[s].exec(r)) || 1426 (l[s] && !(n = l[s](n))) || 1427 ((o = n.shift()), 1428 i.push({ value: o, type: s, matches: n }), 1429 (r = r.slice(o.length))); 1430 if (!o) break; 1431 } 1432 return t ? r.length : r ? ne.error(e) : p(e, a).slice(0); 1433 } 1434 function me(e) { 1435 for (var t = 0, o = e.length, n = ""; t < o; t++) n += e[t].value; 1436 return n; 1437 } 1438 function ge(a, e, t) { 1439 var l = e.dir, 1440 c = t && "parentNode" === l, 1441 d = u++; 1442 return e.first 1443 ? function (e, t, o) { 1444 for (; (e = e[l]); ) 1445 if (1 === e.nodeType || c) return a(e, t, o); 1446 } 1447 : function (e, t, o) { 1448 var n, 1449 i, 1450 s, 1451 r = z + " " + d; 1452 if (o) { 1453 for (; (e = e[l]); ) 1454 if ((1 === e.nodeType || c) && a(e, t, o)) return !0; 1455 } else 1456 for (; (e = e[l]); ) 1457 if (1 === e.nodeType || c)
1458 if ((i = (s = e[b] || (e[b] = {}))[l]) && i[0] === r) { 1459 if (!0 === (n = i[1]) || n === x) return !0 === n; 1460 } else if ( 1461 (((i = s[l] = [r])[1] = a(e, t, o) || x), !0 === i[1]) 1462 ) 1463 return !0; 1464 }; 1465 } 1466 function ve(i) { 1467 return 1 < i.length 1468 ? function (e, t, o) { 1469 for (var n = i.length; n--; ) if (!i[n](e, t, o)) return !1; 1470 return !0; 1471 } 1472 : i[0]; 1473 } 1474 function ye(e, t, o, n, i) { 1475 for (var s, r = [], a = 0, l = e.length, c = null != t; a < l; a++) 1476 !(s = e[a]) || (o && !o(s, n, i)) || (r.push(s), c && t.push(a)); 1477 return r; 1478 } 1479 function we(h, f, m, g, v, e) { 1480 return ( 1481 g && !g[b] && (g = we(g)), 1482 v && !v[b] && (v = we(v, e)), 1483 re(function (e, t, o, n) { 1484 var i, 1485 s, 1486 r, 1487 a = [], 1488 l = [], 1489 c = t.length, 1490 d = 1491 e || 1492 (function (e, t, o) { 1493 for (var n = 0, i = t.length; n < i; n++) ne(e, t[n], o); 1494 return o; 1495 })(f || "*", o.nodeType ? [o] : o, []), 1496 u = !h || (!e && f) ? d : ye(d, a, h, o, n), 1497 p = m ? (v || (e ? h : c || g) ? [] : t) : u; 1498 if ((m && m(u, p, o, n), g)) 1499 for (i = ye(p, l), g(i, [], o, n), s = i.length; s--; ) 1500 (r = i[s]) && (p[l[s]] = !(u[l[s]] = r)); 1501 if (e) { 1502 if (v || h) { 1503 if (v) { 1504 for (i = [], s = p.length; s--; ) 1505 (r = p[s]) && i.push((u[s] = r)); 1506 v(null, (p = []), i, n); 1507 } 1508 for (s = p.length; s--; ) 1509 (r = p[s]) && 1510 -1 < (i = v ? D.call(e, r) : a[s]) && 1511 (e[i] = !(t[i] = r)); 1512 } 1513 } else (p = ye(p === t ? p.splice(c, p.length) : p)), v ? v(null, t, p, n) : O.apply(t, p); 1514 }) 1515 ); 1516 } 1517 function be(g, v) { 1518 function e(e, t, o, n, i) { 1519 var s, 1520 r, 1521 a, 1522 l = [], 1523 c = 0, 1524 d = "0", 1525 u = e && [], 1526 p = null != i, 1527 h = T, 1528 f = e || (b && k.find.TAG("*", (i && t.parentNode) || t)), 1529 m = (z += null == h ? 1 : Math.random() || 0.1); 1530 for (p && ((T = t !== C && t), (x = y)); null != (s = f[d]); d++) { 1531 if (b && s) { 1532 for (r = 0; (a = g[r++]); ) 1533 if (a(s, t, o)) { 1534 n.push(s); 1535 break; 1536 } 1537 p && ((z = m), (x = ++y)); 1538 } 1539 w && ((s = !a && s) && c--, e && u.push(s)); 1540 } 1541 if (((c += d), w && d !== c)) { 1542 for (r = 0; (a = v[r++]); ) a(u, l, t, o); 1543 if (e) { 1544 if (0 < c) for (; d--; ) u[d] || l[d] || (l[d] = $.call(n)); 1545 l = ye(l); 1546 } 1547 O.apply(n, l), 1548 p && !e && 0 < l.length && 1 < c + v.length && ne.uniqueSort(n); 1549 } 1550 return p && ((z = m), (T = h)), u; 1551 } 1552 var y = 0, 1553 w = 0 < v.length, 1554 b = 0 < g.length; 1555 return w ? re(e) : e; 1556 } 1557 function xe() {} 1558 (m = ne.compile = 1559 function (e, t) { 1560 var o, 1561 n = [], 1562 i = [], 1563 s = h[e + " "]; 1564 if (!s) { 1565 for (o = (t = t || fe(e)).length; o--; ) 1566 (s = (function e(t) { 1567 for ( 1568 var n, 1569 o, 1570 i, 1571 s = t.length, 1572 r = k.relative[t[0].type], 1573 a = r || k.relative[" "],
1574 l = r ? 1 : 0, 1575 c = ge( 1576 function (e) { 1577 return e === n; 1578 }, 1579 a, 1580 !0 1581 ), 1582 d = ge( 1583 function (e) { 1584 return -1 < D.call(n, e); 1585 }, 1586 a, 1587 !0 1588 ), 1589 u = [ 1590 function (e, t, o) { 1591 return ( 1592 (!r && (o || t !== T)) || 1593 ((n = t).nodeType ? c : d)(e, t, o) 1594 ); 1595 }, 1596 ]; 1597 l < s; 1598 l++ 1599 ) 1600 if ((o = k.relative[t[l].type])) u = [ge(ve(u), o)]; 1601 else { 1602 if ( 1603 (o = k.filter[t[l].type].apply(null, t[l].matches))[b] 1604 ) { 1605 for (i = ++l; i < s && !k.relative[t[i].type]; i++); 1606 return we( 1607 1 < l && ve(u), 1608 1 < l && 1609 me( 1610 t 1611 .slice(0, l - 1) 1612 .concat({ 1613 value: " " === t[l - 2].type ? "*" : "", 1614 }) 1615 ).replace(B, "$1"), 1616 o, 1617 l < i && e(t.slice(l, i)), 1618 i < s && e((t = t.slice(i))), 1619 i < s && me(t) 1620 ); 1621 } 1622 u.push(o); 1623 } 1624 return ve(u); 1625 })(t[o]))[b] 1626 ? n.push(s) 1627 : i.push(s); 1628 s = h(e, be(i, n)); 1629 } 1630 return s; 1631 }), 1632 (k.pseudos.nth = k.pseudos.eq), 1633 (xe.prototype = k.filters = k.pseudos), 1634 (k.setFilters = new xe()), 1635 (f.sortStable = b.split("").sort(W).join("") === b), 1636 g(), 1637 [0, 0].sort(W), 1638 (f.detectDuplicates = E), 1639 (ke.find = ne), 1640 (ke.expr = ne.selectors), 1641 (ke.expr[":"] = ke.expr.pseudos), 1642 (ke.unique = ne.uniqueSort), 1643 (ke.text = ne.getText), 1644 (ke.isXMLDoc = ne.isXML), 1645 (ke.contains = ne.contains); 1646 })(f); 1647 var D = {}; 1648 (ke.Callbacks = function (i) { 1649 var e, o; 1650 i = 1651 "string" == typeof i 1652 ? D[i] || 1653 ((o = D[(e = i)] = {}), 1654 ke.each(e.match(C) || [], function (e, t) { 1655 o[t] = !0; 1656 }), 1657 o) 1658 : ke.extend({}, i); 1659 var n, 1660 t, 1661 s, 1662 r, 1663 a, 1664 l, 1665 c = [], 1666 d = !i.once && [], 1667 u = function (e) { 1668 for ( 1669 t = i.memory && e, s = !0, a = l || 0, l = 0, r = c.length, n = !0; 1670 c && a < r; 1671 a++ 1672 ) 1673 if (!1 === c[a].apply(e[0], e[1]) && i.stopOnFalse) { 1674 t = !1; 1675 break; 1676 } 1677 (n = !1), 1678 c && (d ? d.length && u(d.shift()) : t ? (c = []) : p.disable()); 1679 }, 1680 p = { 1681 add: function () { 1682 var e; 1683 return ( 1684 c && 1685 ((e = c.length), 1686 (function n(e) { 1687 ke.each(e, function (e, t) { 1688 var o = ke.type(t); 1689 "function" === o 1690 ? (i.unique && p.has(t)) || c.push(t) 1691 : t && t.length && "string" !== o && n(t); 1692 }); 1693 })(arguments), 1694 n ? (r = c.length) : t && ((l = e), u(t))), 1695 this 1696 ); 1697 }, 1698 remove: function () { 1699 return ( 1700 c && 1701 ke.each(arguments, function (e, t) { 1702 for (var o; -1 < (o = ke.inArray(t, c, o)); ) 1703 c.splice(o, 1), n && (o <= r && r--, o <= a && a--); 1704 }), 1705 this 1706 ); 1707 }, 1708 has: function (e) { 1709 return e ? -1 < ke.inArray(e, c) : !(!c || !c.length); 1710 }, 1711 empty: function () { 1712 return (c = []), (r = 0), this; 1713 }, 1714 disable: function () { 1715 return (c = d = t = T), this; 1716 }, 1717 disabled: function () { 1718 return !c; 1719 }, 1720 lock: function () { 1721 return (d = T), t || p.disable(), this; 1722 }, 1723 locked: function () { 1724 return !d; 1725 }, 1726 fireWith: function (e, t) { 1727 return ( 1728 (t = [e, (t = t || []).slice ? t.slice() : t]), 1729 !c || (s && !d) || (n ? d.push(t) : u(t)), 1730 this 1731 ); 1732 }, 1733 fire: function () { 1734 return p.fireWith(this, arguments), this; 1735 }, 1736 fired: function () { 1737 return !!s; 1738 }, 1739 }; 1740 return p; 1741 }), 1742 ke.extend({ 1743 Deferred: function (e) { 1744 var r = [ 1745 ["resolve", "done", ke.Callbacks("once memory"), "resolved"], 1746 ["reject", "fail", ke.Callbacks("once memory"), "rejected"], 1747 ["notify", "progress", ke.Callbacks("memory")], 1748 ], 1749 i = "pending", 1750 a = { 1751 state: function () { 1752 return i; 1753 }, 1754 always: function () { 1755 return l.done(arguments).fail(arguments), this; 1756 }, 1757 then: function () { 1758 var s = arguments; 1759 return ke 1760 .Deferred(function (i) { 1761 ke.each(r, function (e, t) { 1762 var o = t[0], 1763 n = ke.isFunction(s[e]) && s[e]; 1764 l[t[1]](function () { 1765 var e = n && n.apply(this, arguments); 1766 e && ke.isFunction(e.promise) 1767 ? e 1768 .promise() 1769 .done(i.resolve) 1770 .fail(i.reject) 1771 .progress(i.notify) 1772 : i[o + "With"]( 1773 this === a ? i.promise() : this, 1774 n ? [e] : arguments 1775 ); 1776 }); 1777 }), 1778 (s = null); 1779 }) 1780 .promise(); 1781 }, 1782 promise: function (e) { 1783 return null != e ? ke.extend(e, a) : a; 1784 }, 1785 }, 1786 l = {}; 1787 return ( 1788 (a.pipe = a.then), 1789 ke.each(r, function (e, t) { 1790 var o = t[2], 1791 n = t[3]; 1792 (a[t[1]] = o.add), 1793 n && 1794 o.add( 1795 function () { 1796 i = n; 1797 }, 1798 r[1 ^ e][2].disable, 1799 r[2][2].lock 1800 ), 1801 (l[t[0]] = function () { 1802 return ( 1803 l[t[0] + "With"](this === l ? a : this, arguments), this 1804 ); 1805 }), 1806 (l[t[0] + "With"] = o.fireWith); 1807 }), 1808 a.promise(l), 1809 e && e.call(l, l),
1810 l 1811 ); 1812 }, 1813 when: function (e) { 1814 function t(t, o, n) { 1815 return function (e) { 1816 (o[t] = this), 1817 (n[t] = 1 < arguments.length ? p.call(arguments) : e), 1818 n === i ? c.notifyWith(o, n) : --l || c.resolveWith(o, n); 1819 }; 1820 } 1821 var i, 1822 o, 1823 n, 1824 s = 0, 1825 r = p.call(arguments), 1826 a = r.length, 1827 l = 1 !== a || (e && ke.isFunction(e.promise)) ? a : 0, 1828 c = 1 === l ? e : ke.Deferred(); 1829 if (1 < a) 1830 for (i = Array(a), o = Array(a), n = Array(a); s < a; s++) 1831 r[s] && ke.isFunction(r[s].promise) 1832 ? r[s] 1833 .promise() 1834 .done(t(s, n, r)) 1835 .fail(c.reject) 1836 .progress(t(s, o, i)) 1837 : --l; 1838 return l || c.resolveWith(n, r), c.promise(); 1839 }, 1840 }), 1841 (ke.support = (function (s) { 1842 var e, 1843 t, 1844 o, 1845 n, 1846 i, 1847 r, 1848 a, 1849 l, 1850 c, 1851 d = m.createElement("div"); 1852 if ( 1853 (d.setAttribute("className", "t"), 1854 (d.innerHTML = 1855 " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"), 1856 (e = d.getElementsByTagName("*") || []), 1857 !(t = d.getElementsByTagName("a")[0]) || !t.style || !e.length) 1858 ) 1859 return s; 1860 (r = (n = m.createElement("select")).appendChild( 1861 m.createElement("option") 1862 )), 1863 (o = d.getElementsByTagName("input")[0]), 1864 (t.style.cssText = "top:1px;float:left;opacity:.5"), 1865 (s.getSetAttribute = "t" !== d.className), 1866 (s.leadingWhitespace = 3 === d.firstChild.nodeType), 1867 (s.tbody = !d.getElementsByTagName("tbody").length), 1868 (s.htmlSerialize = !!d.getElementsByTagName("link").length), 1869 (s.style = /top/.test(t.getAttribute("style"))), 1870 (s.hrefNormalized = "/a" === t.getAttribute("href")), 1871 (s.opacity = /^0.5/.test(t.style.opacity)), 1872 (s.cssFloat = !!t.style.cssFloat), 1873 (s.checkOn = !!o.value), 1874 (s.optSelected = r.selected), 1875 (s.enctype = !!m.createElement("form").enctype), 1876 (s.html5Clone = 1877 "<:nav></:nav>" !== m.createElement("nav").cloneNode(!0).outerHTML), 1878 (s.inlineBlockNeedsLayout = !1), 1879 (s.shrinkWrapBlocks = !1), 1880 (s.pixelPosition = !1), 1881 (s.deleteExpando = !0), 1882 (s.noCloneEvent = !0), 1883 (s.reliableMarginRight = !0), 1884 (s.boxSizingReliable = !0), 1885 (o.checked = !0), 1886 (s.noCloneChecked = o.cloneNode(!0).checked), 1887 (n.disabled = !0), 1888 (s.optDisabled = !r.disabled); 1889 try { 1890 delete d.test; 1891 } catch (e) { 1892 s.deleteExpando = !1; 1893 } 1894 for (c in ((o = m.createElement("input")).setAttribute("value", ""), 1895 (s.input = "" === o.getAttribute("value")), 1896 (o.value = "t"), 1897 o.setAttribute("type", "radio"), 1898 (s.radioValue = "t" === o.value), 1899 o.setAttribute("checked", "t"), 1900 o.setAttribute("name", "t"), 1901 (i = m.createDocumentFragment()).appendChild(o), 1902 (s.appendChecked = o.checked), 1903 (s.checkClone = i.cloneNode(!0).cloneNode(!0).lastChild.checked), 1904 d.attachEvent && 1905 (d.attachEvent("onclick", function () { 1906 s.noCloneEvent = !1; 1907 }), 1908 d.cloneNode(!0).click()), 1909 { submit: !0, change: !0, focusin: !0 })) 1910 d.setAttribute((a = "on" + c), "t"), 1911 (s[c + "Bubbles"] = a in f || !1 === d.attributes[a].expando); 1912 for (c in ((d.style.backgroundClip = "content-box"), 1913 (d.cloneNode(!0).style.backgroundClip = ""), 1914 (s.clearCloneStyle = "content-box" === d.style.backgroundClip), 1915 ke(s))) 1916 break; 1917 return ( 1918 (s.ownLast = "0" !== c), 1919 ke(function () { 1920 var e, 1921 t, 1922 o, 1923 n = 1924 "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;", 1925 i = m.getElementsByTagName("body")[0]; 1926 i && 1927 (((e = m.createElement("div")).style.cssText = 1928 "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px"), 1929 i.appendChild(e).appendChild(d), 1930 (d.innerHTML = "<table><tr><td></td><td>t</td></tr></table>"), 1931 ((o = d.getElementsByTagName("td"))[0].style.cssText = 1932 "padding:0;margin:0;border:0;display:none"), 1933 (l = 0 === o[0].offsetHeight), 1934 (o[0].style.display = ""), 1935 (o[1].style.display = "none"), 1936 (s.reliableHiddenOffsets = l && 0 === o[0].offsetHeight), 1937 (d.innerHTML = ""), 1938 (d.style.cssText = 1939 "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;"), 1940 ke.swap(i, null != i.style.zoom ? { zoom: 1 } : {}, function () { 1941 s.boxSizing = 4 === d.offsetWidth; 1942 }), 1943 f.getComputedStyle && 1944 ((s.pixelPosition = 1945 "1%" !== (f.getComputedStyle(d, null) || {}).top), 1946 (s.boxSizingReliable = 1947 "4px" === 1948 (f.getComputedStyle(d, null) || { width: "4px" }).width), 1949 ((t = d.appendChild(m.createElement("div"))).style.cssText = 1950 d.style.cssText = 1951 n), 1952 (t.style.marginRight = t.style.width = "0"), 1953 (d.style.width = "1px"), 1954 (s.reliableMarginRight = !parseFloat( 1955 (f.getComputedStyle(t, null) || {}).marginRight 1956 ))), 1957 typeof d.style.zoom !== v && 1958 ((d.innerHTML = ""), 1959 (d.style.cssText = 1960 n + "width:1px;padding:1px;display:inline;zoom:1"), 1961 (s.inlineBlockNeedsLayout = 3 === d.offsetWidth), 1962 (d.style.display = "block"), 1963 (d.innerHTML = "<div></div>"), 1964 (d.firstChild.style.width = "5px"), 1965 (s.shrinkWrapBlocks = 3 !== d.offsetWidth), 1966 s.inlineBlockNeedsLayout && (i.style.zoom = 1)), 1967 i.removeChild(e), 1968 (e = d = o = t = null)); 1969 }), 1970 (e = n = i = r = t = o = null),
1971 s 1972 ); 1973 })({})); 1974 var I = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, 1975 N = /([A-Z])/g; 1976 function M(e, t, o, n) { 1977 if (ke.acceptData(e)) { 1978 var i, 1979 s, 1980 r = ke.expando, 1981 a = e.nodeType, 1982 l = a ? ke.cache : e, 1983 c = a ? e[r] : e[r] && r; 1984 if ((c && l[c] && (n || l[c].data)) || o !== T || "string" != typeof t) 1985 return ( 1986 l[(c = c || (a ? (e[r] = u.pop() || ke.guid++) : r))] || 1987 (l[c] = a ? {} : { toJSON: ke.noop }), 1988 ("object" != typeof t && "function" != typeof t) || 1989 (n 1990 ? (l[c] = ke.extend(l[c], t)) 1991 : (l[c].data = ke.extend(l[c].data, t))), 1992 (s = l[c]), 1993 n || (s.data || (s.data = {}), (s = s.data)), 1994 o !== T && (s[ke.camelCase(t)] = o), 1995 "string" == typeof t 1996 ? null == (i = s[t]) && (i = s[ke.camelCase(t)]) 1997 : (i = s), 1998 i 1999 ); 2000 } 2001 } 2002 function P(e, t, o) { 2003 if (ke.acceptData(e)) { 2004 var n, 2005 i, 2006 s = e.nodeType, 2007 r = s ? ke.cache : e, 2008 a = s ? e[ke.expando] : ke.expando; 2009 if (r[a]) { 2010 if (t && (n = o ? r[a] : r[a].data)) { 2011 i = (t = ke.isArray(t) 2012 ? t.concat(ke.map(t, ke.camelCase)) 2013 : t in n 2014 ? [t] 2015 : (t = ke.camelCase(t)) in n 2016 ? [t] 2017 : t.split(" ")).length; 2018 for (; i--; ) delete n[t[i]]; 2019 if (o ? !R(n) : !ke.isEmptyObject(n)) return; 2020 } 2021 (o || (delete r[a].data, R(r[a]))) && 2022 (s 2023 ? ke.cleanData([e], !0) 2024 : ke.support.deleteExpando || r != r.window 2025 ? delete r[a] 2026 : (r[a] = null)); 2027 } 2028 } 2029 } 2030 function j(e, t, o) { 2031 if (o === T && 1 === e.nodeType) { 2032 var n = "data-" + t.replace(N, "-$1").toLowerCase(); 2033 if ("string" == typeof (o = e.getAttribute(n))) { 2034 try { 2035 o = 2036 "true" === o || 2037 ("false" !== o && 2038 ("null" === o 2039 ? null 2040 : +o + "" === o 2041 ? +o 2042 : I.test(o) 2043 ? ke.parseJSON(o) 2044 : o)); 2045 } catch (e) {} 2046 ke.data(e, t, o); 2047 } else o = T; 2048 } 2049 return o; 2050 } 2051 function R(e) { 2052 var t; 2053 for (t in e) 2054 if (("data" !== t || !ke.isEmptyObject(e[t])) && "toJSON" !== t) return; 2055 return 1; 2056 } 2057 ke.extend({ 2058 cache: {}, 2059 noData: { 2060 applet: !0, 2061 embed: !0, 2062 object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", 2063 }, 2064 hasData: function (e) { 2065 return (
2066 !!(e = e.nodeType ? ke.cache[e[ke.expando]] : e[ke.expando]) && !R(e) 2067 ); 2068 }, 2069 data: function (e, t, o) { 2070 return M(e, t, o); 2071 }, 2072 removeData: function (e, t) { 2073 return P(e, t); 2074 }, 2075 _data: function (e, t, o) { 2076 return M(e, t, o, !0); 2077 }, 2078 _removeData: function (e, t) { 2079 return P(e, t, !0); 2080 }, 2081 acceptData: function (e) { 2082 if (e.nodeType && 1 !== e.nodeType && 9 !== e.nodeType) return !1; 2083 var t = e.nodeName && ke.noData[e.nodeName.toLowerCase()]; 2084 return !t || (!0 !== t && e.getAttribute("classid") === t); 2085 }, 2086 }), 2087 ke.fn.extend({ 2088 data: function (e, t) { 2089 var o, 2090 n, 2091 i = null, 2092 s = 0, 2093 r = this[0]; 2094 if (e !== T) 2095 return "object" == typeof e 2096 ? this.each(function () { 2097 ke.data(this, e); 2098 }) 2099 : 1 < arguments.length 2100 ? this.each(function () { 2101 ke.data(this, e, t); 2102 }) 2103 : r 2104 ? j(r, e, ke.data(r, e)) 2105 : null; 2106 if ( 2107 this.length && 2108 ((i = ke.data(r)), 1 === r.nodeType && !ke._data(r, "parsedAttrs")) 2109 ) { 2110 for (o = r.attributes; o.length > s; s++) 2111 0 === (n = o[s].name).indexOf("data-") && 2112 j(r, (n = ke.camelCase(n.slice(5))), i[n]); 2113 ke._data(r, "parsedAttrs", !0); 2114 } 2115 return i; 2116 }, 2117 removeData: function (e) { 2118 return this.each(function () { 2119 ke.removeData(this, e); 2120 }); 2121 }, 2122 }), 2123 ke.extend({ 2124 queue: function (e, t, o) { 2125 var n; 2126 return e 2127 ? ((t = (t || "fx") + "queue"), 2128 (n = ke._data(e, t)), 2129 o && 2130 (!n || ke.isArray(o) 2131 ? (n = ke._data(e, t, ke.makeArray(o))) 2132 : n.push(o)), 2133 n || []) 2134 : T; 2135 }, 2136 dequeue: function (e, t) { 2137 t = t || "fx"; 2138 var o = ke.queue(e, t), 2139 n = o.length, 2140 i = o.shift(), 2141 s = ke._queueHooks(e, t); 2142 "inprogress" === i && ((i = o.shift()), n--), 2143 i && 2144 ("fx" === t && o.unshift("inprogress"), 2145 delete s.stop, 2146 i.call( 2147 e, 2148 function () { 2149 ke.dequeue(e, t); 2150 }, 2151 s 2152 )), 2153 !n && s && s.empty.fire(); 2154 }, 2155 _queueHooks: function (e, t) { 2156 var o = t + "queueHooks"; 2157 return ( 2158 ke._data(e, o) || 2159 ke._data(e, o, { 2160 empty: ke.Callbacks("once memory").add(function () { 2161 ke._removeData(e, t + "queue"), ke._removeData(e, o); 2162 }), 2163 }) 2164 ); 2165 }, 2166 }), 2167 ke.fn.extend({ 2168 queue: function (t, o) { 2169 var e = 2; 2170 return ( 2171 "string" != typeof t && ((o = t), (t = "fx"), e--), 2172 arguments.length < e 2173 ? ke.queue(this[0], t) 2174 : o === T 2175 ? this 2176 : this.each(function () { 2177 var e = ke.queue(this, t, o); 2178 ke._queueHooks(this, t), 2179 "fx" === t && "inprogress" !== e[0] && ke.dequeue(this, t); 2180 }) 2181 ); 2182 }, 2183 dequeue: function (e) { 2184 return this.each(function () { 2185 ke.dequeue(this, e); 2186 }); 2187 }, 2188 delay: function (n, e) { 2189 return ( 2190 (n = (ke.fx && ke.fx.speeds[n]) || n), 2191 (e = e || "fx"), 2192 this.queue(e, function (e, t) { 2193 var o = setTimeout(e, n); 2194 t.stop = function () { 2195 clearTimeout(o); 2196 }; 2197 }) 2198 ); 2199 }, 2200 clearQueue: function (e) { 2201 return this.queue(e || "fx", []); 2202 }, 2203 promise: function (e, t) { 2204 function o() { 2205 --i || s.resolveWith(r, [r]); 2206 } 2207 var n, 2208 i = 1, 2209 s = ke.Deferred(), 2210 r = this, 2211 a = this.length; 2212 for ("string" != typeof e && ((t = e), (e = T)), e = e || "fx"; a--; ) 2213 (n = ke._data(r[a], e + "queueHooks")) && 2214 n.empty && 2215 (i++, n.empty.add(o)); 2216 return o(), s.promise(t); 2217 }, 2218 }); 2219 var B, 2220 _, 2221 q = /[\t\r\n\f]/g, 2222 U = /\r/g, 2223 X = /^(?:input|select|textarea|button|object)$/i, 2224 Z = /^(?:a|area)$/i, 2225 Y = /^(?:checked|selected)$/i, 2226 Q = ke.support.getSetAttribute, 2227 V = ke.support.input; 2228 ke.fn.extend({ 2229 attr: function (e, t) { 2230 return ke.access(this, ke.attr, e, t, 1 < arguments.length); 2231 }, 2232 removeAttr: function (e) { 2233 return this.each(function () { 2234 ke.removeAttr(this, e); 2235 }); 2236 }, 2237 prop: function (e, t) { 2238 return ke.access(this, ke.prop, e, t, 1 < arguments.length); 2239 }, 2240 removeProp: function (e) { 2241 return ( 2242 (e = ke.propFix[e] || e), 2243 this.each(function () { 2244 try { 2245 (this[e] = T), delete this[e]; 2246 } catch (e) {} 2247 }) 2248 ); 2249 }, 2250 addClass: function (t) { 2251 var e, 2252 o, 2253 n, 2254 i, 2255 s, 2256 r = 0, 2257 a = this.length, 2258 l = "string" == typeof t && t; 2259 if (ke.isFunction(t)) 2260 return this.each(function (e) { 2261 ke(this).addClass(t.call(this, e, this.className)); 2262 }); 2263 if (l) 2264 for (e = (t || "").match(C) || []; r < a; r++) 2265 if ( 2266 (n = 2267 1 === (o = this[r]).nodeType && 2268 (o.className ? (" " + o.className + " ").replace(q, " ") : " ")) 2269 ) { 2270 for (s = 0; (i = e[s++]); ) 2271 n.indexOf(" " + i + " ") < 0 && (n += i + " "); 2272 o.className = ke.trim(n); 2273 } 2274 return this; 2275 }, 2276 removeClass: function (t) { 2277 var e, 2278 o, 2279 n, 2280 i, 2281 s, 2282 r = 0, 2283 a = this.length, 2284 l = 0 === arguments.length || ("string" == typeof t && t); 2285 if (ke.isFunction(t)) 2286 return this.each(function (e) { 2287 ke(this).removeClass(t.call(this, e, this.className)); 2288 }); 2289 if (l) 2290 for (e = (t || "").match(C) || []; r < a; r++) 2291 if ( 2292 (n = 2293 1 === (o = this[r]).nodeType && 2294 (o.className ? (" " + o.className + " ").replace(q, " ") : "")) 2295 ) { 2296 for (s = 0; (i = e[s++]); ) 2297 for (; 0 <= n.indexOf(" " + i + " "); ) 2298 n = n.replace(" " + i + " ", " "); 2299 o.className = t ? ke.trim(n) : ""; 2300 } 2301 return this; 2302 }, 2303 toggleClass: function (s, r) { 2304 var a = typeof s, 2305 l = "boolean" == typeof r; 2306 return ke.isFunction(s) 2307 ? this.each(function (e) { 2308 ke(this).toggleClass(s.call(this, e, this.className, r), r); 2309 }) 2310 : this.each(function () { 2311 if ("string" == a) 2312 for ( 2313 var e, t = 0, o = ke(this), n = r, i = s.match(C) || []; 2314 (e = i[t++]); 2315 2316 ) 2317 (n = l ? n : !o.hasClass(e)), 2318 o[n ? "addClass" : "removeClass"](e); 2319 else 2320 (a !== v && "boolean" != a) || 2321 (this.className && 2322 ke._data(this, "__className__", this.className), 2323 (this.className = 2324 (!this.className && 2325 !1 !== s && 2326 ke._data(this, "__className__")) || 2327 "")); 2328 }); 2329 }, 2330 hasClass: function (e) { 2331 for (var t = " " + e + " ", o = 0, n = this.length; o < n; o++) 2332 if ( 2333 1 === this[o].nodeType && 2334 0 <= (" " + this[o].className + " ").replace(q, " ").indexOf(t) 2335 ) 2336 return !0; 2337 return !1; 2338 }, 2339 val: function (o) { 2340 var e, 2341 n, 2342 i, 2343 t = this[0]; 2344 return arguments.length 2345 ? ((i = ke.isFunction(o)), 2346 this.each(function (e) { 2347 var t; 2348 1 === this.nodeType && 2349 (null == (t = i ? o.call(this, e, ke(this).val()) : o) 2350 ? (t = "") 2351 : "number" == typeof t 2352 ? (t += "") 2353 : ke.isArray(t) && 2354 (t = ke.map(t, function (e) { 2355 return null == e ? "" : e + ""; 2356 })), 2357 ((n = 2358 ke.valHooks[this.type] || 2359 ke.valHooks[this.nodeName.toLowerCase()]) && 2360 "set" in n && 2361 n.set(this, t, "value") !== T) || 2362 (this.value = t)); 2363 })) 2364 : t 2365 ? (n = 2366 ke.valHooks[t.type] || ke.valHooks[t.nodeName.toLowerCase()]) && 2367 "get" in n && 2368 (e = n.get(t, "value")) !== T 2369 ? e 2370 : "string" == typeof (e = t.value) 2371 ? e.replace(U, "") 2372 : null == e 2373 ? "" 2374 : e 2375 : void 0; 2376 }, 2377 }), 2378 ke.extend({ 2379 valHooks: { 2380 option: { 2381 get: function (e) { 2382 var t = ke.find.attr(e, "value"); 2383 return null != t ? t : e.text; 2384 }, 2385 }, 2386 select: { 2387 get: function (e) { 2388 for ( 2389 var t, 2390 o, 2391 n = e.options, 2392 i = e.selectedIndex, 2393 s = "select-one" === e.type || i < 0, 2394 r = s ? null : [], 2395 a = s ? i + 1 : n.length, 2396 l = i < 0 ? a : s ? i : 0; 2397 l < a; 2398 l++ 2399 ) 2400 if ( 2401 !( 2402 (!(o = n[l]).selected && l !== i) || 2403 (ke.support.optDisabled 2404 ? o.disabled 2405 : null !== o.getAttribute("disabled")) || 2406 (o.parentNode.disabled && 2407 ke.nodeName(o.parentNode, "optgroup")) 2408 ) 2409 ) { 2410 if (((t = ke(o).val()), s)) return t; 2411 r.push(t); 2412 } 2413 return r; 2414 }, 2415 set: function (e, t) { 2416 for ( 2417 var o, n, i = e.options, s = ke.makeArray(t), r = i.length; 2418 r--; 2419 2420 ) 2421 ((n = i[r]).selected = 0 <= ke.inArray(ke(n).val(), s)) && 2422 (o = !0); 2423 return o || (e.selectedIndex = -1), s; 2424 }, 2425 }, 2426 }, 2427 attr: function (e, t, o) { 2428 var n, 2429 i, 2430 s = e.nodeType; 2431 if (e && 3 !== s && 8 !== s && 2 !== s) 2432 return typeof e.getAttribute === v 2433 ? ke.prop(e, t, o) 2434 : ((1 === s && ke.isXMLDoc(e)) || 2435 ((t = t.toLowerCase()), 2436 (n = 2437 ke.attrHooks[t] || (ke.expr.match.bool.test(t) ? _ : B))), 2438 o === T 2439 ? n && "get" in n && null !== (i = n.get(e, t)) 2440 ? i 2441 : null == (i = ke.find.attr(e, t)) 2442 ? T 2443 : i 2444 : null !== o 2445 ? n && "set" in n && (i = n.set(e, o, t)) !== T 2446 ? i 2447 : (e.setAttribute(t, o + ""), o) 2448 : (ke.removeAttr(e, t), T)); 2449 }, 2450 removeAttr: function (e, t) { 2451 var o, 2452 n, 2453 i = 0, 2454 s = t && t.match(C); 2455 if (s && 1 === e.nodeType) 2456 for (; (o = s[i++]); ) 2457 (n = ke.propFix[o] || o), 2458 ke.expr.match.bool.test(o) 2459 ? (V && Q) || !Y.test(o) 2460 ? (e[n] = !1) 2461 : (e[ke.camelCase("default-" + o)] = e[n] = !1) 2462 : ke.attr(e, o, ""), 2463 e.removeAttribute(Q ? o : n); 2464 }, 2465 attrHooks: { 2466 type: { 2467 set: function (e, t) { 2468 if ( 2469 !ke.support.radioValue && 2470 "radio" === t && 2471 ke.nodeName(e, "input") 2472 ) { 2473 var o = e.value; 2474 return e.setAttribute("type", t), o && (e.value = o), t; 2475 } 2476 }, 2477 }, 2478 }, 2479 propFix: { for: "htmlFor", class: "className" }, 2480 prop: function (e, t, o) { 2481 var n, 2482 i, 2483 s = e.nodeType; 2484 if (e && 3 !== s && 8 !== s && 2 !== s) 2485 return ( 2486 (1 !== s || !ke.isXMLDoc(e)) && 2487 ((t = ke.propFix[t] || t), (i = ke.propHooks[t])), 2488 o !== T 2489 ? i && "set" in i && (n = i.set(e, o, t)) !== T 2490 ? n 2491 : (e[t] = o) 2492 : i && "get" in i && null !== (n = i.get(e, t)) 2493 ? n 2494 : e[t] 2495 ); 2496 }, 2497 propHooks: { 2498 tabIndex: { 2499 get: function (e) { 2500 var t = ke.find.attr(e, "tabindex"); 2501 return t 2502 ? parseInt(t, 10) 2503 : X.test(e.nodeName) || (Z.test(e.nodeName) && e.href) 2504 ? 0 2505 : -1; 2506 }, 2507 }, 2508 }, 2509 }), 2510 (_ = { 2511 set: function (e, t, o) { 2512 return ( 2513 !1 === t 2514 ? ke.removeAttr(e, o) 2515 : (V && Q) || !Y.test(o) 2516 ? e.setAttribute((!Q && ke.propFix[o]) || o, o) 2517 : (e[ke.camelCase("default-" + o)] = e[o] = !0), 2518 o 2519 ); 2520 }, 2521 }), 2522 ke.each(ke.expr.match.bool.source.match(/\w+/g), function (e, t) { 2523 var s = ke.expr.attrHandle[t] || ke.find.attr; 2524 ke.expr.attrHandle[t] = 2525 (V && Q) || !Y.test(t) 2526 ? function (e, t, o) { 2527 var n = ke.expr.attrHandle[t], 2528 i = o 2529 ? T 2530 : (ke.expr.attrHandle[t] = T) != s(e, t, o) 2531 ? t.toLowerCase() 2532 : null; 2533 return (ke.expr.attrHandle[t] = n), i; 2534 } 2535 : function (e, t, o) { 2536 return o 2537 ? T 2538 : e[ke.camelCase("default-" + t)] 2539 ? t.toLowerCase() 2540 : null; 2541 }; 2542 }), 2543 (V && Q) || 2544 (ke.attrHooks.value = { 2545 set: function (e, t, o) { 2546 return ke.nodeName(e, "input") 2547 ? ((e.defaultValue = t), T) 2548 : B && B.set(e, t, o); 2549 }, 2550 }), 2551 Q || 2552 ((B = { 2553 set: function (e, t, o) { 2554 var n = e.getAttributeNode(o); 2555 return ( 2556 n || e.setAttributeNode((n = e.ownerDocument.createAttribute(o))), 2557 (n.value = t += ""), 2558 "value" === o || t === e.getAttribute(o) ? t : T 2559 ); 2560 }, 2561 }), 2562 (ke.expr.attrHandle.id = 2563 ke.expr.attrHandle.name = 2564 ke.expr.attrHandle.coords = 2565 function (e, t, o) { 2566 var n; 2567 return o 2568 ? T 2569 : (n = e.getAttributeNode(t)) && "" !== n.value 2570 ? n.value 2571 : null; 2572 }), 2573 (ke.valHooks.button = { 2574 get: function (e, t) { 2575 var o = e.getAttributeNode(t); 2576 return o && o.specified ? o.value : T; 2577 }, 2578 set: B.set, 2579 }), 2580 (ke.attrHooks.contenteditable = { 2581 set: function (e, t, o) { 2582 B.set(e, "" !== t && t, o); 2583 }, 2584 }), 2585 ke.each(["width", "height"], function (e, o) { 2586 ke.attrHooks[o] = { 2587 set: function (e, t) { 2588 return "" === t ? (e.setAttribute(o, "auto"), t) : T; 2589 }, 2590 }; 2591 })), 2592 k
2592e.support.hrefNormalized || 2593 ke.each(["href", "src"], function (e, t) { 2594 ke.propHooks[t] = { 2595 get: function (e) { 2596 return e.getAttribute(t, 4); 2597 }, 2598 }; 2599 }), 2600 ke.support.style || 2601 (ke.attrHooks.style = { 2602 get: function (e) { 2603 return e.style.cssText || T; 2604 }, 2605 set: function (e, t) { 2606 return (e.style.cssText = t + ""); 2607 }, 2608 }), 2609 ke.support.optSelected || 2610 (ke.propHooks.selected = { 2611 get: function (e) { 2612 var t = e.parentNode; 2613 return ( 2614 t && 2615 (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), 2616 null 2617 ); 2618 }, 2619 }), 2620 ke.each( 2621 [ 2622 "tabIndex", 2623 "readOnly", 2624 "maxLength", 2625 "cellSpacing", 2626 "cellPadding", 2627 "rowSpan", 2628 "colSpan", 2629 "useMap", 2630 "frameBorder", 2631 "contentEditable", 2632 ], 2633 function () { 2634 ke.propFix[this.toLowerCase()] = this; 2635 } 2636 ), 2637 ke.support.enctype || (ke.propFix.enctype = "encoding"), 2638 ke.each(["radio", "checkbox"], function () { 2639 (ke.valHooks[this] = { 2640 set: function (e, t) { 2641 return ke.isArray(t) 2642 ? (e.checked = 0 <= ke.inArray(ke(e).val(), t)) 2643 : T; 2644 }, 2645 }), 2646 ke.support.checkOn || 2647 (ke.valHooks[this].get = function (e) { 2648 return null === e.getAttribute("value") ? "on" : e.value; 2649 }); 2650 }); 2651 var G = /^(?:input|select|textarea)$/i, 2652 K = /^key/, 2653 J = /^(?:mouse|contextmenu)|click/, 2654 ee = /^(?:focusinfocus|focusoutblur)$/, 2655 te = /^([^.]*)(?:\.(.+)|)$/; 2656 function oe() { 2657 return !0; 2658 } 2659 function ne() { 2660 return !1; 2661 } 2662 function ie() { 2663 try { 2664 return m.activeElement; 2665 } catch (e) {} 2666 } 2667 (ke.event = { 2668 global: {}, 2669 add: function (e, t, o, n, i) { 2670 var s, 2671 r, 2672 a, 2673 l, 2674 c, 2675 d, 2676 u, 2677 p, 2678 h, 2679 f, 2680 m, 2681 g = ke._data(e); 2682 if (g) { 2683 for ( 2684 o.handler && ((o = (l = o).handler), (i = l.selector)), 2685 o.guid || (o.guid = ke.guid++), 2686 (r = g.events) || (r = g.events = {}), 2687 (d = g.handle) || 2688 ((d = g.handle = 2689 function (e) { 2690 return typeof ke === v || 2691 (e && ke.event.triggered === e.type) 2692 ? T 2693 : ke.event.dispatch.apply(d.elem, arguments); 2694 }).elem = e), 2695 a = (t = (t || "").match(C) || [""]).length; 2696 a--; 2697 2698 ) 2699 (h = m = (s = te.exec(t[a]) || [])[1]), 2700 (f = (s[2] || "").split(".").sort()), 2701 h && 2702 ((c = ke.event.special[h] || {}), 2703 (h = (i ? c.delegateType : c.bindType) || h), 2704 (c = ke.event.special[h] || {}), 2705 (u = ke.extend( 2706 { 2707 type: h, 2708 origType: m, 2709 data: n, 2710 handler: o, 2711 guid: o.guid, 2712 selector: i, 2713 needsContext: i && ke.expr.match.needsContext.test(i), 2714 namespace: f.join("."), 2715 }, 2716 l 2717 )), 2718 (p = r[h]) || 2719 (((p = r[h] = []).delegateCount = 0), 2720 (c.setup && !1 !== c.setup.call(e, n, f, d)) || 2721 (e.addEventListener 2722 ? e.addEventListener(h, d, !1) 2723 : e.attachEvent && e.attachEvent("on" + h, d))), 2724 c.add && 2725 (c.add.call(e, u), 2726 u.handler.guid || (u.handler.guid = o.guid)), 2727 i ? p.splice(p.delegateCount++, 0, u) : p.push(u), 2728 (ke.event.global[h] = !0)); 2729 e = null; 2730 } 2731 }, 2732 remove: function (e, t, o, n, i) { 2733 var s, 2734 r, 2735 a, 2736 l, 2737 c, 2738 d, 2739 u, 2740 p, 2741 h, 2742 f, 2743 m, 2744 g = ke.hasData(e) && ke._data(e); 2745 if (g && (d = g.events)) { 2746 for (c = (t = (t || "").match(C) || [""]).length; c--; ) 2747 if ( 2748 ((h = m = (a = te.exec(t[c]) || [])[1]), 2749 (f = (a[2] || "").split(".").sort()), 2750 h) 2751 ) { 2752 for ( 2753 u = ke.event.special[h] || {}, 2754 p = d[(h = (n ? u.delegateType : u.bindType) || h)] || [], 2755 a = 2756 a[2] && 2757 RegExp("(^|\\.)" + f.join("\\.(?:.*\\.|)") + "(\\.|$)"), 2758 l = s = p.length; 2759 s--; 2760 2761 ) 2762 (r = p[s]), 2763 (!i && m !== r.origType) || 2764 (o && o.guid !== r.guid) || 2765 (a && !a.test(r.namespace)) || 2766 (n && n !== r.selector && ("**" !== n || !r.selector)) || 2767 (p.splice(s, 1), 2768 r.selector && p.delegateCount--, 2769 u.remove && u.remove.call(e, r)); 2770 l && 2771 !p.length && 2772 ((u.teardown && !1 !== u.teardown.call(e, f, g.handle)) || 2773 ke.removeEvent(e, h, g.handle), 2774 delete d[h]); 2775 } else for (h in d) ke.event.remove(e, h + t[c], o, n, !0); 2776 ke.isEmptyObject(d) && (delete g.handle, ke._removeData(e, "events")); 2777 } 2778 }, 2779 trigger: function (e, t, o, n) { 2780 var i, 2781 s, 2782 r, 2783 a, 2784 l, 2785 c, 2786 d = [o || m], 2787 u = w.call(e, "type") ? e.type : e, 2788 p = w.call(e, "namespace") ? e.namespace.split(".") : [], 2789 h = (l = o = o || m); 2790 if ( 2791 3 !== o.nodeType && 2792 8 !== o.nodeType && 2793 !ee.test(u + ke.event.triggered) && 2794 (0 <= u.indexOf(".") && ((u = (p = u.split(".")).shift()), p.sort()),
2795 (s = u.indexOf(":") < 0 && "on" + u), 2796 ((e = e[ke.expando] 2797 ? e 2798 : new ke.Event(u, "object" == typeof e && e)).isTrigger = n 2799 ? 2 2800 : 3), 2801 (e.namespace = p.join(".")), 2802 (e.namespace_re = e.namespace 2803 ? RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)") 2804 : null), 2805 (e.result = T), 2806 e.target || (e.target = o), 2807 (t = null == t ? [e] : ke.makeArray(t, [e])), 2808 (a = ke.event.special[u] || {}), 2809 n || !a.trigger || !1 !== a.trigger.apply(o, t)) 2810 ) { 2811 if (!n && !a.noBubble && !ke.isWindow(o)) { 2812 for ( 2813 r = a.delegateType || u, ee.test(r + u) || (h = h.parentNode); 2814 h; 2815 h = h.parentNode 2816 ) 2817 d.push(h), (l = h); 2818 l === (o.ownerDocument || m) && 2819 d.push(l.defaultView || l.parentWindow || f); 2820 } 2821 for (c = 0; (h = d[c++]) && !e.isPropagationStopped(); ) 2822 (e.type = 1 < c ? r : a.bindType || u), 2823 (i = 2824 (ke._data(h, "events") || {})[e.type] && 2825 ke._data(h, "handle")) && i.apply(h, t), 2826 (i = s && h[s]) && 2827 ke.acceptData(h) && 2828 i.apply && 2829 !1 === i.apply(h, t) && 2830 e.preventDefault(); 2831 if ( 2832 ((e.type = u), 2833 !n && 2834 !e.isDefaultPrevented() && 2835 (!a._default || !1 === a._default.apply(d.pop(), t)) && 2836 ke.acceptData(o) && 2837 s && 2838 o[u] && 2839 !ke.isWindow(o)) 2840 ) { 2841 (l = o[s]) && (o[s] = null), (ke.event.triggered = u); 2842 try { 2843 o[u](); 2844 } catch (e) {} 2845 (ke.event.triggered = T), l && (o[s] = l); 2846 } 2847 return e.result; 2848 } 2849 }, 2850 dispatch: function (e) { 2851 e = ke.event.fix(e); 2852 var t, 2853 o, 2854 n, 2855 i, 2856 s, 2857 r = [], 2858 a = p.call(arguments), 2859 l = (ke._data(this, "events") || {})[e.type] || [], 2860 c = ke.event.special[e.type] || {}; 2861 if ( 2862 (((a[0] = e).delegateTarget = this), 2863 !c.preDispatch || !1 !== c.preDispatch.call(this, e)) 2864 ) { 2865 for ( 2866 r = ke.event.handlers.call(this, e, l), t = 0; 2867 (i = r[t++]) && !e.isPropagationStopped(); 2868 2869 ) 2870 for ( 2871 e.currentTarget = i.elem, s = 0; 2872 (n = i.handlers[s++]) && !e.isImmediatePropagationStopped(); 2873 2874 ) 2875 (e.namespace_re && !e.namespace_re.test(n.namespace)) || 2876 ((e.handleObj = n), 2877 (e.data = n.data), 2878 (o = ( 2879 (ke.event.special[n.origType] || {}).handle || n.handler 2880 ).apply(i.elem, a)) !== T && 2881 !1 === (e.result = o) && 2882 (e.preventDefault(), e.stopPropagation())); 2883 return c.postDispatch && c.postDispatch.call(this, e), e.result; 2884 } 2885 }, 2886 handlers: function (e, t) { 2887 var o, 2888 n, 2889 i, 2890 s, 2891 r = [], 2892 a = t.delegateCount, 2893 l = e.target; 2894 if (a && l.nodeType && (!e.button || "click" !== e.type)) 2895 for (; l != this; l = l.parentNode || this) 2896 if (1 === l.nodeType && (!0 !== l.disabled || "click" !== e.type)) { 2897 for (i = [], s = 0; s < a; s++) 2898 i[(o = (n = t[s]).selector + " ")] === T && 2899 (i[o] = n.needsContext 2900 ? 0 <= ke(o, this).index(l) 2901 : ke.find(o, this, null, [l]).length), 2902 i[o] && i.push(n); 2903 i.length && r.push({ elem: l, handlers: i }); 2904 } 2905 return t.length > a && r.push({ elem: this, handlers: t.slice(a) }), r; 2906 }, 2907 fix: function (e) { 2908 if (e[ke.expando]) return e; 2909 var t, 2910 o, 2911 n, 2912 i = e.type, 2913 s = e, 2914 r = this.fixHooks[i]; 2915 for ( 2916 r || 2917 (this.fixHooks[i] = r = 2918 J.test(i) ? this.mouseHooks : K.test(i) ? this.keyHooks
2918: {}), 2919 n = r.props ? this.props.concat(r.props) : this.props, 2920 e = new ke.Event(s), 2921 t = n.length; 2922 t--; 2923 2924 ) 2925 e[(o = n[t])] = s[o]; 2926 return ( 2927 e.target || (e.target = s.srcElement || m), 2928 3 === e.target.nodeType && (e.target = e.target.parentNode), 2929 (e.metaKey = !!e.metaKey), 2930 r.filter ? r.filter(e, s) : e 2931 ); 2932 }, 2933 props: 2934 "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split( 2935 " " 2936 ), 2937 fixHooks: {}, 2938 keyHooks: { 2939 props: "char charCode key keyCode".split(" "), 2940 filter: function (e, t) { 2941 return ( 2942 null == e.which && 2943 (e.which = null != t.charCode ? t.charCode : t.keyCode), 2944 e 2945 ); 2946 }, 2947 }, 2948 mouseHooks: { 2949 props: 2950 "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split( 2951 " " 2952 ), 2953 filter: function (e, t) { 2954 var o, 2955 n, 2956 i, 2957 s = t.button, 2958 r = t.fromElement; 2959 return ( 2960 null == e.pageX && 2961 null != t.clientX && 2962 ((i = (n = e.target.ownerDocument || m).documentElement), 2963 (o = n.body), 2964 (e.pageX = 2965 t.clientX + 2966 ((i && i.scrollLeft) || (o && o.scrollLeft) || 0) - 2967 ((i && i.clientLeft) || (o && o.clientLeft) || 0)), 2968 (e.pageY = 2969 t.clientY + 2970 ((i && i.scrollTop) || (o && o.scrollTop) || 0) - 2971 ((i && i.clientTop) || (o && o.clientTop) || 0))), 2972 !e.relatedTarget && 2973 r && 2974 (e.relatedTarget = r === e.target ? t.toElement : r), 2975 e.which || 2976 s === T || 2977 (e.which = 1 & s ? 1 : 2 & s ? 3 : 4 & s ? 2 : 0), 2978 e 2979 ); 2980 }, 2981 }, 2982 special: { 2983 load: { noBubble: !0 }, 2984 focus: { 2985 trigger: function () { 2986 if (this !== ie() && this.focus) 2987 try { 2988 return this.focus(), !1; 2989 } catch (e) {} 2990 }, 2991 delegateType: "focusin", 2992 }, 2993 blur: { 2994 trigger: function () { 2995 return this === ie() && this.blur ? (this.blur(), !1) : T; 2996 }, 2997 delegateType: "focusout", 2998 }, 2999 click: { 3000 trigger: function () { 3001 return ke.nodeName(this, "input") && 3002 "checkbox" === this.type && 3003 this.click 3004 ? (this.click(), !1) 3005 : T; 3006 }, 3007 _default: function (e) { 3008 return ke.nodeName(e.target, "a"); 3009 }, 3010 }, 3011 beforeunload: { 3012 postDispatch: function (e) { 3013 e.result !== T && (e.originalEvent.returnValue = e.result); 3014 }, 3015 }, 3016 }, 3017 simulate: function (e, t, o, n) { 3018 var i = ke.extend(new ke.Event(), o, { 3019 type: e, 3020 isSimulated: !0, 3021 originalEvent: {}, 3022 }); 3023 n ? ke.event.trigger(i, null, t) : ke.event.dispatch.call(t, i), 3024 i.isDefaultPrevented() && o.preventDefault(); 3025 }, 3026 }), 3027 (ke.removeEvent = m.removeEventListener 3028 ? function (e, t, o) { 3029 e.removeEventListener && e.removeEventListener(t, o, !1); 3030 } 3031 : function (e, t, o) { 3032 var n = "on" + t; 3033 e.detachEvent && 3034 (typeof e[n] === v && (e[n] = null), e.detachEvent(n, o)); 3035 }), 3036 (ke.Event = function (e, t) { 3037 return this instanceof ke.Event 3038 ? (e && e.type 3039 ? ((this.originalEvent = e), 3040 (this.type = e.type), 3041 (this.isDefaultPrevented = 3042 e.defaultPrevented || 3043 !1 === e.returnValue || 3044 (e.getPreventDefault && e.getPreventDefault()) 3045 ? oe 3046 : ne)) 3047 : (this.type = e), 3048 t && ke.extend(this, t), 3049 (this.timeStamp = (e && e.timeStamp) || ke.now()), 3050 (this[ke.expando] = !0), 3051 T) 3052 : new ke.Event(e, t); 3053 }), 3054 (ke.Event.prototype = { 3055 isDefaultPrevented: ne, 3056 isPropagationStopped: ne, 3057 isImmediatePropagationStopped: ne, 3058 preventDefault: function () { 3059 var e = this.originalEvent; 3060 (this.isDefaultPrevented = oe), 3061 e && (e.preventDefault ? e.preventDefault() : (e.returnValue = !1)); 3062 }, 3063 stopPropagation: function () { 3064 var e = this.originalEvent; 3065 (this.isPropagationStopped = oe), 3066 e && 3067 (e.stopPropagation && e.stopPropagation(), (e.cancelBubble = !0)); 3068 }, 3069 stopImmediatePropagation: function () { 3070 (this.isImmediatePropagationStopped = oe), this.stopPropagation(); 3071 }, 3072 }), 3073 ke.each(
3074 { mouseenter: "mouseover", mouseleave: "mouseout" }, 3075 function (e, i) { 3076 ke.event.special[e] = { 3077 delegateType: i, 3078 bindType: i, 3079 handle: function (e) { 3080 var t, 3081 o = e.relatedTarget, 3082 n = e.handleObj; 3083 return ( 3084 (o && (o === this || ke.contains(this, o))) || 3085 ((e.type = n.origType), 3086 (t = n.handler.apply(this, arguments)), 3087 (e.type = i)), 3088 t 3089 ); 3090 }, 3091 }; 3092 } 3093 ), 3094 ke.support.submitBubbles || 3095 (ke.event.special.submit = { 3096 setup: function () { 3097 return ( 3098 !ke.nodeName(this, "form") && 3099 (ke.event.add( 3100 this, 3101 "click._submit keypress._submit", 3102 function (e) { 3103 var t = e.target, 3104 o = 3105 ke.nodeName(t, "input") || ke.nodeName(t, "button") 3106 ? t.form 3107 : T; 3108 o && 3109 !ke._data(o, "submitBubbles") && 3110 (ke.event.add(o, "submit._submit", function (e) { 3111 e._submit_bubble = !0; 3112 }), 3113 ke._data(o, "submitBubbles", !0)); 3114 } 3115 ), 3116 T) 3117 ); 3118 }, 3119 postDispatch: function (e) { 3120 e._submit_bubble && 3121 (delete e._submit_bubble, 3122 this.parentNode && 3123 !e.isTrigger && 3124 ke.event.simulate("submit", this.parentNode, e, !0)); 3125 }, 3126 teardown: function () { 3127 return ( 3128 !ke.nodeName(this, "form") && 3129 (ke.event.remove(this, "._submit"), T) 3130 ); 3131 }, 3132 }), 3133 ke.support.changeBubbles || 3134 (ke.event.special.change = { 3135 setup: function () { 3136 return G.test(this.nodeName) 3137 ? (("checkbox" !== this.type && "radio" !== this.type) || 3138 (ke.event.add(this, "propertychange._change", function (e) { 3139 "checked" === e.originalEvent.propertyName && 3140 (this._just_changed = !0); 3141 }), 3142 ke.event.add(this, "click._change", function (e) { 3143 this._just_changed && 3144 !e.isTrigger && 3145 (this._just_changed = !1), 3146 ke.event.simulate("change", this, e, !0); 3147 })), 3148 !1) 3149 : (ke.event.add(this, "beforeactivate._change", function (e) { 3150 var t = e.target; 3151 G.test(t.nodeName) && 3152 !ke._data(t, "changeBubbles") && 3153 (ke.event.add(t, "change._change", function (e) { 3154 !this.parentNode || 3155 e.isSimulated || 3156 e.isTrigger || 3157 ke.event.simulate("change", this.parentNode, e, !0); 3158 }), 3159 ke._data(t, "changeBubbles", !0)); 3160 }), 3161 T); 3162 }, 3163 handle: function (e) { 3164 var t = e.target; 3165 return this !== t || 3166 e.isSimulated || 3167 e.isTrigger || 3168 ("radio" !== t.type && "checkbox" !== t.type) 3169 ? e.handleObj.handler.apply(this, arguments) 3170 : T; 3171 }, 3172 teardown: function () { 3173 return ke.event.remove(this, "._change"), !G.test(this.nodeName); 3174 }, 3175 }), 3176 ke.support.focusinBubbles || 3177 ke.each({ focus: "focusin", blur: "focusout" }, function (e, t) { 3178 function o(e) { 3179 ke.event.simulate(t, e.target, ke.event.fix(e), !0); 3180 } 3181 var n = 0; 3182 ke.event.special[t] = { 3183 setup: function () { 3184 0 == n++ && m.addEventListener(e, o, !0); 3185 }, 3186 teardown: function () { 3187 0 == --n && m.removeEventListener(e, o, !0); 3188 }, 3189 }; 3190 }), 3191 ke.fn.extend({ 3192 on: function (e, t, o, n, i) { 3193 var s, r; 3194 if ("object" == typeof e) { 3195 for (s in ("string" != typeof t && ((o = o || t), (t = T)), e)) 3196 this.on(s, t, o, e[s], i); 3197 return this; 3198 } 3199 if ( 3200 (null == o && null == n 3201 ? ((n = t), (o = t = T)) 3202 : null == n && 3203 ("string" == typeof t 3204 ? ((n = o), (o = T)) 3205 : ((n = o), (o = t), (t = T))), 3206 !1 === n) 3207 ) 3208 n = ne; 3209 else if (!n) return this; 3210 return ( 3211 1 === i && 3212 ((r = n), 3213 ((n = function (e) { 3214 return ke().off(e), r.apply(this, arguments); 3215 }).guid = r.guid || (r.guid = ke.guid++))), 3216 this.each(function () { 3217 ke.event.add(this, e, n, o, t); 3218 }) 3219 ); 3220 }, 3221 one: function (e, t, o, n) { 3222 return this.on(e, t, o, n, 1); 3223 }, 3224 off: function (e, t, o) { 3225 var n, i; 3226 if (e && e.preventDefault && e.handleObj) 3227 return ( 3228 (n = e.handleObj), 3229 ke(e.delegateTarget).off( 3230 n.namespace ? n.origType + "." + n.namespace : n.origType, 3231 n.selector, 3232 n.handler 3233 ), 3234 this 3235 ); 3236 if ("object" != typeof e) 3237 return ( 3238 (!1 !== t && "function" != typeof t) || ((o = t), (t = T)), 3239 !1 === o && (o = ne), 3240 this.each(function () { 3241 ke.event.remove(this, e, o, t); 3242 }) 3243 ); 3244 for (i in e) this.off(i, t, e[i]); 3245 return this; 3246 }, 3247 trigger: function (e, t) { 3248 return this.each(function () { 3249 ke.event.trigger(e, t, this); 3250 }); 3251 }, 3252 triggerHandler: function (e, t) { 3253 var o = this[0]; 3254 return o ? ke.event.trigger(e, t, o, !0) : T; 3255 }, 3256 }); 3257 var se = /^.[^:#\[\.,]*$/, 3258 re = /^(?:parents|prev(?:Until|All))/, 3259 ae = ke.expr.match.needsContext, 3260 le = { children: !0, contents: !0, next: !0, prev: !0 }; 3261 function ce(e, t) { 3262 for (; (e = e[t]) && 1 !== e.nodeType; ); 3263 return e; 3264 } 3265 function de(e, o, n) { 3266 if (ke.isFunction(o)) 3267 return ke.grep(e, function (e, t) { 3268 return !!o.call(e, t, e) !== n; 3269 }); 3270 if (o.nodeType) 3271 return ke.grep(e, function (e) { 3272 return (e === o) !== n; 3273 }); 3274 if ("string" == typeof o) { 3275 if (se.test(o)) return ke.filter(o, e, n); 3276 o = ke.filter(o, e); 3277 } 3278 return ke.grep(e, function (e) { 3279 return 0 <= ke.inArray(e, o) !== n; 3280 }); 3281 } 3282 function ue(e) { 3283 var t = pe.split("|"), 3284 o = e.createDocumentFragment(); 3285 if (o.createElement) for (; t.length; ) o.createElement(t.pop()); 3286 return o; 3287 } 3288 ke.fn.extend({ 3289 find: function (e) { 3290 var t, 3291 o = [], 3292 n = this, 3293 i = n.length; 3294 if ("string" != typeof e) 3295 return this.pushStack( 3296 ke(e).filter(function () { 3297 for (t = 0; t < i; t++) if (ke.contains(n[t], this)) return !0; 3298 }) 3299 ); 3300 for (t = 0; t < i; t++) ke.find(e, n[t], o); 3301 return ( 3302 ((o = this.pushStack(1 < i ? ke.unique(o) : o)).selector = this 3303 .selector 3304 ? this.selector + " " + e 3305 : e), 3306 o 3307 ); 3308 }, 3309 has: function (e) { 3310 var t, 3311 o = ke(e, this), 3312 n = o.length; 3313 return this.filter(function () { 3314 for (t = 0; t < n; t++) if (ke.contains(this, o[t])) return !0; 3315 }); 3316 }, 3317 not: function (e) { 3318 return this.pushStack(de(this, e || [], !0)); 3319 }, 3320 filter: function (e) { 3321 return this.pushStack(de(this, e || [], !1)); 3322 }, 3323 is: function (e) { 3324 return !!de( 3325 this, 3326 "string" == typeof e && ae.test(e) ? ke(e) : e || [], 3327 !1 3328 ).length; 3329 }, 3330 closest: function (e, t) { 3331 for ( 3332 var o, 3333 n = 0, 3334 i = this.length, 3335 s = [], 3336 r = 3337 ae.test(e) || "string" != typeof e ? ke(e, t || this.context) : 0; 3338 n < i; 3339 n++ 3340 ) 3341 for (o = this[n]; o && o !== t; o = o.parentNode) 3342 if ( 3343 o.nodeType < 11 && 3344 (r 3345 ? -1 < r.index(o) 3346 : 1 === o.nodeType && ke.find.matchesSelector(o, e)) 3347 ) { 3348 o = s.push(o); 3349 break; 3350 } 3351 return this.pushStack(1 < s.length ? ke.unique(s) : s); 3352 }, 3353 index: function (e) { 3354 return e 3355 ? "string" == typeof e 3356 ? ke.inArray(this[0], ke(e)) 3357 : ke.inArray(e.jquery ? e[0] : e, this) 3358 : this[0] && this[0].parentNode 3359 ? this.first().prevAll().length 3360 : -1; 3361 }, 3362 add: function (e, t) { 3363 var o = 3364 "string" == typeof e 3365 ? ke(e, t) 3366 : ke.makeArray(e && e.nodeType ? [e] : e), 3367 n = ke.merge(this.get(), o); 3368 return this.pushStack(ke.unique(n)); 3369 }, 3370 addBack: function (e) { 3371 return this.add( 3372 null == e ? this.prevObject : this.prevObject.filter(e) 3373 ); 3374 }, 3375 }), 3376 ke.each( 3377 { 3378 parent: function (e) { 3379 var t = e.parentNode; 3380 return t && 11 !== t.nodeType ? t : null; 3381 }, 3382 parents: function (e) { 3383 return ke.dir(e, "parentNode"); 3384 }, 3385 parentsUntil: function (e, t, o) { 3386 return ke.dir(e, "parentNode", o); 3387 }, 3388 next: function (e) { 3389 return ce(e, "nextSibling"); 3390 }, 3391 prev: function (e) { 3392 return ce(e, "previousSibling"); 3393 }, 3394 nextAll: function (e) { 3395 return ke.dir(e, "nextSibling"); 3396 }, 3397 prevAll: function (e) { 3398 return ke.dir(e, "previousSibling"); 3399 }, 3400 nextUntil: function (e, t, o) { 3401 return ke.dir(e, "nextSibling", o); 3402 }, 3403 prevUntil: function (e, t, o) { 3404 return ke.dir(e, "previousSibling", o); 3405 }, 3406 siblings: function (e) { 3407 return ke.sibling((e.parentNode || {}).firstChild, e); 3408 }, 3409 children: function (e) { 3410 return ke.sibling(e.firstChild); 3411 }, 3412 contents: function (e) { 3413 return ke.nodeName(e, "iframe") 3414 ? e.contentDocument || e.contentWindow.document 3415 : ke.merge([], e.childNodes); 3416 }, 3417 }, 3418 function (n, i) { 3419 ke.fn[n] = function (e, t) { 3420 var o = ke.map(this, i, e); 3421 return ( 3422 "Until" !== n.slice(-5) && (t = e), 3423 t && "string" == typeof t && (o = ke.filter(t, o)), 3424 1 < this.length && 3425 (le[n] || (o = ke.unique(o)), re.test(n) && (o = o.reverse())), 3426 this.pushStack(o) 3427 ); 3428 }; 3429 } 3430 ), 3431 ke.extend({ 3432 filter: function (e, t, o) { 3433 var n = t[0]; 3434 return ( 3435 o && (e = ":not(" + e + ")"), 3436 1 === t.length && 1 === n.nodeType 3437 ? ke.find.matchesSelector(n, e) 3438 ? [n] 3439 : [] 3440 : ke.find.matches( 3441 e, 3442 ke.grep(t, function (e) { 3443 return 1 === e.nodeType; 3444 }) 3445 ) 3446 ); 3447 }, 3448 dir: function (e, t, o) { 3449 for ( 3450 var n = [], i = e[t]; 3451 i && 3452 9 !== i.nodeType && 3453 (o === T || 1 !== i.nodeType || !ke(i).is(o)); 3454 3455 ) 3456 1 === i.nodeType && n.push(i), (i = i[t]); 3457 return n; 3458 }, 3459 sibling: function (e, t) { 3460 for (var o = []; e; e = e.nextSibling) 3461 1 === e.nodeType && e !== t && o.push(e); 3462 return o; 3463 }, 3464 }); 3465 var pe = 3466 "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", 3467 he = / jQuery\d+="(?:null|\d+)"/g, 3468 fe = RegExp("<(?:" + pe + ")[\\s/>]", "i"), 3469 me = /^\s+/, 3470 ge = 3471 /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, 3472 ve = /<([\w:]+)/, 3473 ye = /<tbody/i,
3474 we = /<|&#?\w+;/, 3475 be = /<(?:script|style|link)/i, 3476 xe = /^(?:checkbox|radio)$/i, 3477 Te = /checked\s*(?:[^=]|=\s*.checked.)/i, 3478 Ce = /^$|\/(?:java|ecma)script/i, 3479 Se = /^true\/(.*)/, 3480 ze = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, 3481 Ee = { 3482 option: [1, "<select multiple='multiple'>", "</select>"], 3483 legend: [1, "<fieldset>", "</fieldset>"], 3484 area: [1, "<map>", "</map>"], 3485 param: [1, "<object>", "</object>"], 3486 thead: [1, "<table>", "</table>"], 3487 tr: [2, "<table><tbody>", "</tbody></table>"], 3488 col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], 3489 td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], 3490 _default: ke.support.htmlSerialize 3491 ? [0, "", ""] 3492 : [1, "X<div>", "</div>"], 3493 }, 3494 We = ue(m).appendChild(m.createElement("div")); 3495 function Le(e, t) { 3496 return ke.nodeName(e, "table") && 3497 ke.nodeName(1 === t.nodeType ? t : t.firstChild, "tr") 3498 ? e.getElementsByTagName("tbody")[0] || 3499 e.appendChild(e.ownerDocument.createElement("tbody")) 3500 : e; 3501 } 3502 function Ae(e) { 3503 return (e.type = (null !== ke.find.attr(e, "type")) + "/" + e.type), e; 3504 } 3505 function $e(e) { 3506 var t = Se.exec(e.type); 3507 return t ? (e.type = t[1]) : e.removeAttribute("type"), e; 3508 } 3509 function Fe(e, t) { 3510 for (var o, n = 0; null != (o = e[n]); n++) 3511 ke._data(o, "globalEval", !t || ke._data(t[n], "globalEval")); 3512 } 3513 function Oe(e, t) { 3514 if (1 === t.nodeType && ke.hasData(e)) { 3515 var o, 3516 n, 3517 i, 3518 s = ke._data(e), 3519 r = ke._data(t, s), 3520 a = s.events; 3521 if (a) 3522 for (o in (delete r.handle, (r.events = {}), a)) 3523 for (n = 0, i = a[o].length; n < i; n++) 3524 ke.event.add(t, o, a[o][n]); 3525 r.data && (r.data = ke.extend({}, r.data)); 3526 } 3527 } 3528 function He(e, t) { 3529 var o, 3530 n, 3531 i = 0, 3532 s = 3533 typeof e.getElementsByTagName !== v 3534 ? e.getElementsByTagName(t || "*") 3535 : typeof e.querySelectorAll !== v 3536 ? e.querySelectorAll(t || "*") 3537 : T; 3538 if (!s) 3539 for (s = [], o = e.childNodes || e; null != (n = o[i]); i++) 3540 !t || ke.nodeName(n, t) ? s.push(n) : ke.merge(s, He(n, t)); 3541 return t === T || (t && ke.nodeName(e, t)) ? ke.merge([e], s) : s; 3542 } 3543 function De(e) { 3544 xe.test(e.type) && (e.defaultChecked = e.checked); 3545 } 3546 (Ee.optgroup = Ee.option), 3547 (Ee.tbody = Ee.tfoot = Ee.colgroup = Ee.caption = Ee.thead), 3548 (Ee.th = Ee.td), 3549 ke.fn.extend({ 3550 text: function (e) { 3551 return ke.access( 3552 this, 3553 function (e) { 3554 return e === T 3555 ? ke.text(this) 3556 : this.empty().append( 3557 ((this[0] && this[0].ownerDocument) || m).createTextNode(e) 3558 ); 3559 }, 3560 null, 3561 e, 3562 arguments.length 3563 ); 3564 }, 3565 append: function () { 3566 return this.domManip(arguments, function (e) { 3567 (1 !== this.nodeType && 3568 11 !== this.nodeType && 3569 9 !== this.nodeType) || 3570 Le(this, e).appendChild(e); 3571 }); 3572 }, 3573 prepend: function () { 3574 return this.domManip(arguments, function (e) { 3575 var t; 3576 (1 !== this.nodeType && 3577 11 !== this.nodeType && 3578 9 !== this.nodeType) || 3579 (t = Le(this, e)).insertBefore(e, t.firstChild); 3580 }); 3581 }, 3582 before: function () { 3583 return this.domManip(arguments, function (e) { 3584 this.parentNode && this.parentNode.insertBefore(e, this); 3585 }); 3586 }, 3587 after: function () { 3588 return this.domManip(arguments, function (e) { 3589 this.parentNode && 3590 this.parentNode.insertBefore(e, this.nextSibling); 3591 }); 3592 }, 3593 remove: function (e, t) { 3594 for ( 3595 var o, n = e ? ke.filter(e, this) : this, i = 0; 3596 null != (o = n[i]); 3597 i++ 3598 ) 3599 t || 1 !== o.nodeType || ke.cleanData(He(o)), 3600 o.parentNode && 3601 (t && ke.contains(o.ownerDocument, o) && Fe(He(o, "script")), 3602 o.parentNode.removeChild(o)); 3603 return this; 3604 }, 3605 empty: function () { 3606 for (var e, t = 0; null != (e = this[t]); t++) { 3607 for (1 === e.nodeType && ke.cleanData(He(e, !1)); e.firstChild; ) 3608 e.removeChild(e.firstChild); 3609 e.options && ke.nodeName(e, "select") && (e.options.length = 0); 3610 } 3611 return this; 3612 }, 3613 clone: function (e, t) { 3614 return ( 3615 (e = null != e && e), 3616 (t = null == t ? e : t), 3617 this.map(function () { 3618 return ke.clone(this, e, t); 3619 }) 3620 ); 3621 }, 3622 html: function (e) { 3623 return ke.access( 3624 this, 3625 function (e) { 3626 var t = this[0] || {}, 3627 o = 0, 3628 n = this.length; 3629 if (e === T) 3630 return 1 === t.nodeType ? t.innerHTML.replace(he, "") : T; 3631 if ( 3632 !( 3633 "string" != typeof e || 3634 be.test(e) || 3635 (!ke.support.htmlSerialize && fe.test(e)) || 3636 (!ke.support.leadingWhitespace && me.test(e)) || 3637 Ee[(ve.exec(e) || ["", ""])[1].toLowerCase()] 3638 ) 3639 ) { 3640 e = e.replace(ge, "<$1></$2>"); 3641 try { 3642 for (; o < n; o++) 3643 1 === (t = this[o] || {}).nodeType && 3644 (ke.cleanData(He(t, !1)), (t.innerHTML = e)); 3645 t = 0; 3646 } catch (e) {} 3647 } 3648 t && this.empty().append(e); 3649 }, 3650 null, 3651 e, 3652 arguments.length 3653 ); 3654 }, 3655 replaceWith: function () { 3656 var n = ke.map(this, function (e) { 3657 return [e.nextSibling, e.parentNode]; 3658 }), 3659 i = 0; 3660 return ( 3661 this.domManip( 3662 arguments, 3663 function (e) { 3664 var t = n[i++], 3665 o = n[i++]; 3666 o && 3667 (t && t.parentNode !== o && (t = this.nextSibling), 3668 ke(this).remove(), 3669 o.insertBefore(e, t)); 3670 }, 3671 !0 3672 ),
3673 i ? this : this.remove() 3674 ); 3675 }, 3676 detach: function (e) { 3677 return this.remove(e, !0); 3678 }, 3679 domManip: function (o, n, i) { 3680 o = g.apply([], o); 3681 var e, 3682 t, 3683 s, 3684 r, 3685 a, 3686 l, 3687 c = 0, 3688 d = this.length, 3689 u = this, 3690 p = d - 1, 3691 h = o[0], 3692 f = ke.isFunction(h); 3693 if ( 3694 f || 3695 (!(d <= 1 || "string" != typeof h || ke.support.checkClone) && 3696 Te.test(h)) 3697 ) 3698 return this.each(function (e) { 3699 var t = u.eq(e); 3700 f && (o[0] = h.call(this, e, t.html())), t.domManip(o, n, i); 3701 }); 3702 if ( 3703 d && 3704 ((e = (l = ke.buildFragment( 3705 o, 3706 this[0].ownerDocument, 3707 !1, 3708 !i && this 3709 )).firstChild), 3710 1 === l.childNodes.length && (l = e), 3711 e) 3712 ) { 3713 for (s = (r = ke.map(He(l, "script"), Ae)).length; c < d; c++) 3714 (t = l), 3715 c !== p && 3716 ((t = ke.clone(t, !0, !0)), 3717 s && ke.merge(r, He(t, "script"))), 3718 n.call(this[c], t, c); 3719 if (s) 3720 for ( 3721 a = r[r.length - 1].ownerDocument, ke.map(r, $e), c = 0; 3722 c < s; 3723 c++ 3724 ) 3725 (t = r[c]), 3726 Ce.test(t.type || "") && 3727 !ke._data(t, "globalEval") && 3728 ke.contains(a, t) && 3729 (t.src 3730 ? ke._evalUrl(t.src) 3731 : ke.globalEval( 3732 ( 3733 t.text || 3734 t.textContent || 3735 t.innerHTML || 3736 "" 3737 ).replace(ze, "") 3738 )); 3739 l = e = null; 3740 } 3741 return this; 3742 }, 3743 }), 3744 ke.each( 3745 { 3746 appendTo: "append", 3747 prependTo: "prepend", 3748 insertBefore: "before", 3749 insertAfter: "after", 3750 replaceAll: "replaceWith", 3751 }, 3752 function (e, r) { 3753 ke.fn[e] = function (e) { 3754 for (var t, o = 0, n = [], i = ke(e), s = i.length - 1; o <= s; o++)
3755 (t = o === s ? this : this.clone(!0)), 3756 ke(i[o])[r](t), 3757 d.apply(n, t.get()); 3758 return this.pushStack(n); 3759 }; 3760 } 3761 ), 3762 ke.extend({ 3763 clone: function (e, t, o) { 3764 var n, 3765 i, 3766 s, 3767 r, 3768 a, 3769 l = ke.contains(e.ownerDocument, e); 3770 if ( 3771 (ke.support.html5Clone || 3772 ke.isXMLDoc(e) || 3773 !fe.test("<" + e.nodeName + ">") 3774 ? (s = e.cloneNode(!0)) 3775 : ((We.innerHTML = e.outerHTML), 3776 We.removeChild((s = We.firstChild))), 3777 !( 3778 (ke.support.noCloneEvent && ke.support.noCloneChecked) || 3779 (1 !== e.nodeType && 11 !== e.nodeType) || 3780 ke.isXMLDoc(e) 3781 )) 3782 ) 3783 for (n = He(s), a = He(e), r = 0; null != (i = a[r]); ++r) 3784 n[r] && 3785 (function (e, t) { 3786 var o, n, i; 3787 if (1 === t.nodeType) { 3788 if ( 3789 ((o = t.nodeName.toLowerCase()), 3790 !ke.support.noCloneEvent && t[ke.expando]) 3791 ) { 3792 for (n in (i = ke._data(t)).events) 3793 ke.removeEvent(t, n, i.handle); 3794 t.removeAttribute(ke.expando); 3795 } 3796 "script" === o && t.text !== e.text 3797 ? ((Ae(t).text = e.text), $e(t)) 3798 : "object" === o 3799 ? (t.parentNode && (t.outerHTML = e.outerHTML), 3800 ke.support.html5Clone && 3801 e.innerHTML && 3802 !ke.trim(t.innerHTML) && 3803 (t.innerHTML = e.innerHTML)) 3804 : "input" === o && xe.test(e.type) 3805 ? ((t.defaultChecked = t.checked = e.checked), 3806 t.value !== e.value && (t.value = e.value)) 3807 : "option" === o 3808 ? (t.defaultSelected = t.selected = e.defaultSelected) 3809 : ("input" !== o && "textarea" !== o) || 3810 (t.defaultValue = e.defaultValue); 3811 } 3812 })(i, n[r]); 3813 if (t) 3814 if (o) 3815 for ( 3816 a = a || He(e), n = n || He(s), r = 0; 3817 null != (i = a[r]); 3818 r++ 3819 ) 3820 Oe(i, n[r]); 3821 else Oe(e, s); 3822 return ( 3823 0 < (n = He(s, "script")).length && Fe(n, !l && He(e, "script")), 3824 (n = a = i = null), 3825 s 3826 ); 3827 }, 3828 buildFragment: function (e, t, o, n) { 3829 for ( 3830 var i, s, r, a, l, c, d, u = e.length, p = ue(t), h = [], f = 0; 3831 f < u; 3832 f++ 3833 ) 3834 if ((s = e[f]) || 0 === s) 3835 if ("object" === ke.type(s)) ke.merge(h, s.nodeType ? [s] : s); 3836 else if (we.test(s)) { 3837 for ( 3838 a = a || p.appendChild(t.createElement("div")), 3839 l = (ve.exec(s) || ["", ""])[1].toLowerCase(), 3840 d = Ee[l] || Ee._default, 3841 a.innerHTML = d[1] + s.replace(ge, "<$1></$2>") + d[2], 3842 i = d[0]; 3843 i--; 3844 3845 ) 3846 a = a.lastChild; 3847 if ( 3848 (!ke.support.leadingWhitespace && 3849 me.test(s) && 3850 h.push(t.createTextNode(me.exec(s)[0])), 3851 !ke.support.tbody) 3852 ) 3853 for ( 3854 i = 3855 (s = 3856 "table" !== l || ye.test(s) 3857 ? "<table>" !== d[1] || ye.test(s) 3858 ? 0 3859 : a 3860 : a.firstChild) && s.childNodes.length; 3861 i--; 3862 3863 ) 3864 ke.nodeName((c = s.childNodes[i]), "tbody") && 3865 !c.childNodes.length && 3866 s.removeChild(c); 3867 for ( 3868 ke.merge(h, a.childNodes), a.textContent = ""; 3869 a.firstChild; 3870 3871 ) 3872 a.removeChild(a.firstChild); 3873 a = p.lastChild; 3874 } else h.push(t.createTextNode(s)); 3875 for ( 3876 a && p.removeChild(a), 3877 ke.support.appendChecked || ke.grep(He(h, "input"), De), 3878 f = 0; 3879 (s = h[f++]); 3880 3881 ) 3882 if ( 3883 (!n || -1 === ke.inArray(s, n)) && 3884 ((r = ke.contains(s.ownerDocument, s)), 3885 (a = He(p.appendChild(s), "script")), 3886 r && Fe(a), 3887 o) 3888 ) 3889 for (i = 0; (s = a[i++]); ) Ce.test(s.type || "") && o.push(s); 3890 return (a = null), p; 3891 }, 3892 cleanData: function (e, t) { 3893 for ( 3894 var o, 3895 n, 3896 i, 3897 s, 3898 r = 0, 3899 a = ke.expando, 3900 l = ke.cache, 3901 c = ke.support.deleteExpando, 3902 d = ke.event.special; 3903 null != (o = e[r]); 3904 r++ 3905 ) 3906 if ((t || ke.acceptData(o)) && (s = (i = o[a]) && l[i])) { 3907 if (s.events) 3908 for (n in s.events) 3909 d[n] ? ke.event.remove(o, n) : ke.removeEvent(o, n, s.handle); 3910 l[i] && 3911 (delete l[i], 3912 c 3913 ? delete o[a] 3914 : typeof o.removeAttribute !== v 3915 ? o.removeAttribute(a) 3916 : (o[a] = null),
3917 u.push(i)); 3918 } 3919 }, 3920 _evalUrl: function (e) { 3921 return ke.ajax({ 3922 url: e, 3923 type: "GET", 3924 dataType: "script", 3925 async: !1, 3926 global: !1, 3927 throws: !0, 3928 }); 3929 }, 3930 }), 3931 ke.fn.extend({ 3932 wrapAll: function (t) { 3933 return ke.isFunction(t) 3934 ? this.each(function (e) { 3935 ke(this).wrapAll(t.call(this, e)); 3936 }) 3937 : (this[0] && 3938 ((e = ke(t, this[0].ownerDocument).eq(0).clone(!0)), 3939 this[0].parentNode && e.insertBefore(this[0]), 3940 e 3941 .map(function () { 3942 for ( 3943 var e = this; 3944 e.firstChild && 1 === e.firstChild.nodeType; 3945 3946 ) 3947 e = e.firstChild; 3948 return e; 3949 }) 3950 .append(this)), 3951 this); 3952 var e; 3953 }, 3954 wrapInner: function (o) { 3955 return ke.isFunction(o) 3956 ? this.each(function (e) { 3957 ke(this).wrapInner(o.call(this, e)); 3958 }) 3959 : this.each(function () { 3960 var e = ke(this), 3961 t = e.contents(); 3962 t.length ? t.wrapAll(o) : e.append(o); 3963 }); 3964 }, 3965 wrap: function (t) { 3966 var o = ke.isFunction(t); 3967 return this.each(function (e) { 3968 ke(this).wrapAll(o ? t.call(this, e) : t); 3969 }); 3970 }, 3971 unwrap: function () { 3972 return this.parent() 3973 .each(function () { 3974 ke.nodeName(this, "body") || 3975 ke(this).replaceWith(this.childNodes); 3976 }) 3977 .end(); 3978 }, 3979 }); 3980 var Ie, 3981 Ne, 3982 Me, 3983 Pe = /alpha\([^)]*\)/i, 3984 je = /opacity\s*=\s*([^)]*)/, 3985 Re = /^(top|right|bottom|left)$/, 3986 Be = /^(none|table(?!-c[ea]).+)/, 3987 _e = /^margin/, 3988 qe = RegExp("^(" + x + ")(.*)$", "i"), 3989 Ue = RegExp("^(" + x + ")(?!px)[a-z%]+$", "i"), 3990 Xe = RegExp("^([+-])=(" + x + ")", "i"), 3991 Ze = { BODY: "block" }, 3992 Ye = { position: "absolute", visibility: "hidden", display: "block" }, 3993 Qe = { letterSpacing: 0, fontWeight: 400 }, 3994 Ve = ["Top", "Right", "Bottom", "Left"], 3995 Ge = ["Webkit", "O", "Moz", "ms"]; 3996 function Ke(e, t) { 3997 if (t in e) return t; 3998 for ( 3999 var o = t.charAt(0).toUpperCase() + t.slice(1), n = t, i = Ge.length; 4000 i--; 4001 4002 ) 4003 if ((t = Ge[i] + o) in e) return t; 4004 return n; 4005 } 4006 function Je(e, t) { 4007 return ( 4008 (e = t || e), 4009 "none" === ke.css(e, "display") || !ke.contains(e.ownerDocument, e) 4010 ); 4011 } 4012 function et(e, t) { 4013 for (var o, n, i, s = [], r = 0, a = e.length; r < a; r++) 4014 (n = e[r]).style && 4015 ((s[r] = ke._data(n, "olddisplay")), 4016 (o = n.style.display), 4017 t 4018 ? (s[r] || "none" !== o || (n.style.display = ""), 4019 "" === n.style.display && 4020 Je(n) && 4021 (s[r] = ke._data(n, "olddisplay", it(n.nodeName)))) 4022 : s[r] || 4023 ((i = Je(n)), 4024 ((o && "none" !== o) || !i) && 4025 ke._data(n, "olddisplay", i ? o : ke.css(n, "display")))); 4026 for (r = 0; r < a; r++) 4027 (n = e[r]).style && 4028 ((t && "none" !== n.style.display && "" !== n.style.display) || 4029 (n.style.display = t ? s[r] || "" : "none")); 4030 return e; 4031 } 4032 function tt(e, t, o) { 4033 var n = qe.exec(t); 4034 return n ? Math.max(0, n[1] - (o || 0)) + (n[2] || "px") : t; 4035 } 4036 function ot(e, t, o, n, i) { 4037 for ( 4038 var s = o === (n ? "border" : "content") ? 4 : "width" === t ? 1 : 0, 4039 r = 0; 4040 s < 4; 4041 s += 2 4042 ) 4043 "margin" === o && (r += ke.css(e, o + Ve[s], !0, i)), 4044 n 4045 ? ("content" === o && (r -= ke.css(e, "padding" + Ve[s], !0, i)), 4046 "margin" !== o && 4047 (r -= ke.css(e, "border" + Ve[s] + "Width", !0, i))) 4048 : ((r += ke.css(e, "padding" + Ve[s], !0, i)), 4049 "padding" !== o && 4050 (r += ke.css(e, "border" + Ve[s] + "Width", !0, i))); 4051 return r; 4052 } 4053 function nt(e, t, o) { 4054 var n = !0, 4055 i = "width" === t ? e.offsetWidth : e.offsetHeight, 4056 s = Ne(e), 4057 r = 4058 ke.support.boxSizing && 4059 "border-box" === ke.css(e, "boxSizing", !1, s); 4060 if (i <= 0 || null == i) { 4061 if ( 4062 (((i = Me(e, t, s)) < 0 || null == i) && (i = e.style[t]), Ue.test(i)) 4063 ) 4064 return i; 4065 (n = r && (ke.support.boxSizingReliable || i === e.style[t])), 4066 (i = parseFloat(i) || 0); 4067 } 4068 return i + ot(e, t, o || (r ? "border" : "content"), n, s) + "px"; 4069 } 4070 function it(e) { 4071 var t = m, 4072 o = Ze[e]; 4073 return ( 4074 o || 4075 (("none" !== (o = st(e, t)) && o) || 4076 ((t = ( 4077 (Ie = ( 4078 Ie || 4079 ke("<iframe frameborder='0' width='0' height='0'/>").css( 4080 "cssText", 4081 "display:block !important" 4082 ) 4083 ).appendTo(t.documentElement))[0].contentWindow || 4084 Ie[0].contentDocument 4085 ).document).write("<!doctype html><html><body>"), 4086 t.close(), 4087 (o = st(e, t)), 4088 Ie.detach()), 4089 (Ze[e] = o)), 4090 o 4091 ); 4092 } 4093 function st(e, t) { 4094 var o = ke(t.createElement(e)).appendTo(t.body), 4095 n = ke.css(o[0], "display"); 4096 return o.remove(), n; 4097 } 4098 ke.fn.extend({ 4099 css: function (e, t) { 4100 return ke.access( 4101 this, 4102 function (e, t, o) { 4103 var n, 4104 i, 4105 s = {}, 4106 r = 0; 4107 if (ke.isArray(t)) { 4108 for (i = Ne(e), n = t.length; r < n; r++) 4109 s[t[r]] = ke.css(e, t[r], !1, i); 4110 return s; 4111 } 4112 return o !== T ? ke.style(e, t, o) : ke.css(e, t); 4113 }, 4114 e, 4115 t, 4116 1 < arguments.length 4117 ); 4118 }, 4119 show: function () { 4120 return et(this, !0); 4121 }, 4122 hide: function () { 4123 return et(this); 4124 }, 4125 toggle: function (e) { 4126 var t = "boolean" == typeof e; 4127 return this.each(function () { 4128 (t ? e : Je(this)) ? ke(this).show() : ke(this).hide(); 4129 }); 4130 }, 4131 }), 4132 ke.extend({ 4133 cssHooks: { 4134 opacity: { 4135 get: function (e, t) { 4136 if (t) { 4137 var o = Me(e, "opacity"); 4138 return "" === o ? "1" : o; 4139 } 4140 }, 4141 }, 4142 }, 4143 cssNumber: { 4144 columnCount: !0, 4145 fillOpacity: !0, 4146 fontWeight: !0, 4147 lineHeight: !0, 4148 opacity: !0, 4149 orphans: !0, 4150 widows: !0, 4151 zIndex: !0, 4152 zoom: !0, 4153 }, 4154 cssProps: { float: ke.support.cssFloat ? "cssFloat" : "styleFloat" }, 4155 style: function (e, t, o, n) { 4156 if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { 4157 var i, 4158 s, 4159 r, 4160 a = ke.camelCase(t), 4161 l = e.style; 4162 if ( 4163 ((t = ke.cssProps[a] || (ke.cssProps[a] = Ke(l, a))), 4164 (r = ke.cssHooks[t] || ke.cssHooks[a]), 4165 o === T) 4166 ) 4167 return r && "get" in r && (i = r.get(e, !1, n)) !== T ? i : l[t]; 4168 if ( 4169 ("string" === (s = typeof o) && 4170 (i = Xe.exec(o)) && 4171 ((o = (i[1] + 1) * i[2] + parseFloat(ke.css(e, t))), 4172 (s = "number")), 4173 !( 4174 null == o || 4175 ("number" === s && isNaN(o)) || 4176 ("number" !== s || ke.cssNumber[a] || (o += "px"), 4177 ke.support.clearCloneStyle || 4178 "" !== o || 4179 0 !== t.indexOf("background") || 4180 (l[t] = "inherit"), 4181 r && "set" in r && (o = r.set(e, o, n)) === T) 4182 )) 4183 ) 4184 try { 4185 l[t] = o; 4186 } catch (e) {} 4187 } 4188 }, 4189 css: function (e, t, o, n) { 4190 var i, 4191 s, 4192 r, 4193 a = ke.camelCase(t); 4194 return ( 4195 (t = ke.cssProps[a] || (ke.cssProps[a] = Ke(e.style, a))), 4196 (r = ke.cssHooks[t] || ke.cssHooks[a]) && 4197 "get" in r && 4198 (s = r.get(e, !0, o)), 4199 s === T && (s = Me(e, t, n)), 4200 "normal" === s && t in Qe && (s = Qe[t]), 4201 "" === o || o 4202 ? ((i = parseFloat(s)), !0 === o || ke.isNumeric(i) ? i || 0 : s) 4203 : s 4204 ); 4205 }, 4206 }), 4207 f.getComputedStyle 4208 ? ((Ne = function (e) { 4209 return f.getComputedStyle(e, null); 4210 }), 4211 (Me = function (e, t, o) { 4212 var n, 4213 i, 4214 s, 4215 r = o || Ne(e), 4216 a = r ? r.getPropertyValue(t) || r[t] : T, 4217 l = e.style; 4218 return ( 4219 r && 4220 ("" !== a || 4221 ke.contains(e.ownerDocument, e) || 4222 (a = ke.style(e, t)), 4223 Ue.test(a) && 4224 _e.test(t) && 4225 ((n = l.width), 4226 (i = l.minWidth), 4227 (s = l.maxWidth), 4228 (l.minWidth = l.maxWidth = l.width = a), 4229 (a = r.width), 4230 (l.width = n), 4231 (l.minWidth = i), 4232 (l.maxWidth = s))), 4233 a 4234 ); 4235 })) 4236 : m.documentElement.currentStyle && 4237 ((Ne = function (e) { 4238 return e.currentStyle; 4239 }), 4240 (Me = function (e, t, o) { 4241 var n, 4242 i, 4243 s, 4244 r = o || Ne(e), 4245 a = r ? r[t] : T, 4246 l = e.style; 4247 return ( 4248 null == a && l && l[t] && (a = l[t]), 4249 Ue.test(a) && 4250 !Re.test(t) && 4251 ((n = l.left), 4252 (s = (i = e.runtimeStyle) && i.left) && 4253 (i.left = e.currentStyle.left), 4254 (l.left = "fontSize" === t ? "1em" : a), 4255 (a = l.pixelLeft + "px"), 4256 (l.left = n), 4257 s && (i.left = s)), 4258 "" === a ? "auto" : a 4259 ); 4260 })), 4261 ke.each(["height", "width"], function (e, i) { 4262 ke.cssHooks[i] = { 4263 get: function (e, t, o) { 4264 return t 4265 ? 0 === e.offsetWidth && Be.test(ke.css(e, "display")) 4266 ? ke.swap(e, Ye, function () { 4267 return nt(e, i, o); 4268 }) 4269 : nt(e, i, o) 4270 : T; 4271 }, 4272 set: function (e, t, o) { 4273 var n = o && Ne(e); 4274 return tt( 4275 0, 4276 t, 4277 o 4278 ? ot( 4279 e, 4280 i, 4281 o, 4282 ke.support.boxSizing && 4283 "border-box" === ke.css(e, "boxSizing", !1, n), 4284 n 4285 ) 4286 : 0 4287 ); 4288 }, 4289 }; 4290 }), 4291 ke.support.opacity || 4292 (ke.cssHooks.opacity = { 4293 get: function (e, t) { 4294 return je.test( 4295 (t && e.currentStyle ? e.currentStyle.filter : e.style.filter) || 4296 "" 4297 ) 4298 ? 0.01 * parseFloat(RegExp.$1) + "" 4299 : t 4300 ? "1" 4301 : ""; 4302 }, 4303 set: function (e, t) { 4304 var o = e.style, 4305 n = e.currentStyle, 4306 i = ke.isNumeric(t) ? "alpha(opacity=" + 100 * t + ")" : "", 4307 s = (n && n.filter) || o.filter || ""; 4308 (((o.zoom = 1) <= t || "" === t) && 4309 "" === ke.trim(s.replace(Pe, "")) && 4310 o.removeAttribute && 4311 (o.removeAttribute("filter"), "" === t || (n && !n.filter))) || 4312 (o.filter = Pe.test(s) ? s.replace(Pe, i) : s + " " + i); 4313 }, 4314 }), 4315 ke(function () { 4316 ke.support.reliableMarginRight || 4317 (ke.cssHooks.marginRight = { 4318 get: function (e, t) { 4319 return t 4320 ? ke.swap(e, { display: "inline-block" }, Me, [ 4321 e, 4322 "marginRight", 4323 ]) 4324 : T; 4325 }, 4326 }), 4327 !ke.support.pixelPosition && 4328 ke.fn.position && 4329 ke.each(["top", "left"], function (e, o) { 4330 ke.cssHooks[o] = { 4331 get: function (e, t) { 4332 return t 4333 ? ((t = Me(e, o)), 4334 Ue.test(t) ? ke(e).position()[o] + "px" : t) 4335 : T; 4336 }, 4337 }; 4338 }); 4339 }), 4340 ke.expr && 4341 ke.expr.filters && 4342 ((ke.expr.filters.hidden = function (e) { 4343 return ( 4344 (e.offsetWidth <= 0 && e.offsetHeight <= 0) || 4345 (!ke.support.reliableHiddenOffsets && 4346 "none" === ((e.style && e.style.display) || ke.css(e, "display"))) 4347 ); 4348 }), 4349 (ke.expr.filters.visible = function (e) { 4350 return !ke.expr.filters.hidden(e); 4351 })), 4352 ke.each({ margin: "", padding: "", border: "Width" }, function (i, s) { 4353 (ke.cssHooks[i + s] = { 4354 expand: function (e) { 4355 for ( 4356 var t = 0, o = {}, n = "string" == typeof e ? e.split(" ") : [e]; 4357 t < 4; 4358 t++ 4359 ) 4360 o[i + Ve[t] + s] = n[t] || n[t - 2] || n[0]; 4361 return o; 4362 }, 4363 }), 4364 _e.test(i) || (ke.cssHooks[i + s].set = tt); 4365 }); 4366 var rt = /%20/g, 4367 at = /\[\]$/, 4368 lt = /\r?\n/g, 4369 ct = /^(?:submit|button|image|reset|file)$/i, 4370 dt = /^(?:input|select|textarea|keygen)/i; 4371 ke.fn.extend({ 4372 serialize: function () { 4373 return ke.param(this.serializeArray()); 4374 }, 4375 serializeArray: function () { 4376 return this.map(function () { 4377 var e = ke.prop(this, "elements"); 4378 return e ? ke.makeArray(e) : this; 4379 }) 4380 .filter(function () { 4381 var e = this.type; 4382 return ( 4383 this.name && 4384 !ke(this).is(":disabled") && 4385 dt.test(this.nodeName) && 4386 !ct.test(e) && 4387 (this.checked || !xe.test(e)) 4388 ); 4389 }) 4390 .map(function (e, t) { 4391 var o = ke(this).val(); 4392 return null == o 4393 ? null 4394 : ke.isArray(o) 4395 ? ke.map(o, function (e) { 4396 return { name: t.name, value: e.replace(lt, "\r\n") }; 4397 }) 4398 : { name: t.name, value: o.replace(lt, "\r\n") }; 4399 }) 4400 .get(); 4401 }, 4402 }), 4403 (ke.param = function (e, t) { 4404 function o(e, t) { 4405 (t = ke.isFunction(t) ? t() : null == t ? "" : t), 4406 (i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t)); 4407 } 4408 var n, 4409 i = []; 4410 if ( 4411 (t === T && (t = ke.ajaxSettings && ke.ajaxSettings.traditional), 4412 ke.isArray(e) || (e.jquery && !ke.isPlainObject(e))) 4413 ) 4414 ke.each(e, function () { 4415 o(this.name, this.value); 4416 }); 4417 else 4418 for (n in e) 4419 !(function o(n, e, i, s) { 4420 var t; 4421 if (ke.isArray(e)) 4422 ke.each(e, function (e, t) { 4423 i || at.test(n) 4424 ? s(n, t) 4425 : o( 4426 n + "[" + ("object" == typeof t ? e : "") + "]", 4427 t, 4428 i, 4429 s 4430 ); 4431 }); 4432 else if (i || "object" !== ke.type(e)) s(n, e); 4433 else for (t in e) o(n + "[" + t + "]", e[t], i, s); 4434 })(n, e[n], t, o); 4435 return i.join("&").replace(rt, "+"); 4436 }), 4437 ke.each( 4438 "blur focus focusin focusout
4438 load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split( 4439 " " 4440 ), 4441 function (e, o) { 4442 ke.fn[o] = function (e, t) { 4443 return 0 < arguments.length 4444 ? this.on(o, null, e, t) 4445 : this.trigger(o); 4446 }; 4447 } 4448 ), 4449 ke.fn.extend({ 4450 hover: function (e, t) { 4451 return this.mouseenter(e).mouseleave(t || e); 4452 }, 4453 bind: function (e, t, o) { 4454 return this.on(e, null, t, o); 4455 }, 4456 unbind: function (e, t) { 4457 return this.off(e, null, t); 4458 }, 4459 delegate: function (e, t, o, n) { 4460 return this.on(t, e, o, n); 4461 }, 4462 undelegate: function (e, t, o) { 4463 return 1 === arguments.length 4464 ? this.off(e, "**") 4465 : this.off(t, e || "**", o); 4466 }, 4467 }); 4468 var ut, 4469 pt, 4470 ht = ke.now(), 4471 ft = /\?/, 4472 mt = /#.*$/, 4473 gt = /([?&])_=[^&]*/, 4474 vt = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm, 4475 yt = /^(?:GET|HEAD)$/, 4476 wt = /^\/\//, 4477 bt = /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, 4478 xt = ke.fn.load, 4479 kt = {}, 4480 Tt = {}, 4481 Ct = "*/".concat("*"); 4482 try { 4483 pt = e.href; 4484 } catch (e) { 4485 ((pt = m.createElement("a")).href = ""), (pt = pt.href); 4486 } 4487 function St(s) { 4488 return function (e, t) { 4489 "string" != typeof e && ((t = e), (e = "*")); 4490 var o, 4491 n = 0, 4492 i = e.toLowerCase().match(C) || []; 4493 if (ke.isFunction(t)) 4494 for (; (o = i[n++]); ) 4495 "+" === o[0] 4496 ? ((o = o.slice(1) || "*"), (s[o] = s[o] || []).unshift(t)) 4497 : (s[o] = s[o] || []).push(t); 4498 }; 4499 } 4500 function zt(t, i, s, r) { 4501 var a = {}, 4502 l = t === Tt; 4503 function c(e) { 4504 var n; 4505 return ( 4506 (a[e] = !0), 4507 ke.each(t[e] || [], function (e, t) { 4508 var o = t(i, s, r); 4509 return "string" != typeof o || l || a[o] 4510 ? l 4511 ? !(n = o) 4512 : T 4513 : (i.dataTypes.unshift(o), c(o), !1); 4514 }), 4515 n 4516 ); 4517 } 4518 return c(i.dataTypes[0]) || (!a["*"] && c("*")); 4519 } 4520 function Et(e, t) { 4521 var o, 4522 n, 4523 i = ke.ajaxSettings.flatOptions || {}; 4524 for (n in t) t[n] !== T && ((i[n] ? e : (o = o || {}))[n] = t[n]); 4525 return o && ke.extend(!0, e, o), e; 4526 } 4527 (ut = bt.exec(pt.toLowerCase()) || []), 4528 (ke.fn.load = function (e, t, o) { 4529 if ("string" != typeof e && xt) return xt.apply(this, arguments); 4530 var n, 4531 i, 4532 s, 4533 r = this, 4534 a = e.indexOf(" "); 4535 return ( 4536 0 <= a && ((n = e.slice(a, e.length)), (e = e.slice(0, a))), 4537 ke.isFunction(t) 4538 ? ((o = t), (t = T)) 4539 : t && "object" == typeof t && (s = "POST"), 4540 0 < r.length && 4541 ke 4542 .ajax({ url: e, type: s, dataType: "html", data: t }) 4543 .done(function (e) { 4544 (i = arguments), 4545 r.html(n ? ke("<div>").append(ke.parseHTML(e)).find(n) : e); 4546 }) 4547 .complete( 4548 o && 4549 function (e, t) { 4550 r.each(o, i || [e.responseText, t, e]); 4551 } 4552 ), 4553 this 4554 ); 4555 }), 4556 ke.each( 4557 [ 4558 "ajaxStart", 4559 "ajaxStop", 4560 "ajaxComplete", 4561 "ajaxError", 4562 "ajaxSuccess", 4563 "ajaxSend", 4564 ], 4565 function (e, t) { 4566 ke.fn[t] = function (e) { 4567 return this.on(t, e); 4568 }; 4569 } 4570 ), 4571 ke.extend({ 4572 active: 0, 4573 lastModified: {}, 4574 etag: {}, 4575 ajaxSettings: { 4576 url: pt, 4577 type: "GET", 4578 isLocal: 4579 /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test( 4580 ut[1] 4581 ), 4582 global: !0, 4583 processData: !0, 4584 async: !0, 4585 contentType: "application/x-www-form-urlencoded; charset=UTF-8", 4586 accepts: { 4587 "*": Ct, 4588 text: "text/plain", 4589 html: "text/html", 4590 xml: "application/xml, text/xml", 4591 json: "application/json, text/javascript", 4592 }, 4593 contents: { xml: /xml/, html: /html/, json: /json/ }, 4594 responseFields: { 4595 xml: "responseXML", 4596 text: "responseText", 4597 json: "responseJSON", 4598 }, 4599 converters: { 4600 "* text": String, 4601 "text html": !0, 4602 "text json": ke.parseJSON, 4603 "text xml": ke.parseXML, 4604 }, 4605 flatOptions: { url: !0, context: !0 },
4606 }, 4607 ajaxSetup: function (e, t) { 4608 return t ? Et(Et(e, ke.ajaxSettings), t) : Et(ke.ajaxSettings, e); 4609 }, 4610 ajaxPrefilter: St(kt), 4611 ajaxTransport: St(Tt), 4612 ajax: function (e, t) { 4613 "object" == typeof e && ((t = e), (e = T)), (t = t || {}); 4614 var o, 4615 n, 4616 d, 4617 u, 4618 p, 4619 h, 4620 f, 4621 i, 4622 m = ke.ajaxSetup({}, t), 4623 g = m.context || m, 4624 v = m.context && (g.nodeType || g.jquery) ? ke(g) : ke.event, 4625 y = ke.Deferred(), 4626 w = ke.Callbacks("once memory"), 4627 b = m.statusCode || {}, 4628 s = {}, 4629 r = {}, 4630 x = 0, 4631 a = "canceled", 4632 k = { 4633 readyState: 0, 4634 getResponseHeader: function (e) { 4635 var t; 4636 if (2 === x) { 4637 if (!i) 4638 for (i = {}; (t = vt.exec(u)); ) 4639 i[t[1].toLowerCase()] = t[2]; 4640 t = i[e.toLowerCase()]; 4641 } 4642 return null == t ? null : t; 4643 }, 4644 getAllResponseHeaders: function () { 4645 return 2 === x ? u : null; 4646 }, 4647 setRequestHeader: function (e, t) { 4648 var o = e.toLowerCase(); 4649 return x || ((e = r[o] = r[o] || e), (s[e] = t)), this; 4650 }, 4651 overrideMimeType: function (e) { 4652 return x || (m.mimeType = e), this; 4653 }, 4654 statusCode: function (e) { 4655 var t; 4656 if (e) 4657 if (x < 2) for (t in e) b[t] = [b[t], e[t]]; 4658 else k.always(e[k.status]); 4659 return this; 4660 }, 4661 abort: function (e) { 4662 var t = e || a; 4663 return f && f.abort(t), l(0, t), this; 4664 }, 4665 }; 4666 if ( 4667 ((y.promise(k).complete = w.add), 4668 (k.success = k.done), 4669 (k.error = k.fail), 4670 (m.url = ((e || m.url || pt) + "") 4671 .replace(mt, "") 4672 .replace(wt, ut[1] + "//")), 4673 (m.type = t.method || t.type || m.method || m.type), 4674 (m.dataTypes = ke 4675 .trim(m.dataType || "*") 4676 .toLowerCase() 4677 .match(C) || [""]), 4678 null == m.crossDomain && 4679 ((o = bt.exec(m.url.toLowerCase())), 4680 (m.crossDomain = !( 4681 !o || 4682 (o[1] === ut[1] && 4683 o[2] === ut[2] && 4684 (o[3] || ("http:" === o[1] ? "80" : "443")) === 4685 (ut[3] || ("http:" === ut[1] ? "80" : "443"))) 4686 ))), 4687 m.data && 4688 m.processData && 4689 "string" != typeof m.data && 4690 (m.data = ke.param(m.data, m.traditional)), 4691 zt(kt, m, t, k), 4692 2 === x) 4693 ) 4694 return k; 4695 for (n in ((h = m.global) && 4696 0 == ke.active++ && 4697 ke.event.trigger("ajaxStart"), 4698 (m.type = m.type.toUpperCase()), 4699 (m.hasContent = !yt.test(m.type)), 4700 (d = m.url), 4701 m.hasContent || 4702 (m.data && 4703 ((d = m.url += (ft.test(d) ? "&" : "?") + m.data), delete m.data), 4704 !1 === m.cache && 4705 (m.url = gt.test(d) 4706 ? d.replace(gt, "$1_=" + ht++) 4707 : d + (ft.test(d) ? "&" : "?") + "_=" + ht++)), 4708 m.ifModified && 4709 (ke.lastModified[d] && 4710 k.setRequestHeader("If-Modified-Since", ke.lastModified[d]), 4711 ke.etag[d] && k.setRequestHeader("If-None-Match", ke.etag[d])), 4712 ((m.data && m.hasContent && !1 !== m.contentType) || t.contentType) && 4713 k.setRequestHeader("Content-Type", m.contentType), 4714 k.setRequestHeader( 4715 "Accept", 4716 m.dataTypes[0] && m.accepts[m.dataTypes[0]] 4717 ? m.accepts[m.dataTypes[0]] + 4718 ("*" !== m.dataTypes[0] ? ", " + Ct + "; q=0.01" : "") 4719 : m.accepts["*"] 4720 ), 4721 m.headers)) 4722 k.setRequestHeader(n, m.headers[n]);
4723 if (m.beforeSend && (!1 === m.beforeSend.call(g, k, m) || 2 === x)) 4724 return k.abort(); 4725 for (n in ((a = "abort"), { success: 1, error: 1, complete: 1 })) 4726 k[n](m[n]); 4727 if ((f = zt(Tt, m, t, k))) { 4728 (k.readyState = 1), 4729 h && v.trigger("ajaxSend", [k, m]), 4730 m.async && 4731 0 < m.timeout && 4732 (p = setTimeout(function () { 4733 k.abort("timeout"); 4734 }, m.timeout)); 4735 try { 4736 (x = 1), f.send(s, l); 4737 } catch (e) { 4738 if (!(x < 2)) throw e; 4739 l(-1, e); 4740 } 4741 } else l(-1, "No Transport"); 4742 function l(e, t, o, n) { 4743 var i, 4744 s, 4745 r, 4746 a, 4747 l, 4748 c = t; 4749 2 !== x && 4750 ((x = 2), 4751 p && clearTimeout(p), 4752 (f = T), 4753 (u = n || ""), 4754 (k.readyState = 0 < e ? 4 : 0), 4755 (i = (200 <= e && e < 300) || 304 === e), 4756 o && 4757 (a = (function (e, t, o) { 4758 var n, 4759 i, 4760 s, 4761 r, 4762 a = e.contents, 4763 l = e.dataTypes; 4764 for (; "*" === l[0]; ) 4765 l.shift(), 4766 i === T && 4767 (i = e.mimeType || t.getResponseHeader("Content-Type")); 4768 if (i) 4769 for (r in a) 4770 if (a[r] && a[r].test(i)) { 4771 l.unshift(r); 4772 break; 4773 } 4774 if (l[0] in o) s = l[0]; 4775 else { 4776 for (r in o) { 4777 if (!l[0] || e.converters[r + " " + l[0]]) { 4778 s = r; 4779 break; 4780 } 4781 n = n || r; 4782 } 4783 s = s || n; 4784 } 4785 return s ? (s !== l[0] && l.unshift(s), o[s]) : T; 4786 })(m, k, o)), 4787 (a = (function (e, t, o, n) { 4788 var i, 4789 s, 4790 r, 4791 a, 4792 l, 4793 c = {}, 4794 d = e.dataTypes.slice(); 4795 if (d[1]) 4796 for (r in e.converters) c[r.toLowerCase()] = e.converters[r]; 4797 s = d.shift(); 4798 for (; s; ) 4799 if ( 4800 (e.responseFields[s] && (o[e.responseFields[s]] = t), 4801 !l && 4802 n && 4803 e.dataFilter && 4804 (t = e.dataFilter(t, e.dataType)), 4805 (l = s), 4806 (s = d.shift())) 4807 ) 4808 if ("*" === s) s = l; 4809 else if ("*" !== l && l !== s) { 4810 if (!(r = c[l + " " + s] || c["* " + s])) 4811 for (i in c) 4812 if ( 4813 (a = i.split(" "))[1] === s && 4814 (r = c[l + " " + a[0]] || c["* " + a[0]]) 4815 ) { 4816 !0 === r 4817 ? (r = c[i]) 4818 : !0 !== c[i] && ((s = a[0]), d.unshift(a[1])); 4819 break; 4820 } 4821 if (!0 !== r) 4822 if (r && e.throws) t = r(t); 4823 else 4824 try { 4825 t = r(t); 4826 } catch (e) { 4827 return { 4828 state: "parsererror", 4829 error: r 4830 ? e 4831 : "No conversion from " + l + " to " + s, 4832 }; 4833 } 4834 } 4835 return { state: "success", data: t }; 4836 })(m, a, k, i)), 4837 i 4838 ? (m.ifModified && 4839 ((l = k.getResponseHeader("Last-Modified")) && 4840 (ke.lastModified[d] = l), 4841 (l = k.getResponseHeader("etag")) && (ke.etag[d] = l)), 4842 204 === e || "HEAD" === m.type 4843 ? (c = "nocontent") 4844 : 304 === e 4845 ? (c = "notmodified") 4846 : ((c = a.state), (s = a.data), (i = !(r = a.error)))) 4847 : ((r = c), (!e && c) || ((c = "error"), e < 0 && (e = 0))), 4848 (k.status = e), 4849 (k.statusText = (t || c) + ""), 4850 i ? y.resolveWith(g, [s, c, k]) : y.rejectWith(g, [k, c, r]), 4851 k.statusCode(b), 4852 (b = T), 4853 h && 4854 v.trigger(i ? "ajaxSuccess" : "ajaxError", [k, m, i ? s : r]), 4855 w.fireWith(g, [k, c]), 4856 h && 4857 (v.trigger("ajaxComplete", [k, m]), 4858 --ke.active || ke.event.trigger("ajaxStop"))); 4859 } 4860 return k; 4861 }, 4862 getJSON: function (e, t, o) { 4863 return ke.get(e, t, o, "json"); 4864 }, 4865 getScript: function (e, t) { 4866 return ke.get(e, T, t, "script"); 4867 }, 4868 }), 4869 ke.each(["get", "post"], function (e, i) { 4870 ke[i] = function (e, t, o, n) { 4871 return ( 4872 ke.isFunction(t) && ((n = n || o), (o = t), (t = T)), 4873 ke.ajax({ url: e, type: i, dataType: n, data: t, success: o }) 4874 ); 4875 }; 4876 }), 4877 ke.ajaxSetup({ 4878 accepts: { 4879 script: 4880 "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript", 4881 }, 4882 contents: { script: /(?:java|ecma)script/ }, 4883 converters: { 4884 "text script": function (e) { 4885 return ke.globalEval(e), e; 4886 }, 4887 }, 4888 }), 4889 ke.ajaxPrefilter("script", function (e) { 4890 e.cache === T && (e.cache = !1), 4891 e.crossDomain && ((e.type = "GET"), (e.global = !1)); 4892 }), 4893 ke.ajaxTransport("script", function (t) { 4894 if (t.crossDomain) { 4895 var n, 4896 i = m.head || ke("head")[0] || m.documentElement; 4897 return { 4898 send: function (e, o) { 4899 ((n = m.createElement("script")).async = !0), 4900 t.scriptCharset && (n.charset = t.scriptCharset), 4901 (n.src = t.url), 4902 (n.onload = n.onreadystatechange = 4903 function (e, t) { 4904 (!t && 4905 n.readyState && 4906 !/loaded|complete/.test(n.readyState)) || 4907 ((n.onload = n.onreadystatechange = null),
4908 n.parentNode && n.parentNode.removeChild(n), 4909 (n = null), 4910 t || o(200, "success")); 4911 }), 4912 i.insertBefore(n, i.firstChild); 4913 }, 4914 abort: function () { 4915 n && n.onload(T, !0); 4916 }, 4917 }; 4918 } 4919 }); 4920 var Wt = [], 4921 Lt = /(=)\?(?=&|$)|\?\?/; 4922 ke.ajaxSetup({ 4923 jsonp: "callback", 4924 jsonpCallback: function () { 4925 var e = Wt.pop() || ke.expando + "_" + ht++; 4926 return (this[e] = !0), e; 4927 }, 4928 }), 4929 ke.ajaxPrefilter("json jsonp", function (e, t, o) { 4930 var n, 4931 i, 4932 s, 4933 r = 4934 !1 !== e.jsonp && 4935 (Lt.test(e.url) 4936 ? "url" 4937 : "string" == typeof e.data && 4938 !(e.contentType || "").indexOf( 4939 "application/x-www-form-urlencoded" 4940 ) && 4941 Lt.test(e.data) && 4942 "data"); 4943 return r || "jsonp" === e.dataTypes[0] 4944 ? ((n = e.jsonpCallback = 4945 ke.isFunction(e.jsonpCallback) 4946 ? e.jsonpCallback() 4947 : e.jsonpCallback), 4948 r 4949 ? (e[r] = e[r].replace(Lt, "$1" + n)) 4950 : !1 !== e.jsonp && 4951 (e.url += (ft.test(e.url) ? "&" : "?") + e.jsonp + "=" + n), 4952 (e.converters["script json"] = function () { 4953 return s || ke.error(n + " was not called"), s[0]; 4954 }), 4955 (e.dataTypes[0] = "json"), 4956 (i = f[n]), 4957 (f[n] = function () { 4958 s = arguments; 4959 }), 4960 o.always(function () { 4961 (f[n] = i), 4962 e[n] && ((e.jsonpCallback = t.jsonpCallback), Wt.push(n)), 4963 s && ke.isFunction(i) && i(s[0]), 4964 (s = i = T); 4965 }), 4966 "script") 4967 : T; 4968 }); 4969 var At, 4970 $t, 4971 Ft = 0, 4972 Ot = 4973 f.ActiveXObject && 4974 function () { 4975 var e; 4976 for (e in At) At[e](T, !0); 4977 }; 4978 function Ht() { 4979 try { 4980 return new f.XMLHttpRequest(); 4981 } catch (e) {} 4982 } 4983 (ke.ajaxSettings.xhr = f.ActiveXObject 4984 ? function () { 4985 return ( 4986 (!this.isLocal && Ht()) || 4987 (function () { 4988 try { 4989 return new f.ActiveXObject("Microsoft.XMLHTTP"); 4990 } catch (e) {} 4991 })() 4992 ); 4993 } 4994 : Ht), 4995 ($t = ke.ajaxSettings.xhr()), 4996 (ke.support.cors = !!$t && "withCredentials" in $t), 4997 ($t = ke.support.ajax = !!$t) && 4998 ke.ajaxTransport(function (c) { 4999 var d; 5000 if (!c.crossDomain || ke.support.cors) 5001 return { 5002 send: function (e, r) { 5003 var a, 5004 t, 5005 l = c.xhr(); 5006 if ( 5007 (c.username 5008 ? l.open(c.type, c.url, c.async, c.username, c.password) 5009 : l.open(c.type, c.url, c.async), 5010 c.xhrFields) 5011 ) 5012 for (t in c.xhrFields) l[t] = c.xhrFields[t]; 5013 c.mimeType && 5014 l.overrideMimeType && 5015 l.overrideMimeType(c.mimeType), 5016 c.crossDomain || 5017 e["X-Requested-With"] || 5018 (e["X-Requested-With"] = "XMLHttpRequest"); 5019 try { 5020 for (t in e) l.setRequestHeader(t, e[t]); 5021 } catch (e) {} 5022 l.send((c.hasContent && c.data) || null), 5023 (d = function (e, t) { 5024 var o, n, i, s; 5025 try { 5026 if (d && (t || 4 === l.readyState)) 5027 if ( 5028 ((d = T), 5029 a && 5030 ((l.onreadystatechange = ke.noop), 5031 Ot && delete At[a]), 5032 t) 5033 ) 5034 4 !== l.readyState && l.abort(); 5035 else { 5036 (s = {}), 5037 (o = l.status), 5038 (n = l.getAllResponseHeaders()), 5039 "string" == typeof l.responseText && 5040 (s.text = l.responseText); 5041 try { 5042 i = l.statusText; 5043 } catch (e) { 5044 i = ""; 5045 } 5046 o || !c.isLocal || c.crossDomain 5047 ? 1223 === o && (o = 204) 5048 : (o = s.text ? 200 : 404); 5049 } 5050 } catch (e) { 5051 t || r(-1, e); 5052 } 5053 s && r(o, i, s, n); 5054 }), 5055 c.async 5056 ? 4 === l.readyState 5057 ? setTimeout(d) 5058 : ((a = ++Ft), 5059 Ot && 5060 (At || ((At = {}), ke(f).unload(Ot)), (At[a] = d)), 5061 (l.onreadystatechange = d)) 5062 : d(); 5063 }, 5064 abort: function () { 5065 d && d(T, !0); 5066 }, 5067 }; 5068 }); 5069 var Dt, 5070 It, 5071 Nt = /^(?:toggle|show|hide)$/,
5072 Mt = RegExp("^(?:([+-])=|)(" + x + ")([a-z%]*)$", "i"), 5073 Pt = /queueHooks$/, 5074 jt = [ 5075 function (t, e, o) { 5076 var n, 5077 i, 5078 s, 5079 r, 5080 a, 5081 l, 5082 c = this, 5083 d = {}, 5084 u = t.style, 5085 p = t.nodeType && Je(t), 5086 h = ke._data(t, "fxshow"); 5087 for (n in (o.queue || 5088 (null == (a = ke._queueHooks(t, "fx")).unqueued && 5089 ((a.unqueued = 0), 5090 (l = a.empty.fire), 5091 (a.empty.fire = function () { 5092 a.unqueued || l(); 5093 })), 5094 a.unqueued++, 5095 c.always(function () { 5096 c.always(function () { 5097 a.unqueued--, ke.queue(t, "fx").length || a.empty.fire(); 5098 }); 5099 })), 5100 1 === t.nodeType && 5101 ("height" in e || "width" in e) && 5102 ((o.overflow = [u.overflow, u.overflowX, u.overflowY]), 5103 "inline" === ke.css(t, "display") && 5104 "none" === ke.css(t, "float") && 5105 (ke.support.inlineBlockNeedsLayout && "inline" !== it(t.nodeName) 5106 ? (u.zoom = 1) 5107 : (u.display = "inline-block"))), 5108 o.overflow && 5109 ((u.overflow = "hidden"), 5110 ke.support.shrinkWrapBlocks || 5111 c.always(function () { 5112 (u.overflow = o.overflow[0]), 5113 (u.overflowX = o.overflow[1]), 5114 (u.overflowY = o.overflow[2]); 5115 })), 5116 e)) 5117 if (((i = e[n]), Nt.exec(i))) { 5118 if ( 5119 (delete e[n], 5120 (s = s || "toggle" === i), 5121 i === (p ? "hide" : "show")) 5122 ) 5123 continue; 5124 d[n] = (h && h[n]) || ke.style(t, n); 5125 } 5126 if (!ke.isEmptyObject(d)) 5127 for (n in (h 5128 ? "hidden" in h && (p = h.hidden) 5129 : (h = ke._data(t, "fxshow", {})), 5130 s && (h.hidden = !p), 5131 p 5132 ? ke(t).show() 5133 : c.done(function () { 5134 ke(t).hide(); 5135 }), 5136 c.done(function () { 5137 var e; 5138 for (e in (ke._removeData(t, "fxshow"), d)) ke.style(t, e, d[e]); 5139 }), 5140 d)) 5141 (r = _t(p ? h[n] : 0, n, c)), 5142 n in h || 5143 ((h[n] = r.start), 5144 p && 5145 ((r.end = r.start), 5146 (r.start = "width" === n || "height" === n ? 1 : 0))); 5147 }, 5148 ], 5149 Rt = { 5150 "*": [ 5151 function (e, t) { 5152 var o = this.createTween(e, t), 5153 n = o.cur(), 5154 i = Mt.exec(t), 5155 s = (i && i[3]) || (ke.cssNumber[e] ? "" : "px"), 5156 r = 5157 (ke.cssNumber[e] || ("px" !== s && +n)) && 5158 Mt.exec(ke.css(o.elem, e)), 5159 a = 1, 5160 l = 20; 5161 if (r && r[3] !== s) 5162 for ( 5163 s = s || r[3], i = i || [], r = +n || 1; 5164 (r /= a = a || ".5"), 5165 ke.style(o.elem, e, r + s), 5166 a !== (a = o.cur() / n) && 1 !== a && --l; 5167 5168 ); 5169 return ( 5170 i && 5171 ((r = o.start = +r || +n || 0), 5172 (o.unit = s), 5173 (o.end = i[1] ? r + (i[1] + 1) * i[2] : +i[2])), 5174 o 5175 ); 5176 }, 5177 ], 5178 }; 5179 function Bt() { 5180 return ( 5181 setTimeout(function () { 5182 Dt = T; 5183 }), 5184 (Dt = ke.now()) 5185 ); 5186 } 5187 function _t(e, t, o) { 5188 for ( 5189 var n, i = (Rt[t] || []).concat(Rt["*"]), s = 0, r = i.length; 5190 s < r; 5191 s++ 5192 ) 5193 if ((n = i[s].call(o, t, e))) return n; 5194 } 5195 function qt(s, e, t) { 5196 var o, 5197 r, 5198 n = 0, 5199 i = jt.length, 5200 a = ke.Deferred().always(function () { 5201 delete l.elem; 5202 }), 5203 l = function () { 5204 if (r) return !1; 5205 for ( 5206 var e = Dt || Bt(), 5207 t = Math.max(0, c.startTime + c.duration - e), 5208 o = 1 - (t / c.duration || 0), 5209 n = 0, 5210 i = c.tweens.length; 5211 n < i; 5212 n++ 5213 ) 5214 c.tweens[n].run(o); 5215 return ( 5216 a.notifyWith(s, [c, o, t]), 5217 o < 1 && i ? t : (a.resolveWith(s, [c]), !1) 5218 ); 5219 }, 5220 c = a.promise({ 5221 elem: s, 5222 props: ke.extend({}, e), 5223 opts: ke.extend(!0, { specialEasing: {} }, t), 5224 originalProperties: e, 5225 originalOptions: t, 5226 startTime: Dt || Bt(), 5227 duration: t.duration, 5228 tweens: [], 5229 createTween: function (e, t) { 5230 var o = ke.Tween( 5231 s, 5232 c.opts, 5233 e, 5234 t, 5235 c.opts.specialEasing[e] || c.opts.easing 5236 ); 5237 return c.tweens.push(o), o; 5238 }, 5239 stop: function (e) { 5240 var t = 0, 5241 o = e ? c.tweens.length : 0; 5242 if (r) return this; 5243 for (r = !0; t < o; t++) c.tweens[t].run(1); 5244 return e ? a.resolveWith(s, [c, e]) : a.rejectWith(s, [c, e]), this; 5245 }, 5246 }), 5247 d = c.props; 5248 for ( 5249 (function (e, t) { 5250 var o, n, i, s, r; 5251 for (o in e) 5252 if ( 5253 ((n = ke.camelCase(o)), 5254 (i = t[n]), 5255 (s = e[o]), 5256 ke.isArray(s) && ((i = s[1]), (s = e[o] = s[0])), 5257 o !== n && ((e[n] = s), delete e[o]),
5258 (r = ke.cssHooks[n]) && ("expand" in r)) 5259 ) 5260 for (o in ((s = r.expand(s)), delete e[n], s)) 5261 (o in e) || ((e[o] = s[o]), (t[o] = i)); 5262 else t[n] = i; 5263 })(d, c.opts.specialEasing); 5264 n < i; 5265 n++ 5266 ) 5267 if ((o = jt[n].call(c, s, d, c.opts))) return o; 5268 return ( 5269 ke.map(d, _t, c), 5270 ke.isFunction(c.opts.start) && c.opts.start.call(s, c), 5271 ke.fx.timer(ke.extend(l, { elem: s, anim: c, queue: c.opts.queue })), 5272 c 5273 .progress(c.opts.progress) 5274 .done(c.opts.done, c.opts.complete) 5275 .fail(c.opts.fail) 5276 .always(c.opts.always) 5277 ); 5278 } 5279 function Ut(e, t, o, n, i) { 5280 return new Ut.prototype.init(e, t, o, n, i); 5281 } 5282 function Xt(e, t) { 5283 var o, 5284 n = { height: e }, 5285 i = 0; 5286 for (t = t ? 1 : 0; i < 4; i += 2 - t) 5287 n["margin" + (o = Ve[i])] = n["padding" + o] = e; 5288 return t && (n.opacity = n.width = e), n; 5289 } 5290 function Zt(e) { 5291 return ke.isWindow(e) 5292 ? e 5293 : 9 === e.nodeType && (e.defaultView || e.parentWindow); 5294 } 5295 (ke.Animation = ke.extend(qt, { 5296 tweener: function (e, t) { 5297 for ( 5298 var o, 5299 n = 0, 5300 i = (e = ke.isFunction(e) ? ((t = e), ["*"]) : e.split(" ")).length; 5301 n < i; 5302 n++ 5303 ) 5304 (o = e[n]), (Rt[o] = Rt[o] || []), Rt[o].unshift(t); 5305 }, 5306 prefilter: function (e, t) { 5307 t ? jt.unshift(e) : jt.push(e); 5308 }, 5309 })), 5310 ((ke.Tween = Ut).prototype = { 5311 constructor: Ut, 5312 init: function (e, t, o, n, i, s) { 5313 (this.elem = e), 5314 (this.prop = o), 5315 (this.easing = i || "swing"), 5316 (this.options = t), 5317 (this.start = this.now = this.cur()), 5318 (this.end = n), 5319 (this.unit = s || (ke.cssNumber[o] ? "" : "px")); 5320 }, 5321 cur: function () { 5322 var e = Ut.propHooks[this.prop]; 5323 return e && e.get ? e.get(this) : Ut.propHooks._default.get(this); 5324 }, 5325 run: function (e) { 5326 var t, 5327 o = Ut.propHooks[this.prop]; 5328 return ( 5329 (this.pos = t = 5330 this.options.duration 5331 ? ke.easing[this.easing]( 5332 e, 5333 this.options.duration * e, 5334 0, 5335 1, 5336 this.options.duration 5337 ) 5338 : e), 5339 (this.now = (this.end - this.start) * t + this.start), 5340 this.options.step && 5341 this.options.step.call(this.elem, this.now, this), 5342 o && o.set ? o.set(this) : Ut.propHooks._default.set(this), 5343 this 5344 ); 5345 }, 5346 }), 5347 (Ut.prototype.init.prototype = Ut.prototype), 5348 (Ut.propHooks = { 5349 _default: { 5350 get: function (e) { 5351 var t; 5352 return null == e.elem[e.prop] || 5353 (e.elem.style && null != e.elem.style[e.prop]) 5354 ? (t = ke.css(e.elem, e.prop, "")) && "auto" !== t 5355 ? t 5356 : 0 5357 : e.elem[e.prop]; 5358 }, 5359 set: function (e) { 5360 ke.fx.step[e.prop] 5361 ? ke.fx.step[e.prop](e) 5362 : e.elem.style && 5363 (null != e.elem.style[ke.cssProps[e.prop]] || 5364 ke.cssHooks[e.prop]) 5365 ? ke.style(e.elem, e.prop, e.now + e.unit) 5366 : (e.elem[e.prop] = e.now); 5367 }, 5368 }, 5369 }), 5370 (Ut.propHooks.scrollTop = Ut.propHooks.scrollLeft = 5371 { 5372 set: function (e) { 5373 e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now); 5374 }, 5375 }), 5376 ke.each(["toggle", "show", "hide"], function (e, n) { 5377 var i = ke.fn[n]; 5378 ke.fn[n] = function (e, t, o) { 5379 return null == e || "boolean" == typeof e 5380 ? i.apply(this, arguments) 5381 : this.animate(Xt(n, !0), e, t, o); 5382 }; 5383 }), 5384 ke.fn.extend({ 5385 fadeTo: function (e, t, o, n) { 5386 return this.filter(Je) 5387 .css("opacity", 0) 5388 .show() 5389 .end() 5390 .animate({ opacity: t }, e, o, n); 5391 }, 5392 animate: function (t, e, o, n) { 5393 function i() { 5394 var e = qt(this, ke.extend({}, t), r); 5395 (s || ke._data(this, "finish")) && e.stop(!0); 5396 } 5397 var s = ke.isEmptyObject(t), 5398 r = ke.speed(e, o, n); 5399 return ( 5400 (i.finish = i), 5401 s || !1 === r.queue ? this.each(i) : this.queue(r.queue, i) 5402 ); 5403 }, 5404 stop: function (i, e, s) { 5405 function r(e) { 5406 var t = e.stop; 5407 delete e.stop, t(s); 5408 } 5409 return ( 5410 "string" != typeof i && ((s = e), (e = i), (i = T)), 5411 e && !1 !== i && this.queue(i || "fx", []), 5412 this.each(function () { 5413 var e = !0, 5414 t = null != i && i + "queueHooks", 5415 o = ke.timers, 5416 n = ke._data(this); 5417 if (t) n[t] && n[t].stop && r(n[t]); 5418 else for (t in n) n[t] && n[t].stop && Pt.test(t) && r(n[t]); 5419 for (t = o.length; t--; ) 5420 o[t].elem !== this || 5421 (null != i && o[t].queue !== i) || 5422 (o[t].anim.stop(s), (e = !1), o.splice(t, 1)); 5423 (!e && s) || ke.dequeue(this, i); 5424 }) 5425 ); 5426 }, 5427 finish: function (r) { 5428 return ( 5429 !1 !== r && (r = r || "fx"), 5430 this.each(function () { 5431 var e, 5432 t = ke._data(this), 5433 o = t[r + "queue"], 5434 n = t[r + "queueHooks"], 5435 i = ke.timers, 5436 s = o ? o.length : 0; 5437 for ( 5438 t.finish = !0, 5439 ke.queue(this, r, []), 5440 n && n.stop && n.stop.call(this, !0), 5441 e = i.length; 5442 e--; 5443 5444 ) 5445 i[e].elem === this && 5446 i[e].queue === r && 5447 (i[e].anim.stop(!0), i.splice(e, 1)); 5448 for (e = 0; e < s; e++) 5449 o[e] && o[e].finish && o[e].finish.call(this); 5450 delete t.finish; 5451 }) 5452 ); 5453 }, 5454 }), 5455 ke.each( 5456 { 5457 slideDown: Xt("show"), 5458 slideUp: Xt("hide"), 5459 slideToggle: Xt("toggle"), 5460 fadeIn: { opacity: "show" }, 5461 fadeOut: { opacity: "hide" }, 5462 fadeToggle: { opacity: "toggle" }, 5463 }, 5464 function (e, n) { 5465 ke.fn[e] = function (e, t, o) { 5466 return this.animate(n, e, t, o); 5467 }; 5468 } 5469 ), 5470 (ke.speed = function (e, t, o) { 5471 var n = 5472 e && "object" == typeof e 5473 ? ke.extend({}, e) 5474 : { 5475 complete: o || (!o && t) || (ke.isFunction(e) && e), 5476 duration: e, 5477 easing: (o && t) || (t && !ke.isFunction(t) && t), 5478 }; 5479 return ( 5480 (n.duration = ke.fx.off 5481 ? 0 5482 : "number" == typeof n.duration 5483 ? n.duration 5484 : n.duration in ke.fx.speeds 5485 ? ke.fx.speeds[n.duration] 5486 : ke.fx.speeds._default), 5487 (null != n.queue && !0 !== n.queue) || (n.queue = "fx"), 5488 (n.old = n.complete), 5489 (n.complete = function () { 5490 ke.isFunction(n.old) && n.old.call(this), 5491 n.queue && ke.dequeue(this, n.queue); 5492 }), 5493 n 5494 ); 5495 }), 5496 (ke.easing = { 5497 linear: function (e) { 5498 return e; 5499 }, 5500 swing: function (e) { 5501 return 0.5 - Math.cos(e * Math.PI) / 2; 5502 }, 5503 }), 5504 (ke.timers = []), 5505 (ke.fx = Ut.prototype.init), 5506 (ke.fx.tick = function () { 5507 var e, 5508 t = ke.timers, 5509 o = 0; 5510 for (Dt = ke.now(); t.length > o; o++) 5511 (e = t[o])() || t[o] !== e || t.splice(o--, 1); 5512 t.length || ke.fx.stop(), (Dt = T); 5513 }), 5514 (ke.fx.timer = function (e) { 5515 e() && ke.timers.push(e) && ke.fx.start(); 5516 }), 5517 (ke.fx.interval = 13), 5518 (ke.fx.start = function () { 5519 It = It || setInterval(ke.fx.tick, ke.fx.interval); 5520 }), 5521 (ke.fx.stop = function () { 5522 clearInterval(It), (It = null); 5523 }), 5524 (ke.fx.speeds = { slow: 600, fast: 200, _default: 400 }), 5525 (ke.fx.step = {}), 5526 ke.expr && 5527 ke.expr.filters && 5528 (ke.expr.filters.animated = function (t) { 5529 return ke.grep(ke.timers, function (e) { 5530 return t === e.elem; 5531 }).length; 5532 }), 5533 (ke.fn.offset = function (t) { 5534 if (arguments.length) 5535 return t === T 5536 ? this 5537 : this.each(function (e) { 5538 ke.offset.setOffset(this, t, e); 5539 }); 5540 var e, 5541 o, 5542 n = { top: 0, left: 0 }, 5543 i = this[0], 5544 s = i && i.ownerDocument; 5545 return s 5546 ? ((e = s.documentElement), 5547 ke.contains(e, i) 5548 ? (typeof i.getBoundingClientRect !== v && 5549 (n = i.getBoundingClientRect()), 5550 (o = Zt(s)), 5551 { 5552 top: 5553 n.top + (o.pageYOffset || e.scrollTop) - (e.clientTop || 0), 5554 left: 5555 n.left + 5556 (o.pageXOffset || e.scrollLeft) - 5557 (e.clientLeft || 0), 5558 }) 5559 : n) 5560 : void 0; 5561 }), 5562 (ke.offset = { 5563 setOffset: function (e, t, o) { 5564 var n = ke.css(e, "position"); 5565 "static" === n && (e.style.position = "relative"); 5566 var i, 5567 s = ke(e), 5568 r = s.offset(), 5569 a = ke.css(e, "top"), 5570 l = ke.css(e, "left"), 5571 c = {}, 5572 d = {}, 5573 u = 5574 ("absolute" === n || "fixed" === n) && 5575 -1 < ke.inArray("auto", [a, l]) 5576 ? ((i = (d = s.position()).top), d.left) 5577 : ((i = parseFloat(a) || 0), parseFloat(l) || 0); 5578 ke.isFunction(t) && (t = t.call(e, o, r)), 5579 null != t.top && (c.top = t.top - r.top + i), 5580 null != t.left && (c.left = t.left - r.left + u), 5581 "using" in t ? t.using.call(e, c) : s.css(c); 5582 }, 5583 }), 5584 ke.fn.extend({ 5585 position: function () { 5586 if (this[0]) { 5587 var e, 5588 t, 5589 o = { top: 0, left: 0 }, 5590 n = this[0]; 5591 return ( 5592 "fixed" === ke.css(n, "position") 5593 ? (t = n.getBoundingClientRect()) 5594 : ((e = this.offsetParent()), 5595 (t = this.offset()),
5596 ke.nodeName(e[0], "html") || (o = e.offset()), 5597 (o.top += ke.css(e[0], "borderTopWidth", !0)), 5598 (o.left += ke.css(e[0], "borderLeftWidth", !0))), 5599 { 5600 top: t.top - o.top - ke.css(n, "marginTop", !0), 5601 left: t.left - o.left - ke.css(n, "marginLeft", !0), 5602 } 5603 ); 5604 } 5605 }, 5606 offsetParent: function () { 5607 return this.map(function () { 5608 for ( 5609 var e = this.offsetParent || s; 5610 e && 5611 !ke.nodeName(e, "html") && 5612 "static" === ke.css(e, "position"); 5613 5614 ) 5615 e = e.offsetParent; 5616 return e || s; 5617 }); 5618 }, 5619 }), 5620 ke.each( 5621 { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, 5622 function (t, i) { 5623 var s = /Y/.test(i); 5624 ke.fn[t] = function (e) { 5625 return ke.access( 5626 this, 5627 function (e, t, o) { 5628 var n = Zt(e); 5629 return o === T 5630 ? n 5631 ? i in n 5632 ? n[i] 5633 : n.document.documentElement[t] 5634 : e[t] 5635 : (n 5636 ? n.scrollTo( 5637 s ? ke(n).scrollLeft() : o, 5638 s ? o : ke(n).scrollTop() 5639 ) 5640 : (e[t] = o), 5641 T); 5642 }, 5643 t, 5644 e, 5645 arguments.length, 5646 null 5647 ); 5648 }; 5649 } 5650 ), 5651 ke.each({ Height: "height", Width: "width" }, function (s, r) { 5652 ke.each( 5653 { padding: "inner" + s, content: r, "": "outer" + s }, 5654 function (n, e) { 5655 ke.fn[e] = function (e, t) { 5656 var o = arguments.length && (n || "boolean" != typeof e), 5657 i = n || (!0 === e || !0 === t ? "margin" : "border"); 5658 return ke.access( 5659 this, 5660 function (e, t, o) { 5661 var n; 5662 return ke.isWindow(e) 5663 ? e.document.documentElement["client" + s] 5664 : 9 === e.nodeType 5665 ? ((n = e.documentElement), 5666 Math.max( 5667 e.body["scroll" + s], 5668 n["scroll" + s], 5669 e.body["offset" + s], 5670 n["offset" + s], 5671 n["client" + s] 5672 )) 5673 : o === T 5674 ? ke.css(e, t, i) 5675 : ke.style(e, t, o, i); 5676 }, 5677 r, 5678 o ? e : T, 5679 o, 5680 null 5681 ); 5682 }; 5683 } 5684 ); 5685 }), 5686 (ke.fn.size = function () { 5687 return this.length; 5688 }), 5689 (ke.fn.andSelf = ke.fn.addBack), 5690 "object" == typeof module && module && "object" == typeof module.exports 5691 ? (module.exports = ke) 5692 : ((f.jQuery = f.$ = ke), 5693 "function" == typeof define && 5694 define.amd && 5695 define("jquery", [], function () { 5696 return ke; 5697 })); 5698 })(window), 5699 (jQuery.easing.jswing = jQuery.easing.swing), 5700 jQuery.extend(jQuery.easing, { 5701 def: "easeOutQuad", 5702 swing: function (e, t, o, n, i) { 5703 return jQuery.easing[jQuery.easing.def](e, t, o, n, i); 5704 }, 5705 easeInQuad: function (e, t, o, n, i) { 5706 return n * (t /= i) * t + o; 5707 }, 5708 easeOutQuad: function (e, t, o, n, i) { 5709 return -n * (t /= i) * (t - 2) + o; 5710 }, 5711 easeInOutQuad: function (e, t, o, n, i) { 5712 return (t /= i / 2) < 1 5713 ? (n / 2) * t * t + o 5714 : (-n / 2) * (--t * (t - 2) - 1) + o; 5715 }, 5716 easeInCubic: function (e, t, o, n, i) { 5717 return n * (t /= i) * t * t + o; 5718 }, 5719 easeOutCubic: function (e, t, o, n, i) { 5720 return n * ((t = t / i - 1) * t * t + 1) + o; 5721 }, 5722 easeInOutCubic: function (e, t, o, n, i) { 5723 return (t /= i / 2) < 1 5724 ? (n / 2) * t * t * t + o 5725 : (n / 2) * ((t -= 2) * t * t + 2) + o; 5726 }, 5727 easeInQuart: function (e, t, o, n, i) { 5728 return n * (t /= i) * t * t * t + o; 5729 }, 5730 easeOutQuart: function (e, t, o, n, i) { 5731 return -n * ((t = t / i - 1) * t * t * t - 1) + o; 5732 }, 5733 easeInOutQuart: function (e, t, o, n, i) { 5734 return (t /= i / 2) < 1 5735 ? (n / 2) * t * t * t * t + o 5736 : (-n / 2) * ((t -= 2) * t * t * t - 2) + o; 5737 }, 5738 easeInQuint: function (e, t, o, n, i) { 5739 return n * (t /= i) * t * t * t * t + o; 5740 }, 5741 easeOutQuint: function (e, t, o, n, i) { 5742 return n * ((t = t / i - 1) * t * t * t * t + 1) + o; 5743 }, 5744 easeInOutQuint: function (e, t, o, n, i) { 5745 return (t /= i / 2) < 1 5746 ? (n / 2) * t * t * t * t * t + o 5747 : (n / 2) * ((t -= 2) * t * t * t * t + 2) + o; 5748 }, 5749 easeInSine: function (e, t, o, n, i) { 5750 return -n * Math.cos((t / i) * (Math.PI / 2)) + n + o; 5751 }, 5752 easeOutSine: function (e, t, o, n, i) { 5753 return n * Math.sin((t / i) * (Math.PI / 2)) + o; 5754 }, 5755 easeInOutSine: function (e, t, o, n, i) { 5756 return (-n / 2) * (Math.cos((Math.PI * t) / i) - 1) + o; 5757 }, 5758 easeInExpo: function (e, t, o, n, i) { 5759 return 0 == t ? o : n * Math.pow(2, 10 * (t / i - 1)) + o; 5760 }, 5761 easeOutExpo: function (e, t, o, n, i) { 5762 return t == i ? o + n : n * (1 - Math.pow(2, (-10 * t) / i)) + o; 5763 }, 5764 easeInOutExpo: function (e, t, o, n, i) { 5765 return 0 == t 5766 ? o
5767 : t == i 5768 ? o + n 5769 : (t /= i / 2) < 1 5770 ? (n / 2) * Math.pow(2, 10 * (t - 1)) + o 5771 : (n / 2) * (2 - Math.pow(2, -10 * --t)) + o; 5772 }, 5773 easeInCirc: function (e, t, o, n, i) { 5774 return -n * (Math.sqrt(1 - (t /= i) * t) - 1) + o; 5775 }, 5776 easeOutCirc: function (e, t, o, n, i) { 5777 return n * Math.sqrt(1 - (t = t / i - 1) * t) + o; 5778 }, 5779 easeInOutCirc: function (e, t, o, n, i) { 5780 return (t /= i / 2) < 1 5781 ? (-n / 2) * (Math.sqrt(1 - t * t) - 1) + o 5782 : (n / 2) * (Math.sqrt(1 - (t -= 2) * t) + 1) + o; 5783 }, 5784 easeInElastic: function (e, t, o, n, i) { 5785 var s = 1.70158, 5786 r = 0, 5787 a = n; 5788 return 0 == t 5789 ? o 5790 : 1 == (t /= i) 5791 ? o + n 5792 : ((r = r || 0.3 * i), 5793 (s = 5794 a < Math.abs(n) 5795 ? ((a = n), r / 4) 5796 : (r / (2 * Math.PI)) * Math.asin(n / a)), 5797 -( 5798 a * 5799 Math.pow(2, 10 * --t) * 5800 Math.sin(((t * i - s) * (2 * Math.PI)) / r) 5801 ) + o); 5802 }, 5803 easeOutElastic: function (e, t, o, n, i) { 5804 var s = 1.70158, 5805 r = 0, 5806 a = n; 5807 return 0 == t 5808 ? o 5809 : 1 == (t /= i) 5810 ? o + n 5811 : ((r = r || 0.3 * i), 5812 (s = 5813 a < Math.abs(n) 5814 ? ((a = n), r / 4) 5815 : (r / (2 * Math.PI)) * Math.asin(n / a)), 5816 a * 5817 Math.pow(2, -10 * t) * 5818 Math.sin(((t * i - s) * (2 * Math.PI)) / r) + 5819 n + 5820 o); 5821 }, 5822 easeInOutElastic: function (e, t, o, n, i) { 5823 var s = 1.70158, 5824 r = 0, 5825 a = n; 5826 return 0 == t 5827 ? o 5828 : 2 == (t /= i / 2) 5829 ? o + n 5830 : ((r = r || i * (0.3 * 1.5)), 5831 (s = 5832 a < Math.abs(n) 5833 ? ((a = n), r / 4) 5834 : (r / (2 * Math.PI)) * Math.asin(n / a)), 5835 t < 1 5836 ? a * 5837 Math.pow(2, 10 * --t) * 5838 Math.sin(((t * i - s) * (2 * Math.PI)) / r) * 5839 -0.5 + 5840 o 5841 : a * 5842 Math.pow(2, -10 * --t) * 5843 Math.sin(((t * i - s) * (2 * Math.PI)) / r) * 5844 0.5 + 5845 n + 5846 o); 5847 }, 5848 easeInBack: function (e, t, o, n, i, s) { 5849 return ( 5850 null == s && (s = 1.70158), n * (t /= i) * t * ((s + 1) * t - s) + o 5851 ); 5852 }, 5853 easeOutBack: function (e, t, o, n, i, s) { 5854 return ( 5855 null == s && (s = 1.70158), 5856 n * ((t = t / i - 1) * t * ((s + 1) * t + s) + 1) + o 5857 ); 5858 }, 5859 easeInOutBack: function (e, t, o, n, i, s) { 5860 return ( 5861 null == s && (s = 1.70158), 5862 (t /= i / 2) < 1 5863 ? (n / 2) * (t * t * ((1 + (s *= 1.525)) * t - s)) + o 5864 : (n / 2) * ((t -= 2) * t * ((1 + (s *= 1.525)) * t + s) + 2) + o 5865 ); 5866 }, 5867 easeInBounce: function (e, t, o, n, i) { 5868 return n - jQuery.easing.easeOutBounce(e, i - t, 0, n, i) + o; 5869 }, 5870 easeOutBounce: function (e, t, o, n, i) { 5871 return (t /= i) < 1 / 2.75 5872 ? n * (7.5625 * t * t) + o 5873 : t < 2 / 2.75 5874 ? n * (7.5625 * (t -= 1.5 / 2.75) * t + 0.75) + o 5875 : t < 2.5 / 2.75 5876 ? n * (7.5625 * (t -= 2.25 / 2.75) * t + 0.9375) + o 5877 : n * (7.5625 * (t -= 2.625 / 2.75) * t + 0.984375) + o; 5878 }, 5879 easeInOutBounce: function (e, t, o, n, i) { 5880 return t < i / 2 5881 ? 0.5 * jQuery.easing.easeInBounce(e, 2 * t, 0, n, i) + o 5882 : 0.5 * jQuery.easing.easeOutBounce(e, 2 * t - i, 0, n, i) + 5883 0.5 * n + 5884 o; 5885 }, 5886 }), 5887 (function () { 5888 function e(C) { 5889 C.fn._fadeIn = C.fn.fadeIn; 5890 var S = C.noop || function () {}, 5891 z = /MSIE/.test(navigator.userAgent), 5892 E = 5893 /MSIE 6.0/.test(navigator.userAgent) && 5894 !/MSIE 8.0/.test(navigator.userAgent), 5895 W = 5896 (document.documentMode, 5897 C.isFunction(document.createElement("div").style.setExpression)); 5898 (C.blockUI = function (e) { 5899 o(window, e); 5900 }), 5901 (C.unblockUI = function (e) { 5902 $(window, e); 5903 }), 5904 (C.growlUI = function (e, t, o, n) { 5905 var i = C('<div class="growlUI"></div>'); 5906 e && i.append("<h1>" + e + "</h1>"), 5907 t && i.append("<h2>" + t + "</h2>"), 5908 void 0 === o && (o = 3e3), 5909 C.blockUI({ 5910 message: i, 5911 fadeIn: 700, 5912 fadeOut: 1e3, 5913 centerY: !1, 5914 timeout: o, 5915 showOverlay: !1, 5916 onUnblock: n, 5917 css: C.blockUI.defaults.growlCSS, 5918 }); 5919 }), 5920 (C.fn.block = function (e) { 5921 if (this[0] === window) return C.blockUI(e), this; 5922 var t = C.extend({}, C.blockUI.defaults, e || {}); 5923 return ( 5924 this.each(function () { 5925 var e = C(this); 5926 (t.ignoreIfBlocked && e.data("blockUI.isBlocked")) || 5927 e.unblock({ fadeOut: 0 }); 5928 }), 5929 this.each(function () { 5930 "static" == C.css(this, "position") && 5931 ((this.style.position = "relative"), 5932 C(this).data("blockUI.static", !0)), 5933 (this.style.zoom = 1), 5934 o(this, e); 5935 }) 5936 ); 5937 }), 5938 (C.fn.unblock = function (e) { 5939 return this[0] === window 5940 ? (C.unblockUI(e), this) 5941 : this.each(function () { 5942 $(this, e); 5943 }); 5944 }), 5945 (C.blockUI.version = 2.59), 5946 (C.blockUI.defaults = { 5947 message: "<h1>Please wait...</h1>", 5948 title: null, 5949 draggable: !0, 5950 theme: !1, 5951 css: { 5952 padding: 0, 5953 margin: 0, 5954 width: "30%", 5955 top: "40%", 5956 left: "35%", 5957 textAlign: "center", 5958 color: "#000", 5959 border: "3px solid aaa", 5960 backgroundColor: "#fff", 5961 cursor: "wait", 5962 }, 5963 themedCSS: { width: "30%", top: "40%", left: "35%" }, 5964 overlayCSS: { backgroundColor: "#000", opacity: 0.6, cursor: "wait" }, 5965 cursorReset: "default", 5966 growlCSS: { 5967 width: "350px", 5968 top: "10px", 5969 left: "", 5970 right: "10px", 5971 border: "none", 5972 padding: "5px", 5973 opacity: 0.6, 5974 cursor: "default", 5975 color: "#fff", 5976 backgroundColor: "#000", 5977 "-webkit-border-radius": "10px", 5978 "-moz-border-radius": "10px", 5979 "border-radius": "10px", 5980 }, 5981 iframeSrc: /^https/i.test(window.location.href || "") 5982 ? "javascript:false" 5983 : "about:blank", 5984 forceIframe: !1, 5985 baseZ: 1e3, 5986 centerX: !0, 5987 centerY: !0, 5988 allowBodyStretch: !0, 5989 bindEvents: !0, 5990 constrainTabKey: !0, 5991 fadeIn: 200, 5992 fadeOut: 400, 5993 timeout: 0, 5994 showOverlay: !0, 5995 focusInput: !0, 5996 onBlock: null, 5997 onUnblock: null, 5998 onOverlayClick: null, 5999 quirksmodeOffsetHack: 4, 6000 blockMsgClass: "blockMsg", 6001 ignoreIfBlocked: !1, 6002 }); 6003 var L = null, 6004 A = []; 6005 function o(e, i) { 6006 var t, 6007 o, 6008 n, 6009 s, 6010 r, 6011 a, 6012 l, 6013 c, 6014 d, 6015 u, 6016 p, 6017 h, 6018 f, 6019 m, 6020 g, 6021 v, 6022 y, 6023 w, 6024 b, 6025 x, 6026 k = e == window, 6027 T = i && void 0 !== i.message ? i.message : void 0; 6028 ((i = C.extend({}, C.blockUI.defaults, i || {})).ignoreIfBlocked && 6029 C(e).data("blockUI.isBlocked")) || 6030 ((i.overlayCSS = C.extend( 6031 {}, 6032 C.blockUI.defaults.overlayCSS, 6033 i.overlayCSS || {} 6034 )), 6035 (t = C.extend({}, C.blockUI.defaults.css, i.css || {})), 6036 i.onOverlayClick && (i.overlayCSS.cursor = "pointer"), 6037 (o = C.extend({}, C.blockUI.defaults.themedCSS, i.themedCSS || {})), 6038 (T = void 0 === T ? i.message : T), 6039 k && L && $(window, { fadeOut: 0 }), 6040 T && 6041 "string" != typeof T && 6042 (T.parentNode || T.jquery) && 6043 ((n = T.jquery ? T[0] : T), 6044 (s = {}), 6045 C(e).data("blockUI.history", s), 6046 (s.el = n), 6047 (s.parent = n.parentNode), 6048 (s.display = n.style.display), 6049 (s.position = n.style.position), 6050 s.parent && s.parent.removeChild(n)), 6051 C(e).data("blockUI.onUnblock", i.onUnblock), 6052 (r = i.baseZ), 6053 (c = 6054 z || i.forceIframe 6055 ? C( 6056 '<iframe class="blockUI" style="z-index:' + 6057 r++ + 6058 ';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="' + 6059 i.iframeSrc + 6060 '"></iframe>' 6061 ) 6062 : C('<div class="blockUI" style="display:none"></div>')), 6063 (d = i.theme 6064 ? C( 6065 '<div class="blockUI blockOverlay ui-widget-overlay" style="z-index:' + 6066 r++ + 6067 ';display:none"></div>' 6068 ) 6069 : C( 6070 '<div class="blockUI blockOverlay" style="z-index:' + 6071 r++ + 6072 ';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>' 6073 )), 6074 i.theme && k 6075 ? ((l = 6076 '<div class="blockUI ' + 6077 i.blockMsgClass + 6078 ' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:' + 6079 (r + 10) + 6080 ';display:none;position:fixed">'), 6081 i.title && 6082 (l += 6083 '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">' + 6084 (i.title || "Ã ") + 6085 "</div>"), 6086 (l += '<div class="ui-widget-content ui-dialog-content"></div>'), 6087 (l += "</div>")) 6088 : i.theme 6089 ? ((l = 6090 '<div class="blockUI ' + 6091 i.blockMsgClass + 6092 ' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:' + 6093 (r + 10) + 6094 ';display:none;position:absolute">'), 6095 i.title && 6096 (l += 6097 '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">' + 6098 (i.title || "Ã ") + 6099 "</div>"), 6100 (l += '<div class="ui-widget-content ui-dialog-content"></div>'), 6101 (l += "</div>")) 6102 : (l = k 6103 ? '<div class="blockUI ' + 6104 i.blockMsgClass + 6105 ' blockPage" style="z-index:' + 6106 (r + 10) + 6107 ';display:none;position:fixed"></div>' 6108 : '<div class="blockUI ' + 6109 i.blockMsgClass + 6110 ' blockElement" style="z-index:' + 6111 (r + 10) + 6112 ';display:none;position:absolute"></div>'), 6113 (a = C(l)), 6114 T && 6115 (i.theme ? (a.css(o), a.addClass("ui-widget-content")) : a.css(t)), 6116 i.theme || d.css(i.overlayCSS),
6117 d.css("position", k ? "fixed" : "absolute"), 6118 (z || i.forceIframe) && c.css("opacity", 0), 6119 (u = [c, d, a]), 6120 (p = C(k ? "body" : e)), 6121 C.each(u, function () { 6122 this.appendTo(p); 6123 }), 6124 i.theme && 6125 i.draggable && 6126 C.fn.draggable && 6127 a.draggable({ handle: ".ui-dialog-titlebar", cancel: "li" }), 6128 (h = 6129 W && 6130 (!C.support.boxModel || 6131 0 < C("object,embed", k ? null : e).length)), 6132 (E || h) && 6133 (k && 6134 i.allowBodyStretch && 6135 C.support.boxModel && 6136 C("html,body").css("height", "100%"), 6137 (!E && C.support.boxModel) || 6138 k || 6139 ((f = H(e, "borderTopWidth")), 6140 (m = H(e, "borderLeftWidth")), 6141 (g = f ? "(0 - " + f + ")" : 0), 6142 (v = m ? "(0 - " + m + ")" : 0)), 6143 C.each(u, function (e, t) { 6144 var o, 6145 n = t[0].style; 6146 (n.position = "absolute"), 6147 e < 2 6148 ? (k 6149 ? n.setExpression( 6150 "height", 6151 "Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.support.boxModel?0:" + 6152 i.quirksmodeOffsetHack + 6153 ') + "px"' 6154 ) 6155 : n.setExpression( 6156 "height", 6157 'this.parentNode.offsetHeight + "px"' 6158 ), 6159 k 6160 ? n.setExpression( 6161 "width", 6162 'jQuery.support.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"' 6163 ) 6164 : n.setExpression( 6165 "width", 6166 'this.parentNode.offsetWidth + "px"' 6167 ), 6168 v && n.setExpression("left", v), 6169 g && n.setExpression("top", g)) 6170 : i.centerY 6171 ? (k && 6172 n.setExpression( 6173 "top", 6174 '(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"' 6175 ), 6176 (n.marginTop = 0)) 6177 : !i.centerY && 6178 k && 6179 ((o = 6180 "((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + " + 6181 (i.css && i.css.top ? parseInt(i.css.top, 10) : 0) + 6182 ') + "px"'), 6183 n.setExpression("top", o)); 6184 })), 6185 T && 6186 (i.theme ? a.find(".ui-widget-content").append(T) : a.append(T), 6187 (T.jquery || T.nodeType) && C(T).show()), 6188 (z || i.forceIframe) && i.showOverlay && c.show(), 6189 i.fadeIn 6190 ? ((y = i.onBlock ? i.onBlock : S), 6191 (w = i.showOverlay && !T ? y : S), 6192 (b = T ? y : S), 6193 i.showOverlay && d._fadeIn(i.fadeIn, w), 6194 T && a._fadeIn(i.fadeIn, b)) 6195 : (i.showOverlay && d.show(), 6196 T && a.show(), 6197 i.onBlock && i.onBlock()), 6198 F(1, e, i), 6199 k 6200 ? ((L = a[0]), 6201 (A = C(":input:enabled:visible", L)), 6202 i.focusInput && setTimeout(O, 20)) 6203 : (function (e, t, o) { 6204 var n = e.parentNode, 6205 i = e.style, 6206 s = 6207 (n.offsetWidth - e.offsetWidth) / 2 - 6208 H(n, "borderLeftWidth"), 6209 r = 6210 (n.offsetHeight - e.offsetHeight) / 2 - 6211 H(n, "borderTopWidth"); 6212 t && (i.left = 0 < s ? s + "px" : "0"); 6213 o && (i.top = 0 < r ? r + "px" : "0"); 6214 })(a[0], i.centerX, i.centerY), 6215 i.timeout && 6216 ((x = setTimeout(function () { 6217 k ? C.unblockUI(i) : C(e).unblock(i); 6218 }, i.timeout)), 6219 C(e).data("blockUI.timeout", x))); 6220 } 6221 function $(e, t) { 6222 var o, 6223 n, 6224 i = e == window, 6225 s = C(e), 6226 r = s.data("blockUI.history"), 6227 a = s.data("blockUI.timeout"); 6228 a && (clearTimeout(a), s.removeData("blockUI.timeout")), 6229 (t = C.extend({}, C.blockUI.defaults, t || {})), 6230 F(0, e, t), 6231 null === t.onUnblock && 6232 ((t.onUnblock = s.data("blockUI.onUnblock")), 6233 s.removeData("blockUI.onUnblock")), 6234 (n = i 6235 ? C("body").children().filter(".blockUI").add("body > .blockUI") 6236 : s.find(">.blockUI")), 6237 t.cursorReset &&
6238 (1 < n.length && (n[1].style.cursor = t.cursorReset), 6239 2 < n.length && (n[2].style.cursor = t.cursorReset)), 6240 i && (L = A = null), 6241 t.fadeOut 6242 ? ((o = n.length), 6243 n.fadeOut(t.fadeOut, function () { 6244 0 == --o && l(n, r, t, e); 6245 })) 6246 : l(n, r, t, e); 6247 } 6248 function l(e, t, o, n) { 6249 var i = C(n); 6250 e.each(function (e, t) { 6251 this.parentNode && this.parentNode.removeChild(this); 6252 }), 6253 t && 6254 t.el && 6255 ((t.el.style.display = t.display), 6256 (t.el.style.position = t.position), 6257 t.parent && t.parent.appendChild(t.el), 6258 i.removeData("blockUI.history")), 6259 i.data("blockUI.static") && i.css("position", "static"), 6260 "function" == typeof o.onUnblock && o.onUnblock(n, o); 6261 var s = C(document.body), 6262 r = s.width(), 6263 a = s[0].style.width; 6264 s.width(r - 1).width(r), (s[0].style.width = a); 6265 } 6266 function F(e, t, o) { 6267 var n, 6268 i = t == window, 6269 s = C(t); 6270 (!e && ((i && !L) || (!i && !s.data("blockUI.isBlocked")))) || 6271 (s.data("blockUI.isBlocked", e), 6272 i && 6273 o.bindEvents && 6274 (!e || o.showOverlay) && 6275 ((n = 6276 "mousedown mouseup keydown keypress keyup touchstart touchend touchmove"), 6277 e ? C(document).bind(n, o, r) : C(document).unbind(n, r))); 6278 } 6279 function r(e) { 6280 if (e.keyCode && 9 == e.keyCode && L && e.data.constrainTabKey) { 6281 var t = !e.shiftKey && e.target === A[A.length - 1], 6282 o = e.shiftKey && e.target === A[0]; 6283 if (t || o) 6284 return ( 6285 setTimeout(function () { 6286 O(o); 6287 }, 10), 6288 !1 6289 ); 6290 } 6291 var n = e.data, 6292 i = C(e.target); 6293 return ( 6294 i.hasClass("blockOverlay") && n.onOverlayClick && n.onOverlayClick(), 6295 0 < i.parents("div." + n.blockMsgClass).length || 6296 0 === i.parents().children().filter("div.blockUI").length 6297 ); 6298 } 6299 function O(e) { 6300 var t; 6301 !A || ((t = A[!0 === e ? A.length - 1 : 0]) && t.focus()); 6302 } 6303 function H(e, t) { 6304 return parseInt(C.css(e, t), 10) || 0; 6305 } 6306 } 6307 "function" == typeof define && define.amd && define.amd.jQuery 6308 ? define(["jquery"], e) 6309 : e(jQuery); 6310 })(), 6311 (function (u) { 6312 var d, 6313 c = u.fn.domManip, 6314 p = "_tmplitem", 6315 o = /^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /, 6316 h = {}, 6317 f = {}, 6318 r = { key: 0, data: {} }, 6319 m = 0, 6320 g = 0, 6321 s = []; 6322 function v(e, t, o, n) { 6323 var i = { 6324 data: n || 0 === n || !1 === n ? n : t ? t.data : {}, 6325 _wrap: t ? t._wrap : null, 6326 tmpl: null, 6327 parent: t || null, 6328 nodes: [], 6329 calls: x, 6330 nest: k, 6331 wrap: T, 6332 html: C, 6333 update: S, 6334 }; 6335 return ( 6336 e && u.extend(i, e, { nodes: [], parent: t }), 6337 o && 6338 ((i.tmpl = o), 6339 (i._ctnt = i._ctnt || i.tmpl(u, i)), 6340 (i.key = ++m), 6341 ((s.length ? f : h)[m] = i)), 6342 i 6343 ); 6344 } 6345 function a(t, e, o) { 6346 var i, 6347 n = o 6348 ? u.map(o, function (e) { 6349 return "string" == typeof e 6350 ? t.key 6351 ? e.replace( 6352 /(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g, 6353 "$1 " + p + '="' + t.key + '" $2' 6354 ) 6355 : e 6356 : a(e, t, e._ctnt); 6357 }) 6358 : t; 6359 return e 6360 ? n 6361 : ((n = n.join("")).replace( 6362 /^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/, 6363 function (e, t, o, n) { 6364 b((i = u(o).get())), 6365 t && (i = l(t).concat(i)), 6366 n && (i = i.concat(l(n))); 6367 } 6368 ), 6369 i || l(n)); 6370 } 6371 function l(e) { 6372 var t = document.createElement("div"); 6373 return (t.innerHTML = e), u.makeArray(t.childNodes); 6374 } 6375 function n(e) { 6376 return new Function( 6377 "jQuery", 6378 "$item", 6379 "var $=jQuery,call,__=[],$data=$item.data;with($data){__.push('" + 6380 u 6381 .trim(e) 6382 .replace(/([\\'])/g, "\\$1") 6383 .replace(/[\r\t\n]/g, " ") 6384 .replace(/\$\{([^\}]*)\}/g, "{{= $1}}") 6385 .replace( 6386 /\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g, 6387 function (e, t, o, n, i, s, r) { 6388 var a, 6389 l, 6390 c, 6391 d = u.tmpl.tag[o]; 6392 if (!d) throw "Unknown template tag: " + o; 6393 return ( 6394 (a = d._default || []), 6395 s && !/\w$/.test(i) && ((i += s), (s = "")), 6396 (c = i 6397 ? ((i = w(i)), 6398 (r = r ? "," + w(r) + ")" : s ? ")" : ""), 6399 (l = s 6400 ? -1 < i.indexOf(".") 6401 ? i + w(s) 6402 : "(" + i + ").call($item" + r 6403 : i), 6404 s 6405 ? l 6406 : "(typeof(" + 6407 i + 6408 ")==='function'?(" + 6409 i + 6410 ").call($item):(" + 6411 i + 6412 "))") 6413 : (l = a.$1 || "null")), 6414 (n = w(n)), 6415 "');" + 6416 d[t ? "close" : "open"] 6417 .split("$notnull_1") 6418 .join( 6419 i 6420 ? "typeof(" + 6421 i + 6422 ")!=='undefined' && (" + 6423 i + 6424 ")!=null" 6425 : "true" 6426 ) 6427 .split("$1a") 6428 .join(c) 6429 .split("$1") 6430 .join(l) 6431 .split("$2") 6432 .join(n || a.$2 || "") + 6433 "__.push('" 6434 ); 6435 } 6436 ) + 6437 "');}return __;" 6438 ); 6439 } 6440 function y(e, t) { 6441 e._wrap = a(e, !0, u.isArray(t) ? t : [o.test(t) ? t : u(t).html()]).join( 6442 "" 6443 ); 6444 } 6445 function w(e) { 6446 return e ? e.replace(/\\'/g, "'").replace(/\\\\/g, "\\") : null; 6447 } 6448 function b(e) { 6449 for (var t, o, n, a = "_" + g, l = {}, i = 0, s = e.length; i < s; i++) 6450 if (1 === (t = e[i]).nodeType) { 6451 for (n = (o = t.getElementsByTagName("*")).length - 1; 0 <= n; n--) 6452 r(o[n]); 6453 r(t); 6454 } 6455 function r(e) { 6456 var t, 6457 o, 6458 n, 6459 i, 6460 s = e;
6461 if ((i = e.getAttribute(p))) { 6462 for ( 6463 ; 6464 s.parentNode && 6465 1 === (s = s.parentNode).nodeType && 6466 !(t = s.getAttribute(p)); 6467 6468 ); 6469 t !== i && 6470 ((s = 6471 (s.parentNode && 11 !== s.nodeType && s.getAttribute(p)) || 0), 6472 (n = h[i]) || 6473 (((n = v((n = f[i]), h[s] || f[s])).key = ++m), (h[m] = n)), 6474 g && r(i)), 6475 e.removeAttribute(p); 6476 } else 6477 g && 6478 (n = u.data(e, "tmplItem")) && 6479 (r(n.key), 6480 (h[n.key] = n), 6481 (s = (s = u.data(e.parentNode, "tmplItem")) ? s.key : 0)); 6482 if (n) { 6483 for (o = n; o && o.key != s; ) o.nodes.push(e), (o = o.parent); 6484 delete n._ctnt, delete n._wrap, u.data(e, "tmplItem", n); 6485 } 6486 function r(e) { 6487 n = l[(e += a)] = l[e] || v(n, h[n.parent.key + a] || n.parent); 6488 } 6489 } 6490 } 6491 function x(e, t, o, n) { 6492 if (!e) return s.pop(); 6493 s.push({ _: e, tmpl: t, item: this, data: o, options: n }); 6494 } 6495 function k(e, t, o) { 6496 return u.tmpl(u.template(e), t, o, this); 6497 } 6498 function T(e, t) { 6499 var o = e.options || {}; 6500 return (o.wrapped = t), u.tmpl(u.template(e.tmpl), e.data, o, e.item); 6501 } 6502 function C(e, n) { 6503 var t = this._wrap; 6504 return u.map( 6505 u(u.isArray(t) ? t.join("") : t).filter(e || "*"), 6506 function (e) { 6507 return n 6508 ? e.innerText || e.textContent 6509 : e.outerHTML || 6510 ((t = e), 6511 (o = document.createElement("div")).appendChild( 6512 t.cloneNode(!0) 6513 ), 6514 o.innerHTML); 6515 var t, o; 6516 } 6517 ); 6518 } 6519 function S() { 6520 var e = this.nodes; 6521 u.tmpl(null, null, null, this).insertBefore(e[0]), u(e).remove(); 6522 } 6523 u.each( 6524 { 6525 appendTo: "append", 6526 prependTo: "prepend", 6527 insertBefore: "before", 6528 insertAfter: "after", 6529 replaceAll: "replaceWith", 6530 }, 6531 function (l, c) { 6532 u.fn[l] = function (e) { 6533 var t, 6534 o, 6535 n, 6536 i, 6537 s = [], 6538 r = u(e), 6539 a = 1 === this.length && this[0].parentNode; 6540 if ( 6541 ((d = h || {}), 6542 a && 6543 11 === a.nodeType && 6544 1 === a.childNodes.length && 6545 1 === r.length) 6546 ) 6547 r[c](this[0]), (s = this); 6548 else { 6549 for (o = 0, n = r.length; o < n; o++) 6550 (t = (0 < (g = o) ? this.clone(!0) : this).get()), 6551 u(r[o])[c](t), 6552 (s = s.concat(t)); 6553 (g = 0), (s = this.pushStack(s, l, r.selector)); 6554 } 6555 return (i = d), (d = null), u.tmpl.complete(i), s; 6556 }; 6557 } 6558 ), 6559 u.fn.extend({ 6560 tmpl: function (e, t, o) { 6561 return u.tmpl(this[0], e, t, o); 6562 }, 6563 tmplItem: function () { 6564 return u.tmplItem(this[0]); 6565 }, 6566 template: function (e) { 6567 return u.template(e, this[0]); 6568 }, 6569 domManip: function (e, t, o, n) { 6570 if (e[0] && u.isArray(e[0])) { 6571 for ( 6572 var i, s = u.makeArray(arguments), r = e[0], a = r.length, l = 0; 6573 l < a && !(i = u.data(r[l++], "tmplItem")); 6574 6575 ); 6576 i && 6577 g && 6578 (s[2] = function (e) { 6579 u.tmpl.afterManip(this, e, o); 6580 }), 6581 c.apply(this, s); 6582 } else c.apply(this, arguments); 6583 return (g = 0), d || u.tmpl.complete(h), this; 6584 }, 6585 }), 6586 u.extend({ 6587 tmpl: function (t, e, o, n) { 6588 var i, 6589 s = !n; 6590 if (s) (n = r), (t = u.template[t] || u.template(null, t)), (f = {}); 6591 else if (!t) 6592 return ( 6593 (t = n.tmpl), 6594 ((h[n.key] = n).nodes = []), 6595 n.wrapped && y(n, n.wrapped), 6596 u(a(n, null, n.tmpl(u, n))) 6597 ); 6598 return t 6599 ? ("function" == typeof e && (e = e.call(n || {})), 6600 o && o.wrapped && y(o, o.wrapped), 6601 (i = u.isArray(e) 6602 ? u.map(e, function (e) { 6603 return e ? v(o, n, t, e) : null; 6604 }) 6605 : [v(o, n, t, e)]),
6606 s ? u(a(n, null, i)) : i) 6607 : []; 6608 }, 6609 tmplItem: function (e) { 6610 var t; 6611 for ( 6612 e instanceof u && (e = e[0]); 6613 e && 6614 1 === e.nodeType && 6615 !(t = u.data(e, "tmplItem")) && 6616 (e = e.parentNode); 6617 6618 ); 6619 return t || r; 6620 }, 6621 template: function (e, t) { 6622 return t 6623 ? ("string" == typeof t 6624 ? (t = n(t)) 6625 : t instanceof u && (t = t[0] || {}), 6626 t.nodeType && 6627 (t = u.data(t, "tmpl") || u.data(t, "tmpl", n(t.innerHTML))), 6628 "string" == typeof e ? (u.template[e] = t) : t) 6629 : e 6630 ? "string" != typeof e 6631 ? u.template(null, e) 6632 : u.template[e] || u.template(null, o.test(e) ? e : u(e)) 6633 : null; 6634 }, 6635 encode: function (e) { 6636 return ("" + e) 6637 .split("<") 6638 .join("<") 6639 .split(">") 6640 .join(">") 6641 .split('"') 6642 .join(""") 6643 .split("'") 6644 .join("'"); 6645 }, 6646 }), 6647 u.extend(u.tmpl, { 6648 tag: { 6649 tmpl: { 6650 _default: { $2: "null" }, 6651 open: "if($notnull_1){__=__.concat($item.nest($1,$2));}", 6652 }, 6653 wrap: { 6654 _default: { $2: "null" }, 6655 open: "$item.calls(__,$1,$2);__=[];", 6656 close: "call=$item.calls();__=call._.concat($item.wrap(call,__));", 6657 }, 6658 each: { 6659 _default: { $2: "$index, $value" }, 6660 open: "if($notnull_1){$.each($1a,function($2){with(this){", 6661 close: "}});}", 6662 }, 6663 if: { open: "if(($notnull_1) && $1a){", close: "}" }, 6664 else: { 6665 _default: { $1: "true" }, 6666 open: "}else if(($notnull_1) && $1a){", 6667 }, 6668 html: { open: "if($notnull_1){__.push($1a);}" }, 6669 "=": { 6670 _default: { $1: "$data" }, 6671 open: "if($notnull_1){__.push($.encode($1a));}", 6672 }, 6673 "!": { open: "" }, 6674 }, 6675 complete: function (e) { 6676 h = {}; 6677 }, 6678 afterManip: function (e, t, o) { 6679 var n = 6680 11 === t.nodeType 6681 ? u.makeArray(t.childNodes) 6682 : 1 === t.nodeType 6683 ? [t] 6684 : []; 6685 o.call(e, t), b(n), g++; 6686 }, 6687 }); 6688 })(jQuery), 6689 (function (e) { 6690 "function" == typeof define && define.amd 6691 ? define(["jquery"], e) 6692 : "object" == typeof exports 6693 ? (module.exports = e(require("jquery"))) 6694 : e(jQuery || Zepto); 6695 })(function (c) { 6696 function a(l, v, y) { 6697 var w = { 6698 invalid: [], 6699 getCaret: function () { 6700 try { 6701 var e, 6702 t = 0, 6703 o = l.get(0), 6704 n = document.selection, 6705 i = o.selectionStart; 6706 return ( 6707 n && -1 === navigator.appVersion.indexOf("MSIE 10") 6708 ? ((e = n.createRange()).moveStart( 6709 "character", 6710 -w.val().length 6711 ), 6712 (t = e.text.length)) 6713 : (!i && "0" !== i) || (t = i), 6714 t 6715 ); 6716 } catch (e) {} 6717 }, 6718 setCaret: function (e) { 6719 try { 6720 var t, o; 6721 l.is(":focus") && 6722 ((o = l.get(0)).setSelectionRange 6723 ? (o.focus(), o.setSelectionRange(e, e)) 6724 : ((t = o.createTextRange()).collapse(!0), 6725 t.moveEnd("character", e), 6726 t.moveStart("character", e), 6727 t.select())); 6728 } catch (e) {} 6729 }, 6730 events: function () { 6731 l.on("keydown.mask", function (e) { 6732 l.data("mask-keycode", e.keyCode || e.which); 6733 }) 6734 .on( 6735 c.jMaskGlobals.useInput ? "input.mask" : "keyup.mask", 6736 w.behaviour 6737 ) 6738 .on("paste.mask drop.mask", function () { 6739 setTimeout(function () { 6740 l.keydown().keyup(); 6741 }, 100); 6742 }) 6743 .on("change.mask", function () { 6744 l.data("changed", !0); 6745 }) 6746 .on("blur.mask", function () { 6747 s === w.val() || l.data("changed") || l.trigger("change"), 6748 l.data("changed", !1); 6749 }) 6750 .on("blur.mask", function () { 6751 s = w.val(); 6752 }) 6753 .on("focus.mask", function (e) { 6754 !0 === y.selectOnFocus && c(e.target).select(); 6755 }) 6756 .on("focusout.mask", function () { 6757 y.clearIfNotMatch && !o.test(w.val()) && w.val(""); 6758 }); 6759 }, 6760 getRegexMask: function () { 6761 for (var e, t, o, n, i, s, r = [], a = 0; a < v.length; a++) 6762 (e = b.translation[v.charAt(a)]) 6763 ? ((t = e.pattern.toString().replace(/.{1}$|^.{1}/g, "")), 6764 (o = e.optional), 6765 (n = e.recursive) 6766 ? (r.push(v.charAt(a)), 6767 (i = { digit: v.charAt(a), pattern: t })) 6768 : r.push(o || n ? t + "?" : t)) 6769 : r.push(v.charAt(a).replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&")); 6770 return ( 6771 (s = r.join("")), 6772 i && 6773 (s = s 6774 .replace( 6775 new RegExp("(" + i.digit + "(.*" + i.digit + ")?)"), 6776 "($1)?" 6777 ) 6778 .replace(new RegExp(i.digit, "g"), i.pattern)), 6779 new RegExp(s) 6780 ); 6781 }, 6782 destroyEvents: function () { 6783 l.off( 6784 [ 6785 "input", 6786 "keydown", 6787 "keyup", 6788 "paste", 6789 "drop", 6790 "blur", 6791 "focusout", 6792 "", 6793 ].join(".mask ") 6794 ); 6795 }, 6796 val: function (e) { 6797 var t = l.is("input") ? "val" : "text", 6798 o = 0 < arguments.length ? (l[t]() !== e && l[t](e), l) : l[t](); 6799 return o; 6800 }, 6801 getMCharsBeforeCount: function (e, t) { 6802 for (var o = 0, n = 0, i = v.length; n < i && n < e; n++) 6803 b.translation[v.charAt(n)] || ((e = t ? e + 1 : e), o++); 6804 return o; 6805 }, 6806 caretPos: function (e, t, o, n) { 6807 return b.translation[v.charAt(Math.min(e - 1, v.length - 1))] 6808 ? Math.min(e + o - t - n, o) 6809 : w.caretPos(e + 1, t, o, n); 6810 }, 6811 behaviour: function (e) { 6812 (e = e || window.event), (w.invalid = []); 6813 var t = l.data("mask-keycode"); 6814 if (-1 === c.inArray(t, b.byPassKeys)) { 6815 var o = w.getCaret(), 6816 n = w.val().length, 6817 i = w.getMasked(), 6818 s = i.length, 6819 r = w.getMCharsBeforeCount(s - 1) - w.getMCharsBeforeCount(n - 1), 6820 a = o < n; 6821 return ( 6822 w.val(i), 6823 a && 6824 (8 !== t && 46 !== t && (o = w.caretPos(o, n, s, r)), 6825 w.setCaret(o)), 6826 w.callbacks(e) 6827 ); 6828 } 6829 }, 6830 getMasked: function (e, t) { 6831 for ( 6832 var o, 6833 n = [], 6834 i = void 0 === t ? w.val() : t + "", 6835 s = 0, 6836 r = v.length, 6837 a = 0, 6838 l = i.length, 6839 c = 1, 6840 d = "push", 6841 u = -1, 6842 p = y.reverse 6843 ? ((d = "unshift"), 6844 (c = -1), 6845 (o = 0), 6846 (s = r - 1), 6847 (a = l - 1), 6848 function () { 6849 return -1 < s && -1 < a; 6850 }) 6851 : ((o = r - 1), 6852 function () { 6853 return s < r && a < l; 6854 }); 6855 p(); 6856 6857 ) { 6858 var h = v.charAt(s), 6859 f = i.charAt(a), 6860 m = b.translation[h]; 6861 m 6862 ? (f.match(m.pattern) 6863 ? (n[d](f), 6864 m.recursive && 6865 (-1 === u ? (u = s) : s === o && (s = u - c), 6866 o === u && (s -= c)), 6867 (s += c)) 6868 : m.optional 6869 ? ((s += c), (a -= c)) 6870 : m.fallback 6871 ? (n[d](m.fallback), (s += c), (a -= c)) 6872 : w.invalid.push({ p: a, v: f, e: m.pattern }), 6873 (a += c)) 6874 : (e || n[d](h), f === h && (a += c), (s += c)); 6875 } 6876 var g = v.charAt(o); 6877 return r !== l + 1 || b.translation[g] || n.push(g), n.join(""); 6878 }, 6879 callbacks: function (e) { 6880 function t(e, t, o) { 6881 "function" == typeof y[e] && t && y[e].apply(this, o); 6882 } 6883 var o = w.val(), 6884 n = o !== s, 6885 i = [o, e, l, y]; 6886 t("onChange", !0 == n, i), 6887 t("onKeyPress", !0 == n, i), 6888 t("onComplete", o.length === v.length, i), 6889 t("onInvalid", 0 < w.invalid.length, [o, e, l, w.invalid, y]); 6890 }, 6891 }; 6892 l = c(l); 6893 var o, 6894 b = this, 6895 s = w.val(); 6896 (v = "function" == typeof v ? v(w.val(), void 0, l, y) : v), 6897 (b.mask = v), 6898 (b.options = y), 6899 (b.remove = function () { 6900 var e = w.getCaret(); 6901 return ( 6902 w.destroyEvents(), 6903 w.val(b.getCleanVal()), 6904 w.setCaret(e - w.getMCharsBeforeCount(e)), 6905 l 6906 ); 6907 }), 6908 (b.getCleanVal = function () { 6909 return w.getMasked(!0); 6910 }), 6911 (b.getMaskedVal = function (e) { 6912 return w.getMasked(!1, e); 6913 }), 6914 (b.init = function (e) { 6915 var t; 6916 (e = e || !1), 6917 (y = y || {}), 6918 (b.clearIfNotMatch = c.jMaskGlobals.clearIfNotMatch), 6919 (b.byPassKeys = c.jMaskGlobals.byPassKeys), 6920 (b.translation = c.extend( 6921 {}, 6922 c.jMaskGlobals.translation, 6923 y.translation 6924 )), 6925 (b = c.extend(!0, {}, b, y)), 6926 (o = w.getRegexMask()), 6927 !1 === e 6928 ? (y.placeholder && l.attr("placeholder", y.placeholder), 6929 l.data("mask") && l.attr("autocomplete", "off"), 6930 w.destroyEvents(), 6931 w.events(), 6932 (t = w.getCaret()), 6933 w.val(w.getMasked()), 6934 w.setCaret(t + w.getMCharsBeforeCount(t, !0))) 6935 : (w.events(), w.val(w.getMasked())); 6936 }), 6937 b.init(!l.is("input")); 6938 } 6939 c.maskWatchers = {}; 6940 function t() { 6941 var e = c(this), 6942 t = {}, 6943 o = "data-mask-", 6944 n = e.attr("data-mask"); 6945 if ( 6946 (e.attr(o + "reverse") && (t.reverse = !0), 6947 e.attr(o + "clearifnotmatch") && (t.clearIfNotMatch = !0), 6948 "true" === e.attr(o + "selectonfocus") && (t.selectOnFocus = !0), 6949 l(e, n, t)) 6950 ) 6951 return e.data("mask", new a(this, n, t)); 6952 } 6953 var l = function (e, t, o) { 6954 o = o || {}; 6955 var n = c(e).data("mask"), 6956 i = JSON.stringify, 6957 s = c(e).val() || c(e).text();
6958 try { 6959 return ( 6960 "function" == typeof t && (t = t(s)), 6961 "object" != typeof n || i(n.options) !== i(o) || n.mask !== t 6962 ); 6963 } catch (e) {} 6964 }; 6965 (c.fn.mask = function (e, t) { 6966 t = t || {}; 6967 function o() { 6968 if (l(this, e, t)) return c(this).data("mask", new a(this, e, t)); 6969 } 6970 var n = this.selector, 6971 i = c.jMaskGlobals, 6972 s = i.watchInterval, 6973 r = t.watchInputs || i.watchInputs; 6974 return ( 6975 c(this).each(o), 6976 n && 6977 "" !== n && 6978 r && 6979 (clearInterval(c.maskWatchers[n]), 6980 (c.maskWatchers[n] = setInterval(function () { 6981 c(document).find(n).each(o); 6982 }, s))), 6983 this 6984 ); 6985 }), 6986 (c.fn.masked = function (e) { 6987 return this.data("mask").getMaskedVal(e); 6988 }), 6989 (c.fn.unmask = function () { 6990 return ( 6991 clearInterval(c.maskWatchers[this.selector]), 6992 delete c.maskWatchers[this.selector], 6993 this.each(function () { 6994 var e = c(this).data("mask"); 6995 e && e.remove().removeData("mask"); 6996 }) 6997 ); 6998 }), 6999 (c.fn.cleanVal = function () { 7000 return this.data("mask").getCleanVal(); 7001 }), 7002 (c.applyDataMask = function (e) { 7003 ((e = e || c.jMaskGlobals.maskElements) instanceof c ? e : c(e)) 7004 .filter(c.jMaskGlobals.dataMaskAttr) 7005 .each(t); 7006 }); 7007 var e, 7008 o, 7009 n, 7010 i = { 7011 maskElements: "input,td,span,div", 7012 dataMaskAttr: "*[data-mask]", 7013 dataMask: !0, 7014 watchInterval: 300, 7015 watchInputs: !0, 7016 useInput: 7017 ((e = "input"), 7018 (n = document.createElement("div")), 7019 (o = (e = "on" + e) in n) || 7020 (n.setAttribute(e, "return;"), (o = "function" == typeof n[e])), 7021 o), 7022 watchDataMask: !1, 7023 byPassKeys: [9, 16, 17, 18, 36, 37, 38, 39, 40, 91], 7024 translation: { 7025 0: { pattern: /\d/ }, 7026 9: { pattern: /\d/, optional: !(n = null) }, 7027 "#": { pattern: /\d/, recursive: !0 }, 7028 A: { pattern: /[a-zA-Z0-9]/ }, 7029 S: { pattern: /[a-zA-Z]/ }, 7030 }, 7031 }; 7032 (c.jMaskGlobals = c.jMaskGlobals || {}), 7033 (i = c.jMaskGlobals = c.extend(!0, {}, i, c.jMaskGlobals)).dataMask && 7034 c.applyDataMask(), 7035 setInterval(function () { 7036 c.jMaskGlobals.watchDataMask && c.applyDataMask(); 7037 }, i.watchInterval); 7038 }), 7039 (customForm = { 7040 baseOptions: { 7041 useNativeDropOnMobileDevices: !1, 7042 unselectableClass: "customForm-unselectable", 7043 labelActiveClass: "customForm-label-active", 7044 labelDisabledClass: "customForm-label-disabled", 7045 classPrefix: "customForm-class-", 7046 hiddenClass: "customForm-hidden", 7047 focusClass: "customForm-focus", 7048 wrapperTag: "div", 7049 }, 7050 customForms: { 7051 setOptions: function (e) { 7052 for (var t in e) 7053 e.hasOwnProperty(t) && 7054 "object" == typeof e[t] && 7055 customForm.lib.extend( 7056 customForm.modules[t].prototype.defaultOptions, 7057 e[t] 7058 ); 7059 }, 7060 replaceAll: function () { 7061 for (var e in customForm.modules) 7062 for ( 7063 var t = customForm.lib.queryBySelector( 7064 customForm.modules[e].prototype.selector 7065 ), 7066 o = 0; 7067 o < t.length; 7068 o++ 7069 ) 7070 t[o].customForm 7071 ? t[o].customForm.refreshState() 7072 : !customForm.lib.hasClass(t[o], "default") && 7073 customForm.modules[e].prototype.checkElement(t[o]) && 7074 new customForm.modules[e]({ replaces: t[o] }); 7075 }, 7076 refreshElement: function (e) { 7077 e && e.customForm && e.customForm.refreshState(); 7078 }, 7079 refreshAll: function () { 7080 for (var e in customForm.modules) 7081 for ( 7082 var t = customForm.lib.queryBySelector( 7083 customForm.modules[e].prototype.selector 7084 ), 7085 o = 0; 7086 o < t.length; 7087 o++ 7088 ) 7089 t[o].customForm && t[o].customForm.refreshState(); 7090 }, 7091 destroyAll: function () { 7092 for (var e in customForm.modules) 7093 for ( 7094 var t = customForm.lib.queryBySelector( 7095 customForm.modules[e].prototype.selector 7096 ), 7097 o = 0; 7098 o < t.length; 7099 o++ 7100 ) 7101 t[o].customForm && t[o].customForm.destroy(); 7102 }, 7103 }, 7104 isTouchDevice: (function () {
7105 try { 7106 return ( 7107 "ontouchstart" in window || 7108 (window.DocumentTouch && document instanceof DocumentTouch) 7109 ); 7110 } catch (e) { 7111 return !1; 7112 } 7113 })(), 7114 setBaseModule: function (e) { 7115 for (var t in ((customForm.customControl = function (e) { 7116 (this.options = customForm.lib.extend( 7117 {}, 7118 customForm.baseOptions, 7119 this.defaultOptions, 7120 e 7121 )), 7122 this.init(); 7123 }), 7124 e)) 7125 customForm.customControl.prototype[t] = e[t]; 7126 }, 7127 init: function () { 7128 return ( 7129 (this.eventPress = this.isTouchDevice ? "touchstart" : "mousedown"), 7130 (this.eventMove = this.isTouchDevice ? "touchmove" : "mousemove"), 7131 (this.eventRelease = this.isTouchDevice ? "touchend" : "mouseup"), 7132 this 7133 ); 7134 }, 7135 initStyles: function () { 7136 var e = document.getElementsByTagName("head")[0], 7137 t = document.createTextNode( 7138 "." + 7139 customForm.baseOptions.unselectableClass + 7140 "{-moz-user-select:none;-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-user-select:none;user-select:none;}" 7141 ), 7142 o = document.createElement("style"); 7143 (o.type = "text/css"), 7144 o.styleSheet ? (o.styleSheet.cssText = t.nodeValue) : o.appendChild(t), 7145 e.appendChild(o); 7146 }, 7147 modules: {}, 7148 plugins: {}, 7149 addModule: function (e) { 7150 if (e.name) { 7151 for (var t in ((customForm.modules[e.name] = function () { 7152 customForm.modules[e.name].superclass.constructor.apply( 7153 this, 7154 arguments 7155 ); 7156 }), 7157 customForm.lib.inherit( 7158 customForm.modules[e.name], 7159 customForm.customControl 7160 ), 7161 e)) 7162 customForm.modules[e.name].prototype[t] = e[t]; 7163 for (var o in (customForm.modules[e.name].prototype.onCreateModule(), 7164 customForm.modules)) 7165 customForm.modules[o] != customForm.modules[e.name] && 7166 customForm.modules[o].prototype.onModuleAdded( 7167 customForm.modules[e.name] 7168 ); 7169 } 7170 }, 7171 addPlugin: function (e) { 7172 if (e && e.name) 7173 for (var t in ((customForm.plugins[e.name] = function () { 7174 this.init.apply(this, arguments); 7175 }), 7176 e)) 7177 customForm.plugins[e.name].prototype[t] = e[t]; 7178 }, 7179 }.init()), 7180 customForm.setBaseModule({ 7181 init: function () { 7182 this.options.replaces && 7183 ((this.realElement = this.options.replaces), 7184 (this.realElement.customForm = this).replaceObject()); 7185 }, 7186 defaultOptions: {}, 7187 checkElement: function (e) { 7188 return !0; 7189 }, 7190 replaceObject: function () { 7191 this.createWrapper(), 7192 this.attachEvents(), 7193 this.fixStyles(), 7194 this.setupWrapper(); 7195 }, 7196 createWrapper: function () { 7197 (this.fakeElement = customForm.lib.createElement( 7198 this.options.wrapperTag 7199 )), 7200 (this.labelFor = customForm.lib.getLabelFor(this.realElement)), 7201 customForm.lib.disableTextSelection(this.fakeElement), 7202 customForm.lib.addClass( 7203 this.fakeElement, 7204 customForm.lib.getAllClasses( 7205 this.realElement.className, 7206 this.options.classPrefix 7207 ) 7208 ), 7209 customForm.lib.addClass( 7210 this.realElement, 7211 customForm.baseOptions.hiddenClass 7212 ); 7213 }, 7214 attachEvents: function () { 7215 customForm.lib.event.add( 7216 this.realElement, 7217 "focus", 7218 this.onFocusHandler, 7219 this 7220 ), 7221 customForm.lib.event.add( 7222 this.realElement, 7223 "blur", 7224 this.onBlurHandler, 7225 this 7226 ), 7227 customForm.lib.event.add( 7228 this.fakeElement, 7229 "click", 7230 this.onFakeClick, 7231 this 7232 ), 7233 customForm.lib.event.add( 7234 this.fakeElement, 7235 customForm.eventPress, 7236 this.onFakePressed, 7237 this 7238 ), 7239 customForm.lib.event.add( 7240 this.fakeElement, 7241 customForm.eventRelease, 7242 this.onFakeReleased, 7243 this 7244 ), 7245 this.labelFor && 7246 ((this.labelFor.customForm = this), 7247 customForm.lib.event.add( 7248 this.labelFor, 7249 "click", 7250 this.onFakeClick, 7251 this 7252 ), 7253 customForm.lib.event.add( 7254 this.labelFor, 7255 customForm.eventPress, 7256 this.onFakePressed, 7257 this 7258 ), 7259 customForm.lib.event.add( 7260 this.labelFor, 7261 customForm.eventRelease, 7262 this.onFakeReleased, 7263 this 7264 )); 7265 }, 7266 fixStyles: function () { 7267 var e; 7268 customForm.isTouchDevice && 7269 ((e = "rgba(255,255,255,0)"), 7270 (this.realElement.style.webkitTapHighlightColor = e), 7271 (this.fakeElement.style.webkitTapHighlightColor = e), 7272 this.labelFor && (this.labelFor.style.webkitTapHighlightColor = e)); 7273 }, 7274 setupWrapper: function () {}, 7275 refreshState: function () {}, 7276 destroy: function () { 7277 this.fakeElement && 7278 this.fakeElement.parentNode && 7279 this.fakeElement.parentNode.removeChild(this.fakeElement), 7280 customForm.lib.removeClass( 7281 this.realElement, 7282 customForm.baseOptions.hiddenClass 7283 ), 7284 (this.realElement.customForm = null); 7285 }, 7286 onFocus: function () { 7287 customForm.lib.addClass(this.fakeElement, this.options.focusClass); 7288 }, 7289 onBlur: function (e) { 7290 customForm.lib.removeClass(this.fakeElement, this.options.focusClass); 7291 }, 7292 onFocusHandler: function () { 7293 this.focused || 7294 ((this.focused = !0), 7295 customForm.isTouchDevice && 7296 (customForm.focusedInstance && 7297 customForm.focusedInstance.realElement != this.realElement && 7298 (customForm.focusedInstance.onBlur(), 7299 customForm.focusedInstance.realElement.blur()), 7300 (customForm.focusedInstance = this)), 7301 this.onFocus.apply(this, arguments)); 7302 }, 7303 onBlurHandler: function () { 7304 this.pressedFlag || 7305 ((this.focused = !1), this.onBlur.apply(this, arguments)); 7306 }, 7307 onFakeClick: function () { 7308 customForm.isTouchDevice 7309 ? this.onFocus() 7310 : this.realElement.disabled || this.realElement.focus(); 7311 }, 7312 onFakePressed: function (e) { 7313 this.pressedFlag = !0; 7314 }, 7315 onFakeReleased: function () { 7316 this.pressedFlag = !1; 7317 }, 7318 onCreateModule: function () {}, 7319 onModuleAdded: function (e) {}, 7320 onControlReady: function () {}, 7321 }), 7322 (customForm.lib = { 7323 bind: function (e, t) { 7324 return function () { 7325 return e.apply(t, arguments); 7326 }; 7327 }, 7328 browser: (function () { 7329 var e = navigator.userAgent.toLowerCase(), 7330 t = {}, 7331 o = 7332 /(webkit)[ \/]([\w.]+)/.exec(e) || 7333 /(opera)(?:.*version)?[ \/]([\w.]+)/.exec(e) || 7334 /(msie) ([\w.]+)/.exec(e) || 7335 (e.indexOf("compatible") < 0 && 7336 /(mozilla)(?:.*? rv:([\w.]+))?/.exec(e)) || 7337 []; 7338 return ( 7339 (t[o[1]] = !0), 7340 (t.version = o[2] || "0"), 7341 (t.safariMac = -1 != e.indexOf("mac") && -1 != e.indexOf("safari")), 7342 t 7343 ); 7344 })(), 7345 getOffset: function (e) { 7346 if (e.getBoundingClientRect) { 7347 var t = 7348 window.pageXOffset || 7349 document.documentElement.scrollLeft || 7350 document.body.scrollLeft, 7351 o = 7352 window.pageYOffset || 7353 document.documentElement.scrollTop || 7354 document.body.scrollTop, 7355 n = 7356 document.documentElement.clientLeft || 7357 document.body.clientLeft || 7358 0, 7359 i = 7360 document.documentElement.clientTop || document.body.clientTop || 0; 7361 return { 7362 top: Math.round(e.getBoundingClientRect().top + o - i), 7363 left: Math.round(e.getBoundingClientRect().left + t - n), 7364 }; 7365 } 7366 for (var s = 0, r = 0; e.offsetParent; ) 7367 (s += e.offsetLeft), (r += e.offsetTop), (e = e.offsetParent); 7368 return { top: r, left: s }; 7369 }, 7370 getScrollTop: function () { 7371 return window.pageYOffset || document.documentElement.scrollTop; 7372 }, 7373 getScrollLeft: function () { 7374 return window.pageXOffset || document.documentElement.scrollLeft; 7375 }, 7376 getWindowWidth: function () { 7377 return "CSS1Compat" == document.compatMode 7378 ? document.documentElement.clientWidth 7379 : document.body.clientWidth; 7380 }, 7381 getWindowHeight: function () { 7382 return "CSS1Compat" == document.compatMode 7383 ? document.documentElement.clientHeight 7384 : document.body.clientHeight; 7385 }, 7386 getStyle: function (e, t) { 7387 return document.defaultView && document.defaultView.getComputedStyle 7388 ? document.defaultView.getComputedStyle(e, null)[t] 7389 : e.currentStyle 7390 ? e.currentStyle[t] 7391 : e.style[t]; 7392 }, 7393 getParent: function (e, t) { 7394 for (; e.parentNode && e.parentNode != document.body; ) { 7395 if (e.parentNode.tagName.toLowerCase() == t.toLowerCase()) 7396 return e.parentNode; 7397 e = e.parentNode; 7398 } 7399 return !1; 7400 }, 7401 isParent: function (e, t) { 7402 for (; t.parentNode; ) { 7403 if (e == t) return !0; 7404 t = t.parentNode; 7405 } 7406 return !1; 7407 }, 7408 getLabelFor: function (e) { 7409 return customForm.lib.getParent(e, "label") 7410 ? e.parentNode 7411 : e.id 7412 ? customForm.lib.queryBySelector('label[for="' + e.id + '"]')[0] 7413 : void 0; 7414 }, 7415 disableTextSelection: function (e) { 7416 void 0 !== e.onselectstart 7417 ? (e.onselectstart = function () { 7418 return !1; 7419 }) 7420 : window.opera 7421 ? e.setAttribute("unselectable", "on") 7422 : customForm.lib.addClass(e, customForm.baseOptions.unselectableClass); 7423 }, 7424 enableTextSelection: function (e) { 7425 void 0 !== e.onselectstart 7426 ? (e.onselectstart = null) 7427 : window.opera 7428 ? e.removeAttribute("unselectable") 7429 : customForm.lib.removeClass( 7430 e, 7431 customForm.baseOptions.unselectableClass 7432 ); 7433 }, 7434 queryBySelector: function (e, t) { 7435 return this.getElementsBySelector(e, t); 7436 }, 7437 prevSibling: function (e) { 7438 for (; (e = e.previousSibling) && 1 != e.nodeType; ); 7439 return e; 7440 }, 7441 nextSibling: function (e) { 7442 for (; (e = e.nextSibling) && 1 != e.nodeType; ); 7443 return e; 7444 }, 7445 fireEvent: function (e, t) { 7446 if (document.createEvent) 7447 return ( 7448 (o = document.createEvent("HTMLEvents")).initEvent(t, !0, !0),
7449 !e.dispatchEvent(o) 7450 ); 7451 var o = document.createEventObject(); 7452 return e.fireEvent("on" + t, o); 7453 }, 7454 inherit: function (e, t) { 7455 function o() {} 7456 (o.prototype = t.prototype), 7457 (e.prototype = new o()), 7458 ((e.prototype.constructor = e).superclass = t.prototype); 7459 }, 7460 extend: function (e) { 7461 for (var t = 1; t < arguments.length; t++) 7462 for (var o in arguments[t]) 7463 arguments[t].hasOwnProperty(o) && (e[o] = arguments[t][o]); 7464 return e; 7465 }, 7466 hasClass: function (e, t) { 7467 return ( 7468 !!e.className && 7469 e.className.match(new RegExp("(\\s|^)" + t + "(\\s|$)")) 7470 ); 7471 }, 7472 addClass: function (e, t) { 7473 this.hasClass(e, t) || 7474 (e.className += 7475 (e.className.length && 7476 " " !== e.className.charAt(e.className.length - 1) 7477 ? " " 7478 : "") + t); 7479 }, 7480 removeClass: function (e, t) { 7481 this.hasClass(e, t) && 7482 (e.className = e.className 7483 .replace(new RegExp("(\\s|^)" + t + "(\\s|$)"), " ") 7484 .replace(/\s+$/, "")); 7485 }, 7486 toggleClass: function (e, t, o) { 7487 o ? this.addClass(e, t) : this.removeClass(e, t); 7488 }, 7489 createElement: function (e, t) { 7490 var o = document.createElement(e); 7491 for (var n in t) 7492 if (t.hasOwnProperty(n)) 7493 switch (n) { 7494 case "class": 7495 o.className = t[n]; 7496 break; 7497 case "html": 7498 o.innerHTML = t[n]; 7499 break; 7500 case "style": 7501 this.setStyles(o, t[n]); 7502 break; 7503 default: 7504 o.setAttribute(n, t[n]); 7505 } 7506 return o; 7507 }, 7508 setStyles: function (e, t) { 7509 for (var o in t) 7510 if (t.hasOwnProperty(o)) 7511 switch (o) { 7512 case "float": 7513 e.style.cssFloat = t[o]; 7514 break; 7515 case "opacity": 7516 (e.style.filter = 7517 "progid:DXImageTransform.Microsoft.Alpha(opacity=" + 7518 100 * t[o] + 7519 ")"), 7520 (e.style.opacity = t[o]); 7521 break; 7522 default: 7523 e.style[o] = 7524 (void 0 === t[o] ? 0 : t[o]) + 7525 ("number" == typeof t[o] ? "px" : ""); 7526 } 7527 return e; 7528 }, 7529 getInnerWidth: function (e) { 7530 return ( 7531 e.offsetWidth - 7532 (parseInt(this.getStyle(e, "paddingLeft")) || 0) - 7533 (parseInt(this.getStyle(e, "paddingRight")) || 0) 7534 ); 7535 }, 7536 getInnerHeight: function (e) { 7537 return ( 7538 e.offsetHeight - 7539 (parseInt(this.getStyle(e, "paddingTop")) || 0) - 7540 (parseInt(this.getStyle(e, "paddingBottom")) || 0) 7541 ); 7542 }, 7543 getAllClasses: function (e, t, o) { 7544 return ( 7545 (o = o || ""), 7546 (t = t || ""), 7547 e 7548 ? e 7549 .replace(new RegExp("(\\s|^)" + o + "(\\s|$)"), " ") 7550 .replace(/[\s]*([\S]+)+[\s]*/gi, t + "$1 ") 7551 : "" 7552 ); 7553 }, 7554 getElementsBySelector: function (e, t) { 7555 if ("function" == typeof document.querySelectorAll) 7556 return (t || document).querySelectorAll(e); 7557 for (var o = e.split(","), n = [], i = 0; i < o.length; i++) { 7558 for ( 7559 var s = [t || document], 7560 r = o[i].replace(/^\s+/, "").replace(/\s+$/, "").split(" "), 7561 a = 0; 7562 a < r.length; 7563 a++ 7564 ) 7565 if ( 7566 ((token = r[a].replace(/^\s+/, "").replace(/\s+$/, "")), 7567 -1 < token.indexOf("#")) 7568 ) { 7569 var l = (u = token.split("#"))[0], 7570 c = u[1], 7571 d = document.getElementById(c); 7572 if (l && d.nodeName.toLowerCase() != l) return []; 7573 s = [d]; 7574 } else if (-1 < token.indexOf(".")) { 7575 for ( 7576 var u, 7577 l = (u = token.split("."))[0] || "*", 7578 p = u[1], 7579 h = [], 7580 f = 0, 7581 m = 0; 7582 m < s.length; 7583 m++ 7584 ) { 7585 T = 7586 "*" == l 7587 ? s[m].getElementsByTagName("*") 7588 : s[m].getElementsByTagName(l); 7589 for (var g = 0; g < T.length; g++) h[f++] = T[g]; 7590 } 7591 s = []; 7592 for (var v = 0, y = 0; y < h.length; y++) 7593 h[y].className && 7594 h[y].className.match(new RegExp("(\\s|^)" + p + "(\\s|$)")) &&
7595 (s[v++] = h[y]); 7596 } else if ( 7597 token.match(/^(\w*)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/) 7598 ) { 7599 var l = RegExp.$1 || "*", 7600 w = RegExp.$2, 7601 b = RegExp.$3, 7602 x = RegExp.$4; 7603 "for" == w.toLowerCase() && 7604 this.browser.msie && 7605 this.browser.version < 8 && 7606 (w = "htmlFor"); 7607 for (h = [], f = 0, m = 0; m < s.length; m++) { 7608 T = 7609 "*" == l 7610 ? s[m].getElementsByTagName("*") 7611 : s[m].getElementsByTagName(l); 7612 for (g = 0; T[g]; g++) h[f++] = T[g]; 7613 } 7614 s = []; 7615 var k, 7616 v = 0; 7617 switch (b) { 7618 case "=": 7619 k = function (e) { 7620 return e.getAttribute(w) == x; 7621 }; 7622 break; 7623 case "~": 7624 k = function (e) { 7625 return e 7626 .getAttribute(w) 7627 .match(new RegExp("(\\s|^)" + x + "(\\s|$)")); 7628 }; 7629 break; 7630 case "|": 7631 k = function (e) { 7632 return e.getAttribute(w).match(new RegExp("^" + x + "-?")); 7633 }; 7634 break; 7635 case "^": 7636 k = function (e) { 7637 return 0 == e.getAttribute(w).indexOf(x); 7638 }; 7639 break; 7640 case "$": 7641 k = function (e) { 7642 return ( 7643 e.getAttribute(w).lastIndexOf(x) == 7644 e.getAttribute(w).length - x.length 7645 ); 7646 }; 7647 break; 7648 case "*": 7649 k = function (e) { 7650 return -1 < e.getAttribute(w).indexOf(x); 7651 }; 7652 break; 7653 default: 7654 k = function (e) { 7655 return e.getAttribute(w); 7656 }; 7657 } 7658 s = []; 7659 for (v = 0, y = 0; y < h.length; y++) k(h[y]) && (s[v++] = h[y]); 7660 } else { 7661 l = token; 7662 for (h = [], f = 0, m = 0; m < s.length; m++) 7663 for ( 7664 var T = s[m].getElementsByTagName(l), g = 0; 7665 g < T.length; 7666 g++ 7667 ) 7668 h[f++] = T[g]; 7669 s = h; 7670 } 7671 n = [].concat(n, s); 7672 } 7673 return n; 7674 }, 7675 scrollSize: (function () { 7676 var t, o, n, i; 7677 function s() { 7678 document.body.removeChild(o), (o = null); 7679 } 7680 function e(e) { 7681 return ( 7682 o && s(), 7683 (t = document.createElement("div")), 7684 ((o = document.createElement("div")).style.cssText = 7685 "position:absolute;overflow:hidden;width:100px;height:100px"), 7686 o.appendChild(t), 7687 document.body.appendChild(o), 7688 (t.style.cssText = "height:" + (e ? "100%" : "200px")), 7689 (n = e ? t.offsetHeight : t.offsetWidth), 7690 (o.style.overflow = "scroll"), 7691 (t.innerHTML = 1), 7692 (i = e ? t.offsetHeight : t.offsetWidth), 7693 e && o.clientHeight && (i = o.clientHeight), 7694 s(), 7695 n - i 7696 ); 7697 } 7698 return { 7699 getWidth: function () { 7700 return e(!1); 7701 }, 7702 getHeight: function () { 7703 return e(!0); 7704 }, 7705 }; 7706 })(), 7707 domReady: function (e) { 7708 var o = !1; 7709 function n() { 7710 o || ((o = !0), e()); 7711 } 7712 document.addEventListener 7713 ? document.addEventListener("DOMContentLoaded", n, !1) 7714 : document.attachEvent && 7715 (document.documentElement.doScroll && 7716 window == window.top && 7717 (function t() { 7718 if (!o && document.body) 7719 try { 7720 document.documentElement.doScroll("left"), n(); 7721 } catch (e) { 7722 setTimeout(t, 0); 7723 } 7724 })(), 7725 document.attachEvent("onreadystatechange", function () { 7726 "complete" === document.readyState && n(); 7727 })), 7728 window.addEventListener 7729 ? window.addEventListener("load", n, !1) 7730 : window.attachEvent && window.attachEvent("onload", n); 7731 }, 7732 event: (function () { 7733 var s = 0; 7734 function r(e, t) { 7735 var o, n, i; 7736 (o = (o = e) || window.event).isFixed || 7737 ((o.isFixed = !0), 7738 (o.preventDefault = 7739 o.preventDefault || 7740 function () { 7741 this.returnValue = !1; 7742 }), 7743 (o.stopPropagation = 7744 o.stopPropagaton || 7745 function () { 7746 this.cancelBubble = !0; 7747 }), 7748 o.target || (o.target = o.srcElement), 7749 !o.relatedTarget && 7750 o.fromElement && 7751 (o.relatedTarget = 7752 o.fromElement == o.target ? o.toElement : o.fromElement), 7753 null == o.pageX && 7754 null != o.clientX && 7755 ((n = document.documentElement), 7756 (i = document.body), 7757 (o.pageX = 7758 o.clientX + 7759 ((n && n.scrollLeft) || (i && i.scrollLeft) || 0) - 7760 (n.clientLeft || 0)), 7761 (o.pageY = 7762 o.clientY + 7763 ((n && n.scrollTop) || (i && i.scrollTop) || 0) - 7764 (n.clientTop || 0))), 7765 !o.which && 7766 o.button && 7767 (o.which = 7768 1 & o.button ? 1 : 2 & o.button ? 3 : 4 & o.button ? 2 : 0), 7769 ("DOMMouseScroll" !== o.type && "mousewheel" !== o.type) || 7770 ((o.mWheelDelta = 0), 7771 o.wheelDelta 7772 ? (o.mWheelDelta = o.wheelDelta / 120) 7773 : o.detail && (o.mWheelDelta = -o.detail / 3))), 7774 (e = o); 7775 var s = this.events[e.type]; 7776 for (var r in s) { 7777 !1 === s[r].call(t || this, e) && 7778 (e.preventDefault(), e.stopPropagation()); 7779 } 7780 } 7781 var a = { 7782 add: function (t, e, o, n) { 7783 t.setInterval && t != window && !t.frameElement && (t = window), 7784 o.guid || (o.guid = ++s), 7785 t.events || 7786 ((t.events = {}), 7787 (t.handle = function (e) { 7788 return r.call(t, e); 7789 })), 7790 t.events[e] || 7791 ((t.events[e] = {}), 7792 t.addEventListener 7793 ? t.addEventListener(e, t.handle, !1) 7794 : t.attachEvent && t.attachEvent("on" + e, t.handle), 7795 "mousewheel" === e && a.add(t, "DOMMouseScroll", o, n)); 7796 var i = customForm.lib.bind(o, n); 7797 (i.guid = o.guid), (t.events[e][o.guid] = n ? i : o); 7798 }, 7799 remove: function (t, e, o) { 7800 var n = t.events && t.events[e]; 7801 if (n) { 7802 for (var i in (delete n[o.guid], n)) return; 7803 for (var i in (t.removeEventListener 7804 ? t.removeEventListener(e, t.handle, !1) 7805 : t.detachEvent && t.detachEvent("on" + e, t.handle), 7806 delete t.events[e], 7807 t.events)) 7808 return; 7809 try { 7810 delete t.handle, delete t.events; 7811 } catch (e) { 7812 t.removeAttribute && 7813 (t.removeAttribute("handle"), t.removeAttribute("events")); 7814 } 7815 "mousewheel" === e && a.remove(t, "DOMMouseScroll", o); 7816 } 7817 }, 7818 }; 7819 return a; 7820 })(), 7821 }), 7822 customForm.lib.domReady(function () { 7823 customForm.initStyles(); 7824 }), 7825 customForm.addModule({ 7826 name: "checkbox", 7827 selector: 'input[type="checkbox"]', 7828 defaultOptions: { 7829 wrapperClass: "chk-area", 7830 focusClass: "chk-focus", 7831 checkedClass: "chk-checked", 7832 labelActiveClass: "chk-label-active", 7833 uncheckedClass: "chk-unchecked", 7834 disabledClass: "chk-disabled", 7835 chkStructure: "<span></span>", 7836 }, 7837 setupWrapper: function () { 7838 customForm.lib.addClass(this.fakeElement, this.options.wrapperClass), 7839 (this.fakeElement.innerHTML = this.options.chkStructure), 7840 this.realElement.parentNode.insertBefore( 7841 this.fakeElement, 7842 this.realElement 7843 ), 7844 customForm.lib.event.add( 7845 this.realElement, 7846 "click", 7847 this.onRealClick, 7848 this 7849 ), 7850 this.refreshState(); 7851 }, 7852 onFakePressed: function () { 7853 customForm.modules[this.name].superclass.onFakePressed.apply( 7854 this, 7855 arguments 7856 ), 7857 this.realElement.disabled || this.realElement.focus(); 7858 }, 7859 onFakeClick: function (e) { 7860 return ( 7861 customForm.modules[this.name].superclass.onFakeClick.apply( 7862 this, 7863 arguments 7864 ), 7865 (this.tmpTimer = setTimeout( 7866 customForm.lib.bind(function () { 7867 this.toggle(); 7868 }, this), 7869 10 7870 )), 7871 !1 7872 ); 7873 }, 7874 onRealClick: function (e) { 7875 setTimeout( 7876 customForm.lib.bind(function () { 7877 this.refreshState(); 7878 }, this), 7879 10 7880 ), 7881 e.stopPropagation(); 7882 }, 7883 toggle: function (e) { 7884 return ( 7885 this.realElement.disabled || 7886 (this.realElement.checked 7887 ? (this.realElement.checked = !1) 7888 : (this.realElement.checked = !0), 7889 customForm.lib.fireEvent(this.realElement, "change")), 7890 this.refreshState(), 7891 !1 7892 ); 7893 }, 7894 refreshState: function () { 7895 this.realElement.checked 7896 ? (customForm.lib.addClass(this.fakeElement, this.options.checkedClass), 7897 customForm.lib.removeClass( 7898 this.fakeElement, 7899 this.options.uncheckedClass 7900 ), 7901 this.labelFor && 7902 customForm.lib.addClass( 7903 this.labelFor, 7904 this.options.labelActiveClass 7905 )) 7906 : (customForm.lib.removeClass( 7907 this.fakeElement, 7908 this.options.checkedClass 7909 ), 7910 customForm.lib.addClass( 7911 this.fakeElement, 7912 this.options.uncheckedClass 7913 ), 7914 this.labelFor && 7915 customForm.lib.removeClass( 7916 this.labelFor, 7917 this.options.labelActiveClass 7918 )), 7919 this.realElement.disabled 7920 ? (customForm.lib.addClass( 7921 this.fakeElement, 7922 this.options.disabledClass 7923 ), 7924 this.labelFor && 7925 customForm.lib.addClass( 7926 this.labelFor, 7927 this.options.labelDisabledClass 7928 )) 7929 : (customForm.lib.removeClass( 7930 this.fakeElement, 7931 this.options.disabledClass 7932 ), 7933 this.labelFor && 7934 customForm.lib.removeClass( 7935 this.labelFor, 7936 this.options.labelDisabledClass 7937 )); 7938 }, 7939 }), 7940 customForm.addModule({ 7941 name: "radio", 7942 selector: 'input[type="radio"]', 7943 defaultOptions: { 7944 wrapperClass: "rad-area", 7945 focusClass: "rad-focus", 7946 checkedClass: "rad-checked", 7947 labelActiveClass: "rad-label-active", 7948 uncheckedClass: "rad-unchecked", 7949 disabledClass: "rad-disabled", 7950 radStructure: "<span></span>", 7951 }, 7952 getRadioGroup: function (e) { 7953 var t = e.getAttribute("name"); 7954 return t 7955 ? customForm.lib.queryBySelector( 7956 'input[name="' + t + '"]', 7957 customForm.lib.getParent("form") 7958 ) 7959 : [e]; 7960 }, 7961 setupWrapper: function () { 7962 customForm.lib.addClass(this.fakeElement, this.options.wrapperClass), 7963 (this.fakeElement.innerHTML = this.options.radStructure), 7964 this.realElement.parentNode.insertBefore( 7965 this.fakeElement, 7966 this.realElement 7967 ), 7968 this.refreshState(), 7969 this.addEvents(); 7970 }, 7971 addEvents: function () { 7972 customForm.lib.event.add( 7973 this.fakeElement, 7974 "click", 7975 this.toggleRadio, 7976 this 7977 ), 7978 this.labelFor && 7979 customForm.lib.event.add( 7980 this.labelFor, 7981 "click", 7982 this.toggleRadio, 7983 this 7984 ); 7985 }, 7986 onFocus: function (e) { 7987 customForm.modules[this.name].superclass.onFocus.apply(this, arguments), 7988 setTimeout( 7989 customForm.lib.bind(function () { 7990 this.refreshState(); 7991 }, this), 7992 10 7993 ); 7994 }, 7995 toggleRadio: function () { 7996 this.realElement.disabled || (this.realElement.checked = !0), 7997 this.refreshState(), 7998 customForm.lib.fireEvent(this.realElement, "change"); 7999 }, 8000 refreshState: function () { 8001 for ( 8002 var e = this.getRadioGroup(this.realElement), t = 0; 8003 t < e.length; 8004 t++ 8005 ) { 8006 var o = e[t].customForm; 8007 o && 8008 (o.realElement.checked 8009 ? (customForm.lib.addClass(o.fakeElement, o.options.checkedClass), 8010 customForm.lib.removeClass( 8011 o.fakeElement, 8012 o.options.uncheckedClass 8013 ), 8014 o.labelFor && 8015 customForm.lib.addClass(o.labelFor, o.options.labelActiveClass)) 8016 : (customForm.lib.removeClass( 8017 o.fakeElement, 8018 o.options.checkedClass 8019 ), 8020 customForm.lib.addClass(o.fakeElement, o.options.uncheckedClass), 8021 o.labelFor && 8022 customForm.lib.removeClass( 8023 o.labelFor, 8024 o.options.labelActiveClass 8025 )), 8026 o.realElement.disabled 8027 ? (customForm.lib.addClass(o.fakeElement, o.options.disabledClass), 8028 o.labelFor && 8029 customForm.lib.addClass( 8030 o.labelFor, 8031 o.options.labelDisabledClass 8032 )) 8033 : (customForm.lib.removeClass( 8034 o.fakeElement, 8035 o.options.disabledClass 8036 ), 8037 o.labelFor && 8038 customForm.lib.removeClass( 8039 o.labelFor, 8040 o.options.labelDisabledClass 8041 ))); 8042 } 8043 }, 8044 }), 8045 customForm.addModule({ 8046 name: "select", 8047 selector: "select", 8048 defaultOptions: { 8049 showNativeDrop: !1, 8050 handleDropPosition: !0, 8051 selectDropPosition: "bottom", 8052 wrapperClass: "select-area", 8053 focusClass: "select-focus", 8054 dropActiveClass: "select-active", 8055 selectedClass: "item-selected", 8056 currentSelectedClass: "current-selected", 8057 disabledClass: "select-disabled", 8058 valueSelector: "span.center", 8059 optGroupClass: "optgroup", 8060 openerSelector: "a.select-opener", 8061 selectStructure: 8062 '<span class="left"></span><span class="center"></span><a class="select-opener"></a>', 8063 classPrefix: "select-", 8064 dropMaxHeight: 200, 8065 dropFlippedClass: "select-options-flipped", 8066 dropHiddenClass: "options-hidden", 8067 dropScrollableClass: "options-overflow", 8068 dropClass: "select-options", 8069 dropClassPrefix: "drop-", 8070 dropStructure: 8071 '<div class="drop-holder"><div class="drop-list"></div></div>', 8072 dropSelector: "div.drop-list", 8073 }, 8074 checkElement: function (e) { 8075 return !e.size && !e.multiple; 8076 }, 8077 setupWrapper: function () { 8078 customForm.lib.addClass(this.fakeElement, this.options.wrapperClass), 8079 this.realElement.parentNode.insertBefore( 8080 this.fakeElement, 8081 this.realElement 8082 ), 8083 (this.fakeElement.innerHTML = this.options.selectStructure), 8084 (this.fakeElement.style.width = 8085 0 < this.realElement.offsetWidth 8086 ? this.realElement.offsetWidth + "px" 8087 : "auto"), 8088 customForm.isTouchDevice && 8089 customForm.baseOptions.useNativeDropOnMobileDevices && 8090 (this.options.showNativeDrop = !0), 8091 this.options.showNativeDrop && 8092 (this.fakeElement.appendChild(this.realElement), 8093 customForm.lib.removeClass( 8094 this.realElement, 8095 this.options.hiddenClass 8096 ), 8097 customForm.lib.setStyles(this.realElement, { 8098 top: 0, 8099 left: 0, 8100 margin: 0, 8101 padding: 0, 8102 opacity: 0, 8103 border: "none", 8104 position: "absolute", 8105
8105 width: customForm.lib.getInnerWidth(this.fakeElement) - 1, 8106 height: customForm.lib.getInnerHeight(this.fakeElement) - 1, 8107 })), 8108 (this.opener = customForm.lib.queryBySelector( 8109 this.options.openerSelector, 8110 this.fakeElement 8111 )[0]), 8112 (this.valueText = customForm.lib.queryBySelector( 8113 this.options.valueSelector, 8114 this.fakeElement 8115 )[0]), 8116 customForm.lib.disableTextSelection(this.valueText), 8117 (this.opener.customForm = this).options.showNativeDrop 8118 ? this.refreshState() 8119 : (this.createDropdown(), 8120 this.refreshState(), 8121 this.onControlReady(this), 8122 this.hideDropdown(!0)), 8123 this.addEvents(); 8124 }, 8125 addEvents: function () { 8126 this.options.showNativeDrop 8127 ? customForm.lib.event.add( 8128 this.realElement, 8129 "click", 8130 this.onChange, 8131 this 8132 ) 8133 : customForm.lib.event.add( 8134 this.fakeElement, 8135 "click", 8136 this.toggleDropdown, 8137 this 8138 ), 8139 customForm.lib.event.add( 8140 this.realElement, 8141 "change", 8142 this.onChange, 8143 this 8144 ); 8145 }, 8146 onFakeClick: function () {}, 8147 onFocus: function () { 8148 customForm.modules[this.name].superclass.onFocus.apply(this, arguments), 8149 this.options.showNativeDrop || 8150 (customForm.lib.browser.safariMac && 8151 this.realElement.setAttribute("size", "2"), 8152 customForm.lib.event.add( 8153 this.realElement, 8154 "keydown", 8155 this.onKeyDown, 8156 this 8157 ), 8158 customForm.activeControl && 8159 customForm.activeControl != this && 8160 (customForm.activeControl.hideDropdown(), 8161 (customForm.activeControl = this))); 8162 }, 8163 onBlur: function () { 8164 this.options.showNativeDrop 8165 ? customForm.modules[this.name].superclass.onBlur.apply(this) 8166 : (customForm.lib.browser.safariMac && 8167 this.realElement.removeAttribute("size"), 8168 (this.isActiveDrop() && this.isOverDrop()) || 8169 (customForm.modules[this.name].superclass.onBlur.apply(this), 8170 customForm.activeControl === this && 8171 (customForm.activeControl = null), 8172 customForm.isTouchDevice || this.hideDropdown()), 8173 customForm.lib.event.remove( 8174 this.realElement, 8175 "keydown", 8176 this.onKeyDown 8177 )); 8178 }, 8179 onChange: function () { 8180 this.refreshState(); 8181 }, 8182 onKeyDown: function (e) { 8183 (customForm.tmpFlag = !0), 8184 setTimeout(function () { 8185 customForm.tmpFlag = !1; 8186 }, 100); 8187 var t = this; 8188 if ( 8189 ((t.keyboardFix = !0), 8190 setTimeout(function () { 8191 t.refreshState(); 8192 }, 10), 8193 13 == e.keyCode) 8194 ) 8195 return t.toggleDropdown.apply(t), !1; 8196 }, 8197 onResizeWindow: function (e) { 8198 this.isActiveDrop() && this.hideDropdown(); 8199 }, 8200 onScrollWindow: function (e) { 8201 this.isActiveDrop() && this.positionDropdown(); 8202 }, 8203 onOptionClick: function (e) { 8204 var t = 8205 e.target && e.target.tagName && "li" == e.target.tagName.toLowerCase() 8206 ? e.target 8207 : customForm.lib.getParent(e.target, "li"); 8208 return ( 8209 t && 8210 ((this.realElement.selectedIndex = parseInt(t.getAttribute("rel"))), 8211 customForm.isTouchDevice ? this.onFocus() : this.realElement.focus(), 8212 this.refreshState(), 8213 this.hideDropdown(), 8214 customForm.lib.fireEvent(this.realElement, "change")), 8215 !1 8216 ); 8217 }, 8218 onClickOutside: function (e) { 8219 customForm.tmpFlag 8220 ? (customForm.tmpFlag = !1) 8221 : customForm.lib.isParent(this.fakeElement, e.target) || 8222 customForm.lib.isParent(this.selectDrop, e.target) || 8223 this.hideDropdown(); 8224 }, 8225 onDropHover: function (e) { 8226 var t; 8227 this.keyboardFix 8228 ? (this.keyboardFix = !1) 8229 : ((this.hoverFlag = !0), 8230 (t = 8231 e.target && 8232 e.target.tagName && 8233 "li" == e.target.tagName.toLowerCase() 8234 ? e.target 8235 : customForm.lib.getParent(e.target, "li")) && 8236 ((this.realElement.selectedIndex = parseInt(t.getAttribute("rel"))), 8237 this.refreshSelectedClass(parseInt(t.getAttribute("rel"))))); 8238 }, 8239 onDropLeave: function () { 8240 this.hoverFlag = !1; 8241 }, 8242 isActiveDrop: function () { 8243 return !customForm.lib.hasClass( 8244 this.selectDrop, 8245 this.options.dropHiddenClass 8246 ); 8247 }, 8248 isOverDrop: function () { 8249 return this.hoverFlag; 8250 }, 8251 createDropdown: function () { 8252 this.selectDrop && 8253 this.selectDrop.parentNode.removeChild(this.selectDrop), 8254 (this.selectDrop = document.createElement("div")), 8255 (this.selectDrop.className = this.options.dropClass), 8256 (this.selectDrop.innerHTML = this.options.dropStructure), 8257 customForm.lib.setStyles(this.selectDrop, { position: "absolute" }), 8258 (this.selectList = customForm.lib.queryBySelector( 8259 this.options.dropSelector, 8260 this.selectDrop 8261 )[0]), 8262 customForm.lib.addClass(this.selectDrop, this.options.dropHiddenClass), 8263 document.body.appendChild(this.selectDrop), 8264 (this.selectDrop.customForm = this), 8265 customForm.lib.event.add( 8266 this.selectDrop, 8267 "click", 8268 this.onOptionClick, 8269 this 8270 ), 8271 customForm.lib.event.add( 8272 this.selectDrop, 8273 "mouseover", 8274 this.onDropHover, 8275 this 8276 ), 8277 customForm.lib.event.add( 8278 this.selectDrop, 8279 "mouseout", 8280 this.onDropLeave, 8281 this 8282 ), 8283 this.buildDropdown(); 8284 }, 8285 buildDropdown: function () { 8286 this.buildDropdownOptions(), 8287 this.positionDropdown(), 8288 this.buildDropdownScroll(); 8289 }, 8290 buildDropdownOptions: function () { 8291 this.resStructure = ""; 8292 for (var e = (this.optNum = 0); e < this.realElement.children.length; e++) 8293 this.resStructure += 8294 this.buildElement(this.realElement.children[e]) + "\n"; 8295 this.selectList.innerHTML = this.resStructure; 8296 }, 8297 buildDropdownScroll: function () { 8298 this.options.dropMaxHeight && 8299 this.selectDrop.offsetHeight > this.options.dropMaxHeight && 8300 ((this.selectList.style.height = this.options.dropMaxHeight + "px"), 8301 (this.selectList.style.overflow = "auto"), 8302 (this.selectList.style.overflowX = "hidden"), 8303 customForm.lib.addClass( 8304 this.selectDrop, 8305 this.options.dropScrollableClass 8306 )), 8307 customForm.lib.addClass( 8308 this.selectDrop, 8309 customForm.lib.getAllClasses( 8310 this.realElement.className, 8311 this.options.dropClassPrefix, 8312 customForm.baseOptions.hiddenClass 8313 ) 8314 ); 8315 }, 8316 parseOptionTitle: function (e) { 8317 return "string" == typeof e && /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i.test(e) 8318 ? e 8319 : ""; 8320 }, 8321 buildElement: function (e) { 8322 var t, 8323 o = ""; 8324 if ("option" == e.tagName.toLowerCase()) 8325 return ( 8326 (customForm.lib.prevSibling(e) && 8327 "option" == customForm.lib.prevSibling(e).tagName.toLowerCase()) || 8328 (o += "<ul>"), 8329 (t = this.parseOptionTitle(e.title)), 8330 (o += 8331 '<li rel="' + 8332 this.optNum++ + 8333 '" class="' + 8334 (e.className ? e.className + " " : "") + 8335 'customFormcalc"><a href="/">' + 8336 (t ? '<img src="' + t + '" alt="" />' : "") + 8337 "<span>" + 8338 e.innerHTML + 8339 "</span></a></li>"), 8340 (customForm.lib.nextSibling(e) && 8341 "option" == customForm.lib.nextSibling(e).tagName.toLowerCase()) || 8342 (o += "</ul>"), 8343 o 8344 ); 8345 if ("optgroup" == e.tagName.toLowerCase() && e.label) { 8346 (o += '<div class="' + this.options.optGroupClass + '">'), 8347 (o += 8348 '<strong class="customFormcalc"><em>' + e.label + "</em></strong>"); 8349 for (var n = 0; n < e.children.length; n++) 8350 o += this.buildElement(e.children[n]); 8351 return (o += "</div>"); 8352 } 8353 }, 8354 positionDropdown: function () { 8355 var e = customForm.lib.getOffset(this.fakeElement), 8356 t = this.fakeElement.offsetHeight, 8357 o = this.selectDrop.offsetHeight, 8358 n = 8359 e.top - o >= customForm.lib.getScrollTop() &&
8360 customForm.lib.getScrollTop() + customForm.lib.getWindowHeight() < 8361 e.top + t + o; 8362 (this.options.handleDropPosition && n) || 8363 "top" === this.options.selectDropPosition 8364 ? ((this.selectDrop.style.top = e.top - o + "px"), 8365 customForm.lib.addClass( 8366 this.selectDrop, 8367 this.options.dropFlippedClass 8368 )) 8369 : ((this.selectDrop.style.top = e.top + t + "px"), 8370 customForm.lib.removeClass( 8371 this.selectDrop, 8372 this.options.dropFlippedClass 8373 )), 8374 (this.selectDrop.style.left = e.left + "px"), 8375 (this.selectDrop.style.width = this.fakeElement.offsetWidth + "px"); 8376 }, 8377 showDropdown: function () { 8378 document.body.appendChild(this.selectDrop), 8379 customForm.lib.removeClass( 8380 this.selectDrop, 8381 this.options.dropHiddenClass 8382 ), 8383 customForm.lib.addClass(this.fakeElement, this.options.dropActiveClass), 8384 this.positionDropdown(); 8385 var e = this.getFakeActiveOption(); 8386 this.removeClassFromItems(this.options.currentSelectedClass), 8387 customForm.lib.addClass(e, this.options.currentSelectedClass), 8388 customForm.lib.event.add(window, "resize", this.onResizeWindow, this), 8389 customForm.lib.event.add(window, "scroll", this.onScrollWindow, this), 8390 customForm.lib.event.add( 8391 document, 8392 customForm.eventPress, 8393 this.onClickOutside, 8394 this 8395 ), 8396 this.positionDropdown(); 8397 }, 8398 hideDropdown: function (e) { 8399 (this.selectDrop.parentNode && 8400 (this.selectDrop.offsetWidth && 8401 this.selectDrop.parentNode.removeChild(this.selectDrop), 8402 e)) || 8403 ("number" == typeof this.origSelectedIndex && 8404 (this.realElement.selectedIndex = this.origSelectedIndex), 8405 customForm.lib.removeClass( 8406 this.fakeElement, 8407 this.options.dropActiveClass 8408 ), 8409 customForm.lib.addClass(this.selectDrop, this.options.dropHiddenClass), 8410 customForm.lib.event.remove(window, "resize", this.onResizeWindow), 8411 customForm.lib.event.remove(window, "scroll", this.onScrollWindow), 8412 customForm.lib.event.remove( 8413 document.documentElement, 8414 customForm.eventPress, 8415 this.onClickOutside 8416 ), 8417 customForm.isTouchDevice && this.onBlur()); 8418 }, 8419 toggleDropdown: function () { 8420 this.realElement.disabled || 8421 (customForm.isTouchDevice ? this.onFocus() : this.realElement.focus(), 8422 (this.dropOpened = !0), 8423 this.isActiveDrop() ? this.hideDropdown() : this.showDropdown(), 8424 this.refreshState()); 8425 }, 8426 scrollToItem: function () { 8427 var e, t, o, n; 8428 this.isActiveDrop() && 8429 ((e = this.selectList.offsetHeight), 8430 (t = this.calcOptionOffset(this.getFakeActiveOption())), 8431 (o = this.selectList.scrollTop), 8432 (n = this.getFakeActiveOption().offsetHeight), 8433 o + e <= t 8434 ? (this.selectList.scrollTop = t - e + n) 8435 : t < o && (this.selectList.scrollTop = t)); 8436 }, 8437 getFakeActiveOption: function (e) { 8438 return customForm.lib.queryBySelector( 8439 'li[rel="' + 8440 ("number" == typeof e ? e : this.realElement.selectedIndex) + 8441 '"]', 8442 this.selectList 8443 )[0]; 8444 }, 8445 calcOptionOffset: function (e) { 8446 for ( 8447 var t = 0, 8448 o = customForm.lib.queryBySelector( 8449 ".customFormcalc", 8450 this.selectList 8451 ), 8452 n = 0; 8453 n < o.length && o[n] != e; 8454 n++ 8455 ) 8456 t += o[n].offsetHeight; 8457 return t; 8458 }, 8459 childrenHasItem: function (e, t) { 8460 var o = e.getElementsByTagName("*"); 8461 for (i = 0; i < o.length; i++) if (o[i] == t) return !0; 8462 return !1; 8463 }, 8464 removeClassFromItems: function (e) { 8465 for ( 8466 var t = customForm.lib.queryBySelector("li", this.selectList), 8467 o = t.length - 1; 8468 0 <= o; 8469 o-- 8470 ) 8471 customForm.lib.removeClass(t[o], e); 8472 }, 8473 setSelectedClass: function (e) { 8474 customForm.lib.addClass( 8475 this.getFakeActiveOption(e), 8476 this.options.selectedClass 8477 ); 8478 }, 8479 refreshSelectedClass: function (e) { 8480 this.options.showNativeDrop || 8481 (this.removeClassFromItems(this.options.selectedClass), 8482 this.setSelectedClass(e)), 8483 this.realElement.disabled 8484 ? (customForm.lib.addClass( 8485 this.fakeElement, 8486 this.options.disabledClass 8487 ), 8488 this.labelFor && 8489 customForm.lib.addClass( 8490 this.labelFor, 8491 this.options.labelDisabledClass 8492 )) 8493 : (customForm.lib.removeClass( 8494 this.fakeElement, 8495 this.options.disabledClass 8496 ), 8497 this.labelFor && 8498 customForm.lib.removeClass( 8499 this.labelFor, 8500 this.options.labelDisabledClass 8501 )); 8502 }, 8503 refreshSelectedText: function () { 8504 var e; 8505 !this.dropOpened && this.realElement.title 8506 ? (this.valueText.innerHTML = this.realElement.title) 8507 : this.realElement.options[this.realElement.selectedIndex].title 8508 ? ((e = this.parseOptionTitle( 8509 this.realElement.options[this.realElement.selectedIndex].title 8510 )), 8511 (this.valueText.innerHTML = 8512 (e ? '<img src="' + e + '" alt="" />' : "") + 8513 this.realElement.options[this.realElement.selectedIndex].innerHTML)) 8514 : (this.valueText.innerHTML = 8515 this.realElement.options[this.realElement.selectedIndex].innerHTML); 8516 }, 8517 refreshState: function () { 8518 (this.origSelectedIndex = this.realElement.selectedIndex), 8519 this.refreshSelectedClass(), 8520 this.refreshSelectedText(), 8521 this.options.showNativeDrop || 8522 (this.positionDropdown(), 8523 this.selectDrop.offsetWidth && this.scrollToItem()); 8524 }, 8525 }), 8526 "undefined" == typeof jQuery) 8527) 8528 throw new Error("Bootstrap's JavaScript requires jQuery"); 8529!(function () { 8530 "use strict"; 8531 var e = jQuery.fn.jquery.split(" ")[0].split("."); 8532 if ( 8533 (e[0] < 2 && e[1] < 9) || 8534 (1 == e[0] && 9 == e[1] && e[2] < 1) || 8535 3 < e[0] 8536 ) 8537 throw new Error( 8538 "Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4" 8539 ); 8540})(), 8541 (function (a) { 8542 "use strict"; 8543 function r(e) { 8544 this.element = a(e); 8545 } 8546 function t(o) { 8547 return this.each(function () { 8548 var e = a(this), 8549 t = e.data("bs.tab"); 8550 t || e.data("bs.tab", (t = new r(this))), 8551 "string" == typeof o && t[o](); 8552 }); 8553 } 8554 (r.VERSION = "3.3.7"), 8555 (r.TRANSITION_DURATION = 150), 8556 (r.prototype.show = function () { 8557 var e, 8558 t, 8559 o, 8560 n, 8561 i = this.element, 8562 s = i.closest("ul:not(.dropdown-menu)"), 8563 r = 8564 (r = i.data("target")) || 8565 ((r = i.attr("href")) && r.replace(/.*(?=#[^\s]*$)/, "")); 8566 i.parent("li").hasClass("active") || 8567 ((e = s.find(".active:last a")), 8568 (t = a.Event("hide.bs.tab", { relatedTarget: i[0] })), 8569 (o = a.Event("show.bs.tab", { relatedTarget: e[0] })), 8570 e.trigger(t), 8571 i.trigger(o), 8572 o.isDefaultPrevented() || 8573 t.isDefaultPrevented() || 8574 ((n = a(r)), 8575 this.activate(i.closest("li"), s), 8576 this.activate(n, n.parent(), function () { 8577 e.trigger({ type: "hidden.bs.tab", relatedTarget: i[0] }), 8578 i.trigger({ type: "shown.bs.tab", relatedTarget: e[0] }); 8579 }))); 8580 }), 8581 (r.prototype.activate = function (e, t, o) { 8582 var n = t.find("> .active"), 8583 i = 8584 o && 8585 a.support.transition && 8586 ((n.length && n.hasClass("fade")) || !!t.find("> .fade").length); 8587 function s() { 8588 n 8589 .removeClass("active") 8590 .find("> .dropdown-menu > .active") 8591 .removeClass("active") 8592 .end() 8593 .find('[data-toggle="tab"]') 8594 .attr("aria-expanded", !1), 8595 e 8596 .addClass("active") 8597 .find('[data-toggle="tab"]') 8598 .attr("aria-expanded", !0), 8599 i ? (e[0].offsetWidth, e.addClass("in")) : e.removeClass("fade"), 8600 e.parent(".dropdown-menu").length && 8601 e 8602 .closest("li.dropdown") 8603 .addClass("active") 8604 .end() 8605 .find('[data-toggle="tab"]') 8606 .attr("aria-expanded", !0), 8607 o && o(); 8608 } 8609 n.length && i 8610 ? n 8611 .one("bsTransitionEnd", s) 8612 .emulateTransitionEnd(r.TRANSITION_DURATION) 8613 : s(), 8614 n.removeClass("in"); 8615 }); 8616 var e = a.fn.tab; 8617 (a.fn.tab = t), 8618 (a.fn.tab.Constructor = r), 8619 (a.fn.tab.noConflict = function () { 8620 return (a.fn.tab = e), this; 8621 }); 8622 function o(e) { 8623 e.preventDefault(), t.call(a(this), "show"); 8624 } 8625 a(document) 8626 .on("click.bs.tab.data-api", '[data-toggle="tab"]', o) 8627 .on("click.bs.tab.data-api", '[data-toggle="pill"]', o); 8628 })(jQuery), 8629 (function (r) { 8630 "use strict"; 8631 var a = function (e, t) { 8632 (this.$element = r(e)), 8633 (this.options = r.extend({}, a.DEFAULTS, t)), 8634 (this.$trigger = r( 8635 '[data-toggle="collapse"][href="/' + 8636 e.id + 8637 '"],[data-toggle="collapse"][data-target="#' + 8638 e.id + 8639 '"]' 8640 )), 8641 (this.transitioning = null),
8642 this.options.parent 8643 ? (this.$parent = this.getParent()) 8644 : this.addAriaAndCollapsedClass(this.$element, this.$trigger), 8645 this.options.toggle && this.toggle(); 8646 }; 8647 function i(e) { 8648 var t, 8649 o = 8650 e.attr("data-target") || 8651 ((t = e.attr("href")) && t.replace(/.*(?=#[^\s]+$)/, "")); 8652 return r(o); 8653 } 8654 function l(n) { 8655 return this.each(function () { 8656 var e = r(this), 8657 t = e.data("bs.collapse"), 8658 o = r.extend({}, a.DEFAULTS, e.data(), "object" == typeof n && n); 8659 !t && o.toggle && /show|hide/.test(n) && (o.toggle = !1), 8660 t || e.data("bs.collapse", (t = new a(this, o))), 8661 "string" == typeof n && t[n](); 8662 }); 8663 } 8664 (a.VERSION = "3.3.7"), 8665 (a.TRANSITION_DURATION = 350), 8666 (a.DEFAULTS = { toggle: !0 }), 8667 (a.prototype.dimension = function () { 8668 return this.$element.hasClass("width") ? "width" : "height"; 8669 }), 8670 (a.prototype.show = function () { 8671 if (!this.transitioning && !this.$element.hasClass("in")) { 8672 var e, 8673 t = 8674 this.$parent && 8675 this.$parent.children(".panel").children(".in, .collapsing"); 8676 if ( 8677 !(t && t.length && (e = t.data("bs.collapse")) && e.transitioning) 8678 ) { 8679 var o = r.Event("show.bs.collapse"); 8680 if ((this.$element.trigger(o), !o.isDefaultPrevented())) { 8681 t && 8682 t.length && 8683 (l.call(t, "hide"), e || t.data("bs.collapse", null)); 8684 var n = this.dimension(); 8685 this.$element 8686 .removeClass("collapse") 8687 .addClass("collapsing") 8688 [n](0) 8689 .attr("aria-expanded", !0), 8690 this.$trigger 8691 .removeClass("collapsed") 8692 .attr("aria-expanded", !0), 8693 (this.transitioning = 1); 8694 var i = function () { 8695 this.$element 8696 .removeClass("collapsing") 8697 .addClass("collapse in") 8698 [n](""), 8699 (this.transitioning = 0), 8700 this.$element.trigger("shown.bs.collapse"); 8701 }; 8702 if (!r.support.transition) return i.call(this); 8703 var s = r.camelCase(["scroll", n].join("-")); 8704 this.$element 8705 .one("bsTransitionEnd", r.proxy(i, this)) 8706 .emulateTransitionEnd(a.TRANSITION_DURATION) 8707 [n](this.$element[0][s]); 8708 } 8709 } 8710 } 8711 }), 8712 (a.prototype.hide = function () { 8713 if (!this.transitioning && this.$element.hasClass("in")) { 8714 var e = r.Event("hide.bs.collapse"); 8715 if ((this.$element.trigger(e), !e.isDefaultPrevented())) { 8716 var t = this.dimension(); 8717 this.$element[t](this.$element[t]())[0].offsetHeight, 8718 this.$element 8719 .addClass("collapsing") 8720 .removeClass("collapse in") 8721 .attr("aria-expanded", !1), 8722 this.$trigger.addClass("collapsed").attr("aria-expanded", !1), 8723 (this.transitioning = 1); 8724 var o = function () { 8725 (this.transitioning = 0), 8726 this.$element 8727 .removeClass("collapsing") 8728 .addClass("collapse") 8729 .trigger("hidden.bs.collapse"); 8730 }; 8731 if (!r.support.transition) return o.call(this); 8732 this.$element[t](0) 8733 .one("bsTransitionEnd", r.proxy(o, this)) 8734 .emulateTransitionEnd(a.TRANSITION_DURATION); 8735 } 8736 } 8737 }), 8738 (a.prototype.toggle = function () { 8739 this[this.$element.hasClass("in") ? "hide" : "show"](); 8740 }), 8741 (a.prototype.getParent = function () { 8742 return r(this.options.parent) 8743 .find( 8744 '[data-toggle="collapse"][data-parent="' + 8745 this.options.parent + 8746 '"]' 8747 ) 8748 .each( 8749 r.proxy(function (e, t) { 8750 var o = r(t); 8751 this.addAriaAndCollapsedClass(i(o), o); 8752 }, this) 8753 ) 8754 .end(); 8755 }), 8756 (a.prototype.addAriaAndCollapsedClass = function (e, t) { 8757 var o = e.hasClass("in"); 8758 e.attr("aria-expanded", o), 8759 t.toggleClass("collapsed", !o).attr("aria-expanded", o); 8760 }); 8761 var e = r.fn.collapse; 8762 (r.fn.collapse = l), 8763 (r.fn.collapse.Constructor = a), 8764 (r.fn.collapse.noConflict = function () { 8765 return (r.fn.collapse = e), this; 8766 }), 8767 r(document).on( 8768 "click.bs.collapse.data-api", 8769 '[data-toggle="collapse"]', 8770 function (e) { 8771 var t = r(this); 8772 t.attr("data-target") || e.preventDefault(); 8773 var o = i(t), 8774 n = o.data("bs.collapse") ? "toggle" : t.data(); 8775 l.call(o, n); 8776 } 8777 ); 8778 })(jQuery), 8779 (function (e) { 8780 "use strict"; 8781 "function" == typeof define && define.amd 8782 ? define(["jquery"], e) 8783 : "undefined" != typeof exports 8784 ? (module.exports = e(require("jquery"))) 8785 : e(jQuery); 8786 })(function (c) { 8787 "use strict"; 8788 var i, 8789 r = window.Slick || {}; 8790 (i = 0), 8791 ((r = function (e, t) { 8792 var o, 8793 n = this; 8794 (n.defaults = { 8795 accessibility: !0, 8796 adaptiveHeight: !1, 8797 appendArrows: c(e), 8798 appendDots: c(e), 8799 arrows: !0, 8800 asNavFor: null, 8801 prevArrow: 8802 '<button type="button" data-role="none" class="slick-prev" aria-label="Previous" tabindex="0" role="button">Previous</button>', 8803 nextArrow: 8804 '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button">Next</button>', 8805 autoplay: !1, 8806 autoplaySpeed: 3e3, 8807 centerMode: !1, 8808 centerPadding: "50px", 8809 cssEase: "ease", 8810 customPaging: function (e, t) { 8811 return c( 8812 '<button type="button" data-role="none" role="button" tabindex="0" />' 8813 ).text(t + 1); 8814 }, 8815 dots: !1, 8816 dotsClass: "slick-dots", 8817 draggable: !0, 8818 easing: "linear", 8819 edgeFriction: 0.35, 8820 fade: !1, 8821 focusOnSelect: !1, 8822 infinite: !0, 8823 initialSlide: 0, 8824 lazyLoad: "ondemand", 8825 mobileFirst: !1, 8826 pauseOnHover: !0, 8827 pauseOnFocus: !0, 8828 pauseOnDotsHover: !1, 8829 respondTo: "window", 8830 responsive: null, 8831 rows: 1, 8832 rtl: !1, 8833 slide: "", 8834 slidesPerRow: 1, 8835 slidesToShow: 1, 8836 slidesToScroll: 1, 8837 speed: 500, 8838 swipe: !0, 8839 swipeToSlide: !1, 8840 touchMove: !0, 8841 touchThreshold: 5, 8842 useCSS: !0, 8843 useTransform: !0, 8844 variableWidth: !1, 8845 vertical: !1, 8846 verticalSwiping: !1, 8847 waitForAnimate: !0, 8848 zIndex: 1e3, 8849 }), 8850 (n.initials = { 8851 animating: !1, 8852 dragging: !1, 8853 autoPlayTimer: null, 8854 currentDirection: 0, 8855 currentLeft: null, 8856 currentSlide: 0, 8857 direction: 1, 8858 $dots: null, 8859 listWidth: null, 8860 listHeight: null, 8861 loadIndex: 0, 8862 $nextArrow: null, 8863 $prevArrow: null, 8864 slideCount: null, 8865 slideWidth: null, 8866 $slideTrack: null, 8867 $slides: null, 8868 sliding: !1, 8869 slideOffset: 0, 8870 swipeLeft: null, 8871 $list: null, 8872 touchObject: {}, 8873 transformsEnabled: !1, 8874 unslicked: !1, 8875 }), 8876 c.extend(n, n.initials), 8877 (n.activeBreakpoint = null),
8878 (n.animType = null), 8879 (n.animProp = null), 8880 (n.breakpoints = []), 8881 (n.breakpointSettings = []), 8882 (n.cssTransitions = !1), 8883 (n.focussed = !1), 8884 (n.interrupted = !1), 8885 (n.hidden = "hidden"), 8886 (n.paused = !0), 8887 (n.positionProp = null), 8888 (n.respondTo = null), 8889 (n.rowCount = 1), 8890 (n.shouldClick = !0), 8891 (n.$slider = c(e)), 8892 (n.$slidesCache = null), 8893 (n.transformType = null), 8894 (n.transitionType = null), 8895 (n.visibilityChange = "visibilitychange"), 8896 (n.windowWidth = 0), 8897 (n.windowTimer = null), 8898 (o = c(e).data("slick") || {}), 8899 (n.options = c.extend({}, n.defaults, t, o)), 8900 (n.currentSlide = n.options.initialSlide), 8901 (n.originalSettings = n.options), 8902 void 0 !== document.mozHidden 8903 ? ((n.hidden = "mozHidden"), 8904 (n.visibilityChange = "mozvisibilitychange")) 8905 : void 0 !== document.webkitHidden && 8906 ((n.hidden = "webkitHidden"), 8907 (n.visibilityChange = "webkitvisibilitychange")), 8908 (n.autoPlay = c.proxy(n.autoPlay, n)), 8909 (n.autoPlayClear = c.proxy(n.autoPlayClear, n)), 8910 (n.autoPlayIterator = c.proxy(n.autoPlayIterator, n)), 8911 (n.changeSlide = c.proxy(n.changeSlide, n)), 8912 (n.clickHandler = c.proxy(n.clickHandler, n)), 8913 (n.selectHandler = c.proxy(n.selectHandler, n)), 8914 (n.setPosition = c.proxy(n.setPosition, n)), 8915 (n.swipeHandler = c.proxy(n.swipeHandler, n)), 8916 (n.dragHandler = c.proxy(n.dragHandler, n)), 8917 (n.keyHandler = c.proxy(n.keyHandler, n)), 8918 (n.instanceUid = i++), 8919 (n.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/), 8920 n.registerBreakpoints(), 8921 n.init(!0); 8922 }).prototype.activateADA = function () { 8923 this.$slideTrack 8924 .find(".slick-active") 8925 .attr({ "aria-hidden": "false" }) 8926 .find("a, input, button, select") 8927 .attr({ tabindex: "0" }); 8928 }), 8929 (r.prototype.addSlide = r.prototype.slickAdd = 8930 function (e, t, o) { 8931 var n = this; 8932 if ("boolean" == typeof t) (o = t), (t = null); 8933 else if (t < 0 || t >= n.slideCount) return !1; 8934 n.unload(), 8935 "number" == typeof t 8936 ? 0 === t && 0 === n.$slides.length 8937 ? c(e).appendTo(n.$slideTrack) 8938 : o 8939 ? c(e).insertBefore(n.$slides.eq(t)) 8940 : c(e).insertAfter(n.$slides.eq(t)) 8941 : !0 === o 8942 ? c(e).prependTo(n.$slideTrack) 8943 : c(e).appendTo(n.$slideTrack), 8944 (n.$slides = n.$slideTrack.children(this.options.slide)), 8945 n.$slideTrack.children(this.options.slide).detach(), 8946 n.$slideTrack.append(n.$slides), 8947 n.$slides.each(function (e, t) { 8948 c(t).attr("data-slick-index", e); 8949 }), 8950 (n.$slidesCache = n.$slides), 8951 n.reinit(); 8952 }), 8953 (r.prototype.animateHeight = function () { 8954 var e, 8955 t = this; 8956 1 === t.options.slidesToShow && 8957 !0 === t.options.adaptiveHeight && 8958 !1 === t.options.vertical && 8959 ((e = t.$slides.eq(t.currentSlide).outerHeight(!0)), 8960 t.$list.animate({ height: e }, t.options.speed)); 8961 }), 8962 (r.prototype.animateSlide = function (e, t) { 8963 var o = {}, 8964 n = this; 8965 n.animateHeight(), 8966 !0 === n.options.rtl && !1 === n.options.vertical && (e = -e), 8967 !1 === n.transformsEnabled 8968 ? !1 === n.options.vertical 8969 ? n.$slideTrack.animate( 8970 { left: e }, 8971 n.options.speed, 8972 n.options.easing, 8973 t 8974 ) 8975 : n.$slideTrack.animate( 8976 { top: e }, 8977 n.options.speed, 8978 n.options.easing, 8979 t 8980 ) 8981 : !1 === n.cssTransitions 8982 ? (!0 === n.options.rtl && (n.currentLeft = -n.currentLeft), 8983 c({ animStart: n.currentLeft }).animate( 8984 { animStart: e }, 8985 { 8986 duration: n.options.speed, 8987 easing: n.options.easing, 8988 step: function (e) {
8989 (e = Math.ceil(e)), 8990 !1 === n.options.vertical 8991 ? (o[n.animType] = "translate(" + e + "px, 0px)") 8992 : (o[n.animType] = "translate(0px," + e + "px)"), 8993 n.$slideTrack.css(o); 8994 }, 8995 complete: function () { 8996 t && t.call(); 8997 }, 8998 } 8999 )) 9000 : (n.applyTransition(), 9001 (e = Math.ceil(e)), 9002 !1 === n.options.vertical 9003 ? (o[n.animType] = "translate3d(" + e + "px, 0px, 0px)") 9004 : (o[n.animType] = "translate3d(0px," + e + "px, 0px)"), 9005 n.$slideTrack.css(o), 9006 t && 9007 setTimeout(function () { 9008 n.disableTransition(), t.call(); 9009 }, n.options.speed)); 9010 }), 9011 (r.prototype.getNavTarget = function () { 9012 var e = this.options.asNavFor; 9013 return e && null !== e && (e = c(e).not(this.$slider)), e; 9014 }), 9015 (r.prototype.asNavFor = function (t) { 9016 var e = this.getNavTarget(); 9017 null !== e && 9018 "object" == typeof e && 9019 e.each(function () { 9020 var e = c(this).slick("getSlick"); 9021 e.unslicked || e.slideHandler(t, !0); 9022 }); 9023 }), 9024 (r.prototype.applyTransition = function (e) { 9025 var t = this, 9026 o = {}; 9027 !1 === t.options.fade 9028 ? (o[t.transitionType] = 9029 t.transformType + 9030 " " + 9031 t.options.speed + 9032 "ms " + 9033 t.options.cssEase) 9034 : (o[t.transitionType] = 9035 "opacity " + t.options.speed + "ms " + t.options.cssEase), 9036 !1 === t.options.fade ? t.$slideTrack.css(o) : t.$slides.eq(e).css(o); 9037 }), 9038 (r.prototype.autoPlay = function () { 9039 var e = this; 9040 e.autoPlayClear(), 9041 e.slideCount > e.options.slidesToShow && 9042 (e.autoPlayTimer = setInterval( 9043 e.autoPlayIterator, 9044 e.options.autoplaySpeed 9045 )); 9046 }), 9047 (r.prototype.autoPlayClear = function () { 9048 this.autoPlayTimer && clearInterval(this.autoPlayTimer); 9049 }), 9050 (r.prototype.autoPlayIterator = function () { 9051 var e = this, 9052 t = e.currentSlide + e.options.slidesToScroll; 9053 e.paused || 9054 e.interrupted || 9055 e.focussed || 9056 (!1 === e.options.infinite && 9057 (1 === e.direction && e.currentSlide + 1 === e.slideCount - 1 9058 ? (e.direction = 0) 9059 : 0 === e.direction && 9060 ((t = e.currentSlide - e.options.slidesToScroll), 9061 e.currentSlide - 1 == 0 && (e.direction = 1))), 9062 e.slideHandler(t)); 9063 }), 9064 (r.prototype.buildArrows = function () { 9065 var e = this; 9066 !0 === e.options.arrows && 9067 ((e.$prevArrow = c(e.options.prevArrow).addClass("slick-arrow")), 9068 (e.$nextArrow = c(e.options.nextArrow).addClass("slick-arrow")), 9069 e.slideCount > e.options.slidesToShow 9070 ? (e.$prevArrow 9071 .removeClass("slick-hidden") 9072 .removeAttr("aria-hidden tabindex"), 9073 e.$nextArrow 9074 .removeClass("slick-hidden") 9075 .removeAttr("aria-hidden tabindex"), 9076 e.htmlExpr.test(e.options.prevArrow) && 9077 e.$prevArrow.prependTo(e.options.appendArrows), 9078 e.htmlExpr.test(e.options.nextArrow) && 9079 e.$nextArrow.appendTo(e.options.appendArrows), 9080 !0 !== e.options.infinite && 9081 e.$prevArrow 9082 .addClass("slick-disabled") 9083 .attr("aria-disabled", "true")) 9084 : e.$prevArrow 9085 .add(e.$nextArrow) 9086 .addClass("slick-hidden") 9087 .attr({ "aria-disabled": "true", tabindex: "-1" })); 9088 }), 9089 (r.prototype.buildDots = function () { 9090 var e, 9091 t, 9092 o = this; 9093 if (!0 === o.options.dots && o.slideCount > o.options.slidesToShow) { 9094 for ( 9095 o.$slider.addClass("slick-dotted"), 9096 t = c("<ul />").addClass(o.options.dotsClass), 9097 e = 0; 9098 e <= o.getDotCount(); 9099 e += 1 9100 ) 9101 t.append( 9102 c("<li />").append(o.options.customPaging.call(this, o, e)) 9103 ); 9104 (o.$dots = t.appendTo(o.options.appendDots)), 9105 o.$dots 9106 .find("li") 9107 .first() 9108 .addClass("slick-active") 9109 .attr("aria-hidden", "false"); 9110 } 9111 }), 9112 (r.prototype.buildOut = function () { 9113 var e = this; 9114 (e.$slides = e.$slider 9115 .children(e.options.slide + ":not(.slick-cloned)") 9116 .addClass("slick-slide")), 9117 (e.slideCount = e.$slides.length), 9118 e.$slides.each(function (e, t) { 9119 c(t) 9120 .attr("data-slick-index", e) 9121 .data("originalStyling", c(t).attr("style") || ""); 9122 }), 9123 e.$slider.addClass("slick-slider"), 9124 (e.$slideTrack = 9125 0 === e.slideCount 9126 ? c('<div class="slick-track"/>').appendTo(e.$slider) 9127 : e.$slides.wrapAll('<div class="slick-track"/>').parent()), 9128 (e.$list = e.$slideTrack 9129 .wrap('<div aria-live="polite" class="slick-list"/>') 9130 .parent()), 9131 e.$slideTrack.css("opacity", 0), 9132 (!0 !== e.options.centerMode && !0 !== e.options.swipeToSlide) || 9133 (e.options.slidesToScroll = 1), 9134 c("img[data-lazy]", e.$slider).not("[src]").addClass("slick-loading"), 9135 e.setupInfinite(), 9136 e.buildArrows(), 9137 e.buildDots(), 9138 e.updateDots(), 9139 e.setSlideClasses( 9140 "number" == typeof e.currentSlide ? e.currentSlide : 0 9141 ), 9142 !0 === e.options.draggable && e.$list.addClass("draggable"); 9143 }), 9144 (r.prototype.buildRows = function () { 9145 var e, 9146 t, 9147 o, 9148 n = this, 9149 i = document.createDocumentFragment(), 9150 s = n.$slider.children(); 9151 if (1 < n.options.rows) { 9152 for ( 9153 o = n.options.slidesPerRow * n.options.rows,
9154 t = Math.ceil(s.length / o), 9155 e = 0; 9156 e < t; 9157 e++ 9158 ) { 9159 for ( 9160 var r = document.createElement("div"), a = 0; 9161 a < n.options.rows; 9162 a++ 9163 ) { 9164 for ( 9165 var l = document.createElement("div"), c = 0; 9166 c < n.options.slidesPerRow; 9167 c++ 9168 ) { 9169 var d = e * o + (a * n.options.slidesPerRow + c); 9170 s.get(d) && l.appendChild(s.get(d)); 9171 } 9172 r.appendChild(l); 9173 } 9174 i.appendChild(r); 9175 } 9176 n.$slider.empty().append(i), 9177 n.$slider 9178 .children() 9179 .children() 9180 .children() 9181 .css({ 9182 width: 100 / n.options.slidesPerRow + "%", 9183 display: "inline-block", 9184 }); 9185 } 9186 }), 9187 (r.prototype.checkResponsive = function (e, t) { 9188 var o, 9189 n, 9190 i, 9191 s = this, 9192 r = !1, 9193 a = s.$slider.width(), 9194 l = window.innerWidth || c(window).width(); 9195 if ( 9196 ("window" === s.respondTo 9197 ? (i = l) 9198 : "slider" === s.respondTo 9199 ? (i = a) 9200 : "min" === s.respondTo && (i = Math.min(l, a)), 9201 s.options.responsive && 9202 s.options.responsive.length && 9203 null !== s.options.responsive) 9204 ) { 9205 for (o in ((n = null), s.breakpoints)) 9206 s.breakpoints.hasOwnProperty(o) && 9207 (!1 === s.originalSettings.mobileFirst 9208 ? i < s.breakpoints[o] && (n = s.breakpoints[o]) 9209 : i > s.breakpoints[o] && (n = s.breakpoints[o])); 9210 null !== n 9211 ? (null !== s.activeBreakpoint && n === s.activeBreakpoint && !t) || 9212 ((s.activeBreakpoint = n), 9213 "unslick" === s.breakpointSettings[n] 9214 ? s.unslick(n) 9215 : ((s.options = c.extend( 9216 {}, 9217 s.originalSettings, 9218 s.breakpointSettings[n] 9219 )), 9220 !0 === e && (s.currentSlide = s.options.initialSlide), 9221 s.refresh(e)), 9222 (r = n)) 9223 : null !== s.activeBreakpoint && 9224 ((s.activeBreakpoint = null), 9225 (s.options = s.originalSettings), 9226 !0 === e && (s.currentSlide = s.options.initialSlide), 9227 s.refresh(e), 9228 (r = n)), 9229 e || !1 === r || s.$slider.trigger("breakpoint", [s, r]); 9230 } 9231 }), 9232 (r.prototype.changeSlide = function (e, t) { 9233 var o, 9234 n, 9235 i = this, 9236 s = c(e.currentTarget); 9237 switch ( 9238 (s.is("a") && e.preventDefault(), 9239 s.is("li") || (s = s.closest("li")), 9240 (o = 9241 i.slideCount % i.options.slidesToScroll != 0 9242 ? 0 9243 : (i.slideCount - i.currentSlide) % i.options.slidesToScroll), 9244 e.data.message) 9245 ) { 9246 case "previous": 9247 (n = 9248 0 == o ? i.options.slidesToScroll : i.options.slidesToShow - o), 9249 i.slideCount > i.options.slidesToShow && 9250 i.slideHandler(i.currentSlide - n, !1, t); 9251 break; 9252 case "next": 9253 (n = 0 == o ? i.options.slidesToScroll : o), 9254 i.slideCount > i.options.slidesToShow && 9255 i.slideHandler(i.currentSlide + n, !1, t); 9256 break; 9257 case "index": 9258 var r = 9259 0 === e.data.index 9260 ? 0 9261 : e.data.index || s.index() * i.options.slidesToScroll; 9262 i.slideHandler(i.checkNavigable(r), !1, t), 9263 s.children().trigger("focus"); 9264 break; 9265 default: 9266 return; 9267 } 9268 }), 9269 (r.prototype.checkNavigable = function (e) { 9270 var t = this.getNavigableIndexes(), 9271 o = 0; 9272 if (e > t[t.length - 1]) e = t[t.length - 1]; 9273 else 9274 for (var n in t) { 9275 if (e < t[n]) { 9276 e = o; 9277 break; 9278 } 9279 o = t[n]; 9280 } 9281 return e; 9282 }), 9283 (r.prototype.cleanUpEvents = function () { 9284 var e = this; 9285 e.options.dots && 9286 null !== e.$dots && 9287 c("li", e.$dots) 9288 .off("click.slick", e.changeSlide) 9289 .off("mouseenter.slick", c.proxy(e.interrupt, e, !0))
9290 .off("mouseleave.slick", c.proxy(e.interrupt, e, !1)), 9291 e.$slider.off("focus.slick blur.slick"), 9292 !0 === e.options.arrows && 9293 e.slideCount > e.options.slidesToShow && 9294 (e.$prevArrow && e.$prevArrow.off("click.slick", e.changeSlide), 9295 e.$nextArrow && e.$nextArrow.off("click.slick", e.changeSlide)), 9296 e.$list.off("touchstart.slick mousedown.slick", e.swipeHandler), 9297 e.$list.off("touchmove.slick mousemove.slick", e.swipeHandler), 9298 e.$list.off("touchend.slick mouseup.slick", e.swipeHandler), 9299 e.$list.off("touchcancel.slick mouseleave.slick", e.swipeHandler), 9300 e.$list.off("click.slick", e.clickHandler), 9301 c(document).off(e.visibilityChange, e.visibility), 9302 e.cleanUpSlideEvents(), 9303 !0 === e.options.accessibility && 9304 e.$list.off("keydown.slick", e.keyHandler), 9305 !0 === e.options.focusOnSelect && 9306 c(e.$slideTrack).children().off("click.slick", e.selectHandler), 9307 c(window).off( 9308 "orientationchange.slick.slick-" + e.instanceUid, 9309 e.orientationChange 9310 ), 9311 c(window).off("resize.slick.slick-" + e.instanceUid, e.resize), 9312 c("[draggable!=true]", e.$slideTrack).off( 9313 "dragstart", 9314 e.preventDefault 9315 ), 9316 c(window).off("load.slick.slick-" + e.instanceUid, e.setPosition), 9317 c(document).off("ready.slick.slick-" + e.instanceUid, e.setPosition); 9318 }), 9319 (r.prototype.cleanUpSlideEvents = function () { 9320 var e = this; 9321 e.$list.off("mouseenter.slick", c.proxy(e.interrupt, e, !0)), 9322 e.$list.off("mouseleave.slick", c.proxy(e.interrupt, e, !1)); 9323 }), 9324 (r.prototype.cleanUpRows = function () { 9325 var e; 9326 1 < this.options.rows && 9327 ((e = this.$slides.children().children()).removeAttr("style"), 9328 this.$slider.empty().append(e)); 9329 }), 9330 (r.prototype.clickHandler = function (e) { 9331 !1 === this.shouldClick && 9332 (e.stopImmediatePropagation(), 9333 e.stopPropagation(), 9334 e.preventDefault()); 9335 }), 9336 (r.prototype.destroy = function (e) { 9337 var t = this; 9338 t.autoPlayClear(), 9339 (t.touchObject = {}), 9340 t.cleanUpEvents(), 9341 c(".slick-cloned", t.$slider).detach(), 9342 t.$dots && t.$dots.remove(), 9343 t.$prevArrow && 9344 t.$prevArrow.length && 9345 (t.$prevArrow 9346 .removeClass("slick-disabled slick-arrow slick-hidden") 9347 .removeAttr("aria-hidden aria-disabled tabindex") 9348 .css("display", ""), 9349 t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.remove()), 9350 t.$nextArrow && 9351 t.$nextArrow.length && 9352 (t.$nextArrow 9353 .removeClass("slick-disabled slick-arrow slick-hidden") 9354 .removeAttr("aria-hidden aria-disabled tabindex") 9355 .css("display", ""), 9356 t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.remove()), 9357 t.$slides && 9358 (t.$slides 9359 .removeClass( 9360 "slick-slide slick-active slick-center slick-visible slick-current" 9361 ) 9362 .removeAttr("aria-hidden") 9363 .removeAttr("data-slick-index") 9364 .each(function () { 9365 c(this).attr("style", c(this).data("originalStyling")); 9366 }), 9367 t.$slideTrack.children(this.options.slide).detach(), 9368 t.$slideTrack.detach(), 9369 t.$list.detach(), 9370 t.$slider.append(t.$slides)), 9371 t.cleanUpRows(), 9372 t.$slider.removeClass("slick-slider"), 9373 t.$slider.removeClass("slick-initialized"), 9374 t.$slider.removeClass("slick-dotted"), 9375 (t.unslicked = !0), 9376 e || t.$slider.trigger("destroy", [t]); 9377 }), 9378 (r.prototype.disableTransition = function (e) { 9379 var t = {}; 9380 (t[this.transitionType] = ""), 9381 !1 === this.options.fade 9382 ? this.$slideTrack.css(t) 9383 : this.$slides.eq(e).css(t); 9384 }), 9385 (r.prototype.fadeSlide = function (e, t) { 9386 var o = this; 9387 !1 === o.cssTransitions 9388 ? (o.$slides.eq(e).css({ zIndex: o.options.zIndex }), 9389 o.$slides 9390 .eq(e) 9391 .animate({ opacity: 1 }, o.options.speed, o.options.easing, t)) 9392 : (o.applyTransition(e), 9393 o.$slides.eq(e).css({ opacity: 1, zIndex: o.options.zIndex }), 9394 t && 9395 setTimeout(function () { 9396 o.disableTransition(e), t.call(); 9397 }, o.options.speed)); 9398 }), 9399 (r.prototype.fadeSlideOut = function (e) { 9400 var t = this; 9401 !1 === t.cssTransitions 9402 ? t.$slides 9403 .eq(e) 9404 .animate( 9405 { opacity: 0, zIndex: t.options.zIndex - 2 }, 9406 t.options.speed, 9407 t.options.easing 9408 ) 9409 : (t.applyTransition(e), 9410 t.$slides.eq(e).css({ opacity: 0, zIndex: t.options.zIndex - 2 })); 9411 }),
9412 (r.prototype.filterSlides = r.prototype.slickFilter = 9413 function (e) { 9414 var t = this; 9415 null !== e && 9416 ((t.$slidesCache = t.$slides), 9417 t.unload(), 9418 t.$slideTrack.children(this.options.slide).detach(), 9419 t.$slidesCache.filter(e).appendTo(t.$slideTrack), 9420 t.reinit()); 9421 }), 9422 (r.prototype.focusHandler = function () { 9423 var o = this; 9424 o.$slider 9425 .off("focus.slick blur.slick") 9426 .on("focus.slick blur.slick", "*:not(.slick-arrow)", function (e) { 9427 e.stopImmediatePropagation(); 9428 var t = c(this); 9429 setTimeout(function () { 9430 o.options.pauseOnFocus && 9431 ((o.focussed = t.is(":focus")), o.autoPlay()); 9432 }, 0); 9433 }); 9434 }), 9435 (r.prototype.getCurrent = r.prototype.slickCurrentSlide = 9436 function () { 9437 return this.currentSlide; 9438 }), 9439 (r.prototype.getDotCount = function () { 9440 var e = this, 9441 t = 0, 9442 o = 0, 9443 n = 0; 9444 if (!0 === e.options.infinite) 9445 for (; t < e.slideCount; ) 9446 ++n, 9447 (t = o + e.options.slidesToScroll), 9448 (o += 9449 e.options.slidesToScroll <= e.options.slidesToShow 9450 ? e.options.slidesToScroll 9451 : e.options.slidesToShow); 9452 else if (!0 === e.options.centerMode) n = e.slideCount; 9453 else if (e.options.asNavFor) 9454 for (; t < e.slideCount; ) 9455 ++n, 9456 (t = o + e.options.slidesToScroll), 9457 (o += 9458 e.options.slidesToScroll <= e.options.slidesToShow 9459 ? e.options.slidesToScroll 9460 : e.options.slidesToShow); 9461 else 9462 n = 9463 1 + 9464 Math.ceil( 9465 (e.slideCount - e.options.slidesToShow) / e.options.slidesToScroll 9466 ); 9467 return n - 1; 9468 }), 9469 (r.prototype.getLeft = function (e) { 9470 var t, 9471 o, 9472 n, 9473 i = this, 9474 s = 0; 9475 return ( 9476 (i.slideOffset = 0), 9477 (o = i.$slides.first().outerHeight(!0)), 9478 !0 === i.options.infinite 9479 ? (i.slideCount > i.options.slidesToShow && 9480 ((i.slideOffset = i.slideWidth * i.options.slidesToShow * -1), 9481 (s = o * i.options.slidesToShow * -1)), 9482 i.slideCount % i.options.slidesToScroll != 0 && 9483 e + i.options.slidesToScroll > i.slideCount && 9484 i.slideCount > i.options.slidesToShow && 9485 (s = 9486 e > i.slideCount 9487 ? ((i.slideOffset = 9488 (i.options.slidesToShow - (e - i.slideCount)) * 9489 i.slideWidth * 9490 -1), 9491 (i.options.slidesToShow - (e - i.slideCount)) * o * -1) 9492 : ((i.slideOffset = 9493 (i.slideCount % i.options.slidesToScroll) * 9494 i.slideWidth * 9495 -1), 9496 (i.slideCount % i.options.slidesToScroll) * o * -1))) 9497 : e + i.options.slidesToShow > i.slideCount && 9498 ((i.slideOffset = 9499 (e + i.options.slidesToShow - i.slideCount) * i.slideWidth), 9500 (s = (e + i.options.slidesToShow - i.slideCount) * o)), 9501 i.slideCount <= i.options.slidesToShow && (s = i.slideOffset = 0), 9502 !0 === i.options.centerMode && !0 === i.options.infinite 9503 ? (i.slideOffset += 9504 i.slideWidth * Math.floor(i.options.slidesToShow / 2) - 9505 i.slideWidth) 9506 : !0 === i.options.centerMode && 9507 ((i.slideOffset = 0), 9508 (i.slideOffset += 9509 i.slideWidth * Math.floor(i.options.slidesToShow / 2))), 9510 (t = 9511 !1 === i.options.vertical 9512 ? e * i.slideWidth * -1 + i.slideOffset 9513 : e * o * -1 + s), 9514 !0 === i.options.variableWidth && 9515 ((n = 9516 i.slideCount <= i.options.slidesToShow || 9517 !1 === i.options.infinite 9518 ? i.$slideTrack.children(".slick-slide").eq(e) 9519 : i.$slideTrack 9520 .children(".slick-slide") 9521 .eq(e + i.options.slidesToShow)), 9522 (t = 9523 !0 === i.options.rtl 9524 ? n[0] 9525 ? -1 * (i.$slideTrack.width() - n[0].offsetLeft - n.width()) 9526 : 0 9527 : n[0] 9528 ? -1 * n[0].offsetLeft 9529 : 0), 9530 !0 === i.options.centerMode && 9531 ((n = 9532 i.slideCount <= i.options.slidesToShow || 9533 !1 === i.options.infinite 9534 ? i.$slideTrack.children(".slick-slide").eq(e) 9535 : i.$slideTrack 9536 .children(".slick-slide") 9537 .eq(e + i.options.slidesToShow + 1)), 9538 (t = 9539 !0 === i.options.rtl 9540 ? n[0] 9541 ? -1 * (i.$slideTrack.width() - n[0].offsetLeft - n.width()) 9542 : 0 9543 : n[0] 9544 ? -1 * n[0].offsetLeft 9545 : 0), 9546 (t += (i.$list.width() - n.outerWidth()) / 2))), 9547 t 9548 ); 9549 }), 9550 (r.prototype.getOption = r.prototype.slickGetOption = 9551 function (e) { 9552 return this.options[e]; 9553 }), 9554 (r.prototype.getNavigableIndexes = function () { 9555 for ( 9556 var e = this, 9557 t = 0, 9558 o = 0, 9559 n = [], 9560 i = 9561 !1 === e.options.infinite 9562 ? e.slideCount 9563 : ((t = -1 * e.options.slidesToScroll), 9564 (o = -1 * e.options.slidesToScroll), 9565 2 * e.slideCount); 9566 t < i; 9567 9568 ) 9569 n.push(t), 9570 (t = o + e.options.slidesToScroll), 9571 (o += 9572 e.options.slidesToScroll <= e.options.slidesToShow 9573 ? e.options.slidesToScroll 9574 : e.options.slidesToShow); 9575 return n; 9576 }), 9577 (r.prototype.getSlick = function () { 9578 return this; 9579 }), 9580 (r.prototype.getSlideCount = function () { 9581 var o, 9582 n = this, 9583 i = 9584 !0 === n.options.centerMode 9585 ? n.slideWidth * Math.floor(n.options.slidesToShow / 2) 9586 : 0; 9587 return !0 === n.options.swipeToSlide 9588 ? (n.$slideTrack.find(".slick-slide").each(function (e, t) { 9589 if (t.offsetLeft - i + c(t).outerWidth() / 2 > -1 * n.swipeLeft) 9590 return (o = t), !1; 9591 }), 9592 Math.abs(c(o).attr("data-slick-index") - n.currentSlide) || 1) 9593 : n.options.slidesToScroll; 9594 }), 9595 (r.prototype.goTo = r.prototype.slickGoTo = 9596 function (e, t) { 9597 this.changeSlide( 9598 { data: { message: "index", index: parseInt(e) } }, 9599 t 9600 ); 9601 }), 9602 (r.prototype.init = function (e) { 9603 var t = this; 9604 c(t.$slider).hasClass("slick-initialized") || 9605 (c(t.$slider).addClass("slick-initialized"),
9606 t.buildRows(), 9607 t.buildOut(), 9608 t.setProps(), 9609 t.startLoad(), 9610 t.loadSlider(), 9611 t.initializeEvents(), 9612 t.updateArrows(), 9613 t.updateDots(), 9614 t.checkResponsive(!0), 9615 t.focusHandler()), 9616 e && t.$slider.trigger("init", [t]), 9617 !0 === t.options.accessibility && t.initADA(), 9618 t.options.autoplay && ((t.paused = !1), t.autoPlay()); 9619 }), 9620 (r.prototype.initADA = function () { 9621 var t = this; 9622 t.$slides 9623 .add(t.$slideTrack.find(".slick-cloned")) 9624 .attr({ "aria-hidden": "true", tabindex: "-1" }) 9625 .find("a, input, button, select") 9626 .attr({ tabindex: "-1" }), 9627 t.$slideTrack.attr("role", "listbox"), 9628 t.$slides.not(t.$slideTrack.find(".slick-cloned")).each(function (e) { 9629 c(this).attr({ 9630 role: "option", 9631 "aria-describedby": "slick-slide" + t.instanceUid + e, 9632 }); 9633 }), 9634 null !== t.$dots && 9635 t.$dots 9636 .attr("role", "tablist") 9637 .find("li") 9638 .each(function (e) { 9639 c(this).attr({ 9640 role: "presentation", 9641 "aria-selected": "false", 9642 "aria-controls": "navigation" + t.instanceUid + e, 9643 id: "slick-slide" + t.instanceUid + e, 9644 }); 9645 }) 9646 .first() 9647 .attr("aria-selected", "true") 9648 .end() 9649 .find("button") 9650 .attr("role", "button") 9651 .end() 9652 .closest("div") 9653 .attr("role", "toolbar"), 9654 t.activateADA(); 9655 }), 9656 (r.prototype.initArrowEvents = function () { 9657 var e = this; 9658 !0 === e.options.arrows && 9659 e.slideCount > e.options.slidesToShow && 9660 (e.$prevArrow 9661 .off("click.slick") 9662 .on("click.slick", { message: "previous" }, e.changeSlide), 9663 e.$nextArrow 9664 .off("click.slick") 9665 .on("click.slick", { message: "next" }, e.changeSlide)); 9666 }), 9667 (r.prototype.initDotEvents = function () { 9668 var e = this; 9669 !0 === e.options.dots && 9670 e.slideCount > e.options.slidesToShow && 9671 c("li", e.$dots).on( 9672 "click.slick", 9673 { message: "index" }, 9674 e.changeSlide 9675 ), 9676 !0 === e.options.dots && 9677 !0 === e.options.pauseOnDotsHover && 9678 c("li", e.$dots) 9679 .on("mouseenter.slick", c.proxy(e.interrupt, e, !0)) 9680 .on("mouseleave.slick", c.proxy(e.interrupt, e, !1)); 9681 }), 9682 (r.prototype.initSlideEvents = function () { 9683 var e = this; 9684 e.options.pauseOnHover && 9685 (e.$list.on("mouseenter.slick", c.proxy(e.interrupt, e, !0)), 9686 e.$list.on("mouseleave.slick", c.proxy(e.interrupt, e, !1))); 9687 }), 9688 (r.prototype.initializeEvents = function () { 9689 var e = this; 9690 e.initArrowEvents(), 9691 e.initDotEvents(), 9692 e.initSlideEvents(), 9693 e.$list.on( 9694 "touchstart.slick mousedown.slick", 9695 { action: "start" }, 9696 e.swipeHandler 9697 ), 9698 e.$list.on( 9699 "touchmove.slick mousemove.slick", 9700 { action: "move" }, 9701 e.swipeHandler 9702 ), 9703 e.$list.on( 9704 "touchend.slick mouseup.slick", 9705 { action: "end" }, 9706 e.swipeHandler 9707 ), 9708 e.$list.on(
9709 "touchcancel.slick mouseleave.slick", 9710 { action: "end" }, 9711 e.swipeHandler 9712 ), 9713 e.$list.on("click.slick", e.clickHandler), 9714 c(document).on(e.visibilityChange, c.proxy(e.visibility, e)), 9715 !0 === e.options.accessibility && 9716 e.$list.on("keydown.slick", e.keyHandler), 9717 !0 === e.options.focusOnSelect && 9718 c(e.$slideTrack).children().on("click.slick", e.selectHandler), 9719 c(window).on( 9720 "orientationchange.slick.slick-" + e.instanceUid, 9721 c.proxy(e.orientationChange, e) 9722 ), 9723 c(window).on( 9724 "resize.slick.slick-" + e.instanceUid, 9725 c.proxy(e.resize, e) 9726 ), 9727 c("[draggable!=true]", e.$slideTrack).on( 9728 "dragstart", 9729 e.preventDefault 9730 ), 9731 c(window).on("load.slick.slick-" + e.instanceUid, e.setPosition), 9732 c(document).on("ready.slick.slick-" + e.instanceUid, e.setPosition); 9733 }), 9734 (r.prototype.initUI = function () { 9735 var e = this; 9736 !0 === e.options.arrows && 9737 e.slideCount > e.options.slidesToShow && 9738 (e.$prevArrow.show(), e.$nextArrow.show()), 9739 !0 === e.options.dots && 9740 e.slideCount > e.options.slidesToShow && 9741 e.$dots.show(); 9742 }), 9743 (r.prototype.keyHandler = function (e) { 9744 var t = this; 9745 e.target.tagName.match("TEXTAREA|INPUT|SELECT") || 9746 (37 === e.keyCode && !0 === t.options.accessibility 9747 ? t.changeSlide({ 9748 data: { message: !0 === t.options.rtl ? "next" : "previous" }, 9749 }) 9750 : 39 === e.keyCode && 9751 !0 === t.options.accessibility && 9752 t.changeSlide({ 9753 data: { message: !0 === t.options.rtl ? "previous" : "next" }, 9754 })); 9755 }), 9756 (r.prototype.lazyLoad = function () { 9757 var e, 9758 t, 9759 n = this; 9760 function o(e) { 9761 c("img[data-lazy]", e).each(function () { 9762 var e = c(this), 9763 t = c(this).attr("data-lazy"), 9764 o = document.createElement("img"); 9765 (o.onload = function () { 9766 e.animate({ opacity: 0 }, 100, function () { 9767 e.attr("src", t).animate({ opacity: 1 }, 200, function () { 9768 e.removeAttr("data-lazy").removeClass("slick-loading"); 9769 }), 9770 n.$slider.trigger("lazyLoaded", [n, e, t]); 9771 }); 9772 }), 9773 (o.onerror = function () { 9774 e 9775 .removeAttr("data-lazy") 9776 .removeClass("slick-loading") 9777 .addClass("slick-lazyload-error"), 9778 n.$slider.trigger("lazyLoadError", [n, e, t]); 9779 }), 9780 (o.src = t); 9781 }); 9782 } 9783 !0 === n.options.centerMode 9784 ? (t = 9785 !0 === n.options.infinite 9786 ? (e = n.currentSlide + (n.options.slidesToShow / 2 + 1)) + 9787 n.options.slidesToShow + 9788 2 9789 : ((e = Math.max( 9790 0, 9791 n.currentSlide - (n.options.slidesToShow / 2 + 1) 9792 )), 9793 n.options.slidesToShow / 2 + 1 + 2 + n.currentSlide)) 9794 : ((e = n.options.infinite 9795 ? n.options.slidesToShow + n.currentSlide 9796 : n.currentSlide), 9797 (t = Math.ceil(e + n.options.slidesToShow)), 9798 !0 === n.options.fade && (0 < e && e--, t <= n.slideCount && t++)), 9799 o(n.$slider.find(".slick-slide").slice(e, t)), 9800 n.slideCount <= n.options.slidesToShow 9801 ? o(n.$slider.find(".slick-slide")) 9802 : n.currentSlide >= n.slideCount - n.options.slidesToShow 9803 ? o( 9804 n.$slider.find(".slick-cloned").slice(0, n.options.slidesToShow) 9805 ) 9806 : 0 === n.currentSlide && 9807 o( 9808 n.$slider 9809 .find(".slick-cloned") 9810 .slice(-1 * n.options.slidesToShow) 9811 ); 9812 }), 9813 (r.prototype.loadSlider = function () { 9814 var e = this; 9815 e.setPosition(), 9816 e.$slideTrack.css({ opacity: 1 }), 9817 e.$slider.removeClass("slick-loading"), 9818 e.initUI(), 9819 "progressive" === e.options.lazyLoad && e.progressiveLazyLoad(); 9820 }), 9821 (r.prototype.next = r.prototype.slickNext = 9822 function () { 9823 this.changeSlide({ data: { message: "next" } }); 9824 }), 9825 (r.prototype.orientationChange = function () { 9826 this.checkResponsive(), this.setPosition(); 9827 }), 9828 (r.prototype.pause = r.prototype.slickPause = 9829 function () { 9830 this.autoPlayClear(), (this.paused = !0); 9831 }), 9832 (r.prototype.play = r.prototype.slickPlay = 9833 function () { 9834 var e = this; 9835 e.autoPlay(), 9836 (e.options.autoplay = !0), 9837 (e.paused = !1), 9838 (e.focussed = !1), 9839 (e.interrupted = !1); 9840 }), 9841 (r.prototype.postSlide = function (e) { 9842 var t = this; 9843 t.unslicked || 9844 (t.$slider.trigger("afterChange", [t, e]), 9845 (t.animating = !1), 9846 t.setPosition(), 9847 (t.swipeLeft = null),
9848 t.options.autoplay && t.autoPlay(), 9849 !0 === t.options.accessibility && t.initADA()); 9850 }), 9851 (r.prototype.prev = r.prototype.slickPrev = 9852 function () { 9853 this.changeSlide({ data: { message: "previous" } }); 9854 }), 9855 (r.prototype.preventDefault = function (e) { 9856 e.preventDefault(); 9857 }), 9858 (r.prototype.progressiveLazyLoad = function (e) { 9859 e = e || 1; 9860 var t, 9861 o, 9862 n, 9863 i = this, 9864 s = c("img[data-lazy]", i.$slider); 9865 s.length 9866 ? ((t = s.first()), 9867 (o = t.attr("data-lazy")), 9868 ((n = document.createElement("img")).onload = function () { 9869 t 9870 .attr("src", o) 9871 .removeAttr("data-lazy") 9872 .removeClass("slick-loading"), 9873 !0 === i.options.adaptiveHeight && i.setPosition(), 9874 i.$slider.trigger("lazyLoaded", [i, t, o]), 9875 i.progressiveLazyLoad(); 9876 }), 9877 (n.onerror = function () { 9878 e < 3 9879 ? setTimeout(function () { 9880 i.progressiveLazyLoad(e + 1); 9881 }, 500) 9882 : (t 9883 .removeAttr("data-lazy") 9884 .removeClass("slick-loading") 9885 .addClass("slick-lazyload-error"), 9886 i.$slider.trigger("lazyLoadError", [i, t, o]), 9887 i.progressiveLazyLoad()); 9888 }), 9889 (n.src = o)) 9890 : i.$slider.trigger("allImagesLoaded", [i]); 9891 }), 9892 (r.prototype.refresh = function (e) { 9893 var t, 9894 o = this, 9895 n = o.slideCount - o.options.slidesToShow; 9896 !o.options.infinite && o.currentSlide > n && (o.currentSlide = n), 9897 o.slideCount <= o.options.slidesToShow && (o.currentSlide = 0), 9898 (t = o.currentSlide), 9899 o.destroy(!0), 9900 c.extend(o, o.initials, { currentSlide: t }), 9901 o.init(), 9902 e || o.changeSlide({ data: { message: "index", index: t } }, !1); 9903 }), 9904 (r.prototype.registerBreakpoints = function () { 9905 var e, 9906 t, 9907 o, 9908 n = this, 9909 i = n.options.responsive || null; 9910 if ("array" === c.type(i) && i.length) { 9911 for (e in ((n.respondTo = n.options.respondTo || "window"), i)) 9912 if ( 9913 ((o = n.breakpoints.length - 1), 9914 (t = i[e].breakpoint), 9915 i.hasOwnProperty(e)) 9916 ) { 9917 for (; 0 <= o; ) 9918 n.breakpoints[o] && 9919 n.breakpoints[o] === t && 9920 n.breakpoints.splice(o, 1), 9921 o--; 9922 n.breakpoints.push(t), (n.breakpointSettings[t] = i[e].settings); 9923 } 9924 n.breakpoints.sort(function (e, t) { 9925 return n.options.mobileFirst ? e - t : t - e; 9926 }); 9927 } 9928 }), 9929 (r.prototype.reinit = function () { 9930 var e = this; 9931 (e.$slides = e.$slideTrack 9932 .children(e.options.slide) 9933 .addClass("slick-slide")), 9934 (e.slideCount = e.$slides.length), 9935 e.currentSlide >= e.slideCount && 9936 0 !== e.currentSlide && 9937 (e.currentSlide = e.currentSlide - e.options.slidesToScroll), 9938 e.slideCount <= e.options.slidesToShow && (e.currentSlide = 0), 9939 e.registerBreakpoints(), 9940 e.setProps(), 9941 e.setupInfinite(), 9942 e.buildArrows(), 9943 e.updateArrows(), 9944 e.initArrowEvents(), 9945 e.buildDots(), 9946 e.updateDots(), 9947 e.initDotEvents(), 9948 e.cleanUpSlideEvents(), 9949 e.initSlideEvents(), 9950 e.checkResponsive(!1, !0), 9951 !0 === e.options.focusOnSelect && 9952 c(e.$slideTrack).children().on("click.slick", e.selectHandler), 9953 e.setSlideClasses( 9954 "number" == typeof e.currentSlide ? e.currentSlide : 0 9955 ), 9956 e.setPosition(), 9957 e.focusHandler(), 9958 (e.paused = !e.options.autoplay), 9959 e.autoPlay(), 9960 e.$slider.trigger("reInit", [e]); 9961 }), 9962 (r.prototype.resize = function () { 9963 var e = this; 9964 c(window).width() !== e.windowWidth && 9965 (clearTimeout(e.windowDelay), 9966 (e.windowDelay = window.setTimeout(function () { 9967 (e.windowWidth = c(window).width()), 9968 e.checkResponsive(), 9969 e.unslicked || e.setPosition(); 9970 }, 50))); 9971 }), 9972 (r.prototype.removeSlide = r.prototype.slickRemove = 9973 function (e, t, o) { 9974 var n = this; 9975 if ( 9976 ((e = 9977 "boolean" == typeof e 9978 ? !0 === (t = e) 9979 ? 0 9980 : n.slideCount - 1 9981 : !0 === t 9982 ? --e 9983 : e), 9984 n.slideCount < 1 || e < 0 || e > n.slideCount - 1) 9985 ) 9986 return !1; 9987 n.unload(), 9988 !0 === o 9989 ? n.$slideTrack.children().remove() 9990 : n.$slideTrack.children(this.options.slide).eq(e).remove(), 9991 (n.$slides = n.$slideTrack.children(this.options.slide)), 9992 n.$slideTrack.children(this.options.slide).detach(), 9993 n.$slideTrack.append(n.$slides), 9994 (n.$slidesCache = n.$slides), 9995 n.reinit(); 9996 }), 9997 (r.prototype.setCSS = function (e) { 9998 var t, 9999 o, 10000 n = this, 10001 i = {}; 10002 !0 === n.options.rtl && (e = -e), 10003 (t = "left" == n.positionProp ? Math.ceil(e) + "px" : "0px"), 10004 (o = "top" == n.positionProp ? Math.ceil(e) + "px" : "0px"), 10005 (i[n.positionProp] = e), 10006 !1 === n.transformsEnabled || 10007 (!(i = {}) === n.cssTransitions 10008 ? (i[n.animType] = "translate(" + t + ", " + o + ")") 10009 : (i[n.animType] = "translate3d(" + t + ", " + o + ", 0px)")), 10010 n.$slideTrack.css(i); 10011 }), 10012 (r.prototype.setDimensions = function () { 10013 var e = this; 10014 !1 === e.options.vertical 10015 ? !0 === e.options.centerMode && 10016 e.$list.css({ padding: "0px " + e.options.centerPadding }) 10017 : (e.$list.height( 10018 e.$slides.first().outerHeight(!0) * e.options.slidesToShow 10019 ), 10020 !0 === e.options.centerMode && 10021 e.$list.css({ padding: e.options.centerPadding + " 0px" })), 10022 (e.listWidth = e.$list.width()), 10023 (e.listHeight = e.$list.height()), 10024 !1 === e.options.vertical && !1 === e.options.variableWidth 10025 ? ((e.slideWidth = Math.ceil(e.listWidth / e.options.slidesToShow)), 10026 e.$slideTrack.width( 10027 Math.ceil( 10028 e.slideWidth * e.$slideTrack.children(".slick-slide").length 10029 ) 10030 )) 10031 : !0 === e.options.variableWidth 10032 ? e.$slideTrack.width(5e3 * e.slideCount) 10033 : ((e.slideWidth = Math.ceil(e.listWidth)), 10034 e.$slideTrack.height( 10035 Math.ceil( 10036 e.$slides.first().outerHeight(!0) * 10037 e.$slideTrack.children(".slick-slide").length 10038 ) 10039 )); 10040 var t = e.$slides.first().outerWidth(!0) - e.$slides.first().width(); 10041 !1 === e.options.variableWidth && 10042 e.$slideTrack.children(".slick-slide").width(e.slideWidth - t); 10043 }), 10044 (r.prototype.setFade = function () { 10045 var o, 10046 n = this; 10047 n.$slides.each(function (e, t) { 10048 (o = n.slideWidth * e * -1), 10049 !0 === n.options.rtl 10050 ? c(t).css({ 10051 position: "relative", 10052 right: o, 10053 top: 0, 10054 zIndex: n.options.zIndex - 2, 10055 opacity: 0, 10056 }) 10057 : c(t).css({ 10058 position: "relative", 10059 left: o, 10060 top: 0, 10061 zIndex: n.options.zIndex - 2, 10062 opacity: 0, 10063 }); 10064 }), 10065 n.$slides 10066 .eq(n.currentSlide) 10067 .css({ zIndex: n.options.zIndex - 1, opacity: 1 }); 10068 }), 10069 (r.prototype.setHeight = function () { 10070 var e, 10071 t = this; 10072 1 === t.options.slidesToShow && 10073 !0 === t.options.adaptiveHeight && 10074 !1 === t.options.vertical && 10075 ((e = t.$slides.eq(t.currentSlide).outerHeight(!0)), 10076 t.$list.css("height", e)); 10077 }), 10078 (r.prototype.setOption = r.prototype.slickSetOption = 10079 function () { 10080 var e, 10081 t, 10082 o, 10083 n, 10084 i, 10085 s = this, 10086 r = !1; 10087 if ( 10088 ("object" === c.type(arguments[0]) 10089 ? ((o = arguments[0]), (r = arguments[1]), (i = "multiple")) 10090 : "string" === c.type(arguments[0]) && 10091 ((n = arguments[1]), 10092 (r = arguments[2]), 10093 "responsive" === (o = arguments[0]) && 10094 "array" === c.type(arguments[1]) 10095 ? (i = "responsive") 10096 : void 0 !== arguments[1] && (i = "single")), 10097 "single" === i) 10098 ) 10099 s.options[o] = n; 10100 else if ("multiple" === i) 10101 c.each(o, function (e, t) { 10102 s.options[e] = t; 10103 }); 10104 else if ("responsive" === i) 10105 for (t in n) 10106 if ("array" !== c.type(s.options.responsive)) 10107 s.options.responsive = [n[t]]; 10108 else { 10109 for (e = s.options.responsive.length - 1; 0 <= e; ) 10110 s.options.responsive[e].breakpoint === n[t].breakpoint && 10111 s.options.responsive.splice(e, 1), 10112 e--; 10113 s.options.responsive.push(n[t]); 10114 } 10115 r && (s.unload(), s.reinit()); 10116 }), 10117 (r.prototype.setPosition = function () { 10118 var e = this; 10119 e.setDimensions(), 10120 e.setHeight(), 10121 !1 === e.options.fade 10122 ? e.setCSS(e.getLeft(e.currentSlide)) 10123 : e.setFade(), 10124 e.$slider.trigger("setPosition", [e]); 10125 }), 10126 (r.prototype.setProps = function () { 10127 var e = this, 10128 t = document.body.style; 10129 (e.positionProp = !0 === e.options.vertical ? "top" : "left"), 10130 "top" === e.positionProp 10131 ? e.$slider.addClass("slick-vertical") 10132 : e.$slider.removeClass("slick-vertical"), 10133 (void 0 === t.WebkitTransition && 10134 void 0 === t.MozTransition && 10135 void 0 === t.msTransition) || 10136 (!0 === e.options.useCSS && (e.cssTransitions = !0)), 10137 e.options.fade &&
10138 ("number" == typeof e.options.zIndex 10139 ? e.options.zIndex < 3 && (e.options.zIndex = 3) 10140 : (e.options.zIndex = e.defaults.zIndex)), 10141 void 0 !== t.OTransform && 10142 ((e.animType = "OTransform"), 10143 (e.transformType = "-o-transform"), 10144 (e.transitionType = "OTransition"), 10145 void 0 === t.perspectiveProperty && 10146 void 0 === t.webkitPerspective && 10147 (e.animType = !1)), 10148 void 0 !== t.MozTransform && 10149 ((e.animType = "MozTransform"), 10150 (e.transformType = "-moz-transform"), 10151 (e.transitionType = "MozTransition"), 10152 void 0 === t.perspectiveProperty && 10153 void 0 === t.MozPerspective && 10154 (e.animType = !1)), 10155 void 0 !== t.webkitTransform && 10156 ((e.animType = "webkitTransform"), 10157 (e.transformType = "-webkit-transform"), 10158 (e.transitionType = "webkitTransition"), 10159 void 0 === t.perspectiveProperty && 10160 void 0 === t.webkitPerspective && 10161 (e.animType = !1)), 10162 void 0 !== t.msTransform && 10163 ((e.animType = "msTransform"), 10164 (e.transformType = "-ms-transform"), 10165 (e.transitionType = "msTransition"), 10166 void 0 === t.msTransform && (e.animType = !1)), 10167 void 0 !== t.transform && 10168 !1 !== e.animType && 10169 ((e.animType = "transform"), 10170 (e.transformType = "transform"), 10171 (e.transitionType = "transition")), 10172 (e.transformsEnabled = 10173 e.options.useTransform && null !== e.animType && !1 !== e.animType); 10174 }), 10175 (r.prototype.setSlideClasses = function (e) { 10176 var t, 10177 o, 10178 n, 10179 i = this, 10180 s = i.$slider 10181 .find(".slick-slide") 10182 .removeClass("slick-active slick-center slick-current") 10183 .attr("aria-hidden", "true"); 10184 i.$slides.eq(e).addClass("slick-current"), 10185 !0 === i.options.centerMode 10186 ? ((t = Math.floor(i.options.slidesToShow / 2)), 10187 !0 === i.options.infinite && 10188 (t <= e && e <= i.slideCount - 1 - t 10189 ? i.$slides 10190 .slice(e - t, e + t + 1) 10191 .addClass("slick-active") 10192 .attr("aria-hidden", "false") 10193 : ((o = i.options.slidesToShow + e), 10194 s 10195 .slice(o - t + 1, o + t + 2) 10196 .addClass("slick-active") 10197 .attr("aria-hidden", "false")), 10198 0 === e 10199 ? s 10200 .eq(s.length - 1 - i.options.slidesToShow) 10201 .addClass("slick-center") 10202 : e === i.slideCount - 1 && 10203 s.eq(i.options.slidesToShow).addClass("slick-center")), 10204 i.$slides.eq(e).addClass("slick-center")) 10205 : 0 <= e && e <= i.slideCount - i.options.slidesToShow 10206 ? i.$slides 10207 .slice(e, e + i.options.slidesToShow) 10208 .addClass("slick-active") 10209 .attr("aria-hidden", "false") 10210 : s.length <= i.options.slidesToShow 10211 ? s.addClass("slick-active").attr("aria-hidden", "false") 10212 : ((n = i.slideCount % i.options.slidesToShow), 10213 (o = !0 === i.options.infinite ? i.options.slidesToShow + e : e), 10214 i.options.slidesToShow == i.options.slidesToScroll && 10215 i.slideCount - e < i.options.slidesToShow 10216 ? s 10217 .slice(o - (i.options.slidesToShow - n), o + n) 10218 .addClass("slick-active") 10219 .attr("aria-hidden", "false") 10220 : s 10221 .slice(o, o + i.options.slidesToShow) 10222 .addClass("slick-active") 10223 .attr("aria-hidden", "false")), 10224 "ondemand" === i.options.lazyLoad && i.lazyLoad(); 10225 }), 10226 (r.prototype.setupInfinite = function () { 10227 var e, 10228 t, 10229 o, 10230 n = this; 10231 if ( 10232 (!0 === n.options.fade && (n.options.centerMode = !1), 10233 !0 === n.options.infinite && 10234 !1 === n.options.fade && 10235 ((t = null), n.slideCount > n.options.slidesToShow)) 10236 ) { 10237 for ( 10238 o = 10239 !0 === n.options.centerMode 10240 ? n.options.slidesToShow + 1 10241 : n.options.slidesToShow, 10242 e = n.slideCount; 10243 e > n.slideCount - o; 10244 --e 10245 ) 10246 (t = e - 1), 10247 c(n.$slides[t]) 10248 .clone(!0) 10249 .attr("id", "") 10250 .attr("data-slick-index", t - n.slideCount) 10251 .prependTo(n.$slideTrack) 10252 .addClass("slick-cloned"); 10253 for (e = 0; e < o; e += 1) 10254 (t = e), 10255 c(n.$slides[t]) 10256 .clone(!0) 10257 .attr("id", "") 10258 .attr("data-slick-index", t + n.slideCount) 10259 .appendTo(n.$slideTrack) 10260 .addClass("slick-cloned"); 10261 n.$slideTrack 10262 .find(".slick-cloned") 10263 .find("[id]") 10264 .each(function () { 10265 c(this).attr("id", ""); 10266 }); 10267 } 10268 }), 10269 (r.prototype.interrupt = function (e) { 10270 e || this.autoPlay(), (this.interrupted = e); 10271 }), 10272 (r.prototype.selectHandler = function (e) { 10273 var t = this, 10274 o = c(e.target).is(".slick-slide") 10275 ? c(e.target) 10276 : c(e.target).parents(".slick-slide"), 10277 n = (n = parseInt(o.attr("data-slick-index"))) || 0; 10278 if (t.slideCount <= t.options.slidesToShow) 10279 return t.setSlideClasses(n), void t.asNavFor(n); 10280 t.slideHandler(n); 10281 }), 10282 (r.prototype.slideHandler = function (e, t, o) { 10283 var n, 10284 i, 10285 s, 10286 r, 10287 a, 10288 l, 10289 c = this; 10290 if ( 10291 ((t = t || !1), 10292 (!0 !== c.animating || !0 !== c.options.waitForAnimate) && 10293 !( 10294 (!0 === c.options.fade && c.currentSlide === e) || 10295 c.slideCount <= c.options.slidesToShow 10296 )) 10297 ) 10298 if ( 10299 (!1 === t && c.asNavFor(e), 10300 (n = e), 10301 (a = c.getLeft(n)),
10302 (r = c.getLeft(c.currentSlide)), 10303 (c.currentLeft = null === c.swipeLeft ? r : c.swipeLeft), 10304 !1 === c.options.infinite && 10305 !1 === c.options.centerMode && 10306 (e < 0 || e > c.getDotCount() * c.options.slidesToScroll)) 10307 ) 10308 !1 === c.options.fade && 10309 ((n = c.currentSlide), 10310 !0 !== o 10311 ? c.animateSlide(r, function () { 10312 c.postSlide(n); 10313 }) 10314 : c.postSlide(n)); 10315 else if ( 10316 !1 === c.options.infinite && 10317 !0 === c.options.centerMode && 10318 (e < 0 || e > c.slideCount - c.options.slidesToScroll) 10319 ) 10320 !1 === c.options.fade && 10321 ((n = c.currentSlide), 10322 !0 !== o 10323 ? c.animateSlide(r, function () { 10324 c.postSlide(n); 10325 }) 10326 : c.postSlide(n)); 10327 else { 10328 if ( 10329 (c.options.autoplay && clearInterval(c.autoPlayTimer), 10330 (i = 10331 n < 0 10332 ? c.slideCount % c.options.slidesToScroll != 0 10333 ? c.slideCount - (c.slideCount % c.options.slidesToScroll) 10334 : c.slideCount + n 10335 : n >= c.slideCount 10336 ? c.slideCount % c.options.slidesToScroll != 0 10337 ? 0 10338 : n - c.slideCount 10339 : n), 10340 (c.animating = !0), 10341 c.$slider.trigger("beforeChange", [c, c.currentSlide, i]), 10342 (s = c.currentSlide), 10343 (c.currentSlide = i), 10344 c.setSlideClasses(c.currentSlide), 10345 c.options.asNavFor && 10346 (l = (l = c.getNavTarget()).slick("getSlick")).slideCount <= 10347 l.options.slidesToShow && 10348 l.setSlideClasses(c.currentSlide), 10349 c.updateDots(), 10350 c.updateArrows(), 10351 !0 === c.options.fade) 10352 ) 10353 return ( 10354 !0 !== o 10355 ? (c.fadeSlideOut(s), 10356 c.fadeSlide(i, function () { 10357 c.postSlide(i); 10358 })) 10359 : c.postSlide(i), 10360 void c.animateHeight() 10361 ); 10362 !0 !== o 10363 ? c.animateSlide(a, function () { 10364 c.postSlide(i); 10365 }) 10366 : c.postSlide(i); 10367 } 10368 }), 10369 (r.prototype.startLoad = function () { 10370 var e = this; 10371 !0 === e.options.arrows && 10372 e.slideCount > e.options.slidesToShow && 10373 (e.$prevArrow.hide(), e.$nextArrow.hide()), 10374 !0 === e.options.dots && 10375 e.slideCount > e.options.slidesToShow && 10376 e.$dots.hide(), 10377 e.$slider.addClass("slick-loading"); 10378 }), 10379 (r.prototype.swipeDirection = function () { 10380 var e = this, 10381 t = e.touchObject.startX - e.touchObject.curX, 10382 o = e.touchObject.startY - e.touchObject.curY, 10383 n = Math.atan2(o, t), 10384 i = Math.round((180 * n) / Math.PI); 10385 return ( 10386 i < 0 && (i = 360 - Math.abs(i)), 10387 (i <= 45 && 0 <= i) || (i <= 360 && 315 <= i) 10388 ? !1 === e.options.rtl 10389 ? "left" 10390 : "right" 10391 : 135 <= i && i <= 225 10392 ? !1 === e.options.rtl 10393 ? "right" 10394 : "left" 10395 : !0 === e.options.verticalSwiping 10396 ? 35 <= i && i <= 135 10397 ? "down" 10398 : "up" 10399 : "vertical" 10400 ); 10401 }), 10402 (r.prototype.swipeEnd = function (e) { 10403 var t, 10404 o, 10405 n = this; 10406 if ( 10407 ((n.dragging = !1), 10408 (n.interrupted = !1), 10409 (n.shouldClick = !(10 < n.touchObject.swipeLength)), 10410 void 0 === n.touchObject.curX) 10411 ) 10412 return !1; 10413 if ( 10414 (!0 === n.touchObject.edgeHit && 10415 n.$slider.trigger("edge", [n, n.swipeDirection()]), 10416 n.touchObject.swipeLength >= n.touchObject.minSwipe) 10417 ) { 10418 switch ((o = n.swipeDirection())) {
10419 case "left": 10420 case "down": 10421 (t = n.options.swipeToSlide 10422 ? n.checkNavigable(n.currentSlide + n.getSlideCount()) 10423 : n.currentSlide + n.getSlideCount()), 10424 (n.currentDirection = 0); 10425 break; 10426 case "right": 10427 case "up": 10428 (t = n.options.swipeToSlide 10429 ? n.checkNavigable(n.currentSlide - n.getSlideCount()) 10430 : n.currentSlide - n.getSlideCount()), 10431 (n.currentDirection = 1); 10432 } 10433 "vertical" != o && 10434 (n.slideHandler(t), 10435 (n.touchObject = {}), 10436 n.$slider.trigger("swipe", [n, o])); 10437 } else 10438 n.touchObject.startX !== n.touchObject.curX && 10439 (n.slideHandler(n.currentSlide), (n.touchObject = {})); 10440 }), 10441 (r.prototype.swipeHandler = function (e) { 10442 var t = this; 10443 if ( 10444 !( 10445 !1 === t.options.swipe || 10446 ("ontouchend" in document && !1 === t.options.swipe) || 10447 (!1 === t.options.draggable && -1 !== e.type.indexOf("mouse")) 10448 ) 10449 ) 10450 switch ( 10451 ((t.touchObject.fingerCount = 10452 e.originalEvent && void 0 !== e.originalEvent.touches 10453 ? e.originalEvent.touches.length 10454 : 1), 10455 (t.touchObject.minSwipe = t.listWidth / t.options.touchThreshold), 10456 !0 === t.options.verticalSwiping && 10457 (t.touchObject.minSwipe = 10458 t.listHeight / t.options.touchThreshold), 10459 e.data.action) 10460 ) { 10461 case "start": 10462 t.swipeStart(e); 10463 break; 10464 case "move": 10465 t.swipeMove(e); 10466 break; 10467 case "end": 10468 t.swipeEnd(e); 10469 } 10470 }), 10471 (r.prototype.swipeMove = function (e) { 10472 var t, 10473 o, 10474 n, 10475 i, 10476 s = this, 10477 r = void 0 !== e.originalEvent ? e.originalEvent.touches : null; 10478 return ( 10479 !(!s.dragging || (r && 1 !== r.length)) && 10480 ((t = s.getLeft(s.currentSlide)), 10481 (s.touchObject.curX = void 0 !== r ? r[0].pageX : e.clientX), 10482 (s.touchObject.curY = void 0 !== r ? r[0].pageY : e.clientY), 10483 (s.touchObject.swipeLength = Math.round( 10484 Math.sqrt(Math.pow(s.touchObject.curX - s.touchObject.startX, 2)) 10485 )), 10486 !0 === s.options.verticalSwiping && 10487 (s.touchObject.swipeLength = Math.round( 10488 Math.sqrt(Math.pow(s.touchObject.curY - s.touchObject.startY, 2)) 10489 )), 10490 "vertical" !== (o = s.swipeDirection()) 10491 ? (void 0 !== e.originalEvent && 10492 4 < s.touchObject.swipeLength && 10493 e.preventDefault(), 10494 (i = 10495 (!1 === s.options.rtl ? 1 : -1) * 10496 (s.touchObject.curX > s.touchObject.startX ? 1 : -1)), 10497 !0 === s.options.verticalSwiping && 10498 (i = s.touchObject.curY > s.touchObject.startY ? 1 : -1), 10499 (n = s.touchObject.swipeLength), 10500 (s.touchObject.edgeHit = !1) === s.options.infinite && 10501 ((0 === s.currentSlide && "right" === o) || 10502 (s.currentSlide >= s.getDotCount() && "left" === o)) && 10503 ((n = s.touchObject.swipeLength * s.options.edgeFriction), 10504 (s.touchObject.edgeHit = !0)), 10505 !1 === s.options.vertical 10506 ? (s.swipeLeft = t + n * i) 10507 : (s.swipeLeft = t + n * (s.$list.height() / s.listWidth) * i), 10508 !0 === s.options.verticalSwiping && (s.swipeLeft = t + n * i), 10509 !0 !== s.options.fade && 10510 !1 !== s.options.touchMove && 10511 (!0 === s.animating 10512 ? ((s.swipeLeft = null), !1) 10513 : void s.setCSS(s.swipeLeft))) 10514 : void 0) 10515 ); 10516 }), 10517 (r.prototype.swipeStart = function (e) { 10518 var t, 10519 o = this; 10520 if ( 10521 ((o.interrupted = !0), 10522 1 !== o.touchObject.fingerCount || 10523 o.slideCount <= o.options.slidesToShow) 10524 ) 10525 return !(o.touchObject = {}); 10526 void 0 !== e.originalEvent && 10527 void 0 !== e.originalEvent.touches && 10528 (t = e.originalEvent.touches[0]), 10529 (o.touchObject.startX = o.touchObject.curX = 10530 void 0 !== t ? t.pageX : e.clientX), 10531 (o.touchObject.startY = o.touchObject.curY = 10532 void 0 !== t ? t.pageY : e.clientY), 10533 (o.dragging = !0); 10534 }), 10535 (r.prototype.unfilterSlides = r.prototype.slickUnfilter = 10536 function () { 10537 var e = this; 10538 null !== e.$slidesCache && 10539 (e.unload(), 10540 e.$slideTrack.children(this.options.slide).detach(), 10541 e.$slidesCache.appendTo(e.$slideTrack), 10542 e.reinit()); 10543 }), 10544 (r.prototype.unload = function () { 10545 var e = this; 10546 c(".slick-cloned", e.$slider).remove(), 10547 e.$dots && e.$dots.remove(), 10548 e.$prevArrow && 10549 e.htmlExpr.test(e.options.prevArrow) && 10550 e.$prevArrow.remove(), 10551 e.$nextArrow && 10552 e.htmlExpr.test(e.options.nextArrow) && 10553 e.$nextArrow.remove(), 10554 e.$slides 10555 .removeClass("slick-slide slick-active slick-visible slick-current") 10556 .attr("aria-hidden", "true") 10557 .css("width", ""); 10558 }),
10559 (r.prototype.unslick = function (e) { 10560 this.$slider.trigger("unslick", [this, e]), this.destroy(); 10561 }), 10562 (r.prototype.updateArrows = function () { 10563 var e = this; 10564 Math.floor(e.options.slidesToShow / 2); 10565 !0 === e.options.arrows && 10566 e.slideCount > e.options.slidesToShow && 10567 !e.options.infinite && 10568 (e.$prevArrow 10569 .removeClass("slick-disabled") 10570 .attr("aria-disabled", "false"), 10571 e.$nextArrow 10572 .removeClass("slick-disabled") 10573 .attr("aria-disabled", "false"), 10574 0 === e.currentSlide 10575 ? (e.$prevArrow 10576 .addClass("slick-disabled") 10577 .attr("aria-disabled", "true"), 10578 e.$nextArrow 10579 .removeClass("slick-disabled") 10580 .attr("aria-disabled", "false")) 10581 : ((e.currentSlide >= e.slideCount - e.options.slidesToShow && 10582 !1 === e.options.centerMode) || 10583 (e.currentSlide >= e.slideCount - 1 && 10584 !0 === e.options.centerMode)) && 10585 (e.$nextArrow 10586 .addClass("slick-disabled") 10587 .attr("aria-disabled", "true"), 10588 e.$prevArrow 10589 .removeClass("slick-disabled") 10590 .attr("aria-disabled", "false"))); 10591 }), 10592 (r.prototype.updateDots = function () { 10593 var e = this; 10594 null !== e.$dots && 10595 (e.$dots 10596 .find("li") 10597 .removeClass("slick-active") 10598 .attr("aria-hidden", "true"), 10599 e.$dots 10600 .find("li") 10601 .eq(Math.floor(e.currentSlide / e.options.slidesToScroll)) 10602 .addClass("slick-active") 10603 .attr("aria-hidden", "false")); 10604 }), 10605 (r.prototype.visibility = function () { 10606 this.options.autoplay && 10607 (document[this.hidden] 10608 ? (this.interrupted = !0) 10609 : (this.interrupted = !1)); 10610 }), 10611 (c.fn.slick = function () { 10612 for ( 10613 var e, 10614 t = this, 10615 o = arguments[0], 10616 n = Array.prototype.slice.call(arguments, 1), 10617 i = t.length, 10618 s = 0; 10619 s < i; 10620 s++ 10621 ) 10622 if ( 10623 ("object" == typeof o || void 0 === o 10624 ? (t[s].slick = new r(t[s], o)) 10625 : (e = t[s].slick[o].apply(t[s].slick, n)), 10626 void 0 !== e) 10627 ) 10628 return e; 10629 return t; 10630 }); 10631 }), 10632 (function (N, p) { 10633 "use strict"; 10634 function r(w, b, x, e, t) { 10635 function o() { 10636 var i, s, r, a; 10637 (W = 1 < N.devicePixelRatio), 10638 n(x), 10639 0 <= b.delay && 10640 setTimeout(function () { 10641 l(!0); 10642 }, b.delay), 10643 (b.delay < 0 || b.combined) && 10644 ((e.e = 10645 ((i = b.throttle), 10646 (s = function (e) { 10647 "resize" === e.type && (z = E = -1), l(e.all); 10648 }), 10649 (a = 0), 10650 function (e, t) { 10651 function o() { 10652 (a = +new Date()), s.call(w, e); 10653 } 10654 var n = new Date() - a; 10655 r && clearTimeout(r), 10656 i < n || !b.enableThrottle || t 10657 ? o() 10658 : (r = setTimeout(o, i - n)); 10659 })), 10660 (e.a = function (e) { 10661 n(e), x.push.apply(x, e); 10662 }), 10663 (e.g = function () { 10664 return (x = M(x).filter(function () { 10665 return !M(this).data(b.loadedName); 10666 })); 10667 }), 10668 (e.f = function (e) { 10669 for (var t = 0; t < e.length; t++) { 10670 var o = x.filter(e[t]); 10671 o.length && l(!1, o); 10672 } 10673 }), 10674 l(), 10675 M(b.appendScroll).on("scroll." + t + " resize." + t, e.e)); 10676 } 10677 function n(e) { 10678 for ( 10679 var t = b.defaultImage, 10680 o = b.placeholder, 10681 n = b.imageBase, 10682 i = b.srcsetAttribute, 10683 s = b.loaderAttribute, 10684 r = b._f || {}, 10685 a = 0, 10686 l = (e = M(e) 10687 .filter(function () { 10688 var e = M(this), 10689 t = k(this); 10690 return ( 10691 !e.data(b.handledName) && 10692 (e.attr(b.attribute) || e.attr(i) || e.attr(s) || r[t] !== p) 10693 ); 10694 }) 10695 .data("plugin_" + b.name, w)).length; 10696 a < l; 10697 a++ 10698 ) { 10699 var c = M(e[a]), 10700 d = k(e[a]), 10701 u = c.attr(b.imageBaseAttribute) || n; 10702 d == F && 10703 u && 10704 c.attr(i) && 10705 c.attr( 10706 i, 10707 (function (e, t) { 10708 if (t) { 10709 var o = e.split(","); 10710 e = ""; 10711 for (var n = 0, i = o.length; n < i; n++) 10712 e += t + o[n].trim() + (n !== i - 1 ? "," : ""); 10713 } 10714 return e; 10715 })(c.attr(i), u) 10716 ), 10717 r[d] === p || c.attr(s) || c.attr(s, r[d]), 10718 d == F && t && !c.attr(O) 10719 ? c.attr(O, t) 10720 : d == F || 10721 !o ||
10722 (c.css(I) && "none" != c.css(I)) || 10723 c.css(I, "url('" + o + "')"); 10724 } 10725 } 10726 function l(e, t) { 10727 if (!x.length) return b.autoDestroy && w.destroy(), 0; 10728 for ( 10729 var o, 10730 n, 10731 i, 10732 s, 10733 r, 10734 a, 10735 l, 10736 c, 10737 d, 10738 u, 10739 p, 10740 h = t || x, 10741 f = !1, 10742 m = b.imageBase || "", 10743 g = b.srcsetAttribute, 10744 v = b.handledName, 10745 y = 0; 10746 y < h.length; 10747 y++ 10748 ) { 10749 (e || 10750 t || 10751 ((a = h[y]), 10752 (d = void 0), 10753 (l = a.getBoundingClientRect()), 10754 (c = b.scrollDirection), 10755 (d = b.threshold), 10756 (u = 10757 (0 <= E ? E : (E = M(N).height())) + d > l.top && -d < l.bottom), 10758 (p = 10759 (0 <= z ? z : (z = M(N).width())) + d > l.left && -d < l.right), 10760 "vertical" == c ? u : ("horizontal" == c || u) && p)) && 10761 ((o = M(h[y])), 10762 (n = k(h[y])), 10763 (i = o.attr(b.attribute)), 10764 (s = o.attr(b.imageBaseAttribute) || m), 10765 (r = o.attr(b.loaderAttribute)), 10766 o.data(v) || 10767 (b.visibleOnly && !o.is(":visible")) || 10768 !( 10769 ((i || o.attr(g)) && 10770 ((n == F && (s + i != o.attr(O) || o.attr(g) != o.attr(H))) || 10771 (n != F && s + i != o.css(I)))) || 10772 r 10773 ) || 10774 ((f = !0), 10775 o.data(v, !0), 10776 (function (t, e, o, n) { 10777 ++S; 10778 var i = function () { 10779 C("onError", t), T(), (i = M.noop); 10780 }; 10781 C("beforeLoad", t); 10782 var s = b.attribute, 10783 r = b.srcsetAttribute, 10784 a = b.sizesAttribute, 10785 l = b.retinaAttribute, 10786 c = b.removeAttribute, 10787 d = b.loadedName, 10788 u = t.attr(l); 10789 { 10790 var p, h, f; 10791 n 10792 ? ((p = function () { 10793 c && t.removeAttr(b.loaderAttribute), 10794 t.data(d, !0), 10795 C(L, t), 10796 setTimeout(T, 1), 10797 (p = M.noop); 10798 }), 10799 t.off($).one($, i).one(A, p), 10800 C(n, t, function (e) { 10801 e ? (t.off(A), p()) : (t.off($), i()); 10802 }) || t.trigger($)) 10803 : ((h = M(new Image())).one($, i).one(A, function () { 10804 t.hide(), 10805 e == F 10806 ? t 10807 .attr(D, h.attr(D)) 10808 .attr(H, h.attr(H)) 10809 .attr(O, h.attr(O)) 10810 : t.css(I, "url('" + h.attr(O) + "')"), 10811 t[b.effect](b.effectTime), 10812 c && 10813 (t.removeAttr( 10814 s + " " + r + " " + l + " " + b.imageBaseAttribute 10815 ), 10816 a !== D && t.removeAttr(a)), 10817 t.data(d, !0), 10818 C(L, t), 10819 h.remove(), 10820 T(); 10821 }), 10822 (f = (W && u ? u : t.attr(s)) || ""), 10823 h 10824 .attr(D, t.attr(a)) 10825 .attr(H, t.attr(r)) 10826 .attr(O, f ? o + f : null), 10827 h.complete && h.trigger(A)); 10828 } 10829 })(o, n, s, r))); 10830 } 10831 f && 10832 (x = M(x).filter(function () { 10833 return !M(this).data(v); 10834 })); 10835 } 10836 function k(e) { 10837 return e.tagName.toLowerCase(); 10838 } 10839 function T() { 10840 --S, x.length || S || C("onFinishedAll"); 10841 } 10842 function C(e, t, o) { 10843 return !!(e = b[e]) && (e.apply(w, [].slice.call(arguments, 1)), !0); 10844 } 10845 var S = 0, 10846 z = -1, 10847 E = -1, 10848 W = !1, 10849 L = "afterLoad", 10850 A = "load", 10851 $ = "error", 10852 F = "img", 10853 O = "src", 10854 H = "srcset", 10855 D = "sizes", 10856 I = "background-image"; 10857 "event" == b.bind || i ? o() : M(N).on(A + "." + t, o); 10858 } 10859 function c(e, t) { 10860 var o = this, 10861 n = M.extend({}, o.config, t), 10862 i = {}, 10863 s = n.name + "-" + ++a; 10864 return ( 10865 (o.config = function (e, t) { 10866 return t === p ? n[e] : ((n[e] = t), o); 10867 }), 10868 (o.addItems = function (e) { 10869 return i.a && i.a("string" === M.type(e) ? M(e) : e), o; 10870 }), 10871 (o.getItems = function () { 10872 return i.g ? i.g() : {}; 10873 }), 10874 (o.update = function (e) { 10875 return i.e && i.e({}, !e), o; 10876 }), 10877 (o.force = function (e) { 10878 return i.f && i.f("string" === M.type(e) ? M(e) : e), o; 10879 }), 10880 (o.loadAll = function () { 10881 return i.e && i.e({ all: !0 }, !0), o; 10882 }), 10883 (o.destroy = function () { 10884 return ( 10885 M(n.appendScroll).off("." + s, i.e), M(N).off("." + s), (i = {}), p 10886 ); 10887 }), 10888 r(o, n, e, i, s), 10889 n.chainable ? e : o 10890 ); 10891 } 10892 var M = N.jQuery || N.Zepto, 10893 a = 0, 10894 i = !1; 10895 (M.fn.Lazy = M.fn.lazy = 10896 function (e) { 10897 return new c(this, e); 10898 }), 10899 (M.Lazy = M.lazy = 10900 function (e, t, o) { 10901 if ((M.isFunction(t) && ((o = t), (t = [])), M.isFunction(o))) { 10902 (e = M.isArray(e) ? e : [e]), (t = M.isArray(t) ? t : [t]); 10903 for ( 10904 var n = c.prototype.config, 10905 i = n._f || (n._f = {}), 10906 s = 0, 10907 r = e.length; 10908 s < r; 10909 s++ 10910 ) 10911 (n[e[s]] !== p && !M.isFunction(n[e[s]])) || (n[e[s]] = o); 10912 for (var a = 0, l = t.length; a < l; a++) i[t[a]] = e[0]; 10913 } 10914 }), 10915 (c.prototype.config = { 10916 name: "lazy", 10917 chainable: !0, 10918 autoDestroy: !0, 10919 bind: "load", 10920 threshold: 500, 10921 visibleOnly: !1, 10922 appendScroll: N, 10923 scrollDirection: "both", 10924 imageBase: null, 10925 defaultImage: 10926 "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==", 10927 placeholder: null, 10928 delay: -1, 10929 combined: !1, 10930 attribute: "data-src", 10931 srcsetAttribute: "data-srcset", 10932 sizesAttribute: "data-sizes", 10933 retinaAttribute: "data-retina", 10934 loaderAttribute: "data-loader", 10935 imageBaseAttribute: "data-imagebase", 10936 removeAttribute: !0, 10937 handledName: "handled", 10938 loadedName: "loaded", 10939 effect: "show", 10940 effectTime: 0, 10941 enableThrottle: !0, 10942 throttle: 250, 10943 beforeLoad: p, 10944 afterLoad: p, 10945 onError: p, 10946 onFinishedAll: p, 10947 }), 10948 M(N).on("load", function () { 10949 i = !0; 10950 }); 10951 })(window), 10952 (function (i) { 10953 function o(t, o, n, e) { 10954 i.ajax({ 10955 url: o.attr("data-src"), 10956 type: e || "get", 10957 dataType: o.attr("data-type") || "html", 10958 success: function (e) { 10959 o.html(e), 10960 n(!0), 10961 t.config("removeAttribute") && 10962 o.removeAttr("data-src data-method data-type"); 10963 }, 10964 error: function () { 10965 n(!1); 10966 }, 10967 }); 10968 } 10969 i.lazy("ajax", function (e, t) { 10970 o(this, e, t, e.attr("data-method")); 10971 }), 10972 i.lazy("get", function (e, t) { 10973 o(this, e, t, "get"); 10974 }), 10975 i.lazy("post", function (e, t) { 10976 o(this, e, t, "post"); 10977 }); 10978 })(window.jQuery || window.Zepto), 10979 (function (c) { 10980 c.lazy(["av", "audio", "video"], ["audio", "video"], function (n, e) { 10981 var i, 10982 t, 10983 o, 10984 s, 10985 r, 10986 a, 10987 l = n[0].tagName.toLowerCase(); 10988 "audio" == l || "video" == l 10989 ? ((i = "data-src"), 10990 (t = n.find(i)), 10991 (o = n.find("data-track")), 10992 (s = 0), 10993 (r = function () { 10994 ++s == t.length && e(!1); 10995 }), 10996 (a = function () { 10997 var e = c(this), 10998 t = e[0].tagName.toLowerCase(), 10999 o = e.prop("attributes"), 11000 n = c(t == i ? "<source>" : "<track>"); 11001 t == i && n.one("error", r), 11002 c.each(o, function (e, t) { 11003 n.attr(t.name, t.value); 11004 }), 11005 e.replaceWith(n); 11006 }), 11007 n 11008 .one("loadedmetadata", function () { 11009 e(!0); 11010 }) 11011 .off("load error") 11012 .attr("poster", n.attr("data-poster")), 11013 t.length 11014 ? t.each(a) 11015 : n.attr(i) 11016 ? (c.each(n.attr(i).split(","), function (e, t) { 11017 var o = t.split("|"); 11018 n.append( 11019 c("<source>") 11020 .one("error", r) 11021 .attr({ src: o[0].trim(), type: o[1].trim() }) 11022 ); 11023 }), 11024 this.config("removeAttribute") && n.removeAttr(i)) 11025 : e(!1), 11026 o.length && o.each(a)) 11027 : e(!1); 11028 }); 11029 })(window.jQuery || window.Zepto), 11030 (function (r) { 11031 r.lazy(["frame", "iframe"], "iframe", function (t, e) { 11032 var o, 11033 n, 11034 i, 11035 s = this; 11036 "iframe" == t[0].tagName.toLowerCase() 11037 ? ((o = "data-src"), 11038 (n = "data-error-detect"), 11039 "true" != (i = t.attr(n)) && "1" != i 11040 ? (t.attr("src", t.attr(o)), 11041 s.config("removeAttribute") && t.removeAttr(o + " " + n
11041)) 11042 : r.ajax({ 11043 url: t.attr(o), 11044 dataType: "html", 11045 crossDomain: !0, 11046 xhrFields: { withCredentials: !0 }, 11047 success: function (e) { 11048 t.html(e).attr("src", t.attr(o)), 11049 s.config("removeAttribute") && t.removeAttr(o + " " + n); 11050 }, 11051 error: function () { 11052 e(!1); 11053 }, 11054 })) 11055 : e(!1); 11056 }); 11057 })(window.jQuery || window.Zepto), 11058 (function (e) { 11059 e.lazy("noop", function () {}), 11060 e.lazy("noop-success", function (e, t) { 11061 t(!0); 11062 }), 11063 e.lazy("noop-error", function (e, t) { 11064 t(!1); 11065 }); 11066 })(window.jQuery || window.Zepto), 11067 (function (c) { 11068 function d(e, t) { 11069 var o = e.prop("attributes"), 11070 n = c("<" + t + ">"); 11071 return ( 11072 c.each(o, function (e, t) { 11073 n.attr(t.name, t.value); 11074 }), 11075 e.replaceWith(n), 11076 n 11077 ); 11078 } 11079 function u(e, t, o) { 11080 var n = c("<img>") 11081 .one("load", function () { 11082 o(!0); 11083 }) 11084 .one("error", function () { 11085 o(!1); 11086 }) 11087 .appendTo(e) 11088 .attr("src", t); 11089 n.complete && n.load(); 11090 } 11091 c.lazy(["pic", "picture"], ["picture"], function (e, t) { 11092 var o, n, i, s, r, a, l; 11093 "picture" == e[0].tagName.toLowerCase() 11094 ? ((o = "data-src"), 11095 (n = "data-srcset"), 11096 (i = "data-media"), 11097 (s = "data-sizes"), 11098 (r = "data-type"), 11099 (a = e.find(o)), 11100 (l = e.find("data-img")), 11101 a.length 11102 ? (a.each(function () { 11103 d(c(this), "source"); 11104 }), 11105 1 == l.length 11106 ? ((l = d(l, "img")) 11107 .on("load", function () { 11108 t(!0); 11109 }) 11110 .on("error", function () { 11111 t(!1); 11112 }), 11113 l.attr("src", l.attr(o)), 11114 this.config("removeAttribute") && l.removeAttr(o)) 11115 : e.attr(o) 11116 ? (u(e, e.attr(o), t), 11117 this.config("removeAttribute") && e.removeAttr(o)) 11118 : t(!1)) 11119 : e.attr(n) 11120 ? (c("<source>") 11121 .attr({ 11122 media: e.attr(i), 11123 sizes: e.attr(s), 11124 type: e.attr(r), 11125 srcset: e.attr(n), 11126 }) 11127 .appendTo(e), 11128 u(e, e.attr(o), t), 11129 this.config("removeAttribute") && 11130 e.removeAttr(o + " " + n + " " + i + " " + s + " " + r)) 11131 : t(!1)) 11132 : t(!1); 11133 }); 11134 })(window.jQuery || window.Zepto), 11135 (window.jQuery || window.Zepto).lazy( 11136 ["js", "javascript", "script"], 11137 "script", 11138 function (e, t) { 11139 "script" == e[0].tagName.toLowerCase() 11140 ? (e.attr("src", e.attr("data-src")), 11141 this.config("removeAttribute") && e.removeAttr("data-src")) 11142 : t(!1); 11143 } 11144 ), 11145 (window.jQuery || window.Zepto).lazy("vimeo", function (e, t) { 11146 "iframe" == e[0].tagName.toLowerCase() 11147 ? (e.attr("src", "https://player.vimeo.com/video/" + e.attr("data-src")), 11148 this.config("removeAttribute") && e.removeAttr("data-src")) 11149 : t(!1); 11150 }), 11151 (window.jQuery || window.Zepto).lazy(["yt", "youtube"], function (e, t) { 11152 "iframe" == e[0].tagName.toLowerCase() 11153 ? (e.attr( 11154 "src", 11155 "https://www.youtube.com/embed/" + 11156 e.attr("data-src") + 11157 "?rel=0&showinfo=0" 11158 ), 11159 this.config("removeAttribute") && e.removeAttr("data-src")) 11160 : t(!1); 11161 }), 11162 (function (i, o, H, p) { 11163 "use strict"; 11164 function h(e) { 11165 return e && e.hasOwnProperty && e instanceof H; 11166 } 11167 function f(e) { 11168 return e && "string" === H.type(e); 11169 } 11170 function D(e) { 11171 return f(e) && 0 < e.indexOf("%"); 11172 } 11173 function I(e, t) { 11174 var o = parseInt(e, 10) || 0; 11175 return t && D(e) && (o = (M.getViewport()[t] / 100) * o), Math.ceil(o); 11176 } 11177 function N(e, t) { 11178 return I(e, t) + "px"; 11179 } 11180 var s = H("html"), 11181 n = H(i), 11182 c = H(o), 11183 M = (H.fancybox = function () { 11184 M.open.apply(this, arguments); 11185 }), 11186 r = navigator.userAgent.match(/msie/i), 11187 a = null, 11188 d = o.createTouch !== p; 11189 H.extend(M, { 11190 version: "2.1.5", 11191 defaults: { 11192 padding: 15, 11193 margin: 20, 11194 width: 800, 11195 height: 600, 11196 minWidth: 100, 11197 minHeight: 100, 11198 maxWidth: 9999, 11199 maxHeight: 9999, 11200 pixelRatio: 1, 11201 autoSize: !0, 11202 autoHeight: !1, 11203 autoWidth: !1, 11204 autoResize: !0, 11205 autoCenter: !d, 11206 fitToView: !0, 11207 aspectRatio: !1, 11208 topRatio: 0.5, 11209 leftRatio: 0.5, 11210 scrolling: "auto", 11211 wrapCSS: "", 11212 arrows: !0, 11213 closeBtn: !0, 11214 closeClick: !1, 11215 nextClick: !1, 11216 mouseWheel: !0, 11217 autoPlay: !1, 11218 playSpeed: 3e3, 11219 preload: 3, 11220 modal: !1, 11221 loop: !0, 11222 ajax: { dataType: "html", headers: { "X-fancyBox": !0 } }, 11223 iframe: { scrolling: "auto", preload: !0 }, 11224 swf: { 11225 wmode: "transparent", 11226 allowfullscreen: "true", 11227 allowscriptaccess: "always", 11228 }, 11229 keys: { 11230 next: { 13: "left", 34: "up", 39: "left", 40: "up" }, 11231 prev: { 8: "right", 33: "down", 37: "right", 38: "down" }, 11232 close: [27], 11233 play: [32], 11234 toggle: [70], 11235 }, 11236 direction: { next: "left", prev: "right" }, 11237 scrollOutside: !0, 11238 index: 0, 11239 type: null, 11240 href: null, 11241 content: null, 11242 title: null, 11243 tpl: { 11244 wrap: '<div class="fancybox-wrap" tabIndex="-1"><div class="fancybox-skin"><div class="fancybox-outer"><div class="fancybox-inner"></div></div></div></div>', 11245 image: '<img class="fancybox-image" src="{href}" alt="" />', 11246 iframe: 11247 '<iframe id="fancybox-frame{rnd}" name="fancybox-frame{rnd}" class="fancybox-iframe" frameborder="0" vspace="0" hspace="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen' + 11248 (r ? ' allowtransparency="true"' : "") + 11249 "></iframe>", 11250 error: 11251 '<p class="fancybox-error">The requested content cannot be loaded.<br/>Please try again later.</p>', 11252 closeBtn: 11253 '<a title="Close" class="fancybox-item fancybox-close" href="javascript:;"></a>', 11254 next: '<a title="Next" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>', 11255 prev: '<a title="Previous" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>', 11256 loading: '<div id="fancybox-loading"><div></div></div>', 11257 }, 11258 openEffect: "fade", 11259 openSpeed: 250, 11260 openEasing: "swing", 11261 openOpacity: !0, 11262 openMethod: "zoomIn", 11263 closeEffect: "fade", 11264 closeSpeed: 250, 11265 closeEasing: "swing", 11266 closeOpacity: !0, 11267 closeMethod: "zoomOut", 11268 nextEffect: "elastic", 11269 nextSpeed: 250, 11270 nextEasing: "swing", 11271 nextMethod: "changeIn", 11272 prevEffect: "elastic", 11273 prevSpeed: 250, 11274 prevEasing: "swing", 11275 prevMethod: "changeOut", 11276 helpers: { overlay: !0, title: !0 },
11277 onCancel: H.noop, 11278 beforeLoad: H.noop, 11279 afterLoad: H.noop, 11280 beforeShow: H.noop, 11281 afterShow: H.noop, 11282 beforeChange: H.noop, 11283 beforeClose: H.noop, 11284 afterClose: H.noop, 11285 }, 11286 group: {}, 11287 opts: {}, 11288 previous: null, 11289 coming: null, 11290 current: null, 11291 isActive: !1, 11292 isOpen: !1, 11293 isOpened: !1, 11294 wrap: null, 11295 skin: null, 11296 outer: null, 11297 inner: null, 11298 player: { timer: null, isActive: !1 }, 11299 ajaxLoad: null, 11300 imgPreload: null, 11301 transitions: {}, 11302 helpers: {}, 11303 open: function (d, u) { 11304 if (d && (H.isPlainObject(u) || (u = {}), !1 !== M.close(!0))) 11305 return ( 11306 H.isArray(d) || (d = h(d) ? H(d).get() : [d]), 11307 H.each(d, function (e, t) { 11308 var o, 11309 n, 11310 i, 11311 s, 11312 r, 11313 a, 11314 l, 11315 c = {}; 11316 "object" === H.type(t) && 11317 (t.nodeType && (t = H(t)), 11318 h(t) 11319 ? ((c = { 11320 href: t.data("fancybox-href") || t.attr("href"), 11321 title: H("<div/>") 11322 .text(t.data("fancybox-title") || t.attr("title") || "") 11323 .html(), 11324 isDom: !0, 11325 element: t, 11326 }), 11327 H.metadata && H.extend(!0, c, t.metadata())) 11328 : (c = t)), 11329 (o = u.href || c.href || (f(t) ? t : null)), 11330 (n = u.title !== p ? u.title : c.title || ""), 11331 !(s = (i = u.content || c.content) 11332 ? "html" 11333 : u.type || c.type) && 11334 c.isDom && 11335 (s = 11336 (s = t.data("fancybox-type")) || 11337 ((r = t.prop("class").match(/fancybox\.(\w+)/)) 11338 ? r[1] 11339 : null)), 11340 f(o) && 11341 (s || 11342 (M.isImage(o) 11343 ? (s = "image") 11344 : M.isSWF(o) 11345 ? (s = "swf") 11346 : "#" === o.charAt(0) 11347 ? (s = "inline") 11348 : f(t) && ((s = "html"), (i = t))), 11349 "ajax" === s && 11350 ((o = (a = o.split(/\s+/, 2)).shift()), (l = a.shift()))), 11351 i || 11352 ("inline" === s 11353 ? o 11354 ? (i = H(f(o) ? o.replace(/.*(?=#[^\s]+$)/, "") : o)) 11355 : c.isDom && (i = t) 11356 : "html" === s 11357 ? (i = o) 11358 : s || o || !c.isDom || ((s = "inline"), (i = t))), 11359 H.extend(c, { 11360 href: o, 11361 type: s, 11362 content: i, 11363 title: n, 11364 selector: l, 11365 }), 11366 (d[e] = c); 11367 }), 11368 (M.opts = H.extend(!0, {}, M.defaults, u)), 11369 u.keys !== p && 11370 (M.opts.keys = !!u.keys && H.extend({}, M.defaults.keys, u.keys)), 11371 (M.group = d), 11372 M._start(M.opts.index) 11373 ); 11374 }, 11375 cancel: function () { 11376 var e = M.coming; 11377 (e && !1 === M.trigger("onCancel")) || 11378 (M.hideLoading(), 11379 e && 11380 (M.ajaxLoad && M.ajaxLoad.abort(), 11381 (M.ajaxLoad = null), 11382 M.imgPreload && (M.imgPreload.onload = M.imgPreload.onerror = null), 11383 e.wrap && e.wrap.stop(!0, !0).trigger("onReset").remove(), 11384 (M.coming = null), 11385 M.current || M._afterZoomOut(e))); 11386 }, 11387 close: function (e) { 11388 M.cancel(), 11389 !1 !== M.trigger("beforeClose") && 11390 (M.unbindEvents(), 11391 M.isActive && 11392 (M.isOpen && !0 !== e 11393 ? ((M.isOpen = M.isOpened = !1), 11394 (M.isClosing = !0), 11395 H(".fancybox-item, .fancybox-nav").remove(), 11396 M.wrap.stop(!0, !0).removeClass("fancybox-opened"), 11397 M.transitions[M.current.closeMethod]()) 11398 : (H(".fancybox-wrap").stop(!0).trigger("onReset").remove(), 11399 M._afterZoomOut()))); 11400 }, 11401 play: function (e) { 11402 function t() {
11403 clearTimeout(M.player.timer); 11404 } 11405 function o() { 11406 t(), 11407 M.current && 11408 M.player.isActive && 11409 (M.player.timer = setTimeout(M.next, M.current.playSpeed)); 11410 } 11411 function n() { 11412 t(), 11413 c.unbind(".player"), 11414 (M.player.isActive = !1), 11415 M.trigger("onPlayEnd"); 11416 } 11417 !0 === e || (!M.player.isActive && !1 !== e) 11418 ? M.current && 11419 (M.current.loop || M.current.index < M.group.length - 1) && 11420 ((M.player.isActive = !0), 11421 c.bind({ 11422 "onCancel.player beforeClose.player": n, 11423 "onUpdate.player": o, 11424 "beforeLoad.player": t, 11425 }), 11426 o(), 11427 M.trigger("onPlayStart")) 11428 : n(); 11429 }, 11430 next: function (e) { 11431 var t = M.current; 11432 t && (f(e) || (e = t.direction.next), M.jumpto(t.index + 1, e, "next")); 11433 }, 11434 prev: function (e) { 11435 var t = M.current; 11436 t && (f(e) || (e = t.direction.prev), M.jumpto(t.index - 1, e, "prev")); 11437 }, 11438 jumpto: function (e, t, o) { 11439 var n = M.current; 11440 n && 11441 ((e = I(e)), 11442 (M.direction = t || n.direction[e >= n.index ? "next" : "prev"]), 11443 (M.router = o || "jumpto"), 11444 n.loop && 11445 (e < 0 && (e = n.group.length + (e % n.group.length)), 11446 (e %= n.group.length)), 11447 n.group[e] !== p && (M.cancel(), M._start(e))); 11448 }, 11449 reposition: function (e, t) { 11450 var o, 11451 n = M.current, 11452 i = n ? n.wrap : null; 11453 i && 11454 ((o = M._getPosition(t)), 11455 e && "scroll" === e.type 11456 ? (delete o.position, i.stop(!0, !0).animate(o, 200)) 11457 : (i.css(o), (n.pos = H.extend({}, n.dim, o)))); 11458 }, 11459 update: function (t) { 11460 var o = t && t.originalEvent && t.originalEvent.type, 11461 n = !o || "orientationchange" === o; 11462 n && (clearTimeout(a), (a = null)), 11463 M.isOpen && 11464 !a && 11465 (a = setTimeout( 11466 function () { 11467 var e = M.current; 11468 e && 11469 !M.isClosing && 11470 (M.wrap.removeClass("fancybox-tmp"), 11471 (n || "load" === o || ("resize" === o && e.autoResize)) && 11472 M._setDimension(), 11473 ("scroll" === o && e.canShrink) || M.reposition(t), 11474 M.trigger("onUpdate"), 11475 (a = null)); 11476 }, 11477 n && !d ? 0 : 300 11478 )); 11479 }, 11480 toggle: function (e) { 11481 M.isOpen && 11482 ((M.current.fitToView = 11483 "boolean" === H.type(e) ? e : !M.current.fitToView), 11484 d && 11485 (M.wrap.removeAttr("style").addClass("fancybox-tmp"), 11486 M.trigger("onUpdate")), 11487 M.update()); 11488 }, 11489 hideLoading: function () { 11490 c.unbind(".loading"), H("#fancybox-loading").remove(); 11491 }, 11492 showLoading: function () { 11493 var e, t; 11494 M.hideLoading(), 11495 (e = H(M.opts.tpl.loading).click(M.cancel).appendTo("body")), 11496 c.bind("keydown.loading", function (e) { 11497 27 === (e.which || e.keyCode) && (e.preventDefault(), M.cancel()); 11498 }), 11499 M.defaults.fixed || 11500 ((t = M.getViewport()), 11501 e.css({ 11502 position: "absolute", 11503 top: 0.5 * t.h + t.y, 11504 left: 0.5 * t.w + t.x, 11505 })), 11506 M.trigger("onLoading"); 11507 }, 11508 getViewport: function () { 11509 var e = (M.current && M.current.locked) || !1, 11510 t = { x: n.scrollLeft(), y: n.scrollTop() }; 11511 return ( 11512 e && e.length 11513 ? ((t.w = e[0].clientWidth), (t.h = e[0].clientHeight)) 11514 : ((t.w = d && i.innerWidth ? i.innerWidth : n.width()), 11515 (t.h = d && i.innerHeight ? i.innerHeight : n.height())), 11516 t 11517 ); 11518 }, 11519 unbindEvents: function () { 11520 M.wrap && h(M.wrap) && M.wrap.unbind(".fb"), 11521 c.unbind(".fb"), 11522 n.unbind(".fb"); 11523 }, 11524 bindEvents: function () { 11525 var t, 11526 l = M.current; 11527 l && 11528 (n.bind( 11529 "orientationchange.fb" + 11530 (d ? "" : " resize.fb") + 11531 (l.autoCenter && !l.locked ? " scroll.fb" : ""), 11532 M.update 11533 ), 11534 (t = l.keys) && 11535 c.bind("keydown.fb", function (o) { 11536 var n = o.which || o.keyCode, 11537 e = o.target || o.srcElement; 11538 if (27 === n && M.coming) return !1; 11539 o.ctrlKey || 11540 o.altKey || 11541 o.shiftKey || 11542 o.metaKey || 11543 (e && (e.type || H(e).is("[contenteditable]"))) || 11544 H.each(t, function (e, t) { 11545 return 1 < l.group.length && t[n] !== p 11546 ? (M[e](t[n]), o.preventDefault(), !1) 11547 : -1 < H.inArray(n, t) 11548 ? (M[e](), o.preventDefault(), !1) 11549 : void 0; 11550 }); 11551 }), 11552 H.fn.mousewheel && 11553 l.mouseWheel && 11554 M.wrap.bind("mousewheel.fb", function (e, t, o, n) { 11555 for ( 11556 var i, s = e.target || null, r = H(s), a = !1; 11557 r.length && 11558 !(a || r.is(".fancybox-skin") || r.is(".fancybox-wrap")); 11559 11560 ) 11561 (a = 11562 (i = r[0]) && 11563 !(i.style.overflow && "hidden" === i.style.overflow) && 11564 ((i.clientWidth && i.scrollWidth > i.clientWidth) || 11565 (i.clientHeight && i.scrollHeight > i.clientHeight))), 11566 (r = H(r).parent()); 11567 0 === t || 11568 a || 11569 (1 < M.group.length && 11570 !l.canShrink && 11571 (0 < n || 0 < o 11572 ? M.prev(0 < n ? "down" : "left") 11573 : (n < 0 || o < 0) && M.next(n < 0 ? "up" : "right"), 11574 e.preventDefault())); 11575 })); 11576 }, 11577 trigger: function (o, e) { 11578 var t, 11579 n = e || M.coming || M.current; 11580 if (n) { 11581 if ( 11582 (H.isFunction(n[o]) && 11583 (t = n[o].apply(n, Array.prototype.slice.call(arguments, 1))), 11584 !1 === t) 11585 ) 11586 return !1; 11587 n.helpers && 11588 H.each(n.helpers, function (e, t) { 11589 t && 11590 M.helpers[e] && 11591 H.isFunction(M.helpers[e][o]) && 11592 M.helpers[e][o](H.extend(!0, {}, M.helpers[e].defaults, t), n); 11593 }); 11594 } 11595 c.trigger(o); 11596 }, 11597 isImage: function (e) { 11598 return ( 11599 f(e) && 11600 e.match( 11601 /(^data:image\/.*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg)((\?|#).*)?$)/i 11602 ) 11603 ); 11604 }, 11605 isSWF: function (e) { 11606 return f(e) && e.match(/\.(swf)((\?|#).*)?$/i); 11607 }, 11608 _start: function (e) { 11609 var t, 11610 o, 11611 n, 11612 i, 11613 s, 11614 r = {}; 11615 if (((e = I(e)), !(t = M.group[e] || null))) return !1; 11616 if ( 11617 ((i = (r = H.extend(!0, {}, M.opts, t)).margin), 11618 (s = r.padding), 11619 "number" === H.type(i) && (r.margin = [i, i, i, i]), 11620 "number" === H.type(s) && (r.padding = [s, s, s, s]), 11621 r.modal && 11622 H.extend(!0, r, { 11623 closeBtn: !1, 11624 closeClick: !1, 11625 nextClick: !1, 11626 arrows: !1, 11627 mouseWheel: !1, 11628 keys: null, 11629 helpers: { overlay: { closeClick: !1 } }, 11630 }), 11631 r.autoSize && (r.autoWidth = r.autoHeight = !0), 11632 "auto" === r.width && (r.autoWidth = !0), 11633 "auto" === r.height && (r.autoHeight = !0), 11634 (r.group = M.group), 11635 (r.index = e), 11636 (M.coming = r), 11637 !1 !== M.trigger("beforeLoad")) 11638 ) { 11639 if (((n = r.type), (o = r.href), !n)) 11640 return ( 11641 (M.coming = null),
11642 !(!M.current || !M.router || "jumpto" === M.router) && 11643 ((M.current.index = e), M[M.router](M.direction)) 11644 ); 11645 if ( 11646 ((M.isActive = !0), 11647 ("image" !== n && "swf" !== n) || 11648 ((r.autoHeight = r.autoWidth = !1), (r.scrolling = "visible")), 11649 "image" === n && (r.aspectRatio = !0), 11650 "iframe" === n && d && (r.scrolling = "scroll"), 11651 (r.wrap = H(r.tpl.wrap) 11652 .addClass( 11653 "fancybox-" + 11654 (d ? "mobile" : "desktop") + 11655 " fancybox-type-" + 11656 n + 11657 " fancybox-tmp " + 11658 r.wrapCSS 11659 ) 11660 .appendTo(r.parent || "body")), 11661 H.extend(r, { 11662 skin: H(".fancybox-skin", r.wrap), 11663 outer: H(".fancybox-outer", r.wrap), 11664 inner: H(".fancybox-inner", r.wrap), 11665 }), 11666 H.each(["Top", "Right", "Bottom", "Left"], function (e, t) { 11667 r.skin.css("padding" + t, N(r.padding[e])); 11668 }), 11669 M.trigger("onReady"), 11670 "inline" === n || "html" === n) 11671 ) { 11672 if (!r.content || !r.content.length) return M._error("content"); 11673 } else if (!o) return M._error("href"); 11674 "image" === n 11675 ? M._loadImage() 11676 : "ajax" === n 11677 ? M._loadAjax() 11678 : "iframe" === n 11679 ? M._loadIframe() 11680 : M._afterLoad(); 11681 } else M.coming = null; 11682 }, 11683 _error: function (e) { 11684 H.extend(M.coming, { 11685 type: "html", 11686 autoWidth: !0, 11687 autoHeight: !0, 11688 minWidth: 0, 11689 minHeight: 0, 11690 scrolling: "no", 11691 hasError: e, 11692 content: M.coming.tpl.error, 11693 }), 11694 M._afterLoad(); 11695 }, 11696 _loadImage: function () { 11697 var e = (M.imgPreload = new Image()); 11698 (e.onload = function () { 11699 (this.onload = this.onerror = null), 11700 (M.coming.width = this.width / M.opts.pixelRatio), 11701 (M.coming.height = this.height / M.opts.pixelRatio), 11702 M._afterLoad(); 11703 }), 11704 (e.onerror = function () { 11705 (this.onload = this.onerror = null), M._error("image"); 11706 }), 11707 (e.src = M.coming.href), 11708 !0 !== e.complete && M.showLoading(); 11709 }, 11710 _loadAjax: function () { 11711 var o = M.coming; 11712 M.showLoading(), 11713 (M.ajaxLoad = H.ajax( 11714 H.extend({}, o.ajax, { 11715 url: o.href, 11716 error: function (e, t) { 11717 M.coming && "abort" !== t 11718 ? M._error("ajax", e) 11719 : M.hideLoading(); 11720 }, 11721 success: function (e, t) { 11722 "success" === t && ((o.content = e), M._afterLoad()); 11723 }, 11724 }) 11725 )); 11726 }, 11727 _loadIframe: function () { 11728 var e = M.coming, 11729 t = H(e.tpl.iframe.replace(/\{rnd\}/g, new Date().getTime())) 11730 .attr("scrolling", d ? "auto" : e.iframe.scrolling) 11731 .attr("src", e.href); 11732 H(e.wrap).bind("onReset", function () { 11733 try { 11734 H(this) 11735 .find("iframe") 11736 .hide() 11737 .attr("src", "//about:blank") 11738 .end() 11739 .empty(); 11740 } catch (e) {} 11741 }), 11742 e.iframe.preload && 11743 (M.showLoading(), 11744 t.one("load", function () { 11745 H(this).data("ready", 1), 11746 d || H(this).bind("load.fb", M.update), 11747 H(this) 11748 .parents(".fancybox-wrap") 11749 .width("100%") 11750 .removeClass("fancybox-tmp") 11751 .show(), 11752 M._afterLoad(); 11753 })), 11754 (e.content = t.appendTo(e.inner)), 11755 e.iframe.preload || M._afterLoad(); 11756 }, 11757 _preloadImages: function () { 11758 for ( 11759 var e, 11760 t = M.group, 11761 o = M.current, 11762 n = t.length, 11763 i = o.preload ? Math.min(o.preload, n - 1) : 0, 11764 s = 1; 11765 s <= i; 11766 s += 1 11767 ) 11768 "image" === (e = t[(o.index + s) % n]).type && 11769 e.href && 11770 (new Image().src = e.href); 11771 }, 11772 _afterLoad: function () { 11773 var e, 11774 o, 11775 t, 11776 n, 11777 i, 11778 s, 11779 r = M.coming, 11780 a = M.current, 11781 l = "fancybox-placeholder"; 11782 if ((M.hideLoading(), r && !1 !== M.isActive)) { 11783 if (!1 === M.trigger("afterLoad", r, a)) 11784 return ( 11785 r.wrap.stop(!0).trigger("onReset").remove(), 11786 void (M.coming = null) 11787 ); 11788 switch ( 11789 (a && 11790 (M.trigger("beforeChange", a), 11791 a.wrap 11792 .stop(!0) 11793 .removeClass("fancybox-opened") 11794 .find(".fancybox-item, .fancybox-nav") 11795 .remove()), 11796 M.unbindEvents(), 11797 (o = (e = r).content), 11798 (t = r.type), 11799 (n = r.scrolling), 11800 H.extend(M, { 11801 wrap: e.wrap, 11802 skin: e.skin, 11803 outer: e.outer, 11804 inner: e.inner, 11805 current: e, 11806 previous: a, 11807 }), 11808 (i = e.href), 11809 t) 11810 ) { 11811 case "inline": 11812 case "ajax": 11813 case "html": 11814 e.selector 11815 ? (o = H("<div>").html(o).find(e.selector)) 11816 : h(o) && 11817 (o.data(l) || 11818 o.data( 11819 l, 11820 H('<div class="' + l + '"></div>') 11821 .insertAfter(o) 11822 .hide() 11823 ), 11824 (o = o.show().detach()),
11825 e.wrap.bind("onReset", function () { 11826 H(this).find(o).length && 11827 o.hide().replaceAll(o.data(l)).data(l, !1); 11828 })); 11829 break; 11830 case "image": 11831 o = e.tpl.image.replace(/\{href\}/g, i); 11832 break; 11833 case "swf": 11834 (o = 11835 '<object id="fancybox-swf" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%"><param name="movie" value="' + 11836 i + 11837 '"></param>'), 11838 (s = ""), 11839 H.each(e.swf, function (e, t) { 11840 (o += '<param name="' + e + '" value="' + t + '"></param>'), 11841 (s += " " + e + '="' + t + '"'); 11842 }), 11843 (o += 11844 '<embed src="' + 11845 i + 11846 '" type="application/x-shockwave-flash" width="100%" height="100%"' + 11847 s + 11848 "></embed></object>"); 11849 } 11850 (h(o) && o.parent().is(e.inner)) || e.inner.append(o), 11851 M.trigger("beforeShow"), 11852 e.inner.css( 11853 "overflow", 11854 "yes" === n ? "scroll" : "no" === n ? "hidden" : n 11855 ), 11856 M._setDimension(), 11857 M.reposition(), 11858 (M.isOpen = !1), 11859 (M.coming = null), 11860 M.bindEvents(), 11861 M.isOpened 11862 ? a.prevMethod && M.transitions[a.prevMethod]() 11863 : H(".fancybox-wrap") 11864 .not(e.wrap) 11865 .stop(!0) 11866 .trigger("onReset") 11867 .remove(), 11868 M.transitions[M.isOpened ? e.nextMethod : e.openMethod](), 11869 M._preloadImages(); 11870 } 11871 }, 11872 _setDimension: function () { 11873 var e, 11874 t, 11875 o, 11876 n, 11877 i, 11878 s, 11879 r, 11880 a, 11881 l, 11882 c, 11883 d, 11884 u, 11885 p, 11886 h, 11887 f, 11888 m, 11889 g, 11890 v = M.getViewport(), 11891 y = 0, 11892 w = M.wrap, 11893 b = M.skin, 11894 x = M.inner, 11895 k = M.current, 11896 T = k.width, 11897 C = k.height, 11898 S = k.minWidth, 11899 z = k.minHeight, 11900 E = k.maxWidth, 11901 W = k.maxHeight, 11902 L = k.scrolling, 11903 A = k.scrollOutside ? k.scrollbarWidth : 0, 11904 $ = k.margin, 11905 F = I($[1] + $[3]), 11906 O = I($[0] + $[2]); 11907 if ( 11908 (w 11909 .add(b) 11910 .add(x) 11911 .width("auto") 11912 .height("auto") 11913 .removeClass("fancybox-tmp"), 11914 (i = F + (o = I(b.outerWidth(!0) - b.width()))), 11915 (s = O + (n = I(b.outerHeight(!0) - b.height()))), 11916 (r = D(T) ? ((v.w - i) * I(T)) / 100 : T), 11917 (a = D(C) ? ((v.h - s) * I(C)) / 100 : C), 11918 "iframe" === k.type) 11919 ) { 11920 if (((m = k.content), k.autoHeight && m && 1 === m.data("ready"))) 11921 try { 11922 m[0].contentWindow.document.location && 11923 (x.width(r).height(9999), 11924 (g = m.contents().find("body")), 11925 A && g.css("overflow-x", "hidden"), 11926 (a = g.outerHeight(!0))); 11927 } catch (e) {} 11928 } else 11929 (k.autoWidth || k.autoHeight) && 11930 (x.addClass("fancybox-tmp"), 11931 k.autoWidth || x.width(r), 11932 k.autoHeight || x.height(a), 11933 k.autoWidth && (r = x.width()), 11934 k.autoHeight && (a = x.height()), 11935 x.removeClass("fancybox-tmp")); 11936 if ( 11937 ((T = I(r)), 11938 (C = I(a)), 11939 (d = r / a), 11940 (S = I(D(S) ? I(S, "w") - i : S)), 11941 (E = I(D(E) ? I(E, "w") - i : E)), 11942 (z = I(D(z) ? I(z, "h") - s : z)), 11943 (l = E), 11944 (c = W = I(D(W) ? I(W, "h") - s : W)), 11945 k.fitToView && 11946 ((E = Math.min(v.w - i, E)), (W = Math.min(v.h - s, W))), 11947 (h = v.w - F), 11948 (f = v.h - O), 11949 k.aspectRatio 11950 ? (E < T && (C = I((T = E) / d)), 11951 W < C && (T = I((C = W) * d)), 11952 T < S && (C = I((T = S) / d)), 11953 C < z && (T = I((C = z) * d))) 11954 : ((T = Math.max(S, Math.min(T, E))), 11955 k.autoHeight && 11956 "iframe" !== k.type && 11957 (x.width(T), (C = x.height())), 11958 (C = Math.max(z, Math.min(C, W)))), 11959 k.fitToView) 11960 ) 11961 if ( 11962 (x.width(T).height(C), 11963 w.width(T + o), 11964 (u = w.width()), 11965 (p = w.height()), 11966 k.aspectRatio) 11967 ) 11968 for (; (h < u || f < p) && S < T && z < C && !(19 < y++); ) 11969 (C = Math.max(z, Math.min(W, C - 10))), 11970 (T = I(C * d)) < S && (C = I((T = S) / d)), 11971 E < T && (C = I((T = E) / d)), 11972 x.width(T).height(C), 11973 w.width(T + o), 11974 (u = w.width()), 11975 (p = w.height()); 11976 else 11977 (T = Math.max(S, Math.min(T, T - (u - h)))), 11978 (C = Math.max(z, Math.min(C, C - (p - f)))); 11979 A && "auto" === L && C < a && T + o + A < h && (T += A), 11980 x.width(T).height(C), 11981 w.width(T + o), 11982 (u = w.width()), 11983 (p = w.height()), 11984 (e = (h < u || f < p) && S < T && z < C), 11985 (t = k.aspectRatio 11986 ? T < l && C < c && T < r && C < a 11987 : (T < l || C < c) && (T < r || C < a)), 11988 H.extend(k, { 11989 dim: { width: N(u), height: N(p) }, 11990 origWidth: r, 11991 origHeight: a, 11992 canShrink: e, 11993 canExpand: t, 11994 wPadding: o, 11995 hPadding: n, 11996 wrapSpace: p - b.outerHeight(!0), 11997 skinSpace: b.height() - C, 11998 }), 11999 !m && k.autoHeight && z < C && C < W && !t && x.height("auto"); 12000 }, 12001 _getPosition: function (e) { 12002 var t = M.current, 12003 o = M.getViewport(), 12004 n = t.margin, 12005 i = M.wrap.width() + n[1] + n[3], 12006 s = M.wrap.height() + n[0] + n[2], 12007 r = { position: "absolute", top: n[0], left: n[3] }; 12008 return ( 12009 t.autoCenter && t.fixed && !e && s <= o.h && i <= o.w 12010 ? (r.position = "fixed") 12011 : t.locked || ((r.top += o.y), (r.left += o.x)), 12012 (r.top = N(Math.max(r.top, r.top + (o.h - s) * t.topRatio))), 12013 (r.left = N(Math.max(r.left, r.left + (o.w - i) * t.leftRatio))), 12014 r 12015 ); 12016 }, 12017 _afterZoomIn: function () { 12018 var t = M.current; 12019 t && 12020 ((M.isOpen = M.isOpened = !0), 12021 M.wrap 12022 .css("overflow", "visible") 12023 .addClass("fancybox-opened") 12024 .hide() 12025 .show(0), 12026 M.update(), 12027 (t.closeClick || (t.nextClick && 1 < M.group.length)) && 12028 M.inner.css("cursor", "pointer").bind("click.fb", function (e) { 12029 H(e.target).is("a") || 12030 H(e.target).parent().is("a") || 12031 (e.preventDefault(), M[t.closeClick ? "close" : "next"]()); 12032 }), 12033 t.closeBtn && 12034 H(t.tpl.closeBtn) 12035 .appendTo(M.skin) 12036 .bind("click.fb", function (e) { 12037 e.preventDefault(), M.close(); 12038 }), 12039 t.arrows && 12040 1 < M.group.length && 12041 ((t.loop || 0 < t.index) && 12042 H(t.tpl.prev).appendTo(M.outer).bind("click.fb", M.prev), 12043 (t.loop || t.index < M.group.length - 1) && 12044 H(t.tpl.next).appendTo(M.outer).bind("click.fb", M.next)), 12045 M.trigger("afterShow"), 12046 t.loop || t.index !== t.group.length - 1 12047 ? M.opts.autoPlay && 12048 !M.player.isActive && 12049 ((M.opts.autoPlay = !1), M.play(!0)) 12050 : M.play(!1)); 12051 }, 12052 _afterZoomOut: function (e) { 12053 (e = e || M.current), 12054 H(".fancybox-wrap").trigger("onReset").remove(), 12055 H.extend(M, { 12056 group: {}, 12057 opts: {}, 12058 router: !1, 12059 current: null, 12060 isActive: !1, 12061 isOpened: !1, 12062 isOpen: !1, 12063 isClosing: !1, 12064 wrap: null, 12065 skin: null, 12066 outer: null, 12067 inner: null, 12068 }), 12069 M.trigger("afterClose", e); 12070 }, 12071 }), 12072 (M.transitions = { 12073 getOrigPosition: function () { 12074 var e = M.current, 12075 t = e.element, 12076 o = e.orig, 12077 n = {}, 12078 i = 50, 12079 s = 50, 12080 r = e.hPadding, 12081 a = e.wPadding, 12082 l = M.getViewport(); 12083 return ( 12084 !o && 12085 e.isDom && 12086 t.is(":visible") && 12087 ((o = t.find("img:first")).length || (o = t)), 12088 h(o) 12089 ? ((n = o.offset()), 12090 o.is("img") && ((i = o.outerWidth()), (s = o.outerHeight()))) 12091 : ((n.top = l.y + (l.h - s) * e.topRatio), 12092 (n.left = l.x + (l.w - i) * e.leftRatio)), 12093 ("fixed" !== M.wrap.css("position") && !e.locked) || 12094 ((n.top -= l.y), (n.left -= l.x)), 12095 (n = { 12096 top: N(n.top - r * e.topRatio), 12097 left: N(n.left - a * e.leftRatio), 12098 width: N(i + a), 12099 height: N(s + r), 12100 }) 12101 ); 12102 }, 12103 step: function (e, t) { 12104 var o, 12105 n, 12106 i = t.prop, 12107 s = M.current, 12108 r = s.wrapSpace, 12109 a = s.skinSpace; 12110 ("width" !== i && "height" !== i) || 12111 ((o = t.end === t.start ? 1 : (e - t.start) / (t.end - t.start)), 12112 M.isClosing && (o = 1 - o), 12113 (n = e - ("width" === i ? s.wPadding : s.hPadding)), 12114 M.skin[i](I("width" === i ? n : n - r * o)), 12115 M.inner[i](I("width" === i ? n : n - r * o - a * o))); 12116 }, 12117 zoomIn: function () { 12118 var e = M.current, 12119 t = e.pos, 12120 o = e.openEffect, 12121 n = "elastic" === o, 12122 i = H.extend({ opacity: 1 }, t); 12123 delete i.position, 12124 n 12125 ? ((t = this.getOrigPosition()), 12126 e.openOpacity && (t.opacity = 0.1)) 12127 : "fade" === o && (t.opacity = 0.1), 12128 M.wrap 12129 .css(t) 12130 .animate(i, { 12131 duration: "none" === o ? 0 : e.openSpeed, 12132 easing: e.openEasing, 12133 step: n ? this.step : null, 12134 complete: M._afterZoomIn, 12135 }); 12136 }, 12137 zoomOut: function () { 12138 var e = M.current, 12139 t = e.closeEffect, 12140 o = "elastic" === t, 12141 n = { opacity: 0.1 }; 12142 o && 12143 ((n = this.getOrigPosition()), e.closeOpacity && (n.opacity = 0.1)), 12144 M.wrap.animate(n, { 12145 duration: "none" === t ? 0 : e.closeSpeed, 12146 easing: e.closeEasing, 12147 step: o ? this.step : null, 12148 complete: M._afterZoomOut, 12149 }); 12150 }, 12151 changeIn: function () { 12152 var e, 12153 t = M.current, 12154 o = t.nextEffect, 12155 n = t.pos, 12156 i = { opacity: 1 }, 12157 s = M.direction; 12158 (n.opacity = 0.1), 12159 "elastic" === o && 12160 ((e = "down" === s || "up" === s ? "top" : "left"), 12161 "down" === s || "right" === s 12162 ? ((n[e] = N(I(n[e]) - 200)), (i[e] = "+=200px")) 12163 : ((n[e] = N(I(n[e]) + 200)), (i[e] = "-=200px"))), 12164 "none" === o 12165 ? M._afterZoomIn() 12166 : M.wrap 12167 .css(n) 12168 .animate(i, { 12169 duration: t.nextSpeed, 12170 easing: t.nextEasing, 12171 complete: M._afterZoomIn, 12172 }); 12173 }, 12174 changeOut: function () { 12175 var e = M.previous, 12176 t = e.prevEffect, 12177 o = { opacity: 0.1 }, 12178 n = M.direction; 12179 "elastic" === t && 12180 (o["down" === n || "up" === n ? "top" : "left"] = 12181 ("up" === n || "left" === n ? "-" : "+") + "=200px"),
12182 e.wrap.animate(o, { 12183 duration: "none" === t ? 0 : e.prevSpeed, 12184 easing: e.prevEasing, 12185 complete: function () { 12186 H(this).trigger("onReset").remove(); 12187 }, 12188 }); 12189 }, 12190 }), 12191 (M.helpers.overlay = { 12192 defaults: { 12193 closeClick: !0, 12194 speedOut: 200, 12195 showEarly: !0, 12196 css: {}, 12197 locked: !d, 12198 fixed: !0, 12199 }, 12200 overlay: null, 12201 fixed: !1, 12202 el: H("html"), 12203 create: function (e) { 12204 var t; 12205 (e = H.extend({}, this.defaults, e)), 12206 this.overlay && this.close(), 12207 (t = M.coming ? M.coming.parent : e.parent), 12208 (this.overlay = H('<div class="fancybox-overlay"></div>').appendTo( 12209 t && t.length ? t : "body" 12210 )), 12211 (this.fixed = !1), 12212 e.fixed && 12213 M.defaults.fixed && 12214 (this.overlay.addClass("fancybox-overlay-fixed"), 12215 (this.fixed = !0)); 12216 }, 12217 open: function (e) { 12218 var t = this; 12219 (e = H.extend({}, this.defaults, e)), 12220 this.overlay 12221 ? this.overlay.unbind(".overlay").width("auto").height("auto") 12222 : this.create(e), 12223 this.fixed || 12224 (n.bind("resize.overlay", H.proxy(this.update, this)), 12225 this.update()), 12226 e.closeClick && 12227 this.overlay.bind("click.overlay", function (e) { 12228 if (H(e.target).hasClass("fancybox-overlay")) 12229 return M.isActive ? M.close() : t.close(), !1; 12230 }), 12231 this.overlay.css(e.css).show(); 12232 }, 12233 close: function () { 12234 n.unbind("resize.overlay"), 12235 this.el.hasClass("fancybox-lock") && 12236 (H(".fancybox-margin").removeClass("fancybox-margin"), 12237 this.el.removeClass("fancybox-lock"), 12238 n.scrollTop(this.scrollV).scrollLeft(this.scrollH)), 12239 H(".fancybox-overlay").remove().hide(), 12240 H.extend(this, { overlay: null, fixed: !1 }); 12241 }, 12242 update: function () { 12243 var e, 12244 t = "100%"; 12245 this.overlay.width(t).height("100%"), 12246 r 12247 ? ((e = Math.max( 12248 o.documentElement.offsetWidth, 12249 o.body.offsetWidth 12250 )), 12251 c.width() > e && (t = c.width())) 12252 : c.width() > n.width() && (t = c.width()), 12253 this.overlay.width(t).height(c.height()); 12254 }, 12255 onReady: function (e, t) { 12256 var o = this.overlay; 12257 H(".fancybox-overlay").stop(!0, !0), 12258 o || this.create(e), 12259 e.locked && 12260 this.fixed && 12261 t.fixed && 12262 ((t.locked = this.overlay.append(t.wrap)), (t.fixed = !1)), 12263 !0 === e.showEarly && this.beforeShow.apply(this, arguments); 12264 }, 12265 beforeShow: function (e, t) { 12266 t.locked && 12267 !this.el.hasClass("fancybox-lock") && 12268 (!1 !== this.fixPosition && 12269 H("*:not(object)") 12270 .filter(function () { 12271 return ( 12272 "fixed" === H(this).css("position") && 12273 !H(this).hasClass("fancybox-overlay") && 12274 !H(this).hasClass("fancybox-wrap") 12275 ); 12276 }) 12277 .addClass("fancybox-margin"), 12278 this.el.addClass("fancybox-margin"), 12279 (this.scrollV = n.scrollTop()), 12280 (this.scrollH = n.scrollLeft()), 12281 this.el.addClass("fancybox-lock"), 12282 n.scrollTop(this.scrollV).scrollLeft(this.scrollH)), 12283 this.open(e); 12284 }, 12285 onUpdate: function () { 12286 this.fixed || this.update(); 12287 }, 12288 afterClose: function (e) { 12289 this.overlay && 12290 !M.coming && 12291 this.overlay.fadeOut(e.speedOut, H.proxy(this.close, this)); 12292 }, 12293 }), 12294 (M.helpers.title = { 12295 defaults: { type: "float", position: "bottom" }, 12296 beforeShow: function (e) { 12297 var t, 12298 o, 12299 n = M.current, 12300 i = n.title, 12301 s = e.type; 12302 if ( 12303 (H.isFunction(i) && (i = i.call(n.element, n)), 12304 f(i) && "" !== H.trim(i)) 12305 ) { 12306 switch ( 12307 ((t = H( 12308 '<div class="fancybox-title fancybox-title-' + 12309 s +
12310 '-wrap">' + 12311 i + 12312 "</div>" 12313 )), 12314 s) 12315 ) { 12316 case "inside": 12317 o = M.skin; 12318 break; 12319 case "outside": 12320 o = M.wrap; 12321 break; 12322 case "over": 12323 o = M.inner; 12324 break; 12325 default: 12326 (o = M.skin), 12327 t.appendTo("body"), 12328 r && t.width(t.width()), 12329 t.wrapInner('<span class="child"></span>'), 12330 (M.current.margin[2] += Math.abs(I(t.css("margin-bottom")))); 12331 } 12332 t["top" === e.position ? "prependTo" : "appendTo"](o); 12333 } 12334 }, 12335 }), 12336 (H.fn.fancybox = function (s) { 12337 function e(e) { 12338 var t, 12339 o, 12340 n = H(this).blur(), 12341 i = l; 12342 e.ctrlKey || 12343 e.altKey || 12344 e.shiftKey || 12345 e.metaKey || 12346 n.is(".fancybox-wrap") || 12347 ((t = s.groupAttr || "data-fancybox-group"), 12348 (o = n.attr(t)) || ((t = "rel"), (o = n.get(0)[t])), 12349 o && 12350 "" !== o && 12351 "nofollow" !== o && 12352 (i = (n = (n = a.length ? H(a) : r).filter( 12353 "[" + t + '="' + o + '"]' 12354 )).index(this)), 12355 (s.index = i), 12356 !1 !== M.open(n, s) && e.preventDefault()); 12357 } 12358 var r = H(this), 12359 a = this.selector || "", 12360 l = (s = s || {}).index || 0; 12361 return ( 12362 a && !1 !== s.live 12363 ? c 12364 .undelegate(a, "click.fb-start") 12365 .delegate( 12366 a + ":not('.fancybox-item, .fancybox-nav')", 12367 "click.fb-start", 12368 e 12369 ) 12370 : r.unbind("click.fb-start").bind("click.fb-start", e), 12371 this.filter("[data-fancybox-start=1]").trigger("click"), 12372 this 12373 ); 12374 }), 12375 c.ready(function () { 12376 var e, t, o, n; 12377 H.scrollbarWidth === p && 12378 (H.scrollbarWidth = function () { 12379 var e = H( 12380 '<div style="width:50px;height:50px;overflow:auto"><div/></div>' 12381 ).appendTo("body"), 12382 t = e.children(), 12383 o = t.innerWidth() - t.height(99).innerWidth(); 12384 return e.remove(), o; 12385 }), 12386 H.support.fixedPosition === p && 12387 (H.support.fixedPosition = 12388 ((o = H('<div style="position:fixed;top:20px;"></div>').appendTo( 12389 "body" 12390 )), 12391 (n = 20 === o[0].offsetTop || 15 === o[0].offsetTop), 12392 o.remove(), 12393 n)), 12394 H.extend(M.defaults, { 12395 scrollbarWidth: H.scrollbarWidth(), 12396 fixed: H.support.fixedPosition, 12397 parent: H("body"), 12398 }), 12399 (e = H(i).width()), 12400 s.addClass("fancybox-lock-test"), 12401 (t = H(i).width()), 12402 s.removeClass("fancybox-lock-test"), 12403 H( 12404 "<style type='text/css'>.fancybox-margin{margin-right:" + 12405 (t - e) + 12406 "px;}</style>" 12407 ).appendTo("head"); 12408 }); 12409 })(window, document, jQuery), 12410 "function" != typeof Object.create && 12411 (Object.create = function (e) { 12412 function t() {} 12413 return (t.prototype = e), new t(); 12414 }), 12415 (function (l) { 12416 var o = { 12417 init: function (e, t) { 12418 var o = this; 12419 (o.elem = t), 12420 (o.$elem = l(t)), 12421 (o.imageSrc = o.$elem.data("zoom-image") 12422 ? o.$elem.data("zoom-image") 12423 : o.$elem.attr("src")), 12424 (o.options = l.extend({}, l.fn.elevateZoom.options, e)), 12425 o.options.tint && 12426 ((o.options.lensColour = "none"), (o.options.lensOpacity = "1")), 12427 "inner" == o.options.zoomType && (o.options.showLens = !1), 12428 o.$elem.parent().removeAttr("title").removeAttr("alt"), 12429 (o.zoomImage = o.imageSrc), 12430 o.refresh(1), 12431 l("#" + o.options.gallery + " a").click(function (e) { 12432 return ( 12433 o.options.galleryActiveClass && 12434 (l("#" + o.options.gallery + " a").removeClass( 12435 o.options.galleryActiveClass 12436 ), 12437 l(this).addClass(o.options.galleryActiveClass)), 12438 e.preventDefault(), 12439 l(this).data("zoom-image") 12440 ? (o.zoomImagePre = l(this).data("zoom-image")) 12441 : (o.zoomImagePre = l(this).data("image")), 12442 o.swaptheimage(l(this).data("image"), o.zoomImagePre), 12443 !1 12444 ); 12445 }); 12446 }, 12447 refresh: function (e) { 12448 var t = this; 12449 setTimeout(function () { 12450 t.fetch(t.imageSrc); 12451 }, e || t.options.refresh); 12452 }, 12453 fetch: function (e) { 12454 var t = this, 12455 o = new Image(); 12456 (o.onload = function () { 12457 (t.largeWidth = o.width), 12458 (t.largeHeight = o.height), 12459 t.startZoom(), 12460 (t.currentImage = t.imageSrc), 12461 t.options.onZoomedImageLoaded(t.$elem); 12462 }), 12463 (o.src = e); 12464 }, 12465 startZoom: function () { 12466 var e, 12467 o = this; 12468 (o.nzWidth = o.$elem.width()), 12469 (o.nzHeight = o.$elem.height()), 12470 (o.isWindowActive = !1), 12471 (o.isLensActive = !1), 12472 (o.isTintActive = !1), 12473 (o.overWindow = !1), 12474 o.options.imageCrossfade && 12475 ((o.zoomWrap = o.$elem.wrap( 12476 '<div style="height:' + 12477 o.nzHeight + 12478 "px;
12478width:" + 12479 o.nzWidth + 12480 'px;" class="zoomWrapper" />' 12481 )), 12482 o.$elem.css("position", "absolute")), 12483 (o.zoomLock = 1), 12484 (o.scrollingLock = !1), 12485 (o.changeBgSize = !1), 12486 (o.currentZoomLevel = o.options.zoomLevel), 12487 (o.nzOffset = o.$elem.offset()), 12488 (o.widthRatio = o.largeWidth / o.currentZoomLevel / o.nzWidth), 12489 (o.heightRatio = o.largeHeight / o.currentZoomLevel / o.nzHeight), 12490 "window" == o.options.zoomType && 12491 (o.zoomWindowStyle = 12492 "overflow: hidden;background-position: 0px 0px;text-align:center;background-color: " + 12493 String(o.options.zoomWindowBgColour) + 12494 ";width: " + 12495 String(o.options.zoomWindowWidth) + 12496 "px;height: " + 12497 String(o.options.zoomWindowHeight) + 12498 "px;float: left;background-size: " + 12499 o.largeWidth / o.currentZoomLevel + 12500 "px " + 12501 o.largeHeight / o.currentZoomLevel + 12502 "px;display: none;z-index:100;border: " + 12503 String(o.options.borderSize) + 12504 "px solid " + 12505 o.options.borderColour + 12506 ";background-repeat: no-repeat;position: absolute;"), 12507 "inner" == o.options.zoomType && 12508 ((e = o.$elem.css("border-left-width")), 12509 (o.zoomWindowStyle = 12510 "overflow: hidden;margin-left: " + 12511 String(e) + 12512 ";margin-top: " + 12513 String(e) + 12514 ";background-position: 0px 0px;width: " + 12515 String(o.nzWidth) + 12516 "px;height: " + 12517 String(o.nzHeight) + 12518 "px;px;float: left;display: none;cursor:" + 12519 o.options.cursor + 12520 ";px solid " + 12521 o.options.borderColour + 12522 ";background-repeat: no-repeat;position: absolute;")), 12523 "window" == o.options.zoomType && 12524 ((lensHeight = 12525 o.nzHeight < o.options.zoomWindowWidth / o.widthRatio 12526 ? o.nzHeight 12527 : String(o.options.zoomWindowHeight / o.heightRatio)), 12528 (lensWidth = 12529 o.largeWidth < o.options.zoomWindowWidth 12530 ? o.nzWidth 12531 : o.options.zoomWindowWidth / o.widthRatio), 12532 (o.lensStyle = 12533 "background-position: 0px 0px;width: " + 12534 String(o.options.zoomWindowWidth / o.widthRatio) + 12535 "px;height: " + 12536 String(o.options.zoomWindowHeight / o.heightRatio) + 12537 "px;float: right;display: none;overflow: hidden;z-index: 999;-webkit-transform: translateZ(0);opacity:" + 12538 o.options.lensOpacity + 12539 ";filter: alpha(opacity = " + 12540 100 * o.options.lensOpacity + 12541 "); zoom:1;
12541width:" + 12542 lensWidth + 12543 "px;height:" + 12544 lensHeight + 12545 "px;background-color:" + 12546 o.options.lensColour + 12547 ";cursor:" + 12548 o.options.cursor + 12549 ";border: " + 12550 o.options.lensBorderSize + 12551 "px solid " + 12552 o.options.lensBorderColour + 12553 ";background-repeat: no-repeat;position: absolute;")), 12554 (o.tintStyle = 12555 "display: block;position: absolute;background-color: " + 12556 o.options.tintColour + 12557 ";filter:alpha(opacity=0);opacity: 0;width: " + 12558 o.nzWidth + 12559 "px;height: " + 12560 o.nzHeight + 12561 "px;"), 12562 (o.lensRound = ""), 12563 "lens" == o.options.zoomType && 12564 (o.lensStyle = 12565 "background-position: 0px 0px;float: left;display: none;border: " + 12566 String(o.options.borderSize) + 12567 "px solid " + 12568 o.options.borderColour + 12569 ";width:" + 12570 String(o.options.lensSize) + 12571 "px;height:" + 12572 String(o.options.lensSize) + 12573 "px;background-repeat: no-repeat;position: absolute;"), 12574 "round" == o.options.lensShape && 12575 (o.lensRound = 12576 "border-top-left-radius: " + 12577 String(o.options.lensSize / 2 + o.options.borderSize) + 12578 "px;border-top-right-radius: " + 12579 String(o.options.lensSize / 2 + o.options.borderSize) + 12580 "px;border-bottom-left-radius: " + 12581 String(o.options.lensSize / 2 + o.options.borderSize) + 12582 "px;border-bottom-right-radius: " + 12583 String(o.options.lensSize / 2 + o.options.borderSize) + 12584 "px;"), 12585 (o.zoomContainer = l( 12586 '<div class="zoomContainer" style="-webkit-transform: translateZ(0);position:absolute;left:' + 12587 o.nzOffset.left + 12588 "px;top:" + 12589 o.nzOffset.top + 12590 "px;height:" + 12591 o.nzHeight + 12592 "px;width:" + 12593 o.nzWidth + 12594 'px;"></div>' 12595 )), 12596 l("body").append(o.zoomContainer), 12597 o.options.containLensZoom && 12598 "lens" == o.options.zoomType && 12599 o.zoomContainer.css("overflow", "hidden"), 12600 "inner" != o.options.zoomType && 12601 ((o.zoomLens = l( 12602 "<div class='zoomLens' style='" + 12603 o.lensStyle + 12604 o.lensRound + 12605 "'> </div>" 12606 ) 12607 .appendTo(o.zoomContainer) 12608 .click(function () { 12609 o.$elem.trigger("click"); 12610 })), 12611 o.options.tint && 12612 ((o.tintContainer = l("<div/>").addClass("tintContainer")), 12613 (o.zoomTint = l( 12614 "<div class='zoomTint' style='" + o.tintStyle + "'></div>" 12615 )), 12616 o.zoomLens.wrap(o.tintContainer), 12617 (o.zoomTintcss = o.zoomLens.after(o.zoomTint)), 12618 (o.zoomTintImage = l( 12619 '<img style="position: absolute; left: 0px; top: 0px; max-width: none; width: ' + 12620 o.nzWidth + 12621 "px; height: " + 12622 o.nzHeight + 12623 'px;" src="' + 12624 o.imageSrc + 12625 '">' 12626 ) 12627 .appendTo(o.zoomLens) 12628 .click(function () { 12629 o.$elem.trigger("click"); 12630 })))), 12631 isNaN(o.options.zoomWindowPosition) 12632 ? (o.zoomWindow = l( 12633 "<div style='z-index:999;left:" + 12634 o.windowOffsetLeft + 12635 "px;top:" + 12636 o.windowOffsetTop + 12637 "px;" + 12638 o.zoomWindowStyle + 12639 "' class='zoomWindow'> </div>" 12640 ) 12641 .appendTo("body") 12642 .click(function () { 12643 o.$elem.trigger("click"); 12644 })) 12645 : (o.zoomWindow = l( 12646 "<div style='z-index:999;left:" + 12647 o.windowOffsetLeft + 12648 "px;top:" + 12649 o.windowOffsetTop + 12650 "px;" + 12651 o.zoomWindowStyle + 12652 "' class='zoomWindow'> </div>" 12653 ) 12654 .appendTo(o.zoomContainer) 12655 .click(function () { 12656 o.$elem.trigger("click"); 12657 })), 12658 (o.zoomWindowContainer = l("<div/>") 12659 .addClass("zoomWindowContainer") 12660 .css("width", o.options.zoomWindowWidth)), 12661 o.zoomWindow.wrap(o.zoomWindowContainer), 12662 "lens" == o.options.zoomType && 12663 o.zoomLens.css({ backgroundImage: "url('" + o.imageSrc + "')" }), 12664 "window" == o.options.zoomType && 12665 o.zoomWindow.css({ backgroundImage: "url('" + o.imageSrc + "')" }), 12666 "inner" == o.options.zoomType && 12667 o.zoomWindow.css({ backgroundImage: "url('" + o.imageSrc + "')" }), 12668 o.$elem.bind("touchmove", function (e) { 12669 e.preventDefault(); 12670 var t = 12671 e.originalEvent.touches[0] || e.originalEvent.changedTouches[0]; 12672 o.setPosition(t); 12673 }), 12674 o.zoomContainer.bind("touchmove", function (e) { 12675 "inner" == o.options.zoomType && o.showHideWindow("show"), 12676 e.preventDefault(); 12677 var t = 12678 e.originalEvent.touches[0] || e.originalEvent.changedTouches[0]; 12679 o.setPosition(t); 12680 }), 12681 o.zoomContainer.bind("touchend", function (e) { 12682 o.showHideWindow("hide"), 12683 o.options.showLens && o.showHideLens("hide"), 12684 o.options.tint && 12685 "inner" != o.options.zoomType && 12686 o.showHideTint("hide"); 12687 }), 12688 o.$elem.bind("touchend", function (e) { 12689 o.showHideWindow("hide"), 12690 o.options.showLens && o.showHideLens("hide"), 12691 o.options.tint && 12692 "inner" != o.options.zoomType && 12693 o.showHideTint("hide"); 12694 }), 12695 o.options.showLens && 12696 (o.zoomLens.bind("touchmove", function (e) { 12697 e.preventDefault(); 12698 var t = 12699 e.originalEvent.touches[0] || e.originalEvent.changedTouches[0]; 12700 o.setPosition(t); 12701 }), 12702 o.zoomLens.bind("touchend", function (e) { 12703 o.showHideWindow("hide"), 12704 o.options.showLens && o.showHideLens("hide"), 12705 o.options.tint && 12706 "inner" != o.options.zoomType && 12707 o.showHideTint("hide"); 12708 })), 12709 o.$elem.bind("mousemove", function (e) { 12710 0 == o.overWindow && o.setElements("show"), 12711 (o.lastX === e.clientX && o.lastY === e.clientY) || 12712 (o.setPosition(e), (o.currentLoc = e)), 12713 (o.lastX = e.clientX), 12714 (o.lastY = e.clientY); 12715 }), 12716 o.zoomContainer.bind("mousemove", function (e) { 12717 0 == o.overWindow && o.setElements("show"), 12718 (o.lastX === e.clientX && o.lastY === e.clientY) || 12719 (o.setPosition(e), (o.currentLoc = e)), 12720 (o.lastX = e.clientX), 12721 (o.lastY = e.clientY); 12722 }), 12723 "inner" != o.options.zoomType && 12724 o.zoomLens.bind("mousemove", function (e) { 12725 (o.lastX === e.clientX && o.lastY === e.clientY) || 12726 (o.setPosition(e), (o.currentLoc = e)), 12727 (o.lastX = e.clientX), 12728 (o.lastY = e.clientY); 12729 }), 12730 o.options.tint && 12731 "inner" != o.options.zoomType && 12732 o.zoomTint.bind("mousemove", function (e) { 12733 (o.lastX === e.clientX && o.lastY === e.clientY) || 12734 (o.setPosition(e), (o.currentLoc = e)), 12735 (o.lastX = e.clientX), 12736 (o.lastY = e.clientY); 12737 }), 12738 "inner" == o.options.zoomType && 12739 o.zoomWindow.bind("mousemove", function (e) { 12740 (o.lastX === e.clientX && o.lastY === e.clientY) || 12741 (o.setPosition(e), (o.currentLoc = e)), 12742 (o.lastX = e.clientX), 12743 (o.lastY = e.clientY); 12744 }), 12745 o.zoomContainer 12746 .add(o.$elem) 12747 .mouseenter(function () { 12748 0 == o.overWindow && o.setElements("show"); 12749 }) 12750 .mouseleave(function () { 12751 o.scrollLock || 12752 (o.setElements("hide"), o.options.onDestroy(o.$elem)); 12753 }), 12754 "inner" != o.options.zoomType && 12755 o.zoomWindow 12756 .mouseenter(function () { 12757 (o.overWindow = !0), o.setElements("hide"); 12758 }) 12759 .mouseleave(function () { 12760 o.overWindow = !1; 12761 }), 12762 o.options.zoomLevel, 12763 o.options.minZoomLevel 12764 ? (o.minZoomLevel = o.options.minZoomLevel) 12765 : (o.minZoomLevel = 2 * o.options.scrollZoomIncrement), 12766 o.options.scrollZoom && 12767 o.zoomContainer 12768 .add(o.$elem) 12769 .bind( 12770 "mousewheel DOMMouseScroll MozMousePixelScroll", 12771 function (e) { 12772 (o.scrollLock = !0), 12773 clearTimeout(l.data(this, "timer")), 12774 l.data( 12775 this, 12776 "timer", 12777 setTimeout(function () { 12778 o.scrollLock = !1; 12779 }, 250) 12780 ); 12781 var t = 12782 e.originalEvent.wheelDelta || -1 * e.originalEvent.detail; 12783 return ( 12784 e.stopImmediatePropagation(), 12785 e.stopPropagation(), 12786 e.preventDefault(), 12787 0 < t / 120 12788 ? o.currentZoomLevel >= o.minZoomLevel && 12789 o.changeZoomLevel( 12790 o.currentZoomLevel - o.options.scrollZoomIncrement 12791 ) 12792 : (!o.options.maxZoomLevel || 12793 o.currentZoomLevel <= o.options.maxZoomLevel) && 12794 o.changeZoomLevel( 12795 parseFloat(o.currentZoomLevel) + 12796 o.options.scrollZoomIncrement 12797 ), 12798 !1 12799 ); 12800 } 12801 ); 12802 }, 12803 setElements: function (e) { 12804 var t = this; 12805 if (!t.options.zoomEnabled) return !1; 12806 "show" == e && 12807 t.isWindowSet && 12808 ("inner" == t.options.zoomType && t.showHideWindow("show"), 12809 "window" == t.options.zoomType && t.showHideWindow("show"), 12810 t.options.showLens && t.showHideLens("show"), 12811 t.options.tint && 12812 "inner" != t.options.zoomType && 12813 t.showHideTint("show")), 12814 "hide" == e && 12815 ("window" == t.options.zoomType && t.showHideWindow("hide"), 12816 t.options.tint || t.showHideWindow("hide"), 12817 t.options.showLens && t.showHideLens("hide"), 12818 t.options.tint && t.showHideTint("hide")); 12819 }, 12820 setPosition: function (e) { 12821 var t = this; 12822 if (!t.options.zoomEnabled) return !1; 12823 (t.nzHeight = t.$elem.height()), 12824 (t.nzWidth = t.$elem.width()), 12825 (t.nzOffset = t.$elem.offset()), 12826 t.options.tint && 12827 "inner" != t.options.zoomType && 12828 (t.zoomTint.css({ top: 0 }), t.zoomTint.css({ left: 0 })), 12829 t.options.responsive && 12830 !t.options.scrollZoom && 12831 t.options.showLens && 12832 ((lensHeight = 12833 t.nzHeight < t.options.zoomWindowWidth / t.widthRatio 12834 ? t.nzHeight 12835 : String(t.options.zoomWindowHeight / t.heightRatio)), 12836 (lensWidth = 12837 t.largeWidth < t.options.zoomWindowWidth 12838 ? t.nzWidth 12839 : t.options.zoomWindowWidth / t.widthRatio), 12840 (t.widthRatio = t.largeWidth / t.nzWidth), 12841 (t.heightRatio = t.largeHeight / t.nzHeight), 12842 "lens" != t.options.zoomType && 12843 ((lensHeight = 12844 t.nzHeight < t.options.zoomWindowWidth / t.widthRatio 12845 ? t.nzHeight 12846 : String(t.options.zoomWindowHeight / t.heightRatio)), 12847 (lensWidth = 12848 t.nzWidth < t.options.zoomWindowHeight / t.heightRatio 12849 ? t.nzWidth 12850 : String(t.options.zoomWindowWidth / t.widthRatio)), 12851 t.zoomLens.css("width", lensWidth), 12852 t.zoomLens.css("height", lensHeight),
12853 t.options.tint && 12854 (t.zoomTintImage.css("width", t.nzWidth), 12855 t.zoomTintImage.css("height", t.nzHeight))), 12856 "lens" == t.options.zoomType && 12857 t.zoomLens.css({ 12858 width: String(t.options.lensSize) + "px", 12859 height: String(t.options.lensSize) + "px", 12860 })), 12861 t.zoomContainer.css({ top: t.nzOffset.top }), 12862 t.zoomContainer.css({ left: t.nzOffset.left }), 12863 (t.mouseLeft = parseInt(e.pageX - t.nzOffset.left)), 12864 (t.mouseTop = parseInt(e.pageY - t.nzOffset.top)), 12865 "window" == t.options.zoomType && 12866 ((t.Etoppos = t.mouseTop < t.zoomLens.height() / 2), 12867 (t.Eboppos = 12868 t.mouseTop > 12869 t.nzHeight - 12870 t.zoomLens.height() / 2 - 12871 2 * t.options.lensBorderSize), 12872 (t.Eloppos = t.mouseLeft < 0 + t.zoomLens.width() / 2), 12873 (t.Eroppos = 12874 t.mouseLeft > 12875 t.nzWidth - 12876 t.zoomLens.width() / 2 - 12877 2 * t.options.lensBorderSize)), 12878 "inner" == t.options.zoomType && 12879 ((t.Etoppos = t.mouseTop < t.nzHeight / 2 / t.heightRatio), 12880 (t.Eboppos = 12881 t.mouseTop > t.nzHeight - t.nzHeight / 2 / t.heightRatio), 12882 (t.Eloppos = t.mouseLeft < 0 + t.nzWidth / 2 / t.widthRatio), 12883 (t.Eroppos = 12884 t.mouseLeft > 12885 t.nzWidth - 12886 t.nzWidth / 2 / t.widthRatio - 12887 2 * t.options.lensBorderSize)), 12888 t.mouseLeft < 0 || 12889 t.mouseTop < 0 || 12890 t.mouseLeft > t.nzWidth || 12891 t.mouseTop > t.nzHeight 12892 ? t.setElements("hide") 12893 : (t.options.showLens && 12894 ((t.lensLeftPos = String( 12895 Math.floor(t.mouseLeft - t.zoomLens.width() / 2) 12896 )), 12897 (t.lensTopPos = String( 12898 Math.floor(t.mouseTop - t.zoomLens.height() / 2) 12899 ))), 12900 t.Etoppos && (t.lensTopPos = 0), 12901 t.Eloppos && 12902 ((t.windowLeftPos = 0), (t.lensLeftPos = 0), (t.tintpos = 0)), 12903 "window" == t.options.zoomType && 12904 (t.Eboppos && 12905 (t.lensTopPos = Math.max( 12906 t.nzHeight - 12907 t.zoomLens.height() - 12908 2 * t.options.lensBorderSize, 12909 0 12910 )), 12911 t.Eroppos && 12912 (t.lensLeftPos = 12913 t.nzWidth - 12914 t.zoomLens.width() - 12915 2 * t.options.lensBorderSize)), 12916 "inner" == t.options.zoomType && 12917 (t.Eboppos && 12918 (t.lensTopPos = Math.max( 12919 t.nzHeight - 2 * t.options.lensBorderSize, 12920 0 12921 )), 12922 t.Eroppos && 12923 (t.lensLeftPos = 12924 t.nzWidth - t.nzWidth - 2 * t.options.lensBorderSize)), 12925 "lens" == t.options.zoomType && 12926 ((t.windowLeftPos = String( 12927 -1 * 12928 ((e.pageX - t.nzOffset.left) * t.widthRatio - 12929 t.zoomLens.width() / 2) 12930 )), 12931 (t.windowTopPos = String( 12932 -1 * 12933 ((e.pageY - t.nzOffset.top) * t.heightRatio - 12934 t.zoomLens.height() / 2) 12935 )), 12936 t.zoomLens.css({ 12937 backgroundPosition: 12938 t.windowLeftPos + "px " + t.windowTopPos + "px", 12939 }), 12940 t.changeBgSize && 12941 (t.nzHeight > t.nzWidth 12942 ? ("lens" == t.options.zoomType && 12943 t.zoomLens.css({ 12944 "background-size": 12945 t.largeWidth / t.newvalueheight + 12946 "px " + 12947 t.largeHeight / t.newvalueheight + 12948 "px", 12949 }), 12950 t.zoomWindow.css({ 12951 "background-size": 12952 t.largeWidth / t.newvalueheight + 12953 "px " + 12954 t.largeHeight / t.newvalueheight + 12955 "px", 12956 })) 12957 : ("lens" == t.options.zoomType && 12958 t.zoomLens.css({ 12959 "background-size": 12960 t.largeWidth / t.newvaluewidth + 12961 "px " + 12962 t.largeHeight / t.newvaluewidth + 12963 "px", 12964 }), 12965 t.zoomWindow.css({ 12966 "background-size": 12967 t.largeWidth / t.newvaluewidth + 12968 "px " + 12969 t.largeHeight / t.newvaluewidth + 12970 "px", 12971 })), 12972 (t.changeBgSize = !1)), 12973 t.setWindowPostition(e)), 12974 t.options.tint && 12975 "inner" != t.options.zoomType && 12976 t.setTintPosition(e), 12977 "window" == t.options.zoomType && t.setWindowPostition(e), 12978 "inner" == t.options.zoomType && t.setWindowPostition(e), 12979 t.options.showLens && 12980 (t.fullwidth && 12981 "lens" != t.options.zoomType && 12982 (t.lensLeftPos = 0), 12983 t.zoomLens.css({ 12984 left: t.lensLeftPos + "px", 12985 top: t.lensTopPos + "px", 12986 }))); 12987 }, 12988 showHideWindow: function (e) { 12989 var t = this; 12990 "show" == e && 12991 (t.isWindowActive || 12992 (t.options.zoomWindowFadeIn
12993 ? t.zoomWindow.stop(!0, !0, !1).fadeIn(t.options.zoomWindowFadeIn) 12994 : t.zoomWindow.show(), 12995 (t.isWindowActive = !0))), 12996 "hide" == e && 12997 t.isWindowActive && 12998 (t.options.zoomWindowFadeOut 12999 ? t.zoomWindow 13000 .stop(!0, !0) 13001 .fadeOut(t.options.zoomWindowFadeOut, function () { 13002 t.loop && (clearInterval(t.loop), (t.loop = !1)); 13003 }) 13004 : t.zoomWindow.hide(), 13005 (t.isWindowActive = !1)); 13006 }, 13007 showHideLens: function (e) { 13008 var t = this; 13009 "show" == e && 13010 (t.isLensActive || 13011 (t.options.lensFadeIn 13012 ? t.zoomLens.stop(!0, !0, !1).fadeIn(t.options.lensFadeIn) 13013 : t.zoomLens.show(), 13014 (t.isLensActive = !0))), 13015 "hide" == e && 13016 t.isLensActive && 13017 (t.options.lensFadeOut 13018 ? t.zoomLens.stop(!0, !0).fadeOut(t.options.lensFadeOut) 13019 : t.zoomLens.hide(), 13020 (t.isLensActive = !1)); 13021 }, 13022 showHideTint: function (e) { 13023 var t = this; 13024 "show" == e && 13025 (t.isTintActive || 13026 (t.options.zoomTintFadeIn 13027 ? t.zoomTint 13028 .css({ opacity: t.options.tintOpacity }) 13029 .animate() 13030 .stop(!0, !0) 13031 .fadeIn("slow") 13032 : (t.zoomTint.css({ opacity: t.options.tintOpacity }).animate(), 13033 t.zoomTint.show()), 13034 (t.isTintActive = !0))), 13035 "hide" == e && 13036 t.isTintActive && 13037 (t.options.zoomTintFadeOut 13038 ? t.zoomTint.stop(!0, !0).fadeOut(t.options.zoomTintFadeOut) 13039 : t.zoomTint.hide(), 13040 (t.isTintActive = !1)); 13041 }, 13042 setLensPostition: function (e) {}, 13043 setWindowPostition: function (e) { 13044 var t = this; 13045 if (isNaN(t.options.zoomWindowPosition)) 13046 (t.externalContainer = l("#" + t.options.zoomWindowPosition)), 13047 (t.externalContainerWidth = t.externalContainer.width()), 13048 (t.externalContainerHeight = t.externalContainer.height()), 13049 (t.externalContainerOffset = t.externalContainer.offset()), 13050 (t.windowOffsetTop = t.externalContainerOffset.top), 13051 (t.windowOffsetLeft = t.externalContainerOffset.left); 13052 else 13053 switch (t.options.zoomWindowPosition) { 13054 case 1: 13055 (t.windowOffsetTop = t.options.zoomWindowOffety), 13056 (t.windowOffsetLeft = +t.nzWidth); 13057 break; 13058 case 2: 13059 t.options.zoomWindowHeight > t.nzHeight && 13060 ((t.windowOffsetTop = 13061 -1 * (t.options.zoomWindowHeight / 2 - t.nzHeight / 2)), 13062 (t.windowOffsetLeft = t.nzWidth)); 13063 break; 13064 case 3: 13065 (t.windowOffsetTop = 13066 t.nzHeight - t.zoomWindow.height() - 2 * t.options.borderSize), 13067 (t.windowOffsetLeft = t.nzWidth); 13068 break; 13069 case 4: 13070 (t.windowOffsetTop = t.nzHeight), 13071 (t.windowOffsetLeft = t.nzWidth); 13072 break; 13073 case 5: 13074 (t.windowOffsetTop = t.nzHeight), 13075 (t.windowOffsetLeft = 13076 t.nzWidth - t.zoomWindow.width() - 2 * t.options.borderSize); 13077 break; 13078 case 6: 13079 t.options.zoomWindowHeight > t.nzHeight && 13080 ((t.windowOffsetTop = t.nzHeight), 13081 (t.windowOffsetLeft = 13082 -1 * 13083 (t.options.zoomWindowWidth / 2 - 13084 t.nzWidth / 2 + 13085 2 * t.options.borderSize))); 13086 break; 13087 case 7: 13088 (t.windowOffsetTop = t.nzHeight), (t.windowOffsetLeft = 0); 13089 break; 13090 case 8: 13091 (t.windowOffsetTop = t.nzHeight), 13092 (t.windowOffsetLeft = 13093 -1 * (t.zoomWindow.width() + 2 * t.options.borderSize)); 13094 break; 13095 case 9: 13096 (t.windowOffsetTop = 13097 t.nzHeight - t.zoomWindow.height() - 2 * t.options.borderSize), 13098 (t.windowOffsetLeft = 13099 -1 * (t.zoomWindow.width() + 2 * t.options.borderSize)); 13100 break; 13101 case 10: 13102 t.options.zoomWindowHeight > t.nzHeight && 13103 ((t.windowOffsetTop = 13104 -1 * (t.options.zoomWindowHeight / 2 - t.nzHeight / 2)), 13105 (t.windowOffsetLeft = 13106 -1 * (t.zoomWindow.width() + 2 * t.options.borderSize))); 13107 break; 13108 case 11: 13109 (t.windowOffsetTop = t.options.zoomWindowOffety), 13110 (t.windowOffsetLeft = 13111 -1 * (t.zoomWindow.width() + 2 * t.options.borderSize)); 13112 break; 13113 case 12: 13114 (t.windowOffsetTop = 13115 -1 * (t.zoomWindow.height() + 2 * t.options.borderSize)), 13116 (t.windowOffsetLeft = 13117 -1 * (t.zoomWindow.width() + 2 * t.options.borderSize)); 13118 break; 13119 case 13: 13120 (t.windowOffsetTop = 13121 -1 * (t.zoomWindow.height() + 2 * t.options.borderSize)), 13122 (t.windowOffsetLeft = 0); 13123 break; 13124 case 14: 13125 t.options.zoomWindowHeight > t.nzHeight && 13126 ((t.windowOffsetTop = 13127 -1 * (t.zoomWindow.height() + 2 * t.options.borderSize)), 13128 (t.windowOffsetLeft = 13129 -1 * 13130 (t.options.zoomWindowWidth / 2 - 13131 t.nzWidth / 2 + 13132 2 * t.options.borderSize))); 13133 break; 13134 case 15: 13135 (t.windowOffsetTop = 13136 -1 * (t.zoomWindow.height() + 2 * t.options.borderSize)), 13137 (t.windowOffsetLeft = 13138 t.nzWidth - t.zoomWindow.width() - 2 * t.options.borderSize); 13139 break; 13140 case 16: 13141 (t.windowOffsetTop = 13142 -1 * (t.zoomWindow.height() + 2 * t.options.borderSize)), 13143 (t.windowOffsetLeft = t.nzWidth); 13144 break; 13145 default: 13146 (t.windowOffsetTop = t.options.zoomWindowOffety), 13147 (t.windowOffsetLeft = t.nzWidth); 13148 } 13149 (t.isWindowSet = !0), 13150 (t.windowOffsetTop = t.windowOffsetTop + t.options.zoomWindowOffety), 13151 (t.windowOffsetLeft = 13152 t.windowOffsetLeft + t.options.zoomWindowOffetx), 13153 t.zoomWindow.css({ top: t.windowOffsetTop }), 13154 t.zoomWindow.css({ left: t.windowOffsetLeft }), 13155 "inner" == t.options.zoomType && 13156 (t.zoomWindow.css({ top: 0 }), t.zoomWindow.css({ left: 0 })), 13157 (t.windowLeftPos = String( 13158 -1 * 13159 ((e.pageX - t.nzOffset.left) * t.widthRatio - 13160 t.zoomWindow.width() / 2) 13161 )), 13162 (t.windowTopPos = String( 13163 -1 * 13164 ((e.pageY - t.nzOffset.top) * t.heightRatio - 13165 t.zoomWindow.height() / 2) 13166 )), 13167 t.Etoppos && (t.windowTopPos = 0), 13168 t.Eloppos && (t.windowLeftPos = 0), 13169 t.Eboppos && 13170 (t.windowTopPos = 13171 -1 * 13172 (t.largeHeight / t.currentZoomLevel - t.zoomWindow.height())), 13173 t.Eroppos && 13174 (t.windowLeftPos = 13175 -1 * (t.largeWidth / t.currentZoomLevel - t.zoomWindow.width())), 13176 t.fullheight && (t.windowTopPos = 0), 13177 t.fullwidth && (t.windowLeftPos = 0), 13178 ("window" != t.options.zoomType && "inner" != t.options.zoomType) || 13179 (1 == t.zoomLock && 13180 (t.widthRatio <= 1 && (t.windowLeftPos = 0), 13181 t.heightRatio <= 1 && (t.windowTopPos = 0)), 13182 "window" == t.options.zoomType && 13183 (t.largeHeight < t.options.zoomWindowHeight && 13184 (t.windowTopPos = 0), 13185 t.largeWidth < t.options.zoomWindowWidth && 13186 (t.windowLeftPos = 0)), 13187 t.options.easing 13188 ? (t.xp || (t.xp = 0), 13189 t.yp || (t.yp = 0), 13190 t.loop || 13191 (t.loop = setInterval(function () { 13192 (t.xp += (t.windowLeftPos - t.xp) / t.options.easingAmou
13192nt), 13193 (t.yp += 13194 (t.windowTopPos - t.yp) / t.options.easingAmount), 13195 t.scrollingLock 13196 ? (clearInterval(t.loop), 13197 (t.xp = t.windowLeftPos), 13198 (t.yp = t.windowTopPos), 13199 (t.xp = 13200 -1 * 13201 ((e.pageX - t.nzOffset.left) * t.widthRatio - 13202 t.zoomWindow.width() / 2)), 13203 (t.yp = 13204 -1 * 13205 ((e.pageY - t.nzOffset.top) * t.heightRatio - 13206 t.zoomWindow.height() / 2)), 13207 t.changeBgSize && 13208 (t.nzHeight > t.nzWidth 13209 ? ("lens" == t.options.zoomType && 13210 t.zoomLens.css({ 13211 "background-size": 13212 t.largeWidth / t.newvalueheight + 13213 "px " + 13214 t.largeHeight / t.newvalueheight + 13215 "px", 13216 }), 13217 t.zoomWindow.css({ 13218 "background-size": 13219 t.largeWidth / t.newvalueheight + 13220 "px " + 13221 t.largeHeight / t.newvalueheight + 13222 "px", 13223 })) 13224 : ("lens" != t.options.zoomType && 13225 t.zoomLens.css({ 13226 "background-size": 13227 t.largeWidth / t.newvaluewidth + 13228 "px " + 13229 t.largeHeight / t.newvalueheight + 13230 "px", 13231 }), 13232 t.zoomWindow.css({ 13233 "background-size": 13234 t.largeWidth / t.newvaluewidth + 13235 "px " + 13236 t.largeHeight / t.newvaluewidth + 13237 "px", 13238 })), 13239 (t.changeBgSize = !1)), 13240 t.zoomWindow.css({ 13241 backgroundPosition: 13242 t.windowLeftPos + "px " + t.windowTopPos + "px", 13243 }), 13244 (t.scrollingLock = !1), 13245 (t.loop = !1)) 13246 : Math.round( 13247 Math.abs(t.xp - t.windowLeftPos) + 13248 Math.abs(t.yp - t.windowTopPos) 13249 ) < 1 13250 ? (clearInterval(t.loop), 13251 t.zoomWindow.css({ 13252 backgroundPosition: 13253 t.windowLeftPos + "px " + t.windowTopPos + "px", 13254 }), 13255 (t.loop = !1)) 13256 : (t.changeBgSize && 13257 (t.nzHeight > t.nzWidth 13258 ? ("lens" == t.options.zoomType && 13259 t.zoomLens.css({ 13260 "background-size": 13261 t.largeWidth / t.newvalueheight + 13262 "px " + 13263 t.largeHeight / t.newvalueheight + 13264 "px", 13265 }), 13266 t.zoomWindow.css({ 13267 "background-size": 13268 t.largeWidth / t.newvalueheight + 13269 "px " + 13270 t.largeHeight / t.newvalueheight + 13271 "px", 13272 })) 13273 : ("lens" != t.options.zoomType && 13274 t.zoomLens.css({ 13275 "background-size": 13276 t.largeWidth / t.newvaluewidth + 13277 "px " + 13278 t.largeHeight / t.newvaluewidth + 13279 "px", 13280 }), 13281 t.zoomWindow.css({ 13282 "background-size": 13283 t.largeWidth / t.newvaluewidth + 13284 "px " + 13285 t.largeHeight / t.newvaluewidth + 13286 "px", 13287 })), 13288 (t.changeBgSize = !1)), 13289 t.zoomWindow.css({ 13290 backgroundPosition: t.xp + "px " + t.yp + "px", 13291 })); 13292 }, 16))) 13293 : (t.changeBgSize && 13294 (t.nzHeight > t.nzWidth 13295 ? ("lens" == t.options.zoomType && 13296 t.zoomLens.css({ 13297 "background-size": 13298 t.largeWidth / t.newvalueheight + 13299 "px " + 13300 t.largeHeight / t.newvalueheight + 13301 "px", 13302 }), 13303 t.zoomWindow.css({ 13304 "background-size": 13305 t.largeWidth / t.newvalueheight + 13306 "px " + 13307 t.largeHeight / t.newvalueheight + 13308 "px", 13309 })) 13310 : ("lens" == t.options.zoomType && 13311 t.zoomLens.css({ 13312 "background-size": 13313 t.largeWidth / t.newvaluewidth + 13314 "px " + 13315 t.largeHeight / t.newvaluewidth + 13316 "px", 13317 }), 13318 t.largeHeight / t.newvaluewidth < 13319 t.options.zoomWindowHeight 13320 ? t.zoomWindow.css({ 13321 "background-size": 13322 t.largeWidth / t.newvaluewidth + 13323 "px " + 13324 t.largeHeight / t.newvaluewidth + 13325 "px", 13326 }) 13327 : t.zoomWindow.css({ 13328 "background-size": 13329 t.largeWidth / t.newvalueheight + 13330 "px " + 13331 t.largeHeight / t.newvalueheight + 13332 "px", 13333 })), 13334 (t.changeBgSize = !1)), 13335 t.zoomWindow.css({ 13336 backgroundPosition: 13337 t.windowLeftPos + "px " + t.windowTopPos + "px", 13338 }))); 13339 }, 13340 setTintPosition: function (e) { 13341 var t = this; 13342 (t.nzOffset = t.$elem.offset()), 13343 (t.tintpos = String( 13344 -1 * (e.pageX - t.nzOffset.left - t.zoomLens.width() / 2) 13345 )), 13346 (t.tintposy = String( 13347 -1 * (e.pageY - t.nzOffset.top - t.zoomLens.height() / 2) 13348 )), 13349 t.Etoppos && (t.tintposy = 0), 13350 t.Eloppos && (t.tintpos = 0), 13351 t.Eboppos && 13352 (t.tintposy = 13353 -1 * 13354 (t.nzHeight - 13355 t.zoomLens.height() - 13356 2 * t.options.lensBorderSize)), 13357 t.Eroppos && 13358 (t.tintpos = 13359 -1 * 13360 (t.nzWidth - t.zoomLens.width() - 2 * t.options.lensBorderSize)), 13361 t.options.tint && 13362 (t.fullheight && (t.tintposy = 0), 13363 t.fullwidth && (t.tintpos = 0), 13364 t.zoomTintImage.css({ left: t.tintpos + "px" }), 13365 t.zoomTintImage.css({ top: t.tintposy + "px" })); 13366 }, 13367 swaptheimage: function (e, t) { 13368 var o = this, 13369 n = new Image(); 13370 o.options.loadingIcon && 13371 ((o.spinner = l( 13372 "<div style=\"background: url('" + 13373 o.options.loadingIcon + 13374 "') no-repeat center;height:" + 13375 o.nzHeight + 13376 "px;
13376width:" + 13377 o.nzWidth + 13378 'px;z-index: 2000;position: absolute; background-position: center center;"></div>' 13379 )), 13380 o.$elem.after(o.spinner)), 13381 o.options.onImageSwap(o.$elem), 13382 (n.onload = function () { 13383 (o.largeWidth = n.width), 13384 (o.largeHeight = n.height), 13385 (o.zoomImage = t), 13386 o.zoomWindow.css({ 13387 "background-size": o.largeWidth + "px " + o.largeHeight + "px", 13388 }), 13389 o.swapAction(e, t); 13390 }), 13391 (n.src = t); 13392 }, 13393 swapAction: function (e, t) { 13394 var o, 13395 n, 13396 i, 13397 s, 13398 r = this, 13399 a = new Image(); 13400 (a.onload = function () { 13401 (r.nzHeight = a.height), 13402 (r.nzWidth = a.width), 13403 r.options.onImageSwapComplete(r.$elem), 13404 r.doneCallback(); 13405 }), 13406 (a.src = e), 13407 (r.currentZoomLevel = r.options.zoomLevel), 13408 (r.options.maxZoomLevel = !1), 13409 "lens" == r.options.zoomType && 13410 r.zoomLens.css({ backgroundImage: "url('" + t + "')" }), 13411 "window" == r.options.zoomType && 13412 r.zoomWindow.css({ backgroundImage: "url('" + t + "')" }), 13413 "inner" == r.options.zoomType && 13414 r.zoomWindow.css({ backgroundImage: "url('" + t + "')" }), 13415 (r.currentImage = t), 13416 r.options.imageCrossfade 13417 ? ((n = (o = r.$elem).clone()), 13418 r.$elem.attr("src", e), 13419 r.$elem.after(n), 13420 n.stop(!0).fadeOut(r.options.imageCrossfade, function () { 13421 l(this).remove(); 13422 }), 13423 r.$elem.width("auto").removeAttr("width"), 13424 r.$elem.height("auto").removeAttr("height"), 13425 o.fadeIn(r.options.imageCrossfade), 13426 r.options.tint && 13427 "inner" != r.options.zoomType && 13428 ((s = (i = r.zoomTintImage).clone()), 13429 r.zoomTintImage.attr("src", t), 13430 r.zoomTintImage.after(s), 13431 s.stop(!0).fadeOut(r.options.imageCrossfade, function () { 13432 l(this).remove(); 13433 }), 13434 i.fadeIn(r.options.imageCrossfade), 13435 r.zoomTint.css({ height: r.$elem.height() }), 13436 r.zoomTint.css({ width: r.$elem.width() })), 13437 r.zoomContainer.css("height", r.$elem.height()), 13438 r.zoomContainer.css("width", r.$elem.width()), 13439 "inner" == r.options.zoomType && 13440 (r.options.constrainType || 13441 (r.zoomWrap.parent().css("height", r.$elem.height()), 13442 r.zoomWrap.parent().css("width", r.$elem.width()), 13443 r.zoomWindow.css("height", r.$elem.height()), 13444 r.zoomWindow.css("width", r.$elem.width())))) 13445 : (r.$elem.attr("src", e), 13446 r.options.tint && 13447 (r.zoomTintImage.attr("src", t), 13448 r.zoomTintImage.attr("height", r.$elem.height()), 13449 r.zoomTintImage.css({ height: r.$elem.height() }), 13450 r.zoomTint.css({ height: r.$elem.height() })), 13451 r.zoomContainer.css("height", r.$elem.height()), 13452 r.zoomContainer.css("width", r.$elem.width())), 13453 r.options.imageCrossfade && 13454 (r.zoomWrap.css("height", r.$elem.height()), 13455 r.zoomWrap.css("width", r.$elem.width())), 13456 r.options.constrainType && 13457 ("height" == r.options.constrainType && 13458 (r.zoomContainer.css("height", r.options.constrainSize), 13459 r.zoomContainer.css("width", "auto"), 13460 r.options.imageCrossfade 13461 ? (r.zoomWrap.css("height", r.options.constrainSize), 13462 r.zoomWrap.css("width", "auto"), 13463 (r.constwidth = r.zoomWrap.width())) 13464 : (r.$elem.css("height", r.options.constrainSize), 13465 r.$elem.css("width", "auto"), 13466 (r.constwidth = r.$elem.width())), 13467 "inner" == r.options.zoomType && 13468 (r.zoomWrap.parent().css("height", r.options.constrainSize), 13469 r.zoomWrap.parent().css("width", r.constwidth), 13470 r.zoomWindow.css("height", r.options.constrainSize), 13471 r.zoomWindow.css("width", r.constwidth)), 13472 r.options.tint && 13473 (r.tintContainer.css("height", r.options.constrainSize), 13474 r.tintContainer.css("width", r.constwidth), 13475 r.zoomTint.css("height", r.options.constrainSize), 13476 r.zoomTint.css("width", r.constwidth), 13477 r.zoomTintImage.css("height", r.options.constrainSize), 13478 r.zoomTintImage.css("width", r.constwidth))), 13479 "width" == r.options.constrainType && 13480 (r.zoomContainer.css("height", "auto"), 13481 r.zoomContainer.css("width", r.options.constrainSize), 13482 r.options.imageCrossfade 13483 ? (r.zoomWrap.css("height", "auto"), 13484 r.zoomWrap.css("width", r.options.constrainSize), 13485 (r.constheight = r.zoomWrap.height())) 13486 : (r.$elem.css("height", "auto"), 13487 r.$elem.css("width", r.options.constrainSize), 13488 (r.constheight = r.$elem.height())), 13489 "inner" == r.options.zoomType && 13490 (r.zoomWrap.parent().css("height", r.constheight), 13491 r.zoomWrap.parent().css("width", r.options.constrainSize), 13492 r.zoomWindow.css("height", r.constheight), 13493 r.zoomWindow.css("width", r.options.constrainSize)), 13494 r.options.tint && 13495 (r.tintContainer.css("height", r.constheight), 13496 r.tintContainer.css("width", r.options.constrainSize), 13497 r.zoomTint.css("height", r.constheight), 13498 r.zoomTint.css("width", r.options.constrainSize), 13499 r.zoomTintImage.css("height", r.constheight), 13500 r.zoomTintImage.css("width", r.options.constrainSize)))); 13501 }, 13502 doneCallback: function () { 13503 var e = this; 13504 e.options.loadingIcon && e.spinner.hide(), 13505 (e.nzOffset = e.$elem.offset()), 13506 (e.nzWidth = e.$elem.width()), 13507 (e.nzHeight = e.$elem.height()), 13508 (e.currentZoomLevel = e.options.zoomLevel), 13509 (e.widthRatio = e.largeWidth / e.nzWidth), 13510 (e.heightRatio = e.largeHeight / e.nzHeight), 13511 "window" == e.options.zoomType && 13512 ((lensHeight = 13513 e.nzHeight < e.options.zoomWindowWidth / e.widthRatio 13514 ? e.nzHeight 13515 : String(e.options.zoomWindowHeight / e.heightRatio)), 13516 (lensWidth = 13517 e.options.zoomWindowWidth < e.options.zoomWindowWidth 13518 ? e.nzWidth 13519 : e.options.zoomWindowWidth / e.widthRatio), 13520 e.zoomLens && 13521 (e.zoomLens.css("width", lensWidth), 13522 e.zoomLens.css("height", lensHeight))); 13523 }, 13524 getCurrentImage: function () { 13525 return this.zoomImage; 13526 }, 13527 getGalleryList: function () { 13528 var t = this; 13529 return ( 13530 (t.gallerylist = []), 13531 t.options.gallery 13532 ? l("#" + t.options.gallery + " a").each(function () { 13533 var e = ""; 13534 l(this).data("zoom-image") 13535 ? (e = l(this).data("zoom-image")) 13536 : l(this).data("image") && (e = l(this).data("image")), 13537 e == t.zoomImage 13538 ? t.gallerylist.unshift({ 13539 href: "" + e, 13540 title: l(this).find("img").attr("title"), 13541 }) 13542 : t.gallerylist.push({ 13543 href: "" + e, 13544 title: l(this).find("img").attr("title"), 13545 }); 13546 }) 13547 : t.gallerylist.push({ 13548 href: "" + t.zoomImage, 13549 title: l(this).find("img").attr("title"), 13550 }), 13551 t.gallerylist 13552 ); 13553 }, 13554 changeZoomLevel: function (e) { 13555 var t = this; 13556 (t.scrollingLock = !0), 13557 (t.newvalue = parseFloat(e).toFixed(2)), 13558 (newvalue = parseFloat(e).toFixed(2)), 13559 (maxheightnewvalue = 13560 t.largeHeight / 13561 ((t.options.zoomWindowHeight / t.nzHeight) * t.nzHeight)), 13562 (maxwidthtnewvalue = 13563 t.largeWidth / 13564 ((t.options.zoomWindowWidth / t.nzWidth) * t.nzWidth)), 13565 "inner" != t.options.zoomType && 13566 (maxheightnewvalue <= newvalue 13567 ? ((t.heightRatio = 13568 t.largeHeight / maxheightnewvalue / t.nzHeight), 13569 (t.newvalueheight = maxheightnewvalue), 13570 (t.fullheight = !0)) 13571 : ((t.heightRatio = t.largeHeight / newvalue / t.nzHeight), 13572 (t.newvalueheight = newvalue), 13573 (t.fullheight = !1)), 13574 maxwidthtnewvalue <= newvalue 13575 ? ((t.widthRatio = t.largeWidth / maxwidthtnewvalue / t.nzWidth), 13576 (t.newvaluewidth = maxwidthtnewvalue), 13577 (t.fullwidth = !0))
13578 : ((t.widthRatio = t.largeWidth / newvalue / t.nzWidth), 13579 (t.newvaluewidth = newvalue), 13580 (t.fullwidth = !1)), 13581 "lens" == t.options.zoomType && 13582 (maxheightnewvalue <= newvalue 13583 ? ((t.fullwidth = !0), (t.newvaluewidth = maxheightnewvalue)) 13584 : ((t.widthRatio = t.largeWidth / newvalue / t.nzWidth), 13585 (t.newvaluewidth = newvalue), 13586 (t.fullwidth = !1)))), 13587 "inner" == t.options.zoomType && 13588 ((maxheightnewvalue = parseFloat( 13589 t.largeHeight / t.nzHeight 13590 ).toFixed(2)), 13591 (maxwidthtnewvalue = parseFloat(t.largeWidth / t.nzWidth).toFixed( 13592 2 13593 )), 13594 newvalue > maxheightnewvalue && (newvalue = maxheightnewvalue), 13595 newvalue > maxwidthtnewvalue && (newvalue = maxwidthtnewvalue), 13596 maxheightnewvalue <= newvalue 13597 ? ((t.heightRatio = t.largeHeight / newvalue / t.nzHeight), 13598 newvalue > maxheightnewvalue 13599 ? (t.newvalueheight = maxheightnewvalue) 13600 : (t.newvalueheight = newvalue), 13601 (t.fullheight = !0)) 13602 : ((t.heightRatio = t.largeHeight / newvalue / t.nzHeight), 13603 newvalue > maxheightnewvalue 13604 ? (t.newvalueheight = maxheightnewvalue) 13605 : (t.newvalueheight = newvalue), 13606 (t.fullheight = !1)), 13607 maxwidthtnewvalue <= newvalue 13608 ? ((t.widthRatio = t.largeWidth / newvalue / t.nzWidth), 13609 newvalue > maxwidthtnewvalue 13610 ? (t.newvaluewidth = maxwidthtnewvalue) 13611 : (t.newvaluewidth = newvalue), 13612 (t.fullwidth = !0)) 13613 : ((t.widthRatio = t.largeWidth / newvalue / t.nzWidth), 13614 (t.newvaluewidth = newvalue), 13615 (t.fullwidth = !1))), 13616 (scrcontinue = !1), 13617 "inner" == t.options.zoomType && 13618 (t.nzWidth >= t.nzHeight && 13619 (t.newvaluewidth <= maxwidthtnewvalue 13620 ? (scrcontinue = !0) 13621 : ((scrcontinue = !1), 13622 (t.fullheight = !0), 13623 (t.fullwidth = !0))), 13624 t.nzHeight > t.nzWidth && 13625 (t.newvaluewidth <= maxwidthtnewvalue 13626 ? (scrcontinue = !0) 13627 : ((scrcontinue = !1), 13628 (t.fullheight = !0), 13629 (t.fullwidth = !0)))), 13630 "inner" != t.options.zoomType && (scrcontinue = !0), 13631 scrcontinue && 13632 ((t.zoomLock = 0), 13633 (t.changeZoom = !0), 13634 t.options.zoomWindowHeight / t.heightRatio <= t.nzHeight && 13635 ((t.currentZoomLevel = t.newvalueheight), 13636 "lens" != t.options.zoomType && 13637 "inner" != t.options.zoomType && 13638 ((t.changeBgSize = !0), 13639 t.zoomLens.css({ 13640 height: 13641 String(t.options.zoomWindowHeight / t.heightRatio) + "px", 13642 })), 13643 ("lens" != t.options.zoomType && "inner" != t.options.zoomType) || 13644 (t.changeBgSize = !0)), 13645 t.options.zoomWindowWidth / t.widthRatio <= t.nzWidth && 13646 ("inner" != t.options.zoomType && 13647 t.newvaluewidth > t.newvalueheight && 13648 (t.currentZoomLevel = t.newvaluewidth), 13649 "lens" != t.options.zoomType && 13650 "inner" != t.options.zoomType && 13651 ((t.changeBgSize = !0), 13652 t.zoomLens.css({ 13653 width: 13654 String(t.options.zoomWindowWidth / t.widthRatio) + "px", 13655 })), 13656 ("lens" != t.options.zoomType && "inner" != t.options.zoomType) || 13657 (t.changeBgSize = !0)), 13658 "inner" == t.options.zoomType && 13659 ((t.changeBgSize = !0), 13660 t.nzWidth > t.nzHeight && (t.currentZoomLevel = t.newvaluewidth), 13661 t.nzHeight > t.nzWidth && 13662 (t.currentZoomLevel = t.newvaluewidth))), 13663 t.setPosition(t.currentLoc); 13664 }, 13665 closeAll: function () { 13666 self.zoomWindow && self.zoomWindow.hide(), 13667 self.zoomLens && self.zoomLens.hide(), 13668 self.zoomTint && self.zoomTint.hide(); 13669 }, 13670 changeState: function (e) { 13671 "enable" == e && (this.options.zoomEnabled = !0), 13672 "disable" == e && (this.options.zoomEnabled = !1); 13673 }, 13674 }; 13675 (l.fn.elevateZoom = function (t) { 13676 return this.each(function () { 13677 var e = Object.create(o); 13678 e.init(t, this), l.data(this, "elevateZoom", e); 13679 }); 13680 }), 13681 (l.fn.elevateZoom.options = { 13682 zoomActivation: "hover", 13683 zoomEnabled: !0, 13684 preloading: 1, 13685 zoomLevel: 1, 13686 scrollZoom: !1, 13687 scrollZoomIncrement: 0.1, 13688 minZoomLevel: !1, 13689 maxZoomLevel: !1, 13690 easing: !1,
13691 easingAmount: 12, 13692 lensSize: 200, 13693 zoomWindowWidth: 400, 13694 zoomWindowHeight: 400, 13695 zoomWindowOffetx: 0, 13696 zoomWindowOffety: 0, 13697 zoomWindowPosition: 1, 13698 zoomWindowBgColour: "#fff", 13699 lensFadeIn: !1, 13700 lensFadeOut: !1, 13701 debug: !1, 13702 zoomWindowFadeIn: !1, 13703 zoomWindowFadeOut: !1, 13704 zoomWindowAlwaysShow: !1, 13705 zoomTintFadeIn: !1, 13706 zoomTintFadeOut: !1, 13707 borderSize: 4, 13708 showLens: !0, 13709 borderColour: "#888", 13710 lensBorderSize: 1, 13711 lensBorderColour: "#000", 13712 lensShape: "square", 13713 zoomType: "window", 13714 containLensZoom: !1, 13715 lensColour: "white", 13716 lensOpacity: 0.4, 13717 lenszoom: !1, 13718 tint: !1, 13719 tintColour: "#333", 13720 tintOpacity: 0.4, 13721 gallery: !1, 13722 galleryActiveClass: "zoomGalleryActive", 13723 imageCrossfade: !1, 13724 constrainType: !1, 13725 constrainSize: !1, 13726 loadingIcon: !1, 13727 cursor: "default", 13728 responsive: !0, 13729 onComplete: l.noop, 13730 onDestroy: function () {}, 13731 onZoomedImageLoaded: function () {}, 13732 onImageSwap: l.noop, 13733 onImageSwapComplete: l.noop, 13734 }); 13735 })(jQuery, (window, document)), 13736 (function (f) { 13737 var n = { 13738 url: !1, 13739 callback: !1, 13740 target: !1, 13741 duration: 120, 13742 on: "mouseover", 13743 touch: !0, 13744 onZoomIn: !1, 13745 onZoomOut: !1, 13746 magnify: 1, 13747 }; 13748 (f.zoom = function (e, t, n, o) { 13749 var i, 13750 s, 13751 r, 13752 a, 13753 l, 13754 c, 13755 d, 13756 u = f(e), 13757 p = u.css("position"), 13758 h = f(t); 13759 return ( 13760 (e.style.position = /(absolute|fixed)/.test(p) ? p : "relative"), 13761 (e.style.overflow = "hidden"), 13762 (n.style.width = n.style.height = ""), 13763 f(n) 13764 .addClass("zoomImg") 13765 .css({ 13766 position: "absolute", 13767 top: 0, 13768 left: 0, 13769 opacity: 0, 13770 width: n.width * o, 13771 height: n.height * o, 13772 border: "none", 13773 maxWidth: "none", 13774 maxHeight: "none", 13775 }) 13776 .appendTo(e), 13777 { 13778 init: function () { 13779 (s = u.outerWidth()), 13780 (i = u.outerHeight()), 13781 (r = 13782 t === e 13783 ? ((a = s), i) 13784 : ((a = h.outerWidth()), h.outerHeight())), 13785 (l = (n.width - s) / a), 13786 (c = (n.height - i) / r), 13787 (d = h.offset()); 13788 }, 13789 move: function (e) { 13790 var t = e.pageX - d.left, 13791 o = e.pageY - d.top, 13792 o = Math.max(Math.min(o, r), 0), 13793 t = Math.max(Math.min(t, a), 0); 13794 (n.style.left = t * -l + "px"), (n.style.top = o * -c + "px"); 13795 }, 13796 } 13797 ); 13798 }), 13799 (f.fn.zoom = function (o) { 13800 return this.each(function () { 13801 var i = f.extend({}, n, o || {}), 13802 s = (i.target && f(i.target)[0]) || this, 13803 e = this, 13804 r = f(e), 13805 a = document.createElement("img"), 13806 l = f(a), 13807 c = "mousemove.zoom", 13808 d = !1, 13809 u = !1; 13810 if (!i.url) { 13811 var t = e.querySelector("img"); 13812 if ( 13813 (t && 13814 (i.url = t.getAttribute("data-src") || t.currentSrc || t.src), 13815 !i.url) 13816 ) 13817 return; 13818 } 13819 r.one( 13820 "zoom.destroy", 13821 function (e, t) { 13822 r.off(".zoom"), 13823 (s.style.position = e), 13824 (s.style.overflow = t), 13825 (a.onload = null), 13826 l.remove(); 13827 }.bind(this, s.style.position, s.style.overflow) 13828 ), 13829 (a.onload = function () { 13830 function t(e) { 13831 n.init(), 13832 n.move(e), 13833 l 13834 .stop() 13835 .fadeTo( 13836 f.support.opacity ? i.duration : 0, 13837 1, 13838 !!f.isFunction(i.onZoomIn) && i.onZoomIn.call(a) 13839 ); 13840 } 13841 function o() { 13842 l.stop().fadeTo( 13843 i.duration, 13844 0, 13845 !!f.isFunction(i.onZoomOut) && i.onZoomOut.call(a) 13846 ); 13847 } 13848 var n = f.zoom(s, e, a, i.magnify); 13849 "grab" === i.on 13850 ? r.on("mousedown.zoom", function (e) { 13851 1 === e.which && 13852 (f(document).one("mouseup.zoom", function () { 13853 o(), f(document).off(c, n.move); 13854 }), 13855 t(e), 13856 f(document).on(c, n.move), 13857 e.preventDefault()); 13858 }) 13859 : "click" === i.on 13860 ? r.on("click.zoom", function (e) { 13861 return d 13862 ? void 0 13863 : ((d = !0), 13864 t(e), 13865 f(document).on(c, n.move), 13866 f(document).one("click.zoom", function () { 13867 o(), (d = !1), f(document).off(c, n.move); 13868 }), 13869 !1); 13870 }) 13871 : "toggle" === i.on 13872 ? r.on("click.zoom", function (e) {
13873 d ? o() : t(e), (d = !d); 13874 }) 13875 : "mouseover" === i.on && 13876 (n.init(), 13877 r 13878 .on("mouseenter.zoom", t) 13879 .on("mouseleave.zoom", o) 13880 .on(c, n.move)), 13881 i.touch && 13882 r 13883 .on("touchstart.zoom", function (e) { 13884 e.preventDefault(), 13885 u 13886 ? ((u = !1), o()) 13887 : ((u = !0), 13888 t( 13889 e.originalEvent.touches[0] || 13890 e.originalEvent.changedTouches[0] 13891 )); 13892 }) 13893 .on("touchmove.zoom", function (e) { 13894 e.preventDefault(), 13895 n.move( 13896 e.originalEvent.touches[0] || 13897 e.originalEvent.changedTouches[0] 13898 ); 13899 }) 13900 .on("touchend.zoom", function (e) { 13901 e.preventDefault(), u && ((u = !1), o()); 13902 }), 13903 f.isFunction(i.callback) && i.callback.call(a); 13904 }), 13905 a.setAttribute("role", "presentation"), 13906 (a.alt = ""), 13907 (a.src = i.url); 13908 }); 13909 }), 13910 (f.fn.zoom.defaults = n); 13911 })(window.jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.