!function(){"use strict";function a(d){if(!d)throw new Error("No options passed to Waypoint constructor");if(!d.element)throw new Error("No element option passed to Waypoint constructor");if(!d.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+b,this.options=a.Adapter.extend({},a.defaults,d),this.element=this.options.element,this.adapter=new a.Adapter(this.element),this.callback=d.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=a.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=a.Context.findOrCreateByElement(this.options.context),a.offsetAliases[this.options.offset]&&(this.options.offset=a.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),c[this.key]=this,b+=1}var b=0,c={};a.prototype.queueTrigger=function(a){this.group.queueTrigger(this,a)},a.prototype.trigger=function(a){this.enabled&&this.callback&&this.callback.apply(this,a)},a.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete c[this.key]},a.prototype.disable=function(){return this.enabled=!1,this},a.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},a.prototype.next=function(){return this.group.next(this)},a.prototype.previous=function(){return this.group.previous(this)},a.invokeAll=function(a){var b=[];for(var d in c)b.push(c[d]);for(var e=0,f=b.length;ed.oldScroll,f=e?d.forward:d.backward;for(var g in this.waypoints[c]){var h=this.waypoints[c][g];if(null!==h.triggerPoint){var i=d.oldScroll=h.triggerPoint,k=i&&j,l=!i&&!j;(k||l)&&(h.queueTrigger(f),a[h.group.id]=h.group)}}}for(var m in a)a[m].flushTriggers();this.oldScroll={x:b.horizontal.newScroll,y:b.vertical.newScroll}},b.prototype.innerHeight=function(){return this.element==this.element.window?e.viewportHeight():this.adapter.innerHeight()},b.prototype.remove=function(a){delete this.waypoints[a.axis][a.key],this.checkEmpty()},b.prototype.innerWidth=function(){return this.element==this.element.window?e.viewportWidth():this.adapter.innerWidth()},b.prototype.destroy=function(){var a=[];for(var b in this.waypoints)for(var c in this.waypoints[b])a.push(this.waypoints[b][c]);for(var d=0,e=a.length;d-1&&(o=Math.ceil(g.contextDimension*o/100))),i=g.contextScroll-g.contextOffset,n.triggerPoint=Math.floor(q+i-o),j=p=g.oldScroll,l=j&&k,m=!j&&!k,!r&&l?(n.queueTrigger(g.backward),d[n.group.id]=n.group):!r&&m?(n.queueTrigger(g.forward),d[n.group.id]=n.group):r&&g.oldScroll>=n.triggerPoint&&(n.queueTrigger(g.forward),d[n.group.id]=n.group)}}return e.requestAnimationFrame(function(){for(var a in d)d[a].flushTriggers()}),this},b.findOrCreateByElement=function(a){return b.findByElement(a)||new b(a)},b.refreshAll=function(){for(var a in d)d[a].refresh()},b.findByElement=function(a){return d[a.waypointContextKey]},window.onload=function(){f&&f(),b.refreshAll()},e.requestAnimationFrame=function(b){(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||a).call(window,b)},e.Context=b}(),function(){"use strict";function a(a,b){return a.triggerPoint-b.triggerPoint}function b(a,b){return b.triggerPoint-a.triggerPoint}function c(a){this.name=a.name,this.axis=a.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),d[this.axis][this.name]=this}var d={vertical:{},horizontal:{}},e=window.Waypoint;c.prototype.add=function(a){this.waypoints.push(a)},c.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},c.prototype.flushTriggers=function(){for(var c in this.triggerQueues){var d=this.triggerQueues[c],e="up"===c||"left"===c;d.sort(e?b:a);for(var f=0,g=d.length;f-1&&this.waypoints.splice(b,1)},c.prototype.first=function(){return this.waypoints[0]},c.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},c.findOrCreate=function(a){return d[a.axis][a.name]||new c(a)},e.Group=c}(),function(){"use strict";function a(a){this.$element=b(a)}var b=window.jQuery,c=window.Waypoint;b.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(b,c){a.prototype[c]=function(){var a=Array.prototype.slice.call(arguments);return this.$element[c].apply(this.$element,a)}}),b.each(["extend","inArray","isEmptyObject"],function(c,d){a[d]=b[d]}),c.adapters.push({name:"jquery",Adapter:a}),c.Adapter=a}(),function(){"use strict";function a(a){return function(){var c=[],d=arguments[0];return"function"==typeof arguments[0]&&(d=a.extend({},arguments[1]),d.handler=arguments[0]),this.each(function(){var e=a.extend({},d,{element:this});"string"==typeof e.context&&(e.context=a(this).closest(e.context)[0]),c.push(new b(e))}),c}}var b=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=a(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=a(window.Zepto))}();