
<!--
/*
This code is from Dynamic Web Coding 
www.dyn-web.com 
Copyright 2001 by Sharon Paine 
Permission granted to use this code as long as this 
entire notice is included.
*/

/* IMPORTANT: Put script after tooltip div or 
	 put tooltip div just before </BODY>. */

var dom = (document.getElementById) ? true : false;
var ns5 = ((navigator.userAgent.indexOf("Gecko")>-1) && dom) ? true: false;
var ie5 = ((navigator.userAgent.indexOf("MSIE")>-1) && dom) ? true : false;
var ns4 = (document.layers && !dom) ? true : false;
var ie4 = (document.all && !dom) ? true : false;
var nodyn = (!ns5 && !ns4 && !ie4 && !ie5) ? true : false;

// resize fix for ns4
var origWidth, origHeight;
if (ns4) {
	origWidth = window.innerWidth; origHeight = window.innerHeight;
	window.onresize = function() { if (window.innerWidth != origWidth || window.innerHeight != origHeight) history.go(0); }
}

// avoid error of passing event object in older browsers
if (nodyn) event = "nope";

///////////////////////  CUSTOMIZE HERE   ////////////////////
// settings for tooltip 
// Do you want tip to move with mouse movement along link?
var tipFollowMouse	= false;	
var tipWidth 			 	= 205;
var offX					 	= 20;	// how far from mouse to show tip
var offY					 	= 3; 
var tipFontFamily 	= "arial, helvetica, sans-serif";
var tipFontSize			= "8pt";
var tipFontColor		= "#000000";
var tipBgColor 			= "#ffffff";
var tipBorderColor 	= "#666666";
var tipBorderWidth 	= 1;
var tipBorderStyle 	= "solid";
var tipPadding		 	= 1;

// preload images to be placed in tooltip
//var img1 = new Image(100,100);	// (width,height)
// img1.src = "your.gif";


// variables for tooltip content 
var tip0 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>PEPPERELL</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">The small town of Pepperell is bypassed by major transportation routes, becoming a predominantly commuter suburb. More than 10,000 people call Pepperell home, yet the town does not have a chain supermarket, a commercial bank, a fast-food restaurant or even a traffic light.  </font></td></tr></TABLE>'
var tip1 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>DUNSTABLE</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Dunstable is a rural community located just south of Nashua, New Hampshire. The majority of the town is zoned single family and farming with an estimated population count of under 2,300 people spread out among some 840 households. Services in town are very limited with no taxi, bus service or train access available. </font></td></tr></TABLE>'
var tip2 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>LUNENBURG</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Lunenburg is a semi-rural community located in northern Worcester County. Three water bodies, Lake Whalom, Hickory Hills Lake, and Shirley Reservoir, account for somewhat of a clustered approach to the town\'s historical development.  The remainder of Lunenburg has developed primarily into large lot single family housing. </font></td></tr></TABLE>'
var tip3 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>SHIRLEY</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">The Town of Shirley is a rural industrial community located on the lowlands of the Catacoonamaug River.  The location of water for power created an industrial village along the narrow valley in which the town is situated.  Many of the period brick towered mills survive to create an authentic period landscape. </font></td></tr></TABLE>'
var tip4 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>GROTON</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Groton boasts 32 square miles of rolling countryside located in the heart of foliage and apple country. The town center is noted for its grand colonial homes, antiques, and traditional New England Common complete with picturesque white church and steeple. </font></td></tr></TABLE>'
var tip5 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>WESTFORD</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Historic Westford was incorporated in 1729 and is a lovely community of approximately 16,000 exuding rustic charm yet accessible to the high-technology belt of Routes 495 and 3. Scenic and Peaceful, Westford is a primarily residential area with a wonderful community spirit. </font></td></tr></TABLE>'
var tip6 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>CHELMSFORD</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">The Town of Chelmsford is a suburban industrial town located in the Merrimack Valley.  Chelmsford was a community of agriculture and grazing, with dairying and orchards as specialties. There was some lumbering, and a series of small operations such as grist mills, lime quarries, and brick yards.</font></td></tr></TABLE>'
var tip7 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>AYER</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Ayer was established by several mills and factories in the mid 1800\'s as a mill town and railroad center.  Today it is the home of the Devens complex consisting of a charter school, convention center, home of Gillette, and other technological industries. Situated on the Ayer/Groton line, the Deaconess Nashoba Hospital provides excellent health care to neighboring communities. </font></td></tr></TABLE>'
var tip8 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>LANCASTER</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">The Town of Lancaster is a bedroom community with little industry, but does contain some working farms.  Lancaster has only one restaurant and no taverns, having been a dry town since its incorporation in 1653. As residents note, "It\'s a quiet, little town." </font></td></tr></TABLE>'
var tip9 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>HARVARD</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Harvard is a beautiful example of an unspoiled farming and summer community. Primarily an apple growing town, it boasts many fine orchards. High elevations provide dramatic views of Boston to the east and mountains to the north and west. The charming center Common, surrounded by lovely older homes is the setting for many festivals and events throughout the year. </font></td></tr></TABLE>'
var tip10 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>LITTLETON</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Founded in 1715, Littleton for many decades was a farming and agricultural community abundant with hay crops and fruits and vegetables. It is still common to see horses grazing in the rich pasturelands. Many of the town\'s historic buildings still remain, along with acres of protected conservation land and lakes, all helping to maintain the rural image so loved by its inhabitants.</font></td></tr></TABLE>'
var tip11 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>CARLISLE</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">The Town of Carlisle offers peaceful residential living maintaining a rich tradition in the preservation of open space and scenic ways.  Carlisle maintains a small-town atmosphere with the enthusiastic support of its citizenry. </font></td></tr></TABLE>'
var tip12 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>BOLTON</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Bolton is a quiet residential community known for its scenic orchards, older 19th century homes, and newer homes, which all contribute to the feel of a small New England village.  Hundreds of acres of conservation land provide the opportunity for hiking, cross-country skiing, horseback riding and more.</font></td></tr></TABLE>'
var tip13 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>BOXBOROUGH</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Boxborough\'s convenient location and easy access into Boston, combined with its rural country atmosphere and its highly acclaimed school system, has contributed to making it the most rapidly growing community in the area.  A diversity of industries and condominium complexes has helped keep the tax base attractive in this thriving country town.</font></td></tr></TABLE>'
var tip14 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>ACTON</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Founded in 1735, Acton is primarily a residential town ideally situated half-way between Routes 128 and 495, Massachusetts\' major circumferential routes. Meandering country roads, old stone walls, stately antique homesteads, super highways, multiple shopping centers and train service to Boston are just a few features which co-exist in this lovely town. </font></td></tr></TABLE>'
var tip15 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>CONCORD</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Named in 1635, Concord is an old historic town which retains many well-preserved colonial houses.   Concord evolved from a frontier town into a prosperous regional center with a mixed society.  Concord has a significant literary history, having been the home of the leaders of the intellectual movements of 19th century America. </font></td></tr></TABLE>'
var tip16 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>BERLIN</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">The Town of Berlin lies in a low range of hills between the Nashua and the Assabet River Valleys. Incorporated in 1812, the town is a residential and agricultural community.  Berlin is a small, stable town, with a handsome Victorian town hall, the walls of which incorporate the pictures of Berlin residents who went to fight in the Civil War. </font></td></tr></TABLE>'
var tip17 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>STOW</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">Truly the best of both worlds, Stow balances a desirable country atmosphere with excellent accessibility to Boston and Worcester. Because of this wonderful combination, Stow remains one of Nashoba Valley\'s most desirable communities. Stow is home to three golf courses, including Stow Acres, a nationally recognized course, and many conservation trails, Lake Boon, and five athletic fields. </font></td></tr></TABLE>'
var tip18 = '<table width="205" cellpadding=2 cellspacing=0 border=0><tr><td bgcolor=#332999><font face="arial" size=2 color=#ffffff><b>MAYNARD</b></font></td></tr><tr><td><font size="1" face="arial" color="#000000">A small yet diversified community, Maynard is a blend of residential, commercial, and industrial areas. Many high-tech firms have moved here due to its proximity to Route 128, Routes 2 and 2A.  Maynard\'s downtown area has numerous small stores and services with additional shopping in adjacent Acton. The town\'s many recreational areas include playgrounds, tennis courts, ball fields, and skating rink. </font></td></tr></TABLE>'



////////////////////  END OF CUSTOMIZATION AREA  ///////////////////

////////////////////////////////////////////////////////////
//  initTip	- initialization for tooltip.
//		Global variables for tooltip. 
//		Set styles for all but ns4. 
//		Set up mousemove capture if tipFollowMouse set true.
////////////////////////////////////////////////////////////
var tooltip, tipcss;
function initTip() {
	if (nodyn) return;
	tooltip = (ns4)? document.tipDiv.document: (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null;
	tipcss = (ns4)? document.tipDiv: tooltip.style;
	if (ie4||ie5||ns5) {	// ns4 would lose all this on rewrites
		tipcss.width = tipWidth+"px";
		tipcss.fontFamily = tipFontFamily;
		tipcss.fontSize = tipFontSize;
		tipcss.color = tipFontColor;
		tipcss.backgroundColor = tipBgColor;
		tipcss.borderColor = tipBorderColor;
		tipcss.borderWidth = tipBorderWidth+"px";
		tipcss.padding = tipPadding+"px";
		tipcss.borderStyle = tipBorderStyle;
	}
	if (tooltip&&tipFollowMouse) {
		if (ns4) document.captureEvents(Event.MOUSEMOVE);
		document.onmousemove = trackMouse;
	}
}
window.onload = initTip;

/////////////////////////////////////////////////////////////
//  doTooltip function
//			Assembles content for tooltip and writes it to tipDiv.
//			Call positionTip function from here if tipFollowMouse
//			is set to false.
//////////////////////////////////////////////////////////////
var t1,t2;	// for setTimeouts
var tipOn = false;	// check if over tooltip link
function doTooltip(evt,txt) {
	if (!tooltip) return;
	if (t1) clearTimeout(t1);	if (t2) clearTimeout(t2);
	tipOn = true;
	if (ns4) {
		tip = '<table bgcolor="' + tipBorderColor + '" width="' + tipWidth + '" cellspacing="0" cellpadding="' + tipBorderWidth + '" border="0"><tr><td><table bgcolor="' + tipBgColor + '" width="100%" cellspacing="0" cellpadding="' + tipPadding + '" border="0"><tr><td><span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + tipFontColor + ';">' + txt  + '</span></td></tr></table></td></tr></table>';
		tooltip.write(tip);
		tooltip.close();
	} else if (ie4||ie5||ns5) {
		tip = txt;
	 	tooltip.innerHTML = tip;
	}
	if (!tipFollowMouse) positionTip(evt);
}

var mouseX, mouseY;
function trackMouse(evt) {
	mouseX = (ns4||ns5)? evt.pageX: window.event.clientX + document.body.scrollLeft;
	mouseY = (ns4||ns5)? evt.pageY: window.event.clientY + document.body.scrollTop;
	if (tipOn) positionTip(evt);
}

/////////////////////////////////////////////////////////////
//  positionTip function
//		If tipFollowMouse set false, so trackMouse function
//		not being used, get position of mouseover event.
//		Calculations use mouseover event position, 
//		offset amounts and tooltip width to position
//		tooltip within window.
/////////////////////////////////////////////////////////////
function positionTip(evt) {
	if (!tipFollowMouse) {
		mouseX = (ns4||ns5)? evt.pageX: window.event.clientX + document.body.scrollLeft;
		mouseY = (ns4||ns5)? evt.pageY: window.event.clientY + document.body.scrollTop;
	}
	// tooltip width and height
	var tpWd = (ns4)? tooltip.width: (ie4||ie5)? tooltip.clientWidth: tooltip.offsetWidth;
	var tpHt = (ns4)? tooltip.height: (ie4||ie5)? tooltip.clientHeight: tooltip.offsetHeight;
	// document area in view (subtract scrollbar width for ns)
	var winWd = (ns4||ns5)? window.innerWidth-20+window.pageXOffset: document.body.clientWidth+document.body.scrollLeft;
	var winHt = (ns4||ns5)? window.innerHeight+window.pageYOffset: document.body.clientHeight+document.body.scrollTop;
	// check mouse position against tip and window dimensions
	// and position the tooltip 
	if ((mouseX+offX+tpWd)>winWd) 
		tipcss.left = (ns4)? mouseX-(tpWd+offX): mouseX-(tpWd+offX)+"px";
	else tipcss.left = (ns4)? mouseX+offX: mouseX+offX+"px";
	if ((mouseY+offY+tpHt)>winHt) 
		tipcss.top = (ns4)? mouseY-(tpHt+offY): mouseY-(tpHt+offY)+"px";
	else tipcss.top = (ns4)? mouseY+offY: mouseY+offY+"px";
	t1=setTimeout("tipcss.visibility='visible'",100);
}

function hideTip() {
	if (!tooltip) return;
//	tipcss.visibility = "hidden";
	t2=setTimeout("tipcss.visibility='hidden'",100);
	tipOn = false;
}

//-->
