jQuery.fn.extend({ScrollTo:function(speed,axis){jQuery(this).dequeue('interfaceFX');o=jQuery.speed(speed);return this.queue('interfaceFX',function(){new jQuery.fx.ScrollTo(this,o,axis);});},ScrollToAnchors:function(speed,axis){return this.each(function(){jQuery('a[@href*="#"]',this).click(function(e){parts=this.href.split('#');jQuery('#'+parts[1]).ScrollTo(speed,axis);return false;});})}});jQuery.fx.ScrollTo=function(e,o,axis){var z=this;z.o=o;z.e=e;z.axis=/vertical|horizontal/.test(axis)?axis:false;p=jQuery.iUtil.getPosition(e);s=jQuery.iUtil.getScroll();z.clear=function(){clearInterval(z.timer);z.timer=null;};z.t=(new Date).getTime();s.h=s.h>s.ih?(s.h-s.ih):s.h;s.w=s.w>s.iw?(s.w-s.iw):s.w;z.endTop=p.y>s.h?s.h:p.y;z.endLeft=p.x>s.w?s.w:p.x;z.startTop=s.t;z.startLeft=s.l;z.step=function(){var t=(new Date).getTime();var n=t-z.t;var p=n/z.o.duration;if(t>=z.o.duration+z.t){z.clear();setTimeout(function(){z.scroll(z.endTop,z.endLeft)},13);}else{if(!z.axis||z.axis=='vertical'){st=((-Math.cos(p*Math.PI)/2)+0.5)*(z.endTop-z.startTop)+z.startTop;}else{st=z.startTop;}if(!z.axis||z.axis=='horizontal'){sl=((-Math.cos(p*Math.PI)/2)+0.5)*(z.endLeft-z.startLeft)+z.startLeft;}else{sl=z.startLeft;}z.scroll(st,sl);}};z.scroll=function(t,l){window.scrollTo(l,t);};z.timer=setInterval(function(){z.step();},13);};