(function(l,i,d,b){b=d.fn.overscroll=function(a){return this.each(function(){b.init(d(this),a)})};d.extend(b,{events:{wheel:"mousewheel DOMMouseScroll",start:"select mousedown touchstart",drag:"mousemove touchmove",end:"mouseup touchend",ignored:"dragstart drag"},div:"
",noop:function(){return!1},constants:{driftFrequency:40,driftSequences:22,driftDecay:1.15,timeout:400,captureThreshold:3,wheelDelta:20,scrollDelta:15,thumbThickness:8,thumbOpacity:0.7,boundingBox:1E6},checkIosDevice:function(){if(b.isIOS=== void 0){var a=["iPhone","iPad","iPod"],c;for(c=0;c=0)return b.isIOS=!0;return b.isIOS=!1}return b.isIOS},init:function(a,c,e){e={sizing:b.getSizing(a)};c=d.extend({showThumbs:!0,wheelDirection:"vertical",cursor:"move",wheelDelta:b.constants.wheelDelta,scrollDelta:b.constants.scrollDelta,direction:"multi",cancelOn:"",onDriftEnd:d.noop},c||{});c.scrollDelta=i.abs(c.scrollDelta);c.wheelDelta=i.abs(c.wheelDelta);a.css({position:"relative",overflow:"hidden", cursor:c.cursor}).bind(b.events.wheel,e,b.wheel).bind(b.events.start,e,b.start).bind(b.events.ignored,b.noop);if(c.showThumbs){e.thumbs={};if(e.sizing.container.scrollWidth>0&&c.direction!=="vertical")e.thumbs.horizontal=d(b.div).css(b.getThumbCss(e.sizing.thumbs.horizontal)).fadeTo(0,0),a.prepend(e.thumbs.horizontal);if(e.sizing.container.scrollHeight>0&&c.direction!=="horizontal")e.thumbs.vertical=d(b.div).css(b.getThumbCss(e.sizing.thumbs.vertical)).fadeTo(0,0),a.prepend(e.thumbs.vertical)}e.target= a;e.options=c},toggleThumbs:function(a,c){a.thumbs&&(c?(a.thumbs.vertical&&a.thumbs.vertical.stop(!0,!0).fadeTo("fast",b.constants.thumbOpacity),a.thumbs.horizontal&&a.thumbs.horizontal.stop(!0,!0).fadeTo("fast",b.constants.thumbOpacity)):(a.thumbs.vertical&&a.thumbs.vertical.fadeTo("fast",0),a.thumbs.horizontal&&a.thumbs.horizontal.fadeTo("fast",0)))},setPosition:function(a,c,b){c.x=a.pageX;c.y=a.pageY;c.index=b;return c},wheel:function(a,c){b.clearInterval();a.wheelDelta&&(c=a.wheelDelta/(l.opera? -120:120));a.detail&&(c=-a.detail/3);if(!a.data.wheelCapture)a.data.wheelCapture={timeout:null},b.toggleThumbs(a.data,!0),a.data.target.stop(!0,!0).data("dragging",!0);c*=a.data.options.wheelDelta;a.data.options.wheelDirection==="horizontal"?this.scrollLeft-=c:this.scrollTop-=c;b.moveThumbs(a,this.scrollLeft,this.scrollTop);a.data.wheelCapture.timeout&&clearTimeout(a.data.wheelCapture.timeout);a.data.wheelCapture.timeout=setTimeout(function(){a.data.wheelCapture=void 0;b.toggleThumbs(a.data,!1);a.data.target.data("dragging", !1);a.data.options.onDriftEnd.call(a.data.target,a.data)},b.constants.timeout);return!1},moveThumbs:function(a,c,b,d,f,g,h){if(a.data.options.showThumbs)d=a.data.thumbs,f=a.data.sizing,d.horizontal&&(g=c*(1+f.container.width/f.container.scrollWidth),h=b+f.thumbs.horizontal.top,d.horizontal.css("margin",h+"px 0 0 "+g+"px")),d.vertical&&(g=c+f.thumbs.vertical.left,h=b*(1+f.container.height/f.container.scrollHeight),d.vertical.css("margin",h+"px 0 0 "+g+"px"))},start:function(a){b.clearInterval();if(!d(a.target).is(a.data.options.cancelOn))b.normalizeEvent(a), d(document).bind(b.events.drag,a.data,b.drag).bind(b.events.end,a.data,b.stop),a.data.target.stop(!0,!0).data("dragging",!1),a.data.position=b.setPosition(a,{}),a.data.capture=b.setPosition(a,{},2)},drag:function(a){b.normalizeEvent(a);a.data.target.data("dragging")||b.toggleThumbs(a.data,!0);a.data.options.direction!=="vertical"&&(a.data.target[0].scrollLeft-=a.pageX-a.data.position.x);a.data.options.direction!=="horizontal"&&(a.data.target[0].scrollTop-=a.pageY-a.data.position.y);b.moveThumbs(a, a.data.target[0].scrollLeft,a.data.target[0].scrollTop);b.setPosition(a,a.data.position);--a.data.capture.index<=0&&(a.data.target.data("dragging",!0),b.setPosition(a,a.data.capture,b.constants.captureThreshold));return!0},normalizeEvent:function(a){if(b.checkIosDevice()){var c=a.originalEvent.changedTouches[0];a.pageX=c.pageX;a.pageY=c.pageY}},stop:function(a){if(a.data.position)d(document).unbind(b.events.drag,b.drag),a.data.target.data("dragging")?b.drift(a.data.target[0],a,function(a){a.target.data("dragging", !1);a.options.onDriftEnd.call(a.target,a);b.toggleThumbs(a,!1)}):b.toggleThumbs(a.data,!1),a.data.capture=a.data.position=void 0;return!a.data.target.data("dragging")},clearInterval:function(){b.driftInterval&&l.clearInterval(b.driftInterval)},setInterval:function(a){b.driftInterval=a},drift:function(a,c,d){b.normalizeEvent(c);var i=c.data.options.scrollDelta*(c.pageX-c.data.capture.x),f=c.data.options.scrollDelta*(c.pageY-c.data.capture.y),g=a.scrollLeft,h=a.scrollTop,j=i/b.constants.driftSequences, k=f/b.constants.driftSequences,m=b.constants.driftDecay;c.data.options.direction!=="vertical"&&(g-=i);c.data.options.direction!=="horizontal"&&(h-=f);b.setInterval(l.setInterval(function(){var f=!0;if(k>1&&a.scrollTop>h||k<-1&&a.scrollTop1&&a.scrollLeft>g||j<-1&&a.scrollLeft