channel.home.js 233 KB
!function(e) { function t(i) { if (n[i]) return n[i].exports; var r = n[i] = {exports: {}, id: i, loaded: !1}; return e[i].call(r.exports, r, r.exports, t), r.loaded = !0, r.exports;} var n = {}; return t.m = e, t.c = n, t.p='', t(0);}([function(e, t, n) { n(1) }, function(e, t, n) { function i() { d.hasClass('menu-open') && (d.removeClass('menu-open'), f.hide(), s('.sub-nav').removeClass('show'), h.removeClass('on'));} function r(e) { e.find('li').on('touchstart', function() { e.find('.highlight').removeClass('highlight'), s(this).addClass('highlight');}).on('touchend touchcancel', function() { s(this).removeClass('highlight') }) } function a() { v += 10, g.css({transform: "rotateX(" + v+'deg)','-webkit-transform': "rotateX(" + v+'deg)','-moz-transform': "rotateX(" + v+'deg)'}), v / 90 % 2 === 1 && (y ? (g.addClass('animate'), y = !1):(g.removeClass('animate'), y = !0)), v / 90 % 2 === 0 && v % 360 !== 0 ? window.setTimeout(a, 3e3):v % 360 === 0 ? window.setTimeout(a, 6e4):window.requestAnimationFrame(a) } var o, s = n(2), l = n(3), u = n(4), c = n(6), p = n(7), d = s('.mobile-wrap'), f = s('.overlay'), h = s('.side-nav'), m = s('.sub-nav'), g = s('.home-header .logo'), v = 0, y = !0; n(8), c.attach(document.body), u(s('img.lazy')), p('.notice', 1e3 * s('.notice').data('time')), s('.nav-btn').on('touchstart', function() { return h.css('pointer-events','none'), d.addClass('menu-open'), f.show().css('opacity', .3), h.addClass('on'), setTimeout(function() { h.css('pointer-events','auto') }, 400), !1;}), f.on('touchstart', function() { return i(), !1;}), h.on('touchmove scroll', function() { return !1;}), h.on('touchend','li', function(e) { return s(this).find('.sub-nav').size() > 0 && (s('.sub-nav').removeClass('show'), s(this).find('.sub-nav').addClass('show'), s(this).find('.highlight').removeClass('highlight')), e.target.pathname === location.pathname ? (i(), !1):void 0 }), m.each(function() { s(this).find('li').eq(0).on('click', function() { return s('.sub-nav').removeClass('show'), !1;}) }).on('touchstart', function(e) { e.currentTarget !== e.target && m.find('li').removeClass('current') }), r(h), r(m), s('.banner-swiper').find('li').size() > 1 && new l('.banner-swiper', {lazyLoading: !0, lazyLoadingInPrevNext: !0, loop: !0, autoplay: 3e3, autoplayDisableOnInteraction: !1, paginationClickable: !0, slideElement:'li', pagination:'.banner-top .pagination-inner'}), new l('.brands-swiper', {grabCursor: !0, slidesPerView:'auto', wrapperClass:'brands-list', slideElement:'li'}), new l('.recommend-swiper', {grabCursor: !0, slidesPerView:'auto', wrapperClass:'recommend-list', slideElement:'li'}), s('.trend-topic-swiper').find('li').size() > 1 && new l('.trend-topic-swiper', {loop: !0, autoplay: 3e3, autoplayDisableOnInteraction: !1, paginationClickable: !0, slideElement:'li', pagination:'.trend-topic-content .pagination-inner'}), s('.fresh-list-swiper').find('li').size() > 1 && new l('.fresh-list-swiper', {lazyLoading: !0, lazyLoadingInPrevNext: !0, grabCursor: !0, slidesPerView:'auto', slideElement:'li', watchSlidesVisibility: !0}), s('.category-swiper').each(function(e) { o = "category-swiper" + e, s(this).addClass(o), s("." + o).find('.swiper-slide').size() > 1 && new l("." + o, {loop: !0, autoplay: 3e3, autoplayDisableOnInteraction: !1, paginationClickable: !0, slideElement:'li', pagination: "." + o+' .pagination-inner'}) }), setTimeout(a, 3e3), s('.home-header .iconfont').on('touchstart', function() { s(this).addClass('highlight') }).on('touchend touchcancel', function() { s(this).removeClass('highlight');}), window.reMarginFooter('.footer-tab'), t.set = function(e) { window.setCookie('_Channel', e, {expires: 365, domain:'.m.yohobuy.com'});}, n(10)();}, function(e, t, n) { var i, r;/* !
	 * jQuery JavaScript Library v2.2.4
	 * http://jquery.com/
	 *
	 * Includes Sizzle.js
	 * http://sizzlejs.com/
	 *
	 * Copyright jQuery Foundation and other contributors
	 * Released under the MIT license
	 * http://jquery.org/license
	 *
	 * Date: 2016-05-20T17:23Z
	 */
    !function(t, n) { "object" == typeof e && "object" == typeof e.exports ? e.exports = t.document ? n(t, !0):function(e) { if (!e.document) throw new Error('jQuery requires a window with a document'); return n(e) }:n(t) }("undefined" != typeof window ? window:this, function(n, a) { function o(e) { var t = !!e&&'length'in e && e.length, n = ue.type(e); return "function" === n || ue.isWindow(e) ? !1:"array" === n || 0 === t || "number" == typeof t && t > 0 && t - 1 in e } function s(e, t, n) { if (ue.isFunction(t)) return ue.grep(e, function(e, i) { return !!t.call(e, i, e) !== n }); if (t.nodeType) return ue.grep(e, function(e) { return e === t !== n }); if ("string" == typeof t) { if (we.test(t)) return ue.filter(t, e, n); t = ue.filter(t, e) } return ue.grep(e, function(e) { return ie.call(t, e) > -1 !== n });} function l(e, t) { for (;(e = e[t]) && 1 !== e.nodeType;);return e;} function u(e) { var t = {}; return ue.each(e.match(Ee) || [], function(e, n) { t[n] = !0;}), t;} function c() { Z.removeEventListener('DOMContentLoaded', c), n.removeEventListener('load', c), ue.ready() } function p() { this.expando = ue.expando + p.uid++;} function d(e, t, n) { var i; if (void 0 === n && 1 === e.nodeType) if (i = "data-" + t.replace(Le,'-$&').toLowerCase(), n = e.getAttribute(i), "string" == typeof n) { try { n = "true" === n ? !0:"false" === n ? !1:"null" === n ? null:+n + "" === n ? +n:ze.test(n) ? ue.parseJSON(n):n } catch (r) {}De.set(e, t, n) } else n = void 0; return n;} function f(e, t, n, i) { var r, a = 1, o = 20, s = i ? function() { return i.cur();}:function() { return ue.css(e, t,'');}, l = s(), u = n && n[3] || (ue.cssNumber[t]?'':'px'), c = (ue.cssNumber[t] || "px" !== u && +l) && Ie.exec(ue.css(e, t)); if (c && c[3] !== u) { u = u || c[3], n = n || [], c = +l || 1; do a = a||'.5', c /= a, ue.style(e, t, c + u); while (a !== (a = s() / l) && 1 !== a && --o);} return n && (c = +c || +l || 0, r = n[1] ? c + (n[1] + 1) * n[2]:+n[2], i && (i.unit = u, i.start = c, i.end = r)), r } function h(e, t) { var n = "undefined" != typeof e.getElementsByTagName ? e.getElementsByTagName(t||'*'):"undefined" != typeof e.querySelectorAll ? e.querySelectorAll(t||'*'):[]; return void 0 === t || t && ue.nodeName(e, t) ? ue.merge([e], n):n;} function m(e, t) { for (var n = 0, i = e.length; i > n; n++)Pe.set(e[n],'globalEval', !t || Pe.get(t[n],'globalEval')) } function g(e, t, n, i, r) { for (var a, o, s, l, u, c, p = t.createDocumentFragment(), d = [], f = 0, g = e.length; g > f; f++) if (a = e[f], a || 0 === a) if ("object" === ue.type(a))ue.merge(d, a.nodeType ? [a]:a); else if (Fe.test(a)) { for (o = o || p.appendChild(t.createElement('div')), s = (Re.exec(a) || ['',''])[1].toLowerCase(), l = je[s] || je._default, o.innerHTML = l[1] + ue.htmlPrefilter(a) + l[2], c = l[0]; c--;)o = o.lastChild; ue.merge(d, o.childNodes), o = p.firstChild, o.textContent = "" } else d.push(t.createTextNode(a)); for (p.textContent='', f = 0; a = d[f++];) if (i && ue.inArray(a, i) > -1)r && r.push(a); else if (u = ue.contains(a.ownerDocument, a), o = h(p.appendChild(a),'script'), u && m(o), n) for (c = 0; a = o[c++];)qe.test(a.type||'') && n.push(a); return p } function v() { return !0;} function y() { return !1 } function w() { try { return Z.activeElement;} catch (e) {} } function b(e, t, n, i, r, a) { var o, s; if ("object" == typeof t) { "string" != typeof n && (i = i || n, n = void 0); for (s in t)b(e, s, n, i, t[s], a); return e } if (null == i && null == r ? (r = n, i = n = void 0):null == r && ("string" == typeof n ? (r = i, i = void 0):(r = i, i = n, n = void 0)), r === !1)r = y; else if (!r) return e; return 1 === a && (o = r, r = function(e) { return ue().off(e), o.apply(this, arguments) }, r.guid = o.guid || (o.guid = ue.guid++)), e.each(function() { ue.event.add(this, t, r, i, n) });} function x(e, t) { return ue.nodeName(e,'table') && ue.nodeName(11 !== t.nodeType ? t:t.firstChild,'tr') ? e.getElementsByTagName('tbody')[0] || e.appendChild(e.ownerDocument.createElement('tbody')):e;} function T(e) { return e.type = (null !== e.getAttribute('type')) + "/" + e.type, e;} function C(e) { var t = $e.exec(e.type); return t ? e.type = t[1]:e.removeAttribute('type'), e } function S(e, t) { var n, i, r, a, o, s, l, u; if (1 === t.nodeType) { if (Pe.hasData(e) && (a = Pe.access(e), o = Pe.set(t, a), u = a.events)) { delete o.handle, o.events = {}; for (r in u) for (n = 0, i = u[r].length; i > n; n++)ue.event.add(t, r, u[r][n]);}De.hasData(e) && (s = De.access(e), l = ue.extend({}, s), De.set(t, l)) } } function E(e, t) { var n = t.nodeName.toLowerCase(); "input" === n && Be.test(e.type) ? t.checked = e.checked:"input" !== n && "textarea" !== n || (t.defaultValue = e.defaultValue);} function k(e, t, n, i) { t = te.apply([], t); var r, a, o, s, l, u, c = 0, p = e.length, d = p - 1, f = t[0], m = ue.isFunction(f); if (m || p > 1 && "string" == typeof f && !se.checkClone && Ve.test(f)) return e.each(function(r) { var a = e.eq(r); m && (t[0] = f.call(this, r, a.html())), k(a, t, n, i);}); if (p && (r = g(t, e[0].ownerDocument, !1, e, i), a = r.firstChild, 1 === r.childNodes.length && (r = a), a || i)) { for (o = ue.map(h(r,'script'), T), s = o.length; p > c; c++)l = r, c !== d && (l = ue.clone(l, !0, !0), s && ue.merge(o, h(l,'script'))), n.call(e[c], l, c); if (s) for (u = o[o.length - 1].ownerDocument, ue.map(o, C), c = 0; s > c; c++)l = o[c], qe.test(l.type||'') && !Pe.access(l,'globalEval') && ue.contains(u, l) && (l.src ? ue._evalUrl && ue._evalUrl(l.src):ue.globalEval(l.textContent.replace(Ue,''))) } return e } function A(e, t, n) { for (var i, r = t ? ue.filter(t, e):e, a = 0; null != (i = r[a]); a++)n || 1 !== i.nodeType || ue.cleanData(h(i)), i.parentNode && (n && ue.contains(i.ownerDocument, i) && m(h(i,'script')), i.parentNode.removeChild(i)); return e } function M(e, t) { var n = ue(t.createElement(e)).appendTo(t.body), i = ue.css(n[0],'display'); return n.detach(), i;} function P(e) { var t = Z, n = Qe[e]; return n || (n = M(e, t), "none" !== n && n || (Ke = (Ke || ue('<iframe frameborder=\'0\' width=\'0\' height=\'0\'/>')).appendTo(t.documentElement), t = Ke[0].contentDocument, t.write(), t.close(), n = M(e, t), Ke.detach()), Qe[e] = n), n;} function D(e, t, n) { var i, r, a, o, s = e.style; return n = n || et(e), o = n ? n.getPropertyValue(t) || n[t]:void 0, "" !== o && void 0 !== o || ue.contains(e.ownerDocument, e) || (o = ue.style(e, t)), n && !se.pixelMarginRight() && Ze.test(o) && Je.test(t) && (i = s.width, r = s.minWidth, a = s.maxWidth, s.minWidth = s.maxWidth = s.width = o, o = n.width, s.width = i, s.minWidth = r, s.maxWidth = a), void 0 !== o ? o+'':o } function z(e, t) { return {get: function() { return e() ? void delete this.get:(this.get = t).apply(this, arguments);}} } function L(e) { if (e in st) return e; for (var t = e[0].toUpperCase() + e.slice(1), n = ot.length; n--;) if (e = ot[n] + t, e in st) return e;} function N(e, t, n) { var i = Ie.exec(t); return i ? Math.max(0, i[2] - (n || 0)) + (i[3]||'px'):t;} function I(e, t, n, i, r) { for (var a = n === (i?'border':'content') ? 4:"width" === t ? 1:0, o = 0; 4 > a; a += 2)"margin" === n && (o += ue.css(e, n + Oe[a], !0, r)), i ? ("content" === n && (o -= ue.css(e, "padding" + Oe[a], !0, r)), "margin" !== n && (o -= ue.css(e, "border" + Oe[a]+'Width', !0, r))):(o += ue.css(e, "padding" + Oe[a], !0, r), "padding" !== n && (o += ue.css(e, "border" + Oe[a]+'Width', !0, r))); return o;} function O(e, t, n) { var i = !0, r = "width" === t ? e.offsetWidth:e.offsetHeight, a = et(e), o = "border-box" === ue.css(e,'boxSizing', !1, a); if (0 >= r || null == r) { if (r = D(e, t, a), (0 > r || null == r) && (r = e.style[t]), Ze.test(r)) return r; i = o && (se.boxSizingReliable() || r === e.style[t]), r = parseFloat(r) || 0 } return r + I(e, t, n || (o?'border':'content'), i, a) + "px" } function H(e, t) { for (var n, i, r, a = [], o = 0, s = e.length; s > o; o++)i = e[o], i.style && (a[o] = Pe.get(i,'olddisplay'), n = i.style.display, t ? (a[o] || "none" !== n || (i.style.display=''), "" === i.style.display && He(i) && (a[o] = Pe.access(i,'olddisplay', P(i.nodeName)))):(r = He(i), "none" === n && r || Pe.set(i,'olddisplay', r ? n:ue.css(i,'display')))); for (o = 0; s > o; o++)i = e[o], i.style && (t && "none" !== i.style.display && "" !== i.style.display || (i.style.display = t ? a[o]||'':'none')); return e } function B(e, t, n, i, r) { return new B.prototype.init(e, t, n, i, r);} function R() { return n.setTimeout(function() { lt = void 0 }), lt = ue.now();} function q(e, t) { var n, i = 0, r = {height: e}; for (t = t ? 1:0; 4 > i; i += 2 - t)n = Oe[i], r["margin" + n] = r["padding" + n] = e; return t && (r.opacity = r.width = e), r } function j(e, t, n) { for (var i, r = (_.tweeners[t] || []).concat(_.tweeners['*']), a = 0, o = r.length; o > a; a++) if (i = r[a].call(n, t, e)) return i } function F(e, t, n) { var i, r, a, o, s, l, u, c, p = this, d = {}, f = e.style, h = e.nodeType && He(e), m = Pe.get(e,'fxshow'); n.queue || (s = ue._queueHooks(e,'fx'), null == s.unqueued && (s.unqueued = 0, l = s.empty.fire, s.empty.fire = function() { s.unqueued || l() }), s.unqueued++, p.always(function() { p.always(function() { s.unqueued--, ue.queue(e,'fx').length || s.empty.fire();});})), 1 === e.nodeType && ('height'in t||'width'in t) && (n.overflow = [f.overflow, f.overflowX, f.overflowY], u = ue.css(e,'display'), c = "none" === u ? Pe.get(e,'olddisplay') || P(e.nodeName):u, "inline" === c && "none" === ue.css(e,'float') && (f.display='inline-block')), n.overflow && (f.overflow='hidden', p.always(function() { f.overflow = n.overflow[0], f.overflowX = n.overflow[1], f.overflowY = n.overflow[2] })); for (i in t) if (r = t[i], ct.exec(r)) { if (delete t[i], a = a || "toggle" === r, r === (h?'hide':'show')) { if ("show" !== r || !m || void 0 === m[i]) continue; h = !0 }d[i] = m && m[i] || ue.style(e, i);} else u = void 0; if (ue.isEmptyObject(d))"inline" === ("none" === u ? P(e.nodeName):u) && (f.display = u); else { m?'hidden'in m && (h = m.hidden):m = Pe.access(e,'fxshow', {}), a && (m.hidden = !h), h ? ue(e).show():p.done(function() { ue(e).hide() }), p.done(function() { var t; Pe.remove(e,'fxshow'); for (t in d)ue.style(e, t, d[t]) }); for (i in d)o = j(h ? m[i]:0, i, p), i in m || (m[i] = o.start, h && (o.end = o.start, o.start = "width" === i || "height" === i ? 1:0));} } function W(e, t) { var n, i, r, a, o; for (n in e) if (i = ue.camelCase(n), r = t[i], a = e[n], ue.isArray(a) && (r = a[1], a = e[n] = a[0]), n !== i && (e[i] = a, delete e[n]), o = ue.cssHooks[i], o&&'expand'in o) { a = o.expand(a), delete e[i]; for (n in a)n in e || (e[n] = a[n], t[n] = r);} else t[i] = r;} function _(e, t, n) { var i, r, a = 0, o = _.prefilters.length, s = ue.Deferred().always(function() { delete l.elem;}), l = function() { if (r) return !1; for (var t = lt || R(), n = Math.max(0, u.startTime + u.duration - t), i = n / u.duration || 0, a = 1 - i, o = 0, l = u.tweens.length; l > o; o++)u.tweens[o].run(a); return s.notifyWith(e, [u, a, n]), 1 > a && l ? n:(s.resolveWith(e, [u]), !1);}, u = s.promise({elem: e, props: ue.extend({}, t), opts: ue.extend(!0, {specialEasing: {}, easing: ue.easing._default}, n), originalProperties: t, originalOptions: n, startTime: lt || R(), duration: n.duration, tweens: [], createTween: function(t, n) { var i = ue.Tween(e, u.opts, t, n, u.opts.specialEasing[t] || u.opts.easing); return u.tweens.push(i), i;}, stop: function(t) { var n = 0, i = t ? u.tweens.length:0; if (r) return this; for (r = !0; i > n; n++)u.tweens[n].run(1); return t ? (s.notifyWith(e, [u, 1, 0]), s.resolveWith(e, [u, t])):s.rejectWith(e, [u, t]), this;}}), c = u.props; for (W(c, u.opts.specialEasing); o > a; a++) if (i = _.prefilters[a].call(u, e, c, u.opts)) return ue.isFunction(i.stop) && (ue._queueHooks(u.elem, u.opts.queue).stop = ue.proxy(i.stop, i)), i; return ue.map(c, j, u), ue.isFunction(u.opts.start) && u.opts.start.call(e, u), ue.fx.timer(ue.extend(l, {elem: e, anim: u, queue: u.opts.queue})), u.progress(u.opts.progress).done(u.opts.done, u.opts.complete).fail(u.opts.fail).always(u.opts.always);} function X(e) { return e.getAttribute && e.getAttribute('class') || "";} function G(e) { return function(t, n) { "string" != typeof t && (n = t, t='*'); var i, r = 0, a = t.toLowerCase().match(Ee) || []; if (ue.isFunction(n)) for (;i = a[r++];)"+" === i[0] ? (i = i.slice(1)||'*', (e[i] = e[i] || []).unshift(n)):(e[i] = e[i] || []).push(n) };} function Y(e, t, n, i) { function r(s) { var l; return a[s] = !0, ue.each(e[s] || [], function(e, s) { var u = s(t, n, i); return "string" != typeof u || o || a[u] ? o ? !(l = u):void 0:(t.dataTypes.unshift(u), r(u), !1);}), l } var a = {}, o = e === Dt; return r(t.dataTypes[0]) || !a['*'] && r('*');} function V(e, t) { var n, i, r = ue.ajaxSettings.flatOptions || {}; for (n in t) void 0 !== t[n] && ((r[n] ? e:i || (i = {}))[n] = t[n]); return i && ue.extend(!0, e, i), e } function $(e, t, n) { for (var i, r, a, o, s = e.contents, l = e.dataTypes; "*" === l[0];)l.shift(), void 0 === i && (i = e.mimeType || t.getResponseHeader('Content-Type')); if (i) for (r in s) if (s[r] && s[r].test(i)) { l.unshift(r); break;} if (l[0]in n)a = l[0]; else { for (r in n) { if (!l[0] || e.converters[r + " " + l[0]]) { a = r; break }o || (o = r);}a = a || o } return a ? (a !== l[0] && l.unshift(a), n[a]):void 0;} function U(e, t, n, i) { var r, a, o, s, l, u = {}, c = e.dataTypes.slice(); if (c[1]) for (o in e.converters)u[o.toLowerCase()] = e.converters[o]; for (a = c.shift(); a;) if (e.responseFields[a] && (n[e.responseFields[a]] = t), !l && i && e.dataFilter && (t = e.dataFilter(t, e.dataType)), l = a, a = c.shift()) if ("*" === a)a = l; else if ("*" !== l && l !== a) { if (o = u[l + " " + a] || u["* " + a], !o) for (r in u) if (s = r.split(' '), s[1] === a && (o = u[l + " " + s[0]] || u["* " + s[0]])) { o === !0 ? o = u[r]:u[r] !== !0 && (a = s[0], c.unshift(s[1])); break } if (o !== !0) if (o && e['throws'])t = o(t); else try { t = o(t) } catch (p) { return {state:'parsererror', error: o ? p:"No conversion from " + l + " to " + a};} } return {state:'success', data: t} } function K(e, t, n, i) { var r; if (ue.isArray(t))ue.each(t, function(t, r) { n || It.test(e) ? i(e, r):K(e + "[" + ("object" == typeof r && null != r ? t:'')+']', r, n, i);}); else if (n || "object" !== ue.type(t))i(e, t); else for (r in t)K(e + "[" + r+']', t[r], n, i);} function Q(e) { return ue.isWindow(e) ? e:9 === e.nodeType && e.defaultView;} var J = [], Z = n.document, ee = J.slice, te = J.concat, ne = J.push, ie = J.indexOf, re = {}, ae = re.toString, oe = re.hasOwnProperty, se = {}, le='2.2.4', ue = function(e, t) { return new ue.fn.init(e, t) }, ce = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, pe = /^-ms-/, de = /-([\da-z])/gi, fe = function(e, t) { return t.toUpperCase() }; ue.fn = ue.prototype = {jquery: le, constructor: ue, selector:'', length: 0, toArray: function() { return ee.call(this);}, get: function(e) { return null != e ? 0 > e ? this[e + this.length]:this[e]:ee.call(this) }, pushStack: function(e) { var t = ue.merge(this.constructor(), e); return t.prevObject = this, t.context = this.context, t;}, each: function(e) { return ue.each(this, e);}, map: function(e) { return this.pushStack(ue.map(this, function(t, n) { return e.call(t, n, t);})) }, slice: function() { return this.pushStack(ee.apply(this, arguments));}, first: function() { return this.eq(0);}, last: function() { return this.eq(-1);}, eq: function(e) { var t = this.length, n = +e + (0 > e ? t:0); return this.pushStack(n >= 0 && t > n ? [this[n]]:[]);}, end: function() { return this.prevObject || this.constructor() }, push: ne, sort: J.sort, splice: J.splice}, ue.extend = ue.fn.extend = function() { var e, t, n, i, r, a, o = arguments[0] || {}, s = 1, l = arguments.length, u = !1; for ("boolean" == typeof o && (u = o, o = arguments[s] || {}, s++), "object" == typeof o || ue.isFunction(o) || (o = {}), s === l && (o = this, s--); l > s; s++) if (null != (e = arguments[s])) for (t in e)n = o[t], i = e[t], o !== i && (u && i && (ue.isPlainObject(i) || (r = ue.isArray(i))) ? (r ? (r = !1, a = n && ue.isArray(n) ? n:[]):a = n && ue.isPlainObject(n) ? n:{}, o[t] = ue.extend(u, a, i)):void 0 !== i && (o[t] = i)); return o }, ue.extend({expando: "jQuery" + (le + Math.random()).replace(/\D/g,''), isReady: !0, error: function(e) { throw new Error(e) }, noop: function() {}, isFunction: function(e) { return "function" === ue.type(e) }, isArray: Array.isArray, isWindow: function(e) { return null != e && e === e.window;}, isNumeric: function(e) { var t = e && e.toString(); return !ue.isArray(e) && t - parseFloat(t) + 1 >= 0;}, isPlainObject: function(e) { var t; if ("object" !== ue.type(e) || e.nodeType || ue.isWindow(e)) return !1; if (e.constructor && !oe.call(e,'constructor') && !oe.call(e.constructor.prototype || {},'isPrototypeOf')) return !1; for (t in e);return void 0 === t || oe.call(e, t);}, isEmptyObject: function(e) { var t; for (t in e) return !1; return !0 }, type: function(e) { return null == e ? e+'':"object" == typeof e || "function" == typeof e ? re[ae.call(e)]||'object':typeof e;}, globalEval: function(e) { var t, n = eval; e = ue.trim(e), e && (1 === e.indexOf('use strict') ? (t = Z.createElement('script'), t.text = e, Z.head.appendChild(t).parentNode.removeChild(t)):n(e)) }, camelCase: function(e) { return e.replace(pe,'ms-').replace(de, fe) }, nodeName: function(e, t) { return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase() }, each: function(e, t) { var n, i = 0; if (o(e)) for (n = e.length; n > i && t.call(e[i], i, e[i]) !== !1; i++);else for (i in e) if (t.call(e[i], i, e[i]) === !1) break; return e;}, trim: function(e) { return null == e?'':(e+'').replace(ce,'') }, makeArray: function(e, t) { var n = t || []; return null != e && (o(Object(e)) ? ue.merge(n, "string" == typeof e ? [e]:e):ne.call(n, e)), n;}, inArray: function(e, t, n) { return null == t ? -1:ie.call(t, e, n) }, merge: function(e, t) { for (var n = +t.length, i = 0, r = e.length; n > i; i++)e[r++] = t[i]; return e.length = r, e }, grep: function(e, t, n) { for (var i, r = [], a = 0, o = e.length, s = !n; o > a; a++)i = !t(e[a], a), i !== s && r.push(e[a]); return r;}, map: function(e, t, n) { var i, r, a = 0, s = []; if (o(e)) for (i = e.length; i > a; a++)r = t(e[a], a, n), null != r && s.push(r); else for (a in e)r = t(e[a], a, n), null != r && s.push(r); return te.apply([], s);}, guid: 1, proxy: function(e, t) { var n, i, r; return "string" == typeof t && (n = e[t], t = e, e = n), ue.isFunction(e) ? (i = ee.call(arguments, 2), r = function() { return e.apply(t || this, i.concat(ee.call(arguments)));}, r.guid = e.guid = e.guid || ue.guid++, r):void 0 }, now: Date.now, support: se}), "function" == typeof Symbol && (ue.fn[Symbol.iterator] = J[Symbol.iterator]), ue.each('Boolean Number String Function Array Date RegExp Object Error Symbol'.split(' '), function(e, t) { re["[object " + t+']'] = t.toLowerCase();}); var he =/* !
	 * Sizzle CSS Selector Engine v2.2.1
	 * http://sizzlejs.com/
	 *
	 * Copyright jQuery Foundation and other contributors
	 * Released under the MIT license
	 * http://jquery.org/license
	 *
	 * Date: 2015-10-17
	 */
function(e) { function t(e, t, n, i) { var r, a, o, s, l, u, p, f, h = t && t.ownerDocument, m = t ? t.nodeType:9; if (n = n || [], "string" != typeof e || !e || 1 !== m && 9 !== m && 11 !== m) return n; if (!i && ((t ? t.ownerDocument || t:j) !== L && z(t), t = t || L, I)) { if (11 !== m && (u = ve.exec(e))) if (r = u[1]) { if (9 === m) { if (!(o = t.getElementById(r))) return n; if (o.id === r) return n.push(o), n } else if (h && (o = h.getElementById(r)) && R(t, o) && o.id === r) return n.push(o), n;} else { if (u[2]) return J.apply(n, t.getElementsByTagName(e)), n; if ((r = u[3]) && x.getElementsByClassName && t.getElementsByClassName) return J.apply(n, t.getElementsByClassName(r)), n;} if (x.qsa && !G[e+' '] && (!O || !O.test(e))) { if (1 !== m)h = t, f = e; else if ("object" !== t.nodeName.toLowerCase()) { for ((s = t.getAttribute('id')) ? s = s.replace(we,'\\$&'):t.setAttribute('id', s = q), p = E(e), a = p.length, l = de.test(s) ? "#" + s:"[id='" + s+'\']'; a--;)p[a] = l + " " + d(p[a]); f = p.join(','), h = ye.test(e) && c(t.parentNode) || t;} if (f) try { return J.apply(n, h.querySelectorAll(f)), n;} catch (g) {} finally { s === q && t.removeAttribute('id');} } } return A(e.replace(se,'$1'), t, n, i) } function n() { function e(n, i) { return t.push(n+' ') > T.cacheLength && delete e[t.shift()], e[n+' '] = i } var t = []; return e } function i(e) { return e[q] = !0, e;} function r(e) { var t = L.createElement('div'); try { return !!e(t) } catch (n) { return !1 } finally { t.parentNode && t.parentNode.removeChild(t), t = null } } function a(e, t) { for (var n = e.split('|'), i = n.length; i--;)T.attrHandle[n[i]] = t } function o(e, t) { var n = t && e, i = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || V) - (~e.sourceIndex || V); if (i) return i; if (n) for (;n = n.nextSibling;) if (n === t) return -1; return e ? 1:-1;} function s(e) { return function(t) { var n = t.nodeName.toLowerCase(); return "input" === n && t.type === e;} } function l(e) { return function(t) { var n = t.nodeName.toLowerCase(); return ("input" === n || "button" === n) && t.type === e };} function u(e) { return i(function(t) { return t = +t, i(function(n, i) { for (var r, a = e([], n.length, t), o = a.length; o--;)n[r = a[o]] && (n[r] = !(i[r] = n[r]));}) }) } function c(e) { return e && "undefined" != typeof e.getElementsByTagName && e;} function p() {} function d(e) { for (var t = 0, n = e.length, i=''; n > t; t++)i += e[t].value; return i;} function f(e, t, n) { var i = t.dir, r = n && "parentNode" === i, a = W++; return t.first ? function(t, n, a) { for (;t = t[i];) if (1 === t.nodeType || r) return e(t, n, a);}:function(t, n, o) { var s, l, u, c = [F, a]; if (o) { for (;t = t[i];) if ((1 === t.nodeType || r) && e(t, n, o)) return !0;} else for (;t = t[i];) if (1 === t.nodeType || r) { if (u = t[q] || (t[q] = {}), l = u[t.uniqueID] || (u[t.uniqueID] = {}), (s = l[i]) && s[0] === F && s[1] === a) return c[2] = s[2]; if (l[i] = c, c[2] = e(t, n, o)) return !0 } } } function h(e) { return e.length > 1 ? function(t, n, i) { for (var r = e.length; r--;) if (!e[r](t, n, i)) return !1; return !0 }:e[0];} function m(e, n, i) { for (var r = 0, a = n.length; a > r; r++)t(e, n[r], i); return i } function g(e, t, n, i, r) { for (var a, o = [], s = 0, l = e.length, u = null != t; l > s; s++)(a = e[s]) && (n && !n(a, i, r) || (o.push(a), u && t.push(s))); return o } function v(e, t, n, r, a, o) { return r && !r[q] && (r = v(r)), a && !a[q] && (a = v(a, o)), i(function(i, o, s, l) { var u, c, p, d = [], f = [], h = o.length, v = i || m(t||'*', s.nodeType ? [s]:s, []), y = !e || !i && t ? v:g(v, d, e, s, l), w = n ? a || (i ? e:h || r) ? []:o:y; if (n && n(y, w, s, l), r) for (u = g(w, f), r(u, [], s, l), c = u.length; c--;)(p = u[c]) && (w[f[c]] = !(y[f[c]] = p)); if (i) { if (a || e) { if (a) { for (u = [], c = w.length; c--;)(p = w[c]) && u.push(y[c] = p); a(null, w = [], u, l);} for (c = w.length; c--;)(p = w[c]) && (u = a ? ee(i, p):d[c]) > -1 && (i[u] = !(o[u] = p)) } } else w = g(w === o ? w.splice(h, w.length):w), a ? a(null, o, w, l):J.apply(o, w) }) } function y(e) { for (var t, n, i, r = e.length, a = T.relative[e[0].type], o = a || T.relative[' '], s = a ? 1:0, l = f(function(e) { return e === t }, o, !0), u = f(function(e) { return ee(t, e) > -1 }, o, !0), c = [function(e, n, i) { var r = !a && (i || n !== M) || ((t = n).nodeType ? l(e, n, i):u(e, n, i)); return t = null, r }]; r > s; s++) if (n = T.relative[e[s].type])c = [f(h(c), n)]; else { if (n = T.filter[e[s].type].apply(null, e[s].matches), n[q]) { for (i = ++s; r > i && !T.relative[e[i].type]; i++);return v(s > 1 && h(c), s > 1 && d(e.slice(0, s - 1).concat({value: " " === e[s - 2].type?'*':''})).replace(se,'$1'), n, i > s && y(e.slice(s, i)), r > i && y(e = e.slice(i)), r > i && d(e)) }c.push(n);} return h(c) } function w(e, n) { var r = n.length > 0, a = e.length > 0, o = function(i, o, s, l, u) { var c, p, d, f = 0, h='0', m = i && [], v = [], y = M, w = i || a && T.find.TAG('*', u), b = F += null == y ? 1:Math.random() || .1, x = w.length; for (u && (M = o === L || o || u); h !== x && null != (c = w[h]); h++) { if (a && c) { for (p = 0, o || c.ownerDocument === L || (z(c), s = !I); d = e[p++];) if (d(c, o || L, s)) { l.push(c); break }u && (F = b) }r && ((c = !d && c) && f--, i && m.push(c));} if (f += h, r && h !== f) { for (p = 0; d = n[p++];)d(m, v, o, s); if (i) { if (f > 0) for (;h--;)m[h] || v[h] || (v[h] = K.call(l)); v = g(v) }J.apply(l, v), u && !i && v.length > 0 && f + n.length > 1 && t.uniqueSort(l) } return u && (F = b, M = y), m;}; return r ? i(o):o;} var b, x, T, C, S, E, k, A, M, P, D, z, L, N, I, O, H, B, R, q = "sizzle" + 1 * new Date, j = e.document, F = 0, W = 0, _ = n(), X = n(), G = n(), Y = function(e, t) { return e === t && (D = !0), 0 }, V = 1 << 31, $ = {}.hasOwnProperty, U = [], K = U.pop, Q = U.push, J = U.push, Z = U.slice, ee = function(e, t) { for (var n = 0, i = e.length; i > n; n++) if (e[n] === t) return n; return -1;}, te='checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped', ne='[\\x20\\t\\r\\n\\f]', ie='(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+', re = "\\[" + ne + "*(" + ie + ")(?:" + ne + "*([*^$|!~]?=)" + ne + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + ie + "))|)" + ne+'*\\]', ae = ":(" + ie + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + re+')*)|.*)\\)|)', oe = new RegExp(ne+'+','g'), se = new RegExp("^" + ne + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ne+'+$','g'), le = new RegExp("^" + ne + "*," + ne+'*'), ue = new RegExp("^" + ne + "*([>+~]|" + ne + ")" + ne+'*'), ce = new RegExp("=" + ne + "*([^\\]'\"]*?)" + ne+'*\\]','g'), pe = new RegExp(ae), de = new RegExp("^" + ie+'$'), fe = {ID: new RegExp("^#(" + ie+')'), CLASS: new RegExp("^\\.(" + ie+')'), TAG: new RegExp("^(" + ie+'|[*])'), ATTR: new RegExp("^" + re), PSEUDO: new RegExp("^" + ae), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ne + "*(even|odd|(([+-]|)(\\d*)n|)" + ne + "*(?:([+-]|)" + ne + "*(\\d+)|))" + ne+'*\\)|)','i'), bool: new RegExp("^(?:" + te+')$','i'), needsContext: new RegExp("^" + ne + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ne + "*((?:-\\d)?\\d*)" + ne+'*\\)|)(?=[^-]|$)','i')}, he = /^(?:input|select|textarea|button)$/i, me = /^h\d$/i, ge = /^[^{]+\{\s*\[native \w/, ve = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, ye = /[+~]/, we = /'|\\/g, be = new RegExp("\\\\([\\da-f]{1,6}" + ne + "?|(" + ne+')|.)','ig'), xe = function(e, t, n) { var i = "0x" + t - 65536; return i !== i || n ? t:0 > i ? String.fromCharCode(i + 65536):String.fromCharCode(i >> 10 | 55296, 1023 & i | 56320);}, Te = function() { z() }; try { J.apply(U = Z.call(j.childNodes), j.childNodes), U[j.childNodes.length].nodeType } catch (Ce) { J = {apply: U.length ? function(e, t) { Q.apply(e, Z.call(t));}:function(e, t) { for (var n = e.length, i = 0; e[n++] = t[i++];);e.length = n - 1 }};}x = t.support = {}, S = t.isXML = function(e) { var t = e && (e.ownerDocument || e).documentElement; return t ? "HTML" !== t.nodeName:!1;}, z = t.setDocument = function(e) { var t, n, i = e ? e.ownerDocument || e:j; return i !== L && 9 === i.nodeType && i.documentElement ? (L = i, N = L.documentElement, I = !S(L), (n = L.defaultView) && n.top !== n && (n.addEventListener ? n.addEventListener('unload', Te, !1):n.attachEvent && n.attachEvent('onunload', Te)), x.attributes = r(function(e) { return e.className='i', !e.getAttribute('className') }), x.getElementsByTagName = r(function(e) { return e.appendChild(L.createComment('')), !e.getElementsByTagName('*').length }), x.getElementsByClassName = ge.test(L.getElementsByClassName), x.getById = r(function(e) { return N.appendChild(e).id = q, !L.getElementsByName || !L.getElementsByName(q).length }), x.getById ? (T.find.ID = function(e, t) { if ("undefined" != typeof t.getElementById && I) { var n = t.getElementById(e); return n ? [n]:[] } }, T.filter.ID = function(e) { var t = e.replace(be, xe); return function(e) { return e.getAttribute('id') === t;};}):(delete T.find.ID, T.filter.ID = function(e) { var t = e.replace(be, xe); return function(e) { var n = "undefined" != typeof e.getAttributeNode && e.getAttributeNode('id'); return n && n.value === t };}), T.find.TAG = x.getElementsByTagName ? function(e, t) { return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e):x.qsa ? t.querySelectorAll(e):void 0 }:function(e, t) { var n, i = [], r = 0, a = t.getElementsByTagName(e); if ("*" === e) { for (;n = a[r++];)1 === n.nodeType && i.push(n); return i } return a }, T.find.CLASS = x.getElementsByClassName && function(e, t) { return "undefined" != typeof t.getElementsByClassName && I ? t.getElementsByClassName(e):void 0;}, H = [], O = [], (x.qsa = ge.test(L.querySelectorAll)) && (r(function(e) { N.appendChild(e).innerHTML = "<a id='" + q + "'></a><select id='" + q+'-\r\\\' msallowcapture=\'\'><option selected=\'\'></option></select>', e.querySelectorAll('[msallowcapture^=\'\']').length && O.push("[*^$]=" + ne+'*(?:\'\'|"")'), e.querySelectorAll('[selected]').length || O.push("\\[" + ne + "*(?:value|" + te+')'), e.querySelectorAll("[id~=" + q+'-]').length || O.push('~='), e.querySelectorAll(':checked').length || O.push(':checked'), e.querySelectorAll("a#" + q+'+*').length || O.push('.#.+[+~]');}), r(function(e) { var t = L.createElement('input'); t.setAttribute('type','hidden'), e.appendChild(t).setAttribute('name','D'), e.querySelectorAll('[name=d]').length && O.push("name" + ne+'*[*^$|!~]?='), e.querySelectorAll(':enabled').length || O.push(':enabled',':disabled'), e.querySelectorAll('*,:x'), O.push(',.*:') })), (x.matchesSelector = ge.test(B = N.matches || N.webkitMatchesSelector || N.mozMatchesSelector || N.oMatchesSelector || N.msMatchesSelector)) && r(function(e) { x.disconnectedMatch = B.call(e,'div'), B.call(e,'[s!=\'\']:x'), H.push('!=', ae);}), O = O.length && new RegExp(O.join('|')), H = H.length && new RegExp(H.join('|')), t = ge.test(N.compareDocumentPosition), R = t || ge.test(N.contains) ? function(e, t) { var n = 9 === e.nodeType ? e.documentElement:e, i = t && t.parentNode; return e === i || !(!i || 1 !== i.nodeType || !(n.contains ? n.contains(i):e.compareDocumentPosition && 16 & e.compareDocumentPosition(i)));}:function(e, t) { if (t) for (;t = t.parentNode;) if (t === e) return !0; return !1 }, Y = t ? function(e, t) { if (e === t) return D = !0, 0; var n = !e.compareDocumentPosition - !t.compareDocumentPosition; return n ? n:(n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t):1, 1 & n || !x.sortDetached && t.compareDocumentPosition(e) === n ? e === L || e.ownerDocument === j && R(j, e) ? -1:t === L || t.ownerDocument === j && R(j, t) ? 1:P ? ee(P, e) - ee(P, t):0:4 & n ? -1:1);}:function(e, t) { if (e === t) return D = !0, 0; var n, i = 0, r = e.parentNode, a = t.parentNode, s = [e], l = [t]; if (!r || !a) return e === L ? -1:t === L ? 1:r ? -1:a ? 1:P ? ee(P, e) - ee(P, t):0; if (r === a) return o(e, t); for (n = e; n = n.parentNode;)s.unshift(n); for (n = t; n = n.parentNode;)l.unshift(n); for (;s[i] === l[i];)i++; return i ? o(s[i], l[i]):s[i] === j ? -1:l[i] === j ? 1:0;}, L):L;}, t.matches = function(e, n) { return t(e, null, null, n) }, t.matchesSelector = function(e, n) { if ((e.ownerDocument || e) !== L && z(e), n = n.replace(ce,'=\'$1\']'), x.matchesSelector && I && !G[n+' '] && (!H || !H.test(n)) && (!O || !O.test(n))) try { var i = B.call(e, n); if (i || x.disconnectedMatch || e.document && 11 !== e.document.nodeType) return i;} catch (r) {} return t(n, L, null, [e]).length > 0 }, t.contains = function(e, t) { return (e.ownerDocument || e) !== L && z(e), R(e, t) }, t.attr = function(e, t) { (e.ownerDocument || e) !== L && z(e); var n = T.attrHandle[t.toLowerCase()], i = n && $.call(T.attrHandle, t.toLowerCase()) ? n(e, t, !I):void 0; return void 0 !== i ? i:x.attributes || !I ? e.getAttribute(t):(i = e.getAttributeNode(t)) && i.specified ? i.value:null }, t.error = function(e) { throw new Error("Syntax error, unrecognized expression: " + e);}, t.uniqueSort = function(e) { var t, n = [], i = 0, r = 0; if (D = !x.detectDuplicates, P = !x.sortStable && e.slice(0), e.sort(Y), D) { for (;t = e[r++];)t === e[r] && (i = n.push(r)); for (;i--;)e.splice(n[i], 1) } return P = null, e }, C = t.getText = function(e) { var t, n='', i = 0, r = e.nodeType; if (r) { if (1 === r || 9 === r || 11 === r) { if ("string" == typeof e.textContent) return e.textContent; for (e = e.firstChild; e; e = e.nextSibling)n += C(e);} else if (3 === r || 4 === r) return e.nodeValue;} else for (;t = e[i++];)n += C(t); return n }, T = t.selectors = {cacheLength: 50, createPseudo: i, match: fe, attrHandle: {}, find: {}, relative: {'>': {dir:'parentNode', first: !0},' ': {dir:'parentNode'},'+': {dir:'previousSibling', first: !0},'~': {dir:'previousSibling'}}, preFilter: {ATTR: function(e) { return e[1] = e[1].replace(be, xe), e[3] = (e[3] || e[4] || e[5]||'').replace(be, xe), "~=" === e[2] && (e[3] = " " + e[3]+' '), e.slice(0, 4);}, CHILD: function(e) { return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || t.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1):2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])):e[3] && t.error(e[0]), e }, PSEUDO: function(e) { var t, n = !e[6] && e[2]; return fe.CHILD.test(e[0]) ? null:(e[3] ? e[2] = e[4] || e[5]||'':n && pe.test(n) && (t = E(n, !0)) && (t = n.indexOf(')', n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3)) }}, filter: {TAG: function(e) { var t = e.replace(be, xe).toLowerCase(); return "*" === e ? function() { return !0 }:function(e) { return e.nodeName && e.nodeName.toLowerCase() === t };}, CLASS: function(e) { var t = _[e+' ']; return t || (t = new RegExp("(^|" + ne + ")" + e + "(" + ne+'|$)')) && _(e, function(e) { return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute('class')||'');}) }, ATTR: function(e, n, i) { return function(r) { var a = t.attr(r, e); return null == a ? "!=" === n:n ? (a+='', "=" === n ? a === i:"!=" === n ? a !== i:"^=" === n ? i && 0 === a.indexOf(i):"*=" === n ? i && a.indexOf(i) > -1:"$=" === n ? i && a.slice(-i.length) === i:"~=" === n ? (" " + a.replace(oe,' ')+' ').indexOf(i) > -1:"|=" === n ? a === i || a.slice(0, i.length + 1) === i+'-':!1):!0;};}, CHILD: function(e, t, n, i, r) { var a = "nth" !== e.slice(0, 3), o = "last" !== e.slice(-4), s = "of-type" === t; return 1 === i && 0 === r ? function(e) { return !!e.parentNode;}:function(t, n, l) { var u, c, p, d, f, h, m = a !== o?'nextSibling':'previousSibling', g = t.parentNode, v = s && t.nodeName.toLowerCase(), y = !l && !s, w = !1; if (g) { if (a) { for (;m;) { for (d = t; d = d[m];) if (s ? d.nodeName.toLowerCase() === v:1 === d.nodeType) return !1; h = m = "only" === e && !h && "nextSibling" } return !0;} if (h = [o ? g.firstChild:g.lastChild], o && y) { for (d = g, p = d[q] || (d[q] = {}), c = p[d.uniqueID] || (p[d.uniqueID] = {}), u = c[e] || [], f = u[0] === F && u[1], w = f && u[2], d = f && g.childNodes[f]; d = ++f && d && d[m] || (w = f = 0) || h.pop();) if (1 === d.nodeType && ++w && d === t) { c[e] = [F, f, w]; break;} } else if (y && (d = t, p = d[q] || (d[q] = {}), c = p[d.uniqueID] || (p[d.uniqueID] = {}), u = c[e] || [], f = u[0] === F && u[1], w = f), w === !1) for (;(d = ++f && d && d[m] || (w = f = 0) || h.pop()) && ((s ? d.nodeName.toLowerCase() !== v:1 !== d.nodeType) || !++w || (y && (p = d[q] || (d[q] = {}), c = p[d.uniqueID] || (p[d.uniqueID] = {}), c[e] = [F, w]), d !== t)););return w -= r, w === i || w % i === 0 && w / i >= 0;} };}, PSEUDO: function(e, n) { var r, a = T.pseudos[e] || T.setFilters[e.toLowerCase()] || t.error("unsupported pseudo: " + e); return a[q] ? a(n):a.length > 1 ? (r = [e, e,'', n], T.setFilters.hasOwnProperty(e.toLowerCase()) ? i(function(e, t) { for (var i, r = a(e, n), o = r.length; o--;)i = ee(e, r[o]), e[i] = !(t[i] = r[o]);}):function(e) { return a(e, 0, r);}):a }}, pseudos: {not: i(function(e) { var t = [], n = [], r = k(e.replace(se,'$1')); return r[q] ? i(function(e, t, n, i) { for (var a, o = r(e, null, i, []), s = e.length; s--;)(a = o[s]) && (e[s] = !(t[s] = a)) }):function(e, i, a) { return t[0] = e, r(t, null, a, n), t[0] = null, !n.pop();} }), has: i(function(e) { return function(n) { return t(e, n).length > 0;} }), contains: i(function(e) { return e = e.replace(be, xe), function(t) { return (t.textContent || t.innerText || C(t)).indexOf(e) > -1 } }), lang: i(function(e) { return de.test(e||'') || t.error("unsupported lang: " + e), e = e.replace(be, xe).toLowerCase(), function(t) { var n; do if (n = I ? t.lang:t.getAttribute('xml:lang') || t.getAttribute('lang')) return n = n.toLowerCase(), n === e || 0 === n.indexOf(e+'-'); while ((t = t.parentNode) && 1 === t.nodeType);return !1 } }), target: function(t) { var n = e.location && e.location.hash; return n && n.slice(1) === t.id;}, root: function(e) { return e === N;}, focus: function(e) { return e === L.activeElement && (!L.hasFocus || L.hasFocus()) && !!(e.type || e.href || ~e.tabIndex);}, enabled: function(e) { return e.disabled === !1 }, disabled: function(e) { return e.disabled === !0 }, checked: function(e) { var t = e.nodeName.toLowerCase(); return "input" === t && !!e.checked || "option" === t && !!e.selected;}, selected: function(e) { return e.parentNode && e.parentNode.selectedIndex, e.selected === !0;}, empty: function(e) { for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeType < 6) return !1; return !0 }, parent: function(e) { return !T.pseudos.empty(e) }, header: function(e) { return me.test(e.nodeName) }, input: function(e) { return he.test(e.nodeName) }, button: function(e) { var t = e.nodeName.toLowerCase(); return "input" === t && "button" === e.type || "button" === t;}, text: function(e) { var t; return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute('type')) || "text" === t.toLowerCase());}, first: u(function() { return [0] }), last: u(function(e, t) { return [t - 1];}), eq: u(function(e, t, n) { return [0 > n ? n + t:n];}), even: u(function(e, t) { for (var n = 0; t > n; n += 2)e.push(n); return e }), odd: u(function(e, t) { for (var n = 1; t > n; n += 2)e.push(n); return e;}), lt: u(function(e, t, n) { for (var i = 0 > n ? n + t:n; --i >= 0;)e.push(i); return e;}), gt: u(function(e, t, n) { for (var i = 0 > n ? n + t:n; ++i < t;)e.push(i); return e })}}, T.pseudos.nth = T.pseudos.eq; for (b in {radio: !0, checkbox: !0, file: !0, password: !0, image: !0})T.pseudos[b] = s(b); for (b in {submit: !0, reset: !0})T.pseudos[b] = l(b); return p.prototype = T.filters = T.pseudos, T.setFilters = new p, E = t.tokenize = function(e, n) { var i, r, a, o, s, l, u, c = X[e+' ']; if (c) return n ? 0:c.slice(0); for (s = e, l = [], u = T.preFilter; s;) { i && !(r = le.exec(s)) || (r && (s = s.slice(r[0].length) || s), l.push(a = [])), i = !1, (r = ue.exec(s)) && (i = r.shift(), a.push({value: i, type: r[0].replace(se,' ')}), s = s.slice(i.length)); for (o in T.filter)!(r = fe[o].exec(s)) || u[o] && !(r = u[o](r)) || (i = r.shift(), a.push({value: i, type: o, matches: r}), s = s.slice(i.length)); if (!i) break } return n ? s.length:s ? t.error(e):X(e, l).slice(0);}, k = t.compile = function(e, t) { var n, i = [], r = [], a = G[e+' ']; if (!a) { for (t || (t = E(e)), n = t.length; n--;)a = y(t[n]), a[q] ? i.push(a):r.push(a); a = G(e, w(r, i)), a.selector = e;} return a;}, A = t.select = function(e, t, n, i) { var r, a, o, s, l, u = "function" == typeof e && e, p = !i && E(e = u.selector || e); if (n = n || [], 1 === p.length) { if (a = p[0] = p[0].slice(0), a.length > 2 && "ID" === (o = a[0]).type && x.getById && 9 === t.nodeType && I && T.relative[a[1].type]) { if (t = (T.find.ID(o.matches[0].replace(be, xe), t) || [])[0], !t) return n; u && (t = t.parentNode), e = e.slice(a.shift().value.length) } for (r = fe.needsContext.test(e) ? 0:a.length; r-- && (o = a[r], !T.relative[s = o.type]);) if ((l = T.find[s]) && (i = l(o.matches[0].replace(be, xe), ye.test(a[0].type) && c(t.parentNode) || t))) { if (a.splice(r, 1), e = i.length && d(a), !e) return J.apply(n, i), n; break } } return (u || k(e, p))(i, t, !I, n, !t || ye.test(e) && c(t.parentNode) || t), n }, x.sortStable = q.split('').sort(Y).join('') === q, x.detectDuplicates = !!D, z(), x.sortDetached = r(function(e) { return 1 & e.compareDocumentPosition(L.createElement('div')) }), r(function(e) { return e.innerHTML='<a href=\'#\'></a>', "#" === e.firstChild.getAttribute('href');}) || a('type|href|height|width', function(e, t, n) { return n ? void 0:e.getAttribute(t, "type" === t.toLowerCase() ? 1:2) }), x.attributes && r(function(e) { return e.innerHTML='<input/>', e.firstChild.setAttribute('value',''), "" === e.firstChild.getAttribute('value');}) || a('value', function(e, t, n) { return n || "input" !== e.nodeName.toLowerCase() ? void 0:e.defaultValue;}), r(function(e) { return null == e.getAttribute('disabled');}) || a(te, function(e, t, n) { var i; return n ? void 0:e[t] === !0 ? t.toLowerCase():(i = e.getAttributeNode(t)) && i.specified ? i.value:null;}), t;}(n); ue.find = he, ue.expr = he.selectors, ue.expr[':'] = ue.expr.pseudos, ue.uniqueSort = ue.unique = he.uniqueSort, ue.text = he.getText, ue.isXMLDoc = he.isXML, ue.contains = he.contains; var me = function(e, t, n) { for (var i = [], r = void 0 !== n; (e = e[t]) && 9 !== e.nodeType;) if (1 === e.nodeType) { if (r && ue(e).is(n)) break; i.push(e);} return i;}, ge = function(e, t) { for (var n = []; e; e = e.nextSibling)1 === e.nodeType && e !== t && n.push(e); return n }, ve = ue.expr.match.needsContext, ye = /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/, we = /^.[^:#\[\.,]*$/; ue.filter = function(e, t, n) { var i = t[0]; return n && (e = ":not(" + e+')'), 1 === t.length && 1 === i.nodeType ? ue.find.matchesSelector(i, e) ? [i]:[]:ue.find.matches(e, ue.grep(t, function(e) { return 1 === e.nodeType;})) }, ue.fn.extend({find: function(e) { var t, n = this.length, i = [], r = this; if ("string" != typeof e) return this.pushStack(ue(e).filter(function() { for (t = 0; n > t; t++) if (ue.contains(r[t], this)) return !0;})); for (t = 0; n > t; t++)ue.find(e, r[t], i); return i = this.pushStack(n > 1 ? ue.unique(i):i), i.selector = this.selector ? this.selector + " " + e:e, i }, filter: function(e) { return this.pushStack(s(this, e || [], !1));}, not: function(e) { return this.pushStack(s(this, e || [], !0));}, is: function(e) { return !!s(this, "string" == typeof e && ve.test(e) ? ue(e):e || [], !1).length }}); var be, xe = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, Te = ue.fn.init = function(e, t, n) { var i, r; if (!e) return this; if (n = n || be, "string" == typeof e) { if (i = "<" === e[0] && ">" === e[e.length - 1] && e.length >= 3 ? [null, e, null]:xe.exec(e), !i || !i[1] && t) return !t || t.jquery ? (t || n).find(e):this.constructor(t).find(e); if (i[1]) { if (t = t instanceof ue ? t[0]:t, ue.merge(this, ue.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t:Z, !0)), ye.test(i[1]) && ue.isPlainObject(t)) for (i in t)ue.isFunction(this[i]) ? this[i](t[i]):this.attr(i, t[i]); return this;} return r = Z.getElementById(i[2]), r && r.parentNode && (this.length = 1, this[0] = r), this.context = Z, this.selector = e, this } return e.nodeType ? (this.context = this[0] = e, this.length = 1, this):ue.isFunction(e) ? void 0 !== n.ready ? n.ready(e):e(ue):(void 0 !== e.selector && (this.selector = e.selector, this.context = e.context), ue.makeArray(e, this)) }; Te.prototype = ue.fn, be = ue(Z); var Ce = /^(?:parents|prev(?:Until|All))/, Se = {children: !0, contents: !0, next: !0, prev: !0}; ue.fn.extend({has: function(e) { var t = ue(e, this), n = t.length; return this.filter(function() { for (var e = 0; n > e; e++) if (ue.contains(this, t[e])) return !0;}) }, closest: function(e, t) { for (var n, i = 0, r = this.length, a = [], o = ve.test(e) || "string" != typeof e ? ue(e, t || this.context):0; r > i; i++) for (n = this[i]; n && n !== t; n = n.parentNode) if (n.nodeType < 11 && (o ? o.index(n) > -1:1 === n.nodeType && ue.find.matchesSelector(n, e))) { a.push(n); break;} return this.pushStack(a.length > 1 ? ue.uniqueSort(a):a);}, index: function(e) { return e ? "string" == typeof e ? ie.call(ue(e), this[0]):ie.call(this, e.jquery ? e[0]:e):this[0] && this[0].parentNode ? this.first().prevAll().length:-1;}, add: function(e, t) { return this.pushStack(ue.uniqueSort(ue.merge(this.get(), ue(e, t))));}, addBack: function(e) { return this.add(null == e ? this.prevObject:this.prevObject.filter(e)) }}), ue.each({parent: function(e) { var t = e.parentNode; return t && 11 !== t.nodeType ? t:null;}, parents: function(e) { return me(e,'parentNode') }, parentsUntil: function(e, t, n) { return me(e,'parentNode', n);}, next: function(e) { return l(e,'nextSibling');}, prev: function(e) { return l(e,'previousSibling') }, nextAll: function(e) { return me(e,'nextSibling');}, prevAll: function(e) { return me(e,'previousSibling');}, nextUntil: function(e, t, n) { return me(e,'nextSibling', n) }, prevUntil: function(e, t, n) { return me(e,'previousSibling', n);}, siblings: function(e) { return ge((e.parentNode || {}).firstChild, e) }, children: function(e) { return ge(e.firstChild) }, contents: function(e) { return e.contentDocument || ue.merge([], e.childNodes);}}, function(e, t) { ue.fn[e] = function(n, i) { var r = ue.map(this, t, n); return "Until" !== e.slice(-5) && (i = n), i && "string" == typeof i && (r = ue.filter(i, r)), this.length > 1 && (Se[e] || ue.uniqueSort(r), Ce.test(e) && r.reverse()), this.pushStack(r);} }); var Ee = /\S+/g; ue.Callbacks = function(e) { e = "string" == typeof e ? u(e):ue.extend({}, e); var t, n, i, r, a = [], o = [], s = -1, l = function() { for (r = e.once, i = t = !0; o.length; s = -1) for (n = o.shift(); ++s < a.length;)a[s].apply(n[0], n[1]) === !1 && e.stopOnFalse && (s = a.length, n = !1); e.memory || (n = !1), t = !1, r && (a = n ? []:'');}, c = {add: function() { return a && (n && !t && (s = a.length - 1, o.push(n)), function i(t) { ue.each(t, function(t, n) { ue.isFunction(n) ? e.unique && c.has(n) || a.push(n):n && n.length && "string" !== ue.type(n) && i(n);});}(arguments), n && !t && l()), this;}, remove: function() { return ue.each(arguments, function(e, t) { for (var n; (n = ue.inArray(t, a, n)) > -1;)a.splice(n, 1), s >= n && s-- }), this }, has: function(e) { return e ? ue.inArray(e, a) > -1:a.length > 0 }, empty: function() { return a && (a = []), this }, disable: function() { return r = o = [], a = n='', this;}, disabled: function() { return !a }, lock: function() { return r = o = [], n || (a = n=''), this;}, locked: function() { return !!r }, fireWith: function(e, n) { return r || (n = n || [], n = [e, n.slice ? n.slice():n], o.push(n), t || l()), this;}, fire: function() { return c.fireWith(this, arguments), this }, fired: function() { return !!i;}}; return c }, ue.extend({Deferred: function(e) { var t = [['resolve','done', ue.Callbacks('once memory'),'resolved'], ['reject','fail', ue.Callbacks('once memory'),'rejected'], ['notify','progress', ue.Callbacks('memory')]], n='pending', i = {state: function() { return n;}, always: function() { return r.done(arguments).fail(arguments), this }, then: function() { var e = arguments; return ue.Deferred(function(n) { ue.each(t, function(t, a) { var o = ue.isFunction(e[t]) && e[t]; r[a[1]](function() { var e = o && o.apply(this, arguments); e && ue.isFunction(e.promise) ? e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[a[0]+'With'](this === i ? n.promise():this, o ? [e]:arguments) }) }), e = null;}).promise() }, promise: function(e) { return null != e ? ue.extend(e, i):i }}, r = {}; return i.pipe = i.then, ue.each(t, function(e, a) { var o = a[2], s = a[3]; i[a[1]] = o.add, s && o.add(function() { n = s;}, t[1 ^ e][2].disable, t[2][2].lock), r[a[0]] = function() { return r[a[0]+'With'](this === r ? i:this, arguments), this;}, r[a[0]+'With'] = o.fireWith;}), i.promise(r), e && e.call(r, r), r;}, when: function(e) { var t, n, i, r = 0, a = ee.call(arguments), o = a.length, s = 1 !== o || e && ue.isFunction(e.promise) ? o:0, l = 1 === s ? e:ue.Deferred(), u = function(e, n, i) { return function(r) { n[e] = this, i[e] = arguments.length > 1 ? ee.call(arguments):r, i === t ? l.notifyWith(n, i):--s || l.resolveWith(n, i) } }; if (o > 1) for (t = new Array(o), n = new Array(o), i = new Array(o); o > r; r++)a[r] && ue.isFunction(a[r].promise) ? a[r].promise().progress(u(r, n, t)).done(u(r, i, a)).fail(l.reject):--s; return s || l.resolveWith(i, a), l.promise() }}); var ke; ue.fn.ready = function(e) { return ue.ready.promise().done(e), this;}, ue.extend({isReady: !1, readyWait: 1, holdReady: function(e) { e ? ue.readyWait++:ue.ready(!0) }, ready: function(e) { (e === !0 ? --ue.readyWait:ue.isReady) || (ue.isReady = !0, e !== !0 && --ue.readyWait > 0 || (ke.resolveWith(Z, [ue]), ue.fn.triggerHandler && (ue(Z).triggerHandler('ready'), ue(Z).off('ready')))) }}), ue.ready.promise = function(e) { return ke || (ke = ue.Deferred(), "complete" === Z.readyState || "loading" !== Z.readyState && !Z.documentElement.doScroll ? n.setTimeout(ue.ready):(Z.addEventListener('DOMContentLoaded', c), n.addEventListener('load', c))), ke.promise(e);}, ue.ready.promise(); var Ae = function(e, t, n, i, r, a, o) { var s = 0, l = e.length, u = null == n; if ("object" === ue.type(n)) { r = !0; for (s in n)Ae(e, t, s, n[s], !0, a, o) } else if (void 0 !== i && (r = !0, ue.isFunction(i) || (o = !0), u && (o ? (t.call(e, i), t = null):(u = t, t = function(e, t, n) { return u.call(ue(e), n);})), t)) for (;l > s; s++)t(e[s], n, o ? i:i.call(e[s], s, t(e[s], n))); return r ? e:u ? t.call(e):l ? t(e[0], n):a;}, Me = function(e) { return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType }; p.uid = 1, p.prototype = {register: function(e, t) { var n = t || {}; return e.nodeType ? e[this.expando] = n:Object.defineProperty(e, this.expando, {value: n, writable: !0, configurable: !0}), e[this.expando];}, cache: function(e) { if (!Me(e)) return {}; var t = e[this.expando]; return t || (t = {}, Me(e) && (e.nodeType ? e[this.expando] = t:Object.defineProperty(e, this.expando, {value: t, configurable: !0}))), t }, set: function(e, t, n) { var i, r = this.cache(e); if ("string" == typeof t)r[t] = n; else for (i in t)r[i] = t[i]; return r;}, get: function(e, t) { return void 0 === t ? this.cache(e):e[this.expando] && e[this.expando][t];}, access: function(e, t, n) { var i; return void 0 === t || t && "string" == typeof t && void 0 === n ? (i = this.get(e, t), void 0 !== i ? i:this.get(e, ue.camelCase(t))):(this.set(e, t, n), void 0 !== n ? n:t) }, remove: function(e, t) { var n, i, r, a = e[this.expando]; if (void 0 !== a) { if (void 0 === t) this.register(e); else { ue.isArray(t) ? i = t.concat(t.map(ue.camelCase)):(r = ue.camelCase(t), t in a ? i = [t, r]:(i = r, i = i in a ? [i]:i.match(Ee) || [])), n = i.length; for (;n--;) delete a[i[n]] }(void 0 === t || ue.isEmptyObject(a)) && (e.nodeType ? e[this.expando] = void 0:delete e[this.expando]);} }, hasData: function(e) { var t = e[this.expando]; return void 0 !== t && !ue.isEmptyObject(t);}}; var Pe = new p, De = new p, ze = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, Le = /[A-Z]/g; ue.extend({hasData: function(e) { return De.hasData(e) || Pe.hasData(e) }, data: function(e, t, n) { return De.access(e, t, n);}, removeData: function(e, t) { De.remove(e, t);}, _data: function(e, t, n) { return Pe.access(e, t, n);}, _removeData: function(e, t) { Pe.remove(e, t);}}), ue.fn.extend({data: function(e, t) { var n, i, r, a = this[0], o = a && a.attributes; if (void 0 === e) { if (this.length && (r = De.get(a), 1 === a.nodeType && !Pe.get(a,'hasDataAttrs'))) { for (n = o.length; n--;)o[n] && (i = o[n].name, 0 === i.indexOf('data-') && (i = ue.camelCase(i.slice(5)), d(a, i, r[i]))); Pe.set(a,'hasDataAttrs', !0) } return r } return "object" == typeof e ? this.each(function() { De.set(this, e) }):Ae(this, function(t) { var n, i; if (a && void 0 === t) { if (n = De.get(a, e) || De.get(a, e.replace(Le,'-$&').toLowerCase()), void 0 !== n) return n; if (i = ue.camelCase(e), n = De.get(a, i), void 0 !== n) return n; if (n = d(a, i, void 0), void 0 !== n) return n;} else i = ue.camelCase(e), this.each(function() { var n = De.get(this, i); De.set(this, i, t), e.indexOf('-') > -1 && void 0 !== n && De.set(this, e, t) }) }, null, t, arguments.length > 1, null, !0);}, removeData: function(e) { return this.each(function() { De.remove(this, e);});}}), ue.extend({queue: function(e, t, n) { var i; return e ? (t = (t||'fx')+'queue', i = Pe.get(e, t), n && (!i || ue.isArray(n) ? i = Pe.access(e, t, ue.makeArray(n)):i.push(n)), i || []):void 0 }, dequeue: function(e, t) { t = t||'fx'; var n = ue.queue(e, t), i = n.length, r = n.shift(), a = ue._queueHooks(e, t), o = function() { ue.dequeue(e, t);}; "inprogress" === r && (r = n.shift(), i--), r && ("fx" === t && n.unshift('inprogress'), delete a.stop, r.call(e, o, a)), !i && a && a.empty.fire() }, _queueHooks: function(e, t) { var n = t+'queueHooks'; return Pe.get(e, n) || Pe.access(e, n, {empty: ue.Callbacks('once memory').add(function() { Pe.remove(e, [t+'queue', n]);})});}}), ue.fn.extend({queue: function(e, t) { var n = 2; return "string" != typeof e && (t = e, e='fx', n--), arguments.length < n ? ue.queue(this[0], e):void 0 === t ? this:this.each(function() { var n = ue.queue(this, e, t); ue._queueHooks(this, e), "fx" === e && "inprogress" !== n[0] && ue.dequeue(this, e) }) }, dequeue: function(e) { return this.each(function() { ue.dequeue(this, e) });}, clearQueue: function(e) { return this.queue(e||'fx', []);}, promise: function(e, t) { var n, i = 1, r = ue.Deferred(), a = this, o = this.length, s = function() { --i || r.resolveWith(a, [a]);}; for ("string" != typeof e && (t = e, e = void 0), e = e||'fx'; o--;)n = Pe.get(a[o], e+'queueHooks'), n && n.empty && (i++, n.empty.add(s)); return s(), r.promise(t) }}); var Ne = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, Ie = new RegExp("^(?:([+-])=|)(" + Ne+')([a-z%]*)$','i'), Oe = ['Top','Right','Bottom','Left'], He = function(e, t) { return e = t || e, "none" === ue.css(e,'display') || !ue.contains(e.ownerDocument, e);}, Be = /^(?:checkbox|radio)$/i, Re = /<([\w:-]+)/, qe = /^$|\/(?:java|ecma)script/i, je = {option: [1,'<select multiple=\'multiple\'>','</select>'], thead: [1,'<table>','</table>'], col: [2,'<table><colgroup>','</colgroup></table>'], tr: [2,'<table><tbody>','</tbody></table>'], td: [3,'<table><tbody><tr>','</tr></tbody></table>'], _default: [0,'','']}; je.optgroup = je.option, je.tbody = je.tfoot = je.colgroup = je.caption = je.thead, je.th = je.td; var Fe = /<|&#?\w+;/; !function() { var e = Z.createDocumentFragment(), t = e.appendChild(Z.createElement('div')), n = Z.createElement('input'); n.setAttribute('type','radio'), n.setAttribute('checked','checked'), n.setAttribute('name','t'), t.appendChild(n), se.checkClone = t.cloneNode(!0).cloneNode(!0).lastChild.checked, t.innerHTML='<textarea>x</textarea>', se.noCloneChecked = !!t.cloneNode(!0).lastChild.defaultValue }(); var We = /^key/, _e = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, Xe = /^([^.]*)(?:\.(.+)|)/; ue.event = {global: {}, add: function(e, t, n, i, r) { var a, o, s, l, u, c, p, d, f, h, m, g = Pe.get(e); if (g) for (n.handler && (a = n, n = a.handler, r = a.selector), n.guid || (n.guid = ue.guid++), (l = g.events) || (l = g.events = {}), (o = g.handle) || (o = g.handle = function(t) { return "undefined" != typeof ue && ue.event.triggered !== t.type ? ue.event.dispatch.apply(e, arguments):void 0 }), t = (t||'').match(Ee) || [''], u = t.length; u--;)s = Xe.exec(t[u]) || [], f = m = s[1], h = (s[2]||'').split('.').sort(), f && (p = ue.event.special[f] || {}, f = (r ? p.delegateType:p.bindType) || f, p = ue.event.special[f] || {}, c = ue.extend({type: f, origType: m, data: i, handler: n, guid: n.guid, selector: r, needsContext: r && ue.expr.match.needsContext.test(r), namespace: h.join('.')}, a), (d = l[f]) || (d = l[f] = [], d.delegateCount = 0, p.setup && p.setup.call(e, i, h, o) !== !1 || e.addEventListener && e.addEventListener(f, o)), p.add && (p.add.call(e, c), c.handler.guid || (c.handler.guid = n.guid)), r ? d.splice(d.delegateCount++, 0, c):d.push(c), ue.event.global[f] = !0) }, remove: function(e, t, n, i, r) { var a, o, s, l, u, c, p, d, f, h, m, g = Pe.hasData(e) && Pe.get(e); if (g && (l = g.events)) { for (t = (t||'').match(Ee) || [''], u = t.length; u--;) if (s = Xe.exec(t[u]) || [], f = m = s[1], h = (s[2]||'').split('.').sort(), f) { for (p = ue.event.special[f] || {}, f = (i ? p.delegateType:p.bindType) || f, d = l[f] || [], s = s[2] && new RegExp("(^|\\.)" + h.join('\\.(?:.*\\.|)')+'(\\.|$)'), o = a = d.length; a--;)c = d[a], !r && m !== c.origType || n && n.guid !== c.guid || s && !s.test(c.namespace) || i && i !== c.selector && ("**" !== i || !c.selector) || (d.splice(a, 1),
c.selector && d.delegateCount--, p.remove && p.remove.call(e, c)); o && !d.length && (p.teardown && p.teardown.call(e, h, g.handle) !== !1 || ue.removeEvent(e, f, g.handle), delete l[f]);} else for (f in l)ue.event.remove(e, f + t[u], n, i, !0); ue.isEmptyObject(l) && Pe.remove(e,'handle events') } }, dispatch: function(e) { e = ue.event.fix(e); var t, n, i, r, a, o = [], s = ee.call(arguments), l = (Pe.get(this,'events') || {})[e.type] || [], u = ue.event.special[e.type] || {}; if (s[0] = e, e.delegateTarget = this, !u.preDispatch || u.preDispatch.call(this, e) !== !1) { for (o = ue.event.handlers.call(this, e, l), t = 0; (r = o[t++]) && !e.isPropagationStopped();) for (e.currentTarget = r.elem, n = 0; (a = r.handlers[n++]) && !e.isImmediatePropagationStopped();)e.rnamespace && !e.rnamespace.test(a.namespace) || (e.handleObj = a, e.data = a.data, i = ((ue.event.special[a.origType] || {}).handle || a.handler).apply(r.elem, s), void 0 !== i && (e.result = i) === !1 && (e.preventDefault(), e.stopPropagation())); return u.postDispatch && u.postDispatch.call(this, e), e.result } }, handlers: function(e, t) { var n, i, r, a, o = [], s = t.delegateCount, l = e.target; if (s && l.nodeType && ("click" !== e.type || isNaN(e.button) || e.button < 1)) for (;l !== this; l = l.parentNode || this) if (1 === l.nodeType && (l.disabled !== !0 || "click" !== e.type)) { for (i = [], n = 0; s > n; n++)a = t[n], r = a.selector+' ', void 0 === i[r] && (i[r] = a.needsContext ? ue(r, this).index(l) > -1:ue.find(r, this, null, [l]).length), i[r] && i.push(a); i.length && o.push({elem: l, handlers: i}) } return s < t.length && o.push({elem: this, handlers: t.slice(s)}), o }, props:'altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which'.split(' '), fixHooks: {}, keyHooks: {props:'char charCode key keyCode'.split(' '), filter: function(e, t) { return null == e.which && (e.which = null != t.charCode ? t.charCode:t.keyCode), e }}, mouseHooks: {props:'button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement'.split(' '), filter: function(e, t) { var n, i, r, a = t.button; return null == e.pageX && null != t.clientX && (n = e.target.ownerDocument || Z, i = n.documentElement, r = n.body, e.pageX = t.clientX + (i && i.scrollLeft || r && r.scrollLeft || 0) - (i && i.clientLeft || r && r.clientLeft || 0), e.pageY = t.clientY + (i && i.scrollTop || r && r.scrollTop || 0) - (i && i.clientTop || r && r.clientTop || 0)), e.which || void 0 === a || (e.which = 1 & a ? 1:2 & a ? 3:4 & a ? 2:0), e }}, fix: function(e) { if (e[ue.expando]) return e; var t, n, i, r = e.type, a = e, o = this.fixHooks[r]; for (o || (this.fixHooks[r] = o = _e.test(r) ? this.mouseHooks:We.test(r) ? this.keyHooks:{}), i = o.props ? this.props.concat(o.props):this.props, e = new ue.Event(a), t = i.length; t--;)n = i[t], e[n] = a[n]; return e.target || (e.target = Z), 3 === e.target.nodeType && (e.target = e.target.parentNode), o.filter ? o.filter(e, a):e;}, special: {load: {noBubble: !0}, focus: {trigger: function() { return this !== w() && this.focus ? (this.focus(), !1):void 0;}, delegateType:'focusin'}, blur: {trigger: function() { return this === w() && this.blur ? (this.blur(), !1):void 0 }, delegateType:'focusout'}, click: {trigger: function() { return "checkbox" === this.type && this.click && ue.nodeName(this,'input') ? (this.click(), !1):void 0 }, _default: function(e) { return ue.nodeName(e.target,'a');}}, beforeunload: {postDispatch: function(e) { void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result);}}}}, ue.removeEvent = function(e, t, n) { e.removeEventListener && e.removeEventListener(t, n) }, ue.Event = function(e, t) { return this instanceof ue.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && e.returnValue === !1 ? v:y):this.type = e, t && ue.extend(this, t), this.timeStamp = e && e.timeStamp || ue.now(), void(this[ue.expando] = !0)):new ue.Event(e, t);}, ue.Event.prototype = {constructor: ue.Event, isDefaultPrevented: y, isPropagationStopped: y, isImmediatePropagationStopped: y, isSimulated: !1, preventDefault: function() { var e = this.originalEvent; this.isDefaultPrevented = v, e && !this.isSimulated && e.preventDefault();}, stopPropagation: function() { var e = this.originalEvent; this.isPropagationStopped = v, e && !this.isSimulated && e.stopPropagation();}, stopImmediatePropagation: function() { var e = this.originalEvent; this.isImmediatePropagationStopped = v, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation();}}, ue.each({mouseenter:'mouseover', mouseleave:'mouseout', pointerenter:'pointerover', pointerleave:'pointerout'}, function(e, t) { ue.event.special[e] = {delegateType: t, bindType: t, handle: function(e) { var n, i = this, r = e.relatedTarget, a = e.handleObj; return r && (r === i || ue.contains(i, r)) || (e.type = a.origType, n = a.handler.apply(this, arguments), e.type = t), n }} }), ue.fn.extend({on: function(e, t, n, i) { return b(this, e, t, n, i);}, one: function(e, t, n, i) { return b(this, e, t, n, i, 1);}, off: function(e, t, n) { var i, r; if (e && e.preventDefault && e.handleObj) return i = e.handleObj, ue(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace:i.origType, i.selector, i.handler), this; if ("object" == typeof e) { for (r in e) this.off(r, t, e[r]); return this } return t !== !1 && "function" != typeof t || (n = t, t = void 0), n === !1 && (n = y), this.each(function() { ue.event.remove(this, e, n, t) }) }}); var Ge = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, Ye = /<script|<style|<link/i, Ve = /checked\s*(?:[^=]|=\s*.checked.)/i, $e = /^true\/(.*)/, Ue = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g; ue.extend({htmlPrefilter: function(e) { return e.replace(Ge,'<$1></$2>');}, clone: function(e, t, n) { var i, r, a, o, s = e.cloneNode(!0), l = ue.contains(e.ownerDocument, e); if (!(se.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || ue.isXMLDoc(e))) for (o = h(s), a = h(e), i = 0, r = a.length; r > i; i++)E(a[i], o[i]); if (t) if (n) for (a = a || h(e), o = o || h(s), i = 0, r = a.length; r > i; i++)S(a[i], o[i]); else S(e, s); return o = h(s,'script'), o.length > 0 && m(o, !l && h(e,'script')), s }, cleanData: function(e) { for (var t, n, i, r = ue.event.special, a = 0; void 0 !== (n = e[a]); a++) if (Me(n)) { if (t = n[Pe.expando]) { if (t.events) for (i in t.events)r[i] ? ue.event.remove(n, i):ue.removeEvent(n, i, t.handle); n[Pe.expando] = void 0 }n[De.expando] && (n[De.expando] = void 0) } }}), ue.fn.extend({domManip: k, detach: function(e) { return A(this, e, !0);}, remove: function(e) { return A(this, e);}, text: function(e) { return Ae(this, function(e) { return void 0 === e ? ue.text(this):this.empty().each(function() { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e) });}, null, e, arguments.length);}, append: function() { return k(this, arguments, function(e) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var t = x(this, e); t.appendChild(e);} }) }, prepend: function() { return k(this, arguments, function(e) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var t = x(this, e); t.insertBefore(e, t.firstChild);} });}, before: function() { return k(this, arguments, function(e) { this.parentNode && this.parentNode.insertBefore(e, this);});}, after: function() { return k(this, arguments, function(e) { this.parentNode && this.parentNode.insertBefore(e, this.nextSibling) }) }, empty: function() { for (var e, t = 0; null != (e = this[t]); t++)1 === e.nodeType && (ue.cleanData(h(e, !1)), e.textContent=''); return this }, clone: function(e, t) { return e = null == e ? !1:e, t = null == t ? e:t, this.map(function() { return ue.clone(this, e, t);}) }, html: function(e) { return Ae(this, function(e) { var t = this[0] || {}, n = 0, i = this.length; if (void 0 === e && 1 === t.nodeType) return t.innerHTML; if ("string" == typeof e && !Ye.test(e) && !je[(Re.exec(e) || ['',''])[1].toLowerCase()]) { e = ue.htmlPrefilter(e); try { for (;i > n; n++)t = this[n] || {}, 1 === t.nodeType && (ue.cleanData(h(t, !1)), t.innerHTML = e); t = 0 } catch (r) {} }t && this.empty().append(e);}, null, e, arguments.length);}, replaceWith: function() { var e = []; return k(this, arguments, function(t) { var n = this.parentNode; ue.inArray(this, e) < 0 && (ue.cleanData(h(this)), n && n.replaceChild(t, this)) }, e);}}), ue.each({appendTo:'append', prependTo:'prepend', insertBefore:'before', insertAfter:'after', replaceAll:'replaceWith'}, function(e, t) { ue.fn[e] = function(e) { for (var n, i = [], r = ue(e), a = r.length - 1, o = 0; a >= o; o++)n = o === a ? this:this.clone(!0), ue(r[o])[t](n), ne.apply(i, n.get()); return this.pushStack(i) };}); var Ke, Qe = {HTML:'block', BODY:'block'}, Je = /^margin/, Ze = new RegExp("^(" + Ne+')(?!px)[a-z%]+$','i'), et = function(e) { var t = e.ownerDocument.defaultView; return t && t.opener || (t = n), t.getComputedStyle(e);}, tt = function(e, t, n, i) { var r, a, o = {}; for (a in t)o[a] = e.style[a], e.style[a] = t[a]; r = n.apply(e, i || []); for (a in t)e.style[a] = o[a]; return r }, nt = Z.documentElement; !function() { function e() { s.style.cssText='-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%', s.innerHTML='', nt.appendChild(o); var e = n.getComputedStyle(s); t = "1%" !== e.top, a = "2px" === e.marginLeft, i = "4px" === e.width, s.style.marginRight='50%', r = "4px" === e.marginRight, nt.removeChild(o) } var t, i, r, a, o = Z.createElement('div'), s = Z.createElement('div'); s.style && (s.style.backgroundClip='content-box', s.cloneNode(!0).style.backgroundClip='', se.clearCloneStyle = "content-box" === s.style.backgroundClip, o.style.cssText='border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute', o.appendChild(s), ue.extend(se, {pixelPosition: function() { return e(), t;}, boxSizingReliable: function() { return null == i && e(), i }, pixelMarginRight: function() { return null == i && e(), r }, reliableMarginLeft: function() { return null == i && e(), a;}, reliableMarginRight: function() { var e, t = s.appendChild(Z.createElement('div')); return t.style.cssText = s.style.cssText='-webkit-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0', t.style.marginRight = t.style.width='0', s.style.width='1px', nt.appendChild(o), e = !parseFloat(n.getComputedStyle(t).marginRight), nt.removeChild(o), s.removeChild(t), e }})) }(); var it = /^(none|table(?!-c[ea]).+)/, rt = {position:'absolute', visibility:'hidden', display:'block'}, at = {letterSpacing:'0', fontWeight:'400'}, ot = ['Webkit','O','Moz','ms'], st = Z.createElement('div').style; ue.extend({cssHooks: {opacity: {get: function(e, t) { if (t) { var n = D(e,'opacity'); return "" === n?'1':n;} }}}, cssNumber: {animationIterationCount: !0, columnCount: !0, fillOpacity: !0, flexGrow: !0, flexShrink: !0, fontWeight: !0, lineHeight: !0, opacity: !0, order: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0}, cssProps: {'float':'cssFloat'}, style: function(e, t, n, i) { if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { var r, a, o, s = ue.camelCase(t), l = e.style; return t = ue.cssProps[s] || (ue.cssProps[s] = L(s) || s), o = ue.cssHooks[t] || ue.cssHooks[s], void 0 === n ? o&&'get'in o && void 0 !== (r = o.get(e, !1, i)) ? r:l[t]:(a = typeof n, "string" === a && (r = Ie.exec(n)) && r[1] && (n = f(e, t, r), a='number'), null != n && n === n && ("number" === a && (n += r && r[3] || (ue.cssNumber[s]?'':'px')), se.clearCloneStyle || "" !== n || 0 !== t.indexOf('background') || (l[t]='inherit'), o&&'set'in o && void 0 === (n = o.set(e, n, i)) || (l[t] = n)), void 0) } }, css: function(e, t, n, i) { var r, a, o, s = ue.camelCase(t); return t = ue.cssProps[s] || (ue.cssProps[s] = L(s) || s), o = ue.cssHooks[t] || ue.cssHooks[s], o&&'get'in o && (r = o.get(e, !0, n)), void 0 === r && (r = D(e, t, i)), "normal" === r && t in at && (r = at[t]), "" === n || n ? (a = parseFloat(r), n === !0 || isFinite(a) ? a || 0:r):r }}), ue.each(['height','width'], function(e, t) { ue.cssHooks[t] = {get: function(e, n, i) { return n ? it.test(ue.css(e,'display')) && 0 === e.offsetWidth ? tt(e, rt, function() { return O(e, t, i);}):O(e, t, i):void 0;}, set: function(e, n, i) { var r, a = i && et(e), o = i && I(e, t, i, "border-box" === ue.css(e,'boxSizing', !1, a), a); return o && (r = Ie.exec(n)) && "px" !== (r[3]||'px') && (e.style[t] = n, n = ue.css(e, t)), N(e, n, o) }} }), ue.cssHooks.marginLeft = z(se.reliableMarginLeft, function(e, t) { return t ? (parseFloat(D(e,'marginLeft')) || e.getBoundingClientRect().left - tt(e, {marginLeft: 0}, function() { return e.getBoundingClientRect().left;}))+'px':void 0;}), ue.cssHooks.marginRight = z(se.reliableMarginRight, function(e, t) { return t ? tt(e, {display:'inline-block'}, D, [e,'marginRight']):void 0;}), ue.each({margin:'', padding:'', border:'Width'}, function(e, t) { ue.cssHooks[e + t] = {expand: function(n) { for (var i = 0, r = {}, a = "string" == typeof n ? n.split(' '):[n]; 4 > i; i++)r[e + Oe[i] + t] = a[i] || a[i - 2] || a[0]; return r }}, Je.test(e) || (ue.cssHooks[e + t].set = N) }), ue.fn.extend({css: function(e, t) { return Ae(this, function(e, t, n) { var i, r, a = {}, o = 0; if (ue.isArray(t)) { for (i = et(e), r = t.length; r > o; o++)a[t[o]] = ue.css(e, t[o], !1, i); return a } return void 0 !== n ? ue.style(e, t, n):ue.css(e, t) }, e, t, arguments.length > 1);}, show: function() { return H(this, !0) }, hide: function() { return H(this);}, toggle: function(e) { return "boolean" == typeof e ? e ? this.show():this.hide():this.each(function() { He(this) ? ue(this).show():ue(this).hide();}) }}), ue.Tween = B, B.prototype = {constructor: B, init: function(e, t, n, i, r, a) { this.elem = e, this.prop = n, this.easing = r || ue.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = i, this.unit = a || (ue.cssNumber[n]?'':'px');}, cur: function() { var e = B.propHooks[this.prop]; return e && e.get ? e.get(this):B.propHooks._default.get(this) }, run: function(e) { var t, n = B.propHooks[this.prop]; return this.options.duration ? this.pos = t = ue.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration):this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this):B.propHooks._default.set(this), this;}}, B.prototype.init.prototype = B.prototype, B.propHooks = {_default: {get: function(e) { var t; return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop]:(t = ue.css(e.elem, e.prop,''), t && "auto" !== t ? t:0) }, set: function(e) { ue.fx.step[e.prop] ? ue.fx.step[e.prop](e):1 !== e.elem.nodeType || null == e.elem.style[ue.cssProps[e.prop]] && !ue.cssHooks[e.prop] ? e.elem[e.prop] = e.now:ue.style(e.elem, e.prop, e.now + e.unit);}}}, B.propHooks.scrollTop = B.propHooks.scrollLeft = {set: function(e) { e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now);}}, ue.easing = {linear: function(e) { return e;}, swing: function(e) { return.5 - Math.cos(e * Math.PI) / 2;}, _default:'swing'}, ue.fx = B.prototype.init, ue.fx.step = {}; var lt, ut, ct = /^(?:toggle|show|hide)$/, pt = /queueHooks$/; ue.Animation = ue.extend(_, {tweeners: {'*': [function(e, t) { var n = this.createTween(e, t); return f(n.elem, e, Ie.exec(t), n), n;}]}, tweener: function(e, t) { ue.isFunction(e) ? (t = e, e = ['*']):e = e.match(Ee); for (var n, i = 0, r = e.length; r > i; i++)n = e[i], _.tweeners[n] = _.tweeners[n] || [], _.tweeners[n].unshift(t) }, prefilters: [F], prefilter: function(e, t) { t ? _.prefilters.unshift(e):_.prefilters.push(e) }}), ue.speed = function(e, t, n) { var i = e && "object" == typeof e ? ue.extend({}, e):{complete: n || !n && t || ue.isFunction(e) && e, duration: e, easing: n && t || t && !ue.isFunction(t) && t}; return i.duration = ue.fx.off ? 0:"number" == typeof i.duration ? i.duration:i.duration in ue.fx.speeds ? ue.fx.speeds[i.duration]:ue.fx.speeds._default, null != i.queue && i.queue !== !0 || (i.queue='fx'), i.old = i.complete, i.complete = function() { ue.isFunction(i.old) && i.old.call(this), i.queue && ue.dequeue(this, i.queue) }, i;}, ue.fn.extend({fadeTo: function(e, t, n, i) { return this.filter(He).css('opacity', 0).show().end().animate({opacity: t}, e, n, i);}, animate: function(e, t, n, i) { var r = ue.isEmptyObject(e), a = ue.speed(t, n, i), o = function() { var t = _(this, ue.extend({}, e), a); (r || Pe.get(this,'finish')) && t.stop(!0) }; return o.finish = o, r || a.queue === !1 ? this.each(o):this.queue(a.queue, o);}, stop: function(e, t, n) { var i = function(e) { var t = e.stop; delete e.stop, t(n);}; return "string" != typeof e && (n = t, t = e, e = void 0), t && e !== !1 && this.queue(e||'fx', []), this.each(function() { var t = !0, r = null != e && e+'queueHooks', a = ue.timers, o = Pe.get(this); if (r)o[r] && o[r].stop && i(o[r]); else for (r in o)o[r] && o[r].stop && pt.test(r) && i(o[r]); for (r = a.length; r--;)a[r].elem !== this || null != e && a[r].queue !== e || (a[r].anim.stop(n), t = !1, a.splice(r, 1)); !t && n || ue.dequeue(this, e);});}, finish: function(e) { return e !== !1 && (e = e||'fx'), this.each(function() { var t, n = Pe.get(this), i = n[e+'queue'], r = n[e+'queueHooks'], a = ue.timers, o = i ? i.length:0; for (n.finish = !0, ue.queue(this, e, []), r && r.stop && r.stop.call(this, !0), t = a.length; t--;)a[t].elem === this && a[t].queue === e && (a[t].anim.stop(!0), a.splice(t, 1)); for (t = 0; o > t; t++)i[t] && i[t].finish && i[t].finish.call(this); delete n.finish }) }}), ue.each(['toggle','show','hide'], function(e, t) { var n = ue.fn[t]; ue.fn[t] = function(e, i, r) { return null == e || "boolean" == typeof e ? n.apply(this, arguments):this.animate(q(t, !0), e, i, r) } }), ue.each({slideDown: q('show'), slideUp: q('hide'), slideToggle: q('toggle'), fadeIn: {opacity:'show'}, fadeOut: {opacity:'hide'}, fadeToggle: {opacity:'toggle'}}, function(e, t) { ue.fn[e] = function(e, n, i) { return this.animate(t, e, n, i);} }), ue.timers = [], ue.fx.tick = function() { var e, t = 0, n = ue.timers; for (lt = ue.now(); t < n.length; t++)e = n[t], e() || n[t] !== e || n.splice(t--, 1); n.length || ue.fx.stop(), lt = void 0 }, ue.fx.timer = function(e) { ue.timers.push(e), e() ? ue.fx.start():ue.timers.pop();}, ue.fx.interval = 13, ue.fx.start = function() { ut || (ut = n.setInterval(ue.fx.tick, ue.fx.interval)) }, ue.fx.stop = function() { n.clearInterval(ut), ut = null }, ue.fx.speeds = {slow: 600, fast: 200, _default: 400}, ue.fn.delay = function(e, t) { return e = ue.fx ? ue.fx.speeds[e] || e:e, t = t||'fx', this.queue(t, function(t, i) { var r = n.setTimeout(t, e); i.stop = function() { n.clearTimeout(r) } }) }, function() { var e = Z.createElement('input'), t = Z.createElement('select'), n = t.appendChild(Z.createElement('option')); e.type='checkbox', se.checkOn = "" !== e.value, se.optSelected = n.selected, t.disabled = !0, se.optDisabled = !n.disabled, e = Z.createElement('input'), e.value='t', e.type='radio', se.radioValue = "t" === e.value }(); var dt, ft = ue.expr.attrHandle; ue.fn.extend({attr: function(e, t) { return Ae(this, ue.attr, e, t, arguments.length > 1) }, removeAttr: function(e) { return this.each(function() { ue.removeAttr(this, e) }) }}), ue.extend({attr: function(e, t, n) { var i, r, a = e.nodeType; if (3 !== a && 8 !== a && 2 !== a) return "undefined" == typeof e.getAttribute ? ue.prop(e, t, n):(1 === a && ue.isXMLDoc(e) || (t = t.toLowerCase(), r = ue.attrHooks[t] || (ue.expr.match.bool.test(t) ? dt:void 0)), void 0 !== n ? null === n ? void ue.removeAttr(e, t):r&&'set'in r && void 0 !== (i = r.set(e, n, t)) ? i:(e.setAttribute(t, n+''), n):r&&'get'in r && null !== (i = r.get(e, t)) ? i:(i = ue.find.attr(e, t), null == i ? void 0:i));}, attrHooks: {type: {set: function(e, t) { if (!se.radioValue && "radio" === t && ue.nodeName(e,'input')) { var n = e.value; return e.setAttribute('type', t), n && (e.value = n), t;} }}}, removeAttr: function(e, t) { var n, i, r = 0, a = t && t.match(Ee); if (a && 1 === e.nodeType) for (;n = a[r++];)i = ue.propFix[n] || n, ue.expr.match.bool.test(n) && (e[i] = !1), e.removeAttribute(n);}}), dt = {set: function(e, t, n) { return t === !1 ? ue.removeAttr(e, n):e.setAttribute(n, n), n;}}, ue.each(ue.expr.match.bool.source.match(/\w+/g), function(e, t) { var n = ft[t] || ue.find.attr; ft[t] = function(e, t, i) { var r, a; return i || (a = ft[t], ft[t] = r, r = null != n(e, t, i) ? t.toLowerCase():null, ft[t] = a), r } }); var ht = /^(?:input|select|textarea|button)$/i, mt = /^(?:a|area)$/i; ue.fn.extend({prop: function(e, t) { return Ae(this, ue.prop, e, t, arguments.length > 1);}, removeProp: function(e) { return this.each(function() { delete this[ue.propFix[e] || e];});}}), ue.extend({prop: function(e, t, n) { var i, r, a = e.nodeType; if (3 !== a && 8 !== a && 2 !== a) return 1 === a && ue.isXMLDoc(e) || (t = ue.propFix[t] || t, r = ue.propHooks[t]), void 0 !== n ? r&&'set'in r && void 0 !== (i = r.set(e, n, t)) ? i:e[t] = n:r&&'get'in r && null !== (i = r.get(e, t)) ? i:e[t];}, propHooks: {tabIndex: {get: function(e) { var t = ue.find.attr(e,'tabindex'); return t ? parseInt(t, 10):ht.test(e.nodeName) || mt.test(e.nodeName) && e.href ? 0:-1 }}}, propFix: {'for':'htmlFor','class':'className'}}), se.optSelected || (ue.propHooks.selected = {get: function(e) { var t = e.parentNode; return t && t.parentNode && t.parentNode.selectedIndex, null }, set: function(e) { var t = e.parentNode; t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex);}}), ue.each(['tabIndex','readOnly','maxLength','cellSpacing','cellPadding','rowSpan','colSpan','useMap','frameBorder','contentEditable'], function() { ue.propFix[this.toLowerCase()] = this }); var gt = /[\t\r\n\f]/g; ue.fn.extend({addClass: function(e) { var t, n, i, r, a, o, s, l = 0; if (ue.isFunction(e)) return this.each(function(t) { ue(this).addClass(e.call(this, t, X(this))) }); if ("string" == typeof e && e) for (t = e.match(Ee) || []; n = this[l++];) if (r = X(n), i = 1 === n.nodeType && (" " + r+' ').replace(gt,' ')) { for (o = 0; a = t[o++];)i.indexOf(" " + a+' ') < 0 && (i += a+' '); s = ue.trim(i), r !== s && n.setAttribute('class', s) } return this }, removeClass: function(e) { var t, n, i, r, a, o, s, l = 0; if (ue.isFunction(e)) return this.each(function(t) { ue(this).removeClass(e.call(this, t, X(this))) }); if (!arguments.length) return this.attr('class',''); if ("string" == typeof e && e) for (t = e.match(Ee) || []; n = this[l++];) if (r = X(n), i = 1 === n.nodeType && (" " + r+' ').replace(gt,' ')) { for (o = 0; a = t[o++];) for (;i.indexOf(" " + a+' ') > -1;)i = i.replace(" " + a+' ',' '); s = ue.trim(i), r !== s && n.setAttribute('class', s) } return this;}, toggleClass: function(e, t) { var n = typeof e; return "boolean" == typeof t && "string" === n ? t ? this.addClass(e):this.removeClass(e):ue.isFunction(e) ? this.each(function(n) { ue(this).toggleClass(e.call(this, n, X(this), t), t);}):this.each(function() { var t, i, r, a; if ("string" === n) for (i = 0, r = ue(this), a = e.match(Ee) || []; t = a[i++];)r.hasClass(t) ? r.removeClass(t):r.addClass(t); else void 0 !== e && "boolean" !== n || (t = X(this), t && Pe.set(this,'__className__', t), this.setAttribute && this.setAttribute('class', t || e === !1?'':Pe.get(this,'__className__')||'')) }) }, hasClass: function(e) { var t, n, i = 0; for (t = " " + e+' '; n = this[i++];) if (1 === n.nodeType && (" " + X(n)+' ').replace(gt,' ').indexOf(t) > -1) return !0; return !1;}}); var vt = /\r/g, yt = /[\x20\t\r\n\f]+/g; ue.fn.extend({val: function(e) { var t, n, i, r = this[0]; { if (arguments.length) return i = ue.isFunction(e), this.each(function(n) { var r; 1 === this.nodeType && (r = i ? e.call(this, n, ue(this).val()):e, null == r ? r='':"number" == typeof r ? r+='':ue.isArray(r) && (r = ue.map(r, function(e) { return null == e?'':e + "";})), t = ue.valHooks[this.type] || ue.valHooks[this.nodeName.toLowerCase()], t&&'set'in t && void 0 !== t.set(this, r,'value') || (this.value = r)) }); if (r) return t = ue.valHooks[r.type] || ue.valHooks[r.nodeName.toLowerCase()], t&&'get'in t && void 0 !== (n = t.get(r,'value')) ? n:(n = r.value, "string" == typeof n ? n.replace(vt,''):null == n?'':n);} }}), ue.extend({valHooks: {option: {get: function(e) { var t = ue.find.attr(e,'value'); return null != t ? t:ue.trim(ue.text(e)).replace(yt,' ') }}, select: {get: function(e) { for (var t, n, i = e.options, r = e.selectedIndex, a = "select-one" === e.type || 0 > r, o = a ? null:[], s = a ? r + 1:i.length, l = 0 > r ? s:a ? r:0; s > l; l++) if (n = i[l], (n.selected || l === r) && (se.optDisabled ? !n.disabled:null === n.getAttribute('disabled')) && (!n.parentNode.disabled || !ue.nodeName(n.parentNode,'optgroup'))) { if (t = ue(n).val(), a) return t; o.push(t);} return o;}, set: function(e, t) { for (var n, i, r = e.options, a = ue.makeArray(t), o = r.length; o--;)i = r[o], (i.selected = ue.inArray(ue.valHooks.option.get(i), a) > -1) && (n = !0); return n || (e.selectedIndex = -1), a;}}}}), ue.each(['radio','checkbox'], function() { ue.valHooks[this] = {set: function(e, t) { return ue.isArray(t) ? e.checked = ue.inArray(ue(e).val(), t) > -1:void 0;}}, se.checkOn || (ue.valHooks[this].get = function(e) { return null === e.getAttribute('value')?'on':e.value });}); var wt = /^(?:focusinfocus|focusoutblur)$/; ue.extend(ue.event, {trigger: function(e, t, i, r) { var a, o, s, l, u, c, p, d = [i || Z], f = oe.call(e,'type') ? e.type:e, h = oe.call(e,'namespace') ? e.namespace.split('.'):[]; if (o = s = i = i || Z, 3 !== i.nodeType && 8 !== i.nodeType && !wt.test(f + ue.event.triggered) && (f.indexOf('.') > -1 && (h = f.split('.'), f = h.shift(), h.sort()), u = f.indexOf(':') < 0 && "on" + f, e = e[ue.expando] ? e:new ue.Event(f, "object" == typeof e && e), e.isTrigger = r ? 2:3, e.namespace = h.join('.'), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + h.join('\\.(?:.*\\.|)')+'(\\.|$)'):null, e.result = void 0, e.target || (e.target = i), t = null == t ? [e]:ue.makeArray(t, [e]), p = ue.event.special[f] || {}, r || !p.trigger || p.trigger.apply(i, t) !== !1)) { if (!r && !p.noBubble && !ue.isWindow(i)) { for (l = p.delegateType || f, wt.test(l + f) || (o = o.parentNode); o; o = o.parentNode)d.push(o), s = o; s === (i.ownerDocument || Z) && d.push(s.defaultView || s.parentWindow || n) } for (a = 0; (o = d[a++]) && !e.isPropagationStopped();)e.type = a > 1 ? l:p.bindType || f, c = (Pe.get(o,'events') || {})[e.type] && Pe.get(o,'handle'), c && c.apply(o, t), c = u && o[u], c && c.apply && Me(o) && (e.result = c.apply(o, t), e.result === !1 && e.preventDefault()); return e.type = f, r || e.isDefaultPrevented() || p._default && p._default.apply(d.pop(), t) !== !1 || !Me(i) || u && ue.isFunction(i[f]) && !ue.isWindow(i) && (s = i[u], s && (i[u] = null), ue.event.triggered = f, i[f](), ue.event.triggered = void 0, s && (i[u] = s)), e.result } }, simulate: function(e, t, n) { var i = ue.extend(new ue.Event, n, {type: e, isSimulated: !0}); ue.event.trigger(i, null, t);}}), ue.fn.extend({trigger: function(e, t) { return this.each(function() { ue.event.trigger(e, t, this) }) }, triggerHandler: function(e, t) { var n = this[0]; return n ? ue.event.trigger(e, t, n, !0):void 0;}}), ue.each('blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu'.split(' '), function(e, t) { ue.fn[t] = function(e, n) { return arguments.length > 0 ? this.on(t, null, e, n):this.trigger(t);} }), ue.fn.extend({hover: function(e, t) { return this.mouseenter(e).mouseleave(t || e) }}), se.focusin='onfocusin'in n, se.focusin || ue.each({focus:'focusin', blur:'focusout'}, function(e, t) { var n = function(e) { ue.event.simulate(t, e.target, ue.event.fix(e));}; ue.event.special[t] = {setup: function() { var i = this.ownerDocument || this, r = Pe.access(i, t); r || i.addEventListener(e, n, !0), Pe.access(i, t, (r || 0) + 1);}, teardown: function() { var i = this.ownerDocument || this, r = Pe.access(i, t) - 1; r ? Pe.access(i, t, r):(i.removeEventListener(e, n, !0), Pe.remove(i, t)) }};}); var bt = n.location, xt = ue.now(), Tt = /\?/; ue.parseJSON = function(e) { return JSON.parse(e+'');}, ue.parseXML = function(e) { var t; if (!e || "string" != typeof e) return null; try { t = (new n.DOMParser).parseFromString(e,'text/xml');} catch (i) { t = void 0;} return t && !t.getElementsByTagName('parsererror').length || ue.error("Invalid XML: " + e), t;}; var Ct = /#.*$/, St = /([?&])_=[^&]*/, Et = /^(.*?):[ \t]*([^\r\n]*)$/gm, kt = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, At = /^(?:GET|HEAD)$/, Mt = /^\/\//, Pt = {}, Dt = {}, zt='*/'.concat('*'), Lt = Z.createElement('a'); Lt.href = bt.href, ue.extend({active: 0, lastModified: {}, etag: {}, ajaxSettings: {url: bt.href, type:'GET', isLocal: kt.test(bt.protocol), global: !0, processData: !0, async: !0, contentType:'application/x-www-form-urlencoded; charset=UTF-8', accepts: {'*': zt, text:'text/plain', html:'text/html', xml:'application/xml, text/xml', json:'application/json, text/javascript'}, contents: {xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/}, responseFields: {xml:'responseXML', text:'responseText', json:'responseJSON'}, converters: {'* text': String,'text html': !0,'text json': ue.parseJSON,'text xml': ue.parseXML}, flatOptions: {url: !0, context: !0}}, ajaxSetup: function(e, t) { return t ? V(V(e, ue.ajaxSettings), t):V(ue.ajaxSettings, e) }, ajaxPrefilter: G(Pt), ajaxTransport: G(Dt), ajax: function(e, t) { function i(e, t, i, s) { var u, p, y, w, x, C = t; 2 !== b && (b = 2, l && n.clearTimeout(l), r = void 0, o = s||'', T.readyState = e > 0 ? 4:0, u = e >= 200 && 300 > e || 304 === e, i && (w = $(d, T, i)), w = U(d, w, T, u), u ? (d.ifModified && (x = T.getResponseHeader('Last-Modified'), x && (ue.lastModified[a] = x), x = T.getResponseHeader('etag'), x && (ue.etag[a] = x)), 204 === e || "HEAD" === d.type ? C='nocontent':304 === e ? C='notmodified':(C = w.state, p = w.data, y = w.error, u = !y)):(y = C, !e && C || (C='error', 0 > e && (e = 0))), T.status = e, T.statusText = (t || C)+'', u ? m.resolveWith(f, [p, C, T]):m.rejectWith(f, [T, C, y]), T.statusCode(v), v = void 0, c && h.trigger(u?'ajaxSuccess':'ajaxError', [T, d, u ? p:y]), g.fireWith(f, [T, C]), c && (h.trigger('ajaxComplete', [T, d]), --ue.active || ue.event.trigger('ajaxStop'))) }"object" == typeof e && (t = e, e = void 0), t = t || {}; var r, a, o, s, l, u, c, p, d = ue.ajaxSetup({}, t), f = d.context || d, h = d.context && (f.nodeType || f.jquery) ? ue(f):ue.event, m = ue.Deferred(), g = ue.Callbacks('once memory'), v = d.statusCode || {}, y = {}, w = {}, b = 0, x='canceled', T = {readyState: 0, getResponseHeader: function(e) { var t; if (2 === b) { if (!s) for (s = {}; t = Et.exec(o);)s[t[1].toLowerCase()] = t[2]; t = s[e.toLowerCase()];} return null == t ? null:t;}, getAllResponseHeaders: function() { return 2 === b ? o:null }, setRequestHeader: function(e, t) { var n = e.toLowerCase(); return b || (e = w[n] = w[n] || e, y[e] = t), this;}, overrideMimeType: function(e) { return b || (d.mimeType = e), this }, statusCode: function(e) { var t; if (e) if (2 > b) for (t in e)v[t] = [v[t], e[t]]; else T.always(e[T.status]); return this }, abort: function(e) { var t = e || x; return r && r.abort(t), i(0, t), this }}; if (m.promise(T).complete = g.add, T.success = T.done, T.error = T.fail, d.url = ((e || d.url || bt.href)+'').replace(Ct,'').replace(Mt, bt.protocol+'//'), d.type = t.method || t.type || d.method || d.type, d.dataTypes = ue.trim(d.dataType||'*').toLowerCase().match(Ee) || [''], null == d.crossDomain) { u = Z.createElement('a'); try { u.href = d.url, u.href = u.href, d.crossDomain = Lt.protocol + "//" + Lt.host != u.protocol + "//" + u.host } catch (C) { d.crossDomain = !0 } } if (d.data && d.processData && "string" != typeof d.data && (d.data = ue.param(d.data, d.traditional)), Y(Pt, d, t, T), 2 === b) return T; c = ue.event && d.global, c && 0 === ue.active++ && ue.event.trigger('ajaxStart'), d.type = d.type.toUpperCase(), d.hasContent = !At.test(d.type), a = d.url, d.hasContent || (d.data && (a = d.url += (Tt.test(a)?'&':'?') + d.data, delete d.data), d.cache === !1 && (d.url = St.test(a) ? a.replace(St, "$1_=" + xt++):a + (Tt.test(a)?'&':'?') + "_=" + xt++)), d.ifModified && (ue.lastModified[a] && T.setRequestHeader('If-Modified-Since', ue.lastModified[a]), ue.etag[a] && T.setRequestHeader('If-None-Match', ue.etag[a])), (d.data && d.hasContent && d.contentType !== !1 || t.contentType) && T.setRequestHeader('Content-Type', d.contentType), T.setRequestHeader('Accept', d.dataTypes[0] && d.accepts[d.dataTypes[0]] ? d.accepts[d.dataTypes[0]] + ("*" !== d.dataTypes[0] ? ", " + zt+'; q=0.01':''):d.accepts['*']); for (p in d.headers)T.setRequestHeader(p, d.headers[p]); if (d.beforeSend && (d.beforeSend.call(f, T, d) === !1 || 2 === b)) return T.abort(); x='abort'; for (p in {success: 1, error: 1, complete: 1})T[p](d[p]); if (r = Y(Dt, d, t, T)) { if (T.readyState = 1, c && h.trigger('ajaxSend', [T, d]), 2 === b) return T; d.async && d.timeout > 0 && (l = n.setTimeout(function() { T.abort('timeout');}, d.timeout)); try { b = 1, r.send(y, i);} catch (C) { if (!(2 > b)) throw C; i(-1, C) } } else i(-1,'No Transport'); return T;}, getJSON: function(e, t, n) { return ue.get(e, t, n,'json') }, getScript: function(e, t) { return ue.get(e, void 0, t,'script') }}), ue.each(['get','post'], function(e, t) { ue[t] = function(e, n, i, r) { return ue.isFunction(n) && (r = r || i, i = n, n = void 0), ue.ajax(ue.extend({url: e, type: t, dataType: r, data: n, success: i}, ue.isPlainObject(e) && e));} }), ue._evalUrl = function(e) { return ue.ajax({url: e, type:'GET', dataType:'script', async: !1, global: !1,'throws': !0});}, ue.fn.extend({wrapAll: function(e) { var t; return ue.isFunction(e) ? this.each(function(t) { ue(this).wrapAll(e.call(this, t)) }):(this[0] && (t = ue(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function() { for (var e = this; e.firstElementChild;)e = e.firstElementChild; return e;}).append(this)), this);}, wrapInner: function(e) { return ue.isFunction(e) ? this.each(function(t) { ue(this).wrapInner(e.call(this, t));}):this.each(function() { var t = ue(this), n = t.contents(); n.length ? n.wrapAll(e):t.append(e);}) }, wrap: function(e) { var t = ue.isFunction(e); return this.each(function(n) { ue(this).wrapAll(t ? e.call(this, n):e);}) }, unwrap: function() { return this.parent().each(function() { ue.nodeName(this,'body') || ue(this).replaceWith(this.childNodes) }).end();}}), ue.expr.filters.hidden = function(e) { return !ue.expr.filters.visible(e) }, ue.expr.filters.visible = function(e) { return e.offsetWidth > 0 || e.offsetHeight > 0 || e.getClientRects().length > 0;}; var Nt = /%20/g, It = /\[\]$/, Ot = /\r?\n/g, Ht = /^(?:submit|button|image|reset|file)$/i, Bt = /^(?:input|select|textarea|keygen)/i; ue.param = function(e, t) { var n, i = [], r = function(e, t) { t = ue.isFunction(t) ? t():null == t?'':t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t) }; if (void 0 === t && (t = ue.ajaxSettings && ue.ajaxSettings.traditional), ue.isArray(e) || e.jquery && !ue.isPlainObject(e))ue.each(e, function() { r(this.name, this.value) }); else for (n in e)K(n, e[n], t, r); return i.join('&').replace(Nt,'+') }, ue.fn.extend({serialize: function() { return ue.param(this.serializeArray()) }, serializeArray: function() { return this.map(function() { var e = ue.prop(this,'elements'); return e ? ue.makeArray(e):this;}).filter(function() { var e = this.type; return this.name && !ue(this).is(':disabled') && Bt.test(this.nodeName) && !Ht.test(e) && (this.checked || !Be.test(e)) }).map(function(e, t) { var n = ue(this).val(); return null == n ? null:ue.isArray(n) ? ue.map(n, function(e) { return {name: t.name, value: e.replace(Ot,'\r\n')} }):{name: t.name, value: n.replace(Ot,'\r\n')} }).get() }}), ue.ajaxSettings.xhr = function() { try { return new n.XMLHttpRequest } catch (e) {} }; var Rt = {0: 200, 1223: 204}, qt = ue.ajaxSettings.xhr(); se.cors = !!qt&&'withCredentials'in qt, se.ajax = qt = !!qt, ue.ajaxTransport(function(e) { var t, i; return se.cors || qt && !e.crossDomain ? {send: function(r, a) { var o, s = e.xhr(); if (s.open(e.type, e.url, e.async, e.username, e.password), e.xhrFields) for (o in e.xhrFields)s[o] = e.xhrFields[o]; e.mimeType && s.overrideMimeType && s.overrideMimeType(e.mimeType),
e.crossDomain || r['X-Requested-With'] || (r['X-Requested-With']='XMLHttpRequest'); for (o in r)s.setRequestHeader(o, r[o]); t = function(e) { return function() { t && (t = i = s.onload = s.onerror = s.onabort = s.onreadystatechange = null, "abort" === e ? s.abort():"error" === e ? "number" != typeof s.status ? a(0,'error'):a(s.status, s.statusText):a(Rt[s.status] || s.status, s.statusText, "text" !== (s.responseType||'text') || "string" != typeof s.responseText ? {binary: s.response}:{text: s.responseText}, s.getAllResponseHeaders())) } }, s.onload = t(), i = s.onerror = t('error'), void 0 !== s.onabort ? s.onabort = i:s.onreadystatechange = function() { 4 === s.readyState && n.setTimeout(function() { t && i();});}, t = t('abort'); try { s.send(e.hasContent && e.data || null);} catch (l) { if (t) throw l;} }, abort: function() { t && t() }}:void 0;}), ue.ajaxSetup({accepts: {script:'text/javascript, application/javascript, application/ecmascript, application/x-ecmascript'}, contents: {script: /\b(?:java|ecma)script\b/}, converters: {'text script': function(e) { return ue.globalEval(e), e;}}}), ue.ajaxPrefilter('script', function(e) { void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type='GET');}), ue.ajaxTransport('script', function(e) { if (e.crossDomain) { var t, n; return {send: function(i, r) { t = ue('<script>').prop({charset: e.scriptCharset, src: e.url}).on('load error', n = function(e) { t.remove(), n = null, e && r("error" === e.type ? 404:200, e.type) }), Z.head.appendChild(t[0]) }, abort: function() { n && n();}};} }); var jt = [], Ft = /(=)\?(?=&|$)|\?\?/; ue.ajaxSetup({jsonp:'callback', jsonpCallback: function() { var e = jt.pop() || ue.expando + "_" + xt++; return this[e] = !0, e }}), ue.ajaxPrefilter('json jsonp', function(e, t, i) { var r, a, o, s = e.jsonp !== !1 && (Ft.test(e.url)?'url':"string" == typeof e.data && 0 === (e.contentType||'').indexOf('application/x-www-form-urlencoded') && Ft.test(e.data)&&'data'); return s || "jsonp" === e.dataTypes[0] ? (r = e.jsonpCallback = ue.isFunction(e.jsonpCallback) ? e.jsonpCallback():e.jsonpCallback, s ? e[s] = e[s].replace(Ft, "$1" + r):e.jsonp !== !1 && (e.url += (Tt.test(e.url)?'&':'?') + e.jsonp + "=" + r), e.converters['script json'] = function() { return o || ue.error(r+' was not called'), o[0];}, e.dataTypes[0]='json', a = n[r], n[r] = function() { o = arguments;}, i.always(function() { void 0 === a ? ue(n).removeProp(r):n[r] = a, e[r] && (e.jsonpCallback = t.jsonpCallback, jt.push(r)), o && ue.isFunction(a) && a(o[0]), o = a = void 0;}),'script'):void 0;}), ue.parseHTML = function(e, t, n) { if (!e || "string" != typeof e) return null; "boolean" == typeof t && (n = t, t = !1), t = t || Z; var i = ye.exec(e), r = !n && []; return i ? [t.createElement(i[1])]:(i = g([e], t, r), r && r.length && ue(r).remove(), ue.merge([], i.childNodes)) }; var Wt = ue.fn.load; ue.fn.load = function(e, t, n) { if ("string" != typeof e && Wt) return Wt.apply(this, arguments); var i, r, a, o = this, s = e.indexOf(' '); return s > -1 && (i = ue.trim(e.slice(s)), e = e.slice(0, s)), ue.isFunction(t) ? (n = t, t = void 0):t && "object" == typeof t && (r='POST'), o.length > 0 && ue.ajax({url: e, type: r||'GET', dataType:'html', data: t}).done(function(e) { a = arguments, o.html(i ? ue('<div>').append(ue.parseHTML(e)).find(i):e);}).always(n && function(e, t) { o.each(function() { n.apply(this, a || [e.responseText, t, e]);}) }), this;}, ue.each(['ajaxStart','ajaxStop','ajaxComplete','ajaxError','ajaxSuccess','ajaxSend'], function(e, t) { ue.fn[t] = function(e) { return this.on(t, e) };}), ue.expr.filters.animated = function(e) { return ue.grep(ue.timers, function(t) { return e === t.elem;}).length;}, ue.offset = {setOffset: function(e, t, n) { var i, r, a, o, s, l, u, c = ue.css(e,'position'), p = ue(e), d = {}; "static" === c && (e.style.position='relative'), s = p.offset(), a = ue.css(e,'top'), l = ue.css(e,'left'), u = ("absolute" === c || "fixed" === c) && (a + l).indexOf('auto') > -1, u ? (i = p.position(), o = i.top, r = i.left):(o = parseFloat(a) || 0, r = parseFloat(l) || 0), ue.isFunction(t) && (t = t.call(e, n, ue.extend({}, s))), null != t.top && (d.top = t.top - s.top + o), null != t.left && (d.left = t.left - s.left + r),'using'in t ? t.using.call(e, d):p.css(d);}}, ue.fn.extend({offset: function(e) { if (arguments.length) return void 0 === e ? this:this.each(function(t) { ue.offset.setOffset(this, e, t) }); var t, n, i = this[0], r = {top: 0, left: 0}, a = i && i.ownerDocument; if (a) return t = a.documentElement, ue.contains(t, i) ? (r = i.getBoundingClientRect(), n = Q(a), {top: r.top + n.pageYOffset - t.clientTop, left: r.left + n.pageXOffset - t.clientLeft}):r;}, position: function() { if (this[0]) { var e, t, n = this[0], i = {top: 0, left: 0}; return "fixed" === ue.css(n,'position') ? t = n.getBoundingClientRect():(e = this.offsetParent(), t = this.offset(), ue.nodeName(e[0],'html') || (i = e.offset()), i.top += ue.css(e[0],'borderTopWidth', !0), i.left += ue.css(e[0],'borderLeftWidth', !0)), {top: t.top - i.top - ue.css(n,'marginTop', !0), left: t.left - i.left - ue.css(n,'marginLeft', !0)} } }, offsetParent: function() { return this.map(function() { for (var e = this.offsetParent; e && "static" === ue.css(e,'position');)e = e.offsetParent; return e || nt }) }}), ue.each({scrollLeft:'pageXOffset', scrollTop:'pageYOffset'}, function(e, t) { var n = "pageYOffset" === t; ue.fn[e] = function(i) { return Ae(this, function(e, i, r) { var a = Q(e); return void 0 === r ? a ? a[t]:e[i]:void(a ? a.scrollTo(n ? a.pageXOffset:r, n ? r:a.pageYOffset):e[i] = r) }, e, i, arguments.length) } }), ue.each(['top','left'], function(e, t) { ue.cssHooks[t] = z(se.pixelPosition, function(e, n) { return n ? (n = D(e, t), Ze.test(n) ? ue(e).position()[t]+'px':n):void 0;}) }), ue.each({Height:'height', Width:'width'}, function(e, t) { ue.each({padding: "inner" + e, content: t,'': "outer" + e}, function(n, i) { ue.fn[i] = function(i, r) { var a = arguments.length && (n || "boolean" != typeof i), o = n || (i === !0 || r === !0?'margin':'border'); return Ae(this, function(t, n, i) { var r; return ue.isWindow(t) ? t.document.documentElement["client" + e]:9 === t.nodeType ? (r = t.documentElement, Math.max(t.body["scroll" + e], r["scroll" + e], t.body["offset" + e], r["offset" + e], r["client" + e])):void 0 === i ? ue.css(t, n, o):ue.style(t, n, i, o) }, t, a ? i:void 0, a, null) };}) }), ue.fn.extend({bind: function(e, t, n) { return this.on(e, null, t, n) }, unbind: function(e, t) { return this.off(e, null, t) }, delegate: function(e, t, n, i) { return this.on(t, e, n, i) }, undelegate: function(e, t, n) { return 1 === arguments.length ? this.off(e,'**'):this.off(t, e||'**', n);}, size: function() { return this.length;}}), ue.fn.andSelf = ue.fn.addBack, i = [], r = function() { return ue;}.apply(t, i), !(void 0 !== r && (e.exports = r)); var _t = n.jQuery, Xt = n.$; return ue.noConflict = function(e) { return n.$ === ue && (n.$ = Xt), e && n.jQuery === ue && (n.jQuery = _t), ue }, a || (n.jQuery = n.$ = ue), ue });}, function(e, t, n) { !function() {'use strict'; function e(e) { e.fn.swiper = function(t) { var i; return e(this).each(function() { var e = new n(this, t); i || (i = e) }), i } } var t, n = function(e, r) { function a(e) { return Math.floor(e);} function o() { b.autoplayTimeoutId = setTimeout(function() { b.params.loop ? (b.fixLoop(), b._slideNext(), b.emit('onAutoplay', b)):b.isEnd ? r.autoplayStopOnLast ? b.stopAutoplay():(b._slideTo(0), b.emit('onAutoplay', b)):(b._slideNext(), b.emit('onAutoplay', b)) }, b.params.autoplay);} function s(e, n) { var i = t(e.target); if (!i.is(n)) if ("string" == typeof n)i = i.parents(n); else if (n.nodeType) { var r; return i.parents().each(function(e, t) { t === n && (r = n) }), r ? n:void 0 } if (0 !== i.length) return i[0] } function l(e, t) { t = t || {}; var n = window.MutationObserver || window.WebkitMutationObserver, i = new n(function(e) { e.forEach(function(e) { b.onResize(!0), b.emit('onObserverUpdate', b, e);}) }); i.observe(e, {attributes: "undefined" == typeof t.attributes ? !0:t.attributes, childList: "undefined" == typeof t.childList ? !0:t.childList, characterData: "undefined" == typeof t.characterData ? !0:t.characterData}), b.observers.push(i);} function u(e) { e.originalEvent && (e = e.originalEvent); var t = e.keyCode || e.charCode; if (!b.params.allowSwipeToNext && (b.isHorizontal() && 39 === t || !b.isHorizontal() && 40 === t)) return !1; if (!b.params.allowSwipeToPrev && (b.isHorizontal() && 37 === t || !b.isHorizontal() && 38 === t)) return !1; if (!(e.shiftKey || e.altKey || e.ctrlKey || e.metaKey || document.activeElement && document.activeElement.nodeName && ("input" === document.activeElement.nodeName.toLowerCase() || "textarea" === document.activeElement.nodeName.toLowerCase()))) { if (37 === t || 39 === t || 38 === t || 40 === t) { var n = !1; if (b.container.parents('.swiper-slide').length > 0 && 0 === b.container.parents('.swiper-slide-active').length) return; var i = {left: window.pageXOffset, top: window.pageYOffset}, r = window.innerWidth, a = window.innerHeight, o = b.container.offset(); b.rtl && (o.left = o.left - b.container[0].scrollLeft); for (var s = [[o.left, o.top], [o.left + b.width, o.top], [o.left, o.top + b.height], [o.left + b.width, o.top + b.height]], l = 0; l < s.length; l++) { var u = s[l]; u[0] >= i.left && u[0] <= i.left + r && u[1] >= i.top && u[1] <= i.top + a && (n = !0) } if (!n) return;}b.isHorizontal() ? (37 !== t && 39 !== t || (e.preventDefault ? e.preventDefault():e.returnValue = !1), (39 === t && !b.rtl || 37 === t && b.rtl) && b.slideNext(), (37 === t && !b.rtl || 39 === t && b.rtl) && b.slidePrev()):(38 !== t && 40 !== t || (e.preventDefault ? e.preventDefault():e.returnValue = !1), 40 === t && b.slideNext(), 38 === t && b.slidePrev()) } } function c(e) { e.originalEvent && (e = e.originalEvent); var t = b.mousewheel.event, n = 0, i = b.rtl ? -1:1; if ("mousewheel" === t) if (b.params.mousewheelForceToAxis) if (b.isHorizontal()) { if (!(Math.abs(e.wheelDeltaX) > Math.abs(e.wheelDeltaY))) return; n = e.wheelDeltaX * i;} else { if (!(Math.abs(e.wheelDeltaY) > Math.abs(e.wheelDeltaX))) return; n = e.wheelDeltaY;} else n = Math.abs(e.wheelDeltaX) > Math.abs(e.wheelDeltaY) ? -e.wheelDeltaX * i:-e.wheelDeltaY; else if ("DOMMouseScroll" === t)n = -e.detail; else if ("wheel" === t) if (b.params.mousewheelForceToAxis) if (b.isHorizontal()) { if (!(Math.abs(e.deltaX) > Math.abs(e.deltaY))) return; n = -e.deltaX * i } else { if (!(Math.abs(e.deltaY) > Math.abs(e.deltaX))) return; n = -e.deltaY } else n = Math.abs(e.deltaX) > Math.abs(e.deltaY) ? -e.deltaX * i:-e.deltaY; if (0 !== n) { if (b.params.mousewheelInvert && (n = -n), b.params.freeMode) { var r = b.getWrapperTranslate() + n * b.params.mousewheelSensitivity, a = b.isBeginning, o = b.isEnd; if (r >= b.minTranslate() && (r = b.minTranslate()), r <= b.maxTranslate() && (r = b.maxTranslate()), b.setWrapperTransition(0), b.setWrapperTranslate(r), b.updateProgress(), b.updateActiveIndex(), (!a && b.isBeginning || !o && b.isEnd) && b.updateClasses(), b.params.freeModeSticky ? (clearTimeout(b.mousewheel.timeout), b.mousewheel.timeout = setTimeout(function() { b.slideReset() }, 300)):b.params.lazyLoading && b.lazy && b.lazy.load(), 0 === r || r === b.maxTranslate()) return;} else { if ((new window.Date).getTime() - b.mousewheel.lastScrollTime > 60) if (0 > n) if (b.isEnd && !b.params.loop || b.animating) { if (b.params.mousewheelReleaseOnEdges) return !0;} else b.slideNext(); else if (b.isBeginning && !b.params.loop || b.animating) { if (b.params.mousewheelReleaseOnEdges) return !0 } else b.slidePrev(); b.mousewheel.lastScrollTime = (new window.Date).getTime() } return b.params.autoplay && b.stopAutoplay(), e.preventDefault ? e.preventDefault():e.returnValue = !1, !1;} } function p(e, n) { e = t(e); var i, r, a, o = b.rtl ? -1:1; i = e.attr('data-swiper-parallax')||'0', r = e.attr('data-swiper-parallax-x'), a = e.attr('data-swiper-parallax-y'), r || a ? (r = r||'0', a = a||'0'):b.isHorizontal() ? (r = i, a='0'):(a = i, r='0'), r = r.indexOf('%') >= 0 ? parseInt(r, 10) * n * o+'%':r * n * o+'px', a = a.indexOf('%') >= 0 ? parseInt(a, 10) * n+'%':a * n+'px', e.transform("translate3d(" + r + ", " + a+',0px)') } function d(e) { return 0 !== e.indexOf('on') && (e = e[0] !== e[0].toUpperCase() ? "on" + e[0].toUpperCase() + e.substring(1):"on" + e), e;} if (!(this instanceof n)) return new n(e, r); var f = {direction:'horizontal', touchEventsTarget:'container', initialSlide: 0, speed: 300, autoplay: !1, autoplayDisableOnInteraction: !0, autoplayStopOnLast: !1, iOSEdgeSwipeDetection: !1, iOSEdgeSwipeThreshold: 20, freeMode: !1, freeModeMomentum: !0, freeModeMomentumRatio: 1, freeModeMomentumBounce: !0, freeModeMomentumBounceRatio: 1, freeModeSticky: !1, freeModeMinimumVelocity: .02, autoHeight: !1, setWrapperSize: !1, virtualTranslate: !1, effect:'slide', coverflow: {rotate: 50, stretch: 0, depth: 100, modifier: 1, slideShadows: !0}, flip: {slideShadows: !0, limitRotation: !0}, cube: {slideShadows: !0, shadow: !0, shadowOffset: 20, shadowScale: .94}, fade: {crossFade: !1}, parallax: !1, scrollbar: null, scrollbarHide: !0, scrollbarDraggable: !1, scrollbarSnapOnRelease: !1, keyboardControl: !1, mousewheelControl: !1, mousewheelReleaseOnEdges: !1, mousewheelInvert: !1, mousewheelForceToAxis: !1, mousewheelSensitivity: 1, hashnav: !1, breakpoints: void 0, spaceBetween: 0, slidesPerView: 1, slidesPerColumn: 1, slidesPerColumnFill:'column', slidesPerGroup: 1, centeredSlides: !1, slidesOffsetBefore: 0, slidesOffsetAfter: 0, roundLengths: !1, touchRatio: 1, touchAngle: 45, simulateTouch: !0, shortSwipes: !0, longSwipes: !0, longSwipesRatio: .5, longSwipesMs: 300, followFinger: !0, onlyExternal: !1, threshold: 0, touchMoveStopPropagation: !0, uniqueNavElements: !0, pagination: null, paginationElement:'span', paginationClickable: !1, paginationHide: !1, paginationBulletRender: null, paginationProgressRender: null, paginationFractionRender: null, paginationCustomRender: null, paginationType:'bullets', resistance: !0, resistanceRatio: .85, nextButton: null, prevButton: null, watchSlidesProgress: !1, watchSlidesVisibility: !1, grabCursor: !1, preventClicks: !0, preventClicksPropagation: !0, slideToClickedSlide: !1, lazyLoading: !1, lazyLoadingInPrevNext: !1, lazyLoadingInPrevNextAmount: 1, lazyLoadingOnTransitionStart: !1, preloadImages: !0, updateOnImagesReady: !0, loop: !1, loopAdditionalSlides: 0, loopedSlides: null, control: void 0, controlInverse: !1, controlBy:'slide', allowSwipeToPrev: !0, allowSwipeToNext: !0, swipeHandler: null, noSwiping: !0, noSwipingClass:'swiper-no-swiping', slideClass:'swiper-slide', slideActiveClass:'swiper-slide-active', slideVisibleClass:'swiper-slide-visible', slideDuplicateClass:'swiper-slide-duplicate', slideNextClass:'swiper-slide-next', slidePrevClass:'swiper-slide-prev', wrapperClass:'swiper-wrapper', bulletClass:'swiper-pagination-bullet', bulletActiveClass:'swiper-pagination-bullet-active', buttonDisabledClass:'swiper-button-disabled', paginationCurrentClass:'swiper-pagination-current', paginationTotalClass:'swiper-pagination-total', paginationHiddenClass:'swiper-pagination-hidden', paginationProgressbarClass:'swiper-pagination-progressbar', observer: !1, observeParents: !1, a11y: !1, prevSlideMessage:'Previous slide', nextSlideMessage:'Next slide', firstSlideMessage:'This is the first slide', lastSlideMessage:'This is the last slide', paginationBulletMessage:'Go to slide {{index}}', runCallbacksOnInit: !0}, h = r && r.virtualTranslate; r = r || {}; var m = {}; for (var g in r) if ("object" != typeof r[g] || null === r[g] || (r[g].nodeType || r[g] === window || r[g] === document || "undefined" != typeof i && r[g]instanceof i || "undefined" != typeof jQuery && r[g]instanceof jQuery))m[g] = r[g]; else { m[g] = {}; for (var v in r[g])m[g][v] = r[g][v] } for (var y in f) if ("undefined" == typeof r[y])r[y] = f[y]; else if ("object" == typeof r[y]) for (var w in f[y])"undefined" == typeof r[y][w] && (r[y][w] = f[y][w]); var b = this; if (b.params = r, b.originalParams = m, b.classNames = [], "undefined" != typeof t && "undefined" != typeof i && (t = i), ("undefined" != typeof t || (t = "undefined" == typeof i ? window.Dom7 || window.Zepto || window.jQuery:i)) && (b.$ = t, b.currentBreakpoint = void 0, b.getActiveBreakpoint = function() { if (!b.params.breakpoints) return !1; var e, t = !1, n = []; for (e in b.params.breakpoints)b.params.breakpoints.hasOwnProperty(e) && n.push(e); n.sort(function(e, t) { return parseInt(e, 10) > parseInt(t, 10);}); for (var i = 0; i < n.length; i++)e = n[i], e >= window.innerWidth && !t && (t = e); return t || "max" }, b.setBreakpoint = function() { var e = b.getActiveBreakpoint(); if (e && b.currentBreakpoint !== e) { var t = e in b.params.breakpoints ? b.params.breakpoints[e]:b.originalParams, n = b.params.loop && t.slidesPerView !== b.params.slidesPerView; for (var i in t)b.params[i] = t[i]; b.currentBreakpoint = e, n && b.destroyLoop && b.reLoop(!0);} }, b.params.breakpoints && b.setBreakpoint(), b.container = t(e), 0 !== b.container.length)) { if (b.container.length > 1) { var x = []; return b.container.each(function() { x.push(new n(this, r));}), x;}b.container[0].swiper = b, b.container.data('swiper', b), b.classNames.push("swiper-container-" + b.params.direction), b.params.freeMode && b.classNames.push('swiper-container-free-mode'), b.support.flexbox || (b.classNames.push('swiper-container-no-flexbox'), b.params.slidesPerColumn = 1), b.params.autoHeight && b.classNames.push('swiper-container-autoheight'), (b.params.parallax || b.params.watchSlidesVisibility) && (b.params.watchSlidesProgress = !0), ['cube','coverflow','flip'].indexOf(b.params.effect) >= 0 && (b.support.transforms3d ? (b.params.watchSlidesProgress = !0, b.classNames.push('swiper-container-3d')):b.params.effect='slide'), "slide" !== b.params.effect && b.classNames.push("swiper-container-" + b.params.effect), "cube" === b.params.effect && (b.params.resistanceRatio = 0, b.params.slidesPerView = 1, b.params.slidesPerColumn = 1, b.params.slidesPerGroup = 1, b.params.centeredSlides = !1, b.params.spaceBetween = 0, b.params.virtualTranslate = !0, b.params.setWrapperSize = !1), "fade" !== b.params.effect && "flip" !== b.params.effect || (b.params.slidesPerView = 1, b.params.slidesPerColumn = 1, b.params.slidesPerGroup = 1, b.params.watchSlidesProgress = !0, b.params.spaceBetween = 0, b.params.setWrapperSize = !1, "undefined" == typeof h && (b.params.virtualTranslate = !0)), b.params.grabCursor && b.support.touch && (b.params.grabCursor = !1), b.wrapper = b.container.children("." + b.params.wrapperClass), b.params.pagination && (b.paginationContainer = t(b.params.pagination), b.params.uniqueNavElements && "string" == typeof b.params.pagination && b.paginationContainer.length > 1 && 1 === b.container.find(b.params.pagination).length && (b.paginationContainer = b.container.find(b.params.pagination)), "bullets" === b.params.paginationType && b.params.paginationClickable ? b.paginationContainer.addClass('swiper-pagination-clickable'):b.params.paginationClickable = !1, b.paginationContainer.addClass("swiper-pagination-" + b.params.paginationType)), (b.params.nextButton || b.params.prevButton) && (b.params.nextButton && (b.nextButton = t(b.params.nextButton), b.params.uniqueNavElements && "string" == typeof b.params.nextButton && b.nextButton.length > 1 && 1 === b.container.find(b.params.nextButton).length && (b.nextButton = b.container.find(b.params.nextButton))), b.params.prevButton && (b.prevButton = t(b.params.prevButton), b.params.uniqueNavElements && "string" == typeof b.params.prevButton && b.prevButton.length > 1 && 1 === b.container.find(b.params.prevButton).length && (b.prevButton = b.container.find(b.params.prevButton)))), b.isHorizontal = function() { return "horizontal" === b.params.direction }, b.rtl = b.isHorizontal() && ("rtl" === b.container[0].dir.toLowerCase() || "rtl" === b.container.css('direction')), b.rtl && b.classNames.push('swiper-container-rtl'), b.rtl && (b.wrongRTL = "-webkit-box" === b.wrapper.css('display')), b.params.slidesPerColumn > 1 && b.classNames.push('swiper-container-multirow'), b.device.android && b.classNames.push('swiper-container-android'), b.container.addClass(b.classNames.join(' ')), b.translate = 0, b.progress = 0, b.velocity = 0, b.lockSwipeToNext = function() { b.params.allowSwipeToNext = !1 }, b.lockSwipeToPrev = function() { b.params.allowSwipeToPrev = !1 }, b.lockSwipes = function() { b.params.allowSwipeToNext = b.params.allowSwipeToPrev = !1;}, b.unlockSwipeToNext = function() { b.params.allowSwipeToNext = !0 }, b.unlockSwipeToPrev = function() { b.params.allowSwipeToPrev = !0;}, b.unlockSwipes = function() { b.params.allowSwipeToNext = b.params.allowSwipeToPrev = !0;}, b.params.grabCursor && (b.container[0].style.cursor='move', b.container[0].style.cursor='-webkit-grab', b.container[0].style.cursor='-moz-grab', b.container[0].style.cursor='grab'), b.imagesToLoad = [], b.imagesLoaded = 0, b.loadImage = function(e, t, n, i, r) { function a() { r && r() } var o; e.complete && i ? a():t ? (o = new window.Image, o.onload = a, o.onerror = a, n && (o.srcset = n), t && (o.src = t)):a() }, b.preloadImages = function() { function e() { "undefined" != typeof b && null !== b && (void 0 !== b.imagesLoaded && b.imagesLoaded++, b.imagesLoaded === b.imagesToLoad.length && (b.params.updateOnImagesReady && b.update(), b.emit('onImagesReady', b))) }b.imagesToLoad = b.container.find('img'); for (var t = 0; t < b.imagesToLoad.length; t++)b.loadImage(b.imagesToLoad[t], b.imagesToLoad[t].currentSrc || b.imagesToLoad[t].getAttribute('src'), b.imagesToLoad[t].srcset || b.imagesToLoad[t].getAttribute('srcset'), !0, e);}, b.autoplayTimeoutId = void 0, b.autoplaying = !1, b.autoplayPaused = !1, b.startAutoplay = function() { return "undefined" != typeof b.autoplayTimeoutId ? !1:b.params.autoplay ? b.autoplaying ? !1:(b.autoplaying = !0, b.emit('onAutoplayStart', b), void o()):!1 }, b.stopAutoplay = function(e) { b.autoplayTimeoutId && (b.autoplayTimeoutId && clearTimeout(b.autoplayTimeoutId), b.autoplaying = !1, b.autoplayTimeoutId = void 0, b.emit('onAutoplayStop', b));}, b.pauseAutoplay = function(e) { b.autoplayPaused || (b.autoplayTimeoutId && clearTimeout(b.autoplayTimeoutId), b.autoplayPaused = !0, 0 === e ? (b.autoplayPaused = !1, o()):b.wrapper.transitionEnd(function() { b && (b.autoplayPaused = !1, b.autoplaying ? o():b.stopAutoplay());})) }, b.minTranslate = function() { return -b.snapGrid[0];}, b.maxTranslate = function() { return -b.snapGrid[b.snapGrid.length - 1];}, b.updateAutoHeight = function() { var e = b.slides.eq(b.activeIndex)[0]; if ("undefined" != typeof e) { var t = e.offsetHeight; t && b.wrapper.css('height', t+'px');} }, b.updateContainerSize = function() { var e, t; e = "undefined" != typeof b.params.width ? b.params.width:b.container[0].clientWidth, t = "undefined" != typeof b.params.height ? b.params.height:b.container[0].clientHeight, 0 === e && b.isHorizontal() || 0 === t && !b.isHorizontal() || (e = e - parseInt(b.container.css('padding-left'), 10) - parseInt(b.container.css('padding-right'), 10), t = t - parseInt(b.container.css('padding-top'), 10) - parseInt(b.container.css('padding-bottom'), 10), b.width = e, b.height = t, b.size = b.isHorizontal() ? b.width:b.height);}, b.updateSlidesSize = function() { b.slides = b.wrapper.children("." + b.params.slideClass), b.snapGrid = [], b.slidesGrid = [], b.slidesSizesGrid = []; var e, t = b.params.spaceBetween, n = -b.params.slidesOffsetBefore, i = 0, r = 0; if ("undefined" != typeof b.size) { "string" == typeof t && t.indexOf('%') >= 0 && (t = parseFloat(t.replace('%','')) / 100 * b.size), b.virtualSize = -t, b.rtl ? b.slides.css({marginLeft:'', marginTop:''}):b.slides.css({marginRight:'', marginBottom:''}); var o; b.params.slidesPerColumn > 1 && (o = Math.floor(b.slides.length / b.params.slidesPerColumn) === b.slides.length / b.params.slidesPerColumn ? b.slides.length:Math.ceil(b.slides.length / b.params.slidesPerColumn) * b.params.slidesPerColumn, "auto" !== b.params.slidesPerView && "row" === b.params.slidesPerColumnFill && (o = Math.max(o, b.params.slidesPerView * b.params.slidesPerColumn))); var s, l = b.params.slidesPerColumn, u = o / l, c = u - (b.params.slidesPerColumn * u - b.slides.length); for (e = 0; e < b.slides.length; e++) { s = 0; var p = b.slides.eq(e); if (b.params.slidesPerColumn > 1) { var d, f, h; "column" === b.params.slidesPerColumnFill ? (f = Math.floor(e / l), h = e - f * l, (f > c || f === c && h === l - 1) && ++h >= l && (h = 0, f++), d = f + h * o / l, p.css({'-webkit-box-ordinal-group': d,'-moz-box-ordinal-group': d,'-ms-flex-order': d,'-webkit-order': d, order: d})):(h = Math.floor(e / u), f = e - h * u), p.css({'margin-top': 0 !== h && b.params.spaceBetween && b.params.spaceBetween+'px'}).attr('data-swiper-column', f).attr('data-swiper-row', h);}"none" !== p.css('display') && ("auto" === b.params.slidesPerView ? (s = b.isHorizontal() ? p.outerWidth(!0):p.outerHeight(!0), b.params.roundLengths && (s = a(s))):(s = (b.size - (b.params.slidesPerView - 1) * t) / b.params.slidesPerView, b.params.roundLengths && (s = a(s)), b.isHorizontal() ? b.slides[e].style.width = s+'px':b.slides[e].style.height = s+'px'), b.slides[e].swiperSlideSize = s, b.slidesSizesGrid.push(s), b.params.centeredSlides ? (n = n + s / 2 + i / 2 + t, 0 === e && (n = n - b.size / 2 - t), Math.abs(n) < .001 && (n = 0), r % b.params.slidesPerGroup === 0 && b.snapGrid.push(n), b.slidesGrid.push(n)):(r % b.params.slidesPerGroup === 0 && b.snapGrid.push(n), b.slidesGrid.push(n), n = n + s + t), b.virtualSize += s + t, i = s, r++) }b.virtualSize = Math.max(b.virtualSize, b.size) + b.params.slidesOffsetAfter; var m; if (b.rtl && b.wrongRTL && ("slide" === b.params.effect || "coverflow" === b.params.effect) && b.wrapper.css({width: b.virtualSize + b.params.spaceBetween+'px'}), b.support.flexbox && !b.params.setWrapperSize || (b.isHorizontal() ? b.wrapper.css({width: b.virtualSize + b.params.spaceBetween+'px'}):b.wrapper.css({height: b.virtualSize + b.params.spaceBetween+'px'})), b.params.slidesPerColumn > 1 && (b.virtualSize = (s + b.params.spaceBetween) * o, b.virtualSize = Math.ceil(b.virtualSize / b.params.slidesPerColumn) - b.params.spaceBetween, b.wrapper.css({width: b.virtualSize + b.params.spaceBetween+'px'}), b.params.centeredSlides)) { for (m = [], e = 0; e < b.snapGrid.length; e++)b.snapGrid[e] < b.virtualSize + b.snapGrid[0] && m.push(b.snapGrid[e]); b.snapGrid = m } if (!b.params.centeredSlides) { for (m = [], e = 0; e < b.snapGrid.length; e++)b.snapGrid[e] <= b.virtualSize - b.size && m.push(b.snapGrid[e]); b.snapGrid = m, Math.floor(b.virtualSize - b.size) - Math.floor(b.snapGrid[b.snapGrid.length - 1]) > 1 && b.snapGrid.push(b.virtualSize - b.size) }0 === b.snapGrid.length && (b.snapGrid = [0]), 0 !== b.params.spaceBetween && (b.isHorizontal() ? b.rtl ? b.slides.css({marginLeft: t+'px'}):b.slides.css({marginRight: t+'px'}):b.slides.css({marginBottom: t+'px'})), b.params.watchSlidesProgress && b.updateSlidesOffset();} }, b.updateSlidesOffset = function() { for (var e = 0; e < b.slides.length; e++)b.slides[e].swiperSlideOffset = b.isHorizontal() ? b.slides[e].offsetLeft:b.slides[e].offsetTop }, b.updateSlidesProgress = function(e) { if ("undefined" == typeof e && (e = b.translate || 0), 0 !== b.slides.length) { "undefined" == typeof b.slides[0].swiperSlideOffset && b.updateSlidesOffset(); var t = -e; b.rtl && (t = e), b.slides.removeClass(b.params.slideVisibleClass); for (var n = 0; n < b.slides.length; n++) { var i = b.slides[n], r = (t - i.swiperSlideOffset) / (i.swiperSlideSize + b.params.spaceBetween); if (b.params.watchSlidesVisibility) { var a = -(t - i.swiperSlideOffset), o = a + b.slidesSizesGrid[n], s = a >= 0 && a < b.size || o > 0 && o <= b.size || 0 >= a && o >= b.size; s && b.slides.eq(n).addClass(b.params.slideVisibleClass) }i.progress = b.rtl ? -r:r } } }, b.updateProgress = function(e) { "undefined" == typeof e && (e = b.translate || 0); var t = b.maxTranslate() - b.minTranslate(), n = b.isBeginning, i = b.isEnd; 0 === t ? (b.progress = 0, b.isBeginning = b.isEnd = !0):(b.progress = (e - b.minTranslate()) / t, b.isBeginning = b.progress <= 0, b.isEnd = b.progress >= 1), b.isBeginning && !n && b.emit('onReachBeginning', b), b.isEnd && !i && b.emit('onReachEnd', b), b.params.watchSlidesProgress && b.updateSlidesProgress(e), b.emit('onProgress', b, b.progress) }, b.updateActiveIndex = function() { var e, t, n, i = b.rtl ? b.translate:-b.translate; for (t = 0; t < b.slidesGrid.length; t++)"undefined" != typeof b.slidesGrid[t + 1] ? i >= b.slidesGrid[t] && i < b.slidesGrid[t + 1] - (b.slidesGrid[t + 1] - b.slidesGrid[t]) / 2 ? e = t:i >= b.slidesGrid[t] && i < b.slidesGrid[t + 1] && (e = t + 1):i >= b.slidesGrid[t] && (e = t); (0 > e || "undefined" == typeof e) && (e = 0), n = Math.floor(e / b.params.slidesPerGroup), n >= b.snapGrid.length && (n = b.snapGrid.length - 1), e !== b.activeIndex && (b.snapIndex = n, b.previousIndex = b.activeIndex, b.activeIndex = e, b.updateClasses());}, b.updateClasses = function() { b.slides.removeClass(b.params.slideActiveClass + " " + b.params.slideNextClass + " " + b.params.slidePrevClass); var e = b.slides.eq(b.activeIndex); e.addClass(b.params.slideActiveClass); var n = e.next("." + b.params.slideClass).addClass(b.params.slideNextClass); b.params.loop && 0 === n.length && b.slides.eq(0).addClass(b.params.slideNextClass); var i = e.prev("." + b.params.slideClass).addClass(b.params.slidePrevClass); if (b.params.loop && 0 === i.length && b.slides.eq(-1).addClass(b.params.slidePrevClass), b.paginationContainer && b.paginationContainer.length > 0) { var r, a = b.params.loop ? Math.ceil((b.slides.length - 2 * b.loopedSlides) / b.params.slidesPerGroup):b.snapGrid.length; if (b.params.loop ? (r = Math.ceil((b.activeIndex - b.loopedSlides) / b.params.slidesPerGroup), r > b.slides.length - 1 - 2 * b.loopedSlides && (r -= b.slides.length - 2 * b.loopedSlides), r > a - 1 && (r -= a), 0 > r && "bullets" !== b.params.paginationType && (r = a + r)):r = "undefined" != typeof b.snapIndex ? b.snapIndex:b.activeIndex || 0, "bullets" === b.params.paginationType && b.bullets && b.bullets.length > 0 && (b.bullets.removeClass(b.params.bulletActiveClass), b.paginationContainer.length > 1 ? b.bullets.each(function() { t(this).index() === r && t(this).addClass(b.params.bulletActiveClass);}):b.bullets.eq(r).addClass(b.params.bulletActiveClass)), "fraction" === b.params.paginationType && (b.paginationContainer.find("." + b.params.paginationCurrentClass).text(r + 1), b.paginationContainer.find("." + b.params.paginationTotalClass).text(a)), "progress" === b.params.paginationType) { var o = (r + 1) / a, s = o, l = 1; b.isHorizontal() || (l = o, s = 1), b.paginationContainer.find("." + b.params.paginationProgressbarClass).transform("translate3d(0,0,0) scaleX(" + s + ") scaleY(" + l+')').transition(b.params.speed);}"custom" === b.params.paginationType && b.params.paginationCustomRender && (b.paginationContainer.html(b.params.paginationCustomRender(b, r + 1, a)), b.emit('onPaginationRendered', b, b.paginationContainer[0])) }b.params.loop || (b.params.prevButton && b.prevButton && b.prevButton.length > 0 && (b.isBeginning ? (b.prevButton.addClass(b.params.buttonDisabledClass), b.params.a11y && b.a11y && b.a11y.disable(b.prevButton)):(b.prevButton.removeClass(b.params.buttonDisabledClass), b.params.a11y && b.a11y && b.a11y.enable(b.prevButton))), b.params.nextButton && b.nextButton && b.nextButton.length > 0 && (b.isEnd ? (b.nextButton.addClass(b.params.buttonDisabledClass), b.params.a11y && b.a11y && b.a11y.disable(b.nextButton)):(b.nextButton.removeClass(b.params.buttonDisabledClass), b.params.a11y && b.a11y && b.a11y.enable(b.nextButton))));}, b.updatePagination = function() { if (b.params.pagination && b.paginationContainer && b.paginationContainer.length > 0) { var e=''; if ("bullets" === b.params.paginationType) { for (var t = b.params.loop ? Math.ceil((b.slides.length - 2 * b.loopedSlides) / b.params.slidesPerGroup):b.snapGrid.length, n = 0; t > n; n++)e += b.params.paginationBulletRender ? b.params.paginationBulletRender(n, b.params.bulletClass):"<" + b.params.paginationElement + ' class="' + b.params.bulletClass + '"></' + b.params.paginationElement+'>'; b.paginationContainer.html(e), b.bullets = b.paginationContainer.find("." + b.params.bulletClass), b.params.paginationClickable && b.params.a11y && b.a11y && b.a11y.initPagination();}"fraction" === b.params.paginationType && (e = b.params.paginationFractionRender ? b.params.paginationFractionRender(b, b.params.paginationCurrentClass, b.params.paginationTotalClass):'<span class="' + b.params.paginationCurrentClass + '"></span> / <span class="' + b.params.paginationTotalClass + '"></span>', b.paginationContainer.html(e)), "progress" === b.params.paginationType && (e = b.params.paginationProgressRender ? b.params.paginationProgressRender(b, b.params.paginationProgressbarClass):'<span class="' + b.params.paginationProgressbarClass + '"></span>', b.paginationContainer.html(e)), "custom" !== b.params.paginationType && b.emit('onPaginationRendered', b, b.paginationContainer[0]);} }, b.update = function(e) { function t() { i = Math.min(Math.max(b.translate, b.maxTranslate()), b.minTranslate()), b.setWrapperTranslate(i), b.updateActiveIndex(), b.updateClasses() } if (b.updateContainerSize(), b.updateSlidesSize(), b.updateProgress(), b.updatePagination(), b.updateClasses(), b.params.scrollbar && b.scrollbar && b.scrollbar.set(), e) { var n, i; b.controller && b.controller.spline && (b.controller.spline = void 0), b.params.freeMode ? (t(), b.params.autoHeight && b.updateAutoHeight()):(n = ("auto" === b.params.slidesPerView || b.params.slidesPerView > 1) && b.isEnd && !b.params.centeredSlides ? b.slideTo(b.slides.length - 1, 0, !1, !0):b.slideTo(b.activeIndex, 0, !1, !0), n || t()) } else b.params.autoHeight && b.updateAutoHeight();}, b.onResize = function(e) { b.params.breakpoints && b.setBreakpoint(); var t = b.params.allowSwipeToPrev, n = b.params.allowSwipeToNext; b.params.allowSwipeToPrev = b.params.allowSwipeToNext = !0, b.updateContainerSize(), b.updateSlidesSize(), ("auto" === b.params.slidesPerView || b.params.freeMode || e) && b.updatePagination(), b.params.scrollbar && b.scrollbar && b.scrollbar.set(), b.controller && b.controller.spline && (b.controller.spline = void 0); var i = !1; if (b.params.freeMode) { var r = Math.min(Math.max(b.translate, b.maxTranslate()), b.minTranslate()); b.setWrapperTranslate(r), b.updateActiveIndex(), b.updateClasses(), b.params.autoHeight && b.updateAutoHeight();} else b.updateClasses(), i = ("auto" === b.params.slidesPerView || b.params.slidesPerView > 1) && b.isEnd && !b.params.centeredSlides ? b.slideTo(b.slides.length - 1, 0, !1, !0):b.slideTo(b.activeIndex, 0, !1, !0); b.params.lazyLoading && !i && b.lazy && b.lazy.load(), b.params.allowSwipeToPrev = t, b.params.allowSwipeToNext = n;}; var T = ['mousedown','mousemove','mouseup']; window.navigator.pointerEnabled ? T = ['pointerdown','pointermove','pointerup']:window.navigator.msPointerEnabled && (T = ['MSPointerDown','MSPointerMove','MSPointerUp']), b.touchEvents = {start: b.support.touch || !b.params.simulateTouch?'touchstart':T[0], move: b.support.touch || !b.params.simulateTouch?'touchmove':T[1], end: b.support.touch || !b.params.simulateTouch?'touchend':T[2]}, (window.navigator.pointerEnabled || window.navigator.msPointerEnabled) && ("container" === b.params.touchEventsTarget ? b.container:b.wrapper).addClass("swiper-wp8-" + b.params.direction), b.initEvents = function(e) { var t = e?'off':'on', n = e?'removeEventListener':'addEventListener', i = "container" === b.params.touchEventsTarget ? b.container[0]:b.wrapper[0], a = b.support.touch ? i:document, o = !!b.params.nested; b.browser.ie ? (i[n](b.touchEvents.start, b.onTouchStart, !1),
a[n](b.touchEvents.move, b.onTouchMove, o), a[n](b.touchEvents.end, b.onTouchEnd, !1)):(b.support.touch && (i[n](b.touchEvents.start, b.onTouchStart, !1), i[n](b.touchEvents.move, b.onTouchMove, o), i[n](b.touchEvents.end, b.onTouchEnd, !1)), !r.simulateTouch || b.device.ios || b.device.android || (i[n]('mousedown', b.onTouchStart, !1), document[n]('mousemove', b.onTouchMove, o), document[n]('mouseup', b.onTouchEnd, !1))), window[n]('resize', b.onResize), b.params.nextButton && b.nextButton && b.nextButton.length > 0 && (b.nextButton[t]('click', b.onClickNext), b.params.a11y && b.a11y && b.nextButton[t]('keydown', b.a11y.onEnterKey)), b.params.prevButton && b.prevButton && b.prevButton.length > 0 && (b.prevButton[t]('click', b.onClickPrev), b.params.a11y && b.a11y && b.prevButton[t]('keydown', b.a11y.onEnterKey)), b.params.pagination && b.params.paginationClickable && (b.paginationContainer[t]('click', "." + b.params.bulletClass, b.onClickIndex), b.params.a11y && b.a11y && b.paginationContainer[t]('keydown', "." + b.params.bulletClass, b.a11y.onEnterKey)), (b.params.preventClicks || b.params.preventClicksPropagation) && i[n]('click', b.preventClicks, !0);}, b.attachEvents = function() { b.initEvents() }, b.detachEvents = function() { b.initEvents(!0);}, b.allowClick = !0, b.preventClicks = function(e) { b.allowClick || (b.params.preventClicks && e.preventDefault(), b.params.preventClicksPropagation && b.animating && (e.stopPropagation(), e.stopImmediatePropagation())) }, b.onClickNext = function(e) { e.preventDefault(), b.isEnd && !b.params.loop || b.slideNext();}, b.onClickPrev = function(e) { e.preventDefault(), b.isBeginning && !b.params.loop || b.slidePrev() }, b.onClickIndex = function(e) { e.preventDefault(); var n = t(this).index() * b.params.slidesPerGroup; b.params.loop && (n += b.loopedSlides), b.slideTo(n);}, b.updateClickedSlide = function(e) { var n = s(e, "." + b.params.slideClass), i = !1; if (n) for (var r = 0; r < b.slides.length; r++)b.slides[r] === n && (i = !0); if (!n || !i) return b.clickedSlide = void 0, void(b.clickedIndex = void 0); if (b.clickedSlide = n, b.clickedIndex = t(n).index(), b.params.slideToClickedSlide && void 0 !== b.clickedIndex && b.clickedIndex !== b.activeIndex) { var a, o = b.clickedIndex; if (b.params.loop) { if (b.animating) return; a = t(b.clickedSlide).attr('data-swiper-slide-index'), b.params.centeredSlides ? o < b.loopedSlides - b.params.slidesPerView / 2 || o > b.slides.length - b.loopedSlides + b.params.slidesPerView / 2 ? (b.fixLoop(), o = b.wrapper.children("." + b.params.slideClass + '[data-swiper-slide-index="' + a + '"]:not(.swiper-slide-duplicate)').eq(0).index(), setTimeout(function() { b.slideTo(o) }, 0)):b.slideTo(o):o > b.slides.length - b.params.slidesPerView ? (b.fixLoop(), o = b.wrapper.children("." + b.params.slideClass + '[data-swiper-slide-index="' + a + '"]:not(.swiper-slide-duplicate)').eq(0).index(), setTimeout(function() { b.slideTo(o);}, 0)):b.slideTo(o);} else b.slideTo(o) } }; var C, S, E, k, A, M, P, D, z, L, N='input, select, textarea, button', I = Date.now(), O = []; b.animating = !1, b.touches = {startX: 0, startY: 0, currentX: 0, currentY: 0, diff: 0}; var H, B; if (b.onTouchStart = function(e) { if (e.originalEvent && (e = e.originalEvent), H = "touchstart" === e.type, H || !('which'in e) || 3 !== e.which) { if (b.params.noSwiping && s(e, "." + b.params.noSwipingClass)) return void(b.allowClick = !0); if (!b.params.swipeHandler || s(e, b.params.swipeHandler)) { var n = b.touches.currentX = "touchstart" === e.type ? e.targetTouches[0].pageX:e.pageX, i = b.touches.currentY = "touchstart" === e.type ? e.targetTouches[0].pageY:e.pageY; if (!(b.device.ios && b.params.iOSEdgeSwipeDetection && n <= b.params.iOSEdgeSwipeThreshold)) { if (C = !0, S = !1, E = !0, A = void 0, B = void 0, b.touches.startX = n, b.touches.startY = i, k = Date.now(), b.allowClick = !0, b.updateContainerSize(), b.swipeDirection = void 0, b.params.threshold > 0 && (D = !1), "touchstart" !== e.type) { var r = !0; t(e.target).is(N) && (r = !1), document.activeElement && t(document.activeElement).is(N) && document.activeElement.blur(), r && e.preventDefault() }b.emit('onTouchStart', b, e);} } } }, b.onTouchMove = function(e) { if (e.originalEvent && (e = e.originalEvent), !H || "mousemove" !== e.type) { if (e.preventedByNestedSwiper) return b.touches.startX = "touchmove" === e.type ? e.targetTouches[0].pageX:e.pageX, void(b.touches.startY = "touchmove" === e.type ? e.targetTouches[0].pageY:e.pageY); if (b.params.onlyExternal) return b.allowClick = !1, void(C && (b.touches.startX = b.touches.currentX = "touchmove" === e.type ? e.targetTouches[0].pageX:e.pageX, b.touches.startY = b.touches.currentY = "touchmove" === e.type ? e.targetTouches[0].pageY:e.pageY, k = Date.now())); if (H && document.activeElement && e.target === document.activeElement && t(e.target).is(N)) return S = !0, void(b.allowClick = !1); if (E && b.emit('onTouchMove', b, e), !(e.targetTouches && e.targetTouches.length > 1)) { if (b.touches.currentX = "touchmove" === e.type ? e.targetTouches[0].pageX:e.pageX, b.touches.currentY = "touchmove" === e.type ? e.targetTouches[0].pageY:e.pageY, "undefined" == typeof A) { var n = 180 * Math.atan2(Math.abs(b.touches.currentY - b.touches.startY), Math.abs(b.touches.currentX - b.touches.startX)) / Math.PI; A = b.isHorizontal() ? n > b.params.touchAngle:90 - n > b.params.touchAngle } if (A && b.emit('onTouchMoveOpposite', b, e), "undefined" == typeof B && b.browser.ieTouch && (b.touches.currentX === b.touches.startX && b.touches.currentY === b.touches.startY || (B = !0)), C) { if (A) return void(C = !1); if (B || !b.browser.ieTouch) { b.allowClick = !1, b.emit('onSliderMove', b, e), e.preventDefault(), b.params.touchMoveStopPropagation && !b.params.nested && e.stopPropagation(), S || (r.loop && b.fixLoop(), P = b.getWrapperTranslate(), b.setWrapperTransition(0), b.animating && b.wrapper.trigger('webkitTransitionEnd transitionend oTransitionEnd MSTransitionEnd msTransitionEnd'), b.params.autoplay && b.autoplaying && (b.params.autoplayDisableOnInteraction ? b.stopAutoplay():b.pauseAutoplay()), L = !1, b.params.grabCursor && (b.container[0].style.cursor='move', b.container[0].style.cursor='-webkit-grabbing', b.container[0].style.cursor='-moz-grabbin', b.container[0].style.cursor='grabbing')), S = !0; var i = b.touches.diff = b.isHorizontal() ? b.touches.currentX - b.touches.startX:b.touches.currentY - b.touches.startY; i *= b.params.touchRatio, b.rtl && (i = -i), b.swipeDirection = i > 0?'prev':'next', M = i + P; var a = !0; if (i > 0 && M > b.minTranslate() ? (a = !1, b.params.resistance && (M = b.minTranslate() - 1 + Math.pow(-b.minTranslate() + P + i, b.params.resistanceRatio))):0 > i && M < b.maxTranslate() && (a = !1, b.params.resistance && (M = b.maxTranslate() + 1 - Math.pow(b.maxTranslate() - P - i, b.params.resistanceRatio))), a && (e.preventedByNestedSwiper = !0), !b.params.allowSwipeToNext && "next" === b.swipeDirection && P > M && (M = P), !b.params.allowSwipeToPrev && "prev" === b.swipeDirection && M > P && (M = P), b.params.followFinger) { if (b.params.threshold > 0) { if (!(Math.abs(i) > b.params.threshold || D)) return void(M = P); if (!D) return D = !0, b.touches.startX = b.touches.currentX, b.touches.startY = b.touches.currentY, M = P, void(b.touches.diff = b.isHorizontal() ? b.touches.currentX - b.touches.startX:b.touches.currentY - b.touches.startY) }(b.params.freeMode || b.params.watchSlidesProgress) && b.updateActiveIndex(), b.params.freeMode && (0 === O.length && O.push({position: b.touches[b.isHorizontal()?'startX':'startY'], time: k}), O.push({position: b.touches[b.isHorizontal()?'currentX':'currentY'], time: (new window.Date).getTime()})), b.updateProgress(M), b.setWrapperTranslate(M);} } } } } }, b.onTouchEnd = function(e) { if (e.originalEvent && (e = e.originalEvent), E && b.emit('onTouchEnd', b, e), E = !1, C) { b.params.grabCursor && S && C && (b.container[0].style.cursor='move', b.container[0].style.cursor='-webkit-grab', b.container[0].style.cursor='-moz-grab', b.container[0].style.cursor='grab'); var n = Date.now(), i = n - k; if (b.allowClick && (b.updateClickedSlide(e), b.emit('onTap', b, e), 300 > i && n - I > 300 && (z && clearTimeout(z), z = setTimeout(function() { b && (b.params.paginationHide && b.paginationContainer.length > 0 && !t(e.target).hasClass(b.params.bulletClass) && b.paginationContainer.toggleClass(b.params.paginationHiddenClass), b.emit('onClick', b, e)) }, 300)), 300 > i && 300 > n - I && (z && clearTimeout(z), b.emit('onDoubleTap', b, e))), I = Date.now(), setTimeout(function() { b && (b.allowClick = !0) }, 0), !C || !S || !b.swipeDirection || 0 === b.touches.diff || M === P) return void(C = S = !1); C = S = !1; var r; if (r = b.params.followFinger ? b.rtl ? b.translate:-b.translate:-M, b.params.freeMode) { if (r < -b.minTranslate()) return void b.slideTo(b.activeIndex); if (r > -b.maxTranslate()) return void(b.slides.length < b.snapGrid.length ? b.slideTo(b.snapGrid.length - 1):b.slideTo(b.slides.length - 1)); if (b.params.freeModeMomentum) { if (O.length > 1) { var a = O.pop(), o = O.pop(), s = a.position - o.position, l = a.time - o.time; b.velocity = s / l, b.velocity = b.velocity / 2, Math.abs(b.velocity) < b.params.freeModeMinimumVelocity && (b.velocity = 0), (l > 150 || (new window.Date).getTime() - a.time > 300) && (b.velocity = 0);} else b.velocity = 0; O.length = 0; var u = 1e3 * b.params.freeModeMomentumRatio, c = b.velocity * u, p = b.translate + c; b.rtl && (p = -p); var d, f = !1, h = 20 * Math.abs(b.velocity) * b.params.freeModeMomentumBounceRatio; if (p < b.maxTranslate())b.params.freeModeMomentumBounce ? (p + b.maxTranslate() < -h && (p = b.maxTranslate() - h), d = b.maxTranslate(), f = !0, L = !0):p = b.maxTranslate(); else if (p > b.minTranslate())b.params.freeModeMomentumBounce ? (p - b.minTranslate() > h && (p = b.minTranslate() + h), d = b.minTranslate(), f = !0, L = !0):p = b.minTranslate(); else if (b.params.freeModeSticky) { var m, g = 0; for (g = 0; g < b.snapGrid.length; g += 1) if (b.snapGrid[g] > -p) { m = g; break }p = Math.abs(b.snapGrid[m] - p) < Math.abs(b.snapGrid[m - 1] - p) || "next" === b.swipeDirection ? b.snapGrid[m]:b.snapGrid[m - 1], b.rtl || (p = -p) } if (0 !== b.velocity)u = b.rtl ? Math.abs((-p - b.translate) / b.velocity):Math.abs((p - b.translate) / b.velocity); else if (b.params.freeModeSticky) return void b.slideReset(); b.params.freeModeMomentumBounce && f ? (b.updateProgress(d), b.setWrapperTransition(u), b.setWrapperTranslate(p), b.onTransitionStart(), b.animating = !0, b.wrapper.transitionEnd(function() { b && L && (b.emit('onMomentumBounce', b), b.setWrapperTransition(b.params.speed), b.setWrapperTranslate(d), b.wrapper.transitionEnd(function() { b && b.onTransitionEnd() })) })):b.velocity ? (b.updateProgress(p), b.setWrapperTransition(u), b.setWrapperTranslate(p), b.onTransitionStart(), b.animating || (b.animating = !0, b.wrapper.transitionEnd(function() { b && b.onTransitionEnd() }))):b.updateProgress(p), b.updateActiveIndex() } return void((!b.params.freeModeMomentum || i >= b.params.longSwipesMs) && (b.updateProgress(), b.updateActiveIndex())) } var v, y = 0, w = b.slidesSizesGrid[0]; for (v = 0; v < b.slidesGrid.length; v += b.params.slidesPerGroup)"undefined" != typeof b.slidesGrid[v + b.params.slidesPerGroup] ? r >= b.slidesGrid[v] && r < b.slidesGrid[v + b.params.slidesPerGroup] && (y = v, w = b.slidesGrid[v + b.params.slidesPerGroup] - b.slidesGrid[v]):r >= b.slidesGrid[v] && (y = v, w = b.slidesGrid[b.slidesGrid.length - 1] - b.slidesGrid[b.slidesGrid.length - 2]); var x = (r - b.slidesGrid[y]) / w; if (i > b.params.longSwipesMs) { if (!b.params.longSwipes) return void b.slideTo(b.activeIndex); "next" === b.swipeDirection && (x >= b.params.longSwipesRatio ? b.slideTo(y + b.params.slidesPerGroup):b.slideTo(y)), "prev" === b.swipeDirection && (x > 1 - b.params.longSwipesRatio ? b.slideTo(y + b.params.slidesPerGroup):b.slideTo(y)) } else { if (!b.params.shortSwipes) return void b.slideTo(b.activeIndex); "next" === b.swipeDirection && b.slideTo(y + b.params.slidesPerGroup), "prev" === b.swipeDirection && b.slideTo(y);} } }, b._slideTo = function(e, t) { return b.slideTo(e, t, !0, !0);}, b.slideTo = function(e, t, n, i) { "undefined" == typeof n && (n = !0), "undefined" == typeof e && (e = 0), 0 > e && (e = 0), b.snapIndex = Math.floor(e / b.params.slidesPerGroup), b.snapIndex >= b.snapGrid.length && (b.snapIndex = b.snapGrid.length - 1); var r = -b.snapGrid[b.snapIndex]; b.params.autoplay && b.autoplaying && (i || !b.params.autoplayDisableOnInteraction ? b.pauseAutoplay(t):b.stopAutoplay()), b.updateProgress(r); for (var a = 0; a < b.slidesGrid.length; a++)-Math.floor(100 * r) >= Math.floor(100 * b.slidesGrid[a]) && (e = a); return !b.params.allowSwipeToNext && r < b.translate && r < b.minTranslate() ? !1:!b.params.allowSwipeToPrev && r > b.translate && r > b.maxTranslate() && (b.activeIndex || 0) !== e ? !1:("undefined" == typeof t && (t = b.params.speed), b.previousIndex = b.activeIndex || 0, b.activeIndex = e, b.rtl && -r === b.translate || !b.rtl && r === b.translate ? (b.params.autoHeight && b.updateAutoHeight(), b.updateClasses(), "slide" !== b.params.effect && b.setWrapperTranslate(r), !1):(b.updateClasses(), b.onTransitionStart(n), 0 === t ? (b.setWrapperTranslate(r), b.setWrapperTransition(0), b.onTransitionEnd(n)):(b.setWrapperTranslate(r), b.setWrapperTransition(t), b.animating || (b.animating = !0, b.wrapper.transitionEnd(function() { b && b.onTransitionEnd(n);}))), !0));}, b.onTransitionStart = function(e) { "undefined" == typeof e && (e = !0), b.params.autoHeight && b.updateAutoHeight(), b.lazy && b.lazy.onTransitionStart(), e && (b.emit('onTransitionStart', b), b.activeIndex !== b.previousIndex && (b.emit('onSlideChangeStart', b), b.activeIndex > b.previousIndex ? b.emit('onSlideNextStart', b):b.emit('onSlidePrevStart', b)));}, b.onTransitionEnd = function(e) { b.animating = !1, b.setWrapperTransition(0), "undefined" == typeof e && (e = !0), b.lazy && b.lazy.onTransitionEnd(), e && (b.emit('onTransitionEnd', b), b.activeIndex !== b.previousIndex && (b.emit('onSlideChangeEnd', b), b.activeIndex > b.previousIndex ? b.emit('onSlideNextEnd', b):b.emit('onSlidePrevEnd', b))), b.params.hashnav && b.hashnav && b.hashnav.setHash();}, b.slideNext = function(e, t, n) { if (b.params.loop) { if (b.animating) return !1; b.fixLoop(); b.container[0].clientLeft; return b.slideTo(b.activeIndex + b.params.slidesPerGroup, t, e, n) } return b.slideTo(b.activeIndex + b.params.slidesPerGroup, t, e, n);}, b._slideNext = function(e) { return b.slideNext(!0, e, !0) }, b.slidePrev = function(e, t, n) { if (b.params.loop) { if (b.animating) return !1; b.fixLoop(); b.container[0].clientLeft; return b.slideTo(b.activeIndex - 1, t, e, n) } return b.slideTo(b.activeIndex - 1, t, e, n) }, b._slidePrev = function(e) { return b.slidePrev(!0, e, !0) }, b.slideReset = function(e, t, n) { return b.slideTo(b.activeIndex, t, e) }, b.setWrapperTransition = function(e, t) { b.wrapper.transition(e), "slide" !== b.params.effect && b.effects[b.params.effect] && b.effects[b.params.effect].setTransition(e), b.params.parallax && b.parallax && b.parallax.setTransition(e), b.params.scrollbar && b.scrollbar && b.scrollbar.setTransition(e), b.params.control && b.controller && b.controller.setTransition(e, t), b.emit('onSetTransition', b, e) }, b.setWrapperTranslate = function(e, t, n) { var i = 0, r = 0, o = 0; b.isHorizontal() ? i = b.rtl ? -e:e:r = e, b.params.roundLengths && (i = a(i), r = a(r)), b.params.virtualTranslate || (b.support.transforms3d ? b.wrapper.transform("translate3d(" + i + "px, " + r + "px, " + o+'px)'):b.wrapper.transform("translate(" + i + "px, " + r+'px)')), b.translate = b.isHorizontal() ? i:r; var s, l = b.maxTranslate() - b.minTranslate(); s = 0 === l ? 0:(e - b.minTranslate()) / l, s !== b.progress && b.updateProgress(e), t && b.updateActiveIndex(), "slide" !== b.params.effect && b.effects[b.params.effect] && b.effects[b.params.effect].setTranslate(b.translate), b.params.parallax && b.parallax && b.parallax.setTranslate(b.translate), b.params.scrollbar && b.scrollbar && b.scrollbar.setTranslate(b.translate), b.params.control && b.controller && b.controller.setTranslate(b.translate, n), b.emit('onSetTranslate', b, b.translate);}, b.getTranslate = function(e, t) { var n, i, r, a; return "undefined" == typeof t && (t='x'), b.params.virtualTranslate ? b.rtl ? -b.translate:b.translate:(r = window.getComputedStyle(e, null), window.WebKitCSSMatrix ? (i = r.transform || r.webkitTransform, i.split(',').length > 6 && (i = i.split(', ').map(function(e) { return e.replace(',','.');}).join(', ')), a = new window.WebKitCSSMatrix("none" === i?'':i)):(a = r.MozTransform || r.OTransform || r.MsTransform || r.msTransform || r.transform || r.getPropertyValue('transform').replace('translate(','matrix(1, 0, 0, 1,'), n = a.toString().split(',')), "x" === t && (i = window.WebKitCSSMatrix ? a.m41:16 === n.length ? parseFloat(n[12]):parseFloat(n[4])), "y" === t && (i = window.WebKitCSSMatrix ? a.m42:16 === n.length ? parseFloat(n[13]):parseFloat(n[5])), b.rtl && i && (i = -i), i || 0);}, b.getWrapperTranslate = function(e) { return "undefined" == typeof e && (e = b.isHorizontal()?'x':'y'), b.getTranslate(b.wrapper[0], e) }, b.observers = [], b.initObservers = function() { if (b.params.observeParents) for (var e = b.container.parents(), t = 0; t < e.length; t++)l(e[t]); l(b.container[0], {childList: !1}), l(b.wrapper[0], {attributes: !1});}, b.disconnectObservers = function() { for (var e = 0; e < b.observers.length; e++)b.observers[e].disconnect(); b.observers = [];}, b.createLoop = function() { b.wrapper.children("." + b.params.slideClass + "." + b.params.slideDuplicateClass).remove(); var e = b.wrapper.children("." + b.params.slideClass); "auto" !== b.params.slidesPerView || b.params.loopedSlides || (b.params.loopedSlides = e.length), b.loopedSlides = parseInt(b.params.loopedSlides || b.params.slidesPerView, 10), b.loopedSlides = b.loopedSlides + b.params.loopAdditionalSlides, b.loopedSlides > e.length && (b.loopedSlides = e.length); var n, i = [], r = []; for (e.each(function(n, a) { var o = t(this); n < b.loopedSlides && r.push(a), n < e.length && n >= e.length - b.loopedSlides && i.push(a), o.attr('data-swiper-slide-index', n);}), n = 0; n < r.length; n++)b.wrapper.append(t(r[n].cloneNode(!0)).addClass(b.params.slideDuplicateClass)); for (n = i.length - 1; n >= 0; n--)b.wrapper.prepend(t(i[n].cloneNode(!0)).addClass(b.params.slideDuplicateClass)) }, b.destroyLoop = function() { b.wrapper.children("." + b.params.slideClass + "." + b.params.slideDuplicateClass).remove(), b.slides.removeAttr('data-swiper-slide-index');}, b.reLoop = function(e) { var t = b.activeIndex - b.loopedSlides; b.destroyLoop(), b.createLoop(), b.updateSlidesSize(), e && b.slideTo(t + b.loopedSlides, 0, !1) }, b.fixLoop = function() { var e; b.activeIndex < b.loopedSlides ? (e = b.slides.length - 3 * b.loopedSlides + b.activeIndex, e += b.loopedSlides, b.slideTo(e, 0, !1, !0)):("auto" === b.params.slidesPerView && b.activeIndex >= 2 * b.loopedSlides || b.activeIndex > b.slides.length - 2 * b.params.slidesPerView) && (e = -b.slides.length + b.activeIndex + b.loopedSlides, e += b.loopedSlides, b.slideTo(e, 0, !1, !0)) }, b.appendSlide = function(e) { if (b.params.loop && b.destroyLoop(), "object" == typeof e && e.length) for (var t = 0; t < e.length; t++)e[t] && b.wrapper.append(e[t]); else b.wrapper.append(e); b.params.loop && b.createLoop(), b.params.observer && b.support.observer || b.update(!0) }, b.prependSlide = function(e) { b.params.loop && b.destroyLoop(); var t = b.activeIndex + 1; if ("object" == typeof e && e.length) { for (var n = 0; n < e.length; n++)e[n] && b.wrapper.prepend(e[n]); t = b.activeIndex + e.length;} else b.wrapper.prepend(e); b.params.loop && b.createLoop(), b.params.observer && b.support.observer || b.update(!0), b.slideTo(t, 0, !1);}, b.removeSlide = function(e) { b.params.loop && (b.destroyLoop(), b.slides = b.wrapper.children("." + b.params.slideClass)); var t, n = b.activeIndex; if ("object" == typeof e && e.length) { for (var i = 0; i < e.length; i++)t = e[i], b.slides[t] && b.slides.eq(t).remove(), n > t && n--; n = Math.max(n, 0) } else t = e, b.slides[t] && b.slides.eq(t).remove(), n > t && n--, n = Math.max(n, 0); b.params.loop && b.createLoop(), b.params.observer && b.support.observer || b.update(!0), b.params.loop ? b.slideTo(n + b.loopedSlides, 0, !1):b.slideTo(n, 0, !1) }, b.removeAllSlides = function() { for (var e = [], t = 0; t < b.slides.length; t++)e.push(t); b.removeSlide(e) }, b.effects = {fade: {setTranslate: function() { for (var e = 0; e < b.slides.length; e++) { var t = b.slides.eq(e), n = t[0].swiperSlideOffset, i = -n; b.params.virtualTranslate || (i -= b.translate); var r = 0; b.isHorizontal() || (r = i, i = 0); var a = b.params.fade.crossFade ? Math.max(1 - Math.abs(t[0].progress), 0):1 + Math.min(Math.max(t[0].progress, -1), 0); t.css({opacity: a}).transform("translate3d(" + i + "px, " + r+'px, 0px)') } }, setTransition: function(e) { if (b.slides.transition(e), b.params.virtualTranslate && 0 !== e) { var t = !1; b.slides.transitionEnd(function() { if (!t && b) { t = !0, b.animating = !1; for (var e = ['webkitTransitionEnd','transitionend','oTransitionEnd','MSTransitionEnd','msTransitionEnd'], n = 0; n < e.length; n++)b.wrapper.trigger(e[n]);} });} }}, flip: {setTranslate: function() { for (var e = 0; e < b.slides.length; e++) { var n = b.slides.eq(e), i = n[0].progress; b.params.flip.limitRotation && (i = Math.max(Math.min(n[0].progress, 1), -1)); var r = n[0].swiperSlideOffset, a = -180 * i, o = a, s = 0, l = -r, u = 0; if (b.isHorizontal() ? b.rtl && (o = -o):(u = l, l = 0, s = -o, o = 0), n[0].style.zIndex = -Math.abs(Math.round(i)) + b.slides.length, b.params.flip.slideShadows) { var c = b.isHorizontal() ? n.find('.swiper-slide-shadow-left'):n.find('.swiper-slide-shadow-top'), p = b.isHorizontal() ? n.find('.swiper-slide-shadow-right'):n.find('.swiper-slide-shadow-bottom'); 0 === c.length && (c = t('<div class="swiper-slide-shadow-' + (b.isHorizontal()?'left':'top') + '"></div>'), n.append(c)), 0 === p.length && (p = t('<div class="swiper-slide-shadow-' + (b.isHorizontal()?'right':'bottom') + '"></div>'), n.append(p)), c.length && (c[0].style.opacity = Math.max(-i, 0)), p.length && (p[0].style.opacity = Math.max(i, 0)) }n.transform("translate3d(" + l + "px, " + u + "px, 0px) rotateX(" + s + "deg) rotateY(" + o+'deg)') } }, setTransition: function(e) { if (b.slides.transition(e).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(e), b.params.virtualTranslate && 0 !== e) { var n = !1; b.slides.eq(b.activeIndex).transitionEnd(function() { if (!n && b && t(this).hasClass(b.params.slideActiveClass)) { n = !0, b.animating = !1; for (var e = ['webkitTransitionEnd','transitionend','oTransitionEnd','MSTransitionEnd','msTransitionEnd'], i = 0; i < e.length; i++)b.wrapper.trigger(e[i]) } });} }}, cube: {setTranslate: function() { var e, n = 0; b.params.cube.shadow && (b.isHorizontal() ? (e = b.wrapper.find('.swiper-cube-shadow'), 0 === e.length && (e = t('<div class="swiper-cube-shadow"></div>'), b.wrapper.append(e)), e.css({height: b.width+'px'})):(e = b.container.find('.swiper-cube-shadow'), 0 === e.length && (e = t('<div class="swiper-cube-shadow"></div>'), b.container.append(e)))); for (var i = 0; i < b.slides.length; i++) { var r = b.slides.eq(i), a = 90 * i, o = Math.floor(a / 360); b.rtl && (a = -a, o = Math.floor(-a / 360)); var s = Math.max(Math.min(r[0].progress, 1), -1), l = 0, u = 0, c = 0; i % 4 === 0 ? (l = 4 * -o * b.size, c = 0):(i - 1) % 4 === 0 ? (l = 0, c = 4 * -o * b.size):(i - 2) % 4 === 0 ? (l = b.size + 4 * o * b.size, c = b.size):(i - 3) % 4 === 0 && (l = -b.size, c = 3 * b.size + 4 * b.size * o), b.rtl && (l = -l), b.isHorizontal() || (u = l, l = 0); var p = "rotateX(" + (b.isHorizontal() ? 0:-a) + "deg) rotateY(" + (b.isHorizontal() ? a:0) + "deg) translate3d(" + l + "px, " + u + "px, " + c+'px)'; if (1 >= s && s > -1 && (n = 90 * i + 90 * s, b.rtl && (n = 90 * -i - 90 * s)), r.transform(p), b.params.cube.slideShadows) { var d = b.isHorizontal() ? r.find('.swiper-slide-shadow-left'):r.find('.swiper-slide-shadow-top'), f = b.isHorizontal() ? r.find('.swiper-slide-shadow-right'):r.find('.swiper-slide-shadow-bottom'); 0 === d.length && (d = t('<div class="swiper-slide-shadow-' + (b.isHorizontal()?'left':'top') + '"></div>'), r.append(d)), 0 === f.length && (f = t('<div class="swiper-slide-shadow-' + (b.isHorizontal()?'right':'bottom') + '"></div>'), r.append(f)), d.length && (d[0].style.opacity = Math.max(-s, 0)), f.length && (f[0].style.opacity = Math.max(s, 0)) } } if (b.wrapper.css({'-webkit-transform-origin': "50% 50% -" + b.size / 2+'px','-moz-transform-origin': "50% 50% -" + b.size / 2+'px','-ms-transform-origin': "50% 50% -" + b.size / 2+'px','transform-origin': "50% 50% -" + b.size / 2+'px'}), b.params.cube.shadow) if (b.isHorizontal())e.transform("translate3d(0px, " + (b.width / 2 + b.params.cube.shadowOffset) + "px, " + -b.width / 2 + "px) rotateX(90deg) rotateZ(0deg) scale(" + b.params.cube.shadowScale+')'); else { var h = Math.abs(n) - 90 * Math.floor(Math.abs(n) / 90), m = 1.5 - (Math.sin(2 * h * Math.PI / 360) / 2 + Math.cos(2 * h * Math.PI / 360) / 2), g = b.params.cube.shadowScale, v = b.params.cube.shadowScale / m, y = b.params.cube.shadowOffset; e.transform("scale3d(" + g + ", 1, " + v + ") translate3d(0px, " + (b.height / 2 + y) + "px, " + -b.height / 2 / v+'px) rotateX(-90deg)') } var w = b.isSafari || b.isUiWebView ? -b.size / 2:0; b.wrapper.transform("translate3d(0px,0," + w + "px) rotateX(" + (b.isHorizontal() ? 0:n) + "deg) rotateY(" + (b.isHorizontal() ? -n:0)+'deg)') }, setTransition: function(e) { b.slides.transition(e).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(e), b.params.cube.shadow && !b.isHorizontal() && b.container.find('.swiper-cube-shadow').transition(e);}}, coverflow: {setTranslate: function() { for (var e = b.translate, n = b.isHorizontal() ? -e + b.width / 2:-e + b.height / 2, i = b.isHorizontal() ? b.params.coverflow.rotate:-b.params.coverflow.rotate, r = b.params.coverflow.depth, a = 0, o = b.slides.length; o > a; a++) { var s = b.slides.eq(a), l = b.slidesSizesGrid[a], u = s[0].swiperSlideOffset, c = (n - u - l / 2) / l * b.params.coverflow.modifier, p = b.isHorizontal() ? i * c:0, d = b.isHorizontal() ? 0:i * c, f = -r * Math.abs(c), h = b.isHorizontal() ? 0:b.params.coverflow.stretch * c, m = b.isHorizontal() ? b.params.coverflow.stretch * c:0; Math.abs(m) < .001 && (m = 0), Math.abs(h) < .001 && (h = 0), Math.abs(f) < .001 && (f = 0), Math.abs(p) < .001 && (p = 0), Math.abs(d) < .001 && (d = 0); var g = "translate3d(" + m + "px," + h + "px," + f + "px)  rotateX(" + d + "deg) rotateY(" + p+'deg)'; if (s.transform(g), s[0].style.zIndex = -Math.abs(Math.round(c)) + 1, b.params.coverflow.slideShadows) { var v = b.isHorizontal() ? s.find('.swiper-slide-shadow-left'):s.find('.swiper-slide-shadow-top'), y = b.isHorizontal() ? s.find('.swiper-slide-shadow-right'):s.find('.swiper-slide-shadow-bottom'); 0 === v.length && (v = t('<div class="swiper-slide-shadow-' + (b.isHorizontal()?'left':'top') + '"></div>'), s.append(v)), 0 === y.length && (y = t('<div class="swiper-slide-shadow-' + (b.isHorizontal()?'right':'bottom') + '"></div>'), s.append(y)), v.length && (v[0].style.opacity = c > 0 ? c:0), y.length && (y[0].style.opacity = -c > 0 ? -c:0);} } if (b.browser.ie) { var w = b.wrapper[0].style; w.perspectiveOrigin = n + "px 50%" } }, setTransition: function(e) { b.slides.transition(e).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(e);}}}, b.lazy = {initialImageLoaded: !1, loadImageInSlide: function(e, n) { if ("undefined" != typeof e && ("undefined" == typeof n && (n = !0), 0 !== b.slides.length)) { var i = b.slides.eq(e), r = i.find('.swiper-lazy:not(.swiper-lazy-loaded):not(.swiper-lazy-loading)'); !i.hasClass('swiper-lazy') || i.hasClass('swiper-lazy-loaded') || i.hasClass('swiper-lazy-loading') || (r = r.add(i[0])), 0 !== r.length && r.each(function() { var e = t(this); e.addClass('swiper-lazy-loading'); var r = e.attr('data-background'), a = e.attr('data-src'), o = e.attr('data-srcset'); b.loadImage(e[0], a || r, o, !1, function() { if (r ? (e.css('background-image', 'url("' + r + '")'), e.removeAttr('data-background')):(o && (e.attr('srcset', o), e.removeAttr('data-srcset')), a && (e.attr('src', a), e.removeAttr('data-src'))), e.addClass('swiper-lazy-loaded').removeClass('swiper-lazy-loading'), i.find('.swiper-lazy-preloader, .preloader').remove(), b.params.loop && n) { var t = i.attr('data-swiper-slide-index'); if (i.hasClass(b.params.slideDuplicateClass)) { var s = b.wrapper.children('[data-swiper-slide-index="' + t + '"]:not(.' + b.params.slideDuplicateClass+')'); b.lazy.loadImageInSlide(s.index(), !1) } else { var l = b.wrapper.children("." + b.params.slideDuplicateClass + '[data-swiper-slide-index="' + t + '"]'); b.lazy.loadImageInSlide(l.index(), !1);} }b.emit('onLazyImageReady', b, i[0], e[0]);}), b.emit('onLazyImageLoad', b, i[0], e[0]);});} }, load: function() { var e; if (b.params.watchSlidesVisibility)b.wrapper.children("." + b.params.slideVisibleClass).each(function() { b.lazy.loadImageInSlide(t(this).index()) }); else if (b.params.slidesPerView > 1) for (e = b.activeIndex; e < b.activeIndex + b.params.slidesPerView; e++)b.slides[e] && b.lazy.loadImageInSlide(e); else b.lazy.loadImageInSlide(b.activeIndex); if (b.params.lazyLoadingInPrevNext) if (b.params.slidesPerView > 1 || b.params.lazyLoadingInPrevNextAmount && b.params.lazyLoadingInPrevNextAmount > 1) { var n = b.params.lazyLoadingInPrevNextAmount, i = b.params.slidesPerView, r = Math.min(b.activeIndex + i + Math.max(n, i), b.slides.length), a = Math.max(b.activeIndex - Math.max(i, n), 0); for (e = b.activeIndex + b.params.slidesPerView; r > e; e++)b.slides[e] && b.lazy.loadImageInSlide(e); for (e = a; e < b.activeIndex; e++)b.slides[e] && b.lazy.loadImageInSlide(e) } else { var o = b.wrapper.children("." + b.params.slideNextClass); o.length > 0 && b.lazy.loadImageInSlide(o.index()); var s = b.wrapper.children("." + b.params.slidePrevClass); s.length > 0 && b.lazy.loadImageInSlide(s.index());} }, onTransitionStart: function() { b.params.lazyLoading && (b.params.lazyLoadingOnTransitionStart || !b.params.lazyLoadingOnTransitionStart && !b.lazy.initialImageLoaded) && b.lazy.load() }, onTransitionEnd: function() { b.params.lazyLoading && !b.params.lazyLoadingOnTransitionStart && b.lazy.load();}}, b.scrollbar = {isTouched: !1, setDragPosition: function(e) { var t = b.scrollbar, n = b.isHorizontal() ? "touchstart" === e.type || "touchmove" === e.type ? e.targetTouches[0].pageX:e.pageX || e.clientX:"touchstart" === e.type || "touchmove" === e.type ? e.targetTouches[0].pageY:e.pageY || e.clientY, i = n - t.track.offset()[b.isHorizontal()?'left':'top'] - t.dragSize / 2, r = -b.minTranslate() * t.moveDivider, a = -b.maxTranslate() * t.moveDivider; r > i ? i = r:i > a && (i = a), i = -i / t.moveDivider, b.updateProgress(i), b.setWrapperTranslate(i, !0);}, dragStart: function(e) { var t = b.scrollbar; t.isTouched = !0, e.preventDefault(), e.stopPropagation(), t.setDragPosition(e), clearTimeout(t.dragTimeout), t.track.transition(0), b.params.scrollbarHide && t.track.css('opacity', 1), b.wrapper.transition(100), t.drag.transition(100), b.emit('onScrollbarDragStart', b);}, dragMove: function(e) { var t = b.scrollbar; t.isTouched && (e.preventDefault ? e.preventDefault():e.returnValue = !1, t.setDragPosition(e), b.wrapper.transition(0), t.track.transition(0), t.drag.transition(0), b.emit('onScrollbarDragMove', b)) }, dragEnd: function(e) { var t = b.scrollbar; t.isTouched && (t.isTouched = !1, b.params.scrollbarHide && (clearTimeout(t.dragTimeout), t.dragTimeout = setTimeout(function() { t.track.css('opacity', 0), t.track.transition(400);}, 1e3)), b.emit('onScrollbarDragEnd', b), b.params.scrollbarSnapOnRelease && b.slideReset()) }, enableDraggable: function() { var e = b.scrollbar, n = b.support.touch ? e.track:document; t(e.track).on(b.touchEvents.start, e.dragStart), t(n).on(b.touchEvents.move, e.dragMove), t(n).on(b.touchEvents.end, e.dragEnd) }, disableDraggable: function() { var e = b.scrollbar, n = b.support.touch ? e.track:document; t(e.track).off(b.touchEvents.start, e.dragStart), t(n).off(b.touchEvents.move, e.dragMove), t(n).off(b.touchEvents.end, e.dragEnd);}, set: function() { if (b.params.scrollbar) { var e = b.scrollbar; e.track = t(b.params.scrollbar), b.params.uniqueNavElements && "string" == typeof b.params.scrollbar && e.track.length > 1 && 1 === b.container.find(b.params.scrollbar).length && (e.track = b.container.find(b.params.scrollbar)), e.drag = e.track.find('.swiper-scrollbar-drag'), 0 === e.drag.length && (e.drag = t('<div class="swiper-scrollbar-drag"></div>'), e.track.append(e.drag)), e.drag[0].style.width='', e.drag[0].style.height='', e.trackSize = b.isHorizontal() ? e.track[0].offsetWidth:e.track[0].offsetHeight, e.divider = b.size / b.virtualSize, e.moveDivider = e.divider * (e.trackSize / b.size), e.dragSize = e.trackSize * e.divider, b.isHorizontal() ? e.drag[0].style.width = e.dragSize+'px':e.drag[0].style.height = e.dragSize+'px', e.divider >= 1 ? e.track[0].style.display='none':e.track[0].style.display='', b.params.scrollbarHide && (e.track[0].style.opacity = 0) } }, setTranslate: function() { if (b.params.scrollbar) { var e, t = b.scrollbar, n = (b.translate || 0, t.dragSize); e = (t.trackSize - t.dragSize) * b.progress, b.rtl && b.isHorizontal() ? (e = -e, e > 0 ? (n = t.dragSize - e, e = 0):-e + t.dragSize > t.trackSize && (n = t.trackSize + e)):0 > e ? (n = t.dragSize + e, e = 0):e + t.dragSize > t.trackSize && (n = t.trackSize - e), b.isHorizontal() ? (b.support.transforms3d ? t.drag.transform("translate3d(" + e+'px, 0, 0)'):t.drag.transform("translateX(" + e+'px)'), t.drag[0].style.width = n+'px'):(b.support.transforms3d ? t.drag.transform("translate3d(0px, " + e+'px, 0)'):t.drag.transform("translateY(" + e+'px)'), t.drag[0].style.height = n+'px'), b.params.scrollbarHide && (clearTimeout(t.timeout), t.track[0].style.opacity = 1, t.timeout = setTimeout(function() { t.track[0].style.opacity = 0, t.track.transition(400);}, 1e3)) } }, setTransition: function(e) { b.params.scrollbar && b.scrollbar.drag.transition(e);}}, b.controller = {LinearSpline: function(e, t) { this.x = e, this.y = t, this.lastIndex = e.length - 1; var n, i; this.x.length; this.interpolate = function(e) { return e ? (i = r(this.x, e), n = i - 1, (e - this.x[n]) * (this.y[i] - this.y[n]) / (this.x[i] - this.x[n]) + this.y[n]):0 }; var r = function() { var e, t, n; return function(i, r) { for (t = -1, e = i.length; e - t > 1;)i[n = e + t >> 1] <= r ? t = n:e = n; return e };}();}, getInterpolateFunction: function(e) { b.controller.spline || (b.controller.spline = b.params.loop ? new b.controller.LinearSpline(b.slidesGrid, e.slidesGrid):new b.controller.LinearSpline(b.snapGrid, e.snapGrid));}, setTranslate: function(e, t) { function i(t) { e = t.rtl && "horizontal" === t.params.direction ? -b.translate:b.translate, "slide" === b.params.controlBy && (b.controller.getInterpolateFunction(t), a = -b.controller.spline.interpolate(-e)), a && "container" !== b.params.controlBy || (r = (t.maxTranslate() - t.minTranslate()) / (b.maxTranslate() - b.minTranslate()), a = (e - b.minTranslate()) * r + t.minTranslate()), b.params.controlInverse && (a = t.maxTranslate() - a), t.updateProgress(a), t.setWrapperTranslate(a, !1, b), t.updateActiveIndex();} var r, a, o = b.params.control; if (b.isArray(o)) for (var s = 0; s < o.length; s++)o[s] !== t && o[s]instanceof n && i(o[s]); else o instanceof n && t !== o && i(o);}, setTransition: function(e, t) { function i(t) { t.setWrapperTransition(e, b),
0 !== e && (t.onTransitionStart(), t.wrapper.transitionEnd(function() { a && (t.params.loop && "slide" === b.params.controlBy && t.fixLoop(), t.onTransitionEnd());})) } var r, a = b.params.control; if (b.isArray(a)) for (r = 0; r < a.length; r++)a[r] !== t && a[r]instanceof n && i(a[r]); else a instanceof n && t !== a && i(a);}}, b.hashnav = {init: function() { if (b.params.hashnav) { b.hashnav.initialized = !0; var e = document.location.hash.replace('#',''); if (e) for (var t = 0, n = 0, i = b.slides.length; i > n; n++) { var r = b.slides.eq(n), a = r.attr('data-hash'); if (a === e && !r.hasClass(b.params.slideDuplicateClass)) { var o = r.index(); b.slideTo(o, t, b.params.runCallbacksOnInit, !0);} } } }, setHash: function() { b.hashnav.initialized && b.params.hashnav && (document.location.hash = b.slides.eq(b.activeIndex).attr('data-hash')||'');}}, b.disableKeyboardControl = function() { b.params.keyboardControl = !1, t(document).off('keydown', u) }, b.enableKeyboardControl = function() { b.params.keyboardControl = !0, t(document).on('keydown', u);}, b.mousewheel = {event: !1, lastScrollTime: (new window.Date).getTime()}, b.params.mousewheelControl) { try { new window.WheelEvent('wheel'), b.mousewheel.event = "wheel";} catch (R) { (window.WheelEvent || b.container[0]&&'wheel'in b.container[0]) && (b.mousewheel.event='wheel') }!b.mousewheel.event && window.WheelEvent, b.mousewheel.event || void 0 === document.onmousewheel || (b.mousewheel.event='mousewheel'), b.mousewheel.event || (b.mousewheel.event='DOMMouseScroll');}b.disableMousewheelControl = function() { return b.mousewheel.event ? (b.container.off(b.mousewheel.event, c), !0):!1 }, b.enableMousewheelControl = function() { return b.mousewheel.event ? (b.container.on(b.mousewheel.event, c), !0):!1;}, b.parallax = {setTranslate: function() { b.container.children('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]').each(function() { p(this, b.progress);}), b.slides.each(function() { var e = t(this); e.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]').each(function() { var t = Math.min(Math.max(e[0].progress, -1), 1); p(this, t);});}) }, setTransition: function(e) { "undefined" == typeof e && (e = b.params.speed), b.container.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]').each(function() { var n = t(this), i = parseInt(n.attr('data-swiper-parallax-duration'), 10) || e; 0 === e && (i = 0), n.transition(i);});}}, b._plugins = []; for (var q in b.plugins) { var j = b.plugins[q](b, b.params[q]); j && b._plugins.push(j) } return b.callPlugins = function(e) { for (var t = 0; t < b._plugins.length; t++)e in b._plugins[t] && b._plugins[t][e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);}, b.emitterEventListeners = {}, b.emit = function(e) { b.params[e] && b.params[e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]); var t; if (b.emitterEventListeners[e]) for (t = 0; t < b.emitterEventListeners[e].length; t++)b.emitterEventListeners[e][t](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]); b.callPlugins && b.callPlugins(e, arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);}, b.on = function(e, t) { return e = d(e), b.emitterEventListeners[e] || (b.emitterEventListeners[e] = []), b.emitterEventListeners[e].push(t), b }, b.off = function(e, t) { var n; if (e = d(e), "undefined" == typeof t) return b.emitterEventListeners[e] = [], b; if (b.emitterEventListeners[e] && 0 !== b.emitterEventListeners[e].length) { for (n = 0; n < b.emitterEventListeners[e].length; n++)b.emitterEventListeners[e][n] === t && b.emitterEventListeners[e].splice(n, 1); return b } }, b.once = function(e, t) { e = d(e); var n = function() { t(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4]), b.off(e, n) }; return b.on(e, n), b;}, b.a11y = {makeFocusable: function(e) { return e.attr('tabIndex','0'), e;}, addRole: function(e, t) { return e.attr('role', t), e }, addLabel: function(e, t) { return e.attr('aria-label', t), e;}, disable: function(e) { return e.attr('aria-disabled', !0), e }, enable: function(e) { return e.attr('aria-disabled', !1), e }, onEnterKey: function(e) { 13 === e.keyCode && (t(e.target).is(b.params.nextButton) ? (b.onClickNext(e), b.isEnd ? b.a11y.notify(b.params.lastSlideMessage):b.a11y.notify(b.params.nextSlideMessage)):t(e.target).is(b.params.prevButton) && (b.onClickPrev(e), b.isBeginning ? b.a11y.notify(b.params.firstSlideMessage):b.a11y.notify(b.params.prevSlideMessage)), t(e.target).is("." + b.params.bulletClass) && t(e.target)[0].click());}, liveRegion: t('<span class="swiper-notification" aria-live="assertive" aria-atomic="true"></span>'), notify: function(e) { var t = b.a11y.liveRegion; 0 !== t.length && (t.html(''), t.html(e)) }, init: function() { b.params.nextButton && b.nextButton && b.nextButton.length > 0 && (b.a11y.makeFocusable(b.nextButton), b.a11y.addRole(b.nextButton,'button'), b.a11y.addLabel(b.nextButton, b.params.nextSlideMessage)), b.params.prevButton && b.prevButton && b.prevButton.length > 0 && (b.a11y.makeFocusable(b.prevButton), b.a11y.addRole(b.prevButton,'button'), b.a11y.addLabel(b.prevButton, b.params.prevSlideMessage)), t(b.container).append(b.a11y.liveRegion) }, initPagination: function() { b.params.pagination && b.params.paginationClickable && b.bullets && b.bullets.length && b.bullets.each(function() { var e = t(this); b.a11y.makeFocusable(e), b.a11y.addRole(e,'button'), b.a11y.addLabel(e, b.params.paginationBulletMessage.replace(/{{index}}/, e.index() + 1));}) }, destroy: function() { b.a11y.liveRegion && b.a11y.liveRegion.length > 0 && b.a11y.liveRegion.remove() }}, b.init = function() { b.params.loop && b.createLoop(), b.updateContainerSize(), b.updateSlidesSize(), b.updatePagination(), b.params.scrollbar && b.scrollbar && (b.scrollbar.set(), b.params.scrollbarDraggable && b.scrollbar.enableDraggable()), "slide" !== b.params.effect && b.effects[b.params.effect] && (b.params.loop || b.updateProgress(), b.effects[b.params.effect].setTranslate()), b.params.loop ? b.slideTo(b.params.initialSlide + b.loopedSlides, 0, b.params.runCallbacksOnInit):(b.slideTo(b.params.initialSlide, 0, b.params.runCallbacksOnInit), 0 === b.params.initialSlide && (b.parallax && b.params.parallax && b.parallax.setTranslate(), b.lazy && b.params.lazyLoading && (b.lazy.load(), b.lazy.initialImageLoaded = !0))), b.attachEvents(), b.params.observer && b.support.observer && b.initObservers(), b.params.preloadImages && !b.params.lazyLoading && b.preloadImages(), b.params.autoplay && b.startAutoplay(), b.params.keyboardControl && b.enableKeyboardControl && b.enableKeyboardControl(), b.params.mousewheelControl && b.enableMousewheelControl && b.enableMousewheelControl(), b.params.hashnav && b.hashnav && b.hashnav.init(), b.params.a11y && b.a11y && b.a11y.init(), b.emit('onInit', b);}, b.cleanupStyles = function() { b.container.removeClass(b.classNames.join(' ')).removeAttr('style'), b.wrapper.removeAttr('style'), b.slides && b.slides.length && b.slides.removeClass([b.params.slideVisibleClass, b.params.slideActiveClass, b.params.slideNextClass, b.params.slidePrevClass].join(' ')).removeAttr('style').removeAttr('data-swiper-column').removeAttr('data-swiper-row'), b.paginationContainer && b.paginationContainer.length && b.paginationContainer.removeClass(b.params.paginationHiddenClass), b.bullets && b.bullets.length && b.bullets.removeClass(b.params.bulletActiveClass), b.params.prevButton && t(b.params.prevButton).removeClass(b.params.buttonDisabledClass), b.params.nextButton && t(b.params.nextButton).removeClass(b.params.buttonDisabledClass), b.params.scrollbar && b.scrollbar && (b.scrollbar.track && b.scrollbar.track.length && b.scrollbar.track.removeAttr('style'), b.scrollbar.drag && b.scrollbar.drag.length && b.scrollbar.drag.removeAttr('style'));}, b.destroy = function(e, t) { b.detachEvents(), b.stopAutoplay(), b.params.scrollbar && b.scrollbar && b.params.scrollbarDraggable && b.scrollbar.disableDraggable(), b.params.loop && b.destroyLoop(), t && b.cleanupStyles(), b.disconnectObservers(), b.params.keyboardControl && b.disableKeyboardControl && b.disableKeyboardControl(), b.params.mousewheelControl && b.disableMousewheelControl && b.disableMousewheelControl(), b.params.a11y && b.a11y && b.a11y.destroy(), b.emit('onDestroy'), e !== !1 && (b = null) }, b.init(), b;} }; n.prototype = {isSafari: function() { var e = navigator.userAgent.toLowerCase(); return e.indexOf('safari') >= 0 && e.indexOf('chrome') < 0 && e.indexOf('android') < 0;}(), isUiWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent), isArray: function(e) { return "[object Array]" === Object.prototype.toString.apply(e);}, browser: {ie: window.navigator.pointerEnabled || window.navigator.msPointerEnabled, ieTouch: window.navigator.msPointerEnabled && window.navigator.msMaxTouchPoints > 1 || window.navigator.pointerEnabled && window.navigator.maxTouchPoints > 1}, device: function() { var e = navigator.userAgent, t = e.match(/(Android);?[\s\/]+([\d.]+)?/), n = e.match(/(iPad).*OS\s([\d_]+)/), i = e.match(/(iPod)(.*OS\s([\d_]+))?/), r = !n && e.match(/(iPhone\sOS)\s([\d_]+)/); return {ios: n || r || i, android: t} }(), support: {touch: window.Modernizr && Modernizr.touch === !0 || function() { return !!('ontouchstart'in window || window.DocumentTouch && document instanceof DocumentTouch);}(), transforms3d: window.Modernizr && Modernizr.csstransforms3d === !0 || function() { var e = document.createElement('div').style; return'webkitPerspective'in e||'MozPerspective'in e||'OPerspective'in e||'MsPerspective'in e||'perspective'in e }(), flexbox: function() { for (var e = document.createElement('div').style, t='alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient'.split(' '), n = 0; n < t.length; n++) if (t[n]in e) return !0 }(), observer: function() { return'MutationObserver'in window||'WebkitMutationObserver'in window }()}, plugins: {}}; for (var i = (function() { var e = function(e) { var t = this, n = 0; for (n = 0; n < e.length; n++)t[n] = e[n]; return t.length = e.length, this }, t = function(t, n) { var i = [], r = 0; if (t && !n && t instanceof e) return t; if (t) if ("string" == typeof t) { var a, o, s = t.trim(); if (s.indexOf('<') >= 0 && s.indexOf('>') >= 0) { var l='div'; for (0 === s.indexOf('<li') && (l='ul'), 0 === s.indexOf('<tr') && (l='tbody'), 0 !== s.indexOf('<td') && 0 !== s.indexOf('<th') || (l='tr'), 0 === s.indexOf('<tbody') && (l='table'), 0 === s.indexOf('<option') && (l='select'), o = document.createElement(l), o.innerHTML = t, r = 0; r < o.childNodes.length; r++)i.push(o.childNodes[r]);} else for (a = n || "#" !== t[0] || t.match(/[ .<>:~]/) ? (n || document).querySelectorAll(t):[document.getElementById(t.split('#')[1])], r = 0; r < a.length; r++)a[r] && i.push(a[r]) } else if (t.nodeType || t === window || t === document)i.push(t); else if (t.length > 0 && t[0].nodeType) for (r = 0; r < t.length; r++)i.push(t[r]); return new e(i);}; return e.prototype = {addClass: function(e) { if ("undefined" == typeof e) return this; for (var t = e.split(' '), n = 0; n < t.length; n++) for (var i = 0; i < this.length; i++) this[i].classList.add(t[n]); return this;}, removeClass: function(e) { for (var t = e.split(' '), n = 0; n < t.length; n++) for (var i = 0; i < this.length; i++) this[i].classList.remove(t[n]); return this }, hasClass: function(e) { return this[0] ? this[0].classList.contains(e):!1 }, toggleClass: function(e) { for (var t = e.split(' '), n = 0; n < t.length; n++) for (var i = 0; i < this.length; i++) this[i].classList.toggle(t[n]); return this;}, attr: function(e, t) { if (1 === arguments.length && "string" == typeof e) return this[0] ? this[0].getAttribute(e):void 0; for (var n = 0; n < this.length; n++) if (2 === arguments.length) this[n].setAttribute(e, t); else for (var i in e) this[n][i] = e[i], this[n].setAttribute(i, e[i]); return this;}, removeAttr: function(e) { for (var t = 0; t < this.length; t++) this[t].removeAttribute(e); return this }, data: function(e, t) { if ("undefined" != typeof t) { for (var n = 0; n < this.length; n++) { var i = this[n]; i.dom7ElementDataStorage || (i.dom7ElementDataStorage = {}), i.dom7ElementDataStorage[e] = t } return this;} if (this[0]) { var r = this[0].getAttribute("data-" + e); return r ? r:this[0].dom7ElementDataStorage && e in this[0].dom7ElementDataStorage ? this[0].dom7ElementDataStorage[e]:void 0 } }, transform: function(e) { for (var t = 0; t < this.length; t++) { var n = this[t].style; n.webkitTransform = n.MsTransform = n.msTransform = n.MozTransform = n.OTransform = n.transform = e;} return this;}, transition: function(e) { "string" != typeof e && (e+='ms'); for (var t = 0; t < this.length; t++) { var n = this[t].style; n.webkitTransitionDuration = n.MsTransitionDuration = n.msTransitionDuration = n.MozTransitionDuration = n.OTransitionDuration = n.transitionDuration = e } return this }, on: function(e, n, i, r) { function a(e) { var r = e.target; if (t(r).is(n))i.call(r, e); else for (var a = t(r).parents(), o = 0; o < a.length; o++)t(a[o]).is(n) && i.call(a[o], e) } var o, s, l = e.split(' '); for (o = 0; o < this.length; o++) if ("function" == typeof n || n === !1) for ("function" == typeof n && (i = arguments[1], r = arguments[2] || !1), s = 0; s < l.length; s++) this[o].addEventListener(l[s], i, r); else for (s = 0; s < l.length; s++) this[o].dom7LiveListeners || (this[o].dom7LiveListeners = []), this[o].dom7LiveListeners.push({listener: i, liveListener: a}), this[o].addEventListener(l[s], a, r); return this;}, off: function(e, t, n, i) { for (var r = e.split(' '), a = 0; a < r.length; a++) for (var o = 0; o < this.length; o++) if ("function" == typeof t || t === !1)"function" == typeof t && (n = arguments[1], i = arguments[2] || !1), this[o].removeEventListener(r[a], n, i); else if (this[o].dom7LiveListeners) for (var s = 0; s < this[o].dom7LiveListeners.length; s++) this[o].dom7LiveListeners[s].listener === n && this[o].removeEventListener(r[a], this[o].dom7LiveListeners[s].liveListener, i); return this;}, once: function(e, t, n, i) { function r(o) { n(o), a.off(e, t, r, i) } var a = this; "function" == typeof t && (t = !1, n = arguments[1], i = arguments[2]), a.on(e, t, r, i);}, trigger: function(e, t) { for (var n = 0; n < this.length; n++) { var i; try { i = new window.CustomEvent(e, {detail: t, bubbles: !0, cancelable: !0});} catch (r) { i = document.createEvent('Event'), i.initEvent(e, !0, !0), i.detail = t } this[n].dispatchEvent(i);} return this;}, transitionEnd: function(e) { function t(a) { if (a.target === this) for (e.call(this, a), n = 0; n < i.length; n++)r.off(i[n], t) } var n, i = ['webkitTransitionEnd','transitionend','oTransitionEnd','MSTransitionEnd','msTransitionEnd'], r = this; if (e) for (n = 0; n < i.length; n++)r.on(i[n], t); return this;}, width: function() { return this[0] === window ? window.innerWidth:this.length > 0 ? parseFloat(this.css('width')):null }, outerWidth: function(e) { return this.length > 0 ? e ? this[0].offsetWidth + parseFloat(this.css('margin-right')) + parseFloat(this.css('margin-left')):this[0].offsetWidth:null }, height: function() { return this[0] === window ? window.innerHeight:this.length > 0 ? parseFloat(this.css('height')):null }, outerHeight: function(e) { return this.length > 0 ? e ? this[0].offsetHeight + parseFloat(this.css('margin-top')) + parseFloat(this.css('margin-bottom')):this[0].offsetHeight:null;}, offset: function() { if (this.length > 0) { var e = this[0], t = e.getBoundingClientRect(), n = document.body, i = e.clientTop || n.clientTop || 0, r = e.clientLeft || n.clientLeft || 0, a = window.pageYOffset || e.scrollTop, o = window.pageXOffset || e.scrollLeft; return {top: t.top + a - i, left: t.left + o - r};} return null }, css: function(e, t) { var n; if (1 === arguments.length) { if ("string" != typeof e) { for (n = 0; n < this.length; n++) for (var i in e) this[n].style[i] = e[i]; return this;} if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(e);} if (2 === arguments.length && "string" == typeof e) { for (n = 0; n < this.length; n++) this[n].style[e] = t; return this;} return this;}, each: function(e) { for (var t = 0; t < this.length; t++)e.call(this[t], t, this[t]); return this }, html: function(e) { if ("undefined" == typeof e) return this[0] ? this[0].innerHTML:void 0; for (var t = 0; t < this.length; t++) this[t].innerHTML = e; return this }, text: function(e) { if ("undefined" == typeof e) return this[0] ? this[0].textContent.trim():null; for (var t = 0; t < this.length; t++) this[t].textContent = e; return this }, is: function(n) { if (!this[0]) return !1; var i, r; if ("string" == typeof n) { var a = this[0]; if (a === document) return n === document; if (a === window) return n === window; if (a.matches) return a.matches(n); if (a.webkitMatchesSelector) return a.webkitMatchesSelector(n); if (a.mozMatchesSelector) return a.mozMatchesSelector(n); if (a.msMatchesSelector) return a.msMatchesSelector(n); for (i = t(n), r = 0; r < i.length; r++) if (i[r] === this[0]) return !0; return !1 } if (n === document) return this[0] === document; if (n === window) return this[0] === window; if (n.nodeType || n instanceof e) { for (i = n.nodeType ? [n]:n, r = 0; r < i.length; r++) if (i[r] === this[0]) return !0; return !1;} return !1;}, index: function() { if (this[0]) { for (var e = this[0], t = 0; null !== (e = e.previousSibling);)1 === e.nodeType && t++; return t;} }, eq: function(t) { if ("undefined" == typeof t) return this; var n, i = this.length; return t > i - 1 ? new e([]):0 > t ? (n = i + t, new e(0 > n ? []:[this[n]])):new e([this[t]]) }, append: function(t) { var n, i; for (n = 0; n < this.length; n++) if ("string" == typeof t) { var r = document.createElement('div'); for (r.innerHTML = t; r.firstChild;) this[n].appendChild(r.firstChild) } else if (t instanceof e) for (i = 0; i < t.length; i++) this[n].appendChild(t[i]); else this[n].appendChild(t); return this }, prepend: function(t) { var n, i; for (n = 0; n < this.length; n++) if ("string" == typeof t) { var r = document.createElement('div'); for (r.innerHTML = t, i = r.childNodes.length - 1; i >= 0; i--) this[n].insertBefore(r.childNodes[i], this[n].childNodes[0]) } else if (t instanceof e) for (i = 0; i < t.length; i++) this[n].insertBefore(t[i], this[n].childNodes[0]); else this[n].insertBefore(t, this[n].childNodes[0]); return this }, insertBefore: function(e) { for (var n = t(e), i = 0; i < this.length; i++) if (1 === n.length)n[0].parentNode.insertBefore(this[i], n[0]); else if (n.length > 1) for (var r = 0; r < n.length; r++)n[r].parentNode.insertBefore(this[i].cloneNode(!0), n[r]);}, insertAfter: function(e) { for (var n = t(e), i = 0; i < this.length; i++) if (1 === n.length)n[0].parentNode.insertBefore(this[i], n[0].nextSibling); else if (n.length > 1) for (var r = 0; r < n.length; r++)n[r].parentNode.insertBefore(this[i].cloneNode(!0), n[r].nextSibling) }, next: function(n) { return new e(this.length > 0 ? n ? this[0].nextElementSibling && t(this[0].nextElementSibling).is(n) ? [this[0].nextElementSibling]:[]:this[0].nextElementSibling ? [this[0].nextElementSibling]:[]:[]);}, nextAll: function(n) { var i = [], r = this[0]; if (!r) return new e([]); for (;r.nextElementSibling;) { var a = r.nextElementSibling; n ? t(a).is(n) && i.push(a):i.push(a), r = a } return new e(i) }, prev: function(n) { return new e(this.length > 0 ? n ? this[0].previousElementSibling && t(this[0].previousElementSibling).is(n) ? [this[0].previousElementSibling]:[]:this[0].previousElementSibling ? [this[0].previousElementSibling]:[]:[]) }, prevAll: function(n) { var i = [], r = this[0]; if (!r) return new e([]); for (;r.previousElementSibling;) { var a = r.previousElementSibling; n ? t(a).is(n) && i.push(a):i.push(a), r = a } return new e(i);}, parent: function(e) { for (var n = [], i = 0; i < this.length; i++)e ? t(this[i].parentNode).is(e) && n.push(this[i].parentNode):n.push(this[i].parentNode); return t(t.unique(n)) }, parents: function(e) { for (var n = [], i = 0; i < this.length; i++) for (var r = this[i].parentNode; r;)e ? t(r).is(e) && n.push(r):n.push(r), r = r.parentNode; return t(t.unique(n)) }, find: function(t) { for (var n = [], i = 0; i < this.length; i++) for (var r = this[i].querySelectorAll(t), a = 0; a < r.length; a++)n.push(r[a]); return new e(n);}, children: function(n) { for (var i = [], r = 0; r < this.length; r++) for (var a = this[r].childNodes, o = 0; o < a.length; o++)n ? 1 === a[o].nodeType && t(a[o]).is(n) && i.push(a[o]):1 === a[o].nodeType && i.push(a[o]); return new e(t.unique(i)) }, remove: function() { for (var e = 0; e < this.length; e++) this[e].parentNode && this[e].parentNode.removeChild(this[e]); return this;}, add: function() { var e, n, i = this; for (e = 0; e < arguments.length; e++) { var r = t(arguments[e]); for (n = 0; n < r.length; n++)i[i.length] = r[n], i.length++;} return i }}, t.fn = e.prototype, t.unique = function(e) { for (var t = [], n = 0; n < e.length; n++)-1 === t.indexOf(e[n]) && t.push(e[n]); return t;}, t }()), r = ['jQuery','Zepto','Dom7'], a = 0; a < r.length; a++)window[r[a]] && e(window[r[a]]); var o; o = "undefined" == typeof i ? window.Dom7 || window.Zepto || window.jQuery:i, o && ('transitionEnd'in o.fn || (o.fn.transitionEnd = function(e) { function t(a) { if (a.target === this) for (e.call(this, a), n = 0; n < i.length; n++)r.off(i[n], t);} var n, i = ['webkitTransitionEnd','transitionend','oTransitionEnd','MSTransitionEnd','msTransitionEnd'], r = this; if (e) for (n = 0; n < i.length; n++)r.on(i[n], t); return this;}),'transform'in o.fn || (o.fn.transform = function(e) { for (var t = 0; t < this.length; t++) { var n = this[t].style; n.webkitTransform = n.MsTransform = n.msTransform = n.MozTransform = n.OTransform = n.transform = e } return this;}),'transition'in o.fn || (o.fn.transition = function(e) { "string" != typeof e && (e+='ms'); for (var t = 0; t < this.length; t++) { var n = this[t].style; n.webkitTransitionDuration = n.MsTransitionDuration = n.msTransitionDuration = n.MozTransitionDuration = n.OTransitionDuration = n.transitionDuration = e;} return this;})), window.Swiper = n }(), e.exports = window.Swiper }, function(e, t, n) { var i = n(2); n(5), e.exports = function(e, t) { var n, r = {effect:'fadeIn', effect_speed: 10, placeholder:'data:image/gif;base64,R0lGODlhAQABAJEAAAAAAP///93d3f///yH5BAEAAAMALAAAAAABAAEAAAICVAEAOw==', skip_invisible: !1}, a = arguments.length; !function() { switch (a) { case 0:n = i('img.lazy'); break; case 1:e instanceof i ? n = e:(n = i('img.lazy'), i.extend(r, e)); break; case 2:n = e, r = i.extend(r, t) } }(), n.lazyload(r);};}, function(e, t, n) { var i = n(2); !function(e, t, n, i) { var r = e(t); e.fn.lazyload = function(a) { function o() { var t = 0; l.each(function() { var n = e(this); if (!u.skip_invisible || n.is(':visible')) if (e.abovethetop(this, u) || e.leftofbegin(this, u))else if (e.belowthefold(this, u) || e.rightoffold(this, u)) { if (++t > u.failure_limit) return !1;} else n.trigger('appear'), t = 0 });} var s, l = this, u = {threshold: 0, failure_limit: 0, event:'scroll', effect:'show', container: t, data_attribute:'original', skip_invisible: !0, appear: null, load: null, yasPath:'/web/', yasImgDomain:'http://analytics.yhurl.com/yas.gif', placeholder:'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC', try_again_css: null}; return a && (i !== a.failurelimit && (a.failure_limit = a.failurelimit, delete a.failurelimit), i !== a.effectspeed && (a.effect_speed = a.effectspeed, delete a.effectspeed), e.extend(u, a)), s = u.container === i || u.container === t ? r:e(u.container), 0 === u.event.indexOf('scroll') && s.bind(u.event, function() { return o();}), this.each(function() { var t = this, n = e(t); t.loaded = !1, n.attr('src') !== i && n.attr('src') !== !1 && "" !== n.attr('src') || n.is('img') && n.attr('src', u.placeholder), n.one('appear', function() { if (n.timerid && clearTimeout(n.timerid), !this.loaded) { if (u.appear) { var i = l.length; u.appear.call(t, i, u) }e('<img />').bind('error abort', function() { n.attr('src', u.placeholder), a({info:'error'});}).bind('load', function() { if (!n.loadtimeout) { clearTimeout(n.timerid), n.attr('pfmrpt'); var i = n.attr("data-" + u.data_attribute); n.hide(), n.is('img') ? n.attr('src', i):n.css('background-image', "url('" + i+'\')'), n[u.effect](u.effect_speed), t.loaded = !0; var r = e.grep(l, function(e) { return !e.loaded;}); if (l = e(r), u.load) { var a = l.length; u.load.call(t, a, u);} } }).attr('src', n.attr("data-" + u.data_attribute)), n.src = n.attr("data-" + u.data_attribute), n.attr('pfmrpt') && _yas && _yas.add; var r = function(e) { n.loadtimeout = !0, n.attr('pfmrpt') && _yas && _yas.add && e.info, n.attr('src',''), setTimeout(function() { n.attr('src', n.src) }, 50);}, a = function(t) { n.loadtimeout = !0, n.attr('pfmrpt') && _yas && _yas.add && t.info; var i = n.width(), a = n.height(); if (u.try_again_css) var o = e("<div class=" + u.try_again_css + " style='width:" + i + "px;height:" + a+'px;\'></div>'); else var o = e("<div style='background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC) ;text-align: center;position:relative;width:" + i + "px;height:" + a+'px;background-size:100%;\'>加载失败</div>'); o.addClass(n.attr('class')), n.replaceWith(o), n.timerid = setTimeout(r, 5e3) };} }), 0 !== u.event.indexOf('scroll') && n.bind(u.event, function() { t.loaded || n.trigger('appear');}) }), r.bind('resize', function() { o() }), /(?:iphone|ipod|ipad).*os 5/gi.test(navigator.appVersion) && r.bind('pageshow', function(t) { t.originalEvent && t.originalEvent.persisted && l.each(function() { e(this).trigger('appear') }) }), e(n).ready(function() { o();}), this }, e.belowthefold = function(n, a) { var o; return o = a.container === i || a.container === t ? (t.innerHeight ? t.innerHeight:r.height()) + r.scrollTop():e(a.container).offset().top + e(a.container).height(), o <= e(n).offset().top - a.threshold }, e.rightoffold = function(n, a) { var o; return o = a.container === i || a.container === t ? r.width() + r.scrollLeft():e(a.container).offset().left + e(a.container).width(), o <= e(n).offset().left - a.threshold;}, e.abovethetop = function(n, a) { var o; return o = a.container === i || a.container === t ? r.scrollTop():e(a.container).offset().top, o >= e(n).offset().top + a.threshold + e(n).height();}, e.leftofbegin = function(n, a) { var o; return o = a.container === i || a.container === t ? r.scrollLeft():e(a.container).offset().left, o >= e(n).offset().left + a.threshold + e(n).width() }, e.inviewport = function(t, n) { return !(e.rightoffold(t, n) || e.leftofbegin(t, n) || e.belowthefold(t, n) || e.abovethetop(t, n));} }(i, window, document) }, function(e, t, n) { var i; !function() {'use strict';/**
		 * @preserve FastClick: polyfill to remove click delays on browsers with touch UIs.
		 *
		 * @codingstandard ftlabs-jsv2
		 * @copyright The Financial Times Limited [All Rights Reserved]
		 * @license MIT License (see LICENSE.txt)
		 */
    function r(e, t) { function n(e, t) { return function() { return e.apply(t, arguments);} } var i; if (t = t || {}, this.trackingClick = !1, this.trackingClickStart = 0, this.targetElement = null, this.touchStartX = 0, this.touchStartY = 0, this.lastTouchIdentifier = 0, this.touchBoundary = t.touchBoundary || 10, this.layer = e, this.tapDelay = t.tapDelay || 200, this.tapTimeout = t.tapTimeout || 700, !r.notNeeded(e)) { for (var a = ['onMouse','onClick','onTouchStart','onTouchMove','onTouchEnd','onTouchCancel'], s = this, l = 0, u = a.length; u > l; l++)s[a[l]] = n(s[a[l]], s); o && (e.addEventListener('mouseover', this.onMouse, !0), e.addEventListener('mousedown', this.onMouse, !0), e.addEventListener('mouseup', this.onMouse, !0)), e.addEventListener('click', this.onClick, !0), e.addEventListener('touchstart', this.onTouchStart, !1), e.addEventListener('touchmove', this.onTouchMove, !1), e.addEventListener('touchend', this.onTouchEnd, !1), e.addEventListener('touchcancel', this.onTouchCancel, !1), Event.prototype.stopImmediatePropagation || (e.removeEventListener = function(t, n, i) { var r = Node.prototype.removeEventListener; "click" === t ? r.call(e, t, n.hijacked || n, i):r.call(e, t, n, i) }, e.addEventListener = function(t, n, i) { var r = Node.prototype.addEventListener; "click" === t ? r.call(e, t, n.hijacked || (n.hijacked = function(e) { e.propagationStopped || n(e) }), i):r.call(e, t, n, i) }), "function" == typeof e.onclick && (i = e.onclick, e.addEventListener('click', function(e) { i(e) }, !1), e.onclick = null);} } var a = navigator.userAgent.indexOf('Windows Phone') >= 0, o = navigator.userAgent.indexOf('Android') > 0 && !a, s = /iP(ad|hone|od)/.test(navigator.userAgent) && !a, l = s && /OS 4_\d(_\d)?/.test(navigator.userAgent), u = s && /OS [6-7]_\d/.test(navigator.userAgent), c = navigator.userAgent.indexOf('BB10') > 0; r.prototype.needsClick = function(e) { switch (e.nodeName.toLowerCase()) { case'button':case'select':case'textarea':if (e.disabled) return !0; break; case'input':if (s && "file" === e.type || e.disabled) return !0; break; case'label':case'iframe':case'video':return !0;} return /\bneedsclick\b/.test(e.className) }, r.prototype.needsFocus = function(e) { switch (e.nodeName.toLowerCase()) { case'textarea':return !0; case'select':return !o; case'input':switch (e.type) { case'button':case'checkbox':case'file':case'image':case'radio':case'submit':return !1 } return !e.disabled && !e.readOnly; default:return /\bneedsfocus\b/.test(e.className) } }, r.prototype.sendClick = function(e, t) { var n, i; document.activeElement && document.activeElement !== e && document.activeElement.blur(), i = t.changedTouches[0], n = document.createEvent('MouseEvents'), n.initMouseEvent(this.determineEventType(e), !0, !0, window, 1, i.screenX, i.screenY, i.clientX, i.clientY, !1, !1, !1, !1, 0, null), n.forwardedTouchEvent = !0, e.dispatchEvent(n);}, r.prototype.determineEventType = function(e) { return o && "select" === e.tagName.toLowerCase()?'mousedown':"click";}, r.prototype.focus = function(e) { var t; s && e.setSelectionRange && 0 !== e.type.indexOf('date') && "time" !== e.type && "month" !== e.type ? (t = e.value.length, e.setSelectionRange(t, t)):e.focus();}, r.prototype.updateScrollParent = function(e) { var t, n; if (t = e.fastClickScrollParent, !t || !t.contains(e)) { n = e; do { if (n.scrollHeight > n.offsetHeight) { t = n, e.fastClickScrollParent = n; break;}n = n.parentElement } while (n);}t && (t.fastClickLastScrollTop = t.scrollTop) }, r.prototype.getTargetElementFromEventTarget = function(e) { return e.nodeType === Node.TEXT_NODE ? e.parentNode:e }, r.prototype.onTouchStart = function(e) { var t, n, i; if (e.targetTouches.length > 1) return !0; if (t = this.getTargetElementFromEventTarget(e.target), n = e.targetTouches[0], s) { if (i = window.getSelection(), i.rangeCount && !i.isCollapsed) return !0; if (!l) { if (n.identifier && n.identifier === this.lastTouchIdentifier) return e.preventDefault(), !1; this.lastTouchIdentifier = n.identifier, this.updateScrollParent(t) } } return this.trackingClick = !0, this.trackingClickStart = e.timeStamp, this.targetElement = t, this.touchStartX = n.pageX, this.touchStartY = n.pageY, e.timeStamp - this.lastClickTime < this.tapDelay && e.preventDefault(), !0 }, r.prototype.touchHasMoved = function(e) { var t = e.changedTouches[0], n = this.touchBoundary; return Math.abs(t.pageX - this.touchStartX) > n || Math.abs(t.pageY - this.touchStartY) > n }, r.prototype.onTouchMove = function(e) { return this.trackingClick ? ((this.targetElement !== this.getTargetElementFromEventTarget(e.target) || this.touchHasMoved(e)) && (this.trackingClick = !1, this.targetElement = null), !0):!0 }, r.prototype.findControl = function(e) { return void 0 !== e.control ? e.control:e.htmlFor ? document.getElementById(e.htmlFor):e.querySelector('button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea') }, r.prototype.onTouchEnd = function(e) { var t, n, i, r, a, c = this.targetElement; if (!this.trackingClick) return !0; if (e.timeStamp - this.lastClickTime < this.tapDelay) return this.cancelNextClick = !0, !0; if (e.timeStamp - this.trackingClickStart> this.tapTimeout) return !0; if (this.cancelNextClick = !1, this.lastClickTime = e.timeStamp, n = this.trackingClickStart, this.trackingClick = !1, this.trackingClickStart = 0, u && (a = e.changedTouches[0], c = document.elementFromPoint(a.pageX - window.pageXOffset, a.pageY - window.pageYOffset) || c, c.fastClickScrollParent = this.targetElement.fastClickScrollParent), i = c.tagName.toLowerCase(), "label" === i) { if (t = this.findControl(c)) { if (this.focus(c), o) return !1; c = t;} } else if (this.needsFocus(c)) return e.timeStamp - n > 100 || s && window.top !== window && "input" === i ? (this.targetElement = null, !1):(this.focus(c), this.sendClick(c, e), s && "select" === i || (this.targetElement = null, e.preventDefault()), !1); return s && !l && (r = c.fastClickScrollParent, r && r.fastClickLastScrollTop !== r.scrollTop) ? !0:(this.needsClick(c) || (e.preventDefault(), this.sendClick(c, e)), !1) }, r.prototype.onTouchCancel = function() { this.trackingClick = !1, this.targetElement = null }, r.prototype.onMouse = function(e) { return this.targetElement ? e.forwardedTouchEvent ? !0:e.cancelable && (!this.needsClick(this.targetElement) || this.cancelNextClick) ? (e.stopImmediatePropagation ? e.stopImmediatePropagation():e.propagationStopped = !0, e.stopPropagation(), e.preventDefault(), !1):!0:!0;}, r.prototype.onClick = function(e) { var t; return this.trackingClick ? (this.targetElement = null, this.trackingClick = !1, !0):"submit" === e.target.type && 0 === e.detail ? !0:(t = this.onMouse(e), t || (this.targetElement = null), t) }, r.prototype.destroy = function() { var e = this.layer; o && (e.removeEventListener('mouseover', this.onMouse, !0), e.removeEventListener('mousedown', this.onMouse, !0), e.removeEventListener('mouseup', this.onMouse, !0)), e.removeEventListener('click', this.onClick, !0), e.removeEventListener('touchstart', this.onTouchStart, !1), e.removeEventListener('touchmove', this.onTouchMove, !1), e.removeEventListener('touchend', this.onTouchEnd, !1), e.removeEventListener('touchcancel', this.onTouchCancel, !1);}, r.notNeeded = function(e) { var t, n, i, r; if ("undefined" == typeof window.ontouchstart) return !0; if (n = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]) { if (!o) return !0; if (t = document.querySelector('meta[name=viewport]')) { if (-1 !== t.content.indexOf('user-scalable=no')) return !0; if (n > 31 && document.documentElement.scrollWidth <= window.outerWidth) return !0 } } if (c && (i = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/), i[1] >= 10 && i[2] >= 3 && (t = document.querySelector('meta[name=viewport]')))) { if (-1 !== t.content.indexOf('user-scalable=no')) return !0; if (document.documentElement.scrollWidth <= window.outerWidth) return !0;} return "none" === e.style.msTouchAction || "manipulation" === e.style.touchAction ? !0:(r = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1], r >= 27 && (t = document.querySelector('meta[name=viewport]'), t && (-1 !== t.content.indexOf('user-scalable=no') || document.documentElement.scrollWidth <= window.outerWidth)) ? !0:"none" === e.style.touchAction || "manipulation" === e.style.touchAction);}, r.attach = function(e, t) { return new r(e, t) }, i = function() { return r;}.call(t, n, t, e), !(void 0 !== i && (e.exports = i)) }() }, function(e, t, n) { function i(e, t) { var n = r(e), i = n.find('.notice-item'), a = i.length, o = 1; e = e||'.notice', t = t || 3e3, a > 1 && setInterval(function() { o >= a && (o = 0), i.fadeOut(), n.find(".item-" + o).fadeIn(), o++ }, t);} var r = n(2); e.exports = i }, function(e, t, n) { function i(e) { var t, n, i = document.cookie; return document.cookie && "" !== document.cookie && (n = i.indexOf(e+'='), n > -1 && (n += e.length + 1, t = decodeURIComponent(f.trim(i.substring(n, i.indexOf(';', n)))))), t;} function r(e, t, n) { var i, r, a, o, s=''; "undefined" != typeof t && (n = n || {}, null === t && (t='', n.expires = -1), n.expires && ("number" == typeof n.expires || n.expires.toUTCString) && ("number" == typeof n.expires ? (o = new Date, o.setTime(o.getTime() + 24 * n.expires * 60 * 60 * 1e3)):o = n.expires, s = "; expires=" + o.toUTCString()), i = n.path ? "; path=" + n.path:'', r = n.domain ? "; domain=" + n.domain:'', a = n.secure?'; secure':'', document.cookie = [e,'=', encodeURIComponent(t), s, i, r, a].join(''));} function a() { var e = !!navigator.cookieEnabled; return "undefined" != typeof navigator.cookieEnabled || e || (document.cookie='testcookie', e = -1 !== document.cookie.indexOf('testcookie')), e;} function o() { var e, t = i('_UID'); return "undefined" == typeof t ? 0:(e = t.split('::'), "undefined" == typeof e || e.length < 4 ? 0:e);} function s() { var e = o(); return 0 === e ? 0:e[1];} function l() { var e = i('_g'); return "undefined" == typeof e?'':JSON.parse(e).k;} function u() { var e; 0 !== m.length && (e = Math.min(f(window).height(), window.screen.availHeight), f('body').height() <= e - parseInt(m.css('height'), 0) ? m.addClass('bottom'):m.removeClass('bottom'));} function c(e) { var t = f(e).outerHeight(); e && m.css('margin-bottom', t+'px');} function p() { var e, t, n = [], i = window.location.search.slice(1).split('&'); for (t = 0; t < i.length; t++)e = i[t].split('='), n.push(e[0]), n[e[0]] = e[1]; return n } function d(e) { return e.replace(/(\d{3})\d{4}(\d{4})/,'$1****$2') } var f = n(2), h = n(9), m = f('#yoho-footer'), g = f('.yoho-page'), v = f('.yoho-header'); !function() { var e, t = m.children('.op-row'), n = f('.back-to-top'), i = o(); u(), 0 === i ? t.prepend('<a href="http://m.yohobuy.com/signin.html?refer=' + location.href + '">登录</a><span class="sep-line">|</span><a href="http://m.yohobuy.com/reg.html">注册</a>'):t.prepend('<span>Hi,</span><a class="user-name" href="http://m.yohobuy.com/home?tmp=' + Math.random() + '">' + i[0] + '</a><a href="http://m.yohobuy.com/passport/signout/index">退出</a>'), n.length > 0 && (e = new h(n[0]), e.on('tap', function(e) { return f(window).scrollTop(0), e.srcEvent.preventDefault(), !1 })), m.removeClass('hide');}(), function(e, t, n, i, r) { var a = t.createElement(n), o = t.getElementsByTagName(n)[0]; e.YohoAcquisitionObject = r, e[r] = function() { e[r].p = arguments }, a.async = 1, a.src = i, o.parentNode.insertBefore(a, o) }(window, document,'script','http://cdn.yoho.cn/yas-jssdk/1.0.14/yas.js','_yas'), function() { var e = s(); e = 0 === e?'':e, window._ozuid = e, window._yas && window._yas(1 * new Date,'1.0.14','yohobuy_m', e,'','');}(), v.on('touchstart','a', function() { v.find('a').removeClass('highlight'), f(this).addClass('highlight');}).on('touchend touchcancel','a', function() { f(this).removeClass('highlight');}), g.on('touchstart','.tap-hightlight', function() { f(this).siblings('.tap-hightlight').removeClass('highlight'), f(this).addClass('highlight');}).on('touchend touchcancel','.tap-hightlight', function() { f(this).removeClass('highlight');}), f('.nav-home').on('touchstart', function() { f('.homebuttom').toggleClass('hide');}), function() { var e, t, n = 0, i='webkit moz ms o'.split(' '), r = window.requestAnimationFrame, a = window.cancelAnimationFrame; for (t = 0; t < i.length && (!r || !a); t++)e = i[t], r = r || window[e+'RequestAnimationFrame'], a = a || window[e+'CancelAnimationFrame'] || window[e+'CancelRequestAnimationFrame']; r && a || (r = function(e) { var t = (new Date).getTime(), i = Math.max(0, 16 - (t - n)), r = window.setTimeout(function() { e(t + i) }, i); return n = t + i, r;}, a = function(e) { window.clearTimeout(e) }), window.requestAnimationFrame = r, window.cancelAnimationFrame = a;}(), f.extend({queryString: p}), 11 === m.find('.user-name').text().length && m.find('.user-name').html(d(m.find('.user-name').text())), window.cookie = i, window.setCookie = r, window.isCookiesEnabled = a, window.getUser = o, window.getUid = s, window.getShoppingKey = l, window.rePosFooter = u, window.reMarginFooter = c, window.queryString = p() }, function(e, t, n) { var i;/* ! Hammer.JS - v2.0.7 - 2016-04-22
	 * http://hammerjs.github.io/
	 *
	 * Copyright (c) 2016 Jorik Tangelder;
	 * Licensed under the MIT license */
    !function(r, a, o, s) {'use strict'; function l(e, t, n) { return setTimeout(f(e, n), t);} function u(e, t, n) { return Array.isArray(e) ? (c(e, n[t], n), !0):!1;} function c(e, t, n) { var i; if (e) if (e.forEach)e.forEach(t, n); else if (e.length !== s) for (i = 0; i < e.length;)t.call(n, e[i], i, e), i++; else for (i in e)e.hasOwnProperty(i) && t.call(n, e[i], i, e) } function p(e, t, n) { var i = "DEPRECATED METHOD: " + t + "\n" + n+' AT \n'; return function() { var t = new Error('get-stack-trace'), n = t && t.stack ? t.stack.replace(/^[^\(]+?[\n$]/gm,'').replace(/^\s+at\s+/gm,'').replace(/^Object.<anonymous>\s*\(/gm,'{anonymous}()@'):'Unknown Stack Trace', a = r.console && (r.console.warn || r.console.log); return a && a.call(r.console, i, n), e.apply(this, arguments) } } function d(e, t, n) { var i, r = t.prototype; i = e.prototype = Object.create(r), i.constructor = e, i._super = r, n && me(i, n) } function f(e, t) { return function() { return e.apply(t, arguments) };} function h(e, t) { return typeof e == ye ? e.apply(t ? t[0] || s:s, t):e } function m(e, t) { return e === s ? t:e;} function g(e, t, n) { c(b(t), function(t) { e.addEventListener(t, n, !1);}) } function v(e, t, n) { c(b(t), function(t) { e.removeEventListener(t, n, !1) }) } function y(e, t) { for (;e;) { if (e == t) return !0; e = e.parentNode;} return !1;} function w(e, t) { return e.indexOf(t) > -1;} function b(e) { return e.trim().split(/\s+/g) } function x(e, t, n) { if (e.indexOf && !n) return e.indexOf(t); for (var i = 0; i < e.length;) { if (n && e[i][n] == t || !n && e[i] === t) return i; i++;} return -1 } function T(e) { return Array.prototype.slice.call(e, 0) } function C(e, t, n) { for (var i = [], r = [], a = 0; a < e.length;) { var o = t ? e[a][t]:e[a]; x(r, o) < 0 && i.push(e[a]), r[a] = o, a++;} return n && (i = t ? i.sort(function(e, n) { return e[t] > n[t];}):i.sort()), i;} function S(e, t) { for (var n, i, r = t[0].toUpperCase() + t.slice(1), a = 0; a < ge.length;) { if (n = ge[a], i = n ? n + r:t, i in e) return i; a++ } return s } function E() { return Se++;} function k(e) { var t = e.ownerDocument || e; return t.defaultView || t.parentWindow || r;} function A(e, t) { var n = this; this.manager = e, this.callback = t, this.element = e.element, this.target = e.options.inputTarget, this.domHandler = function(t) { h(e.options.enable, [e]) && n.handler(t) }, this.init() } function M(e) { var t, n = e.options.inputClass; return new(t = n ? n:Ae ? W:Me ? G:ke ? V:F)(e, P) } function P(e, t, n) { var i = n.pointers.length, r = n.changedPointers.length, a = t & Ie && i - r === 0, o = t & (He | Be) && i - r === 0; n.isFirst = !!a, n.isFinal = !!o, a && (e.session = {}), n.eventType = t, D(e, n), e.emit('hammer.input', n), e.recognize(n), e.session.prevInput = n;} function D(e, t) { var n = e.session, i = t.pointers, r = i.length; n.firstInput || (n.firstInput = N(t)), r > 1 && !n.firstMultiple ? n.firstMultiple = N(t):1 === r && (n.firstMultiple = !1); var a = n.firstInput, o = n.firstMultiple, s = o ? o.center:a.center, l = t.center = I(i); t.timeStamp = xe(), t.deltaTime = t.timeStamp - a.timeStamp, t.angle = R(s, l), t.distance = B(s, l), z(n, t), t.offsetDirection = H(t.deltaX, t.deltaY); var u = O(t.deltaTime, t.deltaX, t.deltaY); t.overallVelocityX = u.x, t.overallVelocityY = u.y, t.overallVelocity = be(u.x) > be(u.y) ? u.x:u.y, t.scale = o ? j(o.pointers, i):1, t.rotation = o ? q(o.pointers, i):0, t.maxPointers = n.prevInput ? t.pointers.length > n.prevInput.maxPointers ? t.pointers.length:n.prevInput.maxPointers:t.pointers.length, L(n, t); var c = e.element; y(t.srcEvent.target, c) && (c = t.srcEvent.target), t.target = c;} function z(e, t) { var n = t.center, i = e.offsetDelta || {}, r = e.prevDelta || {}, a = e.prevInput || {}; t.eventType !== Ie && a.eventType !== He || (r = e.prevDelta = {x: a.deltaX || 0, y: a.deltaY || 0}, i = e.offsetDelta = {x: n.x, y: n.y}), t.deltaX = r.x + (n.x - i.x), t.deltaY = r.y + (n.y - i.y) } function L(e, t) { var n, i, r, a, o = e.lastInterval || t, l = t.timeStamp - o.timeStamp; if (t.eventType != Be && (l > Ne || o.velocity === s)) { var u = t.deltaX - o.deltaX, c = t.deltaY - o.deltaY, p = O(l, u, c); i = p.x, r = p.y, n = be(p.x) > be(p.y) ? p.x:p.y, a = H(u, c), e.lastInterval = t;} else n = o.velocity, i = o.velocityX, r = o.velocityY, a = o.direction; t.velocity = n, t.velocityX = i, t.velocityY = r, t.direction = a;} function N(e) { for (var t = [], n = 0; n < e.pointers.length;)t[n] = {clientX: we(e.pointers[n].clientX), clientY: we(e.pointers[n].clientY)}, n++; return {timeStamp: xe(), pointers: t, center: I(t), deltaX: e.deltaX, deltaY: e.deltaY} } function I(e) { var t = e.length; if (1 === t) return {x: we(e[0].clientX), y: we(e[0].clientY)}; for (var n = 0, i = 0, r = 0; t > r;)n += e[r].clientX, i += e[r].clientY, r++; return {x: we(n / t), y: we(i / t)} } function O(e, t, n) { return {x: t / e || 0, y: n / e || 0} } function H(e, t) { return e === t ? Re:be(e) >= be(t) ? 0 > e ? qe:je:0 > t ? Fe:We } function B(e, t, n) { n || (n = Ye); var i = t[n[0]] - e[n[0]], r = t[n[1]] - e[n[1]]; return Math.sqrt(i * i + r * r);} function R(e, t, n) { n || (n = Ye); var i = t[n[0]] - e[n[0]], r = t[n[1]] - e[n[1]]; return 180 * Math.atan2(r, i) / Math.PI;} function q(e, t) { return R(t[1], t[0], Ve) + R(e[1], e[0], Ve) } function j(e, t) { return B(t[0], t[1], Ve) / B(e[0], e[1], Ve) } function F() { this.evEl = Ue, this.evWin = Ke, this.pressed = !1, A.apply(this, arguments);} function W() { this.evEl = Ze, this.evWin = et, A.apply(this, arguments), this.store = this.manager.session.pointerEvents = [];} function _() { this.evTarget = nt, this.evWin = it, this.started = !1, A.apply(this, arguments) } function X(e, t) { var n = T(e.touches), i = T(e.changedTouches); return t & (He | Be) && (n = C(n.concat(i),'identifier', !0)), [n, i] } function G() { this.evTarget = at, this.targetIds = {}, A.apply(this, arguments) } function Y(e, t) { var n = T(e.touches), i = this.targetIds; if (t & (Ie | Oe) && 1 === n.length) return i[n[0].identifier] = !0, [n, n]; var r, a, o = T(e.changedTouches), s = [], l = this.target; if (a = n.filter(function(e) { return y(e.target, l);}), t === Ie) for (r = 0; r < a.length;)i[a[r].identifier] = !0, r++; for (r = 0; r < o.length;)i[o[r].identifier] && s.push(o[r]), t & (He | Be) && delete i[o[r].identifier], r++; return s.length ? [C(a.concat(s),'identifier', !0), s]:void 0 } function V() { A.apply(this, arguments); var e = f(this.handler, this); this.touch = new G(this.manager, e), this.mouse = new F(this.manager, e), this.primaryTouch = null, this.lastTouches = [] } function $(e, t) { e & Ie ? (this.primaryTouch = t.changedPointers[0].identifier, U.call(this, t)):e & (He | Be) && U.call(this, t);} function U(e) { var t = e.changedPointers[0]; if (t.identifier === this.primaryTouch) { var n = {x: t.clientX, y: t.clientY}; this.lastTouches.push(n); var i = this.lastTouches, r = function() { var e = i.indexOf(n); e > -1 && i.splice(e, 1);}; setTimeout(r, ot);} } function K(e) { for (var t = e.srcEvent.clientX, n = e.srcEvent.clientY, i = 0; i < this.lastTouches.length; i++) { var r = this.lastTouches[i], a = Math.abs(t - r.x), o = Math.abs(n - r.y); if (st >= a && st >= o) return !0;} return !1;} function Q(e, t) { this.manager = e, this.set(t) } function J(e) { if (w(e, ft)) return ft; var t = w(e, ht), n = w(e, mt); return t && n ? ft:t || n ? t ? ht:mt:w(e, dt) ? dt:pt } function Z() { if (!ut) return !1; var e = {}, t = r.CSS && r.CSS.supports; return ['auto','manipulation','pan-y','pan-x','pan-x pan-y','none'].forEach(function(n) { e[n] = t ? r.CSS.supports('touch-action', n):!0 }), e } function ee(e) { this.options = me({}, this.defaults, e || {}), this.id = E(), this.manager = null, this.options.enable = m(this.options.enable, !0), this.state = vt, this.simultaneous = {}, this.requireFail = [];} function te(e) { return e & Tt?'cancel':e & bt?'end':e & wt?'move':e & yt?'start':"";} function ne(e) { return e == We?'down':e == Fe?'up':e == qe?'left':e == je?'right':"";} function ie(e, t) { var n = t.manager; return n ? n.get(e):e;} function re() { ee.apply(this, arguments);} function ae() { re.apply(this, arguments), this.pX = null, this.pY = null;} function oe() { re.apply(this, arguments);} function se() { ee.apply(this, arguments), this._timer = null, this._input = null;} function le() { re.apply(this, arguments);} function ue() { re.apply(this, arguments);} function ce() { ee.apply(this, arguments), this.pTime = !1, this.pCenter = !1, this._timer = null, this._input = null, this.count = 0;} function pe(e, t) { return t = t || {}, t.recognizers = m(t.recognizers, pe.defaults.preset), new de(e, t);} function de(e, t) { this.options = me({}, pe.defaults, t || {}), this.options.inputTarget = this.options.inputTarget || e, this.handlers = {}, this.session = {}, this.recognizers = [], this.oldCssProps = {}, this.element = e, this.input = M(this), this.touchAction = new Q(this, this.options.touchAction), fe(this, !0), c(this.options.recognizers, function(e) { var t = this.add(new e[0](e[1])); e[2] && t.recognizeWith(e[2]), e[3] && t.requireFailure(e[3]);}, this) } function fe(e, t) { var n = e.element; if (n.style) { var i; c(e.options.cssProps, function(r, a) { i = S(n.style, a), t ? (e.oldCssProps[i] = n.style[i], n.style[i] = r):n.style[i] = e.oldCssProps[i] || "" }), t || (e.oldCssProps = {});} } function he(e, t) { var n = a.createEvent('Event'); n.initEvent(e, !0, !0), n.gesture = t, t.target.dispatchEvent(n);} var me, ge = ['','webkit','Moz','MS','ms','o'], ve = a.createElement('div'), ye='function', we = Math.round, be = Math.abs, xe = Date.now; me = "function" != typeof Object.assign ? function(e) { if (e === s || null === e) throw new TypeError('Cannot convert undefined or null to object'); for (var t = Object(e), n = 1; n < arguments.length; n++) { var i = arguments[n]; if (i !== s && null !== i) for (var r in i)i.hasOwnProperty(r) && (t[r] = i[r]) } return t;}:Object.assign; var Te = p(function(e, t, n) { for (var i = Object.keys(t), r = 0; r < i.length;)(!n || n && e[i[r]] === s) && (e[i[r]] = t[i[r]]), r++; return e },'extend','Use `assign`.'), Ce = p(function(e, t) { return Te(e, t, !0);},'merge','Use `assign`.'), Se = 1, Ee = /mobile|tablet|ip(ad|hone|od)|android/i, ke='ontouchstart'in r, Ae = S(r,'PointerEvent') !== s, Me = ke && Ee.test(navigator.userAgent), Pe='touch', De='pen', ze='mouse', Le='kinect', Ne = 25, Ie = 1, Oe = 2, He = 4, Be = 8, Re = 1, qe = 2, je = 4, Fe = 8, We = 16, _e = qe | je, Xe = Fe | We, Ge = _e | Xe, Ye = ['x','y'], Ve = ['clientX','clientY']; A.prototype = {handler: function() {}, init: function() { this.evEl && g(this.element, this.evEl, this.domHandler), this.evTarget && g(this.target, this.evTarget, this.domHandler), this.evWin && g(k(this.element), this.evWin, this.domHandler);}, destroy: function() { this.evEl && v(this.element, this.evEl, this.domHandler), this.evTarget && v(this.target, this.evTarget, this.domHandler), this.evWin && v(k(this.element), this.evWin, this.domHandler) }}; var $e = {mousedown: Ie, mousemove: Oe, mouseup: He}, Ue='mousedown', Ke='mousemove mouseup'; d(F, A, {handler: function(e) { var t = $e[e.type]; t & Ie && 0 === e.button && (this.pressed = !0), t & Oe && 1 !== e.which && (t = He), this.pressed && (t & He && (this.pressed = !1), this.callback(this.manager, t, {pointers: [e], changedPointers: [e], pointerType: ze, srcEvent: e}));}}); var Qe = {pointerdown: Ie, pointermove: Oe, pointerup: He, pointercancel: Be, pointerout: Be}, Je = {2: Pe, 3: De, 4: ze, 5: Le}, Ze='pointerdown', et='pointermove pointerup pointercancel'; r.MSPointerEvent && !r.PointerEvent && (Ze='MSPointerDown', et='MSPointerMove MSPointerUp MSPointerCancel'), d(W, A, {handler: function(e) { var t = this.store, n = !1, i = e.type.toLowerCase().replace('ms',''), r = Qe[i], a = Je[e.pointerType] || e.pointerType, o = a == Pe, s = x(t, e.pointerId,'pointerId'); r & Ie && (0 === e.button || o) ? 0 > s && (t.push(e), s = t.length - 1):r & (He | Be) && (n = !0), 0 > s || (t[s] = e, this.callback(this.manager, r, {pointers: t, changedPointers: [e], pointerType: a, srcEvent: e}), n && t.splice(s, 1));}}); var tt = {touchstart: Ie, touchmove: Oe, touchend: He, touchcancel: Be}, nt='touchstart', it='touchstart touchmove touchend touchcancel'; d(_, A, {handler: function(e) { var t = tt[e.type]; if (t === Ie && (this.started = !0), this.started) { var n = X.call(this, e, t); t & (He | Be) && n[0].length - n[1].length === 0 && (this.started = !1), this.callback(this.manager, t, {pointers: n[0], changedPointers: n[1], pointerType: Pe, srcEvent: e});} }}); var rt = {touchstart: Ie, touchmove: Oe, touchend: He, touchcancel: Be}, at='touchstart touchmove touchend touchcancel'; d(G, A, {handler: function(e) { var t = rt[e.type], n = Y.call(this, e, t); n && this.callback(this.manager, t, {pointers: n[0], changedPointers: n[1], pointerType: Pe, srcEvent: e});}}); var ot = 2500, st = 25; d(V, A, {handler: function(e, t, n) { var i = n.pointerType == Pe, r = n.pointerType == ze; if (!(r && n.sourceCapabilities && n.sourceCapabilities.firesTouchEvents)) { if (i)$.call(this, t, n); else if (r && K.call(this, n)) return; this.callback(e, t, n) } }, destroy: function() { this.touch.destroy(), this.mouse.destroy();}}); var lt = S(ve.style,'touchAction'), ut = lt !== s, ct='compute', pt='auto', dt='manipulation', ft='none', ht='pan-x', mt='pan-y', gt = Z(); Q.prototype = {set: function(e) { e == ct && (e = this.compute()), ut && this.manager.element.style && gt[e] && (this.manager.element.style[lt] = e), this.actions = e.toLowerCase().trim();}, update: function() { this.set(this.manager.options.touchAction) }, compute: function() { var e = []; return c(this.manager.recognizers, function(t) { h(t.options.enable, [t]) && (e = e.concat(t.getTouchAction()));}), J(e.join(' '));}, preventDefaults: function(e) { var t = e.srcEvent, n = e.offsetDirection; if (this.manager.session.prevented) return void t.preventDefault(); var i = this.actions, r = w(i, ft) && !gt[ft], a = w(i, mt) && !gt[mt], o = w(i, ht) && !gt[ht]; if (r) { var s = 1 === e.pointers.length, l = e.distance < 2, u = e.deltaTime < 250; if (s && l && u) return;} return o && a ? void 0:r || a && n & _e || o && n & Xe ? this.preventSrc(t):void 0;}, preventSrc: function(e) { this.manager.session.prevented = !0, e.preventDefault() }}; var vt = 1, yt = 2, wt = 4, bt = 8, xt = bt, Tt = 16, Ct = 32; ee.prototype = {defaults: {}, set: function(e) { return me(this.options, e), this.manager && this.manager.touchAction.update(), this }, recognizeWith: function(e) { if (u(e,'recognizeWith', this)) return this; var t = this.simultaneous; return e = ie(e, this), t[e.id] || (t[e.id] = e, e.recognizeWith(this)), this;}, dropRecognizeWith: function(e) { return u(e,'dropRecognizeWith', this) ? this:(e = ie(e, this), delete this.simultaneous[e.id], this) }, requireFailure: function(e) { if (u(e,'requireFailure', this)) return this; var t = this.requireFail; return e = ie(e, this), -1 === x(t, e) && (t.push(e), e.requireFailure(this)), this;}, dropRequireFailure: function(e) { if (u(e,'dropRequireFailure', this)) return this; e = ie(e, this); var t = x(this.requireFail, e); return t > -1 && this.requireFail.splice(t, 1), this;}, hasRequireFailures: function() { return this.requireFail.length > 0 }, canRecognizeWith: function(e) { return !!this.simultaneous[e.id];}, emit: function(e) { function t(t) { n.manager.emit(t, e);} var n = this, i = this.state; bt > i && t(n.options.event + te(i)), t(n.options.event), e.additionalEvent && t(e.additionalEvent), i >= bt && t(n.options.event + te(i)) }, tryEmit: function(e) { return this.canEmit() ? this.emit(e):void(this.state = Ct) }, canEmit: function() { for (var e = 0; e < this.requireFail.length;) { if (!(this.requireFail[e].state & (Ct | vt))) return !1; e++;} return !0 }, recognize: function(e) { var t = me({}, e); return h(this.options.enable, [this, t]) ? (this.state & (xt | Tt | Ct) && (this.state = vt), this.state = this.process(t), void(this.state & (yt | wt | bt | Tt) && this.tryEmit(t))):(this.reset(), void(this.state = Ct));}, process: function(e) {}, getTouchAction: function() {}, reset: function() {}}, d(re, ee, {defaults: {pointers: 1}, attrTest: function(e) { var t = this.options.pointers; return 0 === t || e.pointers.length === t }, process: function(e) { var t = this.state, n = e.eventType, i = t & (yt | wt), r = this.attrTest(e); return i && (n & Be || !r) ? t | Tt:i || r ? n & He ? t | bt:t & yt ? t | wt:yt:Ct;}}), d(ae, re, {defaults: {event:'pan', threshold: 10, pointers: 1, direction: Ge}, getTouchAction: function() { var e = this.options.direction, t = []; return e & _e && t.push(mt), e & Xe && t.push(ht), t;}, directionTest: function(e) { var t = this.options, n = !0, i = e.distance, r = e.direction, a = e.deltaX, o = e.deltaY; return r & t.direction || (t.direction & _e ? (r = 0 === a ? Re:0 > a ? qe:je, n = a != this.pX, i = Math.abs(e.deltaX)):(r = 0 === o ? Re:0 > o ? Fe:We, n = o != this.pY, i = Math.abs(e.deltaY))), e.direction = r, n && i > t.threshold && r & t.direction;}, attrTest: function(e) { return re.prototype.attrTest.call(this, e) && (this.state & yt || !(this.state & yt) && this.directionTest(e)) }, emit: function(e) { this.pX = e.deltaX, this.pY = e.deltaY; var t = ne(e.direction); t && (e.additionalEvent = this.options.event + t), this._super.emit.call(this, e) }}), d(oe, re, {defaults: {event:'pinch', threshold: 0, pointers: 2}, getTouchAction: function() { return [ft] }, attrTest: function(e) { return this._super.attrTest.call(this, e) && (Math.abs(e.scale - 1)> this.options.threshold || this.state & yt) }, emit: function(e) { if (1 !== e.scale) { var t = e.scale < 1?'in':'out'; e.additionalEvent = this.options.event + t } this._super.emit.call(this, e);}}), d(se, ee, {defaults: {event:'press', pointers: 1, time: 251, threshold: 9}, getTouchAction: function() { return [pt];}, process: function(e) { var t = this.options, n = e.pointers.length === t.pointers, i = e.distance < t.threshold, r = e.deltaTime > t.time; if (this._input = e, !i || !n || e.eventType & (He | Be) && !r) this.reset(); else if (e.eventType & Ie) this.reset(), this._timer = l(function() { this.state = xt, this.tryEmit();}, t.time, this); else if (e.eventType & He) return xt; return Ct }, reset: function() { clearTimeout(this._timer) }, emit: function(e) { this.state === xt && (e && e.eventType & He ? this.manager.emit(this.options.event+'up', e):(this._input.timeStamp = xe(), this.manager.emit(this.options.event, this._input)));}}), d(le, re, {defaults: {event:'rotate', threshold: 0, pointers: 2}, getTouchAction: function() { return [ft] }, attrTest: function(e) { return this._super.attrTest.call(this, e) && (Math.abs(e.rotation)> this.options.threshold || this.state & yt);}}), d(ue, re, {defaults: {event:'swipe', threshold: 10, velocity: .3, direction: _e | Xe, pointers: 1}, getTouchAction: function() { return ae.prototype.getTouchAction.call(this) }, attrTest: function(e) { var t, n = this.options.direction; return n & (_e | Xe) ? t = e.overallVelocity:n & _e ? t = e.overallVelocityX:n & Xe && (t = e.overallVelocityY), this._super.attrTest.call(this, e) && n & e.offsetDirection && e.distance> this.options.threshold && e.maxPointers == this.options.pointers && be(t)> this.options.velocity && e.eventType & He;}, emit: function(e) { var t = ne(e.offsetDirection); t && this.manager.emit(this.options.event + t, e), this.manager.emit(this.options.event, e);}}), d(ce, ee, {defaults: {event:'tap', pointers: 1, taps: 1, interval: 300, time: 250, threshold: 9, posThreshold: 10}, getTouchAction: function() { return [dt];}, process: function(e) { var t = this.options, n = e.pointers.length === t.pointers, i = e.distance < t.threshold, r = e.deltaTime < t.time; if (this.reset(), e.eventType & Ie && 0 === this.count) return this.failTimeout(); if (i && r && n) { if (e.eventType != He) return this.failTimeout(); var a = this.pTime ? e.timeStamp - this.pTime < t.interval:!0, o = !this.pCenter || B(this.pCenter, e.center) < t.posThreshold; this.pTime = e.timeStamp, this.pCenter = e.center, o && a ? this.count += 1:this.count = 1, this._input = e; var s = this.count % t.taps; if (0 === s) return this.hasRequireFailures() ? (this._timer = l(function() { this.state = xt, this.tryEmit();}, t.interval, this), yt):xt } return Ct;}, failTimeout: function() { return this._timer = l(function() { this.state = Ct }, this.options.interval, this), Ct;}, reset: function() { clearTimeout(this._timer);}, emit: function() { this.state == xt && (this._input.tapCount = this.count, this.manager.emit(this.options.event, this._input)) }}), pe.VERSION='2.0.7', pe.defaults = {domEvents: !1, touchAction: ct, enable: !0, inputTarget: null, inputClass: null, preset: [[le, {enable: !1}], [oe, {enable: !1}, ['rotate']], [ue, {direction: _e}], [ae, {direction: _e}, ['swipe']], [ce], [ce, {event:'doubletap', taps: 2}, ['tap']], [se]], cssProps: {userSelect:'none', touchSelect:'none', touchCallout:'none', contentZooming:'none', userDrag:'none', tapHighlightColor:'rgba(0,0,0,0)'}}; var St = 1, Et = 2; de.prototype = {set: function(e) { return me(this.options, e), e.touchAction && this.touchAction.update(), e.inputTarget && (this.input.destroy(), this.input.target = e.inputTarget, this.input.init()), this;}, stop: function(e) { this.session.stopped = e ? Et:St;}, recognize: function(e) { var t = this.session; if (!t.stopped) { this.touchAction.preventDefaults(e); var n, i = this.recognizers, r = t.curRecognizer; (!r || r && r.state & xt) && (r = t.curRecognizer = null); for (var a = 0; a < i.length;)n = i[a], t.stopped === Et || r && n != r && !n.canRecognizeWith(r) ? n.reset():n.recognize(e), !r && n.state & (yt | wt | bt) && (r = t.curRecognizer = n), a++ } }, get: function(e) { if (e instanceof ee) return e; for (var t = this.recognizers, n = 0; n < t.length; n++) if (t[n].options.event == e) return t[n]; return null;}, add: function(e) { if (u(e,'add', this)) return this; var t = this.get(e.options.event); return t && this.remove(t), this.recognizers.push(e), e.manager = this, this.touchAction.update(), e;}, remove: function(e) { if (u(e,'remove', this)) return this; if (e = this.get(e)) { var t = this.recognizers, n = x(t, e); -1 !== n && (t.splice(n, 1), this.touchAction.update());} return this;}, on: function(e, t) { if (e !== s && t !== s) { var n = this.handlers; return c(b(e), function(e) { n[e] = n[e] || [], n[e].push(t);}), this } }, off: function(e, t) { if (e !== s) { var n = this.handlers; return c(b(e), function(e) { t ? n[e] && n[e].splice(x(n[e], t), 1):delete n[e] }), this } }, emit: function(e, t) { this.options.domEvents && he(e, t); var n = this.handlers[e] && this.handlers[e].slice(); if (n && n.length) { t.type = e, t.preventDefault = function() { t.srcEvent.preventDefault();}; for (var i = 0; i < n.length;)n[i](t), i++;} }, destroy: function() { this.element && fe(this, !1), this.handlers = {}, this.session = {}, this.input.destroy(), this.element = null;}}, me(pe, {INPUT_START: Ie, INPUT_MOVE: Oe, INPUT_END: He, INPUT_CANCEL: Be, STATE_POSSIBLE: vt, STATE_BEGAN: yt, STATE_CHANGED: wt, STATE_ENDED: bt, STATE_RECOGNIZED: xt, STATE_CANCELLED: Tt, STATE_FAILED: Ct, DIRECTION_NONE: Re, DIRECTION_LEFT: qe, DIRECTION_RIGHT: je, DIRECTION_UP: Fe, DIRECTION_DOWN: We, DIRECTION_HORIZONTAL: _e, DIRECTION_VERTICAL: Xe, DIRECTION_ALL: Ge, Manager: de, Input: A, TouchAction: Q, TouchInput: G, MouseInput: F, PointerEventInput: W, TouchMouseInput: V, SingleTouchInput: _, Recognizer: ee, AttrRecognizer: re, Tap: ce, Pan: ae, Swipe: ue, Pinch: oe, Rotate: le, Press: se, on: g, off: v, each: c, merge: Ce, extend: Te, assign: me, inherit: d, bindFn: f, prefixed: S}); var kt = "undefined" != typeof r ? r:"undefined" != typeof self ? self:{}; kt.Hammer = pe, i = function() { return pe;}.call(t, n, t, e), !(i !== s && (e.exports = i)) }(window, document,'Hammer') }, function(e, t, n) { e.exports = function(e) { function t() { v || (v = !0, f.showLoadingMask(), c.ajax({type:'GET', url: o, data: {page: y + 1}, success: function(t) { return " " === t ? (v = !1, f.hideLoadingMask(), void(w && !e && (o='/channel/bottomBanner', c.ajax({type:'GET', url: o, data: {gender: w}, success: function(e) { e && e.img && (c('#load-more-img').show(), c('#load-more-img a').attr('href', e.url), c('#load-more-img a > img').attr('src', e.img)) }})))):(t.length > 1 && (u ? null:u = c('#yoho-footer'), u.hasClass('bottom') ? u.removeClass('bottom'):null), a = g.find('.good-info').length, g.append(t), h(0 === a ? g.find('.good-info').find('img.lazy'):g.find(".good-info:gt(" + (a - 1)+')').find('img.lazy')), v = !1, f.hideLoadingMask(), void y++) }, error: function() { d.show('网络断开连接了~'), v = !1, f.hideLoadingMask() }})) } function i() { c(window).scrollTop() + m >= c(document).height() - 200 && t();} var r, a, o, s, l, u, c = n(2), p = n(9), d = n(11), f = n(12), h = n(4), m = c(window).height(), g = c('#goods-list'), v = !1, y = 0, w = null, b = !("kids" !== e && !c('.mobile-wrap').hasClass('kids-wrap')), x = !("lifestyle" !== e && !c('.mobile-wrap').hasClass('lifestyle-wrap')), T = c('#maybe-like-nav'); b ? o='/product/recom/maylikekids':x ? o = "lifestyle" === e?'/product/recom/maylike?gender=1,3':'/product/recom/maylikelife':(w = "boys" === e || c('.mobile-wrap').hasClass('boys-wrap')?'boys':'girls', o = "/product/recom/maylike?gender=" + w), s = T.children('.focus'), x && (r = T[0] ? new p(T[0]):null, r && r.on('tap', function(e) { var t, n = c(e.target).closest('li'), i = c('.goods-list'); e.preventDefault(), n.hasClass('focus') || (l = n.index(), n.addClass('focus'), s.removeClass('focus'), i.not('.hide').addClass('hide'), t = i.eq(l), t.removeClass('hide'), s = n, c(document).trigger('scroll'), e.srcEvent.stopPropagation()) })), f.init(c('.maybe-like')), c('.maybe-like p').on('touchstart', function() { t();}), e && t(), c(window).scroll(function() { window.requestAnimationFrame(i) });};}, function(e, t, n) { function i(e, t) { var n, i; "undefined" != typeof e && (n = e.toString(), i = t && t > 0 ? t:2e3, r.text(n).show(), a = setTimeout(function() { "block" === r.css('display') && r.hide() }, i)) } var r, a, o = n(2); !function() { var e = '<div id="yoho-tip" class="yoho-tip"></div>'; o('.yoho-page').append(e), r = o('#yoho-tip'), r.on('touchend', function() { r.hide(), clearTimeout(a) }) }(), t.show = i;}, function(e, t, n) { function i(e) { var t = '<div class="loading-mask hide"><div class="loading"><div></div><div></div><div></div></div></div>'; u = !0, e || (e = l), e.append(t), o = e.children('.loading-mask') } function r() { u || (i(), u = !0), o.removeClass('hide');} function a() { o.addClass('hide');} var o, s = n(2), l = s('.yoho-page'), u = !1; t.init = i, t.showLoadingMask = r, t.hideLoadingMask = a, t.show = r, t.hide = a }]);