function observeSlideLink(p) {
	$(p == null ? document.body : p).getElementsBySelector("a").each(
			function(o) {
				if (!o.href.match(/.+(#.+)/))
					return true;
				var id = o.href.replace(/.+#(.+)/, "$1");
				o.onclick = function() {
					var f = document.viewport.getScrollOffsets();
					if (!$(id))
						return;
					var t = $(id).cumulativeOffset()[1];
					var d = f.top < t ? 1 : -1;
					var i = setInterval(function() {
						var a = Math.abs(f.top - t) * 0.07 + 5;
						if ((d > 0 && t <= f.top) || (d <= 0 && t >= f.top)) {
							scrollTo(f.left, t);
							clearInterval(i);
						} else {
							scrollTo(f.left, f.top);
						}
						f.top += d * a;
					}, 10);
					return false;
				}
			});
}
window.onload = function() {
	observeSlideLink();
}

