		// Get the cookie!
		function getCookie(name)
		{
		    var re=new RegExp("(^"+name+"|;\\s?"+name+")=[^;]+", "i");
		    if (document.cookie.match(re)) // if cookie found
		      return document.cookie.match(re)[0].split("=")[1];
		    return null;
		}

		// Set the cookie
		function setCookie(name, value, expires, path, domain, secure) 
		{
			document.cookie = name + "=" + escape(value) +
			((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
			((path == null) ? "" : "; path=" + path) +
			((domain == null) ? "" : "; domain=" + domain) +
			((secure == null) ? "" : "; secure");
		}
		
		function gup(name)
		{
			var regexS = "[\\?\\&\\;]"+name+"=([^&#]*)";
		  	var regex = new RegExp( regexS );
		  	var tmpURL = window.location.href.replace(/amp;/g, "");
			
		  	var results = regex.exec( tmpURL );
		  	if( results == null )
		    	return "";
		  	else
		    	return results[1];
		}

		Array.prototype.inArray = function (value) 
		{
			var i;
			for (i=0; i < this.length; i++) 
			{
				if (this[i] === value) 
				{
					return true;
				}
			}
			return false;
		};

		function writeImg (pURLParams, pImgParams)
		{
			location.protocol=="http:" ? 
				mLinkInfo = '<img src="http://www.franklincovey.com/cgi-bin/clear.cgi?'+pURLParams+'"'+pImgParams+'><br/>' : 
				mLinkInfo = '<img src="https://cert.franklincovey.com/cgi-bin/clear.cgi?'+pURLParams+'"'+pImgParams+'><br/>';
			document.write(mLinkInfo);
		}
		

		// variable definitions for keyword search tracking
		var keywordVendors = new Array("overture", "looksmart", "trafficleader", "realnames", "google", "msn", "googleprem");
		var keywordSearch = escape(getCookie("keywordSearch"));
		var sourceid = escape(getCookie("sourceid"));
		var URL = escape(document.URL);
		var epulseinfo=""; var login = ""; var linkInfo = ""; var plswh114_fcap_ses = "";
		var ShpTotalCookie = escape(getCookie("ShpTotalCookie"));
		var chkTtl = escape(getCookie("chkTtl"));
		var mytime = new Date();
		var myseconds = mytime.getTime();
		var myseconds = myseconds + (60*60*24*1000);
		var myExp = new Date();
		myExp.setTime(myseconds);

		var currSubDomain = document.domain.split(".")[0];
		var currDomain = document.domain;
		var subDomain = null;
		if (null!=currDomain && ""!=currDomain)
		{
			subDomains = currDomain.split(".");
			var section = 1-subDomains.length;
		    if (subDomains.length > 2) 
		    {
		        subDomain = "."+subDomains.slice(section).join(".");
		    }
		}
		
		
		
		var sources = new Array("src", "src1", "src2", "src3", "src4", "src5", "src6", "src7", "c", "sourceid", "sc", "n" );
		for (i=0; i<sources.length; i++)
		{
			if (""!=gup(sources[i])) 
			{
				setCookie(sources[i],gup(sources[i]),null,'/',subDomain,null);			
			}
		}
		var cookieSrc2 = getCookie('src2');
		if ((null==cookieSrc2 || ""==cookieSrc2) && currSubDomain!=null && currSubDomain.toLowerCase()!="www" && currSubDomain.toLowerCase()!="planplusonline")
		{
			//setCookie('src2',currSubDomain+"_subdomain",null,'/',subDomain,null);
			setCookie('src2','xsd'+currSubDomain.substring(0,2),null,'/',subDomain,null);
		}
	
		setCookie('fran','67897897890',myExp,'/',subDomain,null);
		var fran = escape(getCookie("fran"));
		
		
		// persistent random #
		if (getCookie("cran") == null) 
		{
			//check first to see if cran param is passed in the url:
			if (""!=gup('cran')) 
			{
				cran = gup('cran');
			}
			else
			{
				cran = Math.round(Math.random()*9999999999);
			}
			setCookie('cran',cran,null,'/',subDomain,null);
		} 
		else 
		{
			var cran = getCookie("cran");
		}
		if (""!=gup('n')) 
		{
			setCookie('nKeyword',gup('n'),null,'/',subDomain,null);
		}
		
		if (""!=gup('affiliate'))
		{
			var expireValue = new Date().getTime();
			expireValue += 1000*60*60*24*90;
			var cookieExpire = new Date(expireValue);
			setCookie('affiliate', gup('affiliate'), cookieExpire, '/', subDomain, null);						
		}
		
		//parameters
		paramString = 'epulse='+epulseinfo+'&URL='+URL+'&keywordSearch='+keywordSearch+'&login='+login+'&sourceid='+sourceid+'&plswh114_fcap_ses='+plswh114_fcap_ses+'&cran='+cran+'&fran='+fran+'&ShpTotalCookie='+ShpTotalCookie+'&chkTtl='+chkTtl;
		imgParams = ' height="1" width="1" alt="" border="0"';
		var scFound = false; var cFound = false;
		
		//if the keywordSearch variable already exists, then track
		if (null!=getCookie("keywordSearch")) 
		{
			writeImg(paramString, imgParams);
		} 
		else 
		{
			//if keywordSearch variables are being passed through the URL, then track
			if (""!=gup('sc')) 
			{
				var scValue = gup('sc');
				scValue = unescape(scValue).toLowerCase();
				if ((""!=scValue) && (keywordVendors.inArray(scValue.toLowerCase()))) 
				{
					scFound = true;
					setCookie('keywordSearch',scValue,null,'/',subDomain,null);
				}
			} 
			else 
			{
				var sc = getCookie("sc");
				if (sc != null) 
				{
					sc = unescape(sc.toLowerCase());
					if (keywordVendors.inArray(sc)) 
					{
						setCookie('keywordSearch',sc,null,'/',subDomain,null);
						scFound = true;
						scValue = sc;
					}
				}
			}

			if (""!=gup('c') && !scFound)
			{
				var cValue = gup('c');
				cValue = unescape(cValue).toLowerCase();
				if ((cValue != "") && ((cValue.indexOf("techbinder") != -1) || (cValue.indexOf("back2school") != -1) || (cValue.indexOf("freephone") != -1) || (cValue.indexOf("giftcert") != -1))) 
				{
					cFound = true;
					setCookie('keywordSearch',cValue,null,'/',subDomain,null);
				}
			}
			
			if (scFound == true) {
				paramString = 'epulse='+epulseinfo+'&URL='+URL+'&keywordSearch='+scValue+'&login='+login+'&sourceid='+sourceid+'&landingPage=true&plswh114_fcap_ses='+plswh114_fcap_ses+'&cran='+cran+'&fran='+fran+'&ShpTotalCookie='+ShpTotalCookie+'&chkTtl='+chkTtl;
				writeImg(paramString, imgParams);

			} 
			else if (cFound == true) 
			{
				paramString = 'epulse='+epulseinfo+'&URL='+URL+'&keywordSearch='+cValue+'&login='+login+'&sourceid='+sourceid+'&landingPage=true&plswh114_fcap_ses='+plswh114_fcap_ses+'&cran='+cran+'&fran='+fran+'&ShpTotalCookie='+ShpTotalCookie+'&chkTtl='+chkTtl;
				writeImg(paramString, imgParams);
			}
		}

