jQuery.fn.initTogglePane = function( props ) {
	props = jQuery.extend({
		// todo: highlander:false,
		headerClassClosed:null,
		startOpened:Infinity,
		speed:'fast'
		},
		props ? props : {});
	if( false === props.startOpened ) props.startOpened = NaN;
	else if( true === props.startOpened ) props.startOpened = Infinity;
	var wrappers = jQuery('> div',this);
	var contents = jQuery('div:last',wrappers);
	var heads = jQuery('div:first',wrappers);
	if( ! heads.lt ) { // accommodate jQuery 1.2 incompatibility...
		heads.lt = function(index) { return heads.slice(0,index); };
		heads.gt = function(index) { return heads.slice(index+1); };
	}
	heads.click( function() {
		var head = jQuery(this);
		head.next().slideToggle(props.speed,
			props.headerClassClosed
			? function(){head.toggleClass( props.headerClassClosed )}
			: undefined);
	});
	var so = props.startOpened;

	if( isNaN(so) ) {
		heads.click(); // close all
	}
	else if( ! isFinite( so ) ) {
		1; // Inifinity: all are opened.
	}	
	else if( (so >= 0) && (so < heads.length) ) {
		heads.lt(so).click();
		heads.gt(so).click();
		Integra.SeedsForSuccess.JQueryReady = true;
	} else {
		1; // this is an error, but lamely ignore it.
	}
	return this;
};
