if (document.getElementsByTagName && document.getElementById) {
  if (window.addEventListener) window.addEventListener('load', installDefaultRollovers, false);
  else if (window.attachEvent) window.attachEvent('onload', installDefaultRollovers);
 }

function installDefaultRollovers() {
  installRolloversOn(document.body);
}

function installRolloversOn(element) {
  if (typeof(element) == 'string') element = document.getElementById(element); 
  if (element == null) return; 

  var nameFormat = /(.*)(_base\.)([^\.]{3,4})$/;

  var preload = new Array();
  var currentImage;
  var allImages;
  var matched; 

  allImages = element.getElementsByTagName('img'); 

  for (var i = 0; currentImage = allImages[i++]; ) { 
    if (!currentImage.rolloverInstalled 
	&& (matched = currentImage.src.match(nameFormat))) { 
      var replacement = matched[1]+'_roll.'+ matched[3]; 

      preload.push( (new Image()).src=currentImage.src );
      preload.push( (new Image()).src=replacement );
   
      currentImage.onmouseover = thunk(replacement);
      currentImage.onmouseout = thunk(currentImage.src); 
      
      currentImage.rolloverInstalled = true; 
    } 
  } 

  function thunk(repl) { 
    return function() { this.src = repl; };
  }
} 
