registerSetupFunction('label[for=^searchterms$]',function(label){
	/* make search field auto-clearing behavior */
	var labelFor=label.htmlFor;
	var input=document.getElementById(labelFor);
	if(!input){return;}
	if(input.defaultValue.match(/^\s*$/)){input.defaultValue=input.value=elemText(label);}
	input.onfocus=function(){
		if(this.value==this.defaultValue){
			this.value='';
		};
	};
	input.onblur=function(){
		if(this.value==''){
			this.value = this.defaultValue;
		}
	};
},true);

if (lteie6) { // just ie 6 and below
	registerSetupFunction('div.entry',function(div){
		/* add some structural information to enable certain css workarounds */
		if (div.parentNode.firstChild == div) { addClassName(div,'first-child'); }
	});
	registerSetupFunction('tr',function(tr){
		/* add some structural information to enable certain css workarounds */
		if (tr.parentNode.firstChild == tr) { addClassName(tr,'first-child'); }
	});
	registerSetupFunction('li',function(li){
		/* add some structural information to enable certain css workarounds */
		if (li.parentNode.firstChild == li) { addClassName(li,'first-child'); }
	});
}

if (lteie7) { // just ie 7 and below
	registerSetupFunction('p.blockheadextra',function(p){
		/* add some structural information to enable certain css workarounds */
		addClassName(p.parentNode, "containsblockheadextra");
	});
	registerSetupFunction('div#tagcloud',function(div){
		// ugly hack for ie line height
		var p = div.getElementsByTagName('p')[0];
		p.appendChild(elem('span',{'class':'ender'},' '));
		p.appendChild(elem('br'));
		p.appendChild(elem('br'));
	});
}

