// *** COMMON CROSS-BROWSER COMPATIBILITY CODE ***

var isDOM=document.getElementById?1:0;
var isIE=document.all?1:0;
var isNS4=navigator.appName=='Netscape'&&!isDOM?1:0;
var isOp=window.opera?1:0;
var isWin=navigator.platform.indexOf('Win')!=-1?1:0;
var isDyn=isDOM||isIE||isNS4;


function getRef(id, par)
{
 par=!par?document:(par.navigator?par.document:par);
 return isIE ? par.all[id] :
  (isDOM ? (par.getElementById?par:par.ownerDocument).getElementById(id) :
  (isNS4 ? par.layers[id] : null));
}

function getSty(id, par)
{
 var r=getRef(id, par);
 return r?(isNS4?r:r.style):null;
}


if (!window.LayerObj) var LayerObj = new Function('id', 'par',
 'this.ref=getRef(id, par); this.sty=getSty(id, par); return this');
function getLyr(id, par) { return new LayerObj(id, par) }

function LyrFn(fn, fc)
{
 LayerObj.prototype[fn] = new Function('var a=arguments,p=a[0],px=isNS4||isOp?0:"px"; ' +
  'with (this) { '+fc+' }');
}
LyrFn('x','if (!isNaN(p)) sty.left=p+px; else return parseInt(sty.left)');
LyrFn('y','if (!isNaN(p)) sty.top=p+px; else return parseInt(sty.top)');
LyrFn('w','if (p) (isNS4?sty.clip:sty).width=p+px; ' +
 'else return (isNS4?ref.document.width:ref.offsetWidth)');
LyrFn('h','if (p) (isNS4?sty.clip:sty).height=p+px; ' +
 'else return (isNS4?ref.document.height:ref.offsetHeight)');
LyrFn('vis','sty.visibility=p');
LyrFn('write','if (isNS4) with (ref.document){write(p);close()} else ref.innerHTML=p');
LyrFn('alpha','var f=ref.filters,d=(p==null); if (f) {' +
 'if (!d&&sty.filter.indexOf("alpha")==-1) sty.filter+=" alpha(opacity="+p+")"; ' +
 'else if (f.length&&f.alpha) with(f.alpha){if(d)enabled=false;else{opacity=p;enabled=true}} }' +
 'else if (isDOM) sty.MozOpacity=d?"":p+"%"');


var CSSmode=document.compatMode;
CSSmode=(CSSmode&&CSSmode.indexOf('CSS')!=-1)||isDOM&&!isIE||isOp?1:0;

if (!window.page) var page = { win: window, minW: 0, minH: 0, MS: isIE&&!isOp,
 db: CSSmode?'documentElement':'body' }

page.winW=function()
 { with (this) return Math.max(minW, MS?win.document[db].clientWidth:win.innerWidth) }
page.winH=function()
 { with (this) return Math.max(minH, MS?win.document[db].clientHeight:win.innerHeight) }

page.scrollY=function()
 { with (this) return MS?win.document[db].scrollTop:win.pageYOffset }
page.scrollX=function()
 { with (this) return MS?win.document[db].scrollLeft:win.pageXOffset }





function tipTrack(evt, always) { with (this)
{
 evt=evt?evt:window.event;

 sX = page.scrollX();
 sY = page.scrollY();
 mX = isNS4 ? evt.pageX : sX + evt.clientX;
 mY = isNS4 ? evt.pageY : sY + evt.clientY;

 if (tipStick == 1) position();
}}

function tipPosition(forcePos) { with (this)
{
 if (!actTip) return;

 var wW = page.winW()-(isIE?0:15), wH = page.winH()-(isIE?0:15);

 var t=tips[actTip], tipX=eval(t[0]), tipY=eval(t[1]), tipW=div.w(), tipH=div.h(), adjY = 1;

 if (typeof(t[0])=='number') tipX += mX;
 if (typeof(t[1])=='number') tipY += mY;

 if (tipX + tipW + 5 > sX + wW) { tipX = sX + wW - tipW - 5; adjY = 2 }
 if (tipY + tipH + 5 > sY + wH) tipY = sY + wH - (adjY*tipH) - 5;
 if (tipX < sX+ 5) tipX = sX + 5;
 if (tipY < sY + 5) tipY = sY + 5;

 if ((!showTip && (doFades ? !alpha : true)) || forcePos)
 {
 //uncomment xPos and yPos along with below for dynamic position with mouse
 xPos = tipX;
 yPos = tipY;
 }
 //uncomment xPos and yPos along with below for dynamic position with mouse
 xPos += (tipX - xPos) * tipStick;
 yPos += (tipY - yPos) * tipStick;
 
 // locked position on screen
 if (eval(t[10])==1) { xPos = 310; yPos = 74; }
 

 div.x(xPos);
 div.y(yPos);
}}

function tipShow(tipN) { with (this)
{
 if (!isDyn) return;

 if (tips[tipN].parentObj) tips[tipN].parentObj.show(tips[tipN].parentTip);

 if (!div) div = getLyr(myName + 'Layer');
 
 if (isDOM) div.sty.width = 'auto';

 if (actTip != tipN)
 {
  actTip = tipN;

  if (tipStick == 0)
  {
   if (isNS4) div.ref.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT);
   div.ref.onmouseover = new Function('evt', myName + '.show("' + tipN + '"); ' +
    'if (isNS4) return this.routeEvent(evt)');
   div.ref.onmouseout = new Function('evt', myName + '.hide(); ' +
   'if (isNS4) return this.routeEvent(evt)');
  }

  position(true);

  var str = template;
  for (var i=0; i<tips[tipN].length; i++) str = str.replace('%'+i+'%', tips[tipN][i]);
  div.write(str + ((document.all && !isWin) ? '<small><br></small>' : ''));
 }

 clearInterval(trackTimer);
 if (tipStick != parseInt(tipStick)) trackTimer = setInterval(myName+'.position()', 50);

 clearTimeout(fadeTimer);
 if (showDelay || isNS4)
  fadeTimer = setTimeout('with ('+myName+') { showTip = true; fade() }', showDelay + 10);
 else { showTip = true; fade() }
}}


function tipHide() { with (this)
{
 // We've got to be a DHTML-capable browser that has a tip currently active.
 if (!isDyn || !actTip) return;

 if (isNS4 && tipStick==0 && xPos<=mX && mX<=xPos+div.w() && yPos<=mY && mY<=yPos+div.h())
  return;

 if (tips[actTip].parentObj) tips[actTip].parentObj.hide();

 clearTimeout(fadeTimer);
 fadeTimer = setTimeout('with (' + myName + ') { showTip=false; fade() }', hideDelay);
}}


function tipFade() { with (this)
{
 clearTimeout(fadeTimer);

 if (showTip)
 {
  div.vis('visible');
  if (doFades)
  {
   alpha += fadeSpeed;
   if (alpha > maxAlpha) alpha = maxAlpha;
   div.alpha(alpha);
   // Call this function again shortly, fading tip in further.
   if (alpha < maxAlpha) fadeTimer = setTimeout(myName + '.fade()', 50);
  }
 }

 else
 {
  // Similar to before but counting down and hiding at the end.
  if (doFades && alpha > minAlpha)
  {
   alpha -= fadeSpeed;
   if (alpha < minAlpha) alpha = minAlpha;
   div.alpha(alpha);
   fadeTimer = setTimeout(myName + '.fade()', 50);
   return;
  }
  div.vis('hidden');
  actTip = '';
  clearInterval(trackTimer);
 }
}}



function TipObj(myName)
{
 // Holds the properties the functions above use.
 this.myName = myName;
 this.tips = new Array();
 this.template = '';
 this.actTip = '';
 this.showTip = false;
 this.tipStick = 0; // set tipstick to 1 for move away when mouse move or locks 0
 this.showDelay = 5;
 this.hideDelay = 250;
 this.xPos = this.yPos = this.sX = this.sY = this.mX = this.mY = 0;

 this.track = tipTrack;
 this.position = tipPosition;
 this.show = tipShow;
 this.hide = tipHide;
 this.fade = tipFade;
 
 this.div = null;
 this.trackTimer = this.fadeTimer = 0;
 this.alpha = 0;
 this.doFades = true;
 this.minAlpha = 0;
 this.maxAlpha = 100;
 this.fadeSpeed = 10;
}

var docTips = new TipObj('docTips');
with (docTips)
{
//start info cards 
 //tenants.html
 //template=new Array(xpos,ypos,wdth, 'link name', 'address', 'telephone', 'fax number', 'email address', 'web link');
 //tips.iBedford = new Array(5, 5, 250, '', '2 Shaker Road #D206<br>Shirley, MA 01464', 'p', 'f', '<a href=mailto:em>em</a>', '<a href=http://www>www</a>');
 tips.iAcct    = new Array(5, -2, 250, 'The Accounting Team', '2 Shaker Road #B220<br>Shirley, MA 01464', '978-425-5360', '978-425-5361', '<a href=mailto:sgoguen@accountingteamus.com>sgoguen@accountingteamus.com</a>', '<a href=http://www.accountingteamus.com target=_blank>www.accountingteamus.com</a>');
 tips.iBedford = new Array(5, -2, 250, 'Bedford Specialty Sales, Inc.', '2 Shaker Road #D206<br>Shirley, MA 01464', '978-425-6214', '978-425-6215', '<a href=mailto:lforget@bedfordsales.com>lforget@bedfordsales.com</a>', '<a href=http://www.bedfordsales.com target=_blank>www.bedfordsales.com</a>');
 tips.iBeacon  = new Array(5, -2, 250, 'Beacon Technology Partners LLC', '2 Shaker Road #D213<br>Shirley, MA 01464', '978-425-6222', '978-425-6224', '<a href=mailto:jim@beacontech.com>jim@beacontech.com</a>', '<a href=http://www.beacontech.com target=_blank>www.beacontech.com</a>');
 tips.iBurkart = new Array(5, -2, 250, 'Burkart Phelan', '2 Shaker Road #D107<br>Shirley, MA 01464', '978-425-4500', '978-425-9800', '<a href=mailto:info@burkart.com>info@burkart.com</a>', '<a href=http://www.burkart.com target=_blank>www.burkart.com</a>');
 tips.iBG      = new Array(5, -2, 250, 'BG Flooring', '2 Shaker Road #F005<br>Shirley, MA 01464', '978-425-6666', '978-425-6663', '<a href=mailto:mcreations@verizon.net>mcreations@verizon.net</a>', '<a href=http://www></a>');
 tips.iBlue    = new Array(5, -2, 250, 'Blue Collar Distribution', '2 Shaker Road #D108<br>Shirley, MA 01464<br>Tabor Coates, President', '978-425-6681', '978-425-6691', '<a href=mailto:></a>', '<a href=http://www></a>');
 tips.iClosets = new Array(5, -2, 250, 'Closets By Design', '2 Shaker Road #C110<br>Shirley, MA 01464', '978-425-6166', '978-425-9666', '<a href=mailto:russ_smith@cbd-boston.com>russ_smith@cbd-boston.com</a>', '<a href=http://www.closetsbydesign.com target=_blank>www.closetsbydesign.com</a>');
 tips.iCell    = new Array(5, -2, 250, 'Celltreat Scientific Products', '2 Shaker Road #C200<br>Shirley, MA 01464', '978-425-6155', '978-425-9255', '<a href=mailto:service@celltreat.com>service@celltreat.com</a>', '<a href=http://www.celltreat.com target=_blank>www.celltreat.com</a>');
 tips.iCrane   = new Array(5, -2, 250, 'Carrie Crane', '2 Shaker Road #D206-C<br>Shirley, MA 01464', '508-869-2633', '508-450-5516', '<a href=mailto:crane.carrie@gmail.com>crane.carrie@gmail.com</a>', '<a href=http://www.carriecrane.com target=_blank>www.carriecrane.com</a>');
 tips.iCross   = new Array(5, -2, 250, 'Crosslink Genetics', '2 Shaker Road #D106<br>Shirley, MA 01464', '617-549-2238', '', '<a href=mailto:info@crosslinkgenetics.com>info@crosslinkgenetics.com</a>', '<a href=http://www.crosslinkgenetics.com target=_blank>www.crosslinkgenetics.com</a>');
 tips.iComStra = new Array(5, -2, 250, 'Community Strategies', '2 Shaker Road #D221<br>Shirley, MA 01464', '978-425-0772', '978-425-0959', '<a href=mailto:crj-csma@crjustice.org>crj-csma@crjustice.org</a>', '<a href=http://www.crjustice.org target=_blank>www.crjustice.org</a>');
 tips.iConnelly= new Array(5, -2, 250, 'Dylan Connelly - SPG Solar', '2 Shaker Road #B217A<br>Shirley, MA 01464', '800-815-5562', '415-382-2170', '<a href=mailto:>dylan.connelly@spgsolar.com</a>', '<a href=http://www.spgsolar.com>www.spgsolar.com</a>');
 tips.iCool    = new Array(5, -2, 250, 'Cool Dog Inc.', '2 Shaker Road #B207<br>Shirley, MA 01464', '978-425-2730', '978-425-2734', '<a href=mailto:tarafranklin@cooldoginc.com>tarafranklin@cooldoginc.com</a>', '<a href=http://www.cooldoginc.com target=_blank>www.cooldoginc.com</a>');
 tips.iDave    = new Array(5, -2, 250, 'Dave Swain Associates', '2 Shaker Road #D107<br>Shirley, MA 01464', '978-425-0476', '978-425-9285', '<a href=mailto:></a>', '<a href=http://www></a>');
 tips.iDuval   = new Array(5, -2, 250, 'Duval Sign Company', '2 Shaker Road #E108<br>Shirley, MA 01464', '978-425-1666', '978-425-1665', '<a href=mailto:graphics@duvalsigncompany.com>graphics@duvalsigncompany.com</a>', '<a href=http://www.duvalsigncompany.com>www.duvalsigncompany.com</a>');
 tips.iDevoll  = new Array(5, -2, 250, 'Devoll Lawn Irrigation', '2 Shaker Road Building I<br>Shirley, MA 01464', '', '', '<a href=mailto:></a>', '<a href=http://></a>');
 tips.iEBoarder= new Array(5, -2, 250, 'Eastern Boarder', '2 Shaker Road #D108<br>Shirley, MA 01464', '978-425-6681', '978-425-6691', '<a href=mailto:easternbdr@aol.com>easternbdr@aol.com</a>', '<a href=http://www></a>');
 tips.iEJones  = new Array(5, -2, 250, 'Emma Jones Baked Goods', '2 Shaker Road #C208<br>Shirley, MA 01464', '978-425-4755', '978-425-4756', '<a href=mailto:></a>', '<a href=http://www></a>');
 tips.iETI     = new Array(5, -2, 250, 'ETI Professionals Inc', '2 Shaker Road #B224<br>Shirley, MA 01464', '978-425-4777', '978-425-9777', '<a href=mailto:careers@etipros.com>careers@etipros.com</a>', '<a href=http://www.etiprofessionals.com target=_blank>www.etiprofessionals.com</a><br>GSA: MOBIS #GS-10F-0280N<br>8(a) STARS #GS-06F-0380Z<br>IT Schedule 70 #GS-35F-0612S<br>Environmental Schedule #GS-10F-0203T');
 tips.iEvo     = new Array(5, -2, 250, 'Evolve Solutions LLC', '2 Shaker Road<br>Shirley, MA 01464', '508-331-1516', '', '<a href=mailto:jdiodato@evolvesolutionsllc.com>jdiodato@evolvesolutionsllc.com</a>', '<a href=http://></a>');
 tips.iFirst   = new Array(5, -2, 250, 'First Uniform', '2 Shaker Road #F003<br>Shirley, MA 01464', '', '', '<a href=mailto:danconroy@firstuniform.com>danconroy@firstuniform.com</a>', '<a href=http://www.firstuniform.com target=_blank>www.firstuniform.com</a><br>We are a medical apparel and footwear distributor, providing scrubs, footwear, and medical diagnostics for nurses and doctors throughout New England');
 tips.iFLLAC   = new Array(5, -2, 250, 'FLLAC Educational Collaborative', '2 Shaker Road #B210<br>Shirley, MA 01464', '978-425-0310', '978-425-0313', '<a href=mailto:rmurphy@fllac.org>rmurphy@fllac.org</a>', '<a href=http://www.fllac.org target=_blank>www.fllac.org</a>');
 tips.iFocused = new Array(5, -2, 250, 'Focused Laser Solutions LLC', '2 Shaker Road #E100<br>Shirley, MA 01464', '978-425-6601', '978-425-6649', '<a href=mailto:boskirko@focusedlaser.com>boskirko@focusedlaser.com</a>', '<a href=http://www.focusedlaser.com target=_blank>www.focusedlaser.com</a>');
 tips.iFrontier= new Array(5, -2, 250, 'Frontier Adjusters', '2 Shaker Road #B003<br>Shirley, MA 01464', '866-441-5535', '866-441-5534', '<a href=mailto:tscanlon@frontieradjusters.com>tscanlon@frontieradjusters.com</a>', '<a href=http://www.frontieradjusters.com target=_blank>www.frontieradjusters.com</a>');
 tips.iHome    = new Array(5, -2, 250, 'Home Instead Senior Care', '2 Shaker Road Suite D206-B<br>Shirley, MA 01464', '978-256-5950 x201', '', '<a href=mailto:donna.plummer@homeinstead.com>donna.plummer@homeinstead.com</a>', '<a href=http://></a>');
 tips.iGirl    = new Array(5, -2, 250, 'Girl Friday – Executive Administrative Support', '2 Shaker Road, #B217<br>Shirley, MA 01464', '617-697-0764', '-', '<a href=mailto:jess@mybestgirlfriday.com>jess@mybestgirlfriday.com</a>', '<a href=http://www.mybestgirlfriday.com target=_blank>www.mybestgirlfriday.com</a>');
 tips.iInnovat = new Array(5, -2, 250, 'Innovative Machine, Inc.', '2 Shaker Road, Building J<br>Shirley, MA 01464', '978-425-9470', '978-425-9471', '<a href=mailto:sales@innovativemachineinc.com>sales@innovativemachineinc.com</a>', '<a href=http://www.imi-parts.com target=_blank>www.imi-parts.com</a>');
 tips.iImage   = new Array(5, -2, 250, 'Image Software Services', '2 Shaker Road, #D103<br>Shirley, MA 01464', '978-425-3600 ', '978-425-9375', '<a href=mailto:info@imagesoftware.com>info@imagesoftware.com</a>', '<a href=http://www.imagesoftware.com target=_blank>www.imagesoftware.com</a>');
 tips.iJeep    = new Array(5, -2, 250, 'All Things Jeep', '2 Shaker Road #F101<br>Shirley, MA 01464', '978-582-6606', '978-582-0149', '<a href=mailto:info@allthingsjeep.com>info@allthingsjeep.com</a>', '<a href=http://www.allthingsjeep.com target=_blank>www.allthingsjeep.com</a>');
 tips.iKelly   = new Array(5, -2, 250, 'Kelly, Sloan, and Associates, LLC', '2 Shaker Road #B220<br>Shirley, MA 01464', '978-425-2038', '978-842-4497', '<a href=mailto:info@ksamcc.com>info@ksamcc.com</a>', '<a href=http://www.ksamcc.com target=_blank>www.ksamcc.com</a>');
 tips.iLAR     = new Array(5, -2, 250, 'LAR Analytical, Inc.', '2 Shaker Road #D212<br>Shirley, MA 01464', '978-425-0300', '978-425-9700', '<a href=mailto:david@larinc.com>david@larinc.com</a><br><a href=mailto:susan@larinc.com>susan@larinc.com</a>', '<a href=http://www.lar.com target=_blank>www.lar.com</a>');
 tips.iLeading = new Array(5, -2, 250, 'Leading Innovative Products & Solutions', '2 Shaker Road #D210<br>Shirley, MA 01464', '978-425-9493', '978-425-9498', '<a href=mailto:teresaroberts@lpsinc.net>teresaroberts@lpsinc.net</a>', '<a href=http://LPSInc.net target=_blank>LPSInc.net</a>');
 tips.iLen     = new Array(5, -2, 250, 'Len-Art Press', '2 Shaker Road #D215<br>Shirley, MA 01464', '978-425-2455', '978-425-2460', '<a href=mailto:></a>', '<a href=http://></a>');
 tips.iLEX     = new Array(5, -2, 250, 'LEX Company', '2 Shaker Road #D106<br>Shirley, MA 01464', '617-549-2238', '', '<a href=mailto:></a>', '<a href=http://></a>');
 tips.iMaietta = new Array(5, -2, 250, 'Maietta Bicycles', '2 Shaker Road #G101<br>Shirley, MA 01464', '508-667-6188', '978-424-9260', '<a href=mailto:anthony@maiettacycling.com>anthony@maiettacycling.com</a>', '<a href=http://www.maiettacycling.com V>www.maiettacycling.com</a>');
 tips.iMcD     = new Array(5, -2, 250, 'McDermott Enterprises', '17 Appletree Hill<br>Fitchburg, MA 01420', '978-345-4616', '', '<a href=mailto:mcdenterprises@comcast.net>McDEnterprises@comcast.net</a>', '<a href=http://></a>');
 tips.iNashoba = new Array(5, -2, 250, 'Nashoba Nursing Service &amp; Hospice', '2 Shaker Road #D225<br>Shirley, MA 01464', '800-698-3307 or 978-425-6675', '978-425-6671 (Admin)<br>978-425-6673 (Intake)', '<a href=mailto:></a>', '<a href=http://www.nashoba.org target=_blank>www.nashoba.org</a>');
 tips.iNavin   = new Array(5, -2, 250, 'Navin Enterprises LLC', '2 Shaker Road #D206A<br>Shirley, MA 01464', '978-822-1116', '', '<a href=mailto:chinaya@aol.com>chinaya@aol.com</a>', '<a href=http://www target=_blank></a>');
 tips.iOpen    = new Array(5, -2, 250, 'Opengate Data Systems', '2 Shaker Road #206A<br>Shirley, MA 01464', '866-934-9518', '', '<a href=mailto:></a>', '<a href=http://www.opengatedata.com target=_blank>www.opengatedata.com</a>');
 tips.iOx      = new Array(5, -2, 250, 'Oxford Lasers', '2 Shaker Road #D201<br>Shirley, MA 01464', '978-425-0755', '978-425-4487', '<a href=mailto:oxford.inc@oxfordlasers.com>oxford.inc@oxfordlasers.com</a>', '<a href=http://www.oxfordlasers.com target=_blank>www.oxfordlasers.com</a>');
 tips.iPoint   = new Array(5, -2, 250, 'Point of Sale System Services, Inc.', '2 Shaker Road #F100<br>Shirley, MA 01464', '978-425-3003', '', '<a href=mailto:jswann@pssproducts.com>jswann@pssproducts.com</a>', '<a href=http://pssproducts.com/ target=_blank>www.pssproducts.com</a>');
 tips.iPolar   = new Array(5, -2, 250, 'Polar Controls', '2 Shaker Road #D205<br>Shirley, MA 01464', '978-425-2233', '707-220-2411', '<a href=mailto:info@polarcontrols.com>info@polarcontrols.com</a>', '<a href=http://www.polarcontrols.com target=_blank>www.polarcontrols.com</a>');
 tips.iQuant   = new Array(5, -2, 250, 'Quanterra', '2 Shaker Road #F200<br>Shirley, MA 01464', '978-425-2100', '978-425-2106', '<a href=mailto:></a>', '<a href=http://www.quanterra.com target=_blank>www.quanterra.com</a>');
 tips.iRed     = new Array(5, -2, 250, 'Red Derby', '2 Shaker Road #F005<br>Shirley, MA 01464', '978-425-4838', '978-425-4848', '<a href=mailto:rderby6@verizon.net>rderby6@verizon.net</a>', '<a href=http://></a><br>Embroidering Company Logos On Garments');
 tips.iSenate  = new Array(5, -2, 250, 'Senate Construction Corporation ', '2 Shaker Road #D204<br>Shirley, MA 01464', '978-425-9802', '978-425-0354', '<a href=mailto:bfrance@senateconstruction.com>bfrance@senateconstruction.com</a>', '<a href=http://www.senateconstruction.com target=_blank>www.senateconstruction.com</a>');
 tips.iSerra   = new Array(5, -2, 250, 'The Law Offices of Sandra Serra ', '2 Shaker Road #D206A<br>Shirley, MA 01464', '978-396-0002', '978-396-0002', '<a href=mailto:sandrserra@ssda.us>sandraserra@ssda.us</a>', '<a href=http://www.ssda.us target=_blank>www.ssda.us</a>');
 tips.iSolvay  = new Array(5, -2, 250, 'Solvay Engineered Polymers', '2 Shaker Road #A101<br>Shirley, MA 01464', '978-425-8940', '978-425-8924', '<a href=mailto:></a>', '<a href=http://www.solvayengineeredpolymers.com target=_blank>www.solvayengineeredpolymers.com</a>');
 tips.iSpecta  = new Array(5, -2, 250, 'Spectacular Products', '2 Shaker Road #C204<br>Shirley, MA 01464', '978-425-0123', '978-425-0115', '<a href=mailto:DWM@spectacularproducts.com>DWM@spectacularproducts.com</a>', '<a href=http://></a>');
 tips.iSls     = new Array(5, -2, 250, 'Street Legal Sleds', '2 Shaker Road #E104<br>Shirley, MA 01464', '978-448-0997', '', '<a href=mailto:mark.secovich@streetlegalsleds.com>mark.secovich@streetlegalsleds.com</a>', '<a href=http://streetlegalsleds.com>streetlegalsleds.com</a>');
 tips.iTall    = new Array(5, -2, 250, 'Tall Tree Guild LLC', '2 Shaker Road #D201A<br>Shirley, MA 01464', '978-425-4332', '978-428-0211', '<a href=mailto:info@talltreeguild.com>info@talltreeguild.com</a>', '<a href=http://www.talltreeguild.com target=_blank>www.talltreeguild.com</a>');
 tips.iTrax    = new Array(5, -2, 250, 'Trax', '2 Shaker Road #D210<br>Shirley, MA 01464', '978-840-0909', '', '<a href=mailto:dennis.legendre@traxtech.com>dennis.legendre@traxtech.com</a>', '<a href=http://www.traxtech.com target=_blank>www.traxtech.com</a>');
 tips.iTrudie  = new Array(5, -2, 250, 'Trudies Treats', '2 Shaker Road #C208<br>Shirley, MA 01464', '', '', '<a href=mailto:trudies_treats@msn.com>trudies_treats@msn.com</a>', '<a href=http://www.trudiestreats.com target=_blank>www.trudiestreates.com</a>');
 tips.iTLM     = new Array(5, -2, 250, 'TLM Studios', '2 Shaker Road #D101<br>Shirley, MA 01464', '978-425-3608', '', '<a href="http://www.tlmstudios.com/index.php?option=com_rsform&Itemid=55" target=_blank>contact us</a>', '<a href=http://www.tlmstudios.com target=_blank>www.tlmstudios.com</a>');
 tips.iSBN     = new Array(5, -2, 250, 'The Small Biz Nest', '2 Shaker Road #B213<br>Shirley, MA 01464', '800-277-1187 x706', '', '<a href=mailto:john@thesmallbiznest.com>john@thesmallbiznest.com</a>', '<a href=http://www.thesmallbiznest.com target=_blank>www.thesmallbiznest.com</a>');
 tips.iWill    = new Array(5, -2, 250, 'Williamson Environmental', '<br>', '-', '-', '<a href=mailto:info@williamsonenv.com>info@williamsonenv.com</a>', '<a href=http://www.williamsonenv.com target=_blank>www.williamsonenv.com</a>');
 tips.iValley  = new Array(5, -2, 250, 'Valley Design Corporation', '2 Shaker Road #E001<br>Shirley, MA 01464', '978-425-3030', '978-425-3031', '<a href=mailto:info@valleydesign.com>info@valleydesign.com</a>', '<a href=http://www.valleydesign.com target=_blank>www.valleydesign.com</a>');
 tips.iVance   = new Array(5, -2, 250, 'Vance Cabinet &amp; Carpentry', '2 Shaker Road #D203<br>Shirley, MA 01464', '978-425-9377', '', '<a href=mailto:vancabt@comcast.net>vancabt@comcast.net</a>', '<a href=http://vancecabinet.com>vancecabinet.com</a>');
 tips.iYE      = new Array(5, -2, 250, 'Y&amp;E Snack and Beverage', '2 Shaker Road #F004<br>Shirley, MA 01464', '978-597-2488', '978-597-6504', '<a href=mailto:></a>', '<a href=http://></a>');
 tips.iHottubes= new Array(5, 5, 250, 'Hot Tubes', '2 Shaker Road #G100<br>Shirley, MA 01464', '', '', '<a href=mailto:></a>', '<a href=http://www.hottubes.com/TeamWebSite/Home.html target=_blank>www.hottubes.com</a>');
 tips.iLincare = new Array(5, 5, 250, 'Lincare Corporation', '2 Shaker Road #B002<br>Shirley, MA 01464', '', '', '<a href=mailto:tfloos@lincare.com>tfloos@lincare.com</a>', '<a href=http://www.lincare.com target=_blank>www.lincare.com</a>');
 tips.iExalpha = new Array(5, 5, 250, 'Exalpha Biologicals', '2 Shaker Road #B101<br>Shirley, MA 01464', '', '', '<a href=mailto:></a>', '<a href=http://www.exalpha.com target=_blank>www.exalpha.com</a>');
 tips.iNewrail = new Array(5, 5, 250, 'Nashua Valley Railroad Association', '2 Shaker Road #E200<br>Shirley, MA 01464', '', '', '<a href=mailto:dswain@daveswainassociates.com>dswain@daveswainassociates.com</a>', '<a href=http://></a>');
 tips.iKeylight = new Array(5, 5, 250, 'PointSource Media', '2 Shaker Road #F223<br>Shirley, MA 01464', '508-654-3174', '', '<a href=mailto:paul@pointsourcemedia.com>paul@pointsourcemedia.com</a>', '<a href=http://www.pointsourcemedia.com target=_blank>www.pointsourcemedia.com</a>');
 tips.iGG = new Array(5, 5, 250, 'GG Global Corp', '2 Shaker Road #B102<br>Shirley, MA 01464', '978-516-0386', '978-516-0536', '<a href=mailto:></a>', '<a href=http://www.ggglobalcorp.com/about.htm target=_blank>www.ggglobalcorp.com</a>');
 tips.iEvergreen = new Array(5, 5, 250, 'Evergreen Solar', '2 Shaker Road #D107<br>Shirley, MA 01464', '', '', '<a href=mailto:></a>', '<a href=http://www.evergreensolar.com target=_blank>www.evergreensolar.com</a>');
 tips.iMillbrook = new Array(5, 5, 250, 'Millbrook Lumber', '2 Shaker Road #D200<br>Shirley, MA 01464', '978-425-2008', '', '<a href=mailto:></a>', '<a href=http://></a>');
 tips.iSwain = new Array(5, 5, 250, 'Swain', '2 Shaker Road #C203<br>Shirley, MA 01464', '978-425-0476', '978-425-9285', '<a href=mailto:></a>', '<a href=http://www.swinglabels.com target=_blank>www.swinglabels.com</a>');
 tips.iSwing = new Array(5, 5, 250, 'Swing Labels', '2 Shaker Road #F110<br>Shirley, MA 01464', '978-425-0855', '978-425-0355', '<a href=mailto:></a>', '<a href=http://www.swinglabels.com target=_blank>www.swinglabels.com</a>');
 tips.iKorea = new Array(5, 5, 250, 'Korea Express', '2 Shaker Road #D108<br>Shirley, MA 01464', '978-425-4448', '978-425-4428', '<a href=mailto:yoon@keusa.com>yoon@keusa.com</a>', '<a href=http://keusa.windowstest.net/english/main.asp>www.keusa.com</a>');
 tips.iSakrma = new Array(5, 5, 250, 'SAKRMA, Inc.', '2 Shaker Road #B205<br>Shirley, MA 01464', '978-425-1578', '978-540-4441', '<a href=mailto:Paul.Brunelle@sakrma.com>Paul.Brunelle@sakrma.com</a>', '<a href=http://</a>');
 tips.iWar    = new Array(5, 5, 250, 'Warrens Office Supplies', '2 Shaker Road #B207<br>Shirley, MA 01464', '978-425-5088', '', '<a href=mailto:smacdonald@warrensofficesupplies.com>smacdonald@warrensofficesupplies.com</a>', '<a href=http://www.warrensofficesupplies.com>www.warrensofficespplies.com</a>');
 tips.iWel    = new Array(5, 5, 250, 'Welton Technology', '2 Shaker Road #C100<br>Shirley, MA 01464', '978-425-0160', '', '<a href=mailto:></a>', '<a href=http://></a>');
 tips.iLake   = new Array(5, 5, 250, 'Lakeview Landscaping', '2 Shaker Road #D206A<br>Shirley, MA 01464', '978-345-0362 x14', '', '<a href=mailto:chris@lakeviewlandscapinginc.com>chris@lakeviewlandscapinginc.com</a>', '<a href=http://www.lakeviewlandscapinginc.com>www.lakeviewlandscapinginc.com</a>');
 
 //tips.iName = new Array(5, 5, 250, '', '2 Shaker Road #F110<br>Shirley, MA 01464', 'p', 'f', '<a href=mailto:></a>', '<a href=http://></a>');

 valleydesign = 'Tel: 978-425-3030<br>Fax: 978-425-3031<br>Email: <a href=mailto:info@valleydesign.com>info@valleydesign.com</a><br>Web: <a href=http://www.valleydesign.com>www.valleydesign.com</a>' +
			    '<a href="javascript:void(0)" onClick="docTips.hide()">close(X)</a></div>';
//lock
 tips.locks00 = new Array(5,5,200, '<div align=center><b>Valley Design</b></div>', valleydesign, 1 );

 tips.formulae = new Array('page.scrollX() + page.winW() - 110', -20, 100,
  'This tip is always on the right edge...');
 tips.format = new Array(5, 5, 150, 'That means <i>italics</i>...<br /><hr />...etc');

 template = '<table bgcolor="#FFFFFF" cellpadding="1" cellspacing="0" width="%2%" style="border:solid #000000; border-width:1px">' +
  '<tr><td><table bgcolor="#FFFFFF" cellpadding="1" cellspacing="0" width="100%" border="0">' +
  '<tr><td class="tinf" colspan="2"><div align=center><b>%3%</b></div></td><td</tr>' +
  '<tr><td class="tink" valign="top"><div align="right"><img src="img/clear1x1.gif" width="50" height="1"><br><br>Address:</div></td><td class="tink" valign="top"><img src="img/clear1x1.gif" width="190" height="1"><br><br>%4%</td></tr>' +
  '<tr><td class="tink" valign="top"><div align="right">Tel:</div></td><td class="tink" align="top">%5%</td></tr>' +
  '<tr><td class="tink" valign="top"><div align="right">Fax:</div></td><td class="tink" valign="top">%6%</td></tr>' +
  '<tr><td class="tink" valign="top"><div align="right">Email:</div></td><td class="tink" valign="top">%7%</td></tr>' +
  '<tr><td class="tink" valign="top"><div align="right">Web:<br>&nbsp;</div></td><td class="tink" valign="top">%8%</td></tr>' +
  '</table></td></tr></table>';

 fadeSpeed = 15;
 

}

if (isNS4) document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = function(evt)
{


 docTips.track(evt);


 if (isNS4) return document.routeEvent(evt);
}

var nsWinW = window.innerWidth, nsWinH = window.innerHeight;
function ns4BugCheck()
{
 if (isNS4 && (nsWinW!=innerWidth || nsWinH!=innerHeight)) location.reload()
}

window.onresize = function()
{
 ns4BugCheck();
}


