jQuery(function( $ ){
	/**
	 * Demo binding and preparation, no need to read this part
	 */
		//borrowed from jQuery easing plugin
		//http://gsgd.co.uk/sandbox/jquery.easing.php
		$.easing.elasout = function(x, t, b, c, d) {
			var s=1.70158;var p=0;var a=c;
			if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
			if (a < Math.abs(c)) { a=c; var s=p/4; }
			else var s = p/(2*Math.PI) * Math.asin (c/a);
			return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
		};
		$.easing.expoout = function(x, t, b, c, d) {
			return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
		};
		$.easing.expoinout = function(x, t, b, c, d) {
			if (t==0) return b;
			if (t==d) return b+c;
			if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
			return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
		};
		$.easing.sinout = function(x, t, b, c, d) {
			return c * Math.sin(t/d * (Math.PI/2)) + b;
		};
	
	// This one is important, many browsers don't reset scroll on refreshes
	// Reset all scrollable panes to (0,0)

	$.scrollTo( 0 );
	
	// TOC, shows how to scroll the whole window
	$('.menu a').click(function(){
		$.scrollTo( this.hash, 1200, {easing:'expoinout'} );
		return false;
	});

	$('.top_btn').click(function(){
		$.scrollTo( 0, 1200, {easing:'expoinout'} );
		return false;
	});
});
