function swfReplacement(hTag) { 		var sizes = [];	sizes['H1'] = '20';	sizes['H2'] = '15';		cleanWhitespace(hTag); 		    forceId(hTag);	      	var text = '';	var link = false;		if(hTag.lastChild.nodeType == 3) {		 text = hTag.lastChild.nodeValue;   	} else {	   //#TODO - make this check that we have a link, don't assume	   link = hTag.lastChild.href;	   text = hTag.lastChild.childNodes[0].nodeValue;	}		var width = hTag.offsetWidth ? hTag.offsetWidth : hTag.parentNode.offsetWidth;	var so = new SWFObject("/cms/front/swf/header.swf", hTag.id, width, "24", "6");	so.addVariable("header", encodeURI(text));			if(link){		so.addVariable("href", link);   	}	so.addVariable("size", sizes[hTag.tagName]);	//so.addVariable("colour", "#ff0000");   								so.addParam("wmode", "transparent");								so.write(hTag.id);	}var id_counter = 0;	function forceId(element) {	if(!element.id) {		element.id = 'replacement_'+id_counter; 	}	id_counter++;}function countTagAsChild(element, tag) {	var tmp;	var counter = 0;	for(var i=0; i<element.childNodes.length; i++) {		if(element.childNodes[i].nodeName == tag) {			counter++;		}		counter += countTagAsChild(element.childNodes[i], tag);	}		return counter;}function findFirstByDepth(element, tag) {	var tmp;	for(var i=0; i<element.childNodes.length; i++) {		if(element.childNodes[i].nodeName == tag) {			return element.childNodes[i];		}		if(tmp = findFirstByDepth(element.childNodes[i], tag)) {			return tmp;		}	}		return false;}window.onload = function(){        	  var swfTargetClass = 'replacer';	  var replaceable = $D.getElementsByClassName(swfTargetClass);	  //fails on MSIE5 because it can't cope with finding by class :-(	  for(var i=0;i<replaceable.length;i++) {		swfReplacement(replaceable[i]);	  }			  var bannerHolder = $('banner');	  if(bannerHolder) {	  	swfBannerReplacement(bannerHolder);	  }		  document.getElementsByTagName('body')[0].className = '';}