(function(n){"use strict";n.event.special.swipe={setup:function(){n(this).bind("touchstart",n.event.special.swipe.touchHandler).bind("mousedown",n.event.special.swipe.dragHandler)},teardown:function(){n(this).unbind("touchstart",n.event.special.swipe.handler).unbind("touchstart",n.event.special.swipe.handler)},touchHandler:function(t){function o(){e.removeEventListener("touchmove",s);this.removeEventListener("touchend",o);r=u=null}function s(i){var o=r-i.touches[0].pageX,s=u-i.touches[0].pageY;return t.type="swipe",f.unshift(t,o,s),(n.event.dispatch||n.event.handle).apply(e,f)}var f=[].slice.call(arguments,1),i=t.originalEvent.touches,r,u,e=this;t=n.event.fix(t);i.length==1&&(r=i[0].pageX,u=i[0].pageY,this.addEventListener("touchmove",s,!1),this.addEventListener("touchend",o,!1))},dragHandler:function(t){function f(){this.removeEventListener("mousemove",e);this.removeEventListener("mouseup",f);i=r=null}function e(f){var e=i-f.pageX,s=r-f.pageY;return t.type="swipe",u.unshift(t,e,s),(n.event.dispatch||n.event.handle).apply(o,u)}var u=[].slice.call(arguments,1),i,r,o=this;t=n.event.fix(t);i=t.originalEvent.pageX;r=t.originalEvent.pageY;this.addEventListener("mousemove",e,!1);this.addEventListener("mouseup",f,!1)}}})(jQuery)