function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

/*-----------------------------------------------------------------------
/* Smooth scrolling
  Changes links that link to other parts of this page to scroll
  smoothly to those links rather than jump to them directly, which
  can be a little disorienting.
  
  sil, http://www.kryogenix.org/
  
  v1.0 2003-11-11
  v1.1 2005-06-16 wrap it up in an object

*/

var ss = {
 fixAllLinks: function() {
   // Get a list of all links in the page
   var allLinks = document.getElementsByTagName('a');
   // Walk through the list
   for (var i=0;i<allLinks.length;i++) {
     var lnk = allLinks[i];
     if ((lnk.href && lnk.href.indexOf('#') != -1) && 
         ( (lnk.pathname == location.pathname) ||

	    ('/'+lnk.pathname == location.pathname) ) && 
         (lnk.search == location.search)) {
       // If the link is internal to the page (begins in #)
       // then attach the smoothScroll function as an onclick
       // event handler
       ss.addEvent(lnk,'click',ss.smoothScroll);
     }
   }
 },

 smoothScroll: function(e) {
   // This is an event handler; get the clicked on element,
   // in a cross-browser fashion
   if (window.event) {
     target = window.event.srcElement;
   } else if (e) {
     target = e.target;
   } else return;


   // Make sure that the target is an element, not a text node
   // within an element
   if (target.nodeName.toLowerCase() != 'a') {
     target = target.parentNode;
   }
 
   // Paranoia; check this is an A tag
   if (target.nodeName.toLowerCase() != 'a') return;
 
   // Find the <a name> tag corresponding to this href
   // First strip off the hash (first character)
   anchor = target.hash.substr(1);
   // Now loop all A tags until we find one with that name
   var allLinks = document.getElementsByTagName('a');
   var destinationLink = null;
   for (var i=0;i<allLinks.length;i++) {
     var lnk = allLinks[i];
     if (lnk.name && (lnk.name == anchor)) {
       destinationLink = lnk;
       break;
     }
   }
   if (!destinationLink) destinationLink = document.getElementById(anchor);


   // If we didn't find a destination, give up and let the browser do
   // its thing
   if (!destinationLink) return true;
 
   // Find the destination's position
   var destx = destinationLink.offsetLeft; 
   var desty = destinationLink.offsetTop;
   var thisNode = destinationLink;
   while (thisNode.offsetParent && 
         (thisNode.offsetParent != document.body)) {
     thisNode = thisNode.offsetParent;
     destx += thisNode.offsetLeft;
     desty += thisNode.offsetTop;
   }
 
   // Stop any current scrolling
   clearInterval(ss.INTERVAL);
 
   cypos = ss.getCurrentYPos();
 
   ss_stepsize = parseInt((desty-cypos)/ss.STEPS);
   ss.INTERVAL =

setInterval('ss.scrollWindow('+ss_stepsize+','+desty+',"'+anchor+'")',10);
 
   // And stop the actual click happening
   if (window.event) {
     window.event.cancelBubble = true;
     window.event.returnValue = false;
   }
   if (e && e.preventDefault && e.stopPropagation) {
     e.preventDefault();
     e.stopPropagation();
   }
 },


 scrollWindow: function(scramount,dest,anchor) {
   wascypos = ss.getCurrentYPos();
   isAbove = (wascypos < dest);
   window.scrollTo(0,wascypos + scramount);
   iscypos = ss.getCurrentYPos();
   isAboveNow = (iscypos < dest);
   if ((isAbove != isAboveNow) || (wascypos == iscypos)) {
     // if we've just scrolled past the destination, or
     // we haven't moved from the last scroll (i.e., we're at the
     // bottom of the page) then scroll exactly to the link
     window.scrollTo(0,dest);
     // cancel the repeating timer
     clearInterval(ss.INTERVAL);
     // and jump to the link directly so the URL's right
     location.hash = anchor;
   }
 },


 getCurrentYPos: function() {
   if (document.body && document.body.scrollTop)
     return document.body.scrollTop;
   if (document.documentElement && document.documentElement.scrollTop)
     return document.documentElement.scrollTop;
   if (window.pageYOffset)
     return window.pageYOffset;
   return 0;
 },


 addEvent: function(elm, evType, fn, useCapture) {
   // addEvent and removeEvent
   // cross-browser event handling for IE5+,  NS6 and Mozilla
   // By Scott Andrew
   if (elm.addEventListener){
     elm.addEventListener(evType, fn, useCapture);
     return true;
   } else if (elm.attachEvent){
     var r = elm.attachEvent("on"+evType, fn);
     return r;
   } else {
     alert("Handler could not be removed");
   }
 } 

}

ss.STEPS = 25;
ss.addEvent(window,"load",ss.fixAllLinks);



/*--------------------------------------------------------------------------*/
//

function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 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_swapImgRestore() { //v3.0
 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;

}



function MM_findObj(n, d) { //v4.01
 var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
   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 && d.getElementById) x=d.getElementById(n); return x;

}



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-2);i+=3)
  if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}

}



/*--------------------------------------------------------------------------*/

function smartRollover() {
	if(document.getElementsByTagName) {
		var images = document.getElementsByTagName("img");
		for(var i=0; i < images.length; i++) {
			if(images[i].getAttribute("src").match("_off."))
			{
				images[i].onmouseover = function() {
					this.setAttribute("src", this.getAttribute("src").replace("_off.", "_on."));
				}
				images[i].onmouseout = function() {
					this.setAttribute("src", this.getAttribute("src").replace("_on.", "_off."));
				}
			}
		}
	}
}

if(window.addEventListener) {
	window.addEventListener("load", smartRollover, false);
}

else if(window.attachEvent) {
	window.attachEvent("onload", smartRollover);
}

function chgImgImageSubmit(fileName,imgObj){
	imgObj.src = fileName;
}
