! function (e, t) {
	"object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : e.AOS = t()
}(this, function () {
	"use strict";
	var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {},
		t = "Expected a function",
		n = NaN,
		o = "[object Symbol]",
		i = /^\s+|\s+$/g,
		a = /^[-+]0x[0-9a-f]+$/i,
		r = /^0b[01]+$/i,
		c = /^0o[0-7]+$/i,
		s = parseInt,
		u = "object" == typeof e && e && e.Object === Object && e,
		d = "object" == typeof self && self && self.Object === Object && self,
		l = u || d || Function("return this")(),
		f = Object.prototype.toString,
		m = Math.max,
		p = Math.min,
		b = function () {
			return l.Date.now()
		};

	function v(e, n, o) {
		var i, a, r, c, s, u, d = 0,
			l = !1,
			f = !1,
			v = !0;
		if ("function" != typeof e) throw new TypeError(t);

		function y(t) {
			var n = i,
				o = a;
			return i = a = void 0, d = t, c = e.apply(o, n)
		}

		function h(e) {
			var t = e - u;
			return void 0 === u || t >= n || t < 0 || f && e - d >= r
		}

		function k() {
			var e = b();
			if (h(e)) return x(e);
			s = setTimeout(k, function (e) {
				var t = n - (e - u);
				return f ? p(t, r - (e - d)) : t
			}(e))
		}

		function x(e) {
			return s = void 0, v && i ? y(e) : (i = a = void 0, c)
		}

		function O() {
			var e = b(),
				t = h(e);
			if (i = arguments, a = this, u = e, t) {
				if (void 0 === s) return function (e) {
					return d = e, s = setTimeout(k, n), l ? y(e) : c
				}(u);
				if (f) return s = setTimeout(k, n), y(u)
			}
			return void 0 === s && (s = setTimeout(k, n)), c
		}
		return n = w(n) || 0, g(o) && (l = !!o.leading, r = (f = "maxWait" in o) ? m(w(o.maxWait) || 0, n) : r, v = "trailing" in o ? !!o.trailing : v), O.cancel = function () {
			void 0 !== s && clearTimeout(s), d = 0, i = u = a = s = void 0
		}, O.flush = function () {
			return void 0 === s ? c : x(b())
		}, O
	}

	function g(e) {
		var t = typeof e;
		return !!e && ("object" == t || "function" == t)
	}

	function w(e) {
		if ("number" == typeof e) return e;
		if (function (e) {
				return "symbol" == typeof e || function (e) {
					return !!e && "object" == typeof e
				}(e) && f.call(e) == o
			}(e)) return n;
		if (g(e)) {
			var t = "function" == typeof e.valueOf ? e.valueOf() : e;
			e = g(t) ? t + "" : t
		}
		if ("string" != typeof e) return 0 === e ? e : +e;
		e = e.replace(i, "");
		var u = r.test(e);
		return u || c.test(e) ? s(e.slice(2), u ? 2 : 8) : a.test(e) ? n : +e
	}
	var y = function (e, n, o) {
			var i = !0,
				a = !0;
			if ("function" != typeof e) throw new TypeError(t);
			return g(o) && (i = "leading" in o ? !!o.leading : i, a = "trailing" in o ? !!o.trailing : a), v(e, n, {
				leading: i,
				maxWait: n,
				trailing: a
			})
		},
		h = "Expected a function",
		k = NaN,
		x = "[object Symbol]",
		O = /^\s+|\s+$/g,
		j = /^[-+]0x[0-9a-f]+$/i,
		E = /^0b[01]+$/i,
		N = /^0o[0-7]+$/i,
		z = parseInt,
		C = "object" == typeof e && e && e.Object === Object && e,
		A = "object" == typeof self && self && self.Object === Object && self,
		q = C || A || Function("return this")(),
		L = Object.prototype.toString,
		T = Math.max,
		M = Math.min,
		S = function () {
			return q.Date.now()
		};

	function D(e) {
		var t = typeof e;
		return !!e && ("object" == t || "function" == t)
	}

	function H(e) {
		if ("number" == typeof e) return e;
		if (function (e) {
				return "symbol" == typeof e || function (e) {
					return !!e && "object" == typeof e
				}(e) && L.call(e) == x
			}(e)) return k;
		if (D(e)) {
			var t = "function" == typeof e.valueOf ? e.valueOf() : e;
			e = D(t) ? t + "" : t
		}
		if ("string" != typeof e) return 0 === e ? e : +e;
		e = e.replace(O, "");
		var n = E.test(e);
		return n || N.test(e) ? z(e.slice(2), n ? 2 : 8) : j.test(e) ? k : +e
	}
	var $ = function (e, t, n) {
			var o, i, a, r, c, s, u = 0,
				d = !1,
				l = !1,
				f = !0;
			if ("function" != typeof e) throw new TypeError(h);

			function m(t) {
				var n = o,
					a = i;
				return o = i = void 0, u = t, r = e.apply(a, n)
			}

			function p(e) {
				var n = e - s;
				return void 0 === s || n >= t || n < 0 || l && e - u >= a
			}

			function b() {
				var e = S();
				if (p(e)) return v(e);
				c = setTimeout(b, function (e) {
					var n = t - (e - s);
					return l ? M(n, a - (e - u)) : n
				}(e))
			}

			function v(e) {
				return c = void 0, f && o ? m(e) : (o = i = void 0, r)
			}

			function g() {
				var e = S(),
					n = p(e);
				if (o = arguments, i = this, s = e, n) {
					if (void 0 === c) return function (e) {
						return u = e, c = setTimeout(b, t), d ? m(e) : r
					}(s);
					if (l) return c = setTimeout(b, t), m(s)
				}
				return void 0 === c && (c = setTimeout(b, t)), r
			}
			return t = H(t) || 0, D(n) && (d = !!n.leading, a = (l = "maxWait" in n) ? T(H(n.maxWait) || 0, t) : a, f = "trailing" in n ? !!n.trailing : f), g.cancel = function () {
				void 0 !== c && clearTimeout(c), u = 0, o = s = i = c = void 0
			}, g.flush = function () {
				return void 0 === c ? r : v(S())
			}, g
		},
		W = function () {};

	function P(e) {
		e && e.forEach(function (e) {
			var t = Array.prototype.slice.call(e.addedNodes),
				n = Array.prototype.slice.call(e.removedNodes);
			if (function e(t) {
					var n = void 0,
						o = void 0;
					for (n = 0; n < t.length; n += 1) {
						if ((o = t[n]).dataset && o.dataset.aos) return !0;
						if (o.children && e(o.children)) return !0
					}
					return !1
				}(t.concat(n))) return W()
		})
	}

	function Y() {
		return window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver
	}
	var _ = {
			isSupported: function () {
				return !!Y()
			},
			ready: function (e, t) {
				var n = window.document,
					o = new(Y())(P);
				W = t, o.observe(n.documentElement, {
					childList: !0,
					subtree: !0,
					removedNodes: !0
				})
			}
		},
		B = function (e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		},
		F = function () {
			function e(e, t) {
				for (var n = 0; n < t.length; n++) {
					var o = t[n];
					o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, o.key, o)
				}
			}
			return function (t, n, o) {
				return n && e(t.prototype, n), o && e(t, o), t
			}
		}(),
		I = Object.assign || function (e) {
			for (var t = 1; t < arguments.length; t++) {
				var n = arguments[t];
				for (var o in n) Object.prototype.hasOwnProperty.call(n, o) && (e[o] = n[o])
			}
			return e
		},
		K = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i,
		G = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,
		J = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i,
		Q = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i;

	function R() {
		return navigator.userAgent || navigator.vendor || window.opera || ""
	}
	var U = new(function () {
			function e() {
				B(this, e)
			}
			return F(e, [{
				key: "phone",
				value: function () {
					var e = R();
					return !(!K.test(e) && !G.test(e.substr(0, 4)))
				}
			}, {
				key: "mobile",
				value: function () {
					var e = R();
					return !(!J.test(e) && !Q.test(e.substr(0, 4)))
				}
			}, {
				key: "tablet",
				value: function () {
					return this.mobile() && !this.phone()
				}
			}, {
				key: "ie11",
				value: function () {
					return "-ms-scroll-limit" in document.documentElement.style && "-ms-ime-align" in document.documentElement.style
				}
			}]), e
		}()),
		V = function (e, t) {
			var n = void 0;
			return U.ie11() ? (n = document.createEvent("CustomEvent")).initCustomEvent(e, !0, !0, {
				detail: t
			}) : n = new CustomEvent(e, {
				detail: t
			}), document.dispatchEvent(n)
		},
		X = function (e) {
			return e.forEach(function (e, t) {
				return function (e, t) {
					var n = e.options,
						o = e.position,
						i = e.node,
						a = (e.data, function () {
							e.animated && (function (e, t) {
								t && t.forEach(function (t) {
									return e.classList.remove(t)
								})
							}(i, n.animatedClassNames), V("aos:out", i), e.options.id && V("aos:in:" + e.options.id, i), e.animated = !1)
						});
					n.mirror && t >= o.out && !n.once ? a() : t >= o.in ? e.animated || (function (e, t) {
						t && t.forEach(function (t) {
							return e.classList.add(t)
						})
					}(i, n.animatedClassNames), V("aos:in", i), e.options.id && V("aos:in:" + e.options.id, i), e.animated = !0) : e.animated && !n.once && a()
				}(e, window.pageYOffset)
			})
		},
		Z = function (e) {
			for (var t = 0, n = 0; e && !isNaN(e.offsetLeft) && !isNaN(e.offsetTop);) t += e.offsetLeft - ("BODY" != e.tagName ? e.scrollLeft : 0), n += e.offsetTop - ("BODY" != e.tagName ? e.scrollTop : 0), e = e.offsetParent;
			return {
				top: n,
				left: t
			}
		},
		ee = function (e, t, n) {
			var o = e.getAttribute("data-aos-" + t);
			if (void 0 !== o) {
				if ("true" === o) return !0;
				if ("false" === o) return !1
			}
			return o || n
		},
		te = function (e, t) {
			return e.forEach(function (e, n) {
				var o = ee(e.node, "mirror", t.mirror),
					i = ee(e.node, "once", t.once),
					a = ee(e.node, "id"),
					r = t.useClassNames && e.node.getAttribute("data-aos"),
					c = [t.animatedClassName].concat(r ? r.split(" ") : []).filter(function (e) {
						return "string" == typeof e
					});
				t.initClassName && e.node.classList.add(t.initClassName), e.position = { in: function (e, t, n) {
						var o = window.innerHeight,
							i = ee(e, "anchor"),
							a = ee(e, "anchor-placement"),
							r = Number(ee(e, "offset", a ? 0 : t)),
							c = a || n,
							s = e;
						i && document.querySelectorAll(i) && (s = document.querySelectorAll(i)[0]);
						var u = Z(s).top - o;
						switch (c) {
							case "top-bottom":
								break;
							case "center-bottom":
								u += s.offsetHeight / 2;
								break;
							case "bottom-bottom":
								u += s.offsetHeight;
								break;
							case "top-center":
								u += o / 2;
								break;
							case "center-center":
								u += o / 2 + s.offsetHeight / 2;
								break;
							case "bottom-center":
								u += o / 2 + s.offsetHeight;
								break;
							case "top-top":
								u += o;
								break;
							case "bottom-top":
								u += o + s.offsetHeight;
								break;
							case "center-top":
								u += o + s.offsetHeight / 2
						}
						return u + r
					}(e.node, t.offset, t.anchorPlacement),
					out: o && function (e, t) {
						window.innerHeight;
						var n = ee(e, "anchor"),
							o = ee(e, "offset", t),
							i = e;
						return n && document.querySelectorAll(n) && (i = document.querySelectorAll(n)[0]), Z(i).top + i.offsetHeight - o
					}(e.node, t.offset)
				}, e.options = {
					once: i,
					mirror: o,
					animatedClassNames: c,
					id: a
				}
			}), e
		},
		ne = function () {
			var e = document.querySelectorAll("[data-aos]");
			return Array.prototype.map.call(e, function (e) {
				return {
					node: e
				}
			})
		},
		oe = [],
		ie = !1,
		ae = {
			offset: 120,
			delay: 0,
			easing: "ease",
			duration: 400,
			disable: !1,
			once: !1,
			mirror: !1,
			anchorPlacement: "top-bottom",
			startEvent: "DOMContentLoaded",
			animatedClassName: "aos-animate",
			initClassName: "aos-init",
			useClassNames: !1,
			disableMutationObserver: !1,
			throttleDelay: 99,
			debounceDelay: 50
		},
		re = function () {
			return document.all && !window.atob
		},
		ce = function () {
			arguments.length > 0 && void 0 !== arguments[0] && arguments[0] && (ie = !0), ie && (oe = te(oe, ae), X(oe), window.addEventListener("scroll", y(function () {
				X(oe, ae.once)
			}, ae.throttleDelay)))
		},
		se = function () {
			if (oe = ne(), de(ae.disable) || re()) return ue();
			ce()
		},
		ue = function () {
			oe.forEach(function (e, t) {
				e.node.removeAttribute("data-aos"), e.node.removeAttribute("data-aos-easing"), e.node.removeAttribute("data-aos-duration"), e.node.removeAttribute("data-aos-delay"), ae.initClassName && e.node.classList.remove(ae.initClassName), ae.animatedClassName && e.node.classList.remove(ae.animatedClassName)
			})
		},
		de = function (e) {
			return !0 === e || "mobile" === e && U.mobile() || "phone" === e && U.phone() || "tablet" === e && U.tablet() || "function" == typeof e && !0 === e()
		};
	return {
		init: function (e) {
			return ae = I(ae, e), oe = ne(), ae.disableMutationObserver || _.isSupported() || (console.info('\n      aos: MutationObserver is not supported on this browser,\n      code mutations observing has been disabled.\n      You may have to call "refreshHard()" by yourself.\n    '), ae.disableMutationObserver = !0), ae.disableMutationObserver || _.ready("[data-aos]", se), de(ae.disable) || re() ? ue() : (document.querySelector("body").setAttribute("data-aos-easing", ae.easing), document.querySelector("body").setAttribute("data-aos-duration", ae.duration), document.querySelector("body").setAttribute("data-aos-delay", ae.delay), -1 === ["DOMContentLoaded", "load"].indexOf(ae.startEvent) ? document.addEventListener(ae.startEvent, function () {
				ce(!0)
			}) : window.addEventListener("load", function () {
				ce(!0)
			}), "DOMContentLoaded" === ae.startEvent && ["complete", "interactive"].indexOf(document.readyState) > -1 && ce(!0), window.addEventListener("resize", $(ce, ae.debounceDelay, !0)), window.addEventListener("orientationchange", $(ce, ae.debounceDelay, !0)), oe)
		},
		refresh: ce,
		refreshHard: se
	}
});