From: <Saved by Windows Internet Explorer 7>
Subject: Yes to Save Homes - Learn More
Date: Wed, 11 Nov 2009 09:26:18 -0600
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01CA62B1.06016A90"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.yestosavehomes.com/learn-more.html

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>Yes to Save =
Homes - Learn More</TITLE>
<SCRIPT language=3DJavaScript=20
src=3D"http://www.yestosavehomes.com/components/print/printer-friendly.js=
"=20
type=3Dtext/javascript></SCRIPT>

<META content=3D"MSHTML 6.00.6000.21015" name=3DGENERATOR>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8">
<STYLE type=3Dtext/css>BODY {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
P {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
TABLE {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
TD {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
TD P {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
TD UL {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
TD BLOCKQUOTE {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
BLOCKQUOTE {
	FONT-SIZE: 12px; COLOR: #002a86; LINE-HEIGHT: 1.6; FONT-FAMILY: Arial, =
Helvetica, sans-serif
}
H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 20px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 16px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#menu {
	FONT-WEIGHT: bold; FONT-SIZE: 11px; BACKGROUND: #0054a5; =
TEXT-TRANSFORM: uppercase; COLOR: #ffffff; LINE-HEIGHT: 20px; =
TEXT-ALIGN: right
}
#content {
	FONT-SIZE: 11px; BACKGROUND: =
url(http://www.yestosavehomes.com/assets/home-page-bg.jpg) no-repeat 50% =
bottom; COLOR: #ffffff; LINE-HEIGHT: 15px; TEXT-ALIGN: right
}
#menu A {
	PADDING-RIGHT: 20px; PADDING-LEFT: 20px; PADDING-BOTTOM: 0px; COLOR: =
#ffffff; PADDING-TOP: 0px
}
#footer {
	MARGIN-TOP: 20px
}
#footer P {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; FONT-SIZE: 10px; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px; FONT-FAMILY: Georgia, serif
}
#calculator {
	PADDING-LEFT: 20px; FLOAT: right; WIDTH: 250px; LINE-HEIGHT: 0.1; =
PADDING-TOP: 20px
}
#calculator FORM {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; BACKGROUND: =
url(http://img.getactivehub.com/gv2/custom_images/wyadvocacy/signup_backg=
round.gif) no-repeat; MARGIN-BOTTOM: 11px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 7px; HEIGHT: 166px
}
#calculator FORM #first_names {
	WIDTH: 110px
}
#calculator FORM #last_name {
	WIDTH: 110px
}
#calculator FORM #email {
	WIDTH: 140px
}
#calculator FORM #zip_code {
	WIDTH: 70px
}
#calculator FORM #submit {
	MARGIN-LEFT: 60px
}
#calculator #calculator {
	MARGIN: 11px 0px
}
</STYLE>

<SCRIPT language=3Djavascript>AC_FL_RunContent =3D 0;</SCRIPT>

<SCRIPT type=3Dtext/javascript>
<!-- Begin AC_RunActiveContent.js -->
//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2007 Adobe Systems Incorporated.  All rights reserved.
var isIE  =3D (navigator.appVersion.indexOf("MSIE") !=3D -1) ? true : =
false;
var isWin =3D (navigator.appVersion.toLowerCase().indexOf("win") !=3D =
-1) ? true : false;
var isOpera =3D (navigator.userAgent.indexOf("Opera") !=3D -1) ? true : =
false;

function ControlVersion()
{
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't =
in the registry

	try {
		// version will be set for 7.X or greater players
		axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		version =3D axo.GetVariable("$version");
	} catch (e) {
	}

	if (!version)
	{
		try {
			// version will be set for 6.X players only
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
		=09
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through =
6.0.29,
			// so we have to be careful.=20
		=09
			// default to the first public version
			version =3D "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)	=09
			axo.AllowScriptAccess =3D "always";

			// safe to call for 6.0r47 or greater
			version =3D axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 4.X or 5.X player
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version =3D axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 3.X player
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version =3D "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 2.X player
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version =3D "WIN 2,0,0,11";
		} catch (e) {
			version =3D -1;
		}
	}
=09
	return version;
}

// JavaScript helper required to detect Flash Player PlugIn version =
information
function GetSwfVer(){
	// NS/Opera version >=3D 3 check for Flash plugin in plugin array
	var flashVer =3D -1;
=09
	if (navigator.plugins !=3D null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || =
navigator.plugins["Shockwave Flash"]) {
			var swVer2 =3D navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : =
"";
			var flashDescription =3D navigator.plugins["Shockwave Flash" + =
swVer2].description;
			var descArray =3D flashDescription.split(" ");
			var tempArrayMajor =3D descArray[2].split(".");		=09
			var versionMajor =3D tempArrayMajor[0];
			var versionMinor =3D tempArrayMajor[1];
			var versionRevision =3D descArray[3];
			if (versionRevision =3D=3D "") {
				versionRevision =3D descArray[4];
			}
			if (versionRevision[0] =3D=3D "d") {
				versionRevision =3D versionRevision.substring(1);
			} else if (versionRevision[0] =3D=3D "r") {
				versionRevision =3D versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision =3D versionRevision.substring(0, =
versionRevision.indexOf("d"));
				}
			}
			var flashVer =3D versionMajor + "." + versionMinor + "." + =
versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") !=3D =
-1) flashVer =3D 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") !=3D =
-1) flashVer =3D 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") !=3D -1) =
flashVer =3D 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer =3D ControlVersion();
	}=09
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true =
if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr =3D GetSwfVer();
	if (versionStr =3D=3D -1 ) {
		return false;
	} else if (versionStr !=3D 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         =3D versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        =3D tempArray[1];			// "2,0,0,11"
			versionArray      =3D tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      =3D versionStr.split(".");
		}
		var versionMajor      =3D versionArray[0];
		var versionMinor      =3D versionArray[1];
		var versionRevision   =3D versionArray[2];

        	// is the major.revision >=3D requested major.revision AND the =
minor version >=3D requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor =3D=3D parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor =3D=3D parseFloat(reqMinorVer)) {
				if (versionRevision >=3D parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') !=3D -1)
    return src.replace(/\?/, ext+'?');=20
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs)=20
{=20
  var str =3D '';
  if (isIE && isWin && !isOpera)
  {
    str +=3D '<object ';
    for (var i in objAttrs)
    {
      str +=3D i + '=3D"' + objAttrs[i] + '" ';
    }
    str +=3D '>';
    for (var i in params)
    {
      str +=3D '<param name=3D"' + i + '" value=3D"' + params[i] + '" /> =
';
    }
    str +=3D '</object>';
  }
  else
  {
    str +=3D '<embed ';
    for (var i in embedAttrs)
    {
      str +=3D i + '=3D"' + embedAttrs[i] + '" ';
    }
    str +=3D '> </embed>';
  }

  document.write(str);
}

function AC_FL_RunContent(){
  var ret =3D=20
    AC_GetArgs
    (  arguments, ".swf", "movie", =
"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret =3D=20
    AC_GetArgs
    (  arguments, ".dcr", "src", =
"clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret =3D new Object();
  ret.embedAttrs =3D new Object();
  ret.params =3D new Object();
  ret.objAttrs =3D new Object();
  for (var i=3D0; i < args.length; i=3Di+2){
    var currArg =3D args[i].toLowerCase();   =20

    switch (currArg){=09
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] =3D args[i+1];
        break;
      case "src":
      case "movie":=09
        args[i+1] =3D AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] =3D args[i+1];
        ret.params[srcParamName] =3D args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblclick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] =3D args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace":=20
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] =3D ret.objAttrs[args[i]] =3D args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] =3D ret.params[args[i]] =3D args[i+1];
    }
  }
  ret.objAttrs["classid"] =3D classid;
  if (mimeType) ret.embedAttrs["type"] =3D mimeType;
  return ret;
}
</SCRIPT>
<!-- End AC_RunActiveContent.js --></HEAD>
<BODY background=3Dhttp://www.yestosavehomes.com/assets/background.gif>
<TABLE cellSpacing=3D0 cellPadding=3D0 width=3D787 align=3Dcenter =
bgColor=3D#ffffff=20
border=3D0>
  <TBODY>
  <TR>
    <TD colSpan=3D3>
      <DIV align=3Dcenter><A =
href=3D"http://www.yestosavehomes.com/index.html"=20
      ?><IMG height=3D99 alt=3Dwww.YesToSaveHomes.com=20
      src=3D"http://www.yestosavehomes.com/assets/header.gif" =
width=3D787 border=3D0=20
      longDesc=3Dhttp://www.YesToSaveHomes.com.></A></DIV></TD></TR>
  <TR>
    <TD bgColor=3D#0054a5 colSpan=3D3>
      <DIV id=3Dmenu align=3Dright><FONT=20
      face=3D"Verdana, Arial, Helvetica, sans-serif" color=3D#ffffff=20
      size=3D2><STRONG><A =
href=3D"http://www.yestosavehomes.com/index.html">HOME</A>=20
      | <A href=3D"http://www.yestosavehomes.com/learn-more.html">LEARN =
MORE</A> |=20
      <A href=3D"http://www.yestosavehomes.com/about-us.html">ABOUT =
US</A> | <A=20
      href=3D"http://www.yestosavehomes.com/get-involved.html">GET =
INVOLVED</A>=20
      </DIV></STRONG></FONT></TD></TR>
  <TR>
    <TD style=3D"BORDER-RIGHT: #0054a5 1px solid; BORDER-LEFT: #0054a5 =
1px solid"=20
    bgColor=3D#ffffff colSpan=3D3 height=3D10><FONT color=3D#ffffff=20
size=3D-5>o</FONT></TD>
  <TR>
    <TD style=3D"BORDER-LEFT: #0054a5 1px solid" vAlign=3Dtop =
align=3Dright width=3D266=20
    bgColor=3D#ffffff #FFFFFF?>
      <P><IMG height=3D232 alt=3Dphoto=20
      src=3D"http://www.yestosavehomes.com/assets/family-photo.jpg"=20
      width=3D249></P><IMG height=3D76 alt=3D"calculate your tax"=20
      =
src=3D"http://www.yestosavehomes.com/assets/calculate-your-tax.gif"=20
      width=3D238>=20
      <P style=3D"MARGIN-TOP: 0px; MARGIN-LEFT: 20px" =
align=3Dleft><STRONG><FONT=20
      face=3D"Verdana, Arial, Helvetica, sans-serif" size=3D1>Use the =
calculator=20
      below to find out what your tax would be. </FONT></STRONG></P>
      <SCRIPT language=3Djavascript>
	if (AC_FL_RunContent =3D=3D 0) {
		alert("This page requires AC_RunActiveContent.js.");
	} else {
		AC_FL_RunContent(
			'codebase', =
'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#vers=
ion=3D9,0,0,0',
			'width', '250',
			'height', '300',
			'src', 'http://www.yestosavehomes.com/assets/calculator',
			'quality', 'high',
			'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
			'align', 'middle',
			'play', 'true',
			'loop', 'true',
			'scale', 'showall',
			'wmode', 'transparent',
			'devicefont', 'false',
			'id', 'calc2',
			'bgcolor', '#ffffff',
			'name', 'calc2',
			'menu', 'true',
			'allowFullScreen', 'false',
			'allowScriptAccess','sameDomain',
			'movie', 'http://www.yestosavehomes.com/assets/calculator',
			'salign', ''
			); //end AC code
	}
        </SCRIPT>

      <P></P>
      <DIV id=3Dcalculator><NOSCRIPT>
      <OBJECT id=3Dcalc2=20
      =
codeBase=3Dhttp://download.macromedia.com/pub/shockwave/cabs/flash/swflas=
h.cab#version=3D9,0,0,0=20
      height=3D300 width=3D250 align=3Dmiddle=20
      classid=3Dclsid:d27cdb6e-ae6d-11cf-96b8-444553540000><PARAM =
NAME=3D"allowScriptAccess" VALUE=3D"sameDomain"><PARAM =
NAME=3D"allowFullScreen" VALUE=3D"false"><PARAM NAME=3D"movie" =
VALUE=3D"http://www.yestosavehomes.com/assets/calculator.swf"><PARAM =
NAME=3D"quality" VALUE=3D"high"><PARAM NAME=3D"wmode" =
VALUE=3D"transparent"><PARAM NAME=3D"bgcolor" VALUE=3D"#ffffff">
                                                <embed=20
      src=3D"http://www.yestosavehomes.com/assets/calculator.swf" =
quality=3D"high"=20
      wmode=3D"transparent" bgcolor=3D"#ffffff" width=3D"250" =
height=3D"300"=20
      name=3D"calc2" align=3D"middle" allowscriptaccess=3D"sameDomain"=20
      allowfullscreen=3D"false" type=3D"application/x-shockwave-flash"=20
      pluginspage=3D"http://www.macromedia.com/go/getflashplayer" />   =20
      	</OBJECT></NOSCRIPT></DIV>
      <DIV></DIV></TD>
    <TD width=3D15 bgColor=3D#ffffff>&nbsp;</TD>
    <TD id=3Dcontent style=3D"BORDER-RIGHT: #0054a5 1px solid" =
vAlign=3Dtop=20
    align=3Dmiddle width=3D506 bgColor=3D#ffffff>
      <TABLE cellSpacing=3D0 cellPadding=3D10 width=3D504 border=3D0>
        <TBODY>
        <TR>
          <TD>
            <DIV align=3Dleft>
            <TABLE id=3DcontentTable cellSpacing=3D0 cellPadding=3D0 =
width=3D"100%">
              <TBODY>
              <TR>
                <TD id=3DcontentArea>
                  <TABLE style=3D"WIDTH: 100%" cellSpacing=3D0 =
cellPadding=3D0>
                    <TBODY>
                    <TR>
                      <TD vAlign=3Dtop>
                        <STYLE></STYLE>

                        <DIV id=3DcontentDiv>
                        <SCRIPT=20
                        =
src=3D"http://www.yestosavehomes.com/components/form/form.js"=20
                        type=3Dtext/javascript></SCRIPT>

                        <SCRIPT=20
                        =
src=3D"http://www.yestosavehomes.com/components/cookie/cookie.js"=20
                        type=3Dtext/javascript></SCRIPT>

                        <H1>Learn More About The Issues<BR><BR></H1>
                        <H2>What would your proposal do?</H2>
                        <P>It would amend the Missouri Constitution to =
prevent=20
                        Double Taxation on homes and other =
properties.</P>
                        <H2>What is the specific language of your =
proposal?</H2>
                        <P>"Shall the Missouri Constitution be amended =
to=20
                        prevent the state, counties, and other political =

                        subdivisions from imposing any new tax, =
including a=20
                        sales tax, on the sale or transfer of homes or =
any other=20
                        real estate?"</P>
                        <H2>What is a real estate transfer tax?</H2>
                        <P>It=E2=80=99s a tax imposed by state or local =
governments, or=20
                        both, that is collected when you transfer =
ownership of=20
                        your home, land or other real estate. Typically, =
once=20
                        the tax is on the books, the rate can be =
increased by=20
                        the state, city or county without a vote of the =
people.=20
                        </P>
                        <H2>What is your objection to a real estate =
transfer=20
                        tax?</H2>
                        <P>Missouri homeowners already pay property tax. =
A real=20
                        estate transfer tax is nothing more than double=20
                        taxation. Many sellers have owned their homes =
for=20
                        decades, and they have already paid thousands of =
dollars=20
                        in property taxes and other fees. Adding double =
taxation=20
                        through a real estate transfer tax is simply bad =
public=20
                        policy. It denies fairness, and it defies =
Missouri=20
                        common sense.</P>
                        <H2>What would be the government fiscal impact =
of the=20
                        proposal?</H2>
                        <P>Since these unfair taxes are not now being =
collected=20
                        in Missouri, and our aim is to keep it that way, =
there=20
                        would not be a new fiscal impact.</P>
                        <H2>What are the next steps for the =
proposal?</H2>
                        <P>We are aiming to gather some 157,000 =
signatures of=20
                        registered Missouri voters plus a comfortable =
cushion of=20
                        additional signatures to place this amendment =
before our=20
                        neighbors in the November 2010 general election. =
We are=20
                        asking Missourians to sign the petitions to =
allow our=20
                        citizens to have the final say on unfair double=20
                        taxation. </P>
                        <H2>What is the Missouri Association of REALTORS =
=C2=AE?</H2>
                        <P>The Missouri Association of REALTORS =C2=AE =
is a=20
                        professional association that is 22,000 members =
strong.=20
                        We are the largest trade association in =
Missouri. Our=20
                        members are personally invested in our =
communities in=20
                        countless ways =E2=80=93 raising families, =
leading in=20
                        volunteerism, serving on local boards, sharing =
church=20
                        pews, school meetings and our joys and =
tragedies. This=20
                        spirit of community involvement reaches out =
nationally;=20
                        for example, in the aftermath of both 9/11 and =
Hurricane=20
                        Katrina, REALTORS =C2=AE came together =
immediately to=20
                        volunteer in relief and shelter projects. We =
care about=20
                        our neighbors and work to help them achieve the =
American=20
                        dream of home ownership.&nbsp;&nbsp;</P>
                        <P>&nbsp;</P>
                        <P>&nbsp;</P>
                        <P class=3DMsoNormal=20
                        style=3D"MARGIN: 0in 0in 11.25pt; =
mso-margin-top-alt: auto">&nbsp;</P>
                        <P class=3DMsoNormal=20
                        style=3D"MARGIN: 0in 0in 11.25pt; =
mso-margin-top-alt: auto">&nbsp;</P>
                        <P class=3DMsoNormal=20
                        style=3D"MARGIN: 0in 0in 11.25pt; =
mso-margin-top-alt: auto">&nbsp;</P>
                        =
<P>&nbsp;</P></DIV></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
            <SCRIPT=20
            =
src=3D"http://www.yestosavehomes.com/system/components/logging/logging.js=
"=20
            type=3Dtext/javascript></SCRIPT>

            <SCRIPT=20
            =
src=3D"https://wadmin5.getactive.com/system/auth/author-toolbar.jsp?hostI=
D=3D54522562"=20
            type=3Dtext/javascript></SCRIPT>

            <SCRIPT type=3Dtext/javascript>=0A=
if (typeof CONVIO=3D=3D"undefined" || ! CONVIO) { var CONVIO =3D {}; }=0A=
=0A=
if (! CONVIO.page) { CONVIO.page =3D {}; }=0A=
=0A=
CONVIO.page.folderID =3D '54522564';=0A=
CONVIO.page.hostID =3D '54522562';=0A=
CONVIO.page.adminURL =3D 'https://wadmin5.getactive.com';=0A=
=0A=
=0A=
CONVIO.page.navFolderID =3D '54522564';=0A=
CONVIO.page.navFolderTitle =3D 'www.yestosavehomes.com';=0A=
=0A=
=0A=
=0A=
CONVIO.page.draftID =3D '56460670';=0A=
CONVIO.page.hasForm =3D false;=0A=
=0A=
=0A=
=0A=
CONVIO.page.typeID =3D '54522571';=0A=
CONVIO.page.typeLabel =3D 'Web Page';=0A=
=0A=
=0A=
=0A=
CONVIO.page.hasEditorStep =3D true;=0A=
=0A=
=0A=
if (! CONVIO.user) { CONVIO.user =3D {}; }=0A=
CONVIO.user.isAnonymous =3D true;=0A=
</SCRIPT>

            <SCRIPT=20
            =
src=3D"http://www.yestosavehomes.com/components/floatbar/floatbar.js"=20
            type=3Dtext/javascript></SCRIPT>
            </DIV></TD></TR></TBODY></TABLE></TD></TR>
  <TR>
    <TD style=3D"BORDER-RIGHT: #0054a5 1px solid; BORDER-LEFT: #0054a5 =
1px solid"=20
    bgColor=3D#ffffff colSpan=3D3>
      <DIV id=3Dfooter>
      <P>Copyright 2009 &nbsp; | &nbsp; <A=20
      href=3D"http://www.yestosavehomes.com/privacy.html">Privacy=20
      Policy</A></P></DIV></TD></TR>
  <TR>
    <TD colSpan=3D3><IMG height=3D15=20
      src=3D"http://www.yestosavehomes.com/assets/bottom-curve.gif"=20
  width=3D787></TD></TR></TBODY></TABLE>
<P align=3Dcenter><A href=3D"http://www.convio.com/" =
target=3D_blank><IMG src=3D""=20
border=3D0></A></P>
<SCRIPT type=3Dtext/javascript>

var gaJsHost =3D (("https:" =3D=3D document.location.protocol) ? =
"https://ssl." : "http://www.");

document.write(unescape("%3Cscript src=3D'" + gaJsHost + =
"google-analytics.com/ga.js' =
type=3D'text/javascript'%3E%3C/script%3E"));

</SCRIPT>

<SCRIPT type=3Dtext/javascript>

try {

var pageTracker =3D _gat._getTracker("UA-11089040-1");

pageTracker._trackPageview();

} catch(err) {}</SCRIPT>
<!-- 192.168.17.116:8500 --></BODY></HTML>

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.yestosavehomes.com/assets/header.gif

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
lmBAAAA7

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.yestosavehomes.com/assets/family-photo.jpg

/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAALQAA/+4ADkFkb2JlAGTAAAAAAf/b
AIQACgcHBwgHCggICg4JCAkOEQ0KCg0RFBAQERAQFBMPERAQEQ8TExcXGRcXEx4eICAeHiwrKyss
MTExMTExMTExMQELCQkLDAsNCwsNEQ4ODhEUDg4ODhQXEBAREBAXHhYTExMTFh4bHRkZGR0bISEe
HiEhKSkoKSkxMTExMTExMTEx/8AAEQgA6AD5AwEiAAIRAQMRAf/EALAAAAICAwEBAAAAAAAAAAAA
AAQFAwYAAgcBCAEAAwEBAQAAAAAAAAAAAAAAAgMEAQUAEAACAQMDAQUFBAcEBggHAQABAgMAEQQh
EgUxQVEiEwZhcYEyFJGhQiOxwdFSYnIH4TMkFfDxgqKyU5LC0kNzkzQWY4OjdISUJhcRAAEDAwMC
BQIFAwUBAQAAAAEAEQIhEgMxUQRBImFxgZET8DKhscFCBdFSFOHxYpIzsiP/2gAMAwEAAhEDEQA/
AGX9QPVvLrzEnF4M8mFBhFd0kLsjyOyBrsy2O1d1tvx7rVP/ANyepDYf5rmE9pGRL/26N9dW/wDd
vJdR+Yv/AAJSNVJOjX9/9tQZJm6VepV2OAtjToEwHqP1Jut/mmZ/+zL+jdWy+o/Ud7HlM0//AJEv
6noFVa97A2/07K9LKBqACR1/12pMs5HV/VNGMbD2TIeovUHbyWZb/wC5lB+9qmj9R890HKZen700
h/6xpP8AUxKtnBt2kXtf4bqhGVAbrCwY3vbqf90qaWcsz/d5ohCI6BWWP1RzAFm5HIY/+O//AGql
HqjlhZm5DJT/AOc5H/Eap82VK0bMutiRa4b7VcX++oA8pNr2S3zJdCD7iSKWceSVTkI9UV0B+0ey
uMnL8rK14+ZzFv8Au5UvX3b6ji5P1W0gij5PLmW9y5yJL2vqNGqqjzCoE0g6+GT5SPeas/FOmLh/
U4yvmTyuIhIx2JubsG+2neaVlOfHHtnKZNAC7f8AZMxxwzJuiIsHJGvsrHjS5+XlRY2RzOdAzAbY
oZpFLX63kkbrVwwsM4a2XJypj2tPkSyn/fciqD6fylh5yKHPe2ZKzRq2tkcgeEAi3Xoa6TGtyqk3
7zTeH8pi05E13UZMK2sQCelW8VE+ayyiIyNvIuBcj9NFLJKQPG32mqz6kj5eTLhXj5BHGFsFK7n3
m/iOhAW3fTnicsZWFGxlSaVBsleMEKXXQ2vVGHJP5JwkTT7UBIOkVzT1nznOYnI5CwcllwomfsCx
zyKAhRG22Vhp7K6wskhVTvY3APU91cc/qEu3Pzj+7nIfthU11+DWCJh2op+4VZMlo1SoM8lkksoY
+NuneaG5HIyF9PyypK6SiJSJFYhgdw7RrU8g8XwobPW/p2cd0B+40GEn5ak6H8wjzAfHp9Mq5ByX
JEa5c58TDWR/21K/IciN1sqbRL/3jftoPHHX+c1OwurfyftrqSZ9FFj+wKzc9kZEfFLJFK8b+ZD4
lYqbEi+o76C+qy/+fKf9tv20Tz2vBbutjAf95aBG4juqTp6lOGvoFL9Xl/8APk/6bftqbCyslsuJ
XmdlZrEFiQdPfQZU95qfBAGZCe3cNa8tWvq3Ly8cYJgnkh3vIH2Oy38ItfadaUYvJ8i0ljlTEXYa
yN3++mfrNbpx5/8AjOPtWkWKQMhu0hjrT8VcXup5Fs3smZzs+4/xUwH/AIjftqw8dNM/Fo7SMz3N
2JJPXvqtMut+6rFxWvFAD95v00rN9hbYqiP3DzWNPNsb81+h13Gp4ppDGhLsbqO091DMPAfcangH
5Mf8o/RXOhKV2p0VUwG0GqmEsoIO4n2E3orz1oO1bWp1xZnKUwd2VT9QenOKzuUyZpoiJnYbnViC
fCB06Uhn9CYbXMOTJH3BgGH3Wov1F6wfj/UGdhviNKsbgK69t0U/roeH15xRA+oimhbtutx+qrb+
DPtnZcKFxaX81JbzIVgZWnStwbySHmPR3JYOO2RFOk8adQNykD7xVa28idyhNrDprofiprquP6o4
DIHhy0G7Qh9KrXrHiMKTAmzeMmUs1rxQnp/ENp+2ps/ExOZ4pQsAf7nIPVUYeVkYRyiV5LfawKph
jdCxlYWPY1gQfYwtWojVygUNMy6KQCSP9qrJwvpKafEgn+nJZ1BMkmg17btT6D09hwttyMyGLb1R
PER+gVFM44fdMD1VQM5UETXdVKThZCgMDGRr2JKlR+29S4/BSuwEjsb9VQW/tqz83j4mBLB5Rlkl
kAc7gNrKvbtH7an4zm4WlCwbYm0OijXvFyKTx8oLxkXI0JQGZjKyZYpbx/pMNKiLikyMLgyDqB2+
Kn3KcP8AQpx0MZAJyI2dgPxbgBYdwpgeUlXIjmLLIUUqt7WIb2iouYyJM4Yx8MBhkRy3zXCndpR5
ZXxZiC+jJ2MWlyaMauq7kYmRj80J3LyzIz7p8dFZFKvbaNwAuF++ugcOZvpVleQ5JYblBG1r21Q3
9vf0qsZ/O422LHbNlWbezSR40SGNL32h9w8WpHxpnxXMyT4rI2WsOXC3jeSPYDGT/ebDYbtCNDa9
KwkRyVP+/ukUaQBqdUq9aSSRpCkEKK80vmS5KuGUtZh5WupK049L8i74sOK+POFCG2U/iV2U2YEj
p1ql+qeQjeHHQLjnKR3ssKsshi6IzBwLeZ3AVYfRWbNkcKuPLDK7RjxkbYwQ58LDtJFECRmEwWBB
pugiakKrf1IW2ZyR7smBvth/srrOCd2FjN3wxn7VFcq/qTGqz8lt6B8Qj4xMP1V1Him3cVhN348R
/wBxa6MtI/XQII6n66lSyfP8KHyhfgckd0Mn3E0RL8491DZLqnB5W42/Km6/Ggxf+vof0TMn/n7f
qqpBclrD8XX4Citnhuf3TQ2J5kj7I0Z2YiwAJ7Kbw8RyUsY3ReXp1cgfdXTyFiosP2+6Y8zr6eY9
yQn/AHkoAHQUx5mMpwE0batHFGDbXVWWgE+RdOwVN09SnDX0C1N6mwwRlwn+MVGSO/7Nalxf/UxH
+Nf01i1TeouNyuQTEXGUMYZi7liAANtr60Fj+l5xI0k06LuN7KCx/VTjleSh4yBZ5kaQPII1VSBq
QTqW91V0+tJp5/JxMWNbXDO7F9pH8u0UUZza2PklzGMSuk76p3HweEPnZ5T3aKPu1o5II4McxRJs
jGoGp1J9tVFuf5LJLKuZsIJBSJVT9IJqwcI8j8Y7Su0reY12clj2dprMkZWEmQNDoix5AZgAEea3
I0PuqWDSJO7aKjPQ1JB/cp/KKgh93orJaeqkrb415W1NS1QOSw8Cb1Tyf+YR7UMy7JWBANol0Vge
+oIuD4XKklggeZJYEDSAg216WLrrSn1hz7YvqvkcaOFWlSdNspbWxjTQA6DrWLzHIcQqzeCQ5qru
DksQLX7D1ooZoyyWZ8WKy4xBteZ1aqVKDYzPDlyXgAkO0B4JpN6JhZiI5UbxBRvj7xfqtLcn0dmw
RNJCqEKNx8typte2gNqIi9cZBO544WFwdoLAmwtRcXq+PIjML4xUyDYGVwQCW62NbycPC+OZxgxm
AbQDIV/Jbx83K+SAyF4E9ziOi9xYoEmyMWSVxFieWFWRyAAVHd11v2V7ly8UgiaOaJl3EBkRnTcF
3W3jt91bZWfh4uby+PkX35UUYisL6gdtU6WLLBSOCVcWFhucqHfaNQ2h7W29lcaPGxy7p9a1eiu5
HKyRNgZgm/qLkt7xPNGVaOIARBtDfxa9OlIYczIx0l2SlPOXbYWUpc3XXWxpl6g3J9OEByphCl7F
WuzDUkqBbU0smx5YUJJVVKq0otuub2Nq3BK0RNLn928FHyP/AFJPqteNzM8ZMcMfINEjtYkyBwL/
AML1YpOZ5TE8yF8iLITb4JWjCa9vbaqbmZ8yfmNiBolf8uZxY2te1+0g0TFycWVCPrAUSytYNdrn
oOgtVWY55GMwAIM0hFiX33dZfEReMi+xTifkZXRmALGQbX2toV3XtYW076YcfzHHyYk2TmSSpnQH
RQA6yB7bUIYWUKKSJJeCyrsiI7SCeoqGZhAspBs0zXW4sCA1trCpiBKRBFSWFXSxIgvqmOTyUOSQ
GkZ94FnXHSPy33N4Q6m7Db99XD09nJHxvleVJOMYghBIqlo2JDbVbXafxC+tc8kyWVhdfye2Fjcd
OnuvrRXHcntRk88RicW6WuRbaCV1FUAPEFmLl2D+XgtE2k+tGTn14mMq8kMX+5thsnxEgrp3ASKe
A46RiAv0kJJOg/u1rkPMbG4zkghVti4+5luQWDspIJ99XjB5hV9L8YIBLJNDiwCWML+WQVU7Wbpq
oNqrM2xQlTQaafbHRFCr/XUp/l8tGJFigHmSlgpt4wB+94L0EPUcC4rQyBI38RZ3NkAJ/EDciqly
HPyTZLKjRLFIVVoQAqFTraQr1setqMxOOSWLMkE0MkbqTaMB2VlW4W5ubDsqTDPNk5AECQKvT690
WSYsIA0Vlh5zj45C/mtLYC2yNiNB2Hwi1TS+qY/+4xZJO4yMEH+7uNcYwIuWmzUOPHlzRqbDYrtp
3aadKvWNxPqWRE2RSwq9gpmIXr3hrmuwDjOrv4qZsvQhtaBXjlJDP6emmYBTJCHIHQG4NLoQvlIf
4R+ij4cbIm4ZeMmZRkeQIpZB4gGHbp1qWPiIVjCSSlrADSy9PfQEhqJgBeuyXadlSY+k8Z/jX9NM
kwMGIdC572JNSg4seqoq27bChviNSAitJ0BST1xi5GVwoix4XnkM6eBF3m1mubVVuK9J82jySLiy
QtayszLGr3/fUljf4V0QZidU1B7a1OU3ZQfNAG4F/JacEpUIbT8FWeM9F5MKB8mSJZz85W7kH3mr
Hi4a4OG0O/fdt1yLdbV42RIaikkkJXUbfxaUM+SLbQKf1Rw45uuJqvNw1qaD+5T3Ch7gdK8J/Mht
pd/1GpoyYv6J8ouEbW9aCt6ekrhvrzGc+ueRdlIVpYyrHQfInbRXNwp9Lx5ttJVL7e3TvrT+pTMf
Umeg6+ao/wDppUOQUTB42JfmRI7+29/F9tJmZHIJaNOQ/NHjgIwkNXiCtIsZWJAdwdxFmsdKIxcS
UzsCQRC275T0B76lkkQci0hZZEL7mKdL9tqPXNxy8tjtLKQLiw+YHX4UJnIswJuHsiEIjUgMVr6o
BHNSTKgddil73tbaAOlLJ8gyWTaY4o1BKq3UDq3tNOvUUsUfLNvsVaJOvQ6UkmjiksJJBDs/u7+L
VuywqQXWgB2Ov+yHlQImSC7nTZFwyNIIDI/mCBdkQ0st/FuJud1/upNyDxyNJklW2qRvVTbQnTS/
WwqZclwDEyl2iAVTawFx2AWtrQhfa5aRQ3mbn23DXUXFl6fCl44SEySfRSzmSavsoongyL4s8jiJ
VJh7GI1szaHpeghizQSq0rAxNYK9/Awtbr1ob6maObfKCwuVsbar3H7ang5FJZVFljRReQsTtAuf
lHf0taugIZIA21iQ58/BLd05RImREhQSY+uhO3xAaXt7ai+m3zFnaIzsC8cbuFUsPa2moFeQS7pH
8gALECdgN7ljb7TQOTfFkaaVVkc3WEN2AEgWHsNTQiTJnY7fuLrQVNny2maSWOzzKGYltAW/Fp1q
TjkcuskUN2LeB2NwFt4iL+2l8/ISZI8uY2hBDJpaxtqqk62NF4uTGY1jj8CMu5rE2TT7+lOnGUcb
W19wtNU5nlafh+Uvb8uGELbuEw6/9KvMaedcLEUINrwIwYOxNlBQ3G4hdPZWuKluH5dNgW+Kj6EE
EGWMg3HsNa8EkUkEazM0aGIbZFG4K5G1SwP4ew2pmZzgg1aj/wCUQ0A+tSnfDytjTGKbFhyoMlis
kbakEC6MHt7dKfw5MGC8iQBQZnLeJlug6BfdpVU43MhwcnbLkJ5BJDNcMpIFgRuoqbkS22Sfeyz3
KyohYEDu2C2lHgxfHKMtC3WuuyZrjtNa+3qr3xmdkT/4chYki8RZDcHsvra4rzkebkDeUBthQjxA
dR/aaqseTNHiu6Yc+TGf/T5FggC22lTexOoqDGyM5kfyoY9p2owke511PhW9qO6ciS59ETQiAGVw
4LLzJWeQXOMxIJcln3L8elOvMJ7ar3EwSxY7zmUK7oN0cQ3C5GhFz1o/ChlRHly55WLgNYhVI9nh
FJJmSaE13ThYANEdNkRxAFz10A6kn2V750W3xMBfvNALhx5UwLAyIniUuWHb2a01THhT5I1HuAr1
s/AL10fFDieICynd/KCf0VgmYttWN2Put/xWo0KOyvbC9+2vfFL+4DyCz5Bt+KCK5ROkQH8zAfov
XogyW+ZkX3At+m1GWr2i+EdST9eCz5T0ACD+jJ1eZ/coA/VW6YkSsrnczLqu5ibfCiKwVoxQB096
rDkkeqwWrewrT/S9bWo+iFcT9eTSD1lyETY5ZXlTZJcWP5aUPmYb40MEj7WWRV8tVa+3rYGjPXkg
Hq3kgVYgSLqBcf3aUhE0faG+INS55EzNCGkdCn4oiwV1A1TTKwOQxJki2+KQXABVh0v1qJJsqVWt
HdQfGwX7L1pB5cqXMjFydoGugtqTfsqVAEBXeFvbcoNj7CRSPmYMTK7qUwCBkYgxGwKsGXDh8hyA
ky1/N+mjbyutvD+YbEfhpWvMejsaQwmZ5GB6HeQPbrYCtmkmmX6nzC05urSqddtvl076FwTxyOyG
MRyahjIgu3uJFTwlSRlLJT9uMs35ppm0hCUcbknulG7XRHeoFM8WLNiJtx8iIeQRpZLDx/fVZ5Da
MpPLiM8oFnsDtJ26bbdtPOYzo8P6cBvMWRNCLkeE3At8aXLBJLFJOpshkUqToQF7F95NHxzbESP2
lxEnq56rm83Fbml+YVc8iecEojEHVgATbb1v7ql4vCxMuSSB5zGQt7hd17H3imKRGKQRtI67HdpG
Ww3g9VN9OooeIY8eQ0uKjNMpOwmxHZYNYW7a6PymUJCJtp2kfq6loNao/HxpILx4oBSN0vNIQGZV
tddq31vUZgjilMeUymRU3lz2ksb7R7LV5K7NKUW132sSWOut7206dlTRYyTvHI6/mkX29Sm09vtq
UkjukddW1daNlHFk8bmPPFkQtIYt3lANtubgK9/caYx4+DGojcOZGjBghT5iSLgm1RbcXJlaOBlh
ZFLykra+3sue+sXMaCEPFIfqJEH5jNYA3uq9PZSpvJhC6OnaSaP1WvUOFJxcckfH8zC6mM/RswQi
xA82Jqg4vJxUwIlkTe6rofiRrRHDTNPHzLOLO2BLv/dLKyElfsquO5GNDsazWIIt11PbXUF3xw0E
nD0caLf2qw4+dxUTujgKCdSVBG7r17qNfnoIJlUOHgddm2xJDfw27BVWTHTYsrTkmwJUgA37gaMg
x4jJ50ZBFrMJLGxOvh0rJZ7RVvQLHO6sCeopo8Z1hleOCZyz44TdGq30INzqeulHcfj5eS6ZWNKk
vlixhfw6G9/CLE2t0pFFjIpWONdqDRTc9utWjAweNgwXnkmaHKXxeUt2Jvp10PXr3Un5Mk3jGNH1
P9AihUuToN0fjxYzSo8qvCyhN8aB1Kt+LTcVt3U9GVEIY43yfANQwG64B6dLi1V8crFES8LtI77T
Isi+F+yw7rUXxsM2SPqHic47NqytqCTrYfdTsWA44d7Cuoo/umCbyaNT9bKzRZ2Oqoil5NxsGCnS
/S/dRwNB4+DBASYwQb36n7KmfIijvvYC3UdtY46JzHqiBXtaIwYAjUHUGt6JCVlLxzWM3MNxAimM
6J5jS+WfKAtcDfTCsANe8li8NZWGsAry1e17Wt62ry8uEf1D5fyPWfKwmHcEkUbgbX/LSq6OegHz
RMPcRVu/qbg8UvJ8rmzswzJclY4VBsDtjjubVT+H9Ox8jj5eTI7xRY4/LZRox7Rr3Uuf+M2TJMGI
jMwJrWTtRNjHN2QiQTKAkBsG6pjxnPwSSnHTdGJR4ibEEDWvZeQZ5b40ZlQAFiOpUe33UZB6N4lR
cmV2UkHxW6Kh7P5qb43BcVBxsShmiSVVBQXLanc24/CoMvI4kZXQEi7BiPx3RZeNyWEpSiH7aHdQ
8ZysmOJRIg2Ld99rWXsFqC/zKAvHkzIMlp2JdH0Av8vS/wCGjcniMYxlsQb3jj8JLgAWt83sHdVf
RcmWb/LvlhFh5iC26/RR+ul4seKZnMU/u/aWSc2bkQtjKQNn20eL/qUQ+dFmFWmAVICRGljbae9g
NbWrIMp5p1infyMf5gdD8v4demutb5CytEuPiiMSSN5cCR9u0gdfYAb0K3H5WE8ZmmEkj3hC9SrW
0I79t6fEYyGpE1siakeIU05SkbjXdHRY+I8bNE7mNFca6kBiV/F30NC8YMkcUflxRnr2MToKIxsa
WF1kckrsEaqdARfq1+29a5SwRjy0LTO+8KFNiF/Fp76AS7jFzJ9P9UBLoAh9rCNSzg/Ow0AH+qsO
blxKzjQBiZJVNgpIFulR5AlcbVPlAuu0EgaAd/begvGkbqkm+Kfwtr0sbg+3pVcYCQqx8D/VYFMu
SZGad3I8VgAbEkgkEV79S0j7TZtxTxdvhG4/poVoPMlEe6yrZbj22/bTHD4mJJjJkS+GNvCoGrWP
ab0czjiHJ6doZeEQE09M5HnJySdD9Blaf7O7T7KQeaixJu6hDt69d7VbOPXEHIZBxYFx1l4/KQql
7HbE2p9tVXHLboSm0kBwwa1rEt30ePIDivEWH9svVMI7V7DkObWjuU8R9w1tU4lLRo2/83aG8sdt
yevtFRwSEu0WsYBue0nQd3uo6PiSQHgU3F/FYm9xWxw391A3jUoGTDAzkSNVsQyjdZtOn7pNMJeY
TJcy+UN0hDNYkdey9I045gEWVwzEA2PUa+3oaOVYfkYX26aix07L02N2kABs9FhLBk1x3V7EEEE2
Psq4cLk4eEhLTlwdDHe5HwGjVR4pALWFjTnjYppQWQbgrDcCbAe1vZ2U3LEmAvl5tQIsMmlQOVb5
+Qlmusb7FIOwkW177+yjcTFugaVSJNQxvfcD1vS/jky1k+nMY+nWx8WvUdVNO10AA6DSozsFYNyp
VAAAA0AsBUg9tRrW4NEFhXtaO7Aqkdi7dp6ADqTW96Hxfp/MkWKXzHQ7StwdgJJt9tahWs8zYgEk
0geIkBgRYi5tdbdaK7TSLloOV+pafckmHGQ0cKr4iLeIMxOljqLU8HygX7BQg1I2WrDW1hWtbUS8
uB/1Ejn5T+oWZgK2iyJHGOxQY1Zj996sh4/GwOJnw4BtiiRgt+8gMSfiaS/1CRML1xPmQOfqpJi7
9wARUUfG1O5J48zjZ5o1uJg1xfqdiX++uf8AyhkZYraYxI0/5iVSf0V/8cABN6zMRX/i1Ah8M+ZZ
QblTZjfQ3SM1JDj40mPCWZ3lcqsextuviNj2fhpNj83FjukUcQa7IHseh8qNdo+Ip7gJL5GGSArb
ldl7tZdKjy4ZRAJeLs26puhlBjq2vgg8/FeRGx9xWIIVZAoAIJU6uf0UlzTDfZAN5jIAKtY6D5r1
bs7GDcblSG9ngksVFyCfL1F/Yap3mJiyJiqg2M2sgFyFt95ouMC27O0fzJXJ52Mwm1W6LZJsTGba
oIdPlkUfLp4hUTZOOXeVZLKCDuc2DAKFJ916khjjlBRHMfmMQhm8O4ndu+6g+S4xUaNCxeJTZQAB
uLDxBfsqiAgZtIkEhRG5kTk5crGIRxbQTcyk+FlC9g7NaGIknkdbArAPGV08TC52t3GtESf6hIpU
8vGjjssUnzEA6t770LkzC8sq742ZyFQaadrWqrBxwdGAA1FdVscb1OiiaKcZKhvHGDqo+3W1NsPI
x5oLIipNExCptFxYaVXJZwpHlMxbQsSdb05wM7aywzKA0gBV7C7W7yKdyeOTB41I6aedFtgYst5Z
GjfYYUU662uvv9lEw5E0SXkCLLfaNtiNpHf7aFlTJs27RGumvc3UUAWVVYI58I23J6EmxuKnGMTD
U9KoADurHwWZJkckUY3H02UF7tYG6UgxYpZ2x8eG3mTOUS/724Wph6Te/ORoNAYpl2+0xPQ/Avs5
jjmFrpkdT0Fyo/XVUIiMbWoAKf8AZNA7QPH+ituB6S+oaRZnaIRaMYl8Ttbrut31LN6X5CF4/p9y
qDq5Pit7au2I+PtBVhs6E9ASOte5suMsTP5iBBpuvcXpZ5ExoQAKMulj4eJgCDUOucZsEvnTxTES
NH4ll93zLpQ0KgAAfL9tMuYnhjyZAG3GSNt4HYbaUqhYWDXst+v+qqcWWAAMmiSHXO5WO3IQKqwc
LFxjv/jmZLW2lemnY3vq3YrcXjyGWFS7SEh9tj16kjuNUGBwLWNz3jrrTzj8oxBl2hme35naKHIB
keUZkjRui9hyCNGHn1V5x5zK35agRDQkix+HsowGlnGSSmELIhQrbrr1Fa5POwYpPmo3lqdXBHZ1
qfqyq6OnSmtga56f6mxLyDQtEgxblUIY7+vhYk6fdT3F9XYUsio0mxyLhR4rj+WwNGXjqELPorOL
k2HWvEQAgqgBK2JA62J7hWuPKkyxyowZHFwR0INIOc5KWHNw8fDyvKLiTzkjIvpfbfqRrWmQEbjV
CdWT/KVzjS6fhPYalET9x+z+2qhk5eY2M5bJmOnQyH9VRSy5DE3nlIHfI/8A2qX88X+0+6yu4V0M
b2JNxbXW1Zalfppi2FkXJaz9Sb/h9tNKbcLL26Oz+LLHLs/VcG/qPFKPWufMVbyjOqq/YSIkuBRP
F8tjR8RIjG0kRckfwlVNWT1NwEnP+r54Zw0XH4cvmTSAhWa8a2CA9faak5zguNn4/HgwMAJNjWTY
4Cs8Y6sSNWqfkxGU/HMM0zpsCW91Thn8XfAv2j3avsuecMhyc+FW0uyu3+yob9VW5+QhiaIKwLxC
8gHi22Z7afGi5+JxcHiYU4/B+mnjYGWWRbuR0N5O6kZxOZkyo7RYyYSMWl8a7mXcX8Q+Ym1J5OKW
WTikYjrTRHDLZjIjICR6s/kic31JsxTBGm6CVGjVuhNwu49vS3SlJsyX2210Z/b9/Stss4iTB8c3
bWy2sBfXTSlzTpPJ5cBZmDau3QH8VJx4qUBHUkqDk5ck5m+QkRtp6IjOkMLo09pJHUGELY2J6H2X
FDpmZLZKCR1RIbMxYggWPZ8K2yghkEiuAY0AQHooF/10C8Kzo7OWLu1gR2kDtNPxwgY12Z20fYKe
rouXOgyc1irC6XZCT8zHT7xTjg+AyeeYsqLHj7drzOO46hQD1pDhcbGuVjQyaNPKIzIddpJAGnsv
XU+C4Z8PimwJCYpldiWjPUntHvpzxjCMcZPn5Lo8DHfEmWgf3VL5n0ZiYzPHx8M2TPY26bb9hPQA
VUMuHLxpFhlWzRnw+z2V1ybjpsTi86SGeSTJ2ko97lba6jpVE5nDx3hXIx3LswDMCdzLr4gSabgy
TZ5VG5TuXghEPEWkBzshVXzlWMEeIEvu6X0AK/bQOXEjC0W1kIvZe0t4hr7qkZmkvFJeOJ20cWBt
p+ypMeIfVmCPaAiDrazX7dKQDaTJ95N0XLJBJZe+k4ZIvUGKX0Em4AdviRhWvA5EWLyWLkTgeRDO
fMJ7AbLf4Xpjxsflc5gHtOQoHsuD0pEsU5SXy1NhKdemnxp8ZfJAncAfiUyEiBGUdRJx6MuzR4GA
ccxvYxxktcMVUg638JHfS3ncXDx+NQxBhtljdYwCS2vT43oH0RlM3FPjZJ3DHl2Br9LhZAPhennL
rH9OSZSsfVjcaVKHjNj+0rtRkJ4xJrbov5Ko+pcbDxSjQpZ5Bv0J+AFJ0MjCzNZSBoOmncOytOf5
vHMkKhSYogUQqb3sxJbX31Bi5ySr5gVhEPxG3Z7KuxYBbCeTpouRzD8mY2CgHT8U5xBtAjjG4k/G
mmM1uzxC1lte5qv4ef8A4iPehWMA79bWv01FWGOWSdFeFotwAUsp626XvTpzjEMGASBjI1dWbip5
WjJRyFUare9r/spbzuLyUyMZFVYzpFGBc27272PcKI4nIK4jFiA5cbugII/Cw9hp6ubjugIUvkP4
VvqR3t8OtQSzx+TZX4sRljBbVcjyOIeLKVWiDSFvzVe9tvapt0NWF+Hlxookjkb6UjdDC4DNG/XY
r/ut2e2rRlYMRczeUCFPhVu7tY+00nyc1EE3HvZkvvxpOhB/En66OfIuLMwHVMPFshc7k6hWr0Xn
CTj0xWYmSHxIW1JjY6fFTcGqh6x43kVzXygGjidpCJgdoCh3Pf7aM9P8oMTJSdgTHGSZwB0DFU09
5qH+oE00mBx+U0p3y5LxyQg+FQoBVdO0Xuax3Ixj7h3V0EfrRS5ZgA+IXP4MvMfJ8szyvfcACzam
x9tR+bP4vznNrg+Inp8aIwIpEy8mcKQIY5GQnQbj4RqffWuHtjxXypANHMcF+1upb/ZpkcgBkLQQ
G01cpDuuo/0iaT/J+RWQncJ1Nibmxjq91zr+kmQq4HKi4LtNGRuPUlG1P2VevOb/AJq/9Gj/AG/W
6PoqH6p5AYnqbPhU2y5Qj4kpuQjBVBDW6ClHP85kJhmaNx5u0q4hkDEPbQdbgUx/qVjyYeXPyIXc
krqsljtYAAWsfhXMeRgnMwgZ0JyCG3X1uem9ulBPDfkulNmP5JoyWwtEdR+aMw/WHqQK8LyJkiU6
mYXYbfwhqYR5/ISZEEmXAqq5XeYwzG3720e+kCZm2JcbGVEkisNLszv0Zh/NVt4rl8byoIcg+TkA
bXSQWbcDo1+4ih5RIAIhU/TrMUImkpaJfP8A5e6M6ZLSEGzR9CpBuASe6gm8gq0WNGVe58Xu7D9t
F+oYOPXMTIhmQtlvaZUIIB7G9hozNkwI8KDCgR1lH5jk9GboQfeKntIjGTkvv0bfdLywAlLSIGjV
dJ1RZIfKJ2ki4YjS3QFa33RlNg8JVgu0G+6371TZ+W882OGVI1iJEKgbVUN+EWqKCLKmyAuHE0kk
nypGpZiQQvQa1tki3jVvFInQ9pJH6r3Jd5ZEdyN6NuAHhAv2n21fPQ/IzZmFk+ZO87QzAeZISW1U
G1zUHC/0wmyHE/qAGCGV1EeJE3jPtlcdPcKtknC8RwEkOFxuMuLFkKXJBJMjqbHczEkkAim/BKGK
402Gys/jzMZgHpIFxulXN+dHx8kaxqQ4a77mBu3eapXLIqQRpHFsCxr5pUaAm+rW/TV75CGWZ1iQ
lg2m0i4F6P4j0ljiOR8osXmIvqAdOi/tr3HgMjwkTEdZRCt/kX+FgwMqeJq5XFXilnMcMKNNNLIE
RUA3FjoNttdaxkbjeYSPmMP6kIpBx45wtyfCpaSLcRY9ldn5b+m/pzOQbYGxZh0ngco9+8j5T9lc
/wDUfonL9OD63d9bhxG8klrOvcxX2U+PHkGtaWo2Neq5Ajbrq+vRJYmkg2ZG0QzJJ5saA7vLOu27
HqRQ87sQZCb7TuYHu7a3M6zDcrbkYXBrVQSWQnp7OytiBFwAyqjEAME09Ocu3GSypIvm4c+1mX8V
hoGX2gVZM6TB5HEcYMsc0jrorDVf5lNc8jkMe/He+7GO9e8xnrb3UUyqwuD4SL7r9lKy8YSleC0t
91Ri5JjGwi6O3Ueqg5HFx/rBFv8ANXFT8wr8u8+Jl9tqkhX/AAiC1g20sPebmhm2jGndBaNV2R+0
toWo6MAjZbw7R+inF2AJdkihkSAzr0NZL9SxP20Xx7Zy5Ua4W45DHaqqL3v2EdLUsjlC5XkudRcj
46infp31NwvE50kmaJCxXakqKGVdfEet9bdlZIyEZNG6n27rYiBkBKQiHqVZsePMxcWT64KrK28+
XroB/ZT3Dw+Ugymkk8oYpFha7OQfbpaheO5fhubhyDiZCzx7VRxYqVLmy7gwFulGLNlGBQLv5IsU
BsSV07a5jCMiDEx2Aoy6GKEQ0McgYjSr0Wk+EudkypJlSRbDaMI+0hT2++k/qCDGxhAIryujrd2N
2a2lyaOy45iwyYnDTSkAbiW2jTdooULQ3qH6fHxkJP5jtGoJ72OtNDOA2qPLBoyJ1ZLOaA47EVRY
zTNcAgm6kbSfD+6RfWoMoT8lj40ZQSlG3QIPD1Xbc691M/Vk+PCmPJLuKxxowVDZixY6adetV/B5
/HkZtkXkN1ZnALEgXNr9BagyDIYjJF9Gky4vItGQxWmXw/LCCXHnaJvO2rCokXbYdenbe1eZnpTk
5Dj4mP5XkYsIAJkAJkfxSE+0n7hW2Jyjjk/MxlGR4TtUJuaMMB4tq9NaYZ/N5DY4RZt+RIbRxbNj
M3QD2WNHjzjHKEDB3qbe2sqP6BLDMSKNo6O9AYmdwpy5csI0U9goQ38SBztq6f51J/yz9n9tcvHO
5ePIVdGjkNiUCjT20f8A5+38X3V0Xjbcx+19Q3uhv6ONVYfVuVAOWzUyN7xROCAwuoJQfLXPeV5K
STC/y3H8tILBTIfFISe7TQVbPXjclDz+c5VZcaV0jijUWYEqupv7T1qoYvHZbPPJJjqQw8s7rlo1
HzsD0vXjiiS+pd28UwTI8AyD4bidmQ+9lRreBXNgfjWnI4PItl+XPKuNtt5RW+oPS7AUZNi8IIwk
bs1xbSRri3fftrd2A4xTJKMh49IgCCQn7rt31ssZBuNXXhlBFooyUZuPlR4gRnWSPcC0q+K1tPE1
tKaYWVPk43+GVY8VY/KlDtfc1wSwY6imGTjwYGAyS4csmROqlto6BhqTrpaoUODxyrNj4oZXNjIS
CNNCEDHW3aQKXaDQh602REkA11FUZgcNi8tkLgRPbMnKnbY7VJHXd26amuuenvTmDwOGIMYb8hwP
qMlh45GAtf2D2CqB6D5ng15WWXkcuLHkYbcQSjYCzeEkNbaCBpqe2uoyyhGXcRY9vZ7PtosWOxyR
17fAIYt0Wn95tY9sq29y3qaaDHyF8vIjWVVswDC9j3ihJ8uGBYrsBtcbh27dbn76mgzIJpF8trhg
V1016im2kh2cLXY0LEKOfHx4gPJjAdiANNaLjRVX2Lp9nWtLbpWkbURCyD2mt38MVu2hAADAMilI
nUknxWxF7C17C9JPU0aS8VkROoZGQh79t6ebhvI/hB/TSH1TIy8ZOF08Bue4fqpmP74+YQHQ+S+d
cWbyMibHv4Edgv8Askg/dTQklVkHUDX3Up5PHmHJ5BjXo+4W9ovR3HzmSJkddrx6MP0UvLECRI3Y
pmIlgD6LfLUnZlxi8kPUD8SH5hWOFeMJEx8phcH2HpUoOw7fwnpUFvIfYP7pzeM/useq/HsoBsjI
67rMhV8pIF6u629wNz+ijQfzh3FbUIoHmbm+Yd/ZUmROY0Migs3Z7Paa8Q612coPLRDkCQnxxgj7
e+l73OncX/s/TU8ku7U9T19tDkEk/wAWn7aYAyRIuXTb0zz78NluXjabCyAq5MSnaxVejIf3h2Vf
4fVmMc7FaEyGPJm8nIlZleIFkvENy9XJtuI061zDHgkmmSGJd0kjBVHtNXHOjhwfTsOJYebjzxyB
+993iP31LyoY7o9vfMs/4Oq+GJkSncRDGLvM7K8ZublsGhxo1L2u0nTaO9r6ffXNfUPqBsnkY4xM
ZYMRx5ki6hmU9Eva9iOtMfVPq1sjEGDxjFYHAGVkDTexF/LQ/wDEaptgNO79NDxMEmvyddI7JnP5
MSfjxlwNZdD5JhzHqDkeVzZMh3KQHSGA6hEGij399B/USLYtbQ3Nu3S1Rs3X2aVG5vpVgjEAARAG
i5shc5NSVYuAl5CYvLATFDDYTPuUbt34df0CveS5p52UKw8yJ2CsFCsOz7qr2LkPDvCsVJWw1sOv
Wt0NzucGTtZr6663qaXFj8hyEDwp+aVKZiLU0bMDCMalxcOzMSx9tOvNi/dqqiSNnBjO4KNTe9vb
Tvzh/wA1qYxtt/D9EDdeqvnrl1fnstZUJihKuCL6sFXb07qr0HKZbZa40kqDGyLhtwG4AjWx7TVl
9XP/AP0OaoW5DDXstsW96qMyvJlxQR47DGY/mSHwWbqGB62p1pDgOCeqouHVi3RT8w3GcdBGYsZY
jE1irWLMG6lie2vfI8zGUGKNVBEo0FwQQR0tWj8dixyyHKyvOeYdJWBt/LelOUud9QIVnkkwrgK4
YLtXt07bVsIGMe7uKGUhI9varHPlPyHG5GYl4mjV47N2uBaw9mtVjI/v3QMxSL8tN3UBdLfbR0ss
GNiPFgMwhBALSnexZ9WalkpRppdhJRiSpPXWlxPdIbI5ScfmgsjxhkPz2vbscD9Yq5ekPXeSeMPE
Z8jzjEUnGItvZB+Dc37nUeyqNM5IKnoh8LjqpoVJpIpxIh2uDcEd9NGhQgtou6S58rymWRgEkAEa
3udrC/i9vfRmHlMAArWZbEH2iub8HzyeTE04LxnQ2PysO8VbeP5KCd2dZVCr1JNtPZeroRgcYAIP
+iQZSvJZl0XDmM+OjkWLat7SNK2klHnKOwAg/GkvC8zBNB9OrgSJe3tHsphJKirvLWHS/fXNykRl
KPirYRJAJRcmZiwE+a21rDsJ0+FVD1fzXEvhmFskKWN7EMLkfCj+RmJV3v16Vy/1JkefnFCfy4wW
alYORM5oxAFCqcvEhHAZyMnISHnHwv8ANWkwphkQyIu5lBADAWI1oLBJXJlB/GLj4f66jxYw9lXU
t8oPf2CmHHPEsGUsqAyOV2ORqhXuNOmb5SNAS5U47Yx2BZbEX0+ytCBIpjcX7we6t2FhcVo67xca
OOhpQqmKNXKflyeIfgc9fcfbV/8ASXGiLjRNInjyvGQw/B+Efrqn8HgryfJRYsosB45170XU/bXT
UdIwFFgFFgO4CkcmbC3fVW8DE5OQ6CgVJ9den+OhxTnYaLj5Ckb410SS5/d7G91UcJtAB1IFXD15
neZkQ46nwgF2Hu0FU++tO4pl8YuL7eSk54h85EAzAO26nwsg42UJldkkiF02W1J0sTcWFP8AEfF5
FcmXlnaSOEXhaM2UFlaQoLkXayG1+6kXGY2RNlTSxQjIXGVJJI21uCRGF23Ba7N0FezJkYgjkI8t
ixaNe1WQ7TdT0IPfT5YozjWn/KP3xHn4upY55Y50YhiBCZ7JyL0t3DOtMrJjdIYIQRDAGIJ6sXO4
lvbawoW+ov7zWEm+vU9a1J6n4CvAAUH068ZElyXNB7Lxj09prK0veRQOwGpArO21VLMewC5+6vFY
o3FiD9tFxxz3LRjRvl0017az/KuQdReFo1P4n8PX3605RNgChrBRbTpoKEyBFCCl5gYkPFn/ALgl
WPhTx3NidP005+lP/Lb7a1DdNbn2+ym3mJ3iserpVxd6KyetZPI9RZ0jm0RZbnu8C9aqk+VoZYiL
No1yb+y16J/qXzcqequTw4htCuqs3brGhNvtqjvJLISSxPfrVJk4bZMEWJO6sWZyuREQy47CMjaZ
XXqeyzURixxlRkzohd9QCOnvvVbjzMtV2iYsp/C2o++iPquQkATezWFgth1oJX0tkwG4XowAJMqu
mmdkq7ARKLAnaqi25hR+J6W5vlAcmCFY4jYKZHCjQD5R1sKg9O4GPk5+PizMJZpQ0hNtF2C+nfrX
RmxYjgrjneQi28DFWb4ra1RZMwBuDXFw56jf8FdwuJ8olIuIA0A3XG+UwsrHynjeJklvsdLHx203
J30qk3K21gQQdQdDpXZ+Yw1GJuK/mxL4ADucKeoMrdB31yz1FFM+UZ1jDwEhRNEhEZYDxDd+IqdC
afhzCY2Q8ni/EXBcH8kJgZrYswcgtEdJY79R+3uq7cWcObY6Euraqp06/wAV654GphxT8oZvL49X
kf8AcUbh8ewVZjyxiGmHj+SinjlIgwJEth1XVsN8WGRSWkgZToSDp8RVs4/mMJo9s8291uUezfeb
VQeBTlo478iIVP4UQkn/AGuymeRm+Wt2awHZ2VLy+RxyGgLpeFAPVX8XiZz3ZeyPjUn0TXmeXiXH
co17Cud56SycXl8my2WVmjRifmsLHavsvqal5rmmlJggN2Y20qHmHxhxIxsYSHyIgJJZD1N7tsX8
IJpXEwkPNuibzc8S2MGiQ8T5H1UP1D7Ig4LE+zWi55lfImZdFdmb2anQ0vxIDPLHEv4zY+7qfuoz
PZVlVIz4Ro3u7KZZUzfoyllkoIeLomMh09g0+ytDfXsNeRSomjnYT2NpW7spOmul9NdKWQXbfRMj
IGIOytnoXE0yc2QC7EQxn2Abm/VTnl5ZoYXaIX0NKfSMssOO0EjKRKRIkYILIGut2t03baecih8k
37BUmcEZO4dRQ7Lp8WUZYAIHeo3XI+QzpczNlkkPiTwWP30LZ+pA+FMuTw9nJ5LLYIFEjAmxOu07
e+pMZo14qbKM2NA+HMr4sTxiSeZ2+Ze26IuviFq6MYdsSGAIceS42SXfMEvIFj5qPh87y3kxZcr6
PFl/OMqpukWaFXMJQqQy3LbdKBlneRzJIxeRySSxuSTqSSe+ieUizICiZDQF8n/FGOHaShkHyuEA
CafhFL9bW7eytkCKOgjJw7D816e+tHNhes3H31pKdKwLU+9Gcfh8hyM4zIhNFHFcKSRZiwt8pFXd
8XDwotuLAkAJ12KAft61UfQaMuTkSDoyWPwI/bVuzi7Idtcnmzl/kSiSbaUemi7XAjD/ABRIRFzy
7mrrukHLz/mbR2f6qWGQg62Hd7a9zZG+ocNoVNQFyOhGvfV+GFuMBcTn5Dkzy8KKZjcXNgPvpruH
cKSGT97xX0sLD404uf8AQ0xSMVF/UmMH1zy5t1lW/wD5UdVlUVumi2vrVn/qTc+tuXB+XzUt7/Kj
qtaWt91PVSzYETfpcf6XrZJjbxfL2E1oQO2xGtveK1tvAVtB1v33rzryOweUlwM+HNhO4xG+395e
hW/uroHB+teKzwyZL/Qyj8MhupH8L1zJtqg7dSND3VkO5pAEUlerEDpSM3HhkDmhAoQqOPy8mGkW
MSXMSuv50sfN4zw8eyywjchypARCtxtOzbrI2vZS7G4pUULJK8siJ5cUjoscaldLrEoA+2lnpz1p
hcdxgxJ4ZWfHDbGQhtxYlttmtsGtScr6v4aZA8czoSLmNImLkm3zO2lSjHkibQCz6sugORilETlK
LtWLt6JNmcZxn1zPPjhpVbxj5QxHaVGlWVsjDwMSJwscEEguiqAosPYOtUnkvUEGRO0kK2LWuT39
9LSs2Y4lyJ3mUaIhJsB3ewe6qJ4zMRuLNqpI8mOKU7IiT6FXbJ9U4aKRAPNI7R0v76QZ/N5mUCLG
MHpbWhYMN7eHwr2KOg91EzY+yG/4hWRx44nRz4peTlZZvVhsEHx/KfSSFZF3bj45PxEfGiuZyUlx
1WNmIcgtr4SBSPJa7bu29hRcWPlOiGUiCMDQv8xH8v7athKUoHHGLvt0UhMYyE5ybzUvGK/1sPlq
zsG8KILlj3Cm2XwkySGTLlTFDa+WbPJb3XFB4mW+CWOLIUkYbfN/FY9dvdQ0+YzkliWc9S2prRxp
/ukANhU+6GXJx1MYmR0c0iPTUorkIMGQWWWV3IAG7ao06WsDW3F5kXHyxHy/MRWBkjlNxIv4k3Ds
NKDOw7bjtHZXhnuNbkdo/WKbHHjjoNK+KSZ5JdddlfODaNeUXMx7NgTgpsRXPkagqshO4DXT5tat
nJOpxd/eK5Fg8lmYLGTFyDEjqVe3aD2W7avvGc3HzHFqqm08VkmTtB7G+NQfyMPknHL5Rl6aFdb+
Ky2QlhNDWUfXUKl+pFAyVlLCMWYAkE3PULp30pYQmSMJLdXVS7kfIT8w062q4c/xLSwyRlbMBuT3
iqVJZ8grFGI7jSJSWtYa9e2m4SDBmBtYdXU3KjKOUkkgSBPRkwxjLO6AQnKxsBS7qqlR5QbxO+3U
Xv1qPLyRNHFGscSCAFVaNNrOCd15G/ER3mpMvEzsHj8aV4xBHmq3jWVS8qXVgskasSoFgdRQ+Epf
I3LF58cSmSWM9NgHiJt76Mi5qipFdqaeQSR2XERNAe3ervs5QxPwqNzRMsZsHI2hmKgnvHUd+l69
43CfLzooVF2Lgbe/XpSj2hzQJse4gCpNFZ/Rn+GzVx30M0R0P72j2+yrzJieA6ad9UbKibiubxSz
aBkLH2E7WtV7advLKH5l0NcjmgGccg0mH9l2f40kRyYZa45n2lVc+5qPy8+QHQNb3UCTpfr3d1M/
UR/xRY99KACSe62groYS+OB8FxudG3kZAOsn91uI5CALnTqe6nXlH9/9FJw5br2/AjSnF2/eP30x
TKL+pKlvXPL/APipb/ykqtRRySypDGC8khCoi6kkmwAq2f1HRW9bcqT0V1J+EaUm4PMjwOWxs1k3
pA+46agWOoHeKbcE2+Ls6tmF6F4vjcdcnn5fMySN5xkbaifzN1NvgKHzMfgnVTBxyIg3Eg3UhUNn
Zje4t1A6sOl6Fz/ULchlPI/i3E+ArdbdNj30ZWt0PynXWg4uYkSQuI33BlYOdWDoPy5bsCDIg03d
o7qGOYDoD5rZRf8Ad7Jli8VC7TNjcZGFgXc8s1yiLt37n3E9moA1t3UByXqR1hlx8ONI4EWzyWUF
gdPCiiwvRUHL4MsU8WyTGkmJDrC5VX3AhkIvbbu8W5tx6iqxLiSXB3LtZyWtc9v6Naz/ACHLUj6L
3xxFXf1WB1kCsLgOAb9160nWSMAgHaTbUaffTT07jRTcxiQyxCWMybpELBF8pRva7HT2VeOe5E5k
sXGzRY64kqNsjSJU8sAabCpYMB3hj8KLFG+Yi4D9VszbEy18FyGQgv0tc9KecbB+Qj3G0i+ta87w
kWFF5uO7y7WtIzADr0sBQXCY3IZ2WuLiuE03O0hsircC7fE20rcoMRUgNVZjN2lXon31EcSaHTvN
RBp8puhjgGjSH/qg9TUvI8Zi4kyq2cuZLEfHDEgCAga+Mubn4ULkZwkQ7CAlrbLVmHj3903A6UZ1
mXKYExixI1roopTj4xtDGNw/7xtX+3s+FDNMW8TNrUD5DEntHt61GXv8tWiQiGAAHgpbDIuSSfFS
u7djVD5jA9/srXU6DU+ypoo2HvP3VgJkaI2ERVlqQ7D5TWLDKT3DvopU79a9I0o/jB1JS/lagZaJ
Eoj8s6j20dxGe/FZ0eVEbpcLNH2Ol9R7+6gdzXtXhfS3fXpQxmJiQGIZbDJkjMTEi4Lrr3KQ406B
uhZe7XXpXMOYwJMDJkDr+RITsfaG2k/YR17DV44nmoeQ4nGkmv5q2hkI67lFvvr3NwMTkIvJZCwY
NcjrdR2e6uThynj5CDoaELvZ8I5OKJDXNdE+a50mPA/kHHWzNY3lYHc69V2jsv00o7j42+qXFyZm
hiknE2WIUF1WPc3mROOhA6KKT5EWyZkBIeJiB2aqaZ4WRktGcpCzyLZJQDYi2l/eRXTEIzJAFr1p
UeYC4WSc4NLVu1jSuxOyHzYCYy/5hn3ySPLK19630KdjfxHvo30cFl5qNpAD5alz2ar0NAcnnJIE
hjO7agQkD5VGtlPtqPinZJ3Zb7mFhY2J6XqPlQFsoRPRn81Xw5m6E5jQuyufqgYuWheCVHng12qb
3XtsaZ8HyIzsJXLbpFUJJrruUWv8aq0WPJOhlV1UnRQdb9mtR8ZyL8TywE3ghYhZwNRY9GFQZOPd
itFTGo/ULpYuRZnGQ0jPtl+hR/qNSrM3T/XSNWjubC57AD3VafUaQz4pmgZZUtuBBuCKqauzHwXI
7ba2o+Kf/wAgDqKKX+Sg2d+kgCFOkgGrAkHup1uj7zSvFhhePzCwYi5ZL9mvSrBaP96P7T+ymfIL
rfRR20d0R/U7j8jD9W5eTPCwx8zY+NJ1Eg2Ir26/Kwse34EVUV1CgKqIBYgjTX8XfWVlMOp81nbc
X06siJMb6ba5O/zejIbgqRa61vrKgQKTJu2+LtQDb91ZWUqbeqPdvt6LZVUtfITxaKUGh1tt2263
rUo6MuniOgHsBuLisrKX9f7Ih9bqyelsA47S8j5TiQr5UCi4YqbFn8BBAPZeg+eZ8iZ98flbOjGy
t/MTob+21/01lZXQ4nxtV3ZBmvYNo6r0+WrRmDc0sXTc5JHwvqfjS+N1jUiPwi9iR2j9dZWVSbXH
4JIev4qN5drKeo9laM5vuB0PWsrK9VeooSw1Ptrwtqe4VlZSZXdU2LKeIELc6FunsFGQx7yAKysp
8PtCmy6nzRQx+/pUMyBdL1lZR9yWLfVCuwqIvasrKAumxZF8bzOTgOoXx4+8O8XaSO41cOC9TQTB
ptpQYySGQPYLd722n41lZXO5fxuX1foutwPmo32sWu/BUXNyRkZk86iyyyM4HsJvWkU0sbnySVZ1
swHbWVlVi5ha7t2tqoZ2vK9te59F6uK4F2HXoRUsMbRup0BJPi7PdWVlSl+qZB3Vh43Aly4ZJcY3
2NYoF3NewZvsrMnjGmV5DEsgTS99rm3d7R3VlZS6v60VXZaHfSv+iAwZXAEbnwA2JJsLa9fspsnI
Y+PGFjhKtYXK27TbW1ZWVpuupp4JI+Vqej7LUyw5B8jHxFlmdgqIsd2ZmIAUbRcnXsroP/8Amknc
v2H9tZWVnf4u/gh77uj/AIL/2Q==

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.yestosavehomes.com/assets/calculate-your-tax.gif

R0lGODlh7gBMAOYAAMXHx/71lNnc3Pn2t/VoEnV4eSpwtISIiN7h4f/zibFmSOHk5PWvlJqadbOz
iPP089fXsPr4wqClpv31nu70+dfa2urs7NLV1evsutbk4JKVlWZqa0dJS/CXaVlbXeXnxJicnI+S
klFTVbG0tLm8vMjGkH+Dg87R0aapqtve315hYm5zc2BjZfr50p6hoZaammhsbfv1qqmsrfXxrOfp
6qp4eOLn1La5uv35scVZGq6xsvjxoWJmZ+XjrfXunlZZWm52VbS4pPvwgcDCw+Pl5lteYPCGN+DX
f62Olrm9s9rf0/nxlEtNT8vPvmpub1NWV5qhoLS2t09QUsDEvayvsKOnp7y+v9TY15SXl4mNjT9A
QkSCvbvR54iv1Zm722aYyRFfq93o88zd7VWNw3ekz6rG4eXo6JWYmMrNze7v70RFR9bY2fv94NnX
2MJtT+bfjsOepIeJZtTNzuDK0Xp9fff4+O7wy6+ym5uenmRoaeS5vv33pM/Ty/v7+wBUpf///yH5
BAAAAAAALAAAAADuAEwAAAf/gH+Cg4SFhoeIiYqLjI2Oj5CRjn2UlZaXmJmXdQ9pFmZERAs0mpaS
p6ipqqusrYylsKV1dZ40ogu4oaIPsa6+v8DBwo2xxX2cFra4uURmNJ/Kab3D1NXW18TGm53KCN65
zjQIF1NBd3cLRBbT2O3u77/anGnd3gi44QtXAEnnJRAfWkDgY8YMO3gIEypcJIubKHvfmoESgKbf
nSD/MLSw46CBnRZNzCyoA2uhyZMmt31agCCFyxT3dKU4Ue6Og4wRWrSIkLOBzwZsmoiSVgql0aPY
+jxY2VKAy4hExtW8WaJHjJwRYgyIsHVAizgl7AARKEBdSaRo0/p6IKCtU2+h/xCs4Wfz5psdOHji
2DFjwAyufnlGcBCHDRAMHwgaLKq2sWNJFtrCRFChYhAHN48smYCj844dMfb6xfF3gOmuPRxE+GdH
6EjGj2PLRlQhhQAEUzCXOCIkQIA9OCYsWbJjAl68PiLMiNE3cPMIHjuC3AV7tvXZURa0fSMkge8J
ARJ437xnSfm9MfAyJz3jb+kIYDGMhZBiwTpN1/PLBtEyxZ4AQgSYQG/h+YaDeT6kF0N6oJGmXGCm
dSQfBj2c0Ex1+mWIFB4ntITBgOGJl8AEQggn3B7GGZfeAD6IxlxoA8TQQxxAqDYDH6KQlImGPCI1
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
wjAcwzI8wzRcCcM2fMM4zAqBAAA7

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.yestosavehomes.com/assets/bottom-curve.gif

R0lGODlhEwMPAOYAAOnp6ePl6NDb7NPe7Nnh6c3a68jU3+bo6MbXylmOvkF8g97l6VyOeqC/2ARW
o3CbgoattvL2+eTm6QpaomKSblWJbuzy+Nbe6xNgmSdsmO3z9c7e7LzRzN/k6P7//lyOg9bd49je
6hpklObu6G2ZxEaBuPv8/Onw67rPwsvb2l6TuJq5oWeUdW6aeDV2pRZhpLPH2StwpGqYov7+/zd3
r7TLztvg5mOToiZtrTp5kZe5ype4yShtm6G71crU4sXS3aC9sqC6y/f5+Nne4aS91Tx6klCHhLXI
2l+QslGHhChuppSzzBdipN7j5ilvrGKShjp5pV+QhrnL3VyNcPX49ydtm12QsTR2r568sLHKzLPI
4luNb2KRZf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAAAAAAALAAAAAATAw8AAAf/gA4WXYSFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWm
p6iphRYOExuqsLGys7S1tre4ubq7vL2+mRsTTA2/xcbHyMnKy8zNzs+0DS80KtDW19jZ2tvc3d7G
KlckGRHf5ufo6err7O2yERkkMBg77vb3+Pn6+/zFOhhHCODIoaGfwYMIEypcuE9DEScACvQQAWEG
w4sYM2rcyFEWBBFEABAAUEJBlo4oU6pcyZJjDQUlAAQ4AACEEiMpWurcybOnz2spksQAAWAAAAAd
tPD4wMHDz6dQo0qdCsoDhw9VDCAVcFTAAgNQGGChQrWs2bNoowoBwsCFVgBehEUaBdAkwZYHKEyk
3cu3r99+JlA8mJLAxlECRg8ICHB4wA8kFFqsQDDixN/LmDNrVnZiBIIVLShYkTJXMeMQF45KKMAY
gI8lMp6wqMCltu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LMPr8Aiyo0g
Q1a3Rn00EAA7

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.yestosavehomes.com/assets/background.gif

R0lGODlhKgARALMAAN3i6Nbe69He7d/k6M3a697l6dje6uTm6dPe7Nnh6ebo6OPl6NDb7Onp6QAA
AAAAACH5BAAAAAAALAAAAAAqABEAAATRsLXDlkxBUtuwrlc2gZ24SY1haMQhqaybrlP70oc9owuj
SIiEpPdrBIc+oLBBVCKLxmUz+nQyk9Rr8cgcYAUAibcIFn/DjbGknP4yCpICA/WOzyX1hpwO198b
eXIIEgokCYMNhRyHhIaIihePFYuSlI2WiY6XkSg5HAYmBJ+hoyylNRw7NTIwqzcxr66qWlZTXLZS
WLdYWbhVvbq5W1J7eH3FgMd/gcvKdHkAd4V90Y3U0tDY15WcmZiQHdzhl9+a3t3gjOfjsKo5rDg6
re+x9BEAOw==

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.yestosavehomes.com/components/print/printer-friendly.js

/**=0A=
 * @author Michael Pih (mpih@getactive.com)=0A=
 * @version $Id: printer-friendly.js,v 1.2 2009/08/13 05:53:20 mpih Exp $=0A=
 **/=0A=
=0A=
=0A=
/**=0A=
 * Redirects or pops open a new window to the printer-friendly mode of =
the page. =0A=
 * The original request URI and query string are preserved.=0A=
 *=0A=
 * Example usages:=0A=
 *     <a href=3D"javascript:doPrinterFriendly()">Printable View</a>=0A=
 *    or =0A=
 *     <a =
href=3D"javascript:doPrinterFriendly('pf_guest_list')">Printable View</a>=0A=
 *=0A=
 * @param target A target window, defaults to 'print'=0A=
 */=0A=
function doPrinterFriendly(target) {=0A=
  var requestURL  =3D window.location.href.split("#")[0].split("?")[0];=0A=
  var queryString =3D window.location.search.substring(1);=0A=
  var bookmark =3D window.location.hash.substring(1);=0A=
=0A=
  var pfQueryString =3D "";=0A=
  if (queryString !=3D "") {=0A=
    var vars =3D queryString.split("&");=0A=
    for (var i=3D0;i<vars.length;i++) {=0A=
      var pair =3D vars[i].split("=3D");=0A=
      if (pair[0] =3D=3D "print") {=0A=
        // Ignore the "print" request parameter.=0A=
      } else {=0A=
        // Append the request parameter to the query string.=0A=
        if (i > 0) {=0A=
          pfQueryString +=3D "&";=0A=
        }=0A=
        pfQueryString +=3D pair[0] + "=3D" + pair[1];=0A=
      }=0A=
    }=0A=
    pfQueryString +=3D "&";=0A=
  }=0A=
=0A=
  // Redirect to the printer-friendly mode of the page.=0A=
  pfQueryString +=3D "print=3Dt";=0A=
=0A=
  var pfRequestURL =3D requestURL + "?" + pfQueryString;=0A=
  if (bookmark !=3D "") {=0A=
    pfRequestURL +=3D "#" + bookmark;=0A=
  }=0A=
=0A=
  if (target =3D=3D null) {=0A=
    target =3D 'print';=0A=
  }=0A=
  window.open(pfRequestURL, target);=0A=
=0A=
  return;=0A=
}=0A=

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.yestosavehomes.com/components/form/form.js

/**=0A=
 * $Source: =
/home/cvs/cvsroot/cms/integration/web/components/form/form.js,v $=0A=
 * $Author: mami $=0A=
 * $Revision: 1.36 $=0A=
 * $Date: 2009/10/15 22:37:13 $=0A=
 **/=0A=
=0A=
var MONTH_LENGTH =3D =0A=
  new Array(0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);=0A=
=0A=
var RESERVED_NAMES =3D =0A=
  new Array('totalcomments', 'lastcommentdate', 'firstcommentdate', =
'length');=0A=
=0A=
// CAPTCHA - begin=0A=
=0A=
/**=0A=
 * Issues a new image CAPTCHA challenge.=0A=
 */=0A=
function changeCaptcha(captchaType) {=0A=
  var img =3D document.getElementById("captcha-image");=0A=
  if (img) {=0A=
    img.style.display =3D '';=0A=
=0A=
    var now =3D new Date();=0A=
    var millis =3D Date.parse(now);=0A=
    img.src =3D "/system/servlet/captcha?nocache=3D" + millis;=0A=
  }=0A=
=0A=
  var audioPlayer =3D document.getElementById('captcha-audio');=0A=
  if (audioPlayer) {=0A=
    audioPlayer.style.display =3D 'none';=0A=
  }=0A=
=0A=
  if (window.event) {=0A=
    window.event.returnValue =3D false;=0A=
  } =0A=
  =0A=
  return false;=0A=
}=0A=
=0A=
/**=0A=
 * Issues a new audio CAPTCHA challenge.=0A=
 */=0A=
function changeAudioCaptcha() {=0A=
=0A=
  var img =3D document.getElementById("captcha-image");=0A=
  if (img) {=0A=
    img.style.display =3D 'none';=0A=
  }=0A=
=0A=
  var audioPlayer =3D document.getElementById('captcha-audio');=0A=
  if (audioPlayer) {=0A=
    audioPlayer.style.display =3D '';=0A=
=0A=
    var now =3D new Date();=0A=
    var millis =3D Date.parse(now);=0A=
    // For the inline audio player, we need the fully-qualified URL to =
the Captcha service.=0A=
    var captchaURL =3D location.protocol + '//' + location.host + =
'/system/servlet/captcha?type=3Dsound&nocache=3D' + millis;=0A=
=0A=
    // Use a different audio player depending on the browser.=0A=
    //   - Apple QuickTime for Opera and Safari.=0A=
    //   - Windows Media Player for everything else.=0A=
    if (YAHOO.env.ua.opera || YAHOO.env.ua.webkit) {=0A=
      audioPlayer.innerHTML =3D '<OBJECT'=0A=
	+ ' CLASSID=3D"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"'=0A=
	+ ' WIDTH=3D"160" HEIGHT=3D"50"'=0A=
	+ ' CODEBASE=3D"http://www.apple.com/qtactivex/qtplugin.cab">'=0A=
	+ '<PARAM name=3D"SRC" value=3D"' + captchaURL + '" /> ' =0A=
	+ '<PARAM name=3D"AUTOPLAY" VALUE=3D"true">'=0A=
	+ '<PARAM name=3D"CONTROLLER" VALUE=3D"false">'=0A=
	+ '<PARAM name=3D"VOLUME" VALUE=3D"100">'=0A=
	+ '<PARAM name=3D"ENABLEJAVASCRIPT" VALUE=3D"true">'=0A=
	+ '<PARAM name=3D"TYPE" VALUE=3D"audio/wav">'=0A=
	+ '<embed classid=3D"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"' =0A=
	+ ' name=3D"sound" id=3D"sound"' =0A=
	+ ' src=3D"' + captchaURL + '"' =0A=
	+ ' pluginspage=3D"http://www.apple.com/quicktime/download/"'=0A=
	+ ' volume=3D"100" enablejavascript=3D"true" '=0A=
	+ ' type=3D"audio/wav" width=3D"160" height=3D"50" autostart=3D"true"'=0A=
	+ '> </embed>'=0A=
	+ '</OBJECT>';=0A=
=0A=
    } else {=0A=
=0A=
      audioPlayer.innerHTML=3D'<OBJECT'=0A=
        + ' CLASSID=3D"CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"'=0A=
        + ' WIDTH=3D"160" HEIGHT=3D"50"'=0A=
        + ' =
CODEBASE=3D"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp=
2inf.cab#Version=3D5,1,52,701"'=0A=
        + ' STANDBY=3D"Loading Microsoft=AE Windows=AE Media Player =
components..."'=0A=
        + ' type=3D"application/x-oleobject" align=3D"middle">'=0A=
        + '<PARAM name=3D"FileName" value=3D"' + captchaURL + '" />'=0A=
        + '<PARAM name=3D"AutoStart" value=3D"True" />'=0A=
        + '<PARAM name=3D"ShowStatusBar" value=3D"True" />'=0A=
        + '<PARAM name=3D"ShowPositionControls" value=3D"False">'=0A=
        + '<PARAM name=3D"Volume" value=3D"1">'=0A=
        + '<PARAM name=3D"Mute" value=3D"False">'=0A=
        + '<PARAM name=3D"DefaultFrame" value=3D"mainFrame" />'=0A=
        + '<embed id=3D"captcha_embed" type=3D"application/x-mplayer2"'=0A=
        + ' =
pluginspage=3D"http://www.microsoft.com/Windows/MediaPlayer/"'=0A=
        + ' width=3D"160" height=3D"50" showstatusbar=3D"true"'=0A=
        + ' src=3D"' + captchaURL + '"></embed>'=0A=
        + '<br /><a href=3D"' + captchaURL + '" target=3D"_blank" =
title=3D"Opens a new window">Click here for standalone player</a>'=0A=
        + '</object>';=0A=
    }=0A=
  }=0A=
=0A=
  if (window.event) {=0A=
    window.event.returnValue =3D false;=0A=
  } =0A=
  =0A=
  return false;=0A=
}=0A=
=0A=
function validateCaptcha(formName) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { return true; }=0A=
  =0A=
  var captcha =3D form.elements["captcha"];=0A=
  =0A=
  if (! captcha) { return true; }=0A=
  =0A=
  RPCHandler.setResponseHandler("CAPTCHA_VALID", =0A=
    new Function("handleValidCaptcha('" + formName + "')"));=0A=
  RPCHandler.setResponseHandler("CAPTCHA_INVALID", =0A=
    new Function("handleInvalidCaptcha('" + formName + "')"));=0A=
    =0A=
  RPCHandler.submit("/system/actions/captcha-verify.jsp?answer=3D" + =0A=
    captcha.value);=0A=
    =0A=
  if (window.event) {=0A=
    window.event.returnValue =3D false;=0A=
  }=0A=
  =0A=
  return false;=0A=
}=0A=
=0A=
function handleValidCaptcha(formName) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { return; }=0A=
=0A=
  form.submit();=0A=
}=0A=
=0A=
function getCaptchaType() {=0A=
  var img =3D document.getElementById("captcha-image");=0A=
  var audioPlayer =3D document.getElementById('captcha-audio');=0A=
=0A=
  var type =3D null;=0A=
  if (img && img.style.display !=3D 'none') {=0A=
    type =3D 'image';=0A=
  } else if (audioPlayer && audioPlayer.style.display !=3D 'none') {=0A=
    type =3D 'audio';=0A=
  } else {=0A=
    throw('Invalid captcha type.');=0A=
  }=0A=
=0A=
  return type;=0A=
}=0A=
=0A=
function handleInvalidCaptcha(formName) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { return; }=0A=
=0A=
  var captcha =3D form.elements["captcha"];=0A=
  if (! captcha) { return; }=0A=
=0A=
=0A=
  var captchaType =3D getCaptchaType();=0A=
=0A=
  if (captchaType =3D=3D 'audio') {=0A=
    alert("Your answer to the challenge does not match the audio sample. =
" +=0A=
          "Please try again.");=0A=
    changeAudioCaptcha();=0A=
  }=0A=
=0A=
  if (captchaType =3D=3D 'image') {=0A=
    alert("Your answer to the challenge does not match the image. " +=0A=
          "Please try again.");=0A=
    changeCaptcha();=0A=
  }=0A=
=0A=
  captcha.value =3D '';=0A=
  =0A=
  try {=0A=
    captcha.focus();=0A=
  } catch (e) {}=0A=
=0A=
  // Make sure submit buttons are enabled if an invalid CAPTCHA answer=0A=
  // prevented a form submit.=0A=
  toggleSubmitButtons(false);=0A=
}=0A=
=0A=
// CAPTCHA - end=0A=
=0A=
=0A=
function isLeapYear(year){=0A=
  return (year % 4 =3D=3D 0 && ((year % 100 !=3D 0) || (year % 400 =
=3D=3D 0)));=0A=
}=0A=
=0A=
function isButtonGroup(element) {=0A=
=0A=
  return (! element.tagName && element.length);=0A=
}=0A=
=0A=
function isSelect(element) {=0A=
  return (element.type =3D=3D "select-one");=0A=
}=0A=
=0A=
function check4KLengths(formName) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  =0A=
  if (! form) { return; }=0A=
=0A=
  var elements =3D form.elements;=0A=
=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
=0A=
    if (element.name =3D=3D "body" || element.id =3D=3D "body") { =
continue; }=0A=
=0A=
    if (element.tagName =3D=3D 'INPUT' && element.type =3D=3D "hidden") {=0A=
      continue;=0A=
    }=0A=
=0A=
    if (! element.value) {=0A=
      continue;=0A=
    }=0A=
=0A=
    if (element.value.length > 4000) {=0A=
      alert("The text of field '" + element.name + =0A=
	    "' is longer than the limit of 4000 characters " +=0A=
	    "(current width " + element.value.length + ")");=0A=
      element.focus();=0A=
      if (window.event) {=0A=
		window.event.returnValue =3D false;=0A=
      }=0A=
      return false;=0A=
    }=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
=0A=
/**=0A=
 * Validates a form for duplicate fields. Form fields includes=0A=
 * WYSIWYG editor fields.=0A=
 *=0A=
 * @param form The form=0A=
 * @param element The form field=0A=
 * @param name The name of the field=0A=
 * @return false if a dupe field is found, otherwise true=0A=
 */=0A=
function checkDupeFieldName(element, name, form) {=0A=
  if (! form) {=0A=
    form =3D element.form;=0A=
  }=0A=
=0A=
  if (form) {=0A=
=0A=
    // Search for a form field with the same name.=0A=
    // Note: form.elements[name] did not work for radio buttons,=0A=
    //       so instead, we iterate over each form element.=0A=
    var testElement;=0A=
    var fields =3D form.elements;=0A=
    for (var i=3D0; i<fields.length; i++) {=0A=
      if (fields[i].name && fields[i].name =3D=3D name) {=0A=
        testElement =3D fields[i];=0A=
        break;=0A=
      }=0A=
    }=0A=
=0A=
    if (! testElement) {=0A=
      // Check for WYSIWYG editor.=0A=
      testElement =3D form.document.getElementById(name);=0A=
    }=0A=
=0A=
    if (testElement && testElement.name && testElement !=3D element) {=0A=
      if ((element.type =3D=3D "radio" || element.type =3D=3D =
"checkbox") && element.type =3D=3D testElement.type) {=0A=
        // Exceptions:=0A=
        // Radio buttons can share names with radio buttons.=0A=
        // Checkboxes can share names with checkboxes.=0A=
      } else {=0A=
        alert("The name '" + name + "' has already been applied to =
another " +=0A=
              "form element.  Please choose another name.");=0A=
        return false;=0A=
      }=0A=
    }=0A=
    =0A=
    if (isNameReserved(name)) {=0A=
      alert("You can't use a field name of '" + name + "'");             =0A=
      return false;=0A=
    }=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function isNameReserved(name) {=0A=
  for (var i=3D0; i<RESERVED_NAMES.length; i++) {=0A=
    if (name.toLowerCase() =3D=3D RESERVED_NAMES[i].toLowerCase()) {=0A=
      return true;=0A=
    }=0A=
  }=0A=
  return false;=0A=
}=0A=
 =0A=
=0A=
function checkValue(formName, elementName, message) {=0A=
=0A=
  var element =3D document.forms[formName].elements[elementName];=0A=
=0A=
  if (! element) {=0A=
    alert("Could not find element " + elementName + " in form " + =
formName);=0A=
    return;=0A=
  }=0A=
=0A=
  var isGroup =3D isButtonGroup(element);=0A=
  if (isGroup) {=0A=
    var value =3D getCheckedValue(elementName);=0A=
  } else {=0A=
    if (isSelect(element)) {=0A=
      var value =3D getSelectedValue(formName, elementName);=0A=
    } else {=0A=
      var value =3D element.value;=0A=
    }=0A=
  }=0A=
  if (! value || value =3D=3D "" ) {=0A=
    if (message !=3D "") {=0A=
      alert(message);=0A=
    }=0A=
    if (! isGroup && (! element.type || (element.type !=3D "hidden"))) {=0A=
      element.focus();=0A=
    }=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;=0A=
  }=0A=
  return true;=0A=
}=0A=
=0A=
function checkIntRange(formName, elementName, min, max, message) {=0A=
=0A=
  intPattern =3D /^\d+$/;=0A=
=0A=
  var element =3D document.forms[formName].elements[elementName];=0A=
  if (! element) {=0A=
    alert("Could not find element " + elementName + " in form " + =
formName);=0A=
    return;=0A=
  }=0A=
=0A=
  var value =3D element.value;=0A=
=0A=
  if (! intPattern.exec(value)) {=0A=
    if (message !=3D "") {=0A=
      alert(message);=0A=
    }=0A=
    element.focus();=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;=0A=
  }=0A=
=0A=
  if (value < min || value > max) {=0A=
    if (message !=3D "") {=0A=
      alert(message);=0A=
    }=0A=
    element.focus();=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkEmailValue(s) {=0A=
=0A=
   var emailPattern =3D /^.+@.+\..{2,}$/;=0A=
   if (! emailPattern.test(s)) { =0A=
     return false;=0A=
   }=0A=
=0A=
   var illegalChars=3D /[\(\)\<\>\,\;\:\\\/\"\ \[\]]/=0A=
   if (s.match(illegalChars)) {=0A=
      return false;=0A=
   }=0A=
=0A=
   return true;=0A=
} =0A=
=0A=
function checkEmail(formName, elementName, message) {=0A=
=0A=
  return checkFunction(formName, elementName, message, checkEmailValue);=0A=
}=0A=
=0A=
=0A=
function checkFileName(formName, elementName, fileType) {=0A=
=0A=
   if (! checkPattern(formName, elementName,=0A=
      "The " + fileType + " must begin with a letter or digit", =0A=
		      /^[a-z0-9A-Z]/)) {=0A=
     return false;=0A=
   }=0A=
=0A=
   return checkPattern(formName, elementName,=0A=
      "The " + fileType + =0A=
      " can only contain letters, digits, dashes and underscores", =0A=
		       /^[a-z0-9A-Z\-_]+$/);=0A=
}=0A=
=0A=
function checkImageFileName(formName, elementName, fileType) {=0A=
=0A=
  if (!checkFileName(formName, elementName, fileType)) {=0A=
    return;=0A=
  }=0A=
=0A=
  if (! checkPattern(formName, elementName,=0A=
		     "The " + fileType + =0A=
		     " filename must end with '.jpg', '.jpeg', '.gif' or '.png'", =0A=
		     /^(.*)(.(gif|jpg|jpeg|png))$/, true)) {=0A=
    return;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkDate(formName, elementName, message) {=0A=
=0A=
  var datePattern =3D /^(0?\d|\d\d)\/(0?\d|\d\d)\/(\d\d\d\d)$/;=0A=
=0A=
  return checkPattern(formName, elementName, message, datePattern);=0A=
}=0A=
=0A=
function checkInt(formName, elementName, message) {=0A=
=0A=
  var intPattern =3D /^\d+$/;=0A=
=0A=
  return checkPattern(formName, elementName, message, intPattern);=0A=
}=0A=
=0A=
function checkNum(formName, elementName, message) {=0A=
=0A=
  var numPattern =3D /^(\d+(\.\d*)?|\.\d+)$/;=0A=
=0A=
  return checkPattern(formName, elementName, message, numPattern);=0A=
}=0A=
=0A=
function checkRelativeURL(formName, elementName, message) {=0A=
  var pathPattern =3D /\/([a-zA-Z0-9_?&=3D%,\-\.\/]*$)/;=0A=
=0A=
  return checkPattern(formName, elementName, message, pathPattern);=0A=
}=0A=
=0A=
function checkURL(formName, elementName, message) {=0A=
=0A=
  var urlPattern =3D =
/^(ftp|https?):\/\/(?:[a-zA-Z0-9](?:[-a-z-A-Z0-9]*[a-zA-Z0-9])?)+\b(?:\d+=
)?(?:\/[^;"'<>()\[\]{}\s\x7f-\xff]*(?:[.,?]+[^;"'<>()\[\]{}\s\x7f-\xff]+)=
*)?/;=0A=
=0A=
  return checkPattern(formName, elementName, message, urlPattern);=0A=
}=0A=
=0A=
function checkTime(formName, elementName, message) {=0A=
=0A=
  var timePattern =3D /\d{1,2}:\d\d\ ([aA][mM]|[pP][mM])/;=0A=
=0A=
  return checkPattern(formName, elementName, message, timePattern);=0A=
}=0A=
=0A=
function checkPattern(formName, elementName, message, pattern, =
ignoreCase) {=0A=
=0A=
  var element =3D getElement(formName, elementName);=0A=
  if (element =3D=3D null) { =0A=
    alert("Element " + elementName + " not found.");=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;  =0A=
  }=0A=
=0A=
  var value =3D element.value;=0A=
  if (ignoreCase) {=0A=
    value =3D value.toLowerCase();=0A=
  }=0A=
=0A=
  if (! pattern.exec(value)) {=0A=
    alert(message);=0A=
    element.focus();=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkFunction(formName, elementName, message, f) {=0A=
=0A=
  var element =3D getElement(formName, elementName);=0A=
  if (element =3D=3D null) { =0A=
    alert("Element " + elementName + " not found.");=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;  =0A=
  }=0A=
=0A=
  if (element.tagName =3D=3D "INPUT" && element.type =3D=3D "hidden") {=0A=
    return true;=0A=
  }=0A=
=0A=
  var value =3D element.value;=0A=
=0A=
  if (! f(value)) {=0A=
    alert(message);=0A=
    element.focus();=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
// Function that checks that a pair of form elements is either both=0A=
// set or both unset.=0A=
=0A=
function checkValuePair(formName, elementOne, elementTwo, message) {=0A=
=0A=
  var element1 =3D document.forms[formName].elements[elementOne];=0A=
  var element2 =3D document.forms[formName].elements[elementTwo];=0A=
=0A=
  if (! element1) {=0A=
    alert("Could not find element " + elementOne + " in form " + =
formName);=0A=
    return;=0A=
  }=0A=
  if (! element2) {=0A=
    alert("Could not find element " + elementTwo + " in form " + =
formName);=0A=
    return;=0A=
  }=0A=
=0A=
  if (isButtonGroup(element1)) {=0A=
    var value1 =3D getCheckedValue(elementOne);=0A=
  } else {=0A=
    if (isSelect(element1)) {=0A=
      var value1 =3D getSelectedValue(formName, elementOne);=0A=
    } else {=0A=
      var value1 =3D element1.value;=0A=
    }=0A=
  }=0A=
  if (isButtonGroup(element2)) {=0A=
    var value2 =3D getCheckedValue(elementTwo);=0A=
  } else {=0A=
    if (isSelect(element2)) {=0A=
      var value2 =3D getSelectedValue(formName, elementTwo);=0A=
    } else {=0A=
      var value2 =3D element2.value;=0A=
    }=0A=
  }=0A=
  if ((value1 =3D=3D "" && value2 !=3D "") || (value1 !=3D "" && value2 =
=3D=3D "")) {=0A=
    alert(message);=0A=
    if (value1 =3D=3D "") {=0A=
      element1.focus();=0A=
    } else {=0A=
      element2.focus();=0A=
    }=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return false;=0A=
  }=0A=
  return true;=0A=
}=0A=
=0A=
function getCheckedValue(elementName, elements) {=0A=
  =0A=
  if (! elements) {=0A=
    elements =3D document.getElementsByName(elementName);=0A=
  }=0A=
=0A=
  for (i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements.item(i);=0A=
    if (element.checked) {=0A=
      return element.value;=0A=
    }=0A=
  }=0A=
  return "";=0A=
}=0A=
=0A=
function getCheckedValues(elementName) {=0A=
=0A=
  var elements =3D document.getElementsByName(elementName);=0A=
  var values =3D new Array();=0A=
  var valueCount =3D 0;=0A=
  for (i =3D 0; i < elements.length; i++) {=0A=
    if (elements.item(i).checked) {=0A=
      values[valueCount++] =3D elements.item(i).value;=0A=
    }=0A=
  }=0A=
  return values;=0A=
}=0A=
=0A=
function getSelectedValue(formName, elementName) {=0A=
  =0A=
  var element =3D document.forms[formName].elements[elementName];=0A=
  if (element.selectedIndex !=3D -1) {=0A=
    return element.item(element.selectedIndex).value;=0A=
  }=0A=
  return "";=0A=
}=0A=
=0A=
// form data takes the form [ [elementName, whichTest, errorMessage], =
... ]=0A=
// valid tests are "notnull" and "date"=0A=
=0A=
function checkValues(formName, formData) {=0A=
=0A=
  for (i =3D 0; i < formData.length; i++) {=0A=
=0A=
    var elementData =3D formData[i];=0A=
    var elementName =3D elementData[0];=0A=
    var whichTest =3D elementData[1];=0A=
    var errorMessage =3D elementData[2];=0A=
=0A=
    if (whichTest =3D=3D "notnull") {=0A=
=0A=
      if (! checkValue(formName, elementName, errorMessage)) =0A=
        return false; =0A=
    }=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function getElement(formName, elementName, ignoreCase) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { =0A=
    alert("No such form " + formName);=0A=
    return null;=0A=
  }=0A=
=0A=
  var element =3D null;=0A=
  if (! ignoreCase) {=0A=
    element =3D form.elements[elementName];=0A=
  } else {=0A=
    elementName =3D elementName.toLowerCase();=0A=
    for (var i =3D 0; i < form.elements.length; i++) {=0A=
      if (form.elements[i].name =3D=3D elementName) {=0A=
	element =3D form.elements[i];=0A=
	break;=0A=
      }=0A=
    }=0A=
  }=0A=
=0A=
  if (! element) { =0A=
    alert("No such element " + elementName);=0A=
    return null;=0A=
  }=0A=
=0A=
  return element;=0A=
}=0A=
=0A=
function getValue(formName, elementName) {=0A=
=0A=
  var element =3D getElement(formName, elementName);=0A=
  if (element =3D=3D null) { return; }=0A=
=0A=
  if (element.tagName =3D=3D "SELECT") {=0A=
    return getSelectedValue(formName, elementName);=0A=
  }=0A=
=0A=
  if (element.length) {=0A=
    return getCheckedValue(elementName, element);=0A=
  }=0A=
=0A=
  return element.value;=0A=
}=0A=
=0A=
function setValue(formName, elementName, value) {=0A=
=0A=
  var element =3D getElement(formName, elementName);=0A=
  if (element =3D=3D null) { return; }=0A=
=0A=
  if (element.length && element.tagName !=3D "SELECT") {=0A=
    setCheckedValue(element, value);=0A=
    return;=0A=
  }=0A=
=0A=
  if (element.tagName =3D=3D "SELECT") {=0A=
    setSelectedValue(element, value);=0A=
  }=0A=
=0A=
  element.value =3D value;=0A=
}=0A=
=0A=
function setCheckedValue(elements, value) {=0A=
  =0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
    element.checked =3D (element.value =3D=3D value);=0A=
  }=0A=
}=0A=
=0A=
function setSelectedValue(element, value) {=0A=
  =0A=
  var options =3D element.options;=0A=
  for (var i =3D 0; i < options.length; i++) {=0A=
    var option =3D options[i];=0A=
    option.selected =3D (option.value =3D=3D value);=0A=
  }=0A=
}=0A=
=0A=
function setCheckedValues(formName, elementName, values) {=0A=
=0A=
  var element =3D getElement(formName, elementName);=0A=
  if (element =3D=3D null) { return; }=0A=
=0A=
  var elements =3D element;=0A=
  if (! element.length) {=0A=
    elements =3D new Array();=0A=
    elements[0] =3D element;=0A=
  }=0A=
=0A=
  for (var i =3D 0; i < values.length; i++) {=0A=
    var value =3D values[i];=0A=
    for (var j =3D 0; j < elements.length; j++) {=0A=
      var element =3D elements[j];=0A=
      if (element.value =3D=3D value) element.checked =3D true;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function focusElement(formName, elementName, selectAll) {=0A=
=0A=
  if (! elementName) { return; }=0A=
=0A=
  var element =3D getElement(formName, elementName);=0A=
  if (element =3D=3D null) { return; }=0A=
=0A=
  element.focus();=0A=
  if (selectAll)=0A=
    element.select();=0A=
}=0A=
=0A=
function Validator(type, required) {=0A=
=0A=
  this.type =3D type;=0A=
  this.required =3D required;=0A=
=0A=
  this.validate =3D validateValue;=0A=
  this.checkType =3D checkType;=0A=
  this.checkLength =3D checkLength;=0A=
  this.checkChars =3D checkChars;=0A=
  this.checkRange =3D checkRange;=0A=
  this.toString =3D function() {=0A=
=0A=
    var s =3D "";=0A=
    var i =3D 0;=0A=
=0A=
    for (var name in this) {=0A=
      var value =3D this[name];=0A=
      if (! value || value instanceof Function) { continue; }=0A=
      if (i++ > 0) { s +=3D ";"; }=0A=
      s +=3D name + ":" + value;=0A=
    }=0A=
=0A=
    return s;  =0A=
  };=0A=
}=0A=
=0A=
function validateValue(value) {=0A=
=0A=
  if (value =3D=3D "") {=0A=
    if (this.required) {=0A=
      this.message =3D "A value is required for the field '" + =
this.label + "'";=0A=
      return false;=0A=
    } else {=0A=
      return true;=0A=
    }=0A=
  }=0A=
=0A=
  switch (this.type) {=0A=
    case "text":=0A=
      if (! this.checkLength(value)) { return false; }=0A=
      if (! this.checkChars(value)) { return false; }=0A=
      break;=0A=
    case "integer":=0A=
      if (! this.checkType(value)) { return false; }=0A=
      var intValue =3D parseInt(value);=0A=
      if (! this.checkRange(intValue)) { return false; }=0A=
      break;=0A=
    case "number":=0A=
      if (! this.checkType(value)) { return false; }=0A=
      var numValue =3D parseFloat(value);=0A=
      if (! this.checkRange(numValue)) { return false; }=0A=
      break;=0A=
    case "date":=0A=
      if (! this.checkType(value)) { return false; }=0A=
      break;=0A=
    case "email":=0A=
      if (! this.checkType(value)) { return false; }=0A=
      break;=0A=
    case "filename":=0A=
      if (! this.checkType(value)) { return false; }=0A=
      break;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkType(value) {=0A=
=0A=
  switch (this.type) {=0A=
=0A=
    case "integer":=0A=
=0A=
      var pattern =3D /^\d+$/;=0A=
      if (! pattern.exec(value)) {=0A=
        this.message =3D "'" + value + "' is not a valid integer.";=0A=
        return false;=0A=
      }=0A=
      break;=0A=
=0A=
    case "number":=0A=
=0A=
      var numPattern =3D /^(\d+(\.\d*)?|\.\d+)$/;=0A=
=0A=
      if (! numPattern.exec(value)) {=0A=
        this.message =3D "'" + value + "' is not a valid number.";=0A=
        return false;=0A=
      }=0A=
=0A=
      if (this.decimalPlaces) {=0A=
=0A=
	if (this.decimalPlaces > 0) {=0A=
	  numPattern =3D new RegExp("^(\\d+(\\.\\d{0," + this.decimalPlaces +=0A=
            "})?|\\.\\d{1," + this.decimalPlaces + "})$");=0A=
	} else {=0A=
	  numPattern =3D /^\d+$/;=0A=
	}=0A=
=0A=
        if (! numPattern.exec(value)) {=0A=
          this.message =3D "'" + value + "' has more than " +=0A=
          this.decimalPlaces + " digits after the decimal point.";=0A=
          return false;=0A=
        }=0A=
      }=0A=
      break;=0A=
=0A=
    case "date":=0A=
=0A=
      var datePattern =3D /^(0?\d|\d\d)\/(0?\d|\d\d)\/(\d\d\d\d)$/;=0A=
      var ary =3D datePattern.exec(value);=0A=
      if (ary =3D=3D null) {=0A=
        this.message =3D "'" + value + "' is not a valid date =
(MM/dd/YYYY).";=0A=
        return false;=0A=
      }=0A=
=0A=
      var month =3D parseInt(ary[1].replace(/^0/, ""));=0A=
      var date =3D parseInt(ary[2].replace(/^0/, ""));=0A=
      var year =3D parseInt(ary[3]);=0A=
=0A=
      if (month < 1 || month > 12) {=0A=
        this.message =3D "Please enter a month between 1 and 12.";=0A=
        return false;=0A=
      } =0A=
=0A=
      var monthLength =3D MONTH_LENGTH[month];=0A=
      if (month =3D=3D 2 && isLeapYear(year)) { monthLength++; }=0A=
=0A=
      if (date < 1 || date > monthLength) {=0A=
        this.message =3D "Please enter a date between 1 and " + =
monthLength;=0A=
        return false;=0A=
      } =0A=
=0A=
      if (year < 1000 || year > 2100) {=0A=
        this.message =3D "Please enter a year between 1000 and 2100.";=0A=
        return false;=0A=
      }=0A=
=0A=
      break;=0A=
=0A=
    case "email":=0A=
=0A=
      if (! checkEmailValue(value)) {=0A=
        this.message =3D "'" + value + "' is not a valid e-mail =
address.";=0A=
        return false;=0A=
      }=0A=
      break;=0A=
=0A=
    case "filename":=0A=
=0A=
      var filePattern =3D /^[a-zA-Z0-9_\-]+$/;=0A=
      if (! filePattern.exec(value)) {=0A=
        this.message =3D "'" + value + "' is not a valid file name.  =
Only letters, digits, underscores and dashes are allowed.";=0A=
        return false;=0A=
      }=0A=
      break;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkRange(value) {=0A=
=0A=
  var nVal =3D parseFloat(value);=0A=
=0A=
  if (this.minValue) {=0A=
=0A=
    var nMin =3D parseFloat(this.minValue);=0A=
=0A=
    if (! this.minBound) this.minBound =3D "ge";=0A=
=0A=
    if (this.minBound =3D=3D "gt" && nVal <=3D nMin) {=0A=
      this.message =3D "Value must be greater than " + this.minValue + =
".";=0A=
      return false;=0A=
    }=0A=
=0A=
    if (this.minBound =3D=3D "ge" && nVal < nMin) {=0A=
      this.message =3D "Value must be greater than or equal to " +=0A=
                     this.minValue + ".";=0A=
      return false;=0A=
    }=0A=
  }=0A=
=0A=
  if (this.maxValue) {=0A=
=0A=
    var nMax =3D parseFloat(this.maxValue);=0A=
=0A=
    if (! this.maxBound) this.maxBound =3D "le";=0A=
=0A=
    if (this.maxBound =3D=3D "lt" && nVal >=3D nMax) {=0A=
      this.message =3D "Value must be less than " + this.maxValue + ".";=0A=
      return false;=0A=
    }=0A=
=0A=
    if (this.maxBound =3D=3D "le" && nVal > nMax) {=0A=
      this.message =3D "Value must be less than or equal to " +=0A=
                     this.maxValue + ".";=0A=
      return false;=0A=
    }=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkLength(value) {=0A=
=0A=
  var length =3D value.length;=0A=
=0A=
  if (this.minLength && length < this.minLength) {=0A=
    this.message =3D=0A=
      "Value of " + this.label + " cannot be less than " + =
this.minLength + " characters long " +=0A=
      "(current length is " + length + " characters)";=0A=
    return false;=0A=
  } =0A=
=0A=
  if (this.maxLength && length > this.maxLength) {=0A=
    this.message =3D=0A=
      "Value of " + this.label + " cannot be more than " + =
this.maxLength + " characters long." +=0A=
      "(current length is " + length + " characters)";=0A=
    return false;=0A=
  } =0A=
=0A=
  return true;=0A=
}=0A=
=0A=
function checkChars(value) {=0A=
=0A=
  if (! this.allowChars) { return true; }=0A=
=0A=
  var chars =3D this.allowChars.split(",");=0A=
=0A=
  var isDigit =3D false;=0A=
  var isLetter =3D false;=0A=
  var isSpace =3D false;=0A=
=0A=
  for (var i =3D 0; i < chars.length; i++) {=0A=
    var c =3D chars[i];=0A=
    if (c =3D=3D 'digit') {=0A=
      isDigit =3D true;=0A=
    } else if (c =3D=3D 'white') {=0A=
      isSpace =3D true;=0A=
    } else if (c =3D=3D 'letter') {=0A=
      isLetter =3D true;=0A=
    }=0A=
  }=0A=
=0A=
  var digPat =3D /\d/;=0A=
  if (! isDigit && value.search(digPat) !=3D -1) {=0A=
    this.message =3D "Value cannot contain digits.";=0A=
    return false;=0A=
  }=0A=
=0A=
  var letPat =3D /[a-zA-Z]/;=0A=
  if (! isLetter && value.search(letPat) !=3D -1) {=0A=
    this.message =3D "Value cannot contain letters.";=0A=
    return false;=0A=
  }=0A=
=0A=
  var spacePat =3D /\s/;=0A=
  if (! isSpace && value.search(spacePat) !=3D -1) {=0A=
    this.message =3D "Value cannot contain spaces.";=0A=
    return false;=0A=
  }=0A=
=0A=
  return true;=0A=
}=0A=
/*=0A=
function toString() {=0A=
=0A=
  var s =3D "";=0A=
  var i =3D 0;=0A=
  alert("test**");=0A=
  alert(this);=0A=
  for (var name in this) {=0A=
  	alert("test 2 " + this[name]);=0A=
    var value =3D this[name];=0A=
    if (! value || value instanceof Function) { continue; }=0A=
    if (i++ > 0) { s +=3D ";"; }=0A=
    s +=3D name + ":" + value;=0A=
  }=0A=
=0A=
  return s;  =0A=
}=0A=
*/=0A=
function validateForm(formName) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { =0A=
    alert("No form named '" + formName + "' to validate.");=0A=
    return; =0A=
  }=0A=
=0A=
  // disables submit button=0A=
  toggleSubmitButtons(true);=0A=
=0A=
  var elements =3D form.elements;=0A=
=0A=
  // Re-enables submit button when we leave page (so it's available on =
'Back' tt# 106790)=0A=
  // Only re-enable the submit button if there is no file upload field, =
otherwise=0A=
  // multiple copies of files are uploaded.=0A=
  var hasFileUpload =3D false;=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
    if (element.type && element.type =3D=3D "file") {=0A=
      hasFileUpload =3D true;=0A=
      break;=0A=
    }=0A=
  }=0A=
=0A=
  if (! hasFileUpload) {=0A=
    document.onunload =3D toggleSubmitButtons(false);=0A=
  }=0A=
=0A=
=0A=
=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
    if (element.tagName =3D=3D "INPUT" &&=0A=
        (element.type =3D=3D "hidden" || element.type =3D=3D "submit")) {=0A=
      continue;=0A=
    }=0A=
=0A=
    var validation =3D element.getAttribute("validation");=0A=
    if (! validation) { continue; }=0A=
=0A=
    var validator =3D createValidator(validation);=0A=
    validator.label =3D element.title ? element.title : element.name;=0A=
=0A=
    var isButton =3D (element.tagName =3D=3D "INPUT" && =0A=
		    element.type =3D=3D "checkbox" || element.type =3D=3D "radio");=0A=
    var selectionMissed =3D false;=0A=
=0A=
    if (isButton && validator.required) {=0A=
      selectionMissed =3D ! element.checked;=0A=
      var a =3D elements[element.name];=0A=
      if (a.length) {=0A=
	for (var j =3D 0; j < a.length; j++) {=0A=
	  if (a[j].checked) {=0A=
	    selectionMissed =3D false;=0A=
	    break;=0A=
	  }=0A=
	}=0A=
      } =0A=
    }=0A=
=0A=
    var value =3D element.value;=0A=
    if (element.style.display =3D=3D "none" ||=0A=
        element.style.visibility =3D=3D "hidden") { =0A=
=0A=
      var hiddenElements =3D form.getElementsByTagName("INPUT");=0A=
      for (var j =3D 0; j < hiddenElements.length; j++) {=0A=
        var he =3D hiddenElements[j];=0A=
        if (he.type !=3D "hidden" || he.name !=3D element.name) { =
continue; }=0A=
        if (he.value) {=0A=
          value =3D he.value;=0A=
          break;=0A=
        }=0A=
      }=0A=
    }=0A=
=0A=
    if (selectionMissed || ! validator.validate(value)) {=0A=
=0A=
      var msg =3D selectionMissed ? =0A=
	"Please make at least one selection for " + element.name : =0A=
	validator.message;=0A=
=0A=
      alert(msg);=0A=
=0A=
      if (element.style.display !=3D "none" &&=0A=
	element.style.visibility !=3D "hidden") { =0A=
        element.focus();=0A=
      } =0A=
=0A=
      toggleSubmitButtons(false);=0A=
=0A=
      if (window.event) {=0A=
	    window.event.returnValue =3D false;=0A=
      }=0A=
      return false;=0A=
    }=0A=
  }=0A=
  =0A=
  return validateCaptcha(formName);=0A=
}=0A=
=0A=
function highlightForm(formName) {=0A=
=0A=
  var form =3D document.forms[formName];=0A=
=0A=
  if (! form) { return; }=0A=
=0A=
  var elements =3D form.elements;=0A=
=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
=0A=
    var element =3D elements[i];=0A=
=0A=
    if (element.tagName =3D=3D "TEXTAREA") {=0A=
      element.innerText =3D trimString(element.innerText);=0A=
    }=0A=
=0A=
    if (element.tagName =3D=3D "SELECT" && element.size > 1 &&=0A=
	(! element.validation || =0A=
	 element.validation.indexOf("required:true") =3D=3D -1)) {=0A=
      var option =3D document.createElement("OPTION");=0A=
      option.innerText =3D "None";=0A=
      option.value =3D "";=0A=
      element.insertBefore(option, element.firstChild);=0A=
    }=0A=
=0A=
    if (! element.validation) { continue; }=0A=
=0A=
    var validator =3D createValidator(element.validation);=0A=
=0A=
    var isButton =3D (element.tagName =3D=3D "INPUT" && =0A=
		    element.type =3D=3D "checkbox" || element.type =3D=3D "radio");=0A=
=0A=
    if (validator.required && ! isButton) {=0A=
      element.className =3D "formWidgetRequired";=0A=
    }=0A=
=0A=
    if (validator.standard && window.user && validator.defaultRule =
=3D=3D "user") {=0A=
      =0A=
      if (window.user[validator.standard]) {=0A=
        element.value =3D window.user[validator.standard];=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function createValidator(parameterString) {=0A=
=0A=
  if (! parameterString) { parameterString =3D ""; }=0A=
=0A=
  var validator =3D new Validator("text", false);=0A=
=0A=
  var params =3D parameterString.split(";");=0A=
  for (var i =3D 0; i < params.length; i++) {=0A=
    var param =3D params[i].split(":");=0A=
    validator[param[0]] =3D param[1];=0A=
  }=0A=
=0A=
  return validator;=0A=
}=0A=
=0A=
function objectToString(object) {=0A=
=0A=
  var s =3D "";=0A=
  var i =3D 0;=0A=
=0A=
  for (var name in object) {=0A=
    var value =3D object[name];=0A=
    if (! value || value instanceof Function) { continue; }=0A=
    if (i++ > 0) { s +=3D ";"; }=0A=
    if (typeof value =3D=3D "object") {=0A=
      s +=3D name + ": { " + objectToString(value) + " }";=0A=
    } else {=0A=
      s +=3D name + ":" + value;=0A=
    }=0A=
  }=0A=
=0A=
  return s;=0A=
}=0A=
=0A=
function stringToObject(str, obj) {=0A=
=0A=
  if (! obj) {=0A=
    obj =3D new Object();=0A=
  }=0A=
=0A=
  var params =3D str.split(";");=0A=
  for (var i =3D 0; i < params.length; i++) {=0A=
    var param =3D params[i].split(":");=0A=
    obj[param[0]] =3D param[1];=0A=
  }=0A=
=0A=
  return obj;=0A=
}=0A=
=0A=
function trimString(s) {=0A=
=0A=
  if (s =3D=3D null) return "";=0A=
=0A=
  s =3D s.replace(/^\s*(.*)/, "$1");=0A=
  s =3D s.replace(/(.*?)\s*$/, "$1");=0A=
=0A=
  return s;=0A=
}=0A=
=0A=
/**=0A=
 * Updates the element label in the common situation where=0A=
 * a 2-column table is used to layout the form.=0A=
 **/=0A=
function updateLabel(element, label) {=0A=
=0A=
   var cell =3D element.parentNode;=0A=
   if (cell.tagName =3D=3D "TD" && cell.previousSibling) {=0A=
     cell =3D cell.previousSibling;=0A=
     if (cell.innerHTML && cell.innerHTML =3D=3D "&nbsp;" ||=0A=
         cell.innerHTML =3D=3D element.title) {=0A=
       cell.innerHTML =3D label;=0A=
     }=0A=
   }=0A=
}=0A=
=0A=
function setFieldName(label, formName) {=0A=
=0A=
  if (! label) { return; }=0A=
=0A=
  var name =3D getValue(formName, "name");=0A=
  if (name !=3D "" && ! name.match(/^field/)) { return; }=0A=
=0A=
  name =3D labelToName(label);=0A=
=0A=
  setValue(formName, "name", name);=0A=
}=0A=
=0A=
function labelToName(label) {=0A=
=0A=
  var name =3D label.toLowerCase();=0A=
  name =3D name.replace(/\s/g, "_");=0A=
  name =3D name.replace(/\W/g, "");=0A=
=0A=
  return name;=0A=
}=0A=
=0A=
function labelToFileName(label, separator) {=0A=
=0A=
  if (! separator) {=0A=
    separator =3D "-";=0A=
  }=0A=
=0A=
  var name =3D label.toLowerCase();=0A=
  name =3D name.replace(/\s/g, separator);=0A=
  name =3D name.replace(/[^a-zA-Z0-9-_]/g, "");=0A=
=0A=
  return name;=0A=
}=0A=
=0A=
// truncates the string "s" to a maximum of "maxLength" characters=0A=
// if "cleanBreak" is not false, the break occurs between words (at a ' =
' at least)=0A=
// "trailer" is appended to the truncated string=0A=
function truncate(s, maxLength, cleanBreak, trailer) {=0A=
  if (s =3D=3D null) return "";=0A=
  if (cleanBreak) {=0A=
    return (s.length < maxLength) ? s : =0A=
      s.substring(0, s.substring(0,maxLength).lastIndexOf(' ')) + =
trailer;=0A=
  } else {=0A=
    return (s.length < maxLength) ? s : =0A=
      s.substring(0, maxLength - 3) + trailer;=0A=
  }=0A=
}=0A=
=0A=
function tabToElement(formName, tabIndex) {=0A=
=0A=
  var elements =3D document.forms[formName].elements;=0A=
=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
    if (element.tabIndex =3D=3D tabIndex) {=0A=
      element.focus();=0A=
      break;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function showContextHelp(contextPath, path, anchor) {=0A=
=0A=
  path =3D contextPath + "/admin/help/context/" + path + ".html";=0A=
  if (anchor) { path +=3D "#" + anchor; }=0A=
=0A=
  helpWin =3D window.showHelp(path);=0A=
}=0A=
=0A=
function getValues(formName) {=0A=
=0A=
  var values =3D new Array();=0A=
=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { =0A=
    alert("No form named " + formName); =0A=
    return;=0A=
  }=0A=
=0A=
  var elements =3D form.elements;=0A=
=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
    var value =3D element.value;=0A=
    if (element.type && element.type =3D=3D"hidden" && =0A=
	element.htmlEditor) {=0A=
      value =3D element.htmlEditor.value;=0A=
    }=0A=
    if (element.tagName =3D=3D "INPUT" && =0A=
	(element.type =3D=3D "checkbox" || element.type =3D=3D "radio") &&=0A=
	! element.checked) { continue; }=0A=
    if (element.tagName =3D=3D "SELECT" && element.multiple) {=0A=
      var selectValues =3D new Array();=0A=
      for (var j =3D 0; j < element.options.length; j++) {=0A=
        var option =3D element.options[j];=0A=
        if (option.selected) { selectValues.push(option.value); }=0A=
      }=0A=
      value =3D selectValues.join(' ');=0A=
    }=0A=
    values.push(value);=0A=
  }=0A=
=0A=
  return values;=0A=
}=0A=
=0A=
var gRecordFormName =3D "record";=0A=
var gRecordParam =3D "com.frontleaf.record.RecordID";=0A=
=0A=
function doFormLoad() {=0A=
=0A=
  highlightForm(gRecordFormName);=0A=
=0A=
  var form =3D document.forms[gRecordFormName];=0A=
  if (form =3D=3D null) { return; }=0A=
=0A=
  var cookie =3D getCookie("submittedRecords");=0A=
=0A=
  var recordID =3D getValue(gRecordFormName, gRecordParam);=0A=
=0A=
  if (cookie) {=0A=
    var re =3D new RegExp("\\b" + recordID + "\\b");=0A=
    if (cookie.match(re)) {=0A=
      window.location.reload(true);=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function toggleSubmitButtons(isDisabled) {=0A=
  var elements =3D document.getElementsByTagName("INPUT");=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    var element =3D elements[i];=0A=
    if (element.type && =0A=
	(element.type =3D=3D "submit" || element.type =3D=3D "button")) {=0A=
      element.disabled =3D isDisabled;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function doImageChoose(formName, widgetName, folderID) {=0A=
=0A=
  var item =3D =0A=
    showDialog("/admin/components/explorer/dialog.jsp?folderID=3D" + =
folderID, =0A=
	       null, 600, 400);=0A=
=0A=
  if (item =3D=3D null) {=0A=
    return;=0A=
  }=0A=
=0A=
  var div =3D document.getElementById("thumbnail-" + widgetName);=0A=
  if (div =3D=3D null) { return; }=0A=
=0A=
  div.style.border =3D "0 none";=0A=
  div.innerHTML =3D "<img ondblclick=3D\"doImageChoosePreview()\" =
src=3D\"" + =0A=
    item.thumbnailURL + "\" id=3D\"thumbnail-" + item.id + =0A=
    "\" align=3Dabsmiddle><p>" + item.fileName + "</p>";=0A=
=0A=
  setValue(formName, widgetName, item.id);=0A=
}=0A=
=0A=
function doImageChooseClear(formName, widgetName, folderID) {=0A=
=0A=
  var div =3D document.getElementById("thumbnail-" + widgetName);=0A=
  if (div =3D=3D null) { return; }=0A=
=0A=
  div.style.border =3D "white inset 2";=0A=
  div.style.height =3D div.clientHeight;=0A=
  div.style.width =3D div.clientWidth;=0A=
  div.innerHTML =3D "No<br>image<br>selected";=0A=
=0A=
  setValue(formName, widgetName, "");=0A=
}=0A=
=0A=
function doImageChoosePreview() {=0A=
  =0A=
  var image =3D event.srcElement;=0A=
  if (image =3D=3D null || image.tagName !=3D "IMG" || ! image.id) { =
return; }=0A=
=0A=
  var idData =3D image.id.split("-");=0A=
  var itemID =3D idData[1];=0A=
  =0A=
  showDialog("/admin/components/explorer/image-preview.jsp?itemID=3D" + =
itemID);=0A=
}=0A=
=0A=
function doRelatedItemsChoose(formName, widgetName, folderID) {=0A=
=0A=
  var path =3D "/admin/components/related/dialog.jsp?folderID=3D" + =
folderID;=0A=
=0A=
  var itemIDs =3D new Array();=0A=
  var select =3D getElement(formName, widgetName);=0A=
  for (var i =3D 0; i < select.options.length; i++) {=0A=
    itemIDs.push(select.options[i].value);=0A=
  }=0A=
=0A=
  if (itemIDs.length > 0) {=0A=
    path +=3D "&itemIDs=3D" + itemIDs.join(",");=0A=
  }=0A=
=0A=
  var items =3D showDialog(path, null, 600, 400);=0A=
=0A=
  if (items =3D=3D null) {=0A=
    return;=0A=
  }=0A=
=0A=
  var select =3D getElement(formName, widgetName);=0A=
  select.innerHTML =3D "";=0A=
=0A=
  var div =3D document.getElementById("relatedItems-" + widgetName);=0A=
  if (div =3D=3D null) { return; }=0A=
=0A=
  if (items.length =3D=3D 0) {=0A=
    div.innerHTML =3D "<div><em>No items selected</em></div>";=0A=
    return;=0A=
  }=0A=
=0A=
  div.innerHTML =3D "";  =0A=
=0A=
  for (var i =3D 0; i < items.length; i++) {=0A=
    =0A=
    var item =3D items[i];=0A=
    var itemDiv =3D document.createElement("DIV");=0A=
    itemDiv.innerHTML =3D "<img align=3Dabsmiddle src=3D'" + =
item.iconURL +=0A=
      "'><span>&nbsp;" + item.title + "</span>";=0A=
    itemDiv.id =3D item.id;=0A=
=0A=
    div.appendChild(itemDiv);=0A=
=0A=
    var option =3D =0A=
      document.createElement("<OPTION selected value=3D" + item.id + =
">");=0A=
    select.options.add(option);=0A=
  }=0A=
}=0A=
=0A=
=0A=
=0A=
function populateForm(formName) {=0A=
	=0A=
  var form =3D document.forms[formName];=0A=
  if (! form) { =0A=
    alert("No form named '" + formName + "' to populate.");=0A=
    return; =0A=
  }=0A=
=0A=
  var elements =3D form.elements;=0A=
  =0A=
  for (var i =3D 0; i < elements.length; i++) {  =0A=
    var element =3D elements[i];=0A=
    if (element.tagName =3D=3D "INPUT" &&=0A=
        (element.type =3D=3D "hidden" || element.type =3D=3D "submit")) {=0A=
      continue;=0A=
    }=0A=
=0A=
    if (element.tagName =3D=3D "INPUT" && =0A=
        (element.type =3D=3D "radio" || element.type =3D=3D "checkbox")) =
{=0A=
=0A=
      var valueElement =3D document.getElementById(element.name + =
"Value");=0A=
      if (valueElement) {=0A=
        element.checked =3D false;=0A=
=0A=
        if (valueElement.innerHTML =3D=3D element.value) {=0A=
          element.checked =3D true;=0A=
        } else {=0A=
=0A=
          for (var j =3D 0; j < valueElement.childNodes.length; j++) {=0A=
            var value =3D valueElement.childNodes[j];=0A=
            if (value.innerHTML =3D=3D element.value) {=0A=
              element.checked =3D true;=0A=
              break;=0A=
            }=0A=
          }=0A=
        }=0A=
      }=0A=
=0A=
      valueElement =3D document.getElementById(element.id + "Value");=0A=
      if (valueElement) {=0A=
        element.checked =3D true;=0A=
      }=0A=
=0A=
    } else {=0A=
      var valueElement =3D document.getElementById(element.name + =
"Value");=0A=
      if (! valueElement) { continue; }=0A=
      if (element.tagName =3D=3D "SELECT") {=0A=
=0A=
        if (element.style.visibility =3D=3D "hidden") { continue; }=0A=
=0A=
	var values =3D new Array();=0A=
	=0A=
	if (valueElement.firstChild &&=0A=
	    valueElement.firstChild.nodeType =3D=3D 1) {=0A=
=0A=
	  for (var j =3D 0; j < valueElement.childNodes.length; j++) {=0A=
	    var value =3D valueElement.childNodes[j].innerHTML;=0A=
	    values[value] =3D true;=0A=
	  }=0A=
=0A=
	} else if (valueElement.firstChild && =0A=
	           valueElement.firstChild.nodeType =3D=3D 3) {=0A=
	  =0A=
	  values[valueElement.innerHTML] =3D true;=0A=
	  =0A=
	} else if (valueElement.innerHTML =3D=3D '') {=0A=
	  values[''] =3D true;=0A=
	}=0A=
=0A=
	for (var j =3D 0; j < element.options.length; j++) {=0A=
	  var option =3D element.options[j];=0A=
	  =0A=
	  if (values[option.value] && ! option.selected) {=0A=
	    option.selected =3D true;=0A=
	  }=0A=
	}=0A=
=0A=
      } else if (element.tagName =3D=3D "TEXTAREA") {=0A=
        element.innerText =3D valueElement.innerHTML;=0A=
      } else {=0A=
	element.value =3D valueElement.innerText;=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function addOptions(retrieveDoc, elementID, selectorID, defaultValue) {=0A=
  =0A=
  var data =3D retrieveDoc.getElementById(elementID);=0A=
  if (data =3D=3D null) {=0A=
    alert("addOptions: No data retrieved for menu " + selectorID);=0A=
    return;=0A=
  }=0A=
=0A=
  var selector =3D document.getElementById(selectorID);=0A=
  if (selector =3D=3D null) {=0A=
    alert("addOptions: No such menu " + selectorID);=0A=
    return;=0A=
  }=0A=
=0A=
  selector.innerHTML =3D "";=0A=
  var divs =3D data.getElementsByTagName("DIV");=0A=
  var hasData =3D (divs.length =3D=3D 0) ? false : true;=0A=
=0A=
  var option =3D document.createElement("OPTION");=0A=
  option.value =3D "";=0A=
  option.innerHTML =3D (! hasData) ? "None available" : "Choose...";=0A=
  selector.appendChild(option);=0A=
  selector.disabled =3D (! hasData);=0A=
 =0A=
  if (divs.length =3D=3D 0) {=0A=
    return;  =0A=
  }=0A=
=0A=
  for (var i =3D 0; i < divs.length; i++) {=0A=
    var div =3D divs[i];=0A=
    var spans =3D div.getElementsByTagName("SPAN");=0A=
    var option =3D document.createElement("OPTION");=0A=
    option.value =3D spans[0].innerHTML;=0A=
    if (option.value =3D=3D defaultValue) {=0A=
      option.selected =3D true;=0A=
    }=0A=
    option.innerHTML =3D spans[1].innerHTML;=0A=
    selector.appendChild(option);=0A=
  }=0A=
}=0A=
=0A=
function addButton(elementID, label, clickHandler) {=0A=
  =0A=
  var element =3D document.getElementById(elementID);=0A=
=0A=
  var button =3D document.createElement("<INPUT TYPE=3DBUTTON>");=0A=
  button.className =3D "button";=0A=
  button.style.marginLeft =3D "24px";=0A=
  button.value =3D label;=0A=
  button.onclick =3D clickHandler;=0A=
=0A=
  element.parentNode.insertBefore(button, element.nextSibling);=0A=
}=0A=
=0A=
function FormData(formName) {=0A=
  this.name =3D formName;=0A=
  this.form =3D document.forms[formName];=0A=
  if (! this.form) {=0A=
    alert("No form named " + formName);=0A=
  }=0A=
}=0A=
=0A=
FormData.prototype.getElement =3D function(elementName) {=0A=
  return this.form.elements[elementName];=0A=
}=0A=
=0A=
FormData.prototype.getValues =3D function(name) {=0A=
=0A=
  var values =3D new Array();=0A=
=0A=
  for (var i =3D 0; i < this.form.elements.length; i++) {=0A=
    var element =3D this.form.elements[i];=0A=
    if (element.name =3D=3D name && element.checked) {=0A=
      values.push(element.value);=0A=
    }=0A=
  }=0A=
=0A=
  return values;=0A=
}=0A=
=0A=
FormData.prototype.getElementsByName =3D function(name) {=0A=
=0A=
  var elements =3D new Array();=0A=
=0A=
  for (var i =3D 0; i < this.form.elements.length; i++) {=0A=
    if (this.form.elements[i].name =3D=3D name) {=0A=
      elements.push(this.form.elements[i]);=0A=
    }=0A=
  }=0A=
=0A=
  return elements;=0A=
}=0A=
=0A=
FormData.prototype.getValue =3D function(elementName) {=0A=
=0A=
  var element =3D this.form.elements[elementName];=0A=
  if (! element) {=0A=
    alert("No element named " + elementName + " in form " + this.name);=0A=
    return undefined;=0A=
  }=0A=
=0A=
  if (element.tagName !=3D "SELECT" && element.length) {=0A=
    =0A=
    for (var i =3D 0; i < element.length; i++) {=0A=
=0A=
      var e =3D element[i];=0A=
      if (e.tagName =3D=3D "INPUT" && =0A=
	  (e.type =3D=3D "checkbox" || e.type =3D=3D"radio")) {=0A=
	if (e.checked) { return e.value; }=0A=
      } else {=0A=
	return e.value;=0A=
      }=0A=
    }=0A=
=0A=
  } else {=0A=
=0A=
    return element.value;=0A=
  }=0A=
}=0A=
=0A=
FormData.prototype.getDate =3D function(elementName) {=0A=
=0A=
  var value =3D this.getValue(elementName);=0A=
  =0A=
  return Date.parse(value);=0A=
}=0A=
=0A=
FormData.prototype.trimValue =3D function(elementName) {=0A=
=0A=
  var element =3D this.form.elements[elementName];=0A=
  if (! element) {=0A=
    alert("No element named " + elementName + " in form " + this.name);=0A=
    return undefined;=0A=
  }=0A=
=0A=
  if (element.value) {=0A=
    element.value =3D element.value.replace(/^\s+/, "");=0A=
    element.value =3D element.value.replace(/\s+$/, "");=0A=
  }=0A=
}=0A=
=0A=
FormData.prototype.isNull =3D function(elementName, msg) {=0A=
=0A=
  var cond =3D function(value) {=0A=
    return (value =3D=3D undefined || value =3D=3D null || value =3D=3D =
"");=0A=
  }=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isNotInteger =3D function(elementName, msg) {=0A=
=0A=
  this.trimValue(elementName);=0A=
=0A=
  return this.isNotMatch(elementName, /^\d+$/, msg);=0A=
}=0A=
=0A=
FormData.prototype.isNotBetween =3D function(elementName, min, max, msg) =
{=0A=
=0A=
  var cond =3D new Function("value", =0A=
    "return (value < " + min + " || value > " + max + ")"=0A=
  );=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isLongerThan =3D function(elementName, length, msg) {=0A=
=0A=
  var cond =3D new Function("value", =0A=
    "return (value && value.length && value.length > " + length + ")");=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isWhitespace =3D function(elementName, msg) {=0A=
=0A=
  var cond =3D new Function("value", =0A=
    "return (! value || value.match(/^\\s*$/))");=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isNotMatch =3D function(elementName, pattern, msg) {=0A=
=0A=
  var cond =3D new Function("value", =0A=
    "return (value && ! value.match(" + pattern + "))");=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isNotImageFileName =3D function (elementName, msg) {=0A=
=0A=
  if (! msg) {=0A=
    msg =3D "Please choose a GIF, JPEG or PNG image file to upload.";=0A=
  }=0A=
=0A=
  var cond =3D function(value) {=0A=
    var re =3D /^(.*)(.(gif|jpg|jpeg|png))$/i;=0A=
    return ! re.exec(value);=0A=
  }=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isNotURLName =3D function (elementName, msg) {=0A=
=0A=
  var cond =3D function(value) {=0A=
    var re =3D /^[\.\-_a-z0-9A-Z]+$/;=0A=
    return ! re.exec(value);=0A=
  }=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isMarkup =3D function (elementName, msg) {=0A=
=0A=
  var cond =3D function(value) {=0A=
    var re =3D /^[ \.\-_a-z0-9A-Z]+$/;=0A=
    return ! re.exec(value);=0A=
  }=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.isNotURL=3D function (elementName, msg) {=0A=
=0A=
  var cond =3D function(value) {=0A=
    var re =3D =
/^(ftp|https?):\/\/(?:[a-zA-Z0-9](?:[-a-z-A-Z0-9]*[a-zA-Z0-9])?)+\b(?:\d+=
)?(?:\/[^;"'<>()\[\]{}\s\x7f-\xff]*(?:[.,?]+[^;"'<>()\[\]{}\s\x7f-\xff]+)=
*)?/;=0A=
    return ! re.exec(value);=0A=
  }=0A=
=0A=
  return this.checkValue(elementName, msg, cond);=0A=
}=0A=
=0A=
FormData.prototype.checkValue =3D function(elementName, msg, cond) {=0A=
=0A=
  var element =3D this.form.elements[elementName];=0A=
  if (! element) {=0A=
    alert("No element named " + elementName + " in form " + this.name);=0A=
    if (window.event) { window.event.returnValue =3D false; }=0A=
    return true;=0A=
  }=0A=
  =0A=
  if (cond(element.value)) {=0A=
    this.cancelSubmit(msg, elementName);=0A=
    return true;=0A=
  }=0A=
=0A=
  return false;=0A=
}=0A=
=0A=
FormData.prototype.cancelSubmit =3D function(msg, elementName) {=0A=
=0A=
  if (elementName) {=0A=
    var element =3D this.form.elements[elementName];=0A=
    if (! element) {=0A=
      alert("No element named " + elementName + " in form " + this.name);=0A=
      if (window.event) { window.event.returnValue =3D false; }=0A=
      return false;=0A=
    }=0A=
    =0A=
    if (! element.disabled && ! element.readonly) {=0A=
      element.focus(); =0A=
    }=0A=
=0A=
    if (element.tagName =3D=3D "INPUT" && element.type =3D=3D "text") {=0A=
      element.select();=0A=
    }=0A=
  } =0A=
=0A=
  alert(msg);=0A=
  if (window.event) { window.event.returnValue =3D false; }=0A=
=0A=
  return false;=0A=
}=0A=
=0A=
FormData.prototype.setValue =3D function(elementName, value) {=0A=
=0A=
  var element =3D this.form.elements[elementName];=0A=
  if (! element) {=0A=
    alert("No element named " + elementName + " in form " + this.name);=0A=
    return null;=0A=
  }=0A=
=0A=
  element.value =3D value;=0A=
}=0A=
=0A=
FormData.prototype.setChecked =3D function(elementName, value) {=0A=
=0A=
  var element =3D this.form.elements[elementName];=0A=
  if (element =3D=3D null) { return; }=0A=
=0A=
  var elements =3D element;=0A=
  if (! element.length) {=0A=
    elements =3D new Array();=0A=
    elements[0] =3D element;=0A=
  }=0A=
=0A=
  var values =3D value;=0A=
  if (! (values instanceof Array)) {=0A=
    values =3D new Array();=0A=
    values[0] =3D value;=0A=
  }=0A=
=0A=
  for (var i =3D 0; i < values.length; i++) {=0A=
    var value =3D values[i];=0A=
    for (var j =3D 0; j < elements.length; j++) {=0A=
      var element =3D elements[j];=0A=
      if (element.value =3D=3D value) element.checked =3D true;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
FormData.prototype.setEnabled =3D function(elementName, isEnabled) {=0A=
=0A=
  var element =3D this.form.elements[elementName];=0A=
  if (element =3D=3D null) { return; }=0A=
=0A=
  var labels =3D this.form.getElementsByTagName("LABEL");=0A=
=0A=
  var elements =3D element;=0A=
  if (element.tagName =3D=3D "SELECT" || ! element.length) {=0A=
    elements =3D new Array();=0A=
    elements.push(element);=0A=
  }=0A=
=0A=
  for (var i =3D 0; i < elements.length; i++) {=0A=
    elements[i].disabled =3D ! isEnabled;=0A=
    var label =3D this.getLabel(elements[i], labels);=0A=
    if (label) {=0A=
      label.disabled =3D ! isEnabled;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
FormData.prototype.getLabel =3D function(element, labels) {=0A=
=0A=
  if (! element.id) { return; }=0A=
  for (var i =3D 0; i < labels.length; i++) {=0A=
    if (labels[i].htmlFor =3D=3D element.id) { return labels[i]; }=0A=
  }=0A=
=0A=
  return null;=0A=
}=0A=
=0A=

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.yestosavehomes.com/components/cookie/cookie.js

/**=0A=
 * $Source: =
/home/cvs/cvsroot/cms/integration/web/components/cookie/cookie.js,v $=0A=
 * $Author: phong $=0A=
 * $Revision: 1.1.1.1 $=0A=
 * $Date: 2007/02/01 20:18:04 $=0A=
 *=0A=
 * =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=0A=
 *=0A=
 * Copyright (C) 2002-04 Frontleaf. All Rights Reserved.=0A=
 *=0A=
 * Use, modification and distribution of this Software in source or =0A=
 * object form is strictly prohibited without prior agreement =0A=
 * with Frontleaf.  Frontleaf reserves all rights not expressly granted =
to=0A=
 * you in such an agreement.  =0A=
 * =0A=
 * Send all inquiries to license (at) frontleaf.com.=0A=
 **/=0A=
=0A=
function getExpirationDate(days) {=0A=
=0A=
  var dateString;=0A=
=0A=
  var today =3D new Date();=0A=
  var millis =3D Date.parse(today);=0A=
  today.setTime(millis + days * 24 * 60 * 60 * 1000);=0A=
  dateString =3D today.toString();=0A=
=0A=
  return dateString;=0A=
}=0A=
=0A=
function setCookie(name, value, days){=0A=
=0A=
  var cookieString =3D name + "=3D" + escape(value) + =0A=
    ";EXPIRES=3D" + getExpirationDate(days) + ";PATH=3D/";=0A=
  document.cookie =3D cookieString;=0A=
=0A=
  if(! getCookie(name)){=0A=
    return false;=0A=
  } else {=0A=
    return true;=0A=
  }=0A=
}=0A=
=0A=
function getCookie(name) {=0A=
=0A=
  var cookieString =3D "" + document.cookie;=0A=
=0A=
  var start =3D cookieString.indexOf(name);=0A=
  if (start =3D=3D -1 || name =3D=3D "") { return ""; }=0A=
=0A=
  var end =3D cookieString.indexOf(';', start);=0A=
  if (end =3D=3D -1) { end =3D cookieString.length; }=0A=
=0A=
  return unescape(cookieString.substring(start + name.length + 1, end));=0A=
}=0A=
=0A=
function deleteCookie(name) {=0A=
  setCookie(name, "", -1);=0A=
}
------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.yestosavehomes.com/system/components/logging/logging.js

var RemoteLogger =3D new Object();=0A=
=0A=
if (typeof(REMOTE_LOGGER_REGEXP) =3D=3D "undefined") {=0A=
  REMOTE_LOGGER_REGEXP =3D =
/\.(pdf|xls|xlsx|doc|docx|ppt|pptx|mp3|mp4|txt|zip|tiff)$/;=0A=
}=0A=
=0A=
RemoteLogger.isLoggable =3D function(url) {=0A=
=0A=
  return (url.match(REMOTE_LOGGER_REGEXP)) ? true : false;=0A=
}=0A=
=0A=
RemoteLogger.addClickHandlers =3D function() {=0A=
=0A=
  var links =3D document.body.getElementsByTagName("A");=0A=
=0A=
  for (var i =3D 0; i < links.length; i++) {=0A=
    var link =3D links[i];=0A=
    var href =3D null;=0A=
    try {=0A=
      href =3D link.href;=0A=
    } catch (e) {}=0A=
    if (! href || ! RemoteLogger.isLoggable(href)) { continue; }=0A=
    if (link.attachEvent) {=0A=
      link.attachEvent("onclick", RemoteLogger.linkClicked);=0A=
    } else { =0A=
      link.addEventListener('click', RemoteLogger.linkClicked, false);=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
RemoteLogger.linkClicked =3D function(event) {=0A=
  =0A=
  var link =3D event.srcElement ? event.srcElement : event.target;=0A=
  while (link && link.tagName !=3D "A") {=0A=
    link =3D link.parentNode;=0A=
  }=0A=
  if (! link) { return; }=0A=
  =0A=
  if (window.dcsMultiTrack) {=0A=
    // WebTrends.=0A=
    dcsMultiTrack('DCS.dcsuri', link.href ,'WT.ti', link.title);=0A=
  } else if (window.urchinTracker) {=0A=
    // Old google analytics.=0A=
    urchinTracker(link.href);=0A=
  } else if (window.pageTracker) {=0A=
    // New google analytics.=0A=
    var linkPath =3D getPath(link.href);=0A=
    pageTracker._trackPageview(linkPath);=0A=
  }=0A=
}=0A=
=0A=
//Find pathname from url=0A=
//http://hostnema/path/something will return /path/something=0A=
function getPath(url) {=0A=
 var a =3D document.createElement('a');=0A=
 a.href =3D url;=0A=
 return a.pathname.substr(0,1) =3D=3D=3D '/' ? a.pathname : '/' + =
a.pathname;=0A=
}=0A=
=0A=
=0A=
if (window.attachEvent) {=0A=
  window.attachEvent("onload", RemoteLogger.addClickHandlers);=0A=
} else { =0A=
  window.addEventListener('load', RemoteLogger.addClickHandlers, false);=0A=
}=0A=

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: https://wadmin5.getactive.com/system/auth/author-toolbar.jsp?hostID=54522562

=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
if (typeof CONVIO=3D=3D"undefined" || ! CONVIO) {=0A=
  var CONVIO =3D {};=0A=
}=0A=
=0A=
if (! CONVIO.prefs) { =0A=
  CONVIO.prefs =3D {};=0A=
}=0A=
=0A=
CONVIO.prefs.authorToolbarState =3D "disabled";=0A=

------=_NextPart_000_0000_01CA62B1.06016A90
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.yestosavehomes.com/components/floatbar/floatbar.js

/**=0A=
 * $Source:=0A=
 * =
/home/cvs/cvsroot/cms/integration/web/components/floatbar/floatbar.js,v $=0A=
 * $Author: mpih $ $Revision: 1.6 $ $Date: 2009/04/28 16:49:17 $=0A=
 */=0A=
=0A=
function FloatingToolbar(toolbarName) {=0A=
=0A=
  this.id =3D toolbarName;=0A=
  this.top =3D 0;=0A=
  this.bounces =3D new Array(0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0, 1, 2, 3, =
2);=0A=
  this.bounceIndex =3D 0;=0A=
  this.isHidden =3D this.readState();=0A=
=0A=
  var floatbar =3D document.createElement("DIV");=0A=
  floatbar.id =3D toolbarName;=0A=
  floatbar.style.position =3D 'absolute';=0A=
  floatbar.style.left =3D 2;=0A=
  floatbar.style.margin =3D 0;=0A=
  floatbar.style.overflow =3D 'hidden';=0A=
  floatbar.style.backgroundColor =3D '#CCCCCC';=0A=
  floatbar.style.border =3D 'solid 1 #999999';=0A=
  floatbar.style.zIndex =3D 99999;=0A=
=0A=
  var gripper =3D document.createElement("IMG");=0A=
  gripper.src =3D "/components/floatbar/images/gripper.gif";=0A=
  gripper.style.border =3D "0";=0A=
  gripper.style.display =3D "inline";=0A=
  eval("gripper.onclick =3D function() { " + toolbarName + ".hide() }");=0A=
  floatbar.appendChild(gripper);=0A=
=0A=
  document.body.appendChild(floatbar);=0A=
}=0A=
=0A=
FloatingToolbar.prototype.setTop =3D function(top) {=0A=
  this.top =3D top;=0A=
}=0A=
=0A=
FloatingToolbar.prototype.addButton =3D =0A=
  function(imageLink, actionLink, toolTip) {=0A=
=0A=
  var floatbar =3D document.getElementById(this.id);=0A=
  var children =3D floatbar.childNodes;=0A=
=0A=
  var buttonImage =3D document.createElement("IMG");=0A=
  buttonImage.id =3D this.id + floatbar.childNodes.length;=0A=
  buttonImage.src =3D imageLink;=0A=
  buttonImage.style.border =3D "solid 1 #CCCCCC";=0A=
  buttonImage.style.display =3D "inline";=0A=
  buttonImage.align =3D "absmiddle";=0A=
=0A=
  if (! actionLink) {=0A=
    floatbar.insertBefore(buttonImage, children[children.length - 1]);=0A=
  } else {=0A=
    var buttonLink =3D document.createElement("A");=0A=
    buttonLink.style.padding =3D "0px 4px 0px 4px";=0A=
    buttonLink.href =3D actionLink;=0A=
    buttonLink.title =3D toolTip;=0A=
    buttonLink.onmouseover =3D function() {=0A=
      this.firstChild.style.border =3D "outset 1 white";=0A=
    }=0A=
    buttonLink.onmouseout =3D function() {=0A=
      this.firstChild.style.border =3D "solid 1 #CCCCCC";=0A=
    }=0A=
=0A=
    buttonLink.appendChild(buttonImage);=0A=
    floatbar.insertBefore(buttonLink, children[children.length - 1]);=0A=
  }=0A=
=0A=
  floatbar.style.top =3D buttonImage.height * -1;=0A=
}=0A=
=0A=
FloatingToolbar.prototype.show =3D function() {=0A=
=0A=
  var floatbar =3D document.getElementById(this.id);=0A=
  var top =3D parseInt(floatbar.style.top);=0A=
=0A=
  if (this.isHidden) {=0A=
    floatbar.style.left =3D this.getWidth() * -1;=0A=
  }=0A=
=0A=
  if (top < this.top) {=0A=
    floatbar.style.top =3D top + 1;=0A=
    setTimeout(this.id + '.show()', 5);    =0A=
  } else if (this.bounceIndex < this.bounces.length) {=0A=
    floatbar.style.top =3D this.top + this.bounces[this.bounceIndex++];=0A=
    setTimeout(this.id + '.show()', 10);    =0A=
  } else {=0A=
    this.bounceIndex =3D 0;=0A=
  }=0A=
}=0A=
=0A=
FloatingToolbar.prototype.getWidth =3D function() {=0A=
=0A=
  var floatbar =3D document.getElementById(this.id);=0A=
=0A=
  var width =3D 0;=0A=
=0A=
  for (var i =3D 0; i < floatbar.childNodes.length - 1; i++) {=0A=
    var element =3D floatbar.childNodes[i];=0A=
    if (element.tagName =3D=3D "A") {=0A=
      element =3D element.childNodes[0];=0A=
      width +=3D 10;=0A=
    }=0A=
    width +=3D element.width;=0A=
  }=0A=
=0A=
  return width;=0A=
}=0A=
=0A=
FloatingToolbar.prototype.hide =3D function() {=0A=
=0A=
  var floatbar =3D document.getElementById(this.id);=0A=
  var left =3D parseInt(floatbar.style.left);=0A=
  var width =3D this.getWidth();=0A=
  =0A=
  if (! this.isHidden) {=0A=
    if (left * -1 < width) {=0A=
      floatbar.style.left =3D left - 2;=0A=
      setTimeout(this.id + '.hide()', 10);=0A=
    } else {=0A=
      this.setState("hidden");=0A=
    }=0A=
  } else {=0A=
    if (left < 0) {=0A=
      floatbar.style.left =3D left + 2;=0A=
      setTimeout(this.id + '.hide()', 10);=0A=
    } else if (this.bounceIndex < this.bounces.length) {=0A=
      floatbar.style.left =3D this.bounces[this.bounceIndex++];=0A=
      setTimeout(this.id + '.hide()', 5);=0A=
    } else {=0A=
      this.bounceIndex =3D 0;=0A=
      this.setState("visible");=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
FloatingToolbar.prototype.setState =3D function(state) {=0A=
=0A=
  this.isHidden =3D (state =3D=3D "hidden");=0A=
=0A=
  var dateString;=0A=
=0A=
  var today =3D new Date();=0A=
  var millis =3D Date.parse(today);=0A=
  today.setTime(millis + 24 * 60 * 60 * 30 * 1000);=0A=
  dateString =3D today.toString();=0A=
=0A=
  document.cookie =3D "toolbarState=3D" + state +=0A=
    ";EXPIRES=3D" + dateString + ";PATH=3D/";=0A=
}=0A=
=0A=
FloatingToolbar.prototype.readState =3D function() {=0A=
=0A=
  var cookieString =3D "" + document.cookie;=0A=
=0A=
  var start =3D cookieString.indexOf("toolbarState");=0A=
  if (start =3D=3D -1) { =0A=
    return false; =0A=
  }=0A=
=0A=
  var end =3D cookieString.indexOf(';', start);=0A=
  if (end =3D=3D -1) { end =3D cookieString.length; }=0A=
=0A=
  var state =3D cookieString.substring(start + "toolbarState".length + =
1, end);=0A=
=0A=
  return (state =3D=3D "hidden");=0A=
}=0A=
=0A=
CONVIO.page.showNavPrompt =3D true;=0A=
=0A=
CONVIO.page.editMenu =3D function() {=0A=
=0A=
  if (CONVIO.page.navFolderID =3D=3D null) {=0A=
    alert("This folder is not associated with a navigation menu.");=0A=
    return;=0A=
  }=0A=
=0A=
  if (CONVIO.page.navFolderID !=3D CONVIO.page.folderID && =
CONVIO.page.showNavPrompt && =0A=
    ! window.confirm("This folder currently inherits its navigation menu =
from the " +=0A=
    "parent folder \"" + CONVIO.page.navFolderTitle + "\".  Do you want =
to create a " +=0A=
    "separate navigation menu for this folder?")) {=0A=
	  return;=0A=
  } =0A=
  =0A=
  CONVIO.page.showNavPrompt =3D false;=0A=
=0A=
  var dialogURL =3D CONVIO.page.adminURL =0A=
                  + =
"/admin/pagelet/linkset.jsp?isMenu=3Dtrue&maxDepth=3D2" =0A=
                  + "&folderID=3D" + CONVIO.page.folderID;=0A=
=0A=
  function showDialog(path, arguments) {=0A=
=0A=
    var now =3D new Date(); =0A=
    var millis =3D Date.parse(now);=0A=
=0A=
    path +=3D path.match(/\?/) ? "&" : "?";=0A=
=0A=
    return window.showModalDialog(=0A=
        path + "nocache=3D" + millis, arguments,=0A=
        "dialogHeight: px; dialogWidth: px; dialogTop: px; " +=0A=
        "dialogLeft: px; edge: Raised; center: Yes; help: No; " +=0A=
        "resizable: Yes; status: No;");=0A=
  }=0A=
=0A=
  if (showDialog(dialogURL)) {=0A=
    window.location =3D window.location.href;=0A=
  }=0A=
}=0A=
=0A=
new function() {=0A=
  function doLoad() {=0A=
=0A=
    if (! CONVIO.prefs || CONVIO.prefs.authorToolbarState !=3D =
"enabled") {=0A=
     return;=0A=
    }=0A=
=0A=
    if (CONVIO.page && CONVIO.page.authorToolbar) {=0A=
      return;=0A=
    }=0A=
=0A=
    var draftID =3D CONVIO.page.draftID;=0A=
    var folderID =3D CONVIO.page.folderID;=0A=
    var adminURL =3D CONVIO.page.adminURL;=0A=
    var cmsToolbar =3D new FloatingToolbar('CONVIO.page.authorToolbar');=0A=
    cmsToolbar.addButton("/components/floatbar/images/title.gif");=0A=
    cmsToolbar.addButton("/system/icons/24x24/toolbox.gif", =0A=
      adminURL + "/admin/portal/portal.jsp?hostID=3D" + =
CONVIO.page.hostID, "Workspace");=0A=
    cmsToolbar.addButton("/system/icons/24x24/step.gif", =0A=
      "javascript:CONVIO.page.editMenu()", "Navigation");=0A=
    if (CONVIO.page.typeID) {=0A=
      cmsToolbar.addButton("/system/icons/24x24/about.gif", =0A=
        adminURL + "/admin/item/actions/status.jsp?itemID=3D" + draftID, =
"Status");=0A=
      cmsToolbar.addButton("/system/icons/24x24/form_green.gif", =0A=
        adminURL + "/admin/item/actions/properties-edit.jsp?itemID=3D" + =
draftID + "&wizard=3Dtrue",=0A=
        "Edit Properties");=0A=
      if (CONVIO.page.hasEditorStep) {=0A=
        cmsToolbar.addButton("/system/icons/24x24/document_text.gif", =0A=
          adminURL + "/admin/item/actions/body-edit.jsp?itemID=3D" + =
draftID + "&wizard=3Dtrue",=0A=
          "Edit Body Content");=0A=
      }=0A=
    }=0A=
=0A=
    cmsToolbar.addButton("/system/icons/24x24/folder.gif", =0A=
      adminURL + "/admin/subsite/folders.jsp?folderID=3D" + folderID,=0A=
      "Browse this folder");=0A=
=0A=
    if (CONVIO.page.typeID) {=0A=
      cmsToolbar.addButton("/system/icons/24x24/document_add.gif", =0A=
        adminURL + "/admin/item/actions/properties-new.jsp?folderID=3D" =
+ folderID + =0A=
        "&typeID=3D" + CONVIO.page.typeID, "New " + =
CONVIO.page.typeLabel);=0A=
    }=0A=
=0A=
    if (CONVIO.page.hasForm) {=0A=
      cmsToolbar.addButton("/system/icons/24x24/inbox_into.gif", =0A=
        adminURL + =
"/admin/item/actions/status.jsp?pane=3Dform&itemID=3D" + draftID,=0A=
        "Form Submissions and Notifications");=0A=
    }=0A=
=0A=
    CONVIO.page.authorToolbar =3D cmsToolbar;=0A=
    cmsToolbar.show();=0A=
  }=0A=
=0A=
  if (window =3D=3D window.top) {=0A=
    if (window.attachEvent) {=0A=
      window.attachEvent("onload", doLoad);=0A=
    } else { =0A=
      window.addEventListener('load',doLoad,false);=0A=
    }=0A=
  }=0A=
}();=0A=

------=_NextPart_000_0000_01CA62B1.06016A90--

