var pageNode,pageParent,contentWidth=0;
var isMacIE = (document.all && navigator.platform.indexOf('Mac') != -1) ? true : false;
function parseHref(fullHref) {
  var domLoc;
  if (fullHref.indexOf('//')==-1) {
	var i=0
	var upDir = fullHref.split('/');
	for (i=0;i<upDir.length;i++) {
	  if (upDir[i] != '..') {
	    break;
	  }
	}
	var rebuildStop = (leaf) ? docLoc[2].length-(i+1) : docLoc[3].length-i;///*(*/
	rebuildCrumb = (leaf) ? docLoc[2].slice(0,rebuildStop) : docLoc[3].slice(0,rebuildStop);
	forkHref = upDir.slice(i);
	newHref = rebuildCrumb.concat(forkHref);//if(i=1) alert(newHref);
	fullHref = docLoc[1] + newHref.join('/');
  }
  if (fullHref.indexOf('local_fidm.com')!=-1) {
	//domLoc = fullHref.substr(0,fullHref.indexOf('transition_redesign')+20);
	domLoc = fullHref.substr(0,fullHref.indexOf('local_fidm.com')+15);
  } else {
	domStart = fullHref.lastIndexOf('//')+2;
	domEnd = fullHref.substr(domStart).indexOf('/')+1;
	domLoc = fullHref.substr(0,domStart+domEnd);
  }
  if (fullHref.charAt(fullHref.length-1)=='/') fullHref+='index.html';
  var folderString = ((x=fullHref.indexOf('.html')) != -1) ? fullHref.substring(domLoc.length,x) : ((trailingSlash = fullHref.charAt(fullHref.length-1))=='/') ? fullHref.substr(domLoc.length,trailingSlash) : fullHref.substring(domLoc.length);
  crumbs = folderString.split('/');
  if ((lastFolder = folderString.lastIndexOf('index'))!=-1) folderString = folderString.substr(0,lastFolder);
//  if ((lastFolder = folderString.lastIndexOf('sideframe'))!=-1) folderString = folderString.substr(0,lastFolder);
  var trailingSlash = (folderString.charAt(folderString.length-1)=='/') ? folderString.substr(0,folderString.length-1) : folderString;
  columns = trailingSlash.split('/');
  hrefObj = new Array(fullHref,domLoc,crumbs,columns,folderString);
  return hrefObj;
}
var docLoc = parseHref(unescape(top.document.location.href));
var rootLoc = docLoc[1];

var gregorian = new Array("calendar","January","February","March","April","May","June","July","August","September","October","November","December");
function toCalendar(date) {
  return gregorian[parseInt(date.substring(4,6),10)] + ' ' + date.substring(0,4);
}
function nairogerg(dateStr) {
  dateArray = dateStr.split(' ');
  for (i=1;i<gregorian.length; i++) {
    if (gregorian[i].indexOf(dateArray[0]) == 0) {
	  zeroDigit = (i*.01) + '';
	  if (zeroDigit.length < 4) zeroDigit += '0';
      return dateArray[1] + zeroDigit.substring(2);
	}
  }
  return '200003'
}
function swapClass(newClass,activeObj) {
  var obj = (activeObj!=null) ? MM_findObj(activeObj) : this;
  if (obj!=null) {
    obj.className = newClass;
  }
}
function creiterator() {
  var args=creiterator.arguments, d=document, parentElem=new Array(),parentId;
  var newElem = d.createElement(args[0].substring(args[0].lastIndexOf('!')+1))
  if (args.length>1) {
    for (k=1;k<args.length;k+=2) {
      switch(args[k]) {
	  case "text":
	    newElem.appendChild(d.createTextNode(args[k+1]))
	    break;
	  case "br":
	    newDfn = d.createElement('BR');
	    newElem.appendChild(newDfn)
	    break;
	  case "dfn":
	    newDfn = d.createElement('DFN');
	    newDfn.appendChild(d.createTextNode(args[k+1]))
	    newElem.appendChild(newDfn)
	    break;
	  case "image":
	    newImg = d.createElement('IMG');
		newImg.setAttribute('src',args[k+1]);
		newImg.setAttribute('border','0');
		newImg.setAttribute('alt','thumbnail')
	    newElem.appendChild(newImg)
	    break;
	  case "innerHTML":
	    newElem.innerHTML = args[k+1];
	    break;
      default:
	    newElem.setAttribute(args[k],args[k+1])
	    break;
	  }
	}
  }
  if (args[0].indexOf('!')!=-1) {
    argsTags = args[0].split('!');
	n = argsTags.length-1;
	for (m=0;m<=n;m++) {
	  if ((parentId = argsTags[m].split('#')).length>1) {
		parentElem[m] = d.createElement(parentId[0]);
		parentElem[m].setAttribute('id',parentId[1]);
	  } else if ((parentId = argsTags[m].split('?')).length>1) {
		parentElem[m] = d.createElement(parentId[0]);
		parentElem[m].className = parentId[1];
	  } else {
	    parentElem[m] = d.createElement(argsTags[m]);
	  }
	}
	parentElem[n--] = parentElem[n].appendChild(newElem);
	while (n>0) parentElem[n--] = parentElem[n].appendChild(parentElem[n+1]);
	return parentElem[0];
  } else {
    return newElem;
  }
}
function addMenuBehavior(navRoot,cut) {
  for (i=0; i<navRoot.childNodes.length; i++) {
    node = navRoot.childNodes[i];
    if (node.nodeName=="LI") {
	  for (j=0; j<node.childNodes.length; j++) {
		if(node.childNodes[j].nodeName == "UL" || node.childNodes[j].nodeName == "DL") {
          if (cut.indexOf('?')!=-1) {
            node.onclick=function() {
		      if (this.className.indexOf('over')!=-1) {
                this.className=this.className.replace("over", "");
			  } else {
		        for (n=0; n<this.parentNode.childNodes.length; n++) {
		          if (this.parentNode.childNodes[n].nodeName=="LI") this.parentNode.childNodes[n].className="";
		        };
                this.className+="over";
			  }
			  fixEvent(this);
            }
	      } else {
/*			blockHover(node);*/
			node.onmouseover=function() {
              this.className+="over";
			  fixEvent(this);
			}
            node.onmouseout=function() {
              this.className=this.className.replace("over", "");
			  fixEvent(this);
            }
          }
 		}
      }
    }
  } 
}
function fixEvent(event) {
    // add W3C standard event methods
    event.preventDefault = fixEvent.preventDefault;
    event.stopPropagation = fixEvent.stopPropagation;
    return event;
};
fixEvent.preventDefault = function() {
    this.returnValue = false;
};
fixEvent.stopPropagation = function() {
    this.cancelBubble = true;
};
function findTag(which,what) {
  if (which != null) {
  var whatAttr = null;
  if (what.indexOf('?')!=-1) {
	whatTemp=what.split('?');
	what = whatTemp[0];
	whatAttr = whatTemp[1].split('=');
  }
  if (which.hasChildNodes()) {
    for (n=0; n<which.childNodes.length; n++) {
	  if (which.childNodes[n].nodeName == what) {
		if (whatAttr!=null && whatAttr[0] == 'class' && which.childNodes[n].className==whatAttr[1]) {
		  return which.childNodes[n];
		} else if (whatAttr==null || (whatAttr!=null && which.childNodes[n].getAttribute(whatAttr[0])==whatAttr[1])) {
		  return which.childNodes[n];
		}
	  }
	}
  }
  }
  return null;
}
function menuTrail() {
  var a=menuTrail.arguments;
  for(m=a.length-1;m>=0;m--) {
    var menuContainer = document.getElementById(a[m])
    if (menuContainer != null && menuContainer.hasChildNodes()) {
      for (j=0; j<menuContainer.childNodes.length; j++) {
        if (menuContainer.childNodes[j].nodeName == "UL") {
          for (i=0; i<(parentUL = menuContainer.childNodes[j]).childNodes.length; i++) {
            if (parentUL.childNodes[i].nodeName == "LI" && parentUL.childNodes[i].firstChild.nodeName == "A") {
		      liHref = parseHref(unescape(parentUL.childNodes[i].firstChild.getAttribute('href')))
		      var nestNav = findTag(parentUL.childNodes[i],'UL')
			  if (nestNav != null) {
		        for (k=0;k<nestNav.childNodes.length;k++) {
                  if (nestNav.childNodes[k].nodeName == "LI" && nestNav.childNodes[k].firstChild.nodeName == "A") {
		            nestHref = parseHref(unescape(nestNav.childNodes[k].firstChild.getAttribute('href')));
		            if (document.location.href.indexOf(nestHref[4])!=-1 && nestHref[1] == rootLoc) {
		              nestNav.parentNode.setAttribute('id','current');
				      nestNav.childNodes[k].className = 'current';
			        } else if (m==2) {
			          tempHref = liHref[2].slice(0,2+m);
				      if (document.location.href.indexOf(tempHref.join('/'))!=-1 && liHref[1] == rootLoc) parentUL.childNodes[i].setAttribute('id','current');
					}
				  }
			    }
			  } else if (m==a.length-1) {
				  if (liHref[2][0] == docLoc[2][0]) parentUL.childNodes[i].className = 'current';
			  } else if (m==1) {
			    tempHref = liHref[2].slice(0,2+m);
				if (document.location.href.indexOf(tempHref.join('/'))!=-1 && liHref[1] == rootLoc) parentUL.childNodes[i].className = 'current';
			  } else if (m==0) {
			    tempHref = liHref[2].slice(0,2+m);
				if (document.location.href.indexOf(tempHref.join('/'))!=-1 && liHref[1] == rootLoc) parentUL.childNodes[i].className = 'current';
			  } else if (document.location.href.indexOf(liHref[4])!=-1 && liHref[1] == rootLoc) {
		        parentUL.childNodes[i].className = 'current';
			    if (a[m] == 'morenav') {
		          parentUL.childNodes[i].setAttribute('id','LIcurrent');
			    }
			  }
	        }
          }
	    }
	  }
    }
  }
}
function startList() {
  var m,a=startList.arguments; document.startList=new Array;
  for(m=0;m<(a.length);m++) {
    if ((cut=a[m].indexOf('?')) != -1 && (navRoot = MM_findObj(a[m].substring(cut+1)))!=null || document.all&&document.getElementById && (navRoot = MM_findObj(a[m]))!=null) {
      if (navRoot.nodeName != "UL") {
        for (i=0; i<navRoot.childNodes.length; i++) {
          if (navRoot.childNodes[i].nodeName == "UL" && navRoot.childNodes[i].childNodes.length > 1) {
		     addMenuBehavior(navRoot.childNodes[i],a[m]);
		  }
        }
      } else {
	    addMenuBehavior(navRoot,a[m]);
	  }
    }
  }
}
function findSlot() {
	for (k=0; k<pageParent.childNodes.length; k++) {
		if (pageParent.childNodes[k].nodeName != '#text' && pageParent.childNodes[k].nodeName == pageNode.nodeName && pageNode.getAttribute('id')==pageParent.childNodes[k].getAttribute('id')) {
			break;
		}
	}
	return k;
}
function findFirst() {
	g = (pageParent.firstChild.nodeName == '#text') ? 1 : 0;
	f = (g==1) ? 2 : 1;
	for (h=g; h<pageParent.childNodes.length; h+=f) {
		if ((g==1 && pageParent.childNodes[h].firstChild.nodeName == 'A') || (g==0 && pageParent.childNodes[h].firstChild.nodeName == 'A')) {
			break;
		}
	}
	return h;
}
function findLast() {
	g = (pageParent.firstChild.nodeName == '#text') ? 1 : 0;
	f = (g==1) ? 2 : 1;
	for (h=pageParent.childNodes.length-f; h>0; h--) {
		if (pageParent.childNodes[h].firstChild.nodeName == 'A') {
			break;
		}
	}
	return h;
}
function findPrevious(slot) {
	var i,nodePile = pageParent.childNodes;
	var firstAnchor = findFirst();
	if (slot<=firstAnchor) {
		i = findLast()
	} else {
		for (i=slot-1; i>=0; i--) {
			if (pageNode.nodeName == nodePile[i].nodeName && nodePile[i].firstChild.nodeName=="A") {
				break;
			}
		}
	}
	return i;
}
function findNext(slot) {
	var j,nodePile = pageParent.childNodes;
	var lastAnchor = findLast();
	if (slot >= lastAnchor) {
		j = findFirst();
	} else {
		for (j=slot+1; j<nodePile.length; j++) {
			if (pageNode.nodeName == nodePile[j].nodeName && nodePile[j].firstChild.nodeName=="A") {
				break;
			}
		}
	}
	return j;
}
function slideNav() {
  if ((node=document.getElementById('slideshow'))!=null) {
	menuObj = document.getElementById('morenav')
	pageParent = findTag(menuObj,'UL');
	pageFound = document.getElementById('LIcurrent');
	pageNode = (pageFound!=null) ? pageFound : pageParent.childNodes[findFirst()];
	menuTxtLngth = menuObj.firstChild.firstChild.firstChild.length;
	menuTitle = document.createTextNode(menuObj.firstChild.firstChild.firstChild.nodeValue);
	titleSlot = (pageFound!=null) ? document.createTextNode(pageNode.firstChild.firstChild.nodeValue) : menuTitle;
	if (titleSlot.nodeValue.length > menuTxtLngth) titleSlot.nodeValue = titleSlot.nodeValue.substring(0,menuTxtLngth) + '…';
    if (pageFound!=null) menuObj.firstChild.firstChild.replaceChild(titleSlot,menuObj.firstChild.firstChild.firstChild);
	menuObj.firstChild.firstChild.onmouseover = function() {
		menuObj.firstChild.firstChild.replaceChild(menuTitle,menuObj.firstChild.firstChild.firstChild);
	}
	menuObj.firstChild.firstChild.onmouseout = function() {
		menuObj.firstChild.firstChild.replaceChild(titleSlot,menuObj.firstChild.firstChild.firstChild);
	}
  if ((nodeSlidePrevious=MM_findObj('previous'))!=null && (nodeSlideNext=MM_findObj('next'))!=null) {
	newPrevious = creiterator('LI#previous!A!IMG','src',rootLoc + 'global/images/1.gif','width',30,'height',21,'border',0);
	newNext = creiterator('LI#next!A!IMG','src',rootLoc + 'global/images/1.gif','width',30,'height',21,'border',0);
	previousSlide = (pageFound!=null) ? findPrevious(findSlot()) : findPrevious(findFirst());
	nextSlide = (pageFound!=null) ? findNext(findSlot()) : findNext(findLast());
	linkPrevious = pageParent.childNodes[previousSlide].firstChild.getAttribute('href');
	linkNext = pageParent.childNodes[nextSlide].firstChild.getAttribute('href');
	titlePrevious = document.createTextNode(pageParent.childNodes[previousSlide].firstChild.firstChild.nodeValue);
	titleNext = document.createTextNode(pageParent.childNodes[nextSlide].firstChild.firstChild.nodeValue);
	newPrevious.firstChild.setAttribute('href',linkPrevious);
	if (titlePrevious.nodeValue.length > menuTxtLngth) titlePrevious.nodeValue = titlePrevious.nodeValue.substring(0,menuTxtLngth) + "…";
	if (titleNext.nodeValue.length > menuTxtLngth) titleNext.nodeValue = titleNext.nodeValue.substring(0,menuTxtLngth) + '…';
            newPrevious.firstChild.onmouseover=function() {
              menuObj.firstChild.firstChild.replaceChild(titlePrevious,menuObj.firstChild.firstChild.firstChild);
   	          if (isMacIE) swapClass('over','previous');
           }
            newPrevious.firstChild.onmouseout=function() {
              menuObj.firstChild.firstChild.replaceChild(titleSlot,menuObj.firstChild.firstChild.firstChild);
   	          if (isMacIE) swapClass('','previous');
            }
	newNext.firstChild.setAttribute('href',linkNext);
            newNext.firstChild.onmouseover=function() {
              menuObj.firstChild.firstChild.replaceChild(titleNext,menuObj.firstChild.firstChild.firstChild);
   	          if (isMacIE) swapClass('over','next');
            }
            newNext.firstChild.onmouseout=function() {
              menuObj.firstChild.firstChild.replaceChild(titleSlot,menuObj.firstChild.firstChild.firstChild);
   	          if (isMacIE) swapClass('','next');
            }
    node.replaceChild(newPrevious,nodeSlidePrevious);
    node.replaceChild(newNext,nodeSlideNext);
  }}
}
function disableIt() {
	for (i=0;i<(a=disableIt.arguments).length;i+=2) {
		if ((obj=document.getElementById(a[i]))!=null) obj.disabled = a[i+1];
	}
}
function fixSearch() {
  if ((searchTab = document.getElementById('search'))!=null) {
	if (searchTab.firstChild.getAttribute('href')!=null) searchTab.firstChild.setAttribute('href','http://search.fidm.com/')
  }
  if ((searchForm = document.getElementById('gs'))!=null) {
//  searchForm.setAttribute('action','http://google.com/search');
  searchForm.setAttribute('action','http://search.fidm.com/search');
  var inputArray = new Array()
  inputArray[inputArray.length] = new Array('ie','')
  inputArray[inputArray.length] = new Array('site','FIDM_Search')
  inputArray[inputArray.length] = new Array('output','xml_no_dtd')
  inputArray[inputArray.length] = new Array('client','FIDM_Search')
  inputArray[inputArray.length] = new Array('lr','')
  inputArray[inputArray.length] = new Array('proxystylesheet','FIDM_Search')
  inputArray[inputArray.length] = new Array('oe','')
  for (i=0;i<searchForm.childNodes.length;i++) {
    if (searchForm.childNodes[i].tagName == 'INPUT' && searchForm.childNodes[i].getAttribute('name') == 'as_sitesearch') {
      searchForm.removeChild(searchForm.childNodes[i]);
    }
  }
  for (j=0;j<inputArray.length; j++) {
    newInput = creiterator('INPUT','type','hidden','name',inputArray[j][0],'value',inputArray[j][1])
    searchForm.appendChild(newInput);
  }
/*  siteInput = creiterator('INPUT','type','hidden','name','as_sitesearch','value','www.fidm.com')
  searchForm.appendChild(siteInput);*/
}}
function finishPage() {
  //fixSearch(); //emergency change to search;
  if (top.document.location.href == document.location.href) getContentWidth();
  menuTrail('parentnav','lateralnav','interiornav','morenav','topmenu');
  sideCol();
//  sideHover('parentnav','lateralnav','interiornav');
  styleFinder();
  startList('smpllogo','interiornav','slideshow');
  slideNav();
  self.focus();
  window.onresize = sideCol;
/*  dcsVar();
  dcsMeta();
  dcsFunc("dcsAdv");
  dcsTag();*/
}

// Original JavaScript code by Duncan Crombie: dcrombie@chirp.com.au
// revised by Bradford Mar: bradfordmar@hotmail.com
// Please acknowledge use of this code by including this header.

//var bites = (document.cookie) ? document.cookie.split("; ") : null; // break cookie into array of bites

  function getCookie(name) { // use: getCookie("name");
    bites = (document.cookie) ? document.cookie.split("; ") : null; // break cookie into array of bites
    if (bites != null) {
      for (var i=0; i < bites.length; i++) {
        nextbite = bites[i].split("="); // break into name and value
        if (nextbite[0] == name) {// if name matches
          return unescape(nextbite[1]); // return value
        }
      }
    } else {
      return null;
    }
    return null;
  }

  function setCookie(name, value, expDate) {
    var today = new Date();
    var yearFromNow = new Date(today.getTime() + 31536000000); // plus 365 days
    var expiry = (expDate) ? expDate.toGMTString() : null;
    if (value != null && value != "") {
      newCookie = name + "=" + escape(value) + "; path=/";
      newCookie += (expiry) ? ";expires=" + expiry : "";
      document.cookie = newCookie;
      bites = document.cookie.split("; "); // update cookie bites
    }
  }
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 MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
function MM_nbGroup(event, grpName) { //v6.0
  var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
    if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
      img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
      if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
      nbArr[nbArr.length] = img;
      for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
        if (!img.MM_up) img.MM_up = img.src;
        img.src = img.MM_dn = args[i+1];
        nbArr[nbArr.length] = img;
    } }
  } else if (event == "over") {
    document.MM_nbOver = nbArr = new Array();
    for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up);
      nbArr[nbArr.length] = img;
    }
  } else if (event == "out" ) {
    for (i=0; i < document.MM_nbOver.length; i++) {
      img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
    nbArr = document[grpName];
    if (nbArr)
      for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
    document[grpName] = nbArr = new Array();
    for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
      nbArr[nbArr.length] = img;
    }
  }
}

// Body onload utility (supports multiple onload functions)
var gSafeOnload = new Array();
function SafeAddOnload(f) {
  if (window.onload) {
	if (window.onload != SafeOnload) {
	  gSafeOnload[gSafeOnload.length] = window.onload;
	  window.onload = SafeOnload;
	}		
	gSafeOnload[gSafeOnload.length] = f;
  } else {
	window.onload = f;
  }
}
function SafeOnload()
{
	for (var i=0;i<gSafeOnload.length;i++)
		gSafeOnload[i]();
}
function encodeId(pageName) {
  pageName=pageName.replace(/\./g,'');
  pageName=pageName.replace(/[+]|\%2b|\%2B/g,'-');
  return 'nav' + pageName;
}
function setActiveStyleSheet(title,mark) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) a.disabled = false;
    }
  }
  if (mark) setCookie("style", title);
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function toggleActiveStyleSheet() {
  var currStyle = getActiveStyleSheet(), a=toggleActiveStyleSheet.arguments;
  switch (currStyle) {
	case a[0]:
	  setActiveStyleSheet(a[1],a[a.length-1]);
	  break;
	case a[1]:
	  setActiveStyleSheet(a[0],a[a.length-1]);
	  break;
	default:
	  setActiveStyleSheet(a[1],a[a.length-1]);
	  break;
  }
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

function styleFinder() {
  var cookie = getCookie("style");
  var title = (cookie) ? cookie : getPreferredStyleSheet();
  setActiveStyleSheet(title,false);
}

var cookie = getCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);

function blockHover() {
  var m,a=blockHover.arguments;
  for(m=0;m<a.length;m++) {
    if ((which=document.getElementById(a[m]))!=null) {
	  which.onmouseover=function() {
		this.className = "over";
	    fixEvent(this);
	  }
      which.onmouseout=function() {
		this.className = this.className.replace("over", "");
	    fixEvent(this);
      }
	}
  }
}
function sideHover() {
  var m,a=sideHover.arguments;
  if (sideColumns==0 && document.all) {
	i=0;
	while (i<a.length) {
	  blockHover(a[i]);
	  i++;
	}
  } else {
  that = document.getElementById(a[sideColumns-1]);
  thatToo = document.getElementById(a[1]);
  for(m=0;m<sideColumns-1;m++) {
    if ((which=document.getElementById(a[m]))!=null) {
	  which.onmouseover=function() {
		if (sideColumns != 0) {
		  that.className = "out";
		  if (sideColumns == 3 && this!=thatToo) thatToo.className = "out";
		  if (document.all) this.className = "over";
		}
	    fixEvent(this);
	  }
      which.onmouseout=function() {
		if (sideColumns != 0) {
		  if (sideColumns == 3 && this!=thatToo) thatToo.className = thatToo.className.replace("out", "");
		  that.className = that.className.replace("out", "");
          if (document.all) this.className = this.className.replace("over", "");
		}
	    fixEvent(this);
      }
	}
  }
  }
}
function getBrowserWidth() {
  if (window.innerWidth) {//alert('window.innerWidth= '+window.innerWidth)
	return window.innerWidth;
  } else if (document.body.clientWidth!=0) {
	return parseFloat(document.body.clientWidth);
  } else if (document.documentElement && document.documentElement.clientWidth != 0 && !isMacIE) {//alert('document.documentElement.clientWidth= '+document.documentElement.clientWidth)
	return parseFloat(document.documentElement.clientWidth);
  }//alert('did not read document.body.clientWidth= '+document.body.clientWidth)
  return 0;
}
function getContentWidth() {
  contentArray = document.getElementById('content').getElementsByTagName('IMG');
  for (i=0;i<contentArray.length;i++) {
	newWidth = (contentArray[i].getAttribute('width')) ? parseFloat(contentArray[i].getAttribute('width')) : 200;
    if (newWidth>contentWidth) contentWidth = newWidth;
	//alert(contentWidth + contentArray[0].getAttribute('width'))
  }
  tableArray = document.getElementById('content').getElementsByTagName('TABLE');
  for (i=0;i<tableArray.length;i++) {
	newWidth = (tableArray[i].getAttribute('width')) ? parseFloat(tableArray[i].getAttribute('width')) : 200;
    if (newWidth>contentWidth) contentWidth = newWidth;
  }
  if (contentWidth==0) contentWidth = 250;
}

var columnAdjust = (docLoc[0].indexOf('.html')!=-1 && docLoc[0].indexOf('index')==-1 || leaf) ? 1 : 0;
var sideColumns = 3;
var pickLI = creiterator('LI?current!A','href','#','text','Features in this section');
var pickLIid = creiterator('LI#current!A','href','#','text','Features in this section');
function sideCol() {
  var nonIEX = (contentWidth<400) ? 1.45 : (document.all) ? 1 : 1.05;
  var scrollX = (contentWidth<300) ? 0.98 : (contentWidth<400) ? 1.03 : (document.all) ? 1.095 : 1.15;
  var contentADD = getBrowserWidth()*(((contentWidth+(50-(contentWidth*0.15)))*nonIEX)/(contentWidth*3));//alert(contentADD)
  var contentADD = (!document.all) ? contentADD*1.18 : contentADD;
  sideColumns = (getBrowserWidth()*scrollX < contentWidth + contentADD && docLoc[3].length-columnAdjust > 1 && document.location.href == top.document.location.href) ? 0 : (docLoc[3].length-columnAdjust <= 1) ? 1 : (docLoc[3].length-columnAdjust == 2) ? 2 : 3;//alert(getBrowserWidth()*scrollX + ',' + (contentWidth + contentADD))
  if (sideColumns != 3 && docLoc[2].length>1) {
    document.body.className = 'side' + sideColumns;
	if (sideColumns == 0) {
	  latUL = findTag(document.getElementById('lateralnav'),'UL');
	  intUL = findTag(document.getElementById('interiornav'),'UL');
	  if (docLoc[3].length==2 && latUL != null && findTag(latUL,'LI?class=current') == null) {
		latUL.insertBefore(pickLI,latUL.firstChild);
	  } else if (docLoc[3].length==3 && intUL != null && document.getElementById('current') == null) {
		intUL.insertBefore(pickLIid,intUL.firstChild);
	  }
	} else clearPick('interiornav','lateralnav','parentnav');
  } else {
    document.body.className = '';
	clearPick('interiornav','lateralnav','parentnav');
  }
  sideHover('parentnav','lateralnav','interiornav');
}
function clearPick() {
  var m,a=clearPick.arguments;
  for(m=0;m<(a.length);m++) {
    if ((obj=findTag(document.getElementById(a[m]),'UL'))!=null) {
	  testLI = findTag(obj,'LI');
	  if (testLI==pickLIid || testLI==pickLI) obj.removeChild(testLI);
	}
  }
}