function MM_preloadImages() { //v3.0
  var d=document; 

  if(d.images){         //If document supports image object
    if(!d.MM_p)		    //If images have not already been preloaded
      d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments;  //j set to length of pleloaded images
    for(i=0; i<a.length; i++)
      if (a[i].indexOf("#")!=0){ 
        d.MM_p[j]=new Image; 
        d.MM_p[j++].src=a[i];
      }
   }
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; 

  document.MM_sr = new Array; 
  for(i=0;i<(a.length-1);i+=2)   //The last argument is the location of the image swap from the previous time throught the loop
   if ( (x=MM_findObj(a[i])) != null){
     document.MM_sr[j++]=x;      //x is the image controler
     if(!x.oSrc)                 //Set oSrc for this image if not already set
       x.oSrc=x.src; 
     x.src=a[i+1];
   }
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr;

  //For loop will make sure that a exists, i is less then a.length, sets x to a[i], checks that oSrc exists for x
  for(i=0; a && i<a.length && (x=a[i]) && x.oSrc; i++)
    x.src=x.oSrc;
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;

  for (i=0; i<(args.length-1); i+=2) 
  if ( (obj=MM_findObj(args[i])) != null) {
    v=args[i+1];       //snag visibility keyword
    if (obj.style) {   //if object supports style object switch to style object and alter visibility keyword
      obj=obj.style; 
      v=(v=='show')?'visible':(v='hide')?'hidden':v; 
    }
    obj.visibility=v;  
  }
}

function MM_findObj(n, d) { //v4.0, this is a recursive function
  var p,i,x; 
 
  if(!d) d=document;
  if( (p=n.indexOf("?")) > 0 && parent.frames.length) { //? is not at the 0 index of n, and p*.f*.l*  is supported
    d=parent.frames[n.substring(p+1)].document; 
    n=n.substring(0,p);
  }
  if(!(x=d[n])&&d.all) 
    x=d.all[n];
  for (i=0;!x&&i<d.forms.length;i++) 
    x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) 
    x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) 
    x=document.getElementById(n); 
  return x;
}