/*!
jQuery Waypoints - v2.0.5
Copyright (c) 2011-2014 Caleb Troughton
Licensed under the MIT license.
https://github.com/imakewebthings/jquery-waypoints/blob/master/licenses.txt
*/
(function(){var t=[].indexOf||function(n){for(var t=0,i=this.length;t<i;t++)if(t in this&&this[t]===n)return t;return-1},n=[].slice;(function(n,t){return typeof define=="function"&&define.amd?define("waypoints",["jquery"],function(i){return t(i,n)}):t(n.jQuery,n)})(window,function(i,r){var a,b,v,o,k,h,s,y,u,f,p,w,d,l,c,e;a=i(r),y=t.call(r,"ontouchstart")>=0,o={horizontal:{},vertical:{}},k=1,s={},h="waypoints-context-id",p="resize.waypoints",w="scroll.waypoints",d=1,l="waypoints-waypoint-ids",c="waypoint",e="waypoints",b=function(){function n(n){var t=this;this.$element=n,this.element=n[0],this.didResize=!1,this.didScroll=!1,this.id="context"+k++,this.oldScroll={x:n.scrollLeft(),y:n.scrollTop()},this.waypoints={horizontal:{},vertical:{}},this.element[h]=this.id,s[this.id]=this,n.bind(w,function(){var n;if(!(t.didScroll||y))return t.didScroll=!0,n=function(){return t.doScroll(),t.didScroll=!1},r.setTimeout(n,i[e].settings.scrollThrottle)}),n.bind(p,function(){var n;if(!t.didResize)return t.didResize=!0,n=function(){return i[e]("refresh"),t.didResize=!1},r.setTimeout(n,i[e].settings.resizeThrottle)})}return n.prototype.doScroll=function(){var n,t=this;return n={horizontal:{newScroll:this.$element.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.$element.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}},!y||n.vertical.oldScroll&&n.vertical.newScroll||i[e]("refresh"),i.each(n,function(n,r){var e,f,u;return u=[],f=r.newScroll>r.oldScroll,e=f?r.forward:r.backward,i.each(t.waypoints[n],function(n,t){var i,f;return r.oldScroll<(i=t.offset)&&i<=r.newScroll?u.push(t):r.newScroll<(f=t.offset)&&f<=r.oldScroll?u.push(t):void 0}),u.sort(function(n,t){return n.offset-t.offset}),f||u.reverse(),i.each(u,function(n,t){if(t.options.continuous||n===u.length-1)return t.trigger([e])})}),this.oldScroll={x:n.horizontal.newScroll,y:n.vertical.newScroll}},n.prototype.refresh=function(){var r,t,n,u=this;return n=i.isWindow(this.element),t=this.$element.offset(),this.doScroll(),r={horizontal:{contextOffset:n?0:t.left,contextScroll:n?0:this.oldScroll.x,contextDimension:this.$element.width(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:n?0:t.top,contextScroll:n?0:this.oldScroll.y,contextDimension:n?i[e]("viewportHeight"):this.$element.height(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}},i.each(r,function(n,t){return i.each(u.waypoints[n],function(n,r){var u,e,f,o,s;if(u=r.options.offset,f=r.offset,e=i.isWindow(r.element)?0:r.$element.offset()[t.offsetProp],i.isFunction(u)?u=u.apply(r.element):typeof u=="string"&&(u=parseFloat(u),r.options.offset.indexOf("%")>-1&&(u=Math.ceil(t.contextDimension*u/100))),r.offset=e-t.contextOffset+t.contextScroll-u,(!r.options.onlyOnScroll||f==null)&&r.enabled)return f!==null&&f<(o=t.oldScroll)&&o<=r.offset?r.trigger([t.backward]):f!==null&&f>(s=t.oldScroll)&&s>=r.offset?r.trigger([t.forward]):f===null&&t.oldScroll>=r.offset?r.trigger([t.forward]):void 0})})},n.prototype.checkEmpty=function(){if(i.isEmptyObject(this.waypoints.horizontal)&&i.isEmptyObject(this.waypoints.vertical))return this.$element.unbind([p,w].join(" ")),delete s[this.id]},n}(),v=function(){function n(n,t,r){var u,f;r.offset==="bottom-in-view"&&(r.offset=function(){var n;return n=i[e]("viewportHeight"),i.isWindow(t.element)||(n=t.$element.height()),n-i(this).outerHeight()}),this.$element=n,this.element=n[0],this.axis=r.horizontal?"horizontal":"vertical",this.callback=r.handler,this.context=t,this.enabled=r.enabled,this.id="waypoints"+d++,this.offset=null,this.options=r,t.waypoints[this.axis][this.id]=this,o[this.axis][this.id]=this,u=(f=this.element[l])!=null?f:[],u.push(this.id),this.element[l]=u}return n.prototype.trigger=function(n){if(this.enabled)return this.callback!=null&&this.callback.apply(this.element,n),this.options.triggerOnce?this.destroy():void 0},n.prototype.disable=function(){return this.enabled=!1},n.prototype.enable=function(){return this.context.refresh(),this.enabled=!0},n.prototype.destroy=function(){return delete o[this.axis][this.id],delete this.context.waypoints[this.axis][this.id],this.context.checkEmpty()},n.getWaypointsByElement=function(n){var r,t;return(t=n[l],!t)?[]:(r=i.extend({},o.horizontal,o.vertical),i.map(t,function(n){return r[n]}))},n}(),f={init:function(n,t){var r;return t=i.extend({},i.fn[c].defaults,t),(r=t.handler)==null&&(t.handler=n),this.each(function(){var u,r,n,f;return u=i(this),n=(f=t.context)!=null?f:i.fn[c].defaults.context,i.isWindow(n)||(n=u.closest(n)),n=i(n),r=s[n[0][h]],r||(r=new b(n)),new v(u,r,t)}),i[e]("refresh"),this},disable:function(){return f._invoke.call(this,"disable")},enable:function(){return f._invoke.call(this,"enable")},destroy:function(){return f._invoke.call(this,"destroy")},prev:function(n,t){return f._traverse.call(this,n,t,function(n,t,i){if(t>0)return n.push(i[t-1])})},next:function(n,t){return f._traverse.call(this,n,t,function(n,t,i){if(t<i.length-1)return n.push(i[t+1])})},_traverse:function(n,t,f){var e,o;return n==null&&(n="vertical"),t==null&&(t=r),o=u.aggregate(t),e=[],this.each(function(){var t;return t=i.inArray(this,o[n]),f(e,t,o[n])}),this.pushStack(e)},_invoke:function(n){return this.each(function(){var t;return t=v.getWaypointsByElement(this),i.each(t,function(t,i){return i[n](),!0})}),this}},i.fn[c]=function(){var r,t;return t=arguments[0],r=2<=arguments.length?n.call(arguments,1):[],f[t]?f[t].apply(this,r):i.isFunction(t)?f.init.apply(this,arguments):i.isPlainObject(t)?f.init.apply(this,[null,t]):t?i.error("The "+t+" method does not exist in jQuery Waypoints."):i.error("jQuery Waypoints needs a callback function or handler option.")},i.fn[c].defaults={context:r,continuous:!0,enabled:!0,horizontal:!1,offset:0,triggerOnce:!1},u={refresh:function(){return i.each(s,function(n,t){return t.refresh()})},viewportHeight:function(){var n;return(n=r.innerHeight)!=null?n:a.height()},aggregate:function(n){var r,t,u;return(r=o,n&&(r=(u=s[i(n)[0][h]])!=null?u.waypoints:void 0),!r)?[]:(t={horizontal:[],vertical:[]},i.each(t,function(n,u){return i.each(r[n],function(n,t){return u.push(t)}),u.sort(function(n,t){return n.offset-t.offset}),t[n]=i.map(u,function(n){return n.element}),t[n]=i.unique(t[n])}),t)},above:function(n){return n==null&&(n=r),u._filter(n,"vertical",function(n,t){return t.offset<=n.oldScroll.y})},below:function(n){return n==null&&(n=r),u._filter(n,"vertical",function(n,t){return t.offset>n.oldScroll.y})},left:function(n){return n==null&&(n=r),u._filter(n,"horizontal",function(n,t){return t.offset<=n.oldScroll.x})},right:function(n){return n==null&&(n=r),u._filter(n,"horizontal",function(n,t){return t.offset>n.oldScroll.x})},enable:function(){return u._invoke("enable")},disable:function(){return u._invoke("disable")},destroy:function(){return u._invoke("destroy")},extendFn:function(n,t){return f[n]=t},_invoke:function(n){var t;return t=i.extend({},o.vertical,o.horizontal),i.each(t,function(t,i){return i[n](),!0})},_filter:function(n,t,r){var u,f;return(u=s[i(n)[0][h]],!u)?[]:(f=[],i.each(u.waypoints[t],function(n,t){if(r(u,t))return f.push(t)}),f.sort(function(n,t){return n.offset-t.offset}),i.map(f,function(n){return n.element}))}},i[e]=function(){var i,t;return t=arguments[0],i=2<=arguments.length?n.call(arguments,1):[],u[t]?u[t].apply(null,i):u.aggregate.call(null,t)},i[e].settings={resizeThrottle:100,scrollThrottle:30};return a.on("load.waypoints",function(){return i[e]("refresh")})})}).call(this)