(function($) {
    (function() {
        var a, b, c, d = function(a, b) {
                return function() {
                    return a.apply(b, arguments)
                }
            }, e = [].indexOf || function(a) {
                for (var b = 0, c = this.length; c > b; b++)
                    if (b in this && this[b] === a) return b;
                return -1
            };
        b = function() {
            function a() {}
            return a.prototype.extend = function(a, b) {
                var c, d;
                for (c in b) d = b[c], null == a[c] && (a[c] = d);
                return a
            }, a.prototype.isMobile = function(a) {
                return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)
            }, a
        }(), c = this.WeakMap || this.MozWeakMap || (c = function() {
            function a() {
                this.keys = [], this.values = []
            }
            return a.prototype.get = function(a) {
                var b, c, d, e, f;
                for (f = this.keys, b = d = 0, e = f.length; e > d; b = ++d)
                    if (c = f[b], c === a) return this.values[b]
            }, a.prototype.set = function(a, b) {
                var c, d, e, f, g;
                for (g = this.keys, c = e = 0, f = g.length; f > e; c = ++e)
                    if (d = g[c], d === a) return void(this.values[c] = b);
                return this.keys.push(a), this.values.push(b)
            }, a
        }()), a = this.MutationObserver || this.WebkitMutationObserver || this.MozMutationObserver || (a = function() {
            function a() {
                console.warn("MutationObserver is not supported by your browser."), console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.")
            }
            return a.notSupported = !0, a.prototype.observe = function() {}, a
        }()), this.WOW = function() {
            function f(a) {
                null == a && (a = {}), this.scrollCallback = d(this.scrollCallback, this), this.scrollHandler = d(this.scrollHandler, this), this.start = d(this.start, this), this.scrolled = !0, this.config = this.util().extend(a, this.defaults), this.animationNameCache = new c
            }
            return f.prototype.defaults = {
                boxClass: "wow",
                animateClass: "animated",
                offset: 0,
                mobile: !0,
                live: !0
            }, f.prototype.init = function() {
                var a;
                return this.element = window.document.documentElement, "interactive" === (a = document.readyState) || "complete" === a ? this.start() : document.addEventListener("DOMContentLoaded", this.start), this.finished = []
            }, f.prototype.start = function() {
                var b, c, d, e;
                if (this.stopped = !1, this.boxes = function() {
                    var a, c, d, e;
                    for (d = this.element.querySelectorAll("." + this.config.boxClass), e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b);
                    return e
                }.call(this), this.all = function() {
                    var a, c, d, e;
                    for (d = this.boxes, e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b);
                    return e
                }.call(this), this.boxes.length)
                    if (this.disabled()) this.resetStyle();
                    else {
                        for (e = this.boxes, c = 0, d = e.length; d > c; c++) b = e[c], this.applyStyle(b, !0);
                        window.addEventListener("scroll", this.scrollHandler, !1), window.addEventListener("resize", this.scrollHandler, !1), this.interval = setInterval(this.scrollCallback, 50)
                    }
                return this.config.live ? new a(function(a) {
                    return function(b) {
                        var c, d, e, f, g;
                        for (g = [], e = 0, f = b.length; f > e; e++) d = b[e], g.push(function() {
                            var a, b, e, f;
                            for (e = d.addedNodes || [], f = [], a = 0, b = e.length; b > a; a++) c = e[a], f.push(this.doSync(c));
                            return f
                        }.call(a));
                        return g
                    }
                }(this)).observe(document.body, {
                    childList: !0,
                    subtree: !0
                }) : void 0
            }, f.prototype.stop = function() {
                return this.stopped = !0, window.removeEventListener("scroll", this.scrollHandler, !1), window.removeEventListener("resize", this.scrollHandler, !1), null != this.interval ? clearInterval(this.interval) : void 0
            }, f.prototype.sync = function() {
                return a.notSupported ? this.doSync(this.element) : void 0
            }, f.prototype.doSync = function(a) {
                var b, c, d, f, g;
                if (!this.stopped) {
                    if (null == a && (a = this.element), 1 !== a.nodeType) return;
                    for (a = a.parentNode || a, f = a.querySelectorAll("." + this.config.boxClass), g = [], c = 0, d = f.length; d > c; c++) b = f[c], e.call(this.all, b) < 0 ? (this.applyStyle(b, !0), this.boxes.push(b), this.all.push(b), g.push(this.scrolled = !0)) : g.push(void 0);
                    return g
                }
            }, f.prototype.show = function(a) {
                return this.applyStyle(a), a.className = "" + a.className + " " + this.config.animateClass
            }, f.prototype.applyStyle = function(a, b) {
                var c, d, e;
                return d = a.getAttribute("data-wow-duration"), c = a.getAttribute("data-wow-delay"), e = a.getAttribute("data-wow-iteration"), this.animate(function(f) {
                    return function() {
                        return f.customStyle(a, b, d, c, e)
                    }
                }(this))
            }, f.prototype.animate = function() {
                return "requestAnimationFrame" in window ? function(a) {
                    return window.requestAnimationFrame(a)
                } : function(a) {
                    return a()
                }
            }(), f.prototype.resetStyle = function() {
                var a, b, c, d, e;
                for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], e.push(a.setAttribute("style", "visibility: visible;"));
                return e
            }, f.prototype.customStyle = function(a, b, c, d, e) {
                return b && this.cacheAnimationName(a), a.style.visibility = b ? "hidden" : "visible", c && this.vendorSet(a.style, {
                    animationDuration: c
                }), d && this.vendorSet(a.style, {
                    animationDelay: d
                }), e && this.vendorSet(a.style, {
                    animationIterationCount: e
                }), this.vendorSet(a.style, {
                    animationName: b ? "none" : this.cachedAnimationName(a)
                }), a
            }, f.prototype.vendors = ["moz", "webkit"], f.prototype.vendorSet = function(a, b) {
                var c, d, e, f;
                f = [];
                for (c in b) d = b[c], a["" + c] = d, f.push(function() {
                    var b, f, g, h;
                    for (g = this.vendors, h = [], b = 0, f = g.length; f > b; b++) e = g[b], h.push(a["" + e + c.charAt(0).toUpperCase() + c.substr(1)] = d);
                    return h
                }.call(this));
                return f
            }, f.prototype.vendorCSS = function(a, b) {
                var c, d, e, f, g, h;
                for (d = window.getComputedStyle(a), c = d.getPropertyCSSValue(b), h = this.vendors, f = 0, g = h.length; g > f; f++) e = h[f], c = c || d.getPropertyCSSValue("-" + e + "-" + b);
                return c
            }, f.prototype.animationName = function(a) {
                var b;
                try {
                    b = this.vendorCSS(a, "animation-name").cssText
                } catch (c) {
                    b = window.getComputedStyle(a).getPropertyValue("animation-name")
                }
                return "none" === b ? "" : b
            }, f.prototype.cacheAnimationName = function(a) {
                return this.animationNameCache.set(a, this.animationName(a))
            }, f.prototype.cachedAnimationName = function(a) {
                return this.animationNameCache.get(a)
            }, f.prototype.scrollHandler = function() {
                return this.scrolled = !0
            }, f.prototype.scrollCallback = function() {
                var a;
                return !this.scrolled || (this.scrolled = !1, this.boxes = function() {
                    var b, c, d, e;
                    for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], a && (this.isVisible(a) ? this.show(a) : e.push(a));
                    return e
                }.call(this), this.boxes.length || this.config.live) ? void 0 : this.stop()
            }, f.prototype.offsetTop = function(a) {
                for (var b; void 0 === a.offsetTop;) a = a.parentNode;
                for (b = a.offsetTop; a = a.offsetParent;) b += a.offsetTop;
                return b
            }, f.prototype.isVisible = function(a) {
                var b, c, d, e, f;
                return c = a.getAttribute("data-wow-offset") || this.config.offset, f = window.pageYOffset, e = f + Math.min(this.element.clientHeight, innerHeight) - c, d = this.offsetTop(a), b = d + a.clientHeight, e >= d && b >= f
            }, f.prototype.util = function() {
                return null != this._util ? this._util : this._util = new b
            }, f.prototype.disabled = function() {
                return !this.config.mobile && this.util().isMobile(navigator.userAgent)
            }, f
        }()
    }).call(this);
}(jQuery));
(function($) {
    eval(function(p, a, c, k, e, r) {
        e = function(c) {
            return (c < a ? '' : e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36))
        };
        if (!''.replace(/^/, String)) {
            while (c--) r[e(c)] = k[c] || e(c);
            k = [
                function(e) {
                    return r[e]
                }
            ];
            e = function() {
                return '\\w+'
            };
            c = 1
        };
        while (c--)
            if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]);
        return p
    }('7(F 3v.2K!=="9"){3v.2K=9(e){9 t(){}t.5C=e;q 5B t}}(9(e,t,n,r){b i={1K:9(t,n){b r=c;r.6=e.3F({},e.3g.28.6,t);r.27=t;b i=n;b s=e(n);r.$k=s;r.3G()},3G:9(){b t=c;7(F t.6.2Y==="9"){t.6.2Y.U(c,[t.$k])}7(F t.6.38==="3a"){b n=t.6.38;9 r(e){7(F t.6.3d==="9"){t.6.3d.U(c,[e])}p{b n="";1Z(b r 3x e["h"]){n+=e["h"][r]["1W"]}t.$k.29(n)}t.2R()}e.5w(n,r)}p{t.2R()}},2R:9(e){b t=c;t.$k.A({23:0});t.2n=t.6.v;t.3M();t.5p=0;t.21;t.1L()},1L:9(){b e=c;7(e.$k.1Q().14===0){q d}e.1M();e.3T();e.$V=e.$k.1Q();e.J=e.$V.14;e.3Z();e.$L=e.$k.Z(".h-1W");e.$H=e.$k.Z(".h-1g");e.3e="R";e.1i=0;e.m=0;e.40();e.42()},42:9(){b e=c;e.2H();e.2I();e.4c();e.2L();e.4e();e.4f();e.22();e.4l();7(e.6.2j!==d){e.4o(e.6.2j)}7(e.6.N===j){e.6.N=4I}e.1b();e.$k.Z(".h-1g").A("4D","4E");7(!e.$k.2x(":32")){e.37()}p{e.$k.A("23",1)}e.5j=d;e.2l();7(F e.6.3b==="9"){e.6.3b.U(c,[e.$k])}},2l:9(){b e=c;7(e.6.1J===j){e.1J()}7(e.6.1q===j){e.1q()}7(e.6.2g===j){e.2g()}7(F e.6.3i==="9"){e.6.3i.U(c,[e.$k])}},3j:9(){b e=c;7(F e.6.3l==="9"){e.6.3l.U(c,[e.$k])}e.37();e.2H();e.2I();e.4C();e.2L();e.2l();7(F e.6.3o==="9"){e.6.3o.U(c,[e.$k])}},4B:9(e){b t=c;19(9(){t.3j()},0)},37:9(){b e=c;7(e.$k.2x(":32")===d){e.$k.A({23:0});1a(e.1u);1a(e.21)}p{q d}e.21=4z(9(){7(e.$k.2x(":32")){e.4B();e.$k.4y({23:1},2E);1a(e.21)}},4J)},3Z:9(){b e=c;e.$V.4U(\'<M K="h-1g">\').4u(\'<M K="h-1W"></M>\');e.$k.Z(".h-1g").4u(\'<M K="h-1g-4t">\');e.1D=e.$k.Z(".h-1g-4t");e.$k.A("4D","4E")},1M:9(){b e=c;b t=e.$k.1H(e.6.1M);b n=e.$k.1H(e.6.24);e.$k.w("h-4s",e.$k.2c("2d")).w("h-4r",e.$k.2c("K"));7(!t){e.$k.I(e.6.1M)}7(!n){e.$k.I(e.6.24)}},2H:9(){b t=c;7(t.6.2V===d){q d}7(t.6.4q===j){t.6.v=t.2n=1;t.6.1v=d;t.6.1I=d;t.6.1X=d;t.6.1A=d;t.6.1E=d;q d}b n=e(t.6.4p).1h();7(n>(t.6.1v[0]||t.2n)){t.6.v=t.2n}7(n<=t.6.1v[0]&&t.6.1v!==d){t.6.v=t.6.1v[1]}7(n<=t.6.1I[0]&&t.6.1I!==d){t.6.v=t.6.1I[1]}7(n<=t.6.1X[0]&&t.6.1X!==d){t.6.v=t.6.1X[1]}7(n<=t.6.1A[0]&&t.6.1A!==d){t.6.v=t.6.1A[1]}7(n<=t.6.1E[0]&&t.6.1E!==d){t.6.v=t.6.1E[1]}7(t.6.v>t.J){t.6.v=t.J}},4e:9(){b n=c,r;7(n.6.2V!==j){q d}b i=e(t).1h();n.33=9(){7(e(t).1h()!==i){7(n.6.N!==d){1a(n.1u)}4V(r);r=19(9(){i=e(t).1h();n.3j()},n.6.4n)}};e(t).4m(n.33)},4C:9(){b e=c;7(e.B.1j===j){7(e.D[e.m]>e.2a){e.1k(e.D[e.m])}p{e.1k(0);e.m=0}}p{7(e.D[e.m]>e.2a){e.16(e.D[e.m])}p{e.16(0);e.m=0}}7(e.6.N!==d){e.3f()}},4i:9(){b t=c;b n=0;b r=t.J-t.6.v;t.$L.2h(9(i){b s=e(c);s.A({1h:t.P}).w("h-1W",3k(i));7(i%t.6.v===0||i===r){7(!(i>r)){n+=1}}s.w("h-2y",n)})},4h:9(){b e=c;b t=0;b t=e.$L.14*e.P;e.$H.A({1h:t*2,X:0});e.4i()},2I:9(){b e=c;e.4g();e.4h();e.4b();e.3t()},4g:9(){b e=c;e.P=1P.57(e.$k.1h()/e.6.v)},3t:9(){b e=c;e.E=e.J-e.6.v;b t=e.J*e.P-e.6.v*e.P;t=t*-1;e.2a=t;q t},47:9(){q 0},4b:9(){b e=c;e.D=[0];b t=0;1Z(b n=0;n<e.J;n++){t+=e.P;e.D.58(-t)}},4c:9(){b t=c;7(t.6.25===j||t.6.1t===j){t.G=e(\'<M K="h-59"/>\').5a("5b",!t.B.Y).5d(t.$k)}7(t.6.1t===j){t.3V()}7(t.6.25===j){t.3R()}},3R:9(){b t=c;b n=e(\'<M K="h-5l"/>\');t.G.1e(n);t.1s=e("<M/>",{"K":"h-1o",29:t.6.2P[0]||""});t.1z=e("<M/>",{"K":"h-R",29:t.6.2P[1]||""});n.1e(t.1s).1e(t.1z);n.z("2s.G 2u.G",\'M[K^="h"]\',9(n){n.1r();7(e(c).1H("h-R")){t.R()}p{t.1o()}})},3V:9(){b t=c;t.1p=e(\'<M K="h-1t"/>\');t.G.1e(t.1p);t.1p.z("2s.G 2u.G",".h-1n",9(n){n.1r();7(3k(e(c).w("h-1n"))!==t.m){t.1m(3k(e(c).w("h-1n")),j)}})},3J:9(){b t=c;7(t.6.1t===d){q d}t.1p.29("");b n=0;b r=t.J-t.J%t.6.v;1Z(b i=0;i<t.J;i++){7(i%t.6.v===0){n+=1;7(r===i){b s=t.J-t.6.v}b o=e("<M/>",{"K":"h-1n"});b u=e("<3H></3H>",{5x:t.6.31===j?n:"","K":t.6.31===j?"h-5y":""});o.1e(u);o.w("h-1n",r===i?s:i);o.w("h-2y",n);t.1p.1e(o)}}t.2O()},2O:9(){b t=c;7(t.6.1t===d){q d}t.1p.Z(".h-1n").2h(9(n,r){7(e(c).w("h-2y")===e(t.$L[t.m]).w("h-2y")){t.1p.Z(".h-1n").S("2e");e(c).I("2e")}})},36:9(){b e=c;7(e.6.25===d){q d}7(e.6.2f===d){7(e.m===0&&e.E===0){e.1s.I("15");e.1z.I("15")}p 7(e.m===0&&e.E!==0){e.1s.I("15");e.1z.S("15")}p 7(e.m===e.E){e.1s.S("15");e.1z.I("15")}p 7(e.m!==0&&e.m!==e.E){e.1s.S("15");e.1z.S("15")}}},2L:9(){b e=c;e.3J();e.36();7(e.G){7(e.6.v===e.J){e.G.3E()}p{e.G.3B()}}},5A:9(){b e=c;7(e.G){e.G.3c()}},R:9(e){b t=c;7(t.1S){q d}t.1T=t.m;t.m+=t.6.1U===j?t.6.v:1;7(t.m>t.E+(t.6.1U==j?t.6.v-1:0)){7(t.6.2f===j){t.m=0;e="2m"}p{t.m=t.E;q d}}t.1m(t.m,e)},1o:9(e){b t=c;7(t.1S){q d}t.1T=t.m;7(t.6.1U===j&&t.m>0&&t.m<t.6.v){t.m=0}p{t.m-=t.6.1U===j?t.6.v:1}7(t.m<0){7(t.6.2f===j){t.m=t.E;e="2m"}p{t.m=0;q d}}t.1m(t.m,e)},1m:9(e,t,n){b r=c;7(r.1S){q d}r.3h();7(F r.6.1V==="9"){r.6.1V.U(c,[r.$k])}7(e>=r.E){e=r.E}p 7(e<=0){e=0}r.m=r.h.m=e;7(r.6.2j!==d&&n!=="4w"&&r.6.v===1&&r.B.1j===j){r.1x(0);7(r.B.1j===j){r.1k(r.D[e])}p{r.16(r.D[e],1)}r.3z();r.2q();q d}b i=r.D[e];7(r.B.1j===j){r.1Y=d;7(t===j){r.1x("1y");19(9(){r.1Y=j},r.6.1y)}p 7(t==="2m"){r.1x(r.6.2t);19(9(){r.1Y=j},r.6.2t)}p{r.1x("1f");19(9(){r.1Y=j},r.6.1f)}r.1k(i)}p{7(t===j){r.16(i,r.6.1y)}p 7(t==="2m"){r.16(i,r.6.2t)}p{r.16(i,r.6.1f)}}r.2q()},3h:9(){b e=c;e.1i=e.h.1i=e.1T===r?e.m:e.1T;e.1T=r},3r:9(e){b t=c;t.3h();7(F t.6.1V==="9"){t.6.1V.U(c,[t.$k])}7(e>=t.E||e===-1){e=t.E}p 7(e<=0){e=0}t.1x(0);7(t.B.1j===j){t.1k(t.D[e])}p{t.16(t.D[e],1)}t.m=t.h.m=e;t.2q()},2q:9(){b e=c;e.2O();e.36();e.2l();7(F e.6.3s==="9"){e.6.3s.U(c,[e.$k])}7(e.6.N!==d){e.3f()}},W:9(){b e=c;e.3u="W";1a(e.1u)},3f:9(){b e=c;7(e.3u!=="W"){e.1b()}},1b:9(){b e=c;e.3u="1b";7(e.6.N===d){q d}1a(e.1u);e.1u=4z(9(){e.R(j)},e.6.N)},1x:9(e){b t=c;7(e==="1f"){t.$H.A(t.2w(t.6.1f))}p 7(e==="1y"){t.$H.A(t.2w(t.6.1y))}p 7(F e!=="3a"){t.$H.A(t.2w(e))}},2w:9(e){b t=c;q{"-1G-1d":"2p "+e+"1w 2i","-1R-1d":"2p "+e+"1w 2i","-o-1d":"2p "+e+"1w 2i",1d:"2p "+e+"1w 2i"}},3C:9(){q{"-1G-1d":"","-1R-1d":"","-o-1d":"",1d:""}},3D:9(e){q{"-1G-O":"1l("+e+"T, C, C)","-1R-O":"1l("+e+"T, C, C)","-o-O":"1l("+e+"T, C, C)","-1w-O":"1l("+e+"T, C, C)",O:"1l("+e+"T, C,C)"}},1k:9(e){b t=c;t.$H.A(t.3D(e))},3I:9(e){b t=c;t.$H.A({X:e})},16:9(e,t){b n=c;n.26=d;n.$H.W(j,j).4y({X:e},{5r:t||n.6.1f,3L:9(){n.26=j}})},3M:9(){b e=c;b r="1l(C, C, C)",i=n.5q("M");i.2d.3N="  -1R-O:"+r+"; -1w-O:"+r+"; -o-O:"+r+"; -1G-O:"+r+"; O:"+r;b s=/1l\\(C, C, C\\)/g,o=i.2d.3N.5n(s),u=o!==18&&o.14===1;b a="4F"3x t||5h.5e;e.B={1j:u,Y:a}},4f:9(){b e=c;7(e.6.1C!==d||e.6.1B!==d){e.3X();e.3Y()}},3T:9(){b e=c;b t=["s","e","x"];e.13={};7(e.6.1C===j&&e.6.1B===j){t=["41.h 2b.h","2A.h 44.h","2s.h 45.h 2u.h"]}p 7(e.6.1C===d&&e.6.1B===j){t=["41.h","2A.h","2s.h 45.h"]}p 7(e.6.1C===j&&e.6.1B===d){t=["2b.h","44.h","2u.h"]}e.13["46"]=t[0];e.13["2z"]=t[1];e.13["3w"]=t[2]},3Y:9(){b t=c;t.$k.z("55.h",9(e){e.1r()});t.$k.z("2b.4a",9(t){q e(t.1c).2x("54, 52, 51, 4Y")})},3X:9(){9 o(e){7(e.3p){q{x:e.3p[0].3m,y:e.3p[0].4j}}p{7(e.3m!==r){q{x:e.3m,y:e.4j}}p{q{x:e.4X,y:e.4W}}}}9 u(t){7(t==="z"){e(n).z(i.13["2z"],f);e(n).z(i.13["3w"],l)}p 7(t==="Q"){e(n).Q(i.13["2z"]);e(n).Q(i.13["3w"])}}9 a(n){b n=n.35||n||t.34;7(i.26===d&&!i.6.30){q d}7(i.1Y===d&&!i.6.30){q d}7(i.6.N!==d){1a(i.1u)}7(i.B.Y!==j&&!i.$H.1H("2W")){i.$H.I("2W")}i.11=0;i.12=0;e(c).A(i.3C());b r=e(c).2k();s.2J=r.X;s.2G=o(n).x-r.X;s.2F=o(n).y-r.4H;u("z");s.2o=d;s.2C=n.1c||n.4A}9 f(r){b r=r.35||r||t.34;i.11=o(r).x-s.2G;i.3q=o(r).y-s.2F;i.12=i.11-s.2J;7(F i.6.3n==="9"&&s.39!==j&&i.12!==0){s.39=j;i.6.3n.U(c)}7(i.12>8||i.12<-8&&i.B.Y===j){r.1r?r.1r():r.4G=d;s.2o=j}7((i.3q>10||i.3q<-10)&&s.2o===d){e(n).Q("2A.h")}b u=9(){q i.12/5};b a=9(){q i.2a+i.12/5};i.11=1P.3t(1P.47(i.11,u()),a());7(i.B.1j===j){i.1k(i.11)}p{i.3I(i.11)}}9 l(n){b n=n.35||n||t.34;n.1c=n.1c||n.4A;s.39=d;7(i.B.Y!==j){i.$H.S("2W")}7(i.12!==0){b r=i.4x();i.1m(r,d,"4w");7(s.2C===n.1c&&i.B.Y!==j){e(n.1c).z("2X.3y",9(t){t.4K();t.4L();t.1r();e(n.1c).Q("2X.3y")});b o=e.4M(n.1c,"4N")["2X"];b a=o.4O();o.4P(0,0,a)}}u("Q")}b i=c;b s={2G:0,2F:0,4Q:0,2J:0,2k:18,4R:18,4S:18,2o:18,4T:18,2C:18};i.26=j;i.$k.z(i.13["46"],".h-1g",a)},4x:9(){b e=c,t;b t=e.4v();7(t>e.E){e.m=e.E;t=e.E}p 7(e.11>=0){t=0;e.m=0}q t},4v:9(){b t=c;b n=t.D;b r=t.11;b i=18;e.2h(n,9(e,s){7(r-t.P/20>n[e+1]&&r-t.P/20<s&&t.2Q()==="X"){i=s;t.m=e}p 7(r+t.P/20<s&&r+t.P/20>n[e+1]&&t.2Q()==="4k"){i=n[e+1];t.m=e+1}});q t.m},2Q:9(){b e=c,t;7(e.12<0){t="4k";e.3e="R"}p{t="X";e.3e="1o"}q t},40:9(){b e=c;e.$k.z("h.R",9(){e.R()});e.$k.z("h.1o",9(){e.1o()});e.$k.z("h.1b",9(t,n){e.6.N=n;e.1b();e.2N="1b"});e.$k.z("h.W",9(){e.W();e.2N="W"});e.$k.z("h.1m",9(t,n){e.1m(n)});e.$k.z("h.3r",9(t,n){e.3r(n)})},22:9(){b e=c;7(e.6.22===j&&e.B.Y!==j&&e.6.N!==d){e.$k.z("4Z",9(){e.W()});e.$k.z("50",9(){7(e.2N!=="W"){e.1b()}})}},1J:9(){b t=c;7(t.6.1J===d){q d}1Z(b n=0;n<t.J;n++){b i=e(t.$L[n]);7(i.w("h-17")==="17"){4d}b s=i.w("h-1W"),o=i.Z(".53"),u;7(F o.w("2r")!=="3a"){i.w("h-17","17");4d}7(i.w("h-17")===r){o.3E();i.I("49").w("h-17","56")}7(t.6.48===j){u=s>=t.m}p{u=j}7(u&&s<t.m+t.6.v&&o.14){t.43(i,o)}}},43:9(e,t){9 i(){r+=1;7(n.2D(t.2B(0))){s()}p 7(r<=2v){19(i,2v)}p{s()}}9 s(){e.w("h-17","17").S("49");t.5c("w-2r");n.6.3W==="3U"?t.5f(5g):t.3B()}b n=c,r=0;t[0].2r=t.w("2r");i()},1q:9(){9 s(){i+=1;7(t.2D(n.2B(0))){o()}p 7(i<=2v){19(s,2v)}p{t.1D.A("2S","")}}9 o(){b n=e(t.$L[t.m]).2S();t.1D.A("2S",n+"T");7(!t.1D.1H("1q")){19(9(){t.1D.I("1q")},0)}}b t=c;b n=e(t.$L[t.m]).Z("5i");7(n.2B(0)!==r){b i=0;s()}p{o()}},2D:9(e){7(!e.3L){q d}7(F e.3S!=="5k"&&e.3S==0){q d}q j},2g:9(){b t=c;t.$L.S("2e");1Z(b n=t.m;n<t.m+t.6.v;n++){e(t.$L[n]).I("2e")}},4o:9(e){b t=c;t.3Q="h-"+e+"-5m";t.3P="h-"+e+"-3x"},3z:9(){9 u(e,t){q{2k:"5o",X:e+"T"}}b e=c;e.1S=j;b t=e.3Q,n=e.3P,r=e.$L.1O(e.m),i=e.$L.1O(e.1i),s=1P.3O(e.D[e.m])+e.D[e.1i],o=1P.3O(e.D[e.m])+e.P/2;e.$H.I("h-1F").A({"-1G-O-1F":o+"T","-1R-3K-1F":o+"T","3K-1F":o+"T"});b a="5s 5t 5u 5v";i.A(u(s,10)).I(t).z(a,9(){e.2T=j;i.Q(a);e.2U(i,t)});r.I(n).z(a,9(){e.2Z=j;r.Q(a);e.2U(r,n)})},2U:9(e,t){b n=c;e.A({2k:"",X:""}).S(t);7(n.2T&&n.2Z){n.$H.S("h-1F");n.2T=d;n.2Z=d;n.1S=d}},4l:9(){b e=c;e.h={27:e.27,5z:e.$k,V:e.$V,L:e.$L,m:e.m,1i:e.1i,Y:e.B.Y,B:e.B}},3A:9(){b r=c;r.$k.Q(".h h 2b.4a");e(n).Q(".h h");e(t).Q("4m",r.33)},1N:9(){b e=c;7(e.$k.1Q().14!==0){e.$H.2M();e.$V.2M().2M();7(e.G){e.G.3c()}}e.3A();e.$k.2c("2d",e.$k.w("h-4s")||"").2c("K",e.$k.w("h-4r"))},5D:9(){b e=c;e.W();1a(e.21);e.1N();e.$k.5E()},5F:9(t){b n=c;b r=e.3F({},n.27,t);n.1N();n.1K(r,n.$k)},5G:9(e,t){b n=c,i;7(!e){q d}7(n.$k.1Q().14===0){n.$k.1e(e);n.1L();q d}n.1N();7(t===r||t===-1){i=-1}p{i=t}7(i>=n.$V.14||i===-1){n.$V.1O(-1).5H(e)}p{n.$V.1O(i).5I(e)}n.1L()},5J:9(e){b t=c,n;7(t.$k.1Q().14===0){q d}7(e===r||e===-1){n=-1}p{n=e}t.1N();t.$V.1O(n).3c();t.1L()}};e.3g.28=9(t){q c.2h(9(){7(e(c).w("h-1K")===j){q d}e(c).w("h-1K",j);b n=3v.2K(i);n.1K(t,c);e.w(c,"28",n)})};e.3g.28.6={v:5,1v:[5K,4],1I:[5L,3],1X:[5M,2],1A:d,1E:[5N,1],4q:d,1f:2E,1y:5O,2t:5P,N:d,22:d,25:d,2P:["1o","R"],2f:j,1U:d,1t:j,31:d,2V:j,4n:2E,4p:t,1M:"h-5Q",24:"h-24",1J:d,48:j,3W:"3U",1q:d,38:d,3d:d,30:j,1C:j,1B:j,2g:d,2j:d,3l:d,3o:d,2Y:d,3b:d,1V:d,3s:d,3i:d,3n:d}})(5R,5S,5T)', 62, 366, '||||||options|if||function||var|this|false||||owl||true|elem||currentItem|||else|return|||||items|data|||on|css|browser|0px|positionsInArray|maximumItem|typeof|owlControls|owlWrapper|addClass|itemsAmount|class|owlItems|div|autoPlay|transform|itemWidth|off|next|removeClass|px|apply|userItems|stop|left|isTouch|find||newPosX|newRelativeX|ev_types|length|disabled|css2slide|loaded|null|setTimeout|clearInterval|play|target|transition|append|slideSpeed|wrapper|width|prevItem|support3d|transition3d|translate3d|goTo|page|prev|paginationWrapper|autoHeight|preventDefault|buttonPrev|pagination|autoPlayInterval|itemsDesktop|ms|swapSpeed|paginationSpeed|buttonNext|itemsTabletSmall|touchDrag|mouseDrag|wrapperOuter|itemsMobile|origin|webkit|hasClass|itemsDesktopSmall|lazyLoad|init|setVars|baseClass|unWrap|eq|Math|children|moz|isTransition|storePrevItem|scrollPerPage|beforeMove|item|itemsTablet|isCss3Finish|for||checkVisible|stopOnHover|opacity|theme|navigation|isCssFinish|userOptions|owlCarousel|html|maximumPixels|mousedown|attr|style|active|rewindNav|addClassActive|each|ease|transitionStyle|position|eachMoveUpdate|rewind|orignalItems|sliding|all|afterGo|src|touchend|rewindSpeed|mouseup|100|addCssSpeed|is|roundPages|move|touchmove|get|targetElement|completeImg|200|offsetY|offsetX|updateItems|calculateAll|relativePos|create|updateControls|unwrap|hoverStatus|checkPagination|navigationText|moveDirection|logIn|height|endPrev|clearTransStyle|responsive|grabbing|click|beforeInit|endCurrent|dragBeforeAnimFinish|paginationNumbers|visible|resizer|event|originalEvent|checkNavigation|watchVisibility|jsonPath|dragging|string|afterInit|remove|jsonSuccess|playDirection|checkAp|fn|getPrevItem|afterAction|updateVars|Number|beforeUpdate|pageX|startDragging|afterUpdate|touches|newPosY|jumpTo|afterMove|max|apStatus|Object|end|in|disable|singleItemTransition|clearEvents|show|removeTransition|doTranslate|hide|extend|loadContent|span|css2move|updatePagination|perspective|complete|checkBrowser|cssText|abs|inClass|outClass|buildButtons|naturalWidth|eventTypes|fade|buildPagination|lazyEffect|gestures|disabledEvents|wrapItems|customEvents|touchstart|onStartup|lazyPreload|mousemove|touchcancel|start|min|lazyFollow|loading|disableTextSelect|loops|buildControls|continue|response|moveEvents|calculateWidth|appendWrapperSizes|appendItemsSizes|pageY|right|owlStatus|resize|responsiveRefreshRate|transitionTypes|responsiveBaseWidth|singleItem|originalClasses|originalStyles|outer|wrap|improveClosest|drag|getNewPosition|animate|setInterval|srcElement|reload|updatePosition|display|block|ontouchstart|returnValue|top|5e3|500|stopImmediatePropagation|stopPropagation|_data|events|pop|splice|baseElWidth|minSwipe|maxSwipe|dargging|wrapAll|clearTimeout|clientY|clientX|option|mouseover|mouseout|select|textarea|lazyOwl|input|dragstart|checked|round|push|controls|toggleClass|clickable|removeAttr|appendTo|msMaxTouchPoints|fadeIn|400|navigator|img|onstartup|undefined|buttons|out|match|relative|wrapperWidth|createElement|duration|webkitAnimationEnd|oAnimationEnd|MSAnimationEnd|animationend|getJSON|text|numbers|baseElement|destroyControls|new|prototype|destroy|removeData|reinit|addItem|after|before|removeItem|1199|979|768|479|800|1e3|carousel|jQuery|window|document'.split('|'), 0, {}))
}(jQuery));
(function($) {
    (function(e, t, n, r) {
        n.swipebox = function(i, s) {
            var o = {
                useCSS: true,
                hideBarsDelay: 3e3
            }, u = this,
                a = n(i),
                i = i,
                f = i.selector,
                l = n(f),
                c = t.createTouch !== r || "ontouchstart" in e || "onmsgesturechange" in e || navigator.msMaxTouchPoints,
                h = !! e.SVGSVGElement,
                p = '<div id="swipebox-overlay">     <div id="swipebox-slider"></div>     <div id="swipebox-caption"></div>     <div id="swipebox-action">      <a id="swipebox-close"></a>      <a id="swipebox-prev"></a>      <a id="swipebox-next"></a>     </div>   </div>';
            u.settings = {};
            u.init = function() {
                u.settings = n.extend({}, o, s);
                l.click(function(e) {
                    e.preventDefault();
                    e.stopPropagation();
                    index = a.index(n(this));
                    d.target = n(e.target);
                    d.init(index)
                })
            };
            var d = {
                init: function(e) {
                    this.target.trigger("swipebox-start");
                    this.build();
                    this.openSlide(e);
                    this.openImg(e);
                    this.preloadImg(e + 1);
                    this.preloadImg(e - 1)
                },
                build: function() {
                    var t = this;
                    n("body").append(p);
                    if (t.doCssTrans()) {
                        n("#swipebox-slider").css({
                            "-webkit-transition": "left 0.4s ease",
                            "-moz-transition": "left 0.4s ease",
                            "-o-transition": "left 0.4s ease",
                            "-khtml-transition": "left 0.4s ease",
                            transition: "left 0.4s ease"
                        });
                        n("#swipebox-overlay").css({
                            "-webkit-transition": "opacity 1s ease",
                            "-moz-transition": "opacity 1s ease",
                            "-o-transition": "opacity 1s ease",
                            "-khtml-transition": "opacity 1s ease",
                            transition: "opacity 1s ease"
                        });
                        n("#swipebox-action, #swipebox-caption").css({
                            "-webkit-transition": "0.5s",
                            "-moz-transition": "0.5s",
                            "-o-transition": "0.5s",
                            "-khtml-transition": "0.5s",
                            transition: "0.5s"
                        })
                    }
                    if (h) {
                        var r = n("#swipebox-action #swipebox-close").css("background-image");
                        r = r.replace("png", "svg");
                        n("#swipebox-action #swipebox-prev,#swipebox-action #swipebox-next,#swipebox-action #swipebox-close").css({
                            "background-image": r
                        })
                    }
                    a.each(function() {
                        n("#swipebox-slider").append('<div class="slide"></div>')
                    });
                    t.setDim();
                    t.actions();
                    t.keyboard();
                    t.gesture();
                    t.animBars();
                    n(e).resize(function() {
                        t.setDim()
                    }).resize()
                },
                setDim: function() {
                    var t = {
                        width: n(e).width(),
                        height: e.innerHeight ? e.innerHeight : n(e).height()
                    };
                    n("#swipebox-overlay").css(t)
                },
                supportTransition: function() {
                    var e = "transition WebkitTransition MozTransition OTransition msTransition KhtmlTransition".split(" ");
                    for (var n = 0; n < e.length; n++) {
                        if (t.createElement("div").style[e[n]] !== r) {
                            return e[n]
                        }
                    }
                    return false
                },
                doCssTrans: function() {
                    if (u.settings.useCSS && this.supportTransition()) {
                        return true
                    }
                },
                gesture: function() {
                    if (c) {
                        var e = this,
                            t = null,
                            r = 10,
                            i = {}, s = {};
                        var o = n("#swipebox-caption, #swipebox-action");
                        o.addClass("visible-bars");
                        e.setTimeout();
                        n("body").bind("touchstart", function(e) {
                            n(this).addClass("touching");
                            s = e.originalEvent.targetTouches[0];
                            i.pageX = e.originalEvent.targetTouches[0].pageX;
                            n(".touching").bind("touchmove", function(e) {
                                e.preventDefault();
                                e.stopPropagation();
                                s = e.originalEvent.targetTouches[0]
                            });
                            return false
                        }).bind("touchend", function(u) {
                            u.preventDefault();
                            u.stopPropagation();
                            t = s.pageX - i.pageX;
                            if (t >= r) {
                                e.getPrev()
                            } else if (t <= -r) {
                                e.getNext()
                            } else {
                                if (!o.hasClass("visible-bars")) {
                                    e.showBars();
                                    e.setTimeout()
                                } else {
                                    e.clearTimeout();
                                    e.hideBars()
                                }
                            }
                            n(".touching").off("touchmove").removeClass("touching")
                        })
                    }
                },
                setTimeout: function() {
                    if (u.settings.hideBarsDelay > 0) {
                        var t = this;
                        t.clearTimeout();
                        t.timeout = e.setTimeout(function() {
                            t.hideBars()
                        }, u.settings.hideBarsDelay)
                    }
                },
                clearTimeout: function() {
                    e.clearTimeout(this.timeout);
                    this.timeout = null
                },
                showBars: function() {
                    var e = n("#swipebox-caption, #swipebox-action");
                    if (this.doCssTrans()) {
                        e.addClass("visible-bars")
                    } else {
                        n("#swipebox-caption").animate({
                            top: 0
                        }, 500);
                        n("#swipebox-action").animate({
                            bottom: 0
                        }, 500);
                        setTimeout(function() {
                            e.addClass("visible-bars")
                        }, 1e3)
                    }
                },
                hideBars: function() {
                    var e = n("#swipebox-caption, #swipebox-action");
                    if (this.doCssTrans()) {
                        e.removeClass("visible-bars")
                    } else {
                        n("#swipebox-caption").animate({
                            top: "-50px"
                        }, 500);
                        n("#swipebox-action").animate({
                            bottom: "-50px"
                        }, 500);
                        setTimeout(function() {
                            e.removeClass("visible-bars")
                        }, 1e3)
                    }
                },
                animBars: function() {
                    var e = this;
                    var t = n("#swipebox-caption, #swipebox-action");
                    t.addClass("visible-bars");
                    e.setTimeout();
                    n("#swipebox-slider").click(function(n) {
                        if (!t.hasClass("visible-bars")) {
                            e.showBars();
                            e.setTimeout()
                        }
                    });
                    n("#swipebox-action").hover(function() {
                        e.showBars();
                        t.addClass("force-visible-bars");
                        e.clearTimeout()
                    }, function() {
                        t.removeClass("force-visible-bars");
                        e.setTimeout()
                    })
                },
                keyboard: function() {
                    var t = this;
                    n(e).bind("keyup", function(e) {
                        e.preventDefault();
                        e.stopPropagation();
                        if (e.keyCode == 37) {
                            t.getPrev()
                        } else if (e.keyCode == 39) {
                            t.getNext()
                        } else if (e.keyCode == 27) {
                            t.closeSlide()
                        }
                    })
                },
                actions: function() {
                    var e = this;
                    if (a.length < 2) {
                        n("#swipebox-prev, #swipebox-next").hide()
                    } else {
                        n("#swipebox-prev").bind("click touchend", function(t) {
                            t.preventDefault();
                            t.stopPropagation();
                            e.getPrev();
                            e.setTimeout()
                        });
                        n("#swipebox-next").bind("click touchend", function(t) {
                            t.preventDefault();
                            t.stopPropagation();
                            e.getNext();
                            e.setTimeout()
                        })
                    }
                    n("#swipebox-close").bind("click touchend", function(t) {
                        e.closeSlide()
                        $('.gallery').delay(01).show(0);
                        $('.portfolio-wide').delay(01).show(0);
                    })
                },
                setSlide: function(e, t) {
                    t = t || false;
                    var r = n("#swipebox-slider");
                    if (this.doCssTrans()) {
                        r.css({
                            left: -e * 100 + "%"
                        })
                    } else {
                        r.animate({
                            left: -e * 100 + "%"
                        })
                    }
                    n("#swipebox-slider .slide").removeClass("current");
                    n("#swipebox-slider .slide").eq(e).addClass("current");
                    this.setTitle(e);
                    if (t) {
                        r.fadeIn()
                    }
                    n("#swipebox-prev, #swipebox-next").removeClass("disabled");
                    if (e == 0) {
                        n("#swipebox-prev").addClass("disabled")
                    } else if (e == a.length - 1) {
                        n("#swipebox-next").addClass("disabled")
                    }
                },
                openSlide: function(t) {
                    n("html").addClass("swipebox");
                    n(e).trigger("resize");
                    this.setSlide(t, true)
                },
                preloadImg: function(e) {
                    var t = this;
                    setTimeout(function() {
                        t.openImg(e)
                    }, 1e3)
                },
                openImg: function(e) {
                    var t = this;
                    if (e < 0 || e >= a.length) {
                        return false
                    }
                    t.loadImg(a.eq(e).attr("href"), function() {
                        n("#swipebox-slider .slide").eq(e).html(this)
                    })
                },
                setTitle: function(e, t) {
                    n("#swipebox-caption").empty();
                    if (a.eq(e).attr("title")) {
                        n("#swipebox-caption").append(a.eq(e).attr("title"))
                    }
                },
                loadImg: function(e, t) {
                    var r = n("<img>").on("load", function() {
                        t.call(r)
                    });
                    r.attr("src", e)
                },
                getNext: function() {
                    var e = this;
                    index = n("#swipebox-slider .slide").index(n("#swipebox-slider .slide.current"));
                    if (index + 1 < a.length) {
                        index++;
                        e.setSlide(index);
                        e.preloadImg(index + 1)
                    } else {
                        n("#swipebox-slider").addClass("rightSpring");
                        setTimeout(function() {
                            n("#swipebox-slider").removeClass("rightSpring")
                        }, 500)
                    }
                },
                getPrev: function() {
                    var e = this;
                    index = n("#swipebox-slider .slide").index(n("#swipebox-slider .slide.current"));
                    if (index > 0) {
                        index--;
                        e.setSlide(index);
                        e.preloadImg(index - 1)
                    } else {
                        n("#swipebox-slider").addClass("leftSpring");
                        setTimeout(function() {
                            n("#swipebox-slider").removeClass("leftSpring")
                        }, 500)
                    }
                },
                closeSlide: function() {
                    var t = this;
                    n(e).trigger("resize");
                    n("html").removeClass("swipebox");
                    t.destroy()
                },
                destroy: function() {
                    var t = this;
                    n(e).unbind("keyup");
                    n("body").unbind("touchstart");
                    n("body").unbind("touchmove");
                    n("body").unbind("touchend");
                    n("#swipebox-slider").unbind();
                    n("#swipebox-overlay").remove();
                    a.removeData("_swipebox");
                    t.target.trigger("swipebox-destroy")
                }
            };
            u.init()
        };
        n.fn.swipebox = function(e) {
            if (!n.data(this, "_swipebox")) {
                var t = new n.swipebox(this, e);
                this.data("_swipebox", t)
            }
        }
    })(window, document, jQuery)
}(jQuery));
(function($) {
    var pluginName = "ScrollIt",
        pluginVersion = "1.0.3";
    var defaults = {
        upKey: 38,
        downKey: 40,
        easing: "linear",
        scrollTime: 600,
        activeClass: "active",
        onPageChange: null,
        topOffset: 0
    };
    $.scrollIt = function(options) {
        var settings = $.extend(defaults, options),
            active = 0,
            lastIndex = $("[data-scroll-index]:last").attr("data-scroll-index");
        var navigate = function(ndx) {
            if (ndx < 0 || ndx > lastIndex) return;
            var targetTop = $("[data-scroll-index=" + ndx + "]").offset().top + settings.topOffset + 1;
            $("html,body").animate({
                scrollTop: targetTop
            }, settings.scrollTime, settings.easing)
        };
        var doScroll = function(e) {
            var target = $(e.target).closest("[data-scroll-nav]").attr("data-scroll-nav") || $(e.target).closest("[data-scroll-goto]").attr("data-scroll-goto");
            navigate(parseInt(target))
        };
        var keyNavigation = function(e) {
            var key = e.which;
            if ($("html,body").is(":animated") && (key == settings.upKey || key == settings.downKey)) return false;
            if (key == settings.upKey && active > 0) {
                navigate(parseInt(active) - 1);
                return false
            } else if (key == settings.downKey && active < lastIndex) {
                navigate(parseInt(active) + 1);
                return false
            }
            return true
        };
        var updateActive = function(ndx) {
            if (settings.onPageChange && ndx && active != ndx) settings.onPageChange(ndx);
            active = ndx;
            $("[data-scroll-nav]").removeClass(settings.activeClass);
            $("[data-scroll-nav=" + ndx + "]").addClass(settings.activeClass)
        };
        var watchActive = function() {
            var winTop = $(window).scrollTop();
            var visible = $("[data-scroll-index]").filter(function(ndx, div) {
                return winTop >= $(div).offset().top + settings.topOffset && winTop < $(div).offset().top + settings.topOffset + $(div).outerHeight()
            });
            var newActive = visible.first().attr("data-scroll-index");
            updateActive(newActive)
        };
        $(window).on("scroll", watchActive).scroll();
        $(window).on("keydown", keyNavigation);
        $("body").on("click", "[data-scroll-nav], [data-scroll-goto]", function(e) {
            e.preventDefault();
            doScroll(e)
        })
    };
}(jQuery));
(function($) {
    (function(e, t) {
        "use strict";
        var n = n || function(n) {
                var r = {
                    dragger: null,
                    disable: 'none',
                    addBodyClasses: true,
                    hyperextensible: false,
                    resistance: 0.5,
                    flickThreshold: 50,
                    transitionSpeed: 0.35,
                    easing: 'ease-in-out',
                    maxPosition: 266,
                    minPosition: -266,
                    tapToClose: true,
                    touchToDrag: false,
                    slideIntent: 40,
                    minDragDistance: 5000
                }, i = {
                        simpleStates: {
                            opening: null,
                            towards: null,
                            hyperExtending: null,
                            halfway: null,
                            flick: null,
                            translation: {
                                absolute: 0,
                                relative: 0,
                                sinceDirectionChange: 0,
                                percentage: 0
                            }
                        }
                    }, s = {}, o = {
                        hasTouch: t.ontouchstart === null,
                        eventType: function(e) {
                            var t = {
                                down: o.hasTouch ? "touchstart" : "mousedown",
                                move: o.hasTouch ? "touchmove" : "mousemove",
                                up: o.hasTouch ? "touchend" : "mouseup",
                                out: o.hasTouch ? "touchcancel" : "mouseout"
                            };
                            return t[e]
                        },
                        page: function(e, t) {
                            return o.hasTouch && t.touches.length && t.touches[0] ? t.touches[0]["page" + e] : t["page" + e]
                        },
                        klass: {
                            has: function(e, t) {
                                return e.className.indexOf(t) !== -1
                            },
                            add: function(e, t) {
                                if (!o.klass.has(e, t) && r.addBodyClasses) {
                                    e.className += " " + t
                                }
                            },
                            remove: function(e, t) {
                                if (r.addBodyClasses) {
                                    e.className = e.className.replace(t, "").replace(/^\s+|\s+$/g, "")
                                }
                            }
                        },
                        dispatchEvent: function(e) {
                            if (typeof s[e] === "function") {
                                return s[e].call()
                            }
                        },
                        vendor: function() {
                            var e = t.createElement("div"),
                                n = "webkit Moz O ms".split(" "),
                                r;
                            for (r in n) {
                                if (typeof e.style[n[r] + "Transition"] !== "undefined") {
                                    return n[r]
                                }
                            }
                        },
                        transitionCallback: function() {
                            return i.vendor === "Moz" || i.vendor === "ms" ? "transitionend" : i.vendor + "TransitionEnd"
                        },
                        canTransform: function() {
                            return typeof r.element.style[i.vendor + "Transform"] !== "undefined"
                        },
                        deepExtend: function(e, t) {
                            var n;
                            for (n in t) {
                                if (t[n] && t[n].constructor && t[n].constructor === Object) {
                                    e[n] = e[n] || {};
                                    o.deepExtend(e[n], t[n])
                                } else {
                                    e[n] = t[n]
                                }
                            }
                            return e
                        },
                        angleOfDrag: function(e, t) {
                            var n, r;
                            r = Math.atan2(-(i.startDragY - t), i.startDragX - e);
                            if (r < 0) {
                                r += 2 * Math.PI
                            }
                            n = Math.floor(r * (180 / Math.PI) - 180);
                            if (n < 0 && n > -180) {
                                n = 360 - Math.abs(n)
                            }
                            return Math.abs(n)
                        },
                        events: {
                            addEvent: function(t, n, r) {
                                if (t.addEventListener) {
                                    return t.addEventListener(n, r, false)
                                } else if (t.attachEvent) {
                                    return t.attachEvent("on" + n, r)
                                }
                            },
                            removeEvent: function(t, n, r) {
                                if (t.addEventListener) {
                                    return t.removeEventListener(n, r, false)
                                } else if (t.attachEvent) {
                                    return t.detachEvent("on" + n, r)
                                }
                            },
                            prevent: function(e) {
                                if (e.preventDefault) {
                                    e.preventDefault()
                                } else {
                                    e.returnValue = false
                                }
                            }
                        },
                        parentUntil: function(e, t) {
                            var n = typeof t === "string";
                            while (e.parentNode) {
                                if (n && e.getAttribute && e.getAttribute(t)) {
                                    return e
                                } else if (!n && e === t) {
                                    return e
                                }
                                e = e.parentNode
                            }
                            return null
                        }
                    }, u = {
                        translate: {
                            get: {
                                matrix: function(t) {
                                    if (!o.canTransform()) {
                                        return parseInt(r.element.style.left, 10)
                                    } else {
                                        var n = e.getComputedStyle(r.element)[i.vendor + "Transform"].match(/\((.*)\)/),
                                            s = 8;
                                        if (n) {
                                            n = n[1].split(",");
                                            if (n.length === 16) {
                                                t += s
                                            }
                                            return parseInt(n[t], 10)
                                        }
                                        return 0
                                    }
                                }
                            },
                            easeCallback: function() {
                                r.element.style[i.vendor + "Transition"] = "";
                                i.translation = u.translate.get.matrix(4);
                                i.easing = false;
                                clearInterval(i.animatingInterval);
                                if (i.easingTo === 0) {
                                    o.klass.remove(t.body, "snapjs-right");
                                    o.klass.remove(t.body, "snapjs-left")
                                }
                                o.dispatchEvent("animated");
                                o.events.removeEvent(r.element, o.transitionCallback(), u.translate.easeCallback)
                            },
                            easeTo: function(e) {
                                if (!o.canTransform()) {
                                    i.translation = e;
                                    u.translate.x(e)
                                } else {
                                    i.easing = true;
                                    i.easingTo = e;
                                    r.element.style[i.vendor + "Transition"] = "all " + r.transitionSpeed + "s " + r.easing;
                                    i.animatingInterval = setInterval(function() {
                                        o.dispatchEvent("animating")
                                    }, 1);
                                    o.events.addEvent(r.element, o.transitionCallback(), u.translate.easeCallback);
                                    u.translate.x(e)
                                }
                                if (e === 0) {
                                    r.element.style[i.vendor + "Transform"] = ""
                                }
                            },
                            x: function(n) {
                                if (r.disable === "left" && n > 0 || r.disable === "right" && n < 0) {
                                    return
                                }
                                if (!r.hyperextensible) {
                                    if (n === r.maxPosition || n > r.maxPosition) {
                                        n = r.maxPosition
                                    } else if (n === r.minPosition || n < r.minPosition) {
                                        n = r.minPosition
                                    }
                                }
                                n = parseInt(n, 10);
                                if (isNaN(n)) {
                                    n = 0
                                }
                                if (o.canTransform()) {
                                    var s = "translate3d(" + n + "px, 0,0)";
                                    r.element.style[i.vendor + "Transform"] = s
                                } else {
                                    r.element.style.width = (e.innerWidth || t.documentElement.clientWidth) + "px";
                                    r.element.style.left = n + "px";
                                    r.element.style.right = ""
                                }
                            }
                        },
                        drag: {
                            listen: function() {
                                i.translation = 0;
                                i.easing = false;
                                o.events.addEvent(r.element, o.eventType("down"), u.drag.startDrag);
                                o.events.addEvent(r.element, o.eventType("move"), u.drag.dragging);
                                o.events.addEvent(r.element, o.eventType("up"), u.drag.endDrag)
                            },
                            stopListening: function() {
                                o.events.removeEvent(r.element, o.eventType("down"), u.drag.startDrag);
                                o.events.removeEvent(r.element, o.eventType("move"), u.drag.dragging);
                                o.events.removeEvent(r.element, o.eventType("up"), u.drag.endDrag)
                            },
                            startDrag: function(e) {
                                var t = e.target ? e.target : e.srcElement,
                                    n = o.parentUntil(t, "data-snap-ignore");
                                if (n) {
                                    o.dispatchEvent("ignore");
                                    return
                                }
                                if (r.dragger) {
                                    var s = o.parentUntil(t, r.dragger);
                                    if (!s && i.translation !== r.minPosition && i.translation !== r.maxPosition) {
                                        return
                                    }
                                }
                                o.dispatchEvent("start");
                                r.element.style[i.vendor + "Transition"] = "";
                                i.isDragging = true;
                                i.hasIntent = null;
                                i.intentChecked = false;
                                i.startDragX = o.page("X", e);
                                i.startDragY = o.page("Y", e);
                                i.dragWatchers = {
                                    current: 0,
                                    last: 0,
                                    hold: 0,
                                    state: ""
                                };
                                i.simpleStates = {
                                    opening: null,
                                    towards: null,
                                    hyperExtending: null,
                                    halfway: null,
                                    flick: null,
                                    translation: {
                                        absolute: 0,
                                        relative: 0,
                                        sinceDirectionChange: 0,
                                        percentage: 0
                                    }
                                }
                            },
                            dragging: function(e) {
                                if (i.isDragging && r.touchToDrag) {
                                    var n = o.page("X", e),
                                        s = o.page("Y", e),
                                        a = i.translation,
                                        f = u.translate.get.matrix(4),
                                        l = n - i.startDragX,
                                        c = f > 0,
                                        h = l,
                                        p;
                                    if (i.intentChecked && !i.hasIntent) {
                                        return
                                    }
                                    if (r.addBodyClasses) {
                                        if (f > 0) {
                                            o.klass.add(t.body, "snapjs-left");
                                            o.klass.remove(t.body, "snapjs-right")
                                        } else if (f < 0) {
                                            o.klass.add(t.body, "snapjs-right");
                                            o.klass.remove(t.body, "snapjs-left")
                                        }
                                    }
                                    if (i.hasIntent === false || i.hasIntent === null) {
                                        var d = o.angleOfDrag(n, s),
                                            v = d >= 0 && d <= r.slideIntent || d <= 360 && d > 360 - r.slideIntent,
                                            m = d >= 180 && d <= 180 + r.slideIntent || d <= 180 && d >= 180 - r.slideIntent;
                                        if (!m && !v) {
                                            i.hasIntent = false
                                        } else {
                                            i.hasIntent = true
                                        }
                                        i.intentChecked = true
                                    }
                                    if (r.minDragDistance >= Math.abs(n - i.startDragX) || i.hasIntent === false) {
                                        return
                                    }
                                    o.events.prevent(e);
                                    o.dispatchEvent("drag");
                                    i.dragWatchers.current = n;
                                    if (i.dragWatchers.last > n) {
                                        if (i.dragWatchers.state !== "left") {
                                            i.dragWatchers.state = "left";
                                            i.dragWatchers.hold = n
                                        }
                                        i.dragWatchers.last = n
                                    } else if (i.dragWatchers.last < n) {
                                        if (i.dragWatchers.state !== "right") {
                                            i.dragWatchers.state = "right";
                                            i.dragWatchers.hold = n
                                        }
                                        i.dragWatchers.last = n
                                    }
                                    if (c) {
                                        if (r.maxPosition < f) {
                                            p = (f - r.maxPosition) * r.resistance;
                                            h = l - p
                                        }
                                        i.simpleStates = {
                                            opening: "left",
                                            towards: i.dragWatchers.state,
                                            hyperExtending: r.maxPosition < f,
                                            halfway: f > r.maxPosition / 2,
                                            flick: Math.abs(i.dragWatchers.current - i.dragWatchers.hold) > r.flickThreshold,
                                            translation: {
                                                absolute: f,
                                                relative: l,
                                                sinceDirectionChange: i.dragWatchers.current - i.dragWatchers.hold,
                                                percentage: f / r.maxPosition * 100
                                            }
                                        }
                                    } else {
                                        if (r.minPosition > f) {
                                            p = (f - r.minPosition) * r.resistance;
                                            h = l - p
                                        }
                                        i.simpleStates = {
                                            opening: "right",
                                            towards: i.dragWatchers.state,
                                            hyperExtending: r.minPosition > f,
                                            halfway: f < r.minPosition / 2,
                                            flick: Math.abs(i.dragWatchers.current - i.dragWatchers.hold) > r.flickThreshold,
                                            translation: {
                                                absolute: f,
                                                relative: l,
                                                sinceDirectionChange: i.dragWatchers.current - i.dragWatchers.hold,
                                                percentage: f / r.minPosition * 100
                                            }
                                        }
                                    }
                                    u.translate.x(h + a)
                                }
                            },
                            endDrag: function(e) {
                                if (i.isDragging) {
                                    o.dispatchEvent("end");
                                    var t = u.translate.get.matrix(4);
                                    if (i.dragWatchers.current === 0 && t !== 0 && r.tapToClose) {
                                        o.dispatchEvent("close");
                                        o.events.prevent(e);
                                        u.translate.easeTo(0);
                                        i.isDragging = false;
                                        i.startDragX = 0;
                                        return
                                    }
                                    if (i.simpleStates.opening === "left") {
                                        if (i.simpleStates.halfway || i.simpleStates.hyperExtending || i.simpleStates.flick) {
                                            if (i.simpleStates.flick && i.simpleStates.towards === "left") {
                                                u.translate.easeTo(0)
                                            } else if (i.simpleStates.flick && i.simpleStates.towards === "right" || i.simpleStates.halfway || i.simpleStates.hyperExtending) {
                                                u.translate.easeTo(r.maxPosition)
                                            }
                                        } else {
                                            u.translate.easeTo(0)
                                        }
                                    } else if (i.simpleStates.opening === "right") {
                                        if (i.simpleStates.halfway || i.simpleStates.hyperExtending || i.simpleStates.flick) {
                                            if (i.simpleStates.flick && i.simpleStates.towards === "right") {
                                                u.translate.easeTo(0)
                                            } else if (i.simpleStates.flick && i.simpleStates.towards === "left" || i.simpleStates.halfway || i.simpleStates.hyperExtending) {
                                                u.translate.easeTo(r.minPosition)
                                            }
                                        } else {
                                            u.translate.easeTo(0)
                                        }
                                    }
                                    i.isDragging = false;
                                    i.startDragX = o.page("X", e)
                                }
                            }
                        }
                    }, a = function(e) {
                        if (e.element) {
                            o.deepExtend(r, e);
                            i.vendor = o.vendor();
                            u.drag.listen()
                        }
                    };
                this.open = function(e) {
                    o.dispatchEvent("open");
                    o.klass.remove(t.body, "snapjs-expand-left");
                    o.klass.remove(t.body, "snapjs-expand-right");
                    if (e === "left") {
                        i.simpleStates.opening = "left";
                        i.simpleStates.towards = "right";
                        o.klass.add(t.body, "snapjs-left");
                        o.klass.remove(t.body, "snapjs-right");
                        u.translate.easeTo(r.maxPosition)
                    } else if (e === "right") {
                        i.simpleStates.opening = "right";
                        i.simpleStates.towards = "left";
                        o.klass.remove(t.body, "snapjs-left");
                        o.klass.add(t.body, "snapjs-right");
                        u.translate.easeTo(r.minPosition)
                    }
                };
                this.close = function() {
                    o.dispatchEvent("close");
                    u.translate.easeTo(0)
                };
                this.expand = function(n) {
                    var r = e.innerWidth || t.documentElement.clientWidth;
                    if (n === "left") {
                        o.dispatchEvent("expandLeft");
                        o.klass.add(t.body, "snapjs-expand-left");
                        o.klass.remove(t.body, "snapjs-expand-right")
                    } else {
                        o.dispatchEvent("expandRight");
                        o.klass.add(t.body, "snapjs-expand-right");
                        o.klass.remove(t.body, "snapjs-expand-left");
                        r *= -1
                    }
                    u.translate.easeTo(r)
                };
                this.on = function(e, t) {
                    s[e] = t;
                    return this
                };
                this.off = function(e) {
                    if (s[e]) {
                        s[e] = false
                    }
                };
                this.enable = function() {
                    o.dispatchEvent("enable");
                    u.drag.listen()
                };
                this.disable = function() {
                    o.dispatchEvent("disable");
                    u.drag.stopListening()
                };
                this.settings = function(e) {
                    o.deepExtend(r, e)
                };
                this.state = function() {
                    var e, t = u.translate.get.matrix(4);
                    if (t === r.maxPosition) {
                        e = "left"
                    } else if (t === r.minPosition) {
                        e = "right"
                    } else {
                        e = "closed"
                    }
                    return {
                        state: e,
                        info: i.simpleStates
                    }
                };
                a(n)
            };
        if (typeof module !== "undefined" && module.exports) {
            module.exports = n
        }
        if (typeof ender === "undefined") {
            this.Snap = n
        }
        if (typeof define === "function" && define.amd) {
            define("snap", [], function() {
                return n
            })
        }
    }).call(this, window, document)
}(jQuery));
(function($) {
    (function() {
        (function(e) {
            e.countdown = function(t, n) {
                var r, i = this;
                this.el = t;
                this.$el = e(t);
                this.$el.data("countdown", this);
                this.init = function() {
                    i.options = e.extend({}, e.countdown.defaultOptions, n);
                    if (i.options.refresh) {
                        i.interval = setInterval(function() {
                            return i.render()
                        }, i.options.refresh)
                    }
                    i.render();
                    return i
                };
                r = function(t) {
                    var n, r;
                    t = Date.parse(e.isPlainObject(i.options.date) ? i.options.date : new Date(i.options.date));
                    r = (t - Date.parse(new Date)) / 1e3;
                    if (r <= 0) {
                        r = 0;
                        if (i.interval) {
                            i.stop()
                        }
                        i.options.onEnd.apply(i)
                    }
                    n = {
                        years: 0,
                        days: 0,
                        hours: 0,
                        min: 0,
                        sec: 0,
                        millisec: 0
                    };
                    if (r >= 365.25 * 86400) {
                        n.years = Math.floor(r / (365.25 * 86400));
                        r -= n.years * 365.25 * 86400
                    }
                    if (r >= 86400) {
                        n.days = Math.floor(r / 86400);
                        r -= n.days * 86400
                    }
                    if (r >= 3600) {
                        n.hours = Math.floor(r / 3600);
                        r -= n.hours * 3600
                    }
                    if (r >= 60) {
                        n.min = Math.floor(r / 60);
                        r -= n.min * 60
                    }
                    n.sec = r;
                    return n
                };
                this.leadingZeros = function(e, t) {
                    if (t == null) {
                        t = 2
                    }
                    e = String(e);
                    while (e.length < t) {
                        e = "0" + e
                    }
                    return e
                };
                this.update = function(e) {
                    i.options.date = e;
                    return i
                };
                this.render = function() {
                    i.options.render.apply(i, [r(i.options.date)]);
                    return i
                };
                this.stop = function() {
                    if (i.interval) {
                        clearInterval(i.interval)
                    }
                    i.interval = null;
                    return i
                };
                this.start = function(t) {
                    if (t == null) {
                        t = i.options.refresh || e.countdown.defaultOptions.refresh
                    }
                    if (i.interval) {
                        clearInterval(i.interval)
                    }
                    i.render();
                    i.options.refresh = t;
                    i.interval = setInterval(function() {
                        return i.render()
                    }, i.options.refresh);
                    return i
                };
                return this.init()
            };
            e.countdown.defaultOptions = {
                date: "June 7, 2087 15:03:25",
                refresh: 1e3,
                onEnd: e.noop,
                render: function(t) {
                    return e(this.el).html("" + t.years + " years, " + t.days + " days, " + this.leadingZeros(t.hours) + " hours, " + this.leadingZeros(t.min) + " min and " + this.leadingZeros(t.sec) + " sec")
                }
            };
            e.fn.countdown = function(t) {
                return e.each(this, function(n, r) {
                    var i;
                    i = e(r);
                    if (!i.data("countdown")) {
                        return i.data("countdown", new e.countdown(r, t))
                    }
                })
            };
            return void 0
        })(jQuery)
    }).call(this)
}(jQuery));
(function($) {
    (function() {
        "use strict";

        function e(n, r) {
            function s(e, t) {
                return function() {
                    return e.apply(t, arguments)
                }
            }
            var i;
            r = r || {};
            this.trackingClick = false;
            this.trackingClickStart = 0;
            this.targetElement = null;
            this.touchStartX = 0;
            this.touchStartY = 0;
            this.lastTouchIdentifier = 0;
            this.touchBoundary = r.touchBoundary || 10;
            this.layer = n;
            this.tapDelay = r.tapDelay || 200;
            if (e.notNeeded(n)) {
                return
            }
            var o = ["onMouse", "onClick", "onTouchStart", "onTouchMove", "onTouchEnd", "onTouchCancel"];
            var u = this;
            for (var a = 0, f = o.length; a < f; a++) {
                u[o[a]] = s(u[o[a]], u)
            }
            if (t) {
                n.addEventListener("mouseover", this.onMouse, true);
                n.addEventListener("mousedown", this.onMouse, true);
                n.addEventListener("mouseup", this.onMouse, true)
            }
            n.addEventListener("click", this.onClick, true);
            n.addEventListener("touchstart", this.onTouchStart, false);
            n.addEventListener("touchmove", this.onTouchMove, false);
            n.addEventListener("touchend", this.onTouchEnd, false);
            n.addEventListener("touchcancel", this.onTouchCancel, false);
            if (!Event.prototype.stopImmediatePropagation) {
                n.removeEventListener = function(e, t, r) {
                    var i = Node.prototype.removeEventListener;
                    if (e === "click") {
                        i.call(n, e, t.hijacked || t, r)
                    } else {
                        i.call(n, e, t, r)
                    }
                };
                n.addEventListener = function(e, t, r) {
                    var i = Node.prototype.addEventListener;
                    if (e === "click") {
                        i.call(n, e, t.hijacked || (t.hijacked = function(e) {
                            if (!e.propagationStopped) {
                                t(e)
                            }
                        }), r)
                    } else {
                        i.call(n, e, t, r)
                    }
                }
            }
            if (typeof n.onclick === "function") {
                i = n.onclick;
                n.addEventListener("click", function(e) {
                    i(e)
                }, false);
                n.onclick = null
            }
        }
        var t = navigator.userAgent.indexOf("Android") > 0;
        var n = /iP(ad|hone|od)/.test(navigator.userAgent);
        var r = n && /OS 4_\d(_\d)?/.test(navigator.userAgent);
        var i = n && /OS ([6-9]|\d{2})_\d/.test(navigator.userAgent);
        var s = navigator.userAgent.indexOf("BB10") > 0;
        e.prototype.needsClick = function(e) {
            switch (e.nodeName.toLowerCase()) {
                case "button":
                case "select":
                case "textarea":
                    if (e.disabled) {
                        return true
                    }
                    break;
                case "input":
                    if (n && e.type === "file" || e.disabled) {
                        return true
                    }
                    break;
                case "label":
                case "video":
                    return true
            }
            return /\bneedsclick\b/.test(e.className)
        };
        e.prototype.needsFocus = function(e) {
            switch (e.nodeName.toLowerCase()) {
                case "textarea":
                    return true;
                case "select":
                    return !t;
                case "input":
                    switch (e.type) {
                        case "button":
                        case "checkbox":
                        case "file":
                        case "image":
                        case "radio":
                        case "submit":
                            return false
                    }
                    return !e.disabled && !e.readOnly;
                default:
                    return /\bneedsfocus\b/.test(e.className)
            }
        };
        e.prototype.sendClick = function(e, t) {
            var n, r;
            if (document.activeElement && document.activeElement !== e) {
                document.activeElement.blur()
            }
            r = t.changedTouches[0];
            n = document.createEvent("MouseEvents");
            n.initMouseEvent(this.determineEventType(e), true, true, window, 1, r.screenX, r.screenY, r.clientX, r.clientY, false, false, false, false, 0, null);
            n.forwardedTouchEvent = true;
            e.dispatchEvent(n)
        };
        e.prototype.determineEventType = function(e) {
            if (t && e.tagName.toLowerCase() === "select") {
                return "mousedown"
            }
            return "click"
        };
        e.prototype.focus = function(e) {
            var t;
            if (n && e.setSelectionRange && e.type.indexOf("date") !== 0 && e.type !== "time") {
                t = e.value.length;
                e.setSelectionRange(t, t)
            } else {
                e.focus()
            }
        };
        e.prototype.updateScrollParent = function(e) {
            var t, n;
            t = e.fastClickScrollParent;
            if (!t || !t.contains(e)) {
                n = e;
                do {
                    if (n.scrollHeight > n.offsetHeight) {
                        t = n;
                        e.fastClickScrollParent = n;
                        break
                    }
                    n = n.parentElement
                } while (n)
            }
            if (t) {
                t.fastClickLastScrollTop = t.scrollTop
            }
        };
        e.prototype.getTargetElementFromEventTarget = function(e) {
            if (e.nodeType === Node.TEXT_NODE) {
                return e.parentNode
            }
            return e
        };
        e.prototype.onTouchStart = function(e) {
            var t, i, s;
            if (e.targetTouches.length > 1) {
                return true
            }
            t = this.getTargetElementFromEventTarget(e.target);
            i = e.targetTouches[0];
            if (n) {
                s = window.getSelection();
                if (s.rangeCount && !s.isCollapsed) {
                    return true
                }
                if (!r) {
                    if (i.identifier && i.identifier === this.lastTouchIdentifier) {
                        e.preventDefault();
                        return false
                    }
                    this.lastTouchIdentifier = i.identifier;
                    this.updateScrollParent(t)
                }
            }
            this.trackingClick = true;
            this.trackingClickStart = e.timeStamp;
            this.targetElement = t;
            this.touchStartX = i.pageX;
            this.touchStartY = i.pageY;
            if (e.timeStamp - this.lastClickTime < this.tapDelay) {
                e.preventDefault()
            }
            return true
        };
        e.prototype.touchHasMoved = function(e) {
            var t = e.changedTouches[0],
                n = this.touchBoundary;
            if (Math.abs(t.pageX - this.touchStartX) > n || Math.abs(t.pageY - this.touchStartY) > n) {
                return true
            }
            return false
        };
        e.prototype.onTouchMove = function(e) {
            if (!this.trackingClick) {
                return true
            }
            if (this.targetElement !== this.getTargetElementFromEventTarget(e.target) || this.touchHasMoved(e)) {
                this.trackingClick = false;
                this.targetElement = null
            }
            return true
        };
        e.prototype.findControl = function(e) {
            if (e.control !== undefined) {
                return e.control
            }
            if (e.htmlFor) {
                return document.getElementById(e.htmlFor)
            }
            return e.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")
        };
        e.prototype.onTouchEnd = function(e) {
            var s, o, u, a, f, l = this.targetElement;
            if (!this.trackingClick) {
                return true
            }
            if (e.timeStamp - this.lastClickTime < this.tapDelay) {
                this.cancelNextClick = true;
                return true
            }
            this.cancelNextClick = false;
            this.lastClickTime = e.timeStamp;
            o = this.trackingClickStart;
            this.trackingClick = false;
            this.trackingClickStart = 0;
            if (i) {
                f = e.changedTouches[0];
                l = document.elementFromPoint(f.pageX - window.pageXOffset, f.pageY - window.pageYOffset) || l;
                l.fastClickScrollParent = this.targetElement.fastClickScrollParent
            }
            u = l.tagName.toLowerCase();
            if (u === "label") {
                s = this.findControl(l);
                if (s) {
                    this.focus(l);
                    if (t) {
                        return false
                    }
                    l = s
                }
            } else if (this.needsFocus(l)) {
                if (e.timeStamp - o > 100 || n && window.top !== window && u === "input") {
                    this.targetElement = null;
                    return false
                }
                this.focus(l);
                this.sendClick(l, e);
                if (!n || u !== "select") {
                    this.targetElement = null;
                    e.preventDefault()
                }
                return false
            }
            if (n && !r) {
                a = l.fastClickScrollParent;
                if (a && a.fastClickLastScrollTop !== a.scrollTop) {
                    return true
                }
            }
            if (!this.needsClick(l)) {
                e.preventDefault();
                this.sendClick(l, e)
            }
            return false
        };
        e.prototype.onTouchCancel = function() {
            this.trackingClick = false;
            this.targetElement = null
        };
        e.prototype.onMouse = function(e) {
            if (!this.targetElement) {
                return true
            }
            if (e.forwardedTouchEvent) {
                return true
            }
            if (!e.cancelable) {
                return true
            }
            if (!this.needsClick(this.targetElement) || this.cancelNextClick) {
                if (e.stopImmediatePropagation) {
                    e.stopImmediatePropagation()
                } else {
                    e.propagationStopped = true
                }

                e.stopPropagation();
                e.preventDefault();
                return false
            }
            return true
        };
        e.prototype.onClick = function(e) {
            var t;
            if (this.trackingClick) {
                this.targetElement = null;
                this.trackingClick = false;
                return true
            }
            if (e.target.type === "submit" && e.detail === 0) {
                return true
            }
            t = this.onMouse(e);
            if (!t) {
                this.targetElement = null
            }
            return t
        };
        e.prototype.destroy = function() {
            var e = this.layer;
            if (t) {
                e.removeEventListener("mouseover", this.onMouse, true);
                e.removeEventListener("mousedown", this.onMouse, true);
                e.removeEventListener("mouseup", this.onMouse, true)
            }
            e.removeEventListener("click", this.onClick, true);
            e.removeEventListener("touchstart", this.onTouchStart, false);
            e.removeEventListener("touchmove", this.onTouchMove, false);
            e.removeEventListener("touchend", this.onTouchEnd, false);
            e.removeEventListener("touchcancel", this.onTouchCancel, false)
        };
        e.notNeeded = function(e) {
            var n;
            var r;
            var i;
            if (typeof window.ontouchstart === "undefined") {
                return true
            }
            r = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1];
            if (r) {
                if (t) {
                    n = document.querySelector("meta[name=viewport]");
                    if (n) {
                        if (n.content.indexOf("user-scalable=no") !== -1) {
                            return true
                        }
                        if (r > 31 && document.documentElement.scrollWidth <= window.outerWidth) {
                            return true
                        }
                    }
                } else {
                    return true
                }
            }
            if (s) {
                i = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/);
                if (i[1] >= 10 && i[2] >= 3) {
                    n = document.querySelector("meta[name=viewport]");
                    if (n) {
                        if (n.content.indexOf("user-scalable=no") !== -1) {
                            return true
                        }
                        if (document.documentElement.scrollWidth <= window.outerWidth) {
                            return true
                        }
                    }
                }
            }
            if (e.style.msTouchAction === "none") {
                return true
            }
            return false
        };
        e.attach = function(t, n) {
            return new e(t, n)
        };
        if (typeof define == "function" && typeof define.amd == "object" && define.amd) {
            define(function() {
                return e
            })
        } else if (typeof module !== "undefined" && module.exports) {
            module.exports = e.attach;
            module.exports.FastClick = e
        } else {
            window.FastClick = e
        }
    })()
}(jQuery));