/* Menu RollOver - Start*/
function swapImgRestore() { //v3.0
  var i,x,a=document.sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.p) d.p=new Array();
    var i,j=d.p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.p[j]=new Image; d.p[j++].src=a[i];}}
}

function 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=findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function swapImage() { //v3.0
  var i,j=0,x,a=swapImage.arguments; document.sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=findObj(a[i]))!=null){document.sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
/* Menu RollOver - End*/
/* Blackbird Service Site Navigation - Start*/
function GlobalMenu_EN() {
              document.write ('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="747" height="130">');
			  document.write ('<param name="movie" value="http://www.alpine-usa.com/images/global_menu/main_menu2.swf"><param name="quality" value="high">');
			  document.write ('<embed src="http://www.alpine-usa.com/images/global_menu/main_menu2.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="747" height="130"></embed>');
			  document.write ('</object>');
        }
/* Blackbird Service Site Navigation - End*/
/* Site English Site Map - Start*/		
function SiteMap_EN () {
              document.write ('<!-- <a href="http://www.alpine-usa.com" class="sitemap">Site Map</a> | <a href="http://espanol.alpine-usa.com/enes/US-en/" class="sitemap">en espa&ntilde;ol</a> --><a mporgnav  href="http://espanol.alpine-usa.com/enes/US-en/" class="sitemap" onclick="oh=\'www.alpine-usa.com\';tsh=\'espanol.alpine-usa.com/enes/\';idx=location.href.indexOf(tsh);if(idx==-1){idx=location.href.indexOf(oh)+oh.length;hname=tsh;}else{idx=idx+tsh.length;hname=oh;}path=location.href.substring(idx);hend=hname.charAt(hname.length-1);pstart=path.charAt(0);if(hend==\'/\'&&pstart==\'/\')path=path.substring(path.indexOf(\'/\')+1);if(hend!=\'/\'&&pstart!=\'/\')path=\'/\'+path;location.href=location.protocol+\'//\'+hname+path;return false;">En Espa&ntilde;ol</a><!-- <a mporgnav  href="http://alpine.convertlanguage.com/enes/US-en/" class="sitemap" onclick="oh=\'www.alpine-usa.com\';tsh=\'alpine.convertlanguage.com/enes/\';idx=location.href.indexOf(tsh);if(idx==-1){idx=location.href.indexOf(oh)+oh.length;hname=tsh;}else{idx=idx+tsh.length;hname=oh;}path=location.href.substring(idx);hend=hname.charAt(hname.length-1);pstart=path.charAt(0);if(hend==\'/\'&&pstart==\'/\')path=path.substring(path.indexOf(\'/\')+1);if(hend!=\'/\'&&pstart!=\'/\')path=\'/\'+path;location.href=location.protocol+\'//\'+hname+path;return false;">En Espa&ntilde;ol</a> --> | <a href="http://www.alpine.com" target="_blank" class="sitemap">Alpine Worldwide</a>');
		}
/* Site English Site Map - End*/
/* Site English Nav Footer - Start*/		
function GlobalFtr_EN () {
              document.write ('<table width="732" border="0" cellspacing="0" cellpadding="0">');
              document.write ('<tr>');
              document.write ('<td align="center" valign="bottom" class="copyright"><br><br><a href="http://www.alpine-usa.com" class="copyright">Home</a> | <a href="/US-en/products/" class="copyright">Products</a> | <a href="/US-en/support/" class="copyright">Support</a> | <a href="http://underground.alpine-usa.com/" target="_blank" class="copyright">Underground</a> | <a href="/US-en/company/" class="copyright">Company</a> | <a href="/US-en/company/pr/pr.php?year=2008" class="copyright">News</a> | <a href="/US-en/company/career/" class="copyright" target="_self">Careers</a><br>&copy;Alpine Electronics of America, Inc. All Rights Reserved.<br>Use of this site signifies your agreement to the <a href="/US-en/terms/termsofuse.php" class="copyright" target="_self">Terms of Use</a>.<br><br></td>');
			  document.write ('</tr>');
              document.write ('</table>');
		}
/* Site English Nav Footer - End*/
/* Site Spanish Nav Footer - Start*/
function GlobalFtr_SP () {
              document.write ('<table width="700" border="0" cellspacing="0" cellpadding="0">');
              document.write ('<tr>');
              document.write ('<td align="center" valign="bottom" class="copyright"><br><br><a href="http://www.alpine-usa.com" class="copyright">Home</a> | <a href="/US-en/products/" class="copyright">Productos</a> | <a href="/US-en/support/" class="copyright">Soporte</a> | <a /US-en/fun/" class="copyright">Entretenimiento</a> | <a href="/US-en/company/" class="copyright">Compañía </a> | <a href="https://alpine.ats.hrsmart.com" class="copyright" target="_self">Empleos</a><br>&copy;Alpine Electronics of America, Inc. Todos los Derechos Reservados.<br><a href="/US-en/terms/termsofuse.php" class="copyright" target="_self">El uso de este sitio Web indica su consentimiento sobre las Condiciones de Uso</a>.<br><br></td>');
			  document.write ('</tr>');
              document.write ('</table>');
		}
/* Site Spanish Nav Footer - End*/
/* English Press Contact - Start*/
function PressCont_EN () {
              document.write ('<strong>Contact</strong>:');
			  document.write ('<br>Jeff Hasen<br>WONGDOODY Communications<br>206-624-5325<br>');
			  document.write ('<a href="mailto:jeff.hasen@wongdoody.com" class="body_reg">jeff.hasen@wongdoody.com</a><br>');
		}
/* Company Submenu Links NAIAS OFF - Start		
function Company_Submenu_EN-OFF () {
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/career/" target="_self" class="extra_links">Career Opportunities</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/contact/" class="extra_links">Contact Us</a><br>');
              document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/pr/pr.php?year=2008" class="extra_links">Press Releases</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/partners/" class="extra_links">Partners</a><br>');
			  
		}*/
/* Company Submenu Links - End*/
/* Company/NAIAS Submenu Links - Start*/		
function Company_Submenu_EN () {
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/career/" target="_self" class="extra_links">Career Opportunities</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/contact/" class="extra_links">Contact Us</a><br>');
              document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/pr/pr.php?year=2009" class="extra_links">Press Releases</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/pr/NAIAS/09/naias_pr.php" class="extra_links">NAIAS Press Room</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/partners/" class="extra_links">Partners</a><br>');
			  
		}
/* Company/NAIAS Submenu Links - End*/
/* Support Submenu Links - Start*/	
function Support_Submenu_EN () {
			 /*var dlrurl="javascript: var win_settings = 'toolbar=0,location=0,directories=0,menuBar=0,scrollbars=yes,' + 'resizable=1,width=623,height=700,left=400,top=100'; var url = 'http://direct.where2getit.com/cwc/apps/w2gi.php?template=search&client=alpine'; window.open(url,'win_faq',win_settings); void(0);"
			 document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="' + dlrurl + '" class="extra_links">Locate a Dealer</a><br>');*/
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="http://65.125.183.126/" target="_blank" class="extra_links">Register Your Product</a><br>');
              /*document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/support/ecatalog/ecatorder.php" class="extra_links">Request a Catalog</a><br>');*/
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/support/service/service_center.php"  class="extra_links">Service Centers & Parts</a><br>');		  
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="/US-en/company/contact/" class="extra_links">Contact Us</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="http://iweb.alpine-usa.com/sdm/sdm_login.php" target="_blank" class="extra_links">Authorized Service Center Site</a><br>');
			  document.write ('<img src="/images/support/main/support_arrow.jpg" border="0"><a href="http://alpineconnected.com" target="_blank" class="extra_links">Alpine Connected: Authorized Retailer Support</a><br>');
			  
		}
/* Support Submenu Links - End*/	
/* Events Submenu Links - Start*/	
function Events_Submenu_EN () {
			  document.write ('<a href="/US-en/fun/events/irl/" class="wht_txtlnk">IRL Indy Racing League</a><br>')
			  document.write ('<a href="/US-en/fun/events/Civic-Tour/" class="wht_txtlnk">Civic Tour</a><br>');
              document.write ('<a href="/US-en/fun/events/Dub/" class="wht_txtlnk">Dub Custom Auto Show & Concert </a><br>');
			  
		}
/* Events Submenu Links - End*/
/* Dealer Locator - Start */
/* -- 072208--
function isNumeric(elem){
         var numericExpression = /^[0-9]+$/;
         //alert(elem.value);
         if (elem.value != ""){
                  if(elem.value.match(numericExpression)){
                           document.form1.action = "http://www.alpine-usa.com/US-en/dealer_locator/locator.php?";
                         document.form1.location.value = "US";
							// This var should point to: http://hosted.where2getit.com/alpine/
                           return true;
                  }else{
                                    //alert("CA");
                                    
                                    document.form1.action = "http://www.alpine-usa.com/US-en/dealer_locator/locator.php?";
                                 document.form1.location.value = "Canada";
								 // This var should point to: http://hosted.where2getit.com/alpineca/
                                    return true;
                  }
         
         }
                                                      
}   	
*/
function isNumeric(elem){
         var numericExpression = /^[0-9]+$/;
         if ((elem.value != "") && (elem.value != "Enter Zip/Postal Code")){
                  if(elem.value.match(numericExpression)){
                           document.form1.action = "http://www.alpine-usa.com/US-en/dealer_locator/locator.php?";
                         document.form1.location.value = "US";
                           return true;
                  }else{
                            document.form1.action = "http://www.alpine-usa.com/US-en/dealer_locator/locator.php?";
                         document.form1.location.value = "Canada";
                            return true;
                  }
         } else {
             alert("please enter a zip/postal code!"); 
            return false;
        }
}   
function isNumerictwo(eleme){
         var numericExpressiontwo = /^[0-9]+$/;
         if ((eleme.value != "") && (eleme.value != "Enter Zip/Postal Code")){
                  if(eleme.value.match(numericExpressiontwo)){
                           document.form3.action = "http://www.alpine-usa.com/US-en/dealer_locator/locator.php?";
                         document.form3.location.value = "US";
                           return true;
                  }else{
                            document.form3.action = "http://www.alpine-usa.com/US-en/dealer_locator/locator.php?";
                         document.form3.location.value = "Canada";
                            return true;
                  }
         } else {
             alert("please enter a zip/postal code!"); 
            return false;
        }
}   
/* Dealer Locator - End*/
/* Flash Embed - Start*/
/**
 * SWFObject v1.4.2: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
 *
 * SWFObject is (c) 2006 Geoff Stearns and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 * **SWFObject is the SWF embed script formerly known as FlashObject. The name was changed for
 *   legal reasons.
 */
if(typeof deconcept == "undefined") var deconcept = new Object();
if(typeof deconcept.util == "undefined") deconcept.util = new Object();
if(typeof deconcept.SWFObjectUtil == "undefined") deconcept.SWFObjectUtil = new Object();
deconcept.SWFObject = function(swf, id, w, h, ver, c, useExpressInstall, quality, xiRedirectUrl, redirectUrl, detectKey){
	if (!document.getElementById) { return; }
	this.DETECT_KEY = detectKey ? detectKey : 'detectflash';
	this.skipDetect = deconcept.util.getRequestParameter(this.DETECT_KEY);
	this.params = new Object();
	this.variables = new Object();
	this.attributes = new Array();
	if(swf) { this.setAttribute('swf', swf); }
	if(id) { this.setAttribute('id', id); }
	if(w) { this.setAttribute('width', w); }
	if(h) { this.setAttribute('height', h); }
	if(ver) { this.setAttribute('version', new deconcept.PlayerVersion(ver.toString().split("."))); }
	this.installedVer = deconcept.SWFObjectUtil.getPlayerVersion();
	if(c) { this.addParam('bgcolor', c); }
	var q = quality ? quality : 'high';
	this.addParam('quality', q);
	this.setAttribute('useExpressInstall', useExpressInstall);
	this.setAttribute('doExpressInstall', false);
	var xir = (xiRedirectUrl) ? xiRedirectUrl : window.location;
	this.setAttribute('xiRedirectUrl', xir);
	this.setAttribute('redirectUrl', '');
	if(redirectUrl) { this.setAttribute('redirectUrl', redirectUrl); }
}
deconcept.SWFObject.prototype = {
	setAttribute: function(name, value){
		this.attributes[name] = value;
	},
	getAttribute: function(name){
		return this.attributes[name];
	},
	addParam: function(name, value){
		this.params[name] = value;
	},
	getParams: function(){
		return this.params;
	},
	addVariable: function(name, value){
		this.variables[name] = value;
	},
	getVariable: function(name){
		return this.variables[name];
	},
	getVariables: function(){
		return this.variables;
	},
	getVariablePairs: function(){
		var variablePairs = new Array();
		var key;
		var variables = this.getVariables();
		for(key in variables){
			variablePairs.push(key +"="+ variables[key]);
		}
		return variablePairs;
	},
	getSWFHTML: function() {
		var swfNode = "";
		if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) { // netscape plugin architecture
			if (this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "PlugIn"); }
			swfNode = '<embed type="application/x-shockwave-flash" src="'+ this.getAttribute('swf') +'" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') +'"';
			swfNode += ' id="'+ this.getAttribute('id') +'" name="'+ this.getAttribute('id') +'" ';
			var params = this.getParams();
			 for(var key in params){ swfNode += [key] +'="'+ params[key] +'" '; }
			var pairs = this.getVariablePairs().join("&");
			 if (pairs.length > 0){ swfNode += 'flashvars="'+ pairs +'"'; }
			swfNode += '/>';
		} else { // PC IE
			if (this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "ActiveX"); }
			swfNode = '<object id="'+ this.getAttribute('id') +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') +'">';
			swfNode += '<param name="movie" value="'+ this.getAttribute('swf') +'" />';
			var params = this.getParams();
			for(var key in params) {
			 swfNode += '<param name="'+ key +'" value="'+ params[key] +'" />';
			}
			var pairs = this.getVariablePairs().join("&");
			if(pairs.length > 0) {swfNode += '<param name="flashvars" value="'+ pairs +'" />';}
			swfNode += "</object>";
		}
		return swfNode;
	},
	write: function(elementId){
		if(this.getAttribute('useExpressInstall')) {
			// check to see if we need to do an express install
			var expressInstallReqVer = new deconcept.PlayerVersion([6,0,65]);
			if (this.installedVer.versionIsValid(expressInstallReqVer) && !this.installedVer.versionIsValid(this.getAttribute('version'))) {
				this.setAttribute('doExpressInstall', true);
				this.addVariable("MMredirectURL", escape(this.getAttribute('xiRedirectUrl')));
				document.title = document.title.slice(0, 47) + " - Flash Player Installation";
				this.addVariable("MMdoctitle", document.title);
			}
		}
		if(this.skipDetect || this.getAttribute('doExpressInstall') || this.installedVer.versionIsValid(this.getAttribute('version'))){
			var n = (typeof elementId == 'string') ? document.getElementById(elementId) : elementId;
			n.innerHTML = this.getSWFHTML();
			return true;
		}else{
			if(this.getAttribute('redirectUrl') != "") {
				document.location.replace(this.getAttribute('redirectUrl'));
			}
		}
		return false;
	}
}

/* ---- detection functions ---- */
deconcept.SWFObjectUtil.getPlayerVersion = function(){
	var PlayerVersion = new deconcept.PlayerVersion([0,0,0]);
	if(navigator.plugins && navigator.mimeTypes.length){
		var x = navigator.plugins["Shockwave Flash"];
		if(x && x.description) {
			PlayerVersion = new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split("."));
		}
	}else{
		// do minor version lookup in IE, but avoid fp6 crashing issues
		// see http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-internet-explorer-flash-6/
		try{
			var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		}catch(e){
			try {
				var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
				PlayerVersion = new deconcept.PlayerVersion([6,0,21]);
				axo.AllowScriptAccess = "always"; // throws if player version < 6.0.47 (thanks to Michael Williams @ Adobe for this code)
			} catch(e) {
				if (PlayerVersion.major == 6) {
					return PlayerVersion;
				}
			}
			try {
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			} catch(e) {}
		}
		if (axo != null) {
			PlayerVersion = new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
		}
	}
	return PlayerVersion;
}
deconcept.PlayerVersion = function(arrVersion){
	this.major = arrVersion[0] != null ? parseInt(arrVersion[0]) : 0;
	this.minor = arrVersion[1] != null ? parseInt(arrVersion[1]) : 0;
	this.rev = arrVersion[2] != null ? parseInt(arrVersion[2]) : 0;
}
deconcept.PlayerVersion.prototype.versionIsValid = function(fv){
	if(this.major < fv.major) return false;
	if(this.major > fv.major) return true;
	if(this.minor < fv.minor) return false;
	if(this.minor > fv.minor) return true;
	if(this.rev < fv.rev) return false;
	return true;
}
/* ---- get value of query string param ---- */
deconcept.util = {
	getRequestParameter: function(param) {
		var q = document.location.search || document.location.hash;
		if(q) {
			var pairs = q.substring(1).split("&");
			for (var i=0; i < pairs.length; i++) {
				if (pairs[i].substring(0, pairs[i].indexOf("=")) == param) {
					return pairs[i].substring((pairs[i].indexOf("=")+1));
				}
			}
		}
		return "";
	}
}
/* fix for video streaming bug */
deconcept.SWFObjectUtil.cleanupSWFs = function() {
	var objects = document.getElementsByTagName("OBJECT");
	for (var i=0; i < objects.length; i++) {
		objects[i].style.display = 'none';
		for (var x in objects[i]) {
			if (typeof objects[i][x] == 'function') {
				objects[i][x] = null;
			}
		}
	}
}
if (typeof window.onunload == 'function') {
	var oldunload = window.onunload;
		window.onunload = function() {
		deconcept.SWFObjectUtil.cleanupSWFs();
		oldunload();
	}
} else {
	window.onunload = deconcept.SWFObjectUtil.cleanupSWFs;
}
/* add Array.push if needed (ie5) */
if (Array.prototype.push == null) { Array.prototype.push = function(item) { this[this.length] = item; return this.length; }}

/* add some aliases for ease of use/backwards compatibility */
var getQueryParamValue = deconcept.util.getRequestParameter;
var FlashObject = deconcept.SWFObject; // for legacy support
var SWFObject = deconcept.SWFObject;

/* Flash Embed - End*/


/* UTM Urchin Reporting System - Start*/
//-- Urchin Tracking Module Version 6 (UTM 6) $Revision: 1.23 $
//-- Copyright 2004 Urchin Software Corporation, All Rights Reserved.

/*--------------------------------------------------
   Urchin On Demand Settings
   NOTE: Don't modify if not using Urchin On Demand
--------------------------------------------------*/
var __utmacct="";               /*-- set up the Urchin Account --*/
var __utmserv=0;                /*-- service mode (0=local,1=remote,2=both) --*/

/*--------------------------------------------------
   UTM User Settings
--------------------------------------------------*/
var __utmfsc=1;                 /*-- set client info flag (1=on|0=off) --*/
var __utmdn="auto";             /*-- (auto|none|domain) set the domain name for cookies --*/
var __utmhash="on";             /*-- (on|off) unique domain hash for cookies --*/
var __utmtimeout="1800";        /*-- set the inactive session timeout in seconds --*/
var __utmgifpath="/__utm.gif";  /*-- set the web path to the __utm.gif file --*/
var __utmtsep="|";              /*-- transaction field separator --*/
var __utmwv = "6.0";

var __utmflash=1;               /*-- set flash version detect option (1=on|0=off) --*/
var __utmtitle=1;               /*-- set the document title detect option (1=on|0=off) --*/

/*--------------------------------------------------
   UTM Campaign Tracking Settings
--------------------------------------------------*/
var __utmctm=1;                 /*-- set campaign tracking module (1=on|0=off) --*/
var __utmcto="15768000";        /*-- set the campaign timeout in seconds (6 month default) --*/

var __utmccn="utm_campaign";    /*-- campaign name --*/
var __utmcmd="utm_medium";      /*-- campaign medium (cpc|cpm|link|email|organic) --*/
var __utmcsr="utm_source";      /*-- campaign source --*/
var __utmctr="utm_term";        /*-- campaign term/keyword --*/
var __utmcct="utm_content";     /*-- campaign content --*/
var __utmcid="utm_id";          /*-- campaign id number --*/

var __utmcno="utm_nooverride";  /*-- don't override campaign information--*/

/*--- Auto/Organic Sources and Keywords ---*/
var __utmOsr = new Array();
var __utmOkw = new Array();

__utmOsr[0]  = "google";     __utmOkw[0]  = "q";
__utmOsr[1]  = "yahoo";      __utmOkw[1]  = "p";
__utmOsr[2]  = "msn";        __utmOkw[2]  = "q";
__utmOsr[3]  = "aol";        __utmOkw[3]  = "query";
__utmOsr[4]  = "lycos";      __utmOkw[4]  = "query";
__utmOsr[5]  = "ask";        __utmOkw[5]  = "q";
__utmOsr[6]  = "altavista";  __utmOkw[6]  = "q";
__utmOsr[7]  = "search";     __utmOkw[7]  = "q";
__utmOsr[8]  = "netscape";   __utmOkw[8]  = "query";
__utmOsr[9]  = "earthlink";  __utmOkw[9]  = "q";
__utmOsr[10] = "cnn";        __utmOkw[10] = "query";
__utmOsr[11] = "looksmart";  __utmOkw[11] = "key";
__utmOsr[12] = "about";      __utmOkw[12] = "terms";
__utmOsr[13] = "excite";     __utmOkw[13] = "qkw";
__utmOsr[14] = "mamma";      __utmOkw[14] = "query";
__utmOsr[15] = "alltheweb";  __utmOkw[15] = "q";
__utmOsr[16] = "gigablast";  __utmOkw[16] = "q";
__utmOsr[17] = "voila";      __utmOkw[17] = "kw";
__utmOsr[18] = "virgilio";   __utmOkw[18] = "qs";
__utmOsr[19] = "teoma";      __utmOkw[19] = "q";

/*--- Auto/Organic Keywords to Ignore ---*/
var __utmOno = new Array();

//__utmOno[0] = "urchin";
//__utmOno[1] = "urchin.com";
//__utmOno[2] = "www.urchin.com";

/*--- Referral domains to Ignore ---*/
var __utmRno = new Array();

//__utmRno[0] = ".urchin.com";

/*--------------------------------------------------
   Don't modify below this point
--------------------------------------------------*/
var __utmgifpath2="http://service.urchin.com/__utm.gif";
if (document.location.protocol == "https:") __utmgifpath2="https://service.urchin.com/__utm.gif";
var __utmf,__utmdh,__utmd,__utmdom="",__utmu,__utmjv="-",__utmfns=0, __utmns=0,__utmr="-";
var __utmcfno=0,__utmst=0;

function urchinTracker(page) {
   if (document.location.protocol == "file:") return;
   if (__utmf && (!page || page == "")) return;

   var __utma,__utmb,__utmc,__utmv;
   var __utmexp="",__utms="",__utmlf=0;

   /*-- get useful information --*/
   __utmdh = __utmSetDomain();
   __utma  = document.cookie.indexOf("__utma="+__utmdh);
   __utmb  = document.cookie.indexOf("__utmb="+__utmdh);
   __utmc  = document.cookie.indexOf("__utmc="+__utmdh);
   __utmu  = Math.round(Math.random() * 2147483647);
   __utmd  = new Date();
   __utmst = Math.round(__utmd.getTime()/1000);

   if (__utmdn && __utmdn != "") { __utmdom = " domain="+__utmdn+";"; }
   if (__utmtimeout && __utmtimeout != "") {
      __utmexp = new Date(__utmd.getTime()+(__utmtimeout*1000));
      __utmexp = " expires="+__utmexp.toGMTString()+";";
   }

   /*-- grab cookies from the commandline --*/
   __utms = document.location.search;
   if (__utms && __utms != "" && __utms.indexOf("__utma=") >= 0) {
      __utma = __utmGetCookie(__utms,"__utma=","&");
      __utmb = __utmGetCookie(__utms,"__utmb=","&");
      __utmc = __utmGetCookie(__utms,"__utmc=","&");
      if (__utma != "-" && __utmb != "-" && __utmc != "-") __utmlf = 1;
      else if (__utma != "-")                              __utmlf = 2;
   }

   /*-- based on the logic set cookies --*/
   if (__utmlf == 1) { 
      document.cookie="__utma="+__utma+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;";
      document.cookie="__utmb="+__utmb+"; path=/;"+__utmexp;
      document.cookie="__utmc="+__utmc+"; path=/;";
   } else if (__utmlf == 2) { 
      __utma = __utmFixA(__utms,"&",__utmst); 
      document.cookie="__utma="+__utma+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;";
      document.cookie="__utmb="+__utmdh+"; path=/;"+__utmexp;
      document.cookie="__utmc="+__utmdh+"; path=/;";
      __utmfns=1;
   } else if (__utma >= 0 && __utmb >= 0 && __utmc >= 0) { 
      document.cookie="__utmb="+__utmdh+"; path=/;"+__utmexp+__utmdom;
   } else if (__utma >=0) { 
      __utma = __utmFixA(document.cookie,";",__utmst); 
      document.cookie="__utma="+__utma+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;"+__utmdom;
      document.cookie="__utmb="+__utmdh+"; path=/;"+__utmexp+__utmdom;
      document.cookie="__utmc="+__utmdh+"; path=/;"+__utmdom;
      __utmfns=1;
   } else if (__utma < 0 && __utmb < 0 && __utmc < 0) { 
      __utma = __utmCheckUTMI(__utmd); 
      if (__utma == "-")  __utma = __utmdh+"."+__utmu+"."+__utmst+"."+__utmst+"."+__utmst+".1"; 
      else                __utma = __utmdh+"."+__utma;
      document.cookie="__utma="+__utma+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;"+__utmdom;
      document.cookie="__utmb="+__utmdh+"; path=/;"+__utmexp+__utmdom;
      document.cookie="__utmc="+__utmdh+"; path=/;"+__utmdom;
      __utmfns=1;
   } else {
      __utma = __utmdh+"."+__utmu+"."+__utmst+"."+__utmst+"."+__utmst+".1";
      document.cookie="__utma="+__utma+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;"+__utmdom;
      document.cookie="__utmb="+__utmdh+"; path=/;"+__utmexp+__utmdom;
      document.cookie="__utmc="+__utmdh+"; path=/;"+__utmdom;
      __utmfns=1;
   }

   if (__utms && __utms != "" && __utms.indexOf("__utmv=") >= 0) {
      if ((__utmv = __utmGetCookie(__utms,"__utmv=","&")) != "-") {
         document.cookie="__utmv="+__utmv+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;"+__utmdom;
      }
   }

   __utmSetInfo(page);
   __utmfns=0;
   __utmcfno=0;
   __utmf=1;
}
urchinTracker();

function __utmSetInfo(page) {
   var __utmp;
   var __utmsrc = "";
   var loc = document.location;
   var __utmpg = loc.pathname+loc.search; 
   if (page && page != "") __utmpg = escape(page);
   
   __utmr = document.referrer;
   if (!__utmr || __utmr == "") { __utmr = "-"; } 
   else { 
      __utmp = __utmr.indexOf(document.domain); 
      if ((__utmp >= 0) && (__utmp <= 8)) { __utmr = "0"; }
      if (__utmr.indexOf("[") == 0 && __utmr.lastIndexOf("]") == (__utmr.length-1)) { __utmr = "-"; }
   }
   __utmsrc += "&utmn="+__utmu;
   if (__utmfsc && __utmfns) {__utmsrc += __utmGetClientInfo(page); }
   if (__utmctm && (!page || page == "")) {__utmsrc += __utmSetCampaignInfo(); }
   if (__utmtitle && document.title && document.title != "") __utmsrc += "&utmdt="+escape(document.title);
   if (loc.hostname && loc.hostname != "") __utmsrc += "&utmhn="+escape(loc.hostname);
   if (!page || page == "") __utmsrc += "&utmr="+__utmr;
   __utmsrc += "&utmp="+__utmpg;

   if (__utmserv==0 || __utmserv==2) {
      var __utmi = new Image(1,1);
      __utmi.src  = __utmgifpath+"?"+"utmwv="+__utmwv+__utmsrc;
      __utmi.onload  = function() { __utmVoid(); }
   }
   if (__utmserv==1 || __utmserv==2) {
      var __utmi2 = new Image(1,1);
      var __utmsrc2 = __utmsrc;
      __utmsrc2 += "&utmac="+__utmacct;
      __utmsrc2 += "&utmcc="+__utmGetCookieSet();
      __utmi2.src = __utmgifpath2+"?"+"utmwv="+__utmwv+__utmsrc2;
      __utmi2.onload  = function() { __utmVoid(); }
   }

   return 0;
}
function __utmVoid() { return; }

function __utmSetCampaignInfo() {
    var __utmcc = "";
    var __utmtmp = "-";
    var __utmtmp2 = "-";
    var __utmnoover = 0;
    var __utmcsc = 0;
    var __utmcnc = 0;
    var __utmi   = 0;
    if (!__utmcto || __utmcto == "") { __utmcto = "15768000"; }
    var __utmcx = new Date(__utmd.getTime()+(__utmcto*1000));
    __utmcx = " expires="+__utmcx.toGMTString()+";";

    var __utmx = document.location.search;
    var __utmz = __utmGetCookie(__utmx,"__utmz=","&");
    if (__utmz != "-") {
      document.cookie="__utmz="+__utmz+"; path=/;"+__utmcx+__utmdom;
      return "";
    }

    __utmz = document.cookie.indexOf("__utmz="+__utmdh);
    if (__utmz > -1) {
       __utmz = __utmGetCookie(document.cookie,"__utmz=",";");
    } else { __utmz = "-"; }

    /*--- check for campaign id or campaign source ---*/
    __utmtmp  = __utmGetCookie(__utmx,__utmcid+"=","&");
    __utmtmp2 = __utmGetCookie(__utmx,__utmcsr+"=","&");

    if ((__utmtmp != "-" && __utmtmp != "") || (__utmtmp2 != "-" && __utmtmp2 != "")) { 
       if (__utmtmp != "-" && __utmtmp != "") {
          __utmcc += "utmcid="+__utmtmp;
          if (__utmtmp2 != "-" && __utmtmp2 != "") __utmcc += "|utmcsr="+__utmtmp2;
       } else {
          if (__utmtmp2 != "-" && __utmtmp2 != "") __utmcc += "utmcsr="+__utmtmp2;
       }
       __utmtmp = __utmGetCookie(__utmx,__utmccn+"=","&"); 
       if (__utmtmp != "-" && __utmtmp != "") __utmcc += "|utmccn="+__utmtmp; 
       else                                   __utmcc += "|utmccn=(not set)";
       __utmtmp = __utmGetCookie(__utmx,__utmcmd+"=","&"); 
       if (__utmtmp != "-" && __utmtmp != "") __utmcc += "|utmcmd="+__utmtmp;
       else                                   __utmcc += "|utmcmd=(not set)";
       __utmtmp = __utmGetCookie(__utmx,__utmctr+"=","&"); 
       if (__utmtmp != "-" && __utmtmp != "") { 
          __utmcc += "|utmctr="+__utmtmp;
       } else { 
          __utmtmp = __utmGetOrganic(1);
          if (__utmtmp != "-" && __utmtmp != "")  __utmcc += "|utmctr="+__utmtmp; 
       }
       __utmtmp = __utmGetCookie(__utmx,__utmcct+"=","&"); 
       if (__utmtmp != "-" && __utmtmp != "") __utmcc += "|utmcct="+__utmtmp;
       __utmtmp = __utmGetCookie(__utmx,__utmcno+"=","&"); 
       if (__utmtmp == "1") __utmnoover = 1;

       /*--- if previous campaign is set and no override is set return ---*/
       if (__utmz != "-" && __utmnoover == 1) return "";
    }

    /*--- check for organic ---*/
    if (__utmcc == "-" || __utmcc == "") {
       __utmcc = __utmGetOrganic(); 

       /*--- if previous campaign is set and organic no override term is found return ---*/
       if (__utmz != "-" && __utmcfno == 1)  return "";
    }

    /*--- check for referral ---*/
    if (__utmcc == "-" || __utmcc == "") {
       if (__utmfns == 1)  __utmcc = __utmGetReferral(); 

       /*--- if previous campaign is set and referral no override term is found return ---*/
       if (__utmz != "-" && __utmcfno == 1)  return "";
    }

    /*--- set default if z is not yet set ---*/
    if (__utmcc == "-" || __utmcc == "") {
       if (__utmz == "-" && __utmfns == 1) {
          __utmcc = "utmccn=(direct)|utmcsr=(direct)|utmcmd=(none)";
       }
       if (__utmcc == "-" || __utmcc == "") return "";
    }

    /*--- check if campaign is already set and if it's the same ---*/
    if (__utmz != "-") { 
       __utmi =  __utmz.indexOf(".");
       if (__utmi > -1) __utmi =  __utmz.indexOf(".",__utmi+1);
       if (__utmi > -1) __utmi =  __utmz.indexOf(".",__utmi+1);
       if (__utmi > -1) __utmi =  __utmz.indexOf(".",__utmi+1);

       __utmtmp = __utmz.substring(__utmi + 1,__utmz.length);
       if (__utmtmp.toLowerCase() == __utmcc.toLowerCase()) __utmcsc = 1; 

       __utmtmp = __utmz.substring(0,__utmi);
       if ((__utmi =  __utmtmp.lastIndexOf(".")) > -1) {
          __utmtmp = __utmtmp.substring(__utmi+1,__utmtmp.length);
          __utmcnc = (__utmtmp*1);
       }
    }

    /*--- set the cookie ---*/
    if (__utmcsc == 0 || __utmfns == 1) {
       __utmtmp = __utmGetCookie(document.cookie,"__utma=",";");
       if ((__utmi=__utmtmp.lastIndexOf(".")) > 9) {
          __utmns = __utmtmp.substring(__utmi+1,__utmtmp.length);
          __utmns = (__utmns*1);
       }
       __utmcnc++;
       if (__utmns == 0) __utmns = 1;
       document.cookie="__utmz="+__utmdh+"."+__utmst+"."+__utmns+"."+__utmcnc+"."+__utmcc+"; path=/; "+__utmcx+__utmdom;
    }

    /*--- set the new campaign flag  ---*/
    if (__utmcsc == 0 || __utmfns == 1) return "&utmcn=1";
    else                                return "&utmcr=1";
}

function __utmGetReferral() {
   if (__utmr == "0" || __utmr == "" || __utmr == "-") return ""; 
   var __utmi=0;
   var __utmhn;
   var __utmkt;

   /*-- get the hostname of the referral --*/
   if ( (__utmi = __utmr.indexOf("://")) < 0) return "";
   __utmhn = __utmr.substring(__utmi+3,__utmr.length);
   if (__utmhn.indexOf("/") > -1) {
      __utmkt = __utmhn.substring(__utmhn.indexOf("/"),__utmhn.length);
      if (__utmkt.indexOf("?") > -1) {
         __utmkt = __utmkt.substring(0,__utmkt.indexOf("?"));
      }
      __utmhn = __utmhn.substring(0,__utmhn.indexOf("/"));
   }
   __utmhn = __utmhn.toLowerCase();
   for (var ii=0;ii<__utmRno.length;ii++) {
      if (( __utmi=__utmhn.indexOf(__utmRno[ii].toLowerCase())) > -1 && __utmhn.length == (__utmi+__utmRno[ii].length)) { __utmcfno = 1; break; }
   }

   if (__utmhn.indexOf("www.") == 0) {
      __utmhn = __utmhn.substring(4,__utmhn.length);
   }

   return "utmccn=(referral)|utmcsr="+__utmhn+"|"+"utmcct="+__utmkt+"|utmcmd=referral";

}

function __utmGetOrganic(termonly) {
   if (__utmr == "0" || __utmr == "" || __utmr == "-") return ""; 
   var __utmi=0;
   var __utmhn;
   var __utmkt;

   /*-- get the hostname of the referral --*/
   if ( (__utmi = __utmr.indexOf("://")) < 0) return "";
   __utmhn = __utmr.substring(__utmi+3,__utmr.length);
   if (__utmhn.indexOf("/") > -1) {
      __utmhn = __utmhn.substring(0,__utmhn.indexOf("/"));
   }

   for (var ii=0;ii<__utmOsr.length;ii++) {
      if (__utmhn.indexOf(__utmOsr[ii]) > -1) {
         if ( (__utmi = __utmr.indexOf("?"+__utmOkw[ii]+"=")) > -1 || 
              (__utmi = __utmr.indexOf("&"+__utmOkw[ii]+"=")) > -1) {
            __utmkt = __utmr.substring(__utmi+__utmOkw[ii].length+2,__utmr.length);
            if ( (__utmi = __utmkt.indexOf("&")) > -1) {
               __utmkt = __utmkt.substring(0,__utmi);
            }

            for (var yy=0;yy<__utmOno.length;yy++) {
               if (__utmOno[yy].toLowerCase() == __utmkt.toLowerCase()) { __utmcfno = 1; break; }
            }

            if (termonly) {
               return __utmkt;
            } else {
               return "utmccn=(organic)|utmcsr="+__utmOsr[ii]+"|"+"utmctr="+__utmkt+"|utmcmd=organic";
            }
         }
      }
   }

   return "";
}

function __utmGetClientInfo(page) {
   var __utmtmp="-",__utmsr="-",__utmsa="-",__utmsc="-",__utmbs="-",__utmul="-",__utmfl="-";
   var __utmje=1,__utmce=1,__utmtz=0;
   if (self.screen) { 
      __utmsr = screen.width+"x"+screen.height;
      __utmsa = screen.availWidth+"x"+screen.availHeight;
      __utmsc = screen.colorDepth+"-bit";
   } else if (self.java) {
      var __utmjk = java.awt.Toolkit.getDefaultToolkit();
      var __utmjksize = __utmjk.getScreenSize();       
      __utmsr = __utmjksize.width+"x"+__utmjksize.height;
   } 
   if( typeof( window.innerWidth ) == 'number' ) {
      __utmbs = window.innerWidth+"x"+window.innerHeight;
   } else { 
     if (document.documentElement && 
       (document.documentElement.offsetHeight || document.documentElement.offsetWidth ) ) {
        __utmbs = document.documentElement.offsetWidth+"x"+document.documentElement.offsetHeight;
     } else if (document.body && (document.body.offsetWidth || document.body.offsetHeight) ) {
        __utmbs = document.body.offsetWidth+"x"+document.body.offsetHeight;
     } 
   }
   if (__utmjv == "-" && (!page || page == "")) {
      for (var i=5;i>=0;i--) {
         var __utmtmp = "<script language='JavaScript1."+i+"'>__utmjv='1."+i+"';</script>"; 
         document.write(__utmtmp);
         if (__utmjv != "-") break;
      }
   }
   if (navigator.language) { __utmul = navigator.language.toLowerCase(); }
   else if (navigator.browserLanguage) { __utmul = navigator.browserLanguage.toLowerCase(); }
   __utmje = navigator.javaEnabled()?1:0;
   if (document.cookie.indexOf("__utmb=") < 0) { __utmce = "0"; }
   if (document.cookie.indexOf("__utmc=") < 0) { __utmce = "0"; }
   __utmtz = __utmd.getTimezoneOffset();
   __utmtz = __utmTZConvert(__utmtz);
   if (__utmflash) __utmfl = __utmGetFlash();
   __utmtmp ="";
   __utmtmp += "&utmsr="+__utmsr+"&utmsa="+__utmsa+"&utmsc="+__utmsc+"&utmbs="+__utmbs;
   __utmtmp += "&utmul="+__utmul+"&utmje="+__utmje+"&utmce="+__utmce+"&utmtz="+__utmtz+"&utmjv="+__utmjv+"&utmfl="+__utmfl;
   return __utmtmp;
}
function __utmSetTrans() {
   var __utmmye;
   if (document.getElementById)  __utmmye = document.getElementById("utmtrans");
   else if (document.utmform && document.utmform.utmtrans) __utmmye = document.utmform.utmtrans;
   if (!__utmmye) return;

   var __utmlines = __utmmye.value.split("UTM:");
   var __utmi,__utmi2,__utmcset;
   if (__utmserv==0 || __utmserv==2) __utmi = new Array();
   if (__utmserv==1 || __utmserv==2) { __utmi2 = new Array(); __utmcset = __utmGetCookieSet(); }

   for (var ii=0;ii<__utmlines.length;ii++) {
      __utmlines[ii] = __utmTrim(__utmlines[ii]);
      if (__utmlines[ii].charAt(0) != 'T' && __utmlines[ii].charAt(0) != 'I') continue;
      var __utmrn = Math.round(Math.random() * 2147483647);
      if (!__utmtsep || __utmtsep == "") __utmsep = "|";
      var __utmfd = __utmlines[ii].split(__utmtsep);
      var __utmsrc = "";

      if (__utmfd[0].charAt(0) == 'T') {
         __utmsrc = "&utmt=tran"+"&utmn="+__utmrn;
         __utmfd[1]=__utmTrim(__utmfd[1]); if(__utmfd[1]&&__utmfd[1]!="") __utmsrc += "&utmtid="+escape(__utmfd[1]);
         __utmfd[2]=__utmTrim(__utmfd[2]); if(__utmfd[2]&&__utmfd[2]!="") __utmsrc += "&utmtst="+escape(__utmfd[2]);
         __utmfd[3]=__utmTrim(__utmfd[3]); if(__utmfd[3]&&__utmfd[3]!="") __utmsrc += "&utmtto="+escape(__utmfd[3]);
         __utmfd[4]=__utmTrim(__utmfd[4]); if(__utmfd[4]&&__utmfd[4]!="") __utmsrc += "&utmttx="+escape(__utmfd[4]);
         __utmfd[5]=__utmTrim(__utmfd[5]); if(__utmfd[5]&&__utmfd[5]!="") __utmsrc += "&utmtsp="+escape(__utmfd[5]);
         __utmfd[6]=__utmTrim(__utmfd[6]); if(__utmfd[6]&&__utmfd[6]!="") __utmsrc += "&utmtci="+escape(__utmfd[6]);
         __utmfd[7]=__utmTrim(__utmfd[7]); if(__utmfd[7]&&__utmfd[7]!="") __utmsrc += "&utmtrg="+escape(__utmfd[7]);
         __utmfd[8]=__utmTrim(__utmfd[8]); if(__utmfd[8]&&__utmfd[8]!="") __utmsrc += "&utmtco="+escape(__utmfd[8]);
      } else {
         __utmsrc = "&utmt=item"+"&utmn="+__utmrn;
         __utmfd[1]=__utmTrim(__utmfd[1]); if(__utmfd[1]&&__utmfd[1]!="") __utmsrc += "&utmtid="+escape(__utmfd[1]);
         __utmfd[2]=__utmTrim(__utmfd[2]); if(__utmfd[2]&&__utmfd[2]!="") __utmsrc += "&utmipc="+escape(__utmfd[2]);
         __utmfd[3]=__utmTrim(__utmfd[3]); if(__utmfd[3]&&__utmfd[3]!="") __utmsrc += "&utmipn="+escape(__utmfd[3]);
         __utmfd[4]=__utmTrim(__utmfd[4]); if(__utmfd[4]&&__utmfd[4]!="") __utmsrc += "&utmiva="+escape(__utmfd[4]);
         __utmfd[5]=__utmTrim(__utmfd[5]); if(__utmfd[5]&&__utmfd[5]!="") __utmsrc += "&utmipr="+escape(__utmfd[5]);
         __utmfd[6]=__utmTrim(__utmfd[6]); if(__utmfd[6]&&__utmfd[6]!="") __utmsrc += "&utmiqt="+escape(__utmfd[6]);
      }

      if (__utmserv==0 || __utmserv==2) {
         __utmi[ii] = new Image(1,1);
         __utmi[ii].src  = __utmgifpath+"?"+"utmwv="+__utmwv+__utmsrc;
         __utmi[ii].onload  = function() { __utmVoid(); }
      }
      if (__utmserv==1 || __utmserv==2) {
         var __utmsrc2 = __utmsrc;
         __utmsrc2 += "&utmac="+__utmacct;
         __utmsrc2 += "&utmcc="+__utmcset;
         __utmi2[ii] = new Image(1,1);
         __utmi2[ii].src = __utmgifpath2+"?"+"utmwv="+__utmwv+__utmsrc2;
         __utmi2[ii].onload  = function() { __utmVoid(); }
      }
   }

   return;
}
function __utmGetFlash() {
   var __utmfv = "-";
   if (navigator.plugins && navigator.plugins.length) {
      for (ii=0; ii < navigator.plugins.length; ii++) {
         if (navigator.plugins[ii].name.indexOf('Shockwave Flash') != -1) {
            __utmfv = navigator.plugins[ii].description.split('Shockwave Flash ')[1];
            break;
         }
      }
   } else if (window.ActiveXObject) {
      for (ii = 10; ii >= 2; ii--) {
         try {
            var oFlash = eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash." + ii + "');");
            if (oFlash) { __utmfv = ii + '.0'; break; }
         }
         catch(e) {}
      }
   }
   return __utmfv;
}
function __utmLinker(__utmlink) {
   var __utmlp,__utmi,__utmi2,__utmta="-",__utmtb="-",__utmtc="-",__utmtz="-";

   if (__utmlink && __utmlink != "") { 
      if (document.cookie) {
         __utmta = __utmGetCookie(document.cookie,"__utma="+__utmdh,";");
         __utmtb = __utmGetCookie(document.cookie,"__utmb="+__utmdh,";");
         __utmtc = __utmGetCookie(document.cookie,"__utmc="+__utmdh,";");
         __utmtz = __utmGetCookie(document.cookie,"__utmz="+__utmdh,";");
         __utmtv = __utmGetCookie(document.cookie,"__utmv="+__utmdh,";");
         __utmlp = "__utma="+__utmta+"&__utmb="+__utmtb+"&__utmc="+__utmtc+"&__utmz="+__utmtz+"&__utmv="+__utmtv;
      }
      if (__utmlp) {
         if (__utmlink.indexOf("?") <= -1) { document.location = __utmlink+"?"+__utmlp; }
         else { document.location = __utmlink+"&"+__utmlp; }
      } else { document.location = __utmlink; }
   }
}
function __utmLinkPost(__utmform) {
   var __utmlp,__utmi,__utmi2,__utmta="-",__utmtb="-",__utmtc="-",__utmtz="-",__utmtv="-";
   if (!__utmform || !__utmform.action) return;

   if (document.cookie) {
      __utmta = __utmGetCookie(document.cookie,"__utma="+__utmdh,";");
      __utmtb = __utmGetCookie(document.cookie,"__utmb="+__utmdh,";");
      __utmtc = __utmGetCookie(document.cookie,"__utmc="+__utmdh,";");
      __utmtz = __utmGetCookie(document.cookie,"__utmz="+__utmdh,";");
      __utmtv = __utmGetCookie(document.cookie,"__utmv="+__utmdh,";");
      __utmlp = "__utma="+__utmta+"&__utmb="+__utmtb+"&__utmc="+__utmtc+"&__utmz="+__utmtz+"&__utmv="+__utmtv;
   }
   if (__utmlp) {
      if (__utmform.action.indexOf("?") <= -1) { __utmform.action += "?"+__utmlp; }
      else { __utmform.action += "&"+__utmlp; }
   }
   return;
}
function __utmSetVar(__utmvar) {
   if (!__utmvar || __utmvar == "") return;
   var __utmrn = Math.round(Math.random() * 2147483647);
   document.cookie="__utmv="+__utmdh+"."+__utmvar+"; path=/; expires=Sun, 18 Jan 2038 00:00:00 GMT;"+__utmdom;
   var __utmsrc = "&utmt=var&utmn="+__utmrn;
   if (__utmserv==0 || __utmserv==2) {
      var __utmi = new Image(1,1);
      __utmi.src  = __utmgifpath+"?"+"utmwv="+__utmwv+__utmsrc;
      __utmi.onload  = function() { __utmVoid(); }
   }
   if (__utmserv==1 || __utmserv==2) {
      var __utmi2 = new Image(1,1);
      var __utmsrc2 = __utmsrc;
      __utmsrc2 += "&utmac="+__utmacct;
      __utmsrc2 += "&utmcc="+__utmGetCookieSet();
      __utmi2.src = __utmgifpath2+"?"+"utmwv="+__utmwv+__utmsrc2;
      __utmi2.onload  = function() { __utmVoid(); }
   }
}
function __utmGetCookieSet() { 
   var __utmp;
   var __utmco="";
   if ((__utmp = __utmGetCookie(document.cookie,"__utma=",";")) != "-") __utmco += escape("__utma="+__utmp+";+");
   if ((__utmp = __utmGetCookie(document.cookie,"__utmb=",";")) != "-") __utmco += escape("__utmb="+__utmp+";+");
   if ((__utmp = __utmGetCookie(document.cookie,"__utmc=",";")) != "-") __utmco += escape("__utmc="+__utmp+";+");
   if ((__utmp = __utmGetCookie(document.cookie,"__utmz=",";")) != "-") __utmco += escape("__utmz="+__utmp+";+");
   if ((__utmp = __utmGetCookie(document.cookie,"__utmv=",";")) != "-") __utmco += escape("__utmv="+__utmp+";");
   if (__utmco.charAt(__utmco.length-1) == "+") __utmco = __utmco.substring(0,__utmco.length-1);
   return __utmco;
}
function __utmGetCookie(__utmclist,__utmcname,__utmcsep) {
   if (!__utmclist || __utmclist == "") return "-";
   if (!__utmcname || __utmcname == "") return "-";
   if (!__utmcsep  || __utmcsep  == "") return "-";
   var __utmi, __utmi2, __utmi3, __utmtc="-";

   __utmi = __utmclist.indexOf(__utmcname);
   __utmi3 = __utmcname.indexOf("=")+1;
   if (__utmi > -1) { 
      __utmi2 = __utmclist.indexOf(__utmcsep,__utmi); if (__utmi2 < 0) { __utmi2 = __utmclist.length; }
      __utmtc = __utmclist.substring((__utmi+__utmi3),__utmi2); 
   }
   return __utmtc;
}
function __utmSetDomain() {
   if (!__utmdn || __utmdn == "" || __utmdn == "none") { __utmdn = ""; return 1; }
   if (__utmdn == "auto") {
      var __utmdomain = document.domain;
      if (__utmdomain.substring(0,4) == "www.") {
         __utmdomain = __utmdomain.substring(4,__utmdomain.length);
      }
      __utmdn = __utmdomain;
   }
   if (__utmhash == "off") return 1;
   return __utmHash(__utmdn);
}
function __utmHash(__utmd) {
   if (!__utmd || __utmd == "") return 1;
   var __utmhash=0, __utmg=0;
   for (var i=__utmd.length-1;i>=0;i--) {
      var __utmc = parseInt(__utmd.charCodeAt(i)); 
      __utmhash = ((__utmhash << 6) & 0xfffffff) + __utmc + (__utmc << 14);
      if ((__utmg = __utmhash & 0xfe00000) != 0) __utmhash = (__utmhash ^ (__utmg >> 21));
   }
   return __utmhash;
}
function __utmFixA(__utmcs,__utmsp, __utmst) {
   if (!__utmcs || __utmcs == "") return "-";
   if (!__utmsp || __utmsp == "") return "-";
   if (!__utmst || __utmst == "") return "-";
   var __utmt = __utmGetCookie(__utmcs,"__utma=",__utmsp);
   var __utmlt=0;
   var __utmi=0;

   if ((__utmi=__utmt.lastIndexOf(".")) > 9) {
      __utmns = __utmt.substring(__utmi+1,__utmt.length);
      __utmns = (__utmns*1)+1;
      __utmt = __utmt.substring(0,(__utmi));

      if ((__utmi = __utmt.lastIndexOf(".")) > 7) {
         __utmlt = __utmt.substring(__utmi+1,__utmt.length);
         __utmt = __utmt.substring(0,(__utmi));
      }

      if ((__utmi = __utmt.lastIndexOf(".")) > 5) {
         __utmt = __utmt.substring(0,(__utmi));
      }
      __utmt += "."+__utmlt+"."+__utmst+"."+__utmns;
   }
   return __utmt;
}

function __utmCheckUTMI(__utmd) {
   var __utm1A = new Array();
   var __utmlst=0,__utmpst=0,__utmlvt=0,__utmlu=0,__utmi=0,__utmpi=0;
   var __utmap = "-";
   var __utmld = "";
   var __utmt2;
   var __utmt = document.cookie;

   while((__utmi = __utmt.indexOf("__utm1=")) >= 0) {
      __utm1A[__utm1A.length] = __utmGetCookie(__utmt,"__utm1=",";");
      __utmt = __utmt.substring(__utmi+7,__utmt.length);
   }
   if (__utm1A.length) {
      var __utmcts = Math.round(__utmd.getTime()/1000);
      var __utmlex = " expires="+__utmd.toGMTString()+";";
      __utmt = document.cookie; 
      if ((__utmi = __utmt.lastIndexOf("__utm3=")) >= 0) {
         __utmlst = __utmt.substring(__utmi,__utmt.length);
         __utmlst = __utmGetCookie(__utmlst,"__utm3=",";");
      }
      if ((__utmi = __utmt.lastIndexOf("__utm2=")) >= 0) {
         __utmpst = __utmt.substring(__utmi,__utmt.length);
         __utmpst = __utmGetCookie(__utmpst,"__utm2=",";");
      }
      for (var i=0;i<__utm1A.length;i++) {
         __utmt = __utm1A[i];
         if ((__utmi = __utmt.lastIndexOf(".")) >= 0) {
            __utmt2 = (__utmt.substring(0,__utmi))*1;
            __utmt  = (__utmt.substring(__utmi+1,__utmt.length))*1;
            if (__utmlvt == 0 || __utmt < __utmlvt) { 
               __utmlvt = __utmt;
               __utmlu  = __utmt2;
            }
         }
      }
      if (__utmlvt && __utmlst) { 
         if (!__utmpst ||  __utmpst > __utmlst) __utmpst = __utmlst;
         __utmap = __utmlu+"."+__utmlvt+"."+__utmpst+"."+__utmlst+".2"; 
      } else if (__utmlvt) { 
         if (!__utmpst || __utmpst > __utmcts) __utmpst = __utmcts;
         __utmap = __utmlu+"."+__utmlvt+"."+__utmpst+"."+__utmcts+".2";
      }
      __utmld = __utmt = document.domain;
      __utmi=__utmpi=0;
      while((__utmi = __utmt.indexOf(".",__utmpi+1)) >= 0) {
         if (__utmpi>0) __utmld = __utmt.substring(__utmpi+1,__utmt.length);
         __utmld = " domain="+__utmld+";"; 
         document.cookie="__utm1=1; path=/;"+__utmlex+__utmld;
         document.cookie="__utm2=1; path=/;"+__utmlex+__utmld;
         document.cookie="__utm3=1; path=/;"+__utmlex+__utmld;
         __utmpi=__utmi;
      }
      document.cookie="__utm1=1; path=/;"+__utmlex;
      document.cookie="__utm2=1; path=/;"+__utmlex;
      document.cookie="__utm3=1; path=/;"+__utmlex;
   }
   return __utmap;
}

function __utmTZConvert(__utmmz) {
   var __utmhr=0,__utmmn=0,__utmsg='+';
   if (__utmmz && __utmmz != "") {
      if (__utmmz <= 0) {__utmsg='+'; __utmmz*=-1; }
      else {__utmsg='-'; __utmmz*=1; }
      __utmhr = Math.floor((__utmmz/60)); 
      __utmmn = Math.floor((__utmmz%60)); 
   }
   if (__utmhr < 10) __utmhr = "0"+__utmhr;
   if (__utmmn < 10) __utmmn = "0"+__utmmn;
   return __utmsg+__utmhr+__utmmn;
}
function __utmTrim(s) {
  if (!s || s == "") return "";
  while ((s.charAt(0) == ' ') || (s.charAt(0) == '\n') || (s.charAt(0,1) == '\r')) {
    s = s.substring(1,s.length);
  }
  while ((s.charAt(s.length-1) == ' ') || (s.charAt(s.length-1) == '\n') || (s.charAt(s.length-1) == '\r')) {
    s = s.substring(0,s.length-1);
  }
  return s;
}



/* UTM Urchin Reporting System - End*/




/* Product window call-outs - Start*/

// INITIALIZATION:

linkBox = new Object();

// CONFIGURATION:

linkBox.bgColor = '#FFFFCC';
linkBox.borderColor = '#000000';
linkBox.borderWidth = 1;
linkBox.fontColor = '#000000';
linkBox.fontFace = 'arial,verdana';
linkBox.fontSize = '1px';
linkBox.boxWidth = 200;
linkBox.boxPadding = 3;
linkBox.shadowVisible = false;
linkBox.shadowColor = '#999999';
linkBox.trackMouse = true;

linkBox.cursorOffsetX = 20;
linkBox.cursorOffsetY = 0;
linkBox.dropShadowOffsetX = 2;
linkBox.dropShadowOffsetY = 2;
linkBox.windowPadding = 2;
linkBox.openDelay = 200;

// MAIN:

linkBox.documentLoaded = false;
linkBox.boxLoaded = false;
linkBox.boxActive = false;
linkBox.openTimeout = null;
linkBox.trackMouseTimeout = null;

function documentLoaded() {
   linkBox.documentLoaded = true;
   }

function loadLinkBox() {
   if (!linkBox.boxLoaded) {
      captureCursor();
      linkBox.shadowLayerObj = addLayer('shadowBoxLayer');
      setLayerOnTop(linkBox.shadowLayerObj);
      linkBox.boxLayerObj = addLayer('linkBoxLayer');
      setLayerOnTop(linkBox.boxLayerObj);
      linkBox.boxLoaded = true;
      }
   }

function openLinkBox(MESSAGE,BGCOLOR,BORDERCOLOR,BORDERWIDTH,FONTCOLOR,FONTFACE,FONTSIZE,BOXWIDTH,BOXPADDING,SHADOWVISIBLE,SHADOWCOLOR,TRACKMOUSE) {
   if (dyn && linkBox.documentLoaded) {
      if (!linkBox.boxLoaded) loadLinkBox();
      if (linkBox.boxActive) hideLayer(linkBox.layerObj);
      var bgColor = (!isBlank(BGCOLOR)) ? BGCOLOR : linkBox.bgColor;
      var borderColor = (!isBlank(BORDERCOLOR)) ? BORDERCOLOR : linkBox.borderColor;
      var borderWidth = (!isBlank(BORDERWIDTH)) ? BORDERWIDTH : linkBox.borderWidth;
      var fontColor = (!isBlank(FONTCOLOR)) ? FONTCOLOR : linkBox.fontColor;
      var fontFace = (!isBlank(FONTFACE)) ? FONTFACE : linkBox.fontFace;
      var fontSize = (!isBlank(FONTSIZE)) ? FONTSIZE : linkBox.fontSize;
      var boxWidth = (!isBlank(BOXWIDTH)) ? BOXWIDTH : linkBox.boxWidth;
      var boxPadding = (!isBlank(BOXPADDING)) ? BOXPADDING : linkBox.boxPadding;
      linkBox.dropShadow = (!isBlank(SHADOWVISIBLE)) ? SHADOWVISIBLE : linkBox.shadowVisible;
      var shadowColor = (!isBlank(SHADOWCOLOR)) ? SHADOWCOLOR : linkBox.shadowColor;
      linkBox.mouseTracking = (!isBlank(TRACKMOUSE)) ? TRACKMOUSE : linkBox.trackMouse;
      var htmlStr = getTableTag(0,0,0,boxWidth) + '<tr>';
      htmlStr += getTdTag('left','top','',borderColor);
      htmlStr += getTableTag(boxPadding,borderWidth,0,'100%') + '<tr>';
      htmlStr += getTdTag('left','top','',bgColor);
      htmlStr += getFontTag(fontColor,fontFace,fontSize);
      htmlStr += MESSAGE;
      htmlStr += '</font></td></tr></table></td></tr></table>';
      setLayerHTML(linkBox.boxLayerObj,htmlStr);
      setLayerSize(linkBox.boxLayerObj,boxWidth,'');
      if (linkBox.dropShadow) {
         var htmlStr = getTableTag(0,0,0,boxWidth) + '<tr>';
         htmlStr += getTdTag('left','top','',shadowColor);
         htmlStr += getTableTag(boxPadding,borderWidth,0,'100%') + '<tr>';
         htmlStr += getTdTag('left','top','',shadowColor);
         htmlStr += getFontTag(shadowColor,fontFace,fontSize);
         htmlStr += MESSAGE;
         htmlStr += '</font></td></tr></table></td></tr></table>';
         setLayerHTML(linkBox.shadowLayerObj,htmlStr);
         setLayerSize(linkBox.shadowLayerObj,boxWidth,'');
         }
      linkBox.layerWidth = getLayerWidth(linkBox.boxLayerObj);
      linkBox.winWidth = getWinWidth();
      linkBox.winHeight = getWinHeight();
      linkBox.openTimeout = window.setTimeout('displayLinkBox()',linkBox.openDelay);
      }
   }

function closeLinkBox() {
   if (dyn && linkBox.boxLoaded) {
      linkBox.boxActive = false;
      window.clearTimeout(linkBox.openTimeout);
      hideLayer(linkBox.shadowLayerObj);
      hideLayer(linkBox.boxLayerObj);
      }
   }

function displayLinkBox() {
   if (linkBox.dropShadow) showLayer(linkBox.shadowLayerObj);
   showLayer(linkBox.boxLayerObj);
   linkBox.boxActive = true;
   updateLinkBoxPos();
   }

function updateLinkBoxPos() {
   if (linkBox.boxActive) {
      var posX = cursorWinX + linkBox.cursorOffsetX;
      if (posX + linkBox.layerWidth > linkBox.winWidth - linkBox.windowPadding) posX = cursorWinX - linkBox.layerWidth - linkBox.cursorOffsetX;
      if (posX < linkBox.windowPadding) posX = linkBox.windowPadding;
      posX += getDocScrollLeft();
      posY = cursorWinY + linkBox.cursorOffsetY + getDocScrollTop();
      if (linkBox.dropShadow) moveLayerTo(linkBox.shadowLayerObj,posX + linkBox.dropShadowOffsetX,posY + linkBox.dropShadowOffsetY);
      moveLayerTo(linkBox.boxLayerObj,posX,posY);
      if (linkBox.mouseTracking) linkBox.trackMouseTimeout = window.setTimeout('updateLinkBoxPos()',50);
      }
   }

window.onload = documentLoaded;





//

// --- 1. BROWSER DETECTION --- //

var dyn = (document.all || document.layers || document.getElementById) ? true : false;

var ie = (navigator.appName.indexOf('Microsoft') != -1) ? true : false;
var ie4 = (ie && document.all && !document.getElementById) ? true : false;
var ie5 = (ie && document.getElementById && navigator.userAgent.indexOf('MSIE 6.0') == -1) ? true : false;
var ie6 = (ie && document.getElementById && !ie5) ? true : false;
var ie4Min = (ie4 || ie5 || ie6) ? true : false;
var ie5Min = (ie5 || ie6) ? true : false;
var ie6Min = ie6;

var ns = (navigator.appName.indexOf('Netscape') != -1) ? true : false;
var ns4 = (ns && document.layers) ? true : false;
var ns6 = (ns && document.getElementById) ? true : false;
var ns4Min = (ns4 || ns6) ? true : false;
var ns6Min = ns6;

// --- 2. CURSOR --- //

var cursorPageX, cursorPageY;
var cursorWinX, cursorWinY;

function captureCursor() {
   if (dyn && !cursorCaptured) {
      if (ns) document.captureEvents(Event.MOUSEMOVE);
      document.onmousemove = updateCursorPos;
      cursorCaptured = true;
      }
   }

var cursorCaptured = false;

function updateCursorPos(EVENT) {
   if (dyn) {
      if (ie) {
         cursorWinX = event.clientX - 2;
         cursorWinY = event.clientY - 2;
         var scrollLeft = (document.documentElement && document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;
         cursorPageX = cursorWinX + scrollLeft;
         var scrollTop = (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;
         cursorPageY = cursorWinY + scrollTop;
         }
      else {
         cursorPageX = EVENT.pageX;
         cursorPageY = EVENT.pageY;
         cursorWinX = cursorPageX - window.pageXOffset;
         cursorWinY = cursorPageY - window.pageYOffset;
         }
      if (dragLayerObj.isDragging) {
         moveLayerTo(dragLayerObj.layerObj,cursorPageX - dragLayerObj.cursorOffsetX,cursorPageY - dragLayerObj.cursorOffsetY);
         return false;
         }
      }
   }

// --- 3. DOCUMENT --- //

function getDocHeight() {
   if (ie4Min) return (document.body.scrollHeight > document.body.clientHeight) ? document.body.scrollHeight : document.body.clientHeight;
   else if (ns4Min) return (document.height > window.innerHeight) ? document.height : window.innerHeight;
   }

function getDocWidth() {
   if (ie4Min) return (document.body.scrollWidth > document.body.clientWidth) ? document.body.scrollWidth : document.body.clientWidth;
   else if (ns4Min) return (document.width > window.innerWidth) ? document.width : window.innerWidth;
   }

function getDocScrollLeft() {
   if (ie4Min) {
      if (document.documentElement && document.documentElement.scrollLeft) return document.documentElement.scrollLeft;
      else return document.body.scrollLeft;
      }
   else if (ns4Min) return window.pageXOffset;
   }

function getDocScrollTop() {
   if (ie4Min) {
      if (document.documentElement && document.documentElement.scrollTop) return document.documentElement.scrollTop;
      else return document.body.scrollTop;
      }
   else if (ns4Min) return window.pageYOffset;
   }

// --- 4. EVENTS --- //

function addObjEvent(OBJ,EVENT,FUNC) {
   if (dyn) {
      if (EVENT == 'click') {
         if (ns4) OBJ.captureEvents(Event.CLICK);
         OBJ.onclick = new Function(FUNC);
         }
      else if (EVENT == 'mousedown') {
         if (ns4) OBJ.captureEvents(Event.MOUSEDOWN);
         OBJ.onmousedown = new Function(FUNC);
         }
      else if (EVENT == 'mouseup') {
         if (ns4) OBJ.captureEvents(Event.MOUSEUP);
         OBJ.onmouseup = new Function(FUNC);
         }
      else if (EVENT == 'mouseover') {
         if (ns4) OBJ.captureEvents(Event.MOUSEOVER);
         OBJ.onmouseover = new Function(FUNC);
         }
      else if (EVENT == 'mouseout') {
         if (ns4) OBJ.captureEvents(Event.MOUSEOUT);
         OBJ.onmouseout = new Function(FUNC);
         }
      }
   }

function removeObjEvent(OBJ,EVENT) {
   if (dyn) {
      if (EVENT == 'click') {
         if (ns4) OBJ.releaseEvents(Event.CLICK);
         OBJ.onclick = null;
         }
      else if (EVENT == 'mousedown') {
         if (ns4) OBJ.releaseEvents(Event.MOUSEDOWN);
         OBJ.onmousedown = null;
         }
      else if (EVENT == 'mouseup') {
         if (ns4) OBJ.releaseEvents(Event.MOUSEUP);
         OBJ.onmouseup = null;
         }
      else if (EVENT == 'mouseover') {
         if (ns4) OBJ.releaseEvents(Event.MOUSEOVER);
         OBJ.onmouseover = null;
         }
      else if (EVENT == 'mouseout') {
         if (ns4) OBJ.releaseEvents(Event.MOUSEOUT);
         OBJ.onmouseout = null;
         }
      }
   }

// --- 5. HTML STRINGS --- //

function getATag(HREF,TARGET,ONMOUSEOVER,ONMOUSEOUT,OTHER) {
   var tempHtmlStr = '<A';
   if (!isBlank(HREF)) tempHtmlStr += ' HREF="' + HREF + '"';
   if (!isBlank(TARGET)) tempHtmlStr += ' TARGET="' + TARGET + '"';
   if (!isBlank(ONMOUSEOVER)) tempHtmlStr += ' onMouseOver="' + ONMOUSEOVER + '"';
   if (!isBlank(ONMOUSEOUT)) tempHtmlStr += ' onMouseOut="' + ONMOUSEOUT + '"';
   if (!isBlank(OTHER)) tempHtmlStr += ' ' + OTHER;
   tempHtmlStr += '>';
   return tempHtmlStr;
   }

function getFontTag(COLOR,FACE,SIZE,OTHER) {
   var tempHtmlStr = '<FONT';
   if (!isBlank(COLOR)) tempHtmlStr += ' COLOR="' + COLOR + '"';
   if (!isBlank(FACE)) tempHtmlStr += ' FACE="' + FACE + '"';
   if (!isBlank(SIZE)) tempHtmlStr += ' SIZE="' + SIZE + '"';
   if (!isBlank(OTHER)) tempHtmlStr += ' ' + OTHER;
   tempHtmlStr += '>';
   return tempHtmlStr;
   }

function getImgTag(NAME,SRC,WIDTH,HEIGHT,BORDER,ALIGN,HSPACE,VSPACE,ALT,OTHER) {
   var tempHtmlStr = '<IMG';
   if (!isBlank(NAME)) tempHtmlStr += ' NAME="' + NAME + '"';
   if (!isBlank(SRC)) tempHtmlStr += ' SRC="' + SRC + '"';
   if (!isBlank(WIDTH)) tempHtmlStr += ' WIDTH="' + WIDTH + '"';
   if (!isBlank(HEIGHT)) tempHtmlStr += ' HEIGHT="' + HEIGHT + '"';
   if (!isBlank(BORDER)) tempHtmlStr += ' BORDER="' + BORDER + '"';
   if (!isBlank(ALIGN)) tempHtmlStr += ' ALIGN="' + ALIGN + '"';
   if (!isBlank(HSPACE)) tempHtmlStr += ' HSPACE="' + HSPACE + '"';
   if (!isBlank(VSPACE)) tempHtmlStr += ' VSPACE="' + VSPACE + '"';
   if (!isBlank(ALT)) tempHtmlStr += ' ALT="' + ALT + '"';
   if (!isBlank(OTHER)) tempHtmlStr += ' ' + OTHER;
   tempHtmlStr += '>';
   return tempHtmlStr;
   }

function getTableTag(CELLPADDING,CELLSPACING,BORDER,WIDTH,HEIGHT,OTHER) {
   var tempHtmlStr = '<TABLE';
   if (!isBlank(CELLPADDING)) tempHtmlStr += ' CELLPADDING="' + CELLPADDING + '"';
   if (!isBlank(CELLSPACING)) tempHtmlStr += ' CELLSPACING="' + CELLSPACING + '"';
   if (!isBlank(BORDER)) tempHtmlStr += ' BORDER="' + BORDER + '"';
   if (!isBlank(WIDTH)) tempHtmlStr += ' WIDTH="' + WIDTH + '"';
   if (!isBlank(HEIGHT)) tempHtmlStr += ' HEIGHT="' + HEIGHT + '"';
   if (!isBlank(OTHER)) tempHtmlStr += ' ' + OTHER;
   tempHtmlStr += '>';
   return tempHtmlStr;
   }

function getTdTag(ALIGN,VALIGN,WIDTH,BGCOLOR,BACKGROUND,COLSPAN,ROWSPAN,NOWRAP,OTHER) {
   var tempHtmlStr = '<TD';
   if (!isBlank(ALIGN)) tempHtmlStr += ' ALIGN="' + ALIGN + '"';
   if (!isBlank(VALIGN)) tempHtmlStr += ' VALIGN="' + VALIGN + '"';
   if (!isBlank(WIDTH)) tempHtmlStr += ' WIDTH="' + WIDTH + '"';
   if (!isBlank(BGCOLOR)) tempHtmlStr += ' BGCOLOR="' + BGCOLOR + '"';
   if (!isBlank(BACKGROUND)) tempHtmlStr += ' BACKGROUND="' + BACKGROUND + '"';
   if (!isBlank(COLSPAN)) tempHtmlStr += ' COLSPAN="' + COLSPAN + '"';
   if (!isBlank(ROWSPAN)) tempHtmlStr += ' ROWSPAN="' + ROWSPAN + '"';
   if (NOWRAP == true) tempHtmlStr += ' NOWRAP';
   if (!isBlank(OTHER)) tempHtmlStr += ' ' + OTHER;
   tempHtmlStr += '>';
   return tempHtmlStr;
   }

// --- 6. IMAGES --- //

function getImgObj(IMGNAME) {
   if (ns4) {
      var tempImgObj = null;
      var tempParentObj = (arguments.length == 1) ? document : arguments[1];
      if (arguments.length == 1 && document.images[IMGNAME] != null) tempImgObj = document.images[IMGNAME];
      else {
         for (var tempLayerLoop in tempParentObj.layers) {
            var tempObj = tempParentObj.layers[tempLayerLoop];
            var tempConstructor = tempObj.constructor + '';
            if (tempConstructor.indexOf('function Layer()') != -1) {
               if (tempObj.document.images[IMGNAME] != null) return tempObj.document.images[IMGNAME];
               else if (tempObj.document.layers.length > 0) tempImgObj = getImgObj(IMGNAME,tempObj);
               }
            }
         }
      return tempImgObj;
      }
   else if (dyn) return document.images[IMGNAME];
   }

function loadImg(SRC) {
   if (dyn) {
      var tempImgObj = new Image();
      tempImgObj.src = SRC;
      return tempImgObj;
      }
   }

// --- 7. LAYER ADDING --- //

function addLayer(LAYERID,PARENTLAYEROBJ) {
   if (ie4Min) {
      if (isBlank(PARENTLAYEROBJ)) PARENTLAYEROBJ = document.body;
      PARENTLAYEROBJ.insertAdjacentHTML('BeforeEnd','<div id="' + LAYERID + '" style="position:absolute;left:0;top:0;width:1;visibility:hidden;"></div>');
      return (document.all) ? document.all[LAYERID] : document.getElementById(LAYERID);
      }
   else if (ns4) {
      if (isBlank(PARENTLAYEROBJ)) {
         document.layers[LAYERID] = new Layer(0);
         return document.layers[LAYERID];
         }
      else {
         PARENTLAYEROBJ.document.layers[LAYERID] = new Layer(0,PARENTLAYEROBJ);
         return PARENTLAYEROBJ.document.layers[LAYERID];
         }
      }
   else if (ns6) {
      if (isBlank(PARENTLAYEROBJ)) PARENTLAYEROBJ = document.body;
      var tempLayer = document.createElement('div');
      tempLayer.setAttribute('id',LAYERID);
      tempLayer.setAttribute('style','position:absolute;left:0;top:0;width:1;visibility:hidden;');
      PARENTLAYEROBJ.appendChild(tempLayer);
      return document.getElementById(LAYERID);
      }
   }

// --- 8. LAYER APPEARANCE --- //

function setLayerBgColor(LAYEROBJ,COLOR) {
   if (ns4) LAYEROBJ.document.bgColor = COLOR;
   else if (dyn) LAYEROBJ.style.backgroundColor = COLOR;
   }

function setLayerBgSrc(LAYEROBJ,SRC) {
   if (ns4) LAYEROBJ.background.src = SRC;
   else if (dyn) LAYEROBJ.style.backgroundImage = 'url(' + SRC + ')';
   }

// --- 9. LAYER CLIPPING --- //

function getLayerClipBottom(LAYEROBJ) {
   if (ns4) return LAYEROBJ.clip.bottom;
   else if (dyn) {
      var tempClipArray = LAYEROBJ.style.clip.substring(5,LAYEROBJ.style.clip.length - 3).split('px ');
      return parseInt(tempClipArray[2]);
      }
   }

function getLayerClipLeft(LAYEROBJ) {
   if (ns4) return LAYEROBJ.clip.left;
   else if (dyn) {
      var tempClipArray = LAYEROBJ.style.clip.substring(5,LAYEROBJ.style.clip.length - 3).split('px ');
      return parseInt(tempClipArray[3]);
      }
   }

function getLayerClipRight(LAYEROBJ) {
   if (ns4) return LAYEROBJ.clip.right;
   else if (dyn) {
      var tempClipArray = LAYEROBJ.style.clip.substring(5,LAYEROBJ.style.clip.length - 3).split('px ');
      return parseInt(tempClipArray[1]);
      }
   }

function getLayerClipTop(LAYEROBJ) {
   if (ns4) return LAYEROBJ.clip.top;
   else if (dyn) {
      var tempClipArray = LAYEROBJ.style.clip.substring(5,LAYEROBJ.style.clip.length - 3).split('px ');
      return parseInt(tempClipArray[0]);
      }
   }

function setLayerClip(LAYEROBJ,TOP,RIGHT,BOTTOM,LEFT) {
   if (dyn) {
      if (isBlank(TOP)) TOP = getLayerClipTop(LAYEROBJ);
      if (isBlank(RIGHT)) RIGHT = getLayerClipRight(LAYEROBJ);
      if (isBlank(BOTTOM)) BOTTOM = getLayerClipBottom(LAYEROBJ);
      if (isBlank(LEFT)) LEFT = getLayerClipLeft(LAYEROBJ);
      if (ns4) {
         LAYEROBJ.clip.left = LEFT;
         LAYEROBJ.clip.top = TOP;
         LAYEROBJ.clip.right = RIGHT;
         LAYEROBJ.clip.bottom = BOTTOM;
         }
      else LAYEROBJ.style.clip = 'rect(' + TOP + 'px ' +  RIGHT + 'px ' + BOTTOM + 'px '  + LEFT + 'px)';
      }
   }

// --- 10. LAYER DIMENSIONS --- //

function getLayerHeight(LAYEROBJ) {
   if (ie4) return LAYEROBJ.clientHeight;
   else if (ns4) return LAYEROBJ.clip.height;
   else if (dyn) return parseInt(LAYEROBJ.style.height);
   }

function getLayerWidth(LAYEROBJ) {
   if (ie4) return LAYEROBJ.clientWidth;
   else if (ns4) return LAYEROBJ.clip.width;
   else if (dyn) return parseInt(LAYEROBJ.style.width);
   }

function setLayerSize(LAYEROBJ,WIDTH,HEIGHT) {
   if (ie4) {
      if (!isBlank(WIDTH)) LAYEROBJ.style.pixelWidth = WIDTH;
      if (!isBlank(HEIGHT)) LAYEROBJ.style.pixelHeight = HEIGHT;
      }
   else if (ns4) {
      if (!isBlank(WIDTH)) LAYEROBJ.clip.right = WIDTH;
      if (!isBlank(HEIGHT)) LAYEROBJ.clip.bottom = HEIGHT;
      }
   else if (dyn) {
      if (!isBlank(WIDTH)) LAYEROBJ.style.width = WIDTH + 'px';
      if (!isBlank(HEIGHT)) LAYEROBJ.style.height = HEIGHT + 'px';
      }
   }

// --- 11. LAYER DRAGGING --- //

function addLayerDrag(LAYEROBJ,DRAGLAYEROBJ,DRAGENDFUNC) {
   if (dyn) {
      if (!cursorCaptured) captureCursor();
      LAYEROBJ.drag = new Object();
      LAYEROBJ.drag.layerObj = (!isBlank(DRAGLAYEROBJ)) ? DRAGLAYEROBJ : LAYEROBJ;
      LAYEROBJ.drag.onDragEnd = (!isBlank(DRAGENDFUNC)) ? new Function(DRAGENDFUNC) : null;
      if (ns4) {
         LAYEROBJ.captureEvents(Event.MOUSEDOWN);
         document.captureEvents(Event.MOUSEUP);
         }
      LAYEROBJ.onmousedown = dragLayerStart;
      document.onmouseup = dragLayerStop;
      }
   }

function removeLayerDrag(LAYEROBJ) {
   if (dyn) {
      LAYEROBJ.drag = null;
      LAYEROBJ.onmousedown = null;
      if (ns4) {
         LAYEROBJ.releaseEvents(Event.MOUSEDOWN);
         document.releaseEvents(Event.MOUSEUP);
         }
      }
   }

dragLayerObj = new Object();
dragLayerObj.isDragging = false;

function dragLayerStart() {
   if (!this.isSliding) {
      dragLayerObj.layerObj = this.drag.layerObj;
      dragLayerObj.cursorOffsetX = cursorPageX - getLayerLeft(dragLayerObj.layerObj);
      dragLayerObj.cursorOffsetY = cursorPageY - getLayerTop(dragLayerObj.layerObj);
      dragLayerObj.onDragEnd = this.drag.onDragEnd;
      setLayerOnTop(dragLayerObj.layerObj);
      dragLayerObj.isDragging = true;
      return true;
      }
   }

function dragLayerStop() {
   if (dragLayerObj.isDragging) {
      dragLayerObj.isDragging = false;
      if (dragLayerObj.onDragEnd != null) dragLayerObj.onDragEnd();
      return true;
      }
   }

// --- 12. LAYER HTML --- //

function setLayerHTML(LAYEROBJ,STR) {
   if (navigator.userAgent.indexOf('MSIE 5.0') && navigator.userAgent.indexOf('Mac') != -1) STR += '\n';
   if (ns4) {
      LAYEROBJ.document.open();
      LAYEROBJ.document.write(STR);
      LAYEROBJ.document.close();
      }
   else if (dyn) LAYEROBJ.innerHTML = STR;
   }

// --- 13. LAYER OBJECT --- //

function getLayerObj(LAYERID) {
   if (ie4) return document.all[LAYERID];
   else if (ns4) {
      var tempLayerObj = null;
      var tempParentObj = (arguments.length == 1) ? document : arguments[1];
      for (var tempLayerLoop in tempParentObj.layers) {
         var tempObj = tempParentObj.layers[tempLayerLoop];
         var tempConstructor = tempObj.constructor + '';
         if (tempConstructor.indexOf('function Layer()') != -1) {
            if (tempLayerLoop == LAYERID) return tempObj;
            else if (tempObj.document.layers.length > 0) tempLayerObj = getLayerObj(LAYERID,tempObj);
            }
         }
      return tempLayerObj;
      }
   else if (dyn) return document.getElementById(LAYERID);
   }

// --- 14. LAYER POSITIONING --- //

function getLayerLeft(LAYEROBJ) {
   if (ns4) return LAYEROBJ.left;
   else if (dyn) return parseInt(LAYEROBJ.style.left);
   }

function getLayerTop(LAYEROBJ) {
   if (ns4) return LAYEROBJ.top;
   else if (dyn) return parseInt(LAYEROBJ.style.top);
   }

function moveLayerBy(LAYEROBJ,DISTX,DISTY) {
   if (ns4) {
      if (isBlank(DISTX)) DISTX = 0;
      if (isBlank(DISTY)) DISTY = 0;
      LAYEROBJ.moveBy(DISTX,DISTY);
      }
   else if (dyn) {
      if (!isBlank(DISTX)) LAYEROBJ.style.left = (parseInt(LAYEROBJ.style.left) + DISTX) + 'px';
      if (!isBlank(DISTY)) LAYEROBJ.style.top = (parseInt(LAYEROBJ.style.top) + DISTY) + 'px';
      }
   }

function moveLayerTo(LAYEROBJ,LEFT,TOP) {
   if (ns4) {
      if (isBlank(LEFT)) LEFT = getLayerLeft(LAYEROBJ);
      if (isBlank(TOP)) TOP = getLayerTop(LAYEROBJ);
      LAYEROBJ.moveTo(LEFT,TOP);
      }
   else if (dyn) {
      if (!isBlank(LEFT)) LAYEROBJ.style.left = LEFT + 'px';
      if (!isBlank(TOP)) LAYEROBJ.style.top = TOP + 'px';
      }
   }

// --- 15. LAYER SLIDING --- //

function slideLayerBy(LAYEROBJ,DISTX,DISTY,INCREMENT,FRAMERATE,SLIDEENDFUNC) {
   if (dyn) {
      var tempSlideId = LAYEROBJ.id;
      if (slideLayerObj[tempSlideId] != null) window.clearTimeout(slideLayerObj[tempSlideId].moveTimeout);
      var tempPosX = getLayerLeft(LAYEROBJ);
      var tempPosY = getLayerTop(LAYEROBJ);
      if (isBlank(DISTX)) DISTX = 0; 
      if (isBlank(DISTY)) DISTY = 0; 
      var tempEndX = tempPosX + DISTX;
      var tempEndY = tempPosY + DISTY;
      slideLayerObj[tempSlideId] = new slideLayerInit(LAYEROBJ,tempPosX,tempPosY,tempEndX,tempEndY,INCREMENT,FRAMERATE,SLIDEENDFUNC);
      slideLayerObj[tempSlideId].slideLayer();
      }
   }

function slideLayerTo(LAYEROBJ,LEFT,TOP,INCREMENT,FRAMERATE,SLIDEENDFUNC) {
   if (dyn) {
      var tempSlideId = LAYEROBJ.id;
      if (slideLayerObj[tempSlideId] != null) window.clearTimeout(slideLayerObj[tempSlideId].moveTimeout);
      var tempPosX = getLayerLeft(LAYEROBJ);
      var tempPosY = getLayerTop(LAYEROBJ);
      if (isBlank(LEFT)) LEFT = tempPosX;
      if (isBlank(TOP)) TOP = tempPosY;
      slideLayerObj[tempSlideId] = new slideLayerInit(LAYEROBJ,tempPosX,tempPosY,LEFT,TOP,INCREMENT,FRAMERATE,SLIDEENDFUNC);
      slideLayerObj[tempSlideId].slideLayer();
      }
   }

slideLayerObj = new Object();

function slideLayerInit(LAYEROBJ,POSX,POSY,ENDX,ENDY,INCREMENT,FRAMERATE,SLIDEENDFUNC) {
   dragLayerObj.isDragging = false;
   LAYEROBJ.isSliding = true;
   this.layerId = LAYEROBJ.id;
   this.layerObj = LAYEROBJ;
   this.posX = POSX;
   this.posY = POSY;
   this.posZ = 0;
   this.endX = ENDX;
   this.endY = ENDY;
   this.incZ = (!isBlank(INCREMENT)) ? INCREMENT : 3;
   this.frameRate = (!isBlank(FRAMERATE)) ? FRAMERATE : 50;
   this.onSlideEnd = (!isBlank(SLIDEENDFUNC)) ? new Function(SLIDEENDFUNC) : null;
   this.moveTimeout = null;
   this.slideLayer = slideLayerMove;
   this.distX = this.endX - this.posX;
   this.dirX = (this.distX >= 0) ? 'right' : 'left';
   if (this.distX < 0) this.distX *= -1;
   this.distY = this.endY - this.posY;
   this.dirY = (this.distY >= 0) ? 'down' : 'up';
   if (this.distY < 0) this.distY *= -1;
   this.distZ = Math.sqrt(Math.pow(this.distX,2) + Math.pow(this.distY,2));
   this.slideAngle = Math.atan(this.distX / this.distY);
   this.incX = Math.sin(this.slideAngle) * this.incZ;
   this.incY = Math.cos(this.slideAngle) * this.incZ;
   }

function slideLayerMove() {
   if (this.posZ + this.incZ < this.distZ) {
      this.posX += (this.dirX == 'right') ? this.incX : this.incX * -1;
      this.posY += (this.dirY == 'down') ? this.incY : this.incY * -1;
      this.posZ += this.incZ;
      moveLayerTo(this.layerObj,Math.round(this.posX),Math.round(this.posY));
      slideLayerObj[this.layerId].moveTimeout = setTimeout('slideLayerObj[\'' + this.layerId + '\'].slideLayer()',this.frameRate);
      }
   else {
      this.posX = this.endX;
      this.posY = this.endY;
      moveLayerTo(this.layerObj,this.endX,this.endY);
      if (this.onSlideEnd != null) this.onSlideEnd();
      this.layerObj.isSliding = false;
      }
   }

// --- 16. LAYER STACKING --- //

function setLayerOnBottom(LAYEROBJ) {
   if (dyn) setLayerZIndex(LAYEROBJ,getLayerStack('<') - 1);
   }

function setLayerOnTop(LAYEROBJ) {
   if (dyn) setLayerZIndex(LAYEROBJ,getLayerStack('>') + 1);
   }

function getLayerStack(TYPE) {
   if (ie4) {
      var tempLayerZIndex = null;
      for (var tempLayerLoop in document.all) {
         if (typeof(document.all[tempLayerLoop]) == 'object' && (document.all[tempLayerLoop].tagName == 'DIV' || document.all[tempLayerLoop].tagName == 'SPAN')) {
            if (tempLayerZIndex == null || eval('document.all[tempLayerLoop].style.zIndex ' + TYPE + ' tempLayerZIndex')) {
               tempLayerZIndex = document.all[tempLayerLoop].style.zIndex;
               }
            }
         }
      }
   else if (ns4) {
      var tempParentObj = (arguments.length == 1) ? document : arguments[1];
      var tempLayerZIndex = (arguments.length == 1) ? null : arguments[2];
      for (var tempLayerLoop in tempParentObj.layers) {
         var tempConstructor = tempParentObj.layers[tempLayerLoop].constructor + '';
         if (tempConstructor.indexOf('function Layer()') != -1) {
            if (tempLayerZIndex == null || eval('tempParentObj.layers[tempLayerLoop].zIndex ' + TYPE + ' tempLayerZIndex')) {
               tempLayerZIndex = tempParentObj.layers[tempLayerLoop].zIndex;
               }
            if (tempParentObj.layers[tempLayerLoop].layers.length > 0) {
               tempLayerZIndex = getLayerStack(TYPE,tempParentObj.layers[tempLayerLoop].document,tempLayerZIndex);
               }
            }
         }
      }
   else if (dyn) {
      var tempLayerZIndex = null;
      var tempLayersObj = document.getElementsByTagName('div');
      for (var tempLayerLoop = 0; tempLayerLoop < tempLayersObj.length; tempLayerLoop++) {
         if (tempLayerZIndex == null || eval('tempLayersObj[tempLayerLoop].style.zIndex ' + TYPE + ' tempLayerZIndex')) {
            tempLayerZIndex = tempLayersObj[tempLayerLoop].style.zIndex;
            }
         }
      }
   return parseInt(tempLayerZIndex);
   }

// --- 17. LAYER VISIBILITY --- //

function hideLayer(LAYEROBJ) {
   if (ns4) LAYEROBJ.visibility = 'hide';
   else if (dyn) LAYEROBJ.style.visibility = 'hidden';
   }

function showLayer(LAYEROBJ) {
   if (ns4) LAYEROBJ.visibility = 'show';
   else if (dyn) LAYEROBJ.style.visibility = 'visible';
   }

// --- 18. LAYER Z-INDEX --- //

function getLayerZIndex(LAYEROBJ) {
   if (ns4) return LAYEROBJ.zIndex;
   else if (dyn) return LAYEROBJ.style.zIndex;
   }

function setLayerZIndex(LAYEROBJ,ZINDEX) {
   if (ns4) LAYEROBJ.zIndex = ZINDEX;
   else if (dyn) LAYEROBJ.style.zIndex = ZINDEX;
   }

// --- 19. WINDOW --- //

function getWinHeight() {
   if (ie4Min) return document.body.clientHeight;
   else if (ns4Min) return window.innerHeight;
   }

function getWinWidth() {
   if (ie4Min) return document.body.clientWidth;
   else if (ns4Min) return window.innerWidth;
   }

// --- 20. OTHER CODE --- //

function isBlank(STR) {
   if (dyn) {
      if (STR == null) STR = '';
      STR += '';
      STR = STR.replace(/^\s+|\s+$/g,'');
      return (STR == '') ? true : false;
      }
   }
   
   
/* Product window call-outs - End*/
