/*
USAGE:
	do_once = once( my_func );
	
	do_once();		// this will run my_func()
	do_once();		// this will do nothing
	do_once();		// this will do nothing
*/
function once( func ){
	var done = false;
	
	return function () {
		return done ? void 0 : ((done = true), func.apply(this, arguments));
	}
}// once()