	// ------------------------------------------------------
	//		current cookie definitions & declarations
	//		bye bye bums javascript
	//		(c) 2010 Why Whimsy	
	//		  05-25-2010  V.4.3.9.a.  
	// -----------------------------------------------------

	// for cookie

	var CK_CURNAME = 'bbbclient';													// cookie name 
	var CKS_TOKILL = ['bbbprefs','bbbuser'];										// names of cookie to kill if it exists
	var CK_PERSIST = 30;																	// cookie persist 30 days
	var CK_PATH = '/';																		// path is whatever
	var CK_DOMAIN = '';																		// domain is whatever
	var CK_VERKEY = 'bbbv';																//	version key name
	var CK_VERNBR = '439a';																// version number
	var CK_VERSION = "/" + CK_VERKEY + CK_VERNBR + "/";					// version data
	var CKPRECIS = 5;																			// number precision
	var CK_DEFCKSTR = "/dcfs9E0/hdfs63E0" + CK_VERSION;			// default cookie string
	var DOCFS = 9;																				// default doc font size
	var HF2DF = 0.7;																		// ratio of header font to doc font
	var HDRFS = DOCFS * HF2DF;														// default header font

	//	cookie format
	//		/abcd12345E3/


/* ------------------------------------------------------------
		defined constant real numbers & ratios for page styles
	------------------------------------------------------------ */		
	
	var FSINCR = 0.5;																			// font-size increase increment
	var FSMAX = 15;																			// font-size maximum
	var FSMIN = 5;																				// font-size minimum
	var DOCFNTMAX = 15;																	// max doc font
	var DOCFNTMIN = 5;																	// min doc font

	var HW2PW = 0.8;																			// header width to page width
	var HH2HF = 17;																			// header height to header font
	var HW2HH = 8.5;																			// header width to header height
	
	//positioning ratios
	
	var TR2TF = 1.5;																			// title right
	var PL2PF = 1.5;																			// pumper left
	var BM2BF = 0.15;																			// bye bottom margin
	var BS2BF = 0.12;																		// bye letter spacing
	var BL2BF = 0.75;																				// bye indent

	// outlier data bounds

	var UBOUND = 2;
	var LBOUND = 0.5;

	// common units

	var PX = 'px';															
	var EM = 'em';
	var PC = 'pc';

	// infinite recursion protection

	var recursions = 0;

	/* ------------------------------------------------------------
		convert an em or percent value to pixels, passed the reference font size
	------------------------------------------------------------- */
	
	function conv2px(val, uni, reffsz) {

		var retnval;

		if(uni == 'em')																		// convert ems to pixels
		{
			return val * reffsz;
		}
		else																						// convert percent to pixels
		{
			return (val/100) * reffsz;
		}
	}

	
	// ----------------------------------------------
	//		COOKIE
	//		holds data from site cookie
	//		the cookie string holds data in a short exponential format
	//		the nodes hold the raw values (always pixels)

	function CookieData() {
	
		this.changed = false;																// has it been changed since last load
		this.saved = false;																	// saved?
		
		// cookie
			
		this.clientcookiestr =  null;														// cookie string will be build on this node
		this.cookieversion = CK_VERSION;												// version
		this.cookiename = CK_CURNAME;

		// properties

		this.keys = ['dcfs', 'hdfs'];															// key names
		
		this.dcfs = null;																		// key values
		this.hdfs = null;
			
	}

	// cookie defaults

	function CookieDefaults() {
	
		this.defcookiestr =  CK_DEFCKSTR;
		this.dcfs = DOCFS;
		this.hdfs = HDRFS;
			
	}


