From: <Saved by Windows Internet Explorer 7>
Subject: Press Releases
Date: Mon, 30 Apr 2007 16:02:26 -0500
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01C78B40.F2994FD0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_farewell/press_releases.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 lang=3Den xml:lang=3D"en" =
xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>Press =
Releases</TITLE><!-- BEGINNING OF META DATA TEMPLATE -->
<META content=3D"" name=3Dkeywords>
<META content=3D"" name=3Ddescription>
<META http-equiv=3DContent-Language content=3Den>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3DUTF-8"><!-- END OF META DATA TEMPLATE --><LINK=20
media=3Dall=20
href=3D"http://mx.hallmarkchannel.com/publish/pr/home.stylesheets.hallmar=
k_styles.css"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT src=3D"http://mx.hallmarkchannel.com/publish/js/prototype.js"=20
type=3Dtext/javascript>
</SCRIPT>

<SCRIPT =
src=3D"http://mx.hallmarkchannel.com/publish/js/scriptaculous.js"=20
type=3Dtext/javascript>
</SCRIPT>

<SCRIPT src=3D"http://mx.hallmarkchannel.com/publish/js/core/scripts.js" =

type=3Dtext/javascript>
</SCRIPT>

<SCRIPT =
src=3D"http://mx.hallmarkchannel.com/publish/js/core/fontsizer.js"=20
type=3Dtext/javascript>
</SCRIPT>

<SCRIPT =
src=3D"http://mx.hallmarkchannel.com/publish/js/core/validation.js"=20
type=3Dtext/javascript>
</SCRIPT>

<META content=3D"MSHTML 6.00.6000.16414" name=3DGENERATOR></HEAD>
<BODY class=3Dtwo leftMargin=3D0 topMargin=3D0 marginwidth=3D"0" =
marginheight=3D"0">
<DIV id=3Dwrapper=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px">
<DIV id=3Dnest>
<TABLE id=3Dtwo_column cellSpacing=3D0 cellPadding=3D0 border=3D0>
  <TBODY>
  <TR>
    <TD colSpan=3D2>
      <DIV id=3Dtop=20
      style=3D"BACKGROUND-IMAGE: =
url(/publish/etc/medialib/site_specific/hallmark_pr/images/home/header_im=
age.Par.0001.Image.jpg); WIDTH: 770px; BACKGROUND-REPEAT: no-repeat; =
HEIGHT: 117px"><A=20
      title=3DHome =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home.html">
      <DIV style=3D"FLOAT: left; WIDTH: 50%; HEIGHT: 85%"></DIV></A>
      <DIV id=3Dsmlnav style=3D"PADDING-BOTTOM: 20px">
      <DIV style=3D"DISPLAY: inline; FLOAT: left; WIDTH: =
50px"></DIV></DIV>
      <DIV=20
      style=3D"PADDING-RIGHT: 0px; MARGIN-TOP: -12px; PADDING-LEFT: 0px; =
FLOAT: left; PADDING-BOTTOM: 0px; PADDING-TOP: 0px">
      <DIV id=3Dnavbar>
      <DIV id=3Dnav><A class=3Dnav title=3DHome=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/home.html">Home</A>=
=20
      <SPAN class=3Dvtnvbrk>&nbsp;&nbsp;</SPAN> <A class=3Dnav =
title=3DShows=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows.html">Shows</=
A>=20
      <SPAN class=3Dvtnvbrk>&nbsp;&nbsp;</SPAN> <A class=3Dnav =
title=3DCorporate=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/corporate.html">Cor=
porate</A>=20
      <SPAN class=3Dvtnvbrk>&nbsp;&nbsp;</SPAN> <A class=3Dnav =
title=3DSchedule=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/schedule.html">Sche=
dule</A>=20
      <SPAN class=3Dvtnvbrk>&nbsp;&nbsp;</SPAN> <A class=3Dnav =
title=3DSearch=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/search.html">Search=
</A>=20
      <SPAN class=3Dvtnvbrk>&nbsp;&nbsp;</SPAN> <A class=3Dnav =
title=3D"Contact Us"=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/feedback.html">Cont=
act=20
      Us</A> <SPAN class=3Dvtnvbrk>&nbsp;&nbsp;</SPAN> <A class=3Dnav =
title=3DRegister=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/register.html">Regi=
ster</A>=20
      </DIV></DIV></DIV></DIV></TD></TR>
  <TR>
    <TD id=3Dduoalftcol><!-- START Full column-width unit -->
      <DIV><!-- BEGIN LEFT NAV -->
      <DIV id=3Dleftnav>
      <UL class=3Dtop_level>
        <LI class=3D"active even"><A class=3D"active even"=20
        =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_=
farewell/press_releases.html">Press=20
        Releases</A> </LI></UL></DIV></DIV><!-- END Full column-width =
unit --></TD>
    <TD id=3Dmidtwo vAlign=3Dtop>
      <TABLE cellSpacing=3D0 width=3D"100%">
        <TBODY>
        <TR>
          <TD id=3Dbcrmbirow>
            <SCRIPT type=3Dtext/javascript>
function showEmailBox(e) {

	xpos =3D Event.pointerX(e)-400;
	xpos =3D xpos + "px";
	ypos =3D Event.pointerY(e) -10;
	ypos =3D ypos + "px";

	var iDiv =3D $('initial');
	var oDiv =3D $('emailbox');
	oDiv.innerHTML =3D iDiv.innerHTML;
	Element.setStyle('emailbox', {top: ypos});
	Element.setStyle('emailbox', {left: xpos})
=09
	Effect.Appear('emailbox', { duration: 1.0 });
	//Effect.toggle('emailbox','appear');
}

function validateEmail() {
	//uses core validate.js
	var msg =3D '';
	msg =3D checkEmail($F('toemail'));
	if (msg =3D=3D '') {
		msg =3D checkEmail($F('fromemail'))
		if (msg =3D=3D '') {
			msg =3D isEmpty($F('message'));
		}
	}
	if (msg !=3D '') {
		alert(msg);
		return false;
	} else {
		return true;
	}
}

function submitEmail() {
	if (validateEmail()) {
		var oDiv =3D $('emailbox');
		var subject =3D $F('subject');=09
		var toEmail =3D $F('toemail');
		var fromEmail =3D $F('fromemail');
		var message =3D $F('message');
		var pageUrl =3D window.location.href;
	=09
		var url =3D =
'/publish/pr/home/shows/little_house_farewell/press_releases.email.html';=

		var pars =3D 'subject=3D' + subject + '&toemail=3D' + toEmail + =
'&fromemail=3D' + fromEmail + '&message=3D' + message + '&pageurl=3D' + =
pageUrl;
	=09
		var myAjax =3D new Ajax.Updater(
			'innerbox',=20
			url,=20
			{
				method: 'get',=20
				parameters: pars
			});
=09
		oDiv.innerHTML =3D '<div style=3D"width: 370px; color: #333; =
background-color: #EEE; border: 1px solid #999; text-align: center; =
vertical-align: middle; padding: 8px;">Your e-mail has been =
submitted.<br/>Thank you.</div>';
=09
		//sleep();
	=09
		//closeEmailBox();
		setTimeout('closeEmailBox()', 2000)
	}
}

function closeEmailBox() {
	//Effect.toggle('emailbox','appear', { duration: 10.0});
	Effect.Fade('emailbox', { duration: 1.0 });
}

</SCRIPT>
<!--

	NEED TO UPDATE FORMATTING

-->
            <DIV id=3Dirow><A=20
            =
onmouseover=3D"MM_swapImage('Image17','','/publish/images/core/btn_ro_a_s=
ml.gif',1)"=20
            title=3D"Decrease Font Size"=20
            onclick=3D"downfont('maincntnt', .1);return false;"=20
            onmouseout=3DMM_swapImgRestore()=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_=
farewell/press_releases.html#"><IMG=20
            height=3D13 alt=3D"Decrease Font Size"=20
            =
src=3D"http://mx.hallmarkchannel.com/publish/images/core/btn_a_sml.gif"=20
            width=3D10 border=3D0 name=3DImage17></A> <A=20
            =
onmouseover=3D"MM_swapImage('Image18','','/publish/images/core/btn_ro_a_l=
g.gif',1)"=20
            title=3D"Increase Font Size"=20
            onclick=3D"upfont('maincntnt', .1);return false;"=20
            onmouseout=3DMM_swapImgRestore()=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_=
farewell/press_releases.html#"><IMG=20
            class=3Dsmlpad height=3D13 alt=3D"Increase Font Size"=20
            =
src=3D"http://mx.hallmarkchannel.com/publish/images/core/btn_a_lg.gif"=20
            width=3D10 border=3D0 name=3DImage18></A> <IMG height=3D15 =
alt=3D""=20
            =
src=3D"http://mx.hallmarkchannel.com/publish/images/core/div_g_v.gif"=20
            width=3D1> <A=20
            =
onmouseover=3D"MM_swapImage('Image19','','/publish/images/core/btn_ro_eml=
.gif',1)"=20
            title=3D"Email this page to a friend"=20
            onclick=3D"javascript: showEmailBox(event);"=20
            onmouseout=3DMM_swapImgRestore()=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_=
farewell/press_releases.html#"><IMG=20
            class=3Dsmlpad height=3D9 alt=3D"Email this page to a =
friend"=20
            =
src=3D"http://mx.hallmarkchannel.com/publish/images/core/btn_eml.gif"=20
            width=3D13 border=3D0 name=3DImage19></A> <IMG height=3D15 =
alt=3D""=20
            =
src=3D"http://mx.hallmarkchannel.com/publish/images/core/div_g_v.gif"=20
            width=3D1> <A=20
            =
onmouseover=3D"MM_swapImage('Image20','','/publish/images/core/btn_ro_prn=
t.gif',1)"=20
            title=3D"Printer Friendly Page" =
onmouseout=3DMM_swapImgRestore()=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_=
farewell/press_releases.printerview.html"><IMG=20
            class=3Dsmlpad height=3D13 alt=3D"Printer Friendly Page"=20
            =
src=3D"http://mx.hallmarkchannel.com/publish/images/core/btn_prnt.gif"=20
            width=3D14 border=3D0 name=3DImage20></A>=20
            <DIV id=3Demailbox=20
            style=3D"BORDER-RIGHT: #999 1px solid; BORDER-TOP: #999 1px =
solid; DISPLAY: none; Z-INDEX: 1; LEFT: -260px; FLOAT: none; =
BORDER-LEFT: #999 1px solid; WIDTH: 370px; BORDER-BOTTOM: #999 1px =
solid; POSITION: absolute; TOP: 20px; BACKGROUND-COLOR: #fff; =
TEXT-ALIGN: right"></DIV></DIV>
            <STYLE>INPUT {
	MARGIN: 2px 0px 2px 5px
}
</STYLE>

            <DIV id=3Dinitial=20
            style=3D"BORDER-RIGHT: #999 1px solid; BORDER-TOP: #999 1px =
solid; DISPLAY: none; Z-INDEX: 1; LEFT: -260px; FLOAT: none; =
BORDER-LEFT: #999 1px solid; WIDTH: 370px; BORDER-BOTTOM: #999 1px =
solid; POSITION: absolute; TOP: 20px; BACKGROUND-COLOR: #fff; =
TEXT-ALIGN: right">
            <DIV id=3Dinnerbox=20
            style=3D"PADDING-RIGHT: 4px; PADDING-LEFT: 4px; =
PADDING-BOTTOM: 4px; COLOR: #333; PADDING-TOP: 4px; HEIGHT: 100%; =
BACKGROUND-COLOR: #eee">
            <FORM name=3Demailfriend=20
            =
action=3D/publish/pr/home/shows/little_house_farewell/press_releases.html=
=20
            method=3Dpost>
            <DIV=20
            style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; PADDING-BOTTOM: 5px; PADDING-TOP: 5px">Email=20
            this page to a friend</DIV>To Email: <INPUT id=3Dtoemail=20
            name=3Demailto><BR>From Email:<INPUT id=3Dfromemail=20
            name=3Demailfrom><BR>Message: <TEXTAREA id=3Dmessage =
name=3Dmessage rows=3D4 cols=3D30></TEXTAREA><BR><INPUT id=3Dcancle =
style=3D"BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#ccc 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; BORDER-LEFT: =
#ccc 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #ccc 1px solid; =
BACKGROUND-COLOR: #fff" onclick=3D"javascript: closeEmailBox()" =
type=3Dbutton value=3DCancel name=3Dcancel>=20
<INPUT id=3Dsubmit style=3D"BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: =
2px; BORDER-TOP: #ccc 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; =
BORDER-LEFT: #ccc 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #ccc 1px =
solid; BACKGROUND-COLOR: #fff" onclick=3D"javascript: submitEmail()" =
type=3Dbutton value=3DSubmit name=3Dsubmit>=20
            <INPUT id=3Dsubject type=3Dhidden value=3D"Look at this =
page"=20
            name=3Dsubject> </FORM></DIV></DIV>
            <DIV id=3Dbcrmb><A class=3Dbrdcrmb title=3DHome=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home.html">Home</A>&nbsp=
;<SPAN=20
            class=3Dbcrmbsep>&gt;</SPAN>&nbsp;<A class=3Dbrdcrmb =
title=3DShows=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows.html">Shows</=
A>&nbsp;<SPAN=20
            class=3Dbcrmbsep>&gt;</SPAN>&nbsp;<A class=3Dbrdcrmb=20
            title=3D"Little House Farewell"=20
            =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_=
farewell.html">Little=20
            House Farewell</A>&nbsp;<SPAN =
class=3Dbcrmbsep>&gt;</SPAN>&nbsp;Press=20
            Releases </DIV></TD></TR>
        <TR id=3Dmaincntnt>
          <TD id=3Dduoamidcol>
            <DIV align=3Dleft><BR>
            <DIV align=3Dcenter><FONT size=3D2><STRONG><EM><FONT =
size=3D6>Little House=20
            on the Prarie =
Farewell</FONT></EM><BR><BR><BR>DOWNLOAD</STRONG>=20
            (pdf)</FONT><BR></DIV><BR><STRONG>PREVIOUSLY=20
            RELEASED</STRONG>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; =
<BR>May 16,=20
            2006&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; <BR></DIV>
            <DIV align=3Dright><STRONG>Contact:&nbsp;&nbsp;</STRONG>=20
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pam Slay,=20
            818.755.2480<BR><BR><BR></DIV><BR>
            <DIV align=3Dcenter><U><STRONG>MELISSA ANDERSON SHAKES UP =
HER CAREER=20
            IN EARTHQUAKE =
MINISERIES</STRONG></U><BR></DIV>&nbsp;<BR>Retired=20
            =E2=80=98Little House=E2=80=99 ex is back in the spotlight =
in NBC=E2=80=99s =E2=80=9810.5:=20
            Apocalypse=E2=80=99<BR>&nbsp;<BR>
            <DIV align=3Djustify>&nbsp;&nbsp;&nbsp; Melissa Anderson, =
the former=20
            =E2=80=9CLittle House on the Prairie=E2=80=9D costar, =
retired from show business=20
            more than a decade ago to be a full-time, hands-on=20
            mom.<BR>&nbsp;&nbsp;&nbsp; Now, she muses, her kids are =
shoving her=20
            out the door and back to work.<BR>&nbsp;&nbsp;&nbsp; =
=E2=80=9CIt=E2=80=99s funny how=20
            it has turned around on me like that,=E2=80=9D says =
Anderson, who costars in=20
            =E2=80=9C10.5: Apocalypse,=E2=80=9D NBC=E2=80=99s May =
disaster-movie miniseries.&nbsp; =E2=80=9CYou=20
            devote your life to raising your kids and then they start =
saying,=20
            =E2=80=98Oh, Mom, you should spend more of your time acting =
again=E2=80=99 and they=20
            start pushing you to do it!=E2=80=9D<BR>&nbsp;&nbsp;&nbsp; =
Anderson, 43,=20
            lives in Montreal with her writer/producer husband, Michael =
Sloan,=20
            and their two kids, a 15-year-old daughter and a 9-year-old=20
            son.<BR>&nbsp;&nbsp;&nbsp; Playing the President=E2=80=99s =
wife in =E2=80=9C10.5=E2=80=9D=20
            (which airs at 9 p.m. ET May 21 and 23) got her out of the =
house -=E2=80=93=20
            but not too far from her family, given that the miniseries =
was=20
            filmed in Montreal.<BR>&nbsp;&nbsp;&nbsp; Doing the =
miniseries=20
            brought back memories for Anderson, who was born and raised =
in=20
            California, of past experiences in earthquake =
central.<BR>=E2=80=9CThere was=20
            a big one in 1970, when I was 8, and we weren=E2=80=99t far =
from the=20
            epicenter,=E2=80=9D she recalls.&nbsp; =E2=80=9CWe had a =
two-story home and the=20
            chandelier that hung in the stairwell was swinging all over =
the=20
            place, but I didn=E2=80=99t even know to be scared. I =
thought it was=20
            exciting.=E2=80=9D<BR>&nbsp;&nbsp;&nbsp; Years later, during =
the 1994=20
            Northridge Earthquake, a 6.7 shaker, she wasn=E2=80=99t =
quite as=20
            fearless.&nbsp; =E2=80=9CI was living in Malibu,=E2=80=9D =
she says.&nbsp; =E2=80=9CWe had=20
            substantial damage from that.&nbsp; I remember my daughter =
saying=20
            something like, =E2=80=98My bed is moving, my bed is =
moving!=E2=80=99&nbsp; That was=20
            kind of scary.=E2=80=9D<BR>&nbsp;&nbsp;&nbsp; Anderson, =
billed as Melissa=20
            Sue Anderson back in her =E2=80=9CLittle House=E2=80=9D =
days, doesn=E2=80=99t necessarily=20
            see this gig as a =E2=80=9Ccomeback,=E2=80=9D but she =
concedes that, yes, she=E2=80=99ll=20
            probably be more active in films and TV in the coming=20
            years.<BR>&nbsp;&nbsp;&nbsp; =E2=80=9CA lot of people can =
balance and juggle=20
            and do it all, work and family, and not feel that =
they=E2=80=99re missing=20
            something,=E2=80=9D Anderson says, =E2=80=9Cbut I =
don=E2=80=99t think I=E2=80=99m one of those=20
            people.&nbsp; I think I really needed to focus totally on =
raising my=20
            kids in order to feel I was doing my =
best.=E2=80=9D<BR>&nbsp;&nbsp;&nbsp; To=20
            many TV lovers, Anderson will always be Mary Ingalls, the =
oldest=20
            =E2=80=9CLittle House=E2=80=9D daughter, the one who =
eventually lost her=20
            sight.&nbsp; The 1974-83 family drama is still popular in =
reruns=20
            (airing at 10 and 11 a.m. and 3 and 4 p.m. ET weekdays on =
Hallmark=20
            Channel).&nbsp; But she doesn=E2=80=99t think of her =
=E2=80=9CLittle House=E2=80=9D legacy=20
            as being any kind of a burden.<BR>&nbsp;&nbsp;&nbsp; =
=E2=80=9CI was happy=20
            for the job and it was a great place to work and I feel like =
I did=20
            some really good work and I learned a lot,=E2=80=9D she =
says, =E2=80=9Cso it was all=20
            good experiences.&nbsp; But at the same time, I do hope it =
won=E2=80=99t be=20
            all I=E2=80=99m ever associated =
with.=E2=80=9D<BR>&nbsp;<BR></DIV>&nbsp;<BR><BR>
            <DIV align=3Dcenter>-- HALLMARK CHANNEL --<BR></DIV>&nbsp;=20
        </TD></TR></TBODY></TABLE></TD></TR>
  <TR>
    <TD id=3Dftr colSpan=3D2>
      <DIV align=3Dcenter><A id=3D/content/pr/home/feedback=20
      =
href=3D"mailto:pressfeedback@hallmarkchannel.com?subject=3DPR%20Portal%20=
Feedback">Contact=20
      Us</A> | <A id=3D/content/pr/home/company_info=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/company_info.html">=
Company=20
      Info</A> | <A id=3D/content/pr/home/links=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/links.html">Corpora=
te=20
      Links</A> | <A id=3D/content/pr/home/terms_of_use=20
      =
href=3D"http://mx.hallmarkchannel.com/publish/pr/home/terms_of_use.html">=
Terms=20
      Of Use</A><BR><BR>=C2=A92006 CROWN MEDIA HOLDINGS, INC. All rights =
reserved.=20
      </DIV></TD></TR></TBODY></TABLE></DIV></DIV>
<SCRIPT=20
src=3D"http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_f=
arewell/press_releases.analytics.js?id=3D1177960557436"=20
type=3Dtext/javascript>
</SCRIPT>
<!-- total page load time =3D 474 milliseconds --></BODY></HTML>

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://mx.hallmarkchannel.com/publish/images/core/btn_a_sml.gif

R0lGODlhCgANAIABALKysgAAACH5BAEAAAEALAAAAAAKAA0AAAIahA+hqcvckmzuUGpuhNmtH3SI
F4KiCV3IahQAOw==

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://mx.hallmarkchannel.com/publish/images/core/btn_a_lg.gif

R0lGODlhCgANAIABALKysgAAACH5BAEAAAEALAAAAAAKAA0AAAIbhA+hqcvckmzuRGiWDpnvjjif
6JXgB1EcwgIFADs=

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://mx.hallmarkchannel.com/publish/images/core/div_g_v.gif

R0lGODlhAQARAIAAAGtra////yH5BAUUAAEALAAAAAABABEAAAIFRIynCQUAOw==

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://mx.hallmarkchannel.com/publish/images/core/btn_eml.gif

R0lGODlhDQAJAIABALKysgAAACH5BAEAAAEALAAAAAANAAkAAAIXhI8Zy3wBmoMRymrmqrQ9x0mg
eCWmUQAAOw==

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://mx.hallmarkchannel.com/publish/images/core/btn_prnt.gif

R0lGODlhDgANAIABALKysgAAACH5BAEAAAEALAAAAAAOAA0AAAIgTIBpu8DI2juRNjWry3FLfXkP
5CQmCVWjqGKqUZ6yUwAAOw==

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/pr/home.stylesheets.hallmark_styles.css

BODY {
	FONT-SIZE: 12px; MARGIN: 0px; COLOR: #000; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #f7cd29
}
STRONG {
	FONT-WEIGHT: bolder
}
B {
	FONT-WEIGHT: bolder
}
A:link {
	FONT-SIZE: 1em; COLOR: #0e648c; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A:visited {
	FONT-SIZE: 1em; COLOR: #0e648c; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A:hover {
	FONT-SIZE: 1em; COLOR: #999999; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A:active {
	FONT-SIZE: 1em; COLOR: #0e648c; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
.results {
	FONT-SIZE: 1em
}
.results A:link {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; COLOR: #0e648c; FONT-FAMILY: =
'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: =
none
}
.results A:visited {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; COLOR: #0e648c; FONT-FAMILY: =
'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: =
none
}
.results A:hover {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; COLOR: #999999; FONT-FAMILY: =
'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: =
none
}
.results A:active {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; COLOR: #0e648c; FONT-FAMILY: =
'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: =
none
}
.results_ctr {
	FONT-SIZE: 1em; COLOR: #826541; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
.result_description {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; COLOR: #999; FONT-FAMILY: =
'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif
}
#nest {
	PADDING-RIGHT: 0px; MARGIN-TOP: 5px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
2px; MARGIN-LEFT: auto; WIDTH: 770px; MARGIN-RIGHT: auto; PADDING-TOP: =
5px
}
#top {
	BACKGROUND-IMAGE: url(/publish/images/spacer.gif); WIDTH: 770px; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 117px
}
#cntnt {
	MARGIN: 0px 5px; WIDTH: 770px
}
.lftwda {
	PADDING-RIGHT: 15px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
.lftwd {
	PADDING-RIGHT: 15px; BACKGROUND-POSITION: 50% bottom; PADDING-LEFT: =
10px; BACKGROUND-IMAGE: url(/publish/images/core/div_bw_h.gif); =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BACKGROUND-REPEAT: repeat-x
}
.lftnwlft {
	PADDING-RIGHT: 15px; PADDING-LEFT: 10px; FLOAT: left; BACKGROUND-IMAGE: =
url(/publish/images/core/bkgd_c2col_lft.gif); PADDING-BOTTOM: 10px; =
WIDTH: 231px; PADDING-TOP: 10px; BACKGROUND-REPEAT: repeat-y
}
.lftnwrt {
	PADDING-RIGHT: 15px; PADDING-LEFT: 12px; FLOAT: left; BACKGROUND-IMAGE: =
url(/publish/images/core/bkgd_c2col_rt.gif); PADDING-BOTTOM: 10px; =
WIDTH: 231px; PADDING-TOP: 10px
}
.rt {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 10px; maring: 0px
}
.frm {
	PADDING-LEFT: 3px; FONT-SIZE: 10px; COLOR: #6a635b; FONT-FAMILY: =
'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif
}
#ftr {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 10px; BACKGROUND: =
url(/publish/images/core/div_bw_dblh.gif) #000 repeat-x 50% top; =
PADDING-BOTTOM: 10px; MARGIN: 0px; COLOR: #ecdc85; PADDING-TOP: 10px; =
HEIGHT: 10px
}
#ftr A:link {
	FONT-SIZE: 10px; COLOR: #898779; TEXT-DECORATION: none
}
#ftr A:visited {
	FONT-SIZE: 10px; COLOR: #898779; TEXT-DECORATION: none
}
#ftr A:hover {
	FONT-SIZE: 10px; COLOR: #999999; TEXT-DECORATION: none
}
#ftr A:active {
	FONT-SIZE: 10px; COLOR: #898779; TEXT-DECORATION: none
}
#one_column {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
}
#dtlcol {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 608px; PADDING-TOP: 10px; BACKGROUND-COLOR: =
#fff79a
}
#one_column #bcrmbirow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND-IMAGE: =
url(/publish/images/breadCrumbBk_full.jpg); PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 770px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; =
HEIGHT: 20px
}
#one_column #bcrmb {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 0px 10px; WIDTH: 500px; COLOR: #fff; PADDING-TOP: =
0px
}
#one_column .bcrmbsep {
	COLOR: #fff
}
#one_column #irow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 100px; PADDING-TOP: 0px; TEXT-ALIGN: right
}
#three_column {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
}
#midthree {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: =
625px; PADDING-TOP: 0px; HEIGHT: 100%
}
#mainthree {
	HEIGHT: 100%
}
#trilftcol {
	BACKGROUND-POSITION: right 50%; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_v.gif); VERTICAL-ALIGN: top; WIDTH: =
145px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #680102
}
#trimidcol {
	PADDING-RIGHT: 10px; BACKGROUND-POSITION: right 50%; PADDING-LEFT: =
10px; BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); =
PADDING-BOTTOM: 10px; VERTICAL-ALIGN: top; WIDTH: 430px; PADDING-TOP: =
10px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fff79a
}
#trirtcol {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 174px; PADDING-TOP: 0px; BACKGROUND-COLOR: =
#fcf0be
}
#two_column {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; WIDTH: 770px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
}
#midtwo {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: =
625px; PADDING-TOP: 0px; BACKGROUND-COLOR: #fff79a
}
#duoalftcol {
	BACKGROUND-POSITION: right 50%; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_v.gif); VERTICAL-ALIGN: top; WIDTH: =
145px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #680102
}
#duoamidcol {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 605px; PADDING-TOP: 10px; BACKGROUND-COLOR: =
#fff79a
}
#three_column_nonav {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#trialftcol {
	PADDING-RIGHT: 10px; BACKGROUND-POSITION: right 50%; PADDING-LEFT: =
10px; BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); =
PADDING-BOTTOM: 10px; VERTICAL-ALIGN: top; WIDTH: 180px; PADDING-TOP: =
10px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fcf0be
}
#triamidcol {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 410px; PADDING-TOP: 10px; BACKGROUND-COLOR: =
#fff79a
}
#triartcol {
	BACKGROUND-POSITION: left 50%; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_v.gif); VERTICAL-ALIGN: top; WIDTH: =
180px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fcf0be
}
#three_column_nonav #bcrmbirow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND-IMAGE: =
url(/publish/images/breadCrumbBk_full.jpg); PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 770px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; =
HEIGHT: 20px
}
#three_column_nonav #bcrmb {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 0px 10px; WIDTH: 500px; COLOR: #fff; PADDING-TOP: =
0px
}
#three_column_nonav .bcrmbsep {
	COLOR: #fff
}
#three_column_nonav #irow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 100px; PADDING-TOP: 0px; TEXT-ALIGN: right
}
#two_column_nonav {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 770px; PADDING-TOP: 0px
}
#lftcol {
	PADDING-RIGHT: 10px; BACKGROUND-POSITION: right 50%; PADDING-LEFT: =
10px; BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); =
PADDING-BOTTOM: 10px; VERTICAL-ALIGN: top; WIDTH: 500px; PADDING-TOP: =
10px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fff79a
}
#rtcol {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: =
0px; VERTICAL-ALIGN: top; WIDTH: 230px; PADDING-TOP: 0px; =
BACKGROUND-COLOR: #fcf0be
}
#two_column_nonav #bcrmbirow {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: 1px 0px; PADDING-LEFT: 0px; =
BACKGROUND-IMAGE: url(/publish/images/breadCrumbBk_full.jpg); =
PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 770px; PADDING-TOP: 0px; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 20px
}
#two_column_nonav #bcrmb {
	FONT-SIZE: 11px; WIDTH: 650px; COLOR: #fff
}
#two_column_nonav .bcrmbsep {
	COLOR: #fff
}
#two_column_nonav #irow {
	FLOAT: right; WIDTH: 100px; TEXT-ALIGN: right
}
#homepage {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 770px; PADDING-TOP: 0px
}
#hplftcol {
	PADDING-RIGHT: 5px; BACKGROUND-POSITION: right 50%; PADDING-LEFT: 5px; =
BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); =
PADDING-BOTTOM: 5px; VERTICAL-ALIGN: top; WIDTH: 135px; COLOR: #fff; =
PADDING-TOP: 5px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #680102
}
#hpmidcol {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; VERTICAL-ALIGN: top; WIDTH: 405px; PADDING-TOP: 0px; =
BACKGROUND-COLOR: #fff79a; TEXT-ALIGN: center
}
#hpmainftr {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; VERTICAL-ALIGN: top; WIDTH: 405px; PADDING-TOP: 0px; BORDER-BOTTOM: =
#f7cd29 1px solid; BACKGROUND-COLOR: #fff79a; TEXT-ALIGN: center
}
#hprtcol {
	PADDING-RIGHT: 5px; BACKGROUND-POSITION: left 50%; PADDING-LEFT: 5px; =
BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); =
PADDING-BOTTOM: 5px; VERTICAL-ALIGN: top; WIDTH: 220px; PADDING-TOP: =
5px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fcf0be
}
#hpftrlft {
	BORDER-RIGHT: #f7cd29 1px solid; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; VERTICAL-ALIGN: top; WIDTH: 50%; =
PADDING-TOP: 0px; BACKGROUND-COLOR: #fff79a; TEXT-ALIGN: left
}
#hpftrrt {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; VERTICAL-ALIGN: top; WIDTH: 50%; PADDING-TOP: 0px; =
BACKGROUND-COLOR: #f7e986; TEXT-ALIGN: left
}
#hpftrrt .rt {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 220px; PADDING-TOP: 0px
}
#article {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#articlelftcol {
	BACKGROUND-POSITION: right 50%; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_v.gif); VERTICAL-ALIGN: top; WIDTH: =
145px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #680102
}
#articlemidcol {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 410px; PADDING-TOP: 10px; BACKGROUND-COLOR: =
#fff79a
}
#articlerttcol {
	VERTICAL-ALIGN: top; WIDTH: 205px; BACKGROUND-COLOR: #fff79a
}
#bcrmbirow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND-IMAGE: =
url(/publish/images/breadCrumbBk.jpg); PADDING-BOTTOM: 0px; MARGIN: 0px; =
WIDTH: 620px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: =
21px
}
#bcrmb {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 0px 10px; WIDTH: 400px; COLOR: #fff; PADDING-TOP: =
0px
}
.bcrmbsep {
	COLOR: #fff
}
#irow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 100px; PADDING-TOP: 0px; TEXT-ALIGN: right
}
.vtnvbrk {
	BACKGROUND-IMAGE: url(/publish/images/core/div_g_v.gif); MARGIN: 0px =
2px; WIDTH: 1px; BACKGROUND-REPEAT: repeat-y; HEIGHT: 18px
}
#navbar {
	MARGIN: 0px 5px 0px 0px; WIDTH: 770px; HEIGHT: 24px
}
#nav {
	PADDING-RIGHT: 2px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
11px; PADDING-BOTTOM: 2px; MARGIN: 0px; COLOR: #ecbd55; PADDING-TOP: =
6px; FONT-FAMILY: 'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif; =
LETTER-SPACING: 0.05em; TEXT-ALIGN: right
}
A.nav:link {
	COLOR: #ecbd55; TEXT-DECORATION: none
}
A.nav:visited {
	COLOR: #ecbd55; TEXT-DECORATION: none
}
A.nav:hover {
	COLOR: #ecbd55; TEXT-DECORATION: none
}
A.nav:active {
	COLOR: #ecbd55; TEXT-DECORATION: none
}
#smlnav {
	PADDING-RIGHT: 12px; PADDING-LEFT: 0px; FONT-SIZE: 11px; FLOAT: right; =
PADDING-BOTTOM: 20px; COLOR: #f8e3aa; PADDING-TOP: 15px
}
A.smlnav:link {
	FONT-SIZE: 11px; COLOR: #f8e3aa; FONT-FAMILY: Arial, Helvetica, =
sans-serif; TEXT-DECORATION: none
}
A.smlnav:visited {
	FONT-SIZE: 11px; COLOR: #f8e3aa; FONT-FAMILY: Arial, Helvetica, =
sans-serif; TEXT-DECORATION: none
}
A.smlnav:hover {
	FONT-SIZE: 11px; COLOR: #f8e3aa; FONT-FAMILY: Arial, Helvetica, =
sans-serif; TEXT-DECORATION: none
}
A.smlnav:active {
	FONT-SIZE: 11px; COLOR: #f8e3aa; FONT-FAMILY: Arial, Helvetica, =
sans-serif; TEXT-DECORATION: none
}
#leftnav {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 145px; PADDING-TOP: 0px
}
#leftnav UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
#leftnav LI {
	FONT-WEIGHT: bold; FONT-SIZE: 1em; MARGIN: 0px
}
#leftnav A {
	PADDING-RIGHT: 3px; DISPLAY: block; PADDING-LEFT: 5px; PADDING-BOTTOM: =
5px; TEXT-TRANSFORM: uppercase; WIDTH: 140px; COLOR: #f1c210; =
PADDING-TOP: 5px; BACKGROUND-COLOR: #850502
}
#leftnav A:hover {
	COLOR: #fff
}
#leftnav A.odd {
	BACKGROUND-COLOR: #850502
}
#leftnav A.even {
	BACKGROUND-COLOR: #680102
}
UNKNOWN {
	COLOR: #fff
}
UNKNOWN {
	COLOR: #fff
}
#leftnav A.active {
	FONT-WEIGHT: bold; COLOR: #fff; BACKGROUND-COLOR: #c89d12
}
#leftnav A.active:hover {
	COLOR: #fff
}
#leftnav A.open {
=09
}
#leftnav A.open:hover {
=09
}
#leftnav A.openactive {
	FONT-WEIGHT: bold; COLOR: #fff; BACKGROUND-COLOR: #c89d12
}
#leftnav A.openactive:hover {
	COLOR: #fff
}
#leftnav LI LI A {
	PADDING-RIGHT: 3px; DISPLAY: block; PADDING-LEFT: 15px; PADDING-BOTTOM: =
5px; TEXT-TRANSFORM: none; WIDTH: 130px; COLOR: #fff; PADDING-TOP: 5px; =
BACKGROUND-COLOR: #b50b07
}
#leftnav LI LI A:hover {
	COLOR: #c89d12
}
#leftnav LI LI LI A {
	PADDING-RIGHT: 3px; DISPLAY: block; PADDING-LEFT: 25px; PADDING-BOTTOM: =
5px; WIDTH: 120px; COLOR: #fff; PADDING-TOP: 5px; BACKGROUND-COLOR: =
#4f0000
}
#leftnav LI LI LI A:hover {
	COLOR: #fff
}
.tna {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BACKGROUND-COLOR: #c89d12
}
.tnb {
	PADDING-LEFT: 10px
}
.tnc {
	PADDING-LEFT: 20px
}
.lvlonea {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BACKGROUND-COLOR: #850502
}
.lvloneb {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BACKGROUND-COLOR: #680102
}
.lvloneact {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BACKGROUND-COLOR: #c89d12
}
#smlfrm {
	CLEAR: right; PADDING-RIGHT: 12px; FLOAT: right
}
#smlfrm INPUT {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; =
BACKGROUND: #ffffff; BORDER-BOTTOM-WIDTH: 0px; MARGIN-RIGHT: 3px; =
BORDER-RIGHT-WIDTH: 0px; font-color: #6A635B
}
.picfloatrt {
	CLEAR: right; FLOAT: right; MARGIN: 0px 0px 0px 8px
}
.picfloatlft {
	CLEAR: left; FLOAT: left; MARGIN: 0px 8px 0px 0px
}
.smlpad {
	MARGIN: 0px 4px
}
.vpad {
	MARGIN: 0px 4px 5px
}
.grypbrdr {
	BORDER-RIGHT: #999999 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: =
#999999 1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; BORDER-LEFT: =
#999999 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #999999 1px solid
}
.subline {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 5px
}
.lftdivpd {
	MARGIN: 10px 15px 10px 10px
}
.hzg {
	BACKGROUND-POSITION: 50% bottom; BACKGROUND-IMAGE: =
url(/publish/images/core/div_g_h.gif); BACKGROUND-REPEAT: repeat-x; =
HEIGHT: 1px
}
.hzb {
	BACKGROUND-POSITION: 50% bottom; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_h.gif); MARGIN: 0px 5px; =
BACKGROUND-REPEAT: repeat-x; HEIGHT: 28px
}
.hzbw {
	BACKGROUND-IMAGE: url(/publish/images/core/div_bw_h.gif); =
BACKGROUND-REPEAT: repeat-x; HEIGHT: 1px; BACKGROUND-COLOR: #ffffff
}
.vtg {
	BACKGROUND-IMAGE: url(/publish/images/core/div_gw_v.gif); WIDTH: 1px; =
BACKGROUND-REPEAT: repeat-y
}
.vtb {
	BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); WIDTH: 1px; =
BACKGROUND-REPEAT: repeat-y; HEIGHT: 100%
}
.vtbw {
	BACKGROUND-IMAGE: url(/publish/images/core/div_bw_v.gif); WIDTH: 1px; =
BACKGROUND-REPEAT: repeat-y; HEIGHT: 100%; BACKGROUND-COLOR: #ffffff
}
.smlnavdiv {
	COLOR: #a2a2a2
}
.clear {
	CLEAR: all
}
.clrrt {
	CLEAR: right
}
.clrlft {
	CLEAR: left
}
DIV.hdr {
	DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 1.5em; PADDING-BOTTOM: =
2px; MARGIN: 0px; COLOR: #826541
}
H2 {
	FONT-WEIGHT: bold; FONT-SIZE: 1.5em; PADDING-BOTTOM: 2px; MARGIN: 0px; =
COLOR: #826541
}
.subhdr {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.callout {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 5px; COLOR: #826541; PADDING-TOP: 5px
}
.p {
	PADDING-RIGHT: 20px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; COLOR: =
#666666; PADDING-TOP: 0px
}
A.treelink:link {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.treelink:visited {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.treelink:hover {
	FONT-SIZE: 0.95em; COLOR: #f3c015; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.treelink:active {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinkact:link {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinkact:visited {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinkact:hover {
	FONT-SIZE: 0.95em; COLOR: #f3c015; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinkact:active {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinka:link {
	FONT-SIZE: 0.95em; COLOR: #f3c015; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinka:visited {
	FONT-SIZE: 0.95em; COLOR: #f3c015; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinka:hover {
	FONT-SIZE: 0.95em; COLOR: #fff39b; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.lvlonelinka:active {
	FONT-SIZE: 0.95em; COLOR: #f3c015; FONT-FAMILY: 'Trebuchet MS', =
Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.subline:link {
	FONT-SIZE: 12px; COLOR: #0e648c; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.subline:visited {
	FONT-SIZE: 12px; COLOR: #0e648c; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.subline:hover {
	FONT-SIZE: 12px; COLOR: #999999; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.subline:active {
	FONT-SIZE: 12px; COLOR: #0e648c; FONT-FAMILY: 'Trebuchet MS', Verdana, =
Arial, Helvetica, sans-serif; TEXT-DECORATION: none
}
A.frmbtn:link {
	COLOR: #ffffff; TEXT-DECORATION: none
}
A.frmbtn:visited {
	COLOR: #ffffff; TEXT-DECORATION: none
}
A.frmbtn:hover {
	COLOR: #cccccc; TEXT-DECORATION: none
}
A.frmbtn:active {
	COLOR: #ffffff; TEXT-DECORATION: none
}
A.brdcrmb:link {
	FONT-SIZE: 11px; COLOR: #fff; TEXT-DECORATION: none
}
A.brdcrmb:visited {
	FONT-SIZE: 11px; COLOR: #fff; TEXT-DECORATION: none
}
A.brdcrmb:hover {
	FONT-SIZE: 11px; COLOR: #fff; TEXT-DECORATION: none
}
A.brdcrmb:active {
	FONT-SIZE: 11px; COLOR: #fff; TEXT-DECORATION: none
}
A.deluxeTxtEditorLnk:link {
	COLOR: #000000
}
A.deluxeTxtEditorLnk:visited {
	COLOR: #000000
}
A.deluxeTxtEditorLnk:hover {
	COLOR: #000000
}
A.deluxeTxtEditorLnk:active {
	COLOR: #000000
}
DIV.mediaflash {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
UNKNOWN {
	BORDER-RIGHT: #ff0000 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#ff0000 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 5px; BORDER-LEFT: #ff0000 1px solid; PADDING-TOP: 0px; =
BORDER-BOTTOM: #ff0000 1px solid
}
#maincntnt {
	FONT-SIZE: 1em
}
#searchcontent {
	FONT-SIZE: 1em
}
#search_results {
	FONT-SIZE: 1em
}
#schedule {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#schedulelftcol {
	BACKGROUND-POSITION: right 50%; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_v.gif); VERTICAL-ALIGN: top; WIDTH: =
148px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #680102
}
#schedulemidcol {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 248px; PADDING-TOP: 10px; BACKGROUND-COLOR: =
#f7cd29
}
#schedulerttcol {
	VERTICAL-ALIGN: top; WIDTH: 375px; BACKGROUND-COLOR: #fce57f
}
A.scheddayview:link {
	COLOR: #fce57f
}
A.scheddayview:active {
	COLOR: #fce57f
}
A.scheddayview:visited {
	COLOR: #fce57f
}
A.scheddayview:hover {
	COLOR: #270c00
}
#schedulecal {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 250px; COLOR: #270c00; PADDING-TOP: 0px
}
#schedulertop {
	PADDING-LEFT: 5px; BACKGROUND: #000000; COLOR: #fed943
}
#dayListingLink {
	PADDING-LEFT: 5px; BACKGROUND: #fce57f; FLOAT: left; WIDTH: 170px; =
COLOR: #680102
}
#primeListingLink {
	PADDING-LEFT: 5px; BACKGROUND: #c89d12; FLOAT: right; WIDTH: 170px; =
COLOR: #fff79a
}
#calHeadMonthYear {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #680102
}
#monthUp {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #680102
}
#monthDn {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #680102
}
#underCalendarText {
	FONT-WEIGHT: bold; PADDING-TOP: 5px; TEXT-ALIGN: center
}
#weeklyViewLink {
	TEXT-ALIGN: center
}
A.weeklyViewLink:link {
	COLOR: #680102
}
A.weeklyViewLink:visited {
	COLOR: #680102
}
A.weeklyViewLink:active {
	COLOR: #680102
}
A.weeklyViewLink:hover {
	COLOR: #fce57f
}
#schedRightHeader {
	FONT-WEIGHT: bold; HEIGHT: 40px
}
#calendar1_container {
	PADDING-LEFT: 10px; MARGIN: 0px
}
#programlistingtop {
	PADDING-LEFT: 5px; FONT-WEIGHT: bold; FONT-SIZE: 1.4em; BACKGROUND: =
#fce57f; COLOR: #680102
}
#programlisting {
	PADDING-LEFT: 5px; BACKGROUND: #fbe158; COLOR: #270c00
}
#programslot {
	FONT-WEIGHT: bold; FONT-SIZE: 1.2em; BACKGROUND: #fce57f; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
#programname {
	FLOAT: right; PADDING-BOTTOM: 5px; WIDTH: 250px; COLOR: #680102; =
PADDING-TOP: 5px; BORDER-BOTTOM: #fff48d 1px solid; HEIGHT: 15px
}
#programtime {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
5px; WIDTH: 80px; COLOR: #1b1a00; PADDING-TOP: 5px; BORDER-BOTTOM: =
#fff48d 1px solid; HEIGHT: 15px
}
#programinfo {
	PADDING-LEFT: 3px; FONT-SIZE: 0.8em; Z-INDEX: 5; BACKGROUND: #680102; =
FLOAT: left; COLOR: #c89d12
}
#scheduleweekcol {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; VERTICAL-ALIGN: top; WIDTH: 623px; PADDING-TOP: 0px; =
BACKGROUND-COLOR: #ffed2f
}
#scheduleweeklftcol {
	BACKGROUND-POSITION: right 50%; BACKGROUND-IMAGE: =
url(/publish/images/core/div_bw_v.gif); VERTICAL-ALIGN: top; WIDTH: =
148px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #680102
}
#topWeekView {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1.4em; BACKGROUND: =
#fce57f; PADDING-BOTTOM: 0px; MARGIN: 0px; VERTICAL-ALIGN: top; =
PADDING-TOP: 0px; HEIGHT: 60px; TEXT-ALIGN: center
}
A.returnDayViewLink:link {
	FONT-WEIGHT: bold; FONT-SIZE: 0.8em; COLOR: #680102
}
A.returnDayViewLink:visited {
	FONT-WEIGHT: bold; FONT-SIZE: 0.8em; COLOR: #680102
}
A.returnDayViewLink:active {
	FONT-WEIGHT: bold; FONT-SIZE: 0.8em; COLOR: #680102
}
A.returnDayViewLink:hover {
	FONT-WEIGHT: bold; FONT-SIZE: 0.8em; COLOR: #680102
}
A.weekLinks:link {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #680102
}
A.weekLinks:visited {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #680102
}
A.weekLinks:active {
	FONT-WEIGHT: bold; FONT-SIZE: 1.4em; COLOR: #680102
}
A.hover.weekLinks {
	FONT-WEIGHT: bold; FONT-SIZE: 1.1em; COLOR: #680102
}
A.weekproglinks:link {
	FONT-SIZE: 1em; COLOR: #680101
}
A.weekproglinks:visited {
	FONT-SIZE: 1em; COLOR: #680101
}
A.weekproglinks:active {
	FONT-SIZE: 1em; COLOR: #680101
}
A.weekproglinks:hover {
	FONT-SIZE: 1em; COLOR: #680101
}
A.dayprogramlinks:link {
	COLOR: #680101
}
A.dayprogramlinks:visited {
	COLOR: #680101
}
A.dayprogramlinks:active {
	COLOR: #680101
}
A.dayprogramlinks:hover {
	COLOR: #680101
}
TABLE.weekCalendar {
	FONT-SIZE: 1em; MARGIN: 0px; WIDTH: 620px; BORDER-COLLAPSE: collapse; =
BACKGROUND-COLOR: #ffed2f; TEXT-ALIGN: center
}
TABLE.weekCalendar TD {
	BORDER-RIGHT: #ffed2f 1px solid; BORDER-TOP: #ffed2f 1px solid; =
BORDER-LEFT: #ffed2f 1px solid; WIDTH: 74px; BORDER-BOTTOM: #ffed2f 1px =
solid
}
TABLE.weekCalendar TD.lightRow {
	BACKGROUND-COLOR: #feffbf
}
TABLE.weekCalendar TD.heading {
	BACKGROUND-COLOR: #ffce0f
}
TABLE.weekCalendar TD.heading_firstCol {
	BACKGROUND-COLOR: #ffce0f
}
TABLE.weekCalendar TD.darkRow {
	BACKGROUND-COLOR: #fce57f
}
#tableContainer {
	PADDING-LEFT: 1px; PADDING-TOP: 2px
}
TABLE.calendar {
	BORDER-RIGHT: #999999 0px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#999999 0px solid; PADDING-LEFT: 0px; FONT-SIZE: 1em; PADDING-BOTTOM: =
0px; MARGIN: 0px; BORDER-LEFT: #999999 0px solid; WIDTH: 228px; =
PADDING-TOP: 0px; BORDER-BOTTOM: #999999 0px solid; FONT-FAMILY: =
Helvetica, Arial, sans-serif; BORDER-COLLAPSE: collapse; =
BACKGROUND-COLOR: #f7cd29; TEXT-ALIGN: center; -moz-user-select: none
}
TABLE.calendar INPUT {
	FONT-SIZE: 1em
}
TABLE.calendar SELECT {
	FONT-SIZE: 1em
}
TABLE.calendar TD {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 1em; =
BORDER-BOTTOM-WIDTH: 0px; TEXT-ALIGN: center; BORDER-RIGHT-WIDTH: 0px
}
DIV.mainheading {
	MARGIN: 2px
}
TABLE.caldayheading {
	MARGIN: 0px 6px; CURSOR: default; BORDER-COLLAPSE: collapse; =
empty-cells: show
}
TABLE.caldayheading TD {
	BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #ffffff 1px solid; =
FONT-WEIGHT: bold; BORDER-LEFT: #ffffff 1px solid; WIDTH: 26px; COLOR: =
#ffffff; BORDER-BOTTOM: #ffffff 1px solid; BACKGROUND-COLOR: #cd9d15; =
TEXT-ALIGN: center
}
TABLE.caldayheading TD.wkhead {
	BORDER-RIGHT: #cccccc 3px double
}
TABLE.calcells {
	MARGIN: 0px 6px; COLOR: #634b00; BORDER-COLLAPSE: collapse; =
BACKGROUND-COLOR: #fce57f
}
TABLE.calcells TD {
	BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #ffffff 1px solid; =
FONT-WEIGHT: bold; VERTICAL-ALIGN: top; BORDER-LEFT: #ffffff 1px solid; =
WIDTH: 26px; CURSOR: pointer; BORDER-BOTTOM: #ffffff 1px solid; HEIGHT: =
20px; TEXT-ALIGN: center
}
TABLE.calcells TD DIV {
	PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: =
0px; PADDING-TOP: 1px
}
TABLE.calcells TD.wkhead {
	BORDER-RIGHT: #cccccc 3px double; COLOR: #0054e3; BACKGROUND-COLOR: =
white; TEXT-ALIGN: center
}
TABLE.calcells TD.wkday {
=09
}
TABLE.calcells TD.wkend {
=09
}
TABLE.calcells TD.curdate {
=09
}
TABLE.calcells TD.cell_selected {
	COLOR: #ffffff; BACKGROUND-COLOR: #eac433
}
TABLE.calcells TD.notmnth {
	CURSOR: default; COLOR: #cccccc; BACKGROUND-COLOR: #fce57f
}
TABLE.calcells TD.notallowed {
	CURSOR: default; COLOR: #ffffff; FONT-STYLE: italic; BACKGROUND-COLOR: =
#fce57f
}
TABLE.calcells TD.hover {
	BACKGROUND-COLOR: #999999
}
.frm P {
	CLEAR: left; PADDING-RIGHT: 0px; PADDING-LEFT: 80px; FONT-SIZE: 12px; =
PADDING-BOTTOM: 8px; MARGIN: 0px; WIDTH: 250px; COLOR: #000; =
PADDING-TOP: 5px; HEIGHT: 1%
}
.frm LABEL {
	FONT-WEIGHT: bold; FLOAT: left; MARGIN-LEFT: -80px; WIDTH: 75px; =
TEXT-ALIGN: right
}
.frm INPUT[type=3D'text'] {
	WIDTH: 180px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.frm TEXTAREA {
	WIDTH: 250px; HEIGHT: 150px
}
.frm_md P {
	CLEAR: left; PADDING-RIGHT: 0px; PADDING-LEFT: 205px; PADDING-BOTTOM: =
8px; MARGIN: 0px; WIDTH: 300px; PADDING-TOP: 5px; HEIGHT: 1%
}
.frm_md LABEL {
	FONT-WEIGHT: bold; FLOAT: left; MARGIN-LEFT: -205px; WIDTH: 200px; =
TEXT-ALIGN: right
}
.frm_md INPUT[type=3D'text'] {
	WIDTH: 50px
}
.frm_btm P {
	MARGIN-LEFT: 50px; WIDTH: 300px; PADDING-TOP: 5px
}
.frm_sbmt {
	FONT-WEIGHT: bold; COLOR: #f4b856; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: =
#680000; BORDER-BOTTOM-STYLE: none
}
.frm_rst {
	FONT-WEIGHT: bold; COLOR: #f4b856; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: =
#680000; BORDER-BOTTOM-STYLE: none
}
TD.gallery_item {
	BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; =
PADDING-BOTTOM: 10px; VERTICAL-ALIGN: bottom; BORDER-LEFT: #ccc 1px =
solid; PADDING-TOP: 10px; BORDER-BOTTOM: #ccc 1px solid; TEXT-ALIGN: =
center
}
TD.gallery_item_no_left {
	BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; =
PADDING-BOTTOM: 10px; VERTICAL-ALIGN: bottom; PADDING-TOP: 10px; =
BORDER-BOTTOM: #ccc 1px solid; TEXT-ALIGN: center
}
TD.gallery_item_no_top {
	BORDER-RIGHT: #ccc 1px solid; PADDING-BOTTOM: 10px; VERTICAL-ALIGN: =
bottom; BORDER-LEFT: #ccc 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: =
#ccc 1px solid; TEXT-ALIGN: center
}
TD.gallery_item_no_top_left {
	BORDER-RIGHT: #ccc 1px solid; PADDING-BOTTOM: 10px; VERTICAL-ALIGN: =
bottom; PADDING-TOP: 10px; BORDER-BOTTOM: #ccc 1px solid; TEXT-ALIGN: =
center
}
.gallery_table {
=09
}
.gallery_item_links {
	VERTICAL-ALIGN: bottom; TEXT-ALIGN: center
}

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/js/prototype.js

/*  Prototype JavaScript framework, version 1.5.0_rc0=0A=
 *  (c) 2005 Sam Stephenson <sam@conio.net>=0A=
 *=0A=
 *  Prototype is freely distributable under the terms of an MIT-style =
license.=0A=
 *  For details, see the Prototype web site: http://prototype.conio.net/=0A=
 *=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Prototype =3D {=0A=
  Version: '1.5.0_rc0',=0A=
  ScriptFragment: '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',=0A=
=0A=
  emptyFunction: function() {},=0A=
  K: function(x) {return x}=0A=
}=0A=
=0A=
var Class =3D {=0A=
  create: function() {=0A=
    return function() {=0A=
      this.initialize.apply(this, arguments);=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
var Abstract =3D new Object();=0A=
=0A=
Object.extend =3D function(destination, source) {=0A=
  for (var property in source) {=0A=
    destination[property] =3D source[property];=0A=
  }=0A=
  return destination;=0A=
}=0A=
=0A=
Object.inspect =3D function(object) {=0A=
  try {=0A=
    if (object =3D=3D undefined) return 'undefined';=0A=
    if (object =3D=3D null) return 'null';=0A=
    return object.inspect ? object.inspect() : object.toString();=0A=
  } catch (e) {=0A=
    if (e instanceof RangeError) return '...';=0A=
    throw e;=0A=
  }=0A=
}=0A=
=0A=
Function.prototype.bind =3D function() {=0A=
  var __method =3D this, args =3D $A(arguments), object =3D args.shift();=0A=
  return function() {=0A=
    return __method.apply(object, args.concat($A(arguments)));=0A=
  }=0A=
}=0A=
=0A=
Function.prototype.bindAsEventListener =3D function(object) {=0A=
  var __method =3D this;=0A=
  return function(event) {=0A=
    return __method.call(object, event || window.event);=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Number.prototype, {=0A=
  toColorPart: function() {=0A=
    var digits =3D this.toString(16);=0A=
    if (this < 16) return '0' + digits;=0A=
    return digits;=0A=
  },=0A=
=0A=
  succ: function() {=0A=
    return this + 1;=0A=
  },=0A=
=0A=
  times: function(iterator) {=0A=
    $R(0, this, true).each(iterator);=0A=
    return this;=0A=
  }=0A=
});=0A=
=0A=
var Try =3D {=0A=
  these: function() {=0A=
    var returnValue;=0A=
=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var lambda =3D arguments[i];=0A=
      try {=0A=
        returnValue =3D lambda();=0A=
        break;=0A=
      } catch (e) {}=0A=
    }=0A=
=0A=
    return returnValue;=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var PeriodicalExecuter =3D Class.create();=0A=
PeriodicalExecuter.prototype =3D {=0A=
  initialize: function(callback, frequency) {=0A=
    this.callback =3D callback;=0A=
    this.frequency =3D frequency;=0A=
    this.currentlyExecuting =3D false;=0A=
=0A=
    this.registerCallback();=0A=
  },=0A=
=0A=
  registerCallback: function() {=0A=
    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    if (!this.currentlyExecuting) {=0A=
      try {=0A=
        this.currentlyExecuting =3D true;=0A=
        this.callback();=0A=
      } finally {=0A=
        this.currentlyExecuting =3D false;=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
Object.extend(String.prototype, {=0A=
  gsub: function(pattern, replacement) {=0A=
    var result =3D '', source =3D this, match;=0A=
    replacement =3D arguments.callee.prepareReplacement(replacement);=0A=
=0A=
    while (source.length > 0) {=0A=
      if (match =3D source.match(pattern)) {=0A=
        result +=3D source.slice(0, match.index);=0A=
        result +=3D (replacement(match) || '').toString();=0A=
        source  =3D source.slice(match.index + match[0].length);=0A=
      } else {=0A=
        result +=3D source, source =3D '';=0A=
      }=0A=
    }=0A=
    return result;=0A=
  },=0A=
=0A=
  sub: function(pattern, replacement, count) {=0A=
    replacement =3D this.gsub.prepareReplacement(replacement);=0A=
    count =3D count =3D=3D=3D undefined ? 1 : count;=0A=
=0A=
    return this.gsub(pattern, function(match) {=0A=
      if (--count < 0) return match[0];=0A=
      return replacement(match);=0A=
    });=0A=
  },=0A=
=0A=
  scan: function(pattern, iterator) {=0A=
    this.gsub(pattern, iterator);=0A=
    return this;=0A=
  },=0A=
=0A=
  truncate: function(length, truncation) {=0A=
    length =3D length || 30;=0A=
    truncation =3D truncation =3D=3D=3D undefined ? '...' : truncation;=0A=
    return this.length > length ?=0A=
      this.slice(0, length - truncation.length) + truncation : this;=0A=
  },=0A=
=0A=
  strip: function() {=0A=
    return this.replace(/^\s+/, '').replace(/\s+$/, '');=0A=
  },=0A=
=0A=
  stripTags: function() {=0A=
    return this.replace(/<\/?[^>]+>/gi, '');=0A=
  },=0A=
=0A=
  stripScripts: function() {=0A=
    return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), '');=0A=
  },=0A=
=0A=
  extractScripts: function() {=0A=
    var matchAll =3D new RegExp(Prototype.ScriptFragment, 'img');=0A=
    var matchOne =3D new RegExp(Prototype.ScriptFragment, 'im');=0A=
    return (this.match(matchAll) || []).map(function(scriptTag) {=0A=
      return (scriptTag.match(matchOne) || ['', ''])[1];=0A=
    });=0A=
  },=0A=
=0A=
  evalScripts: function() {=0A=
    return this.extractScripts().map(function(script) { return =
eval(script) });=0A=
  },=0A=
=0A=
  escapeHTML: function() {=0A=
    var div =3D document.createElement('div');=0A=
    var text =3D document.createTextNode(this);=0A=
    div.appendChild(text);=0A=
    return div.innerHTML;=0A=
  },=0A=
=0A=
  unescapeHTML: function() {=0A=
    var div =3D document.createElement('div');=0A=
    div.innerHTML =3D this.stripTags();=0A=
    return div.childNodes[0] ? div.childNodes[0].nodeValue : '';=0A=
  },=0A=
=0A=
  toQueryParams: function() {=0A=
    var pairs =3D this.match(/^\??(.*)$/)[1].split('&');=0A=
    return pairs.inject({}, function(params, pairString) {=0A=
      var pair =3D pairString.split('=3D');=0A=
      params[pair[0]] =3D pair[1];=0A=
      return params;=0A=
    });=0A=
  },=0A=
=0A=
  toArray: function() {=0A=
    return this.split('');=0A=
  },=0A=
=0A=
  camelize: function() {=0A=
    var oStringList =3D this.split('-');=0A=
    if (oStringList.length =3D=3D 1) return oStringList[0];=0A=
=0A=
    var camelizedString =3D this.indexOf('-') =3D=3D 0=0A=
      ? oStringList[0].charAt(0).toUpperCase() + =
oStringList[0].substring(1)=0A=
      : oStringList[0];=0A=
=0A=
    for (var i =3D 1, len =3D oStringList.length; i < len; i++) {=0A=
      var s =3D oStringList[i];=0A=
      camelizedString +=3D s.charAt(0).toUpperCase() + s.substring(1);=0A=
    }=0A=
=0A=
    return camelizedString;=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return "'" + this.replace(/\\/g, '\\\\').replace(/'/g, '\\\'') + "'";=0A=
  }=0A=
});=0A=
=0A=
String.prototype.gsub.prepareReplacement =3D function(replacement) {=0A=
  if (typeof replacement =3D=3D 'function') return replacement;=0A=
  var template =3D new Template(replacement);=0A=
  return function(match) { return template.evaluate(match) };=0A=
}=0A=
=0A=
String.prototype.parseQuery =3D String.prototype.toQueryParams;=0A=
=0A=
var Template =3D Class.create();=0A=
Template.Pattern =3D /(^|.|\r|\n)(#\{(.*?)\})/;=0A=
Template.prototype =3D {=0A=
  initialize: function(template, pattern) {=0A=
    this.template =3D template.toString();=0A=
    this.pattern  =3D pattern || Template.Pattern;=0A=
  },=0A=
=0A=
  evaluate: function(object) {=0A=
    return this.template.gsub(this.pattern, function(match) {=0A=
      var before =3D match[1];=0A=
      if (before =3D=3D '\\') return match[2];=0A=
      return before + (object[match[3]] || '').toString();=0A=
    });=0A=
  }=0A=
}=0A=
=0A=
var $break    =3D new Object();=0A=
var $continue =3D new Object();=0A=
=0A=
var Enumerable =3D {=0A=
  each: function(iterator) {=0A=
    var index =3D 0;=0A=
    try {=0A=
      this._each(function(value) {=0A=
        try {=0A=
          iterator(value, index++);=0A=
        } catch (e) {=0A=
          if (e !=3D $continue) throw e;=0A=
        }=0A=
      });=0A=
    } catch (e) {=0A=
      if (e !=3D $break) throw e;=0A=
    }=0A=
  },=0A=
=0A=
  all: function(iterator) {=0A=
    var result =3D true;=0A=
    this.each(function(value, index) {=0A=
      result =3D result && !!(iterator || Prototype.K)(value, index);=0A=
      if (!result) throw $break;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  any: function(iterator) {=0A=
    var result =3D true;=0A=
    this.each(function(value, index) {=0A=
      if (result =3D !!(iterator || Prototype.K)(value, index))=0A=
        throw $break;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  collect: function(iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      results.push(iterator(value, index));=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  detect: function (iterator) {=0A=
    var result;=0A=
    this.each(function(value, index) {=0A=
      if (iterator(value, index)) {=0A=
        result =3D value;=0A=
        throw $break;=0A=
      }=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  findAll: function(iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      if (iterator(value, index))=0A=
        results.push(value);=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  grep: function(pattern, iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      var stringValue =3D value.toString();=0A=
      if (stringValue.match(pattern))=0A=
        results.push((iterator || Prototype.K)(value, index));=0A=
    })=0A=
    return results;=0A=
  },=0A=
=0A=
  include: function(object) {=0A=
    var found =3D false;=0A=
    this.each(function(value) {=0A=
      if (value =3D=3D object) {=0A=
        found =3D true;=0A=
        throw $break;=0A=
      }=0A=
    });=0A=
    return found;=0A=
  },=0A=
=0A=
  inject: function(memo, iterator) {=0A=
    this.each(function(value, index) {=0A=
      memo =3D iterator(memo, value, index);=0A=
    });=0A=
    return memo;=0A=
  },=0A=
=0A=
  invoke: function(method) {=0A=
    var args =3D $A(arguments).slice(1);=0A=
    return this.collect(function(value) {=0A=
      return value[method].apply(value, args);=0A=
    });=0A=
  },=0A=
=0A=
  max: function(iterator) {=0A=
    var result;=0A=
    this.each(function(value, index) {=0A=
      value =3D (iterator || Prototype.K)(value, index);=0A=
      if (result =3D=3D undefined || value >=3D result)=0A=
        result =3D value;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  min: function(iterator) {=0A=
    var result;=0A=
    this.each(function(value, index) {=0A=
      value =3D (iterator || Prototype.K)(value, index);=0A=
      if (result =3D=3D undefined || value < result)=0A=
        result =3D value;=0A=
    });=0A=
    return result;=0A=
  },=0A=
=0A=
  partition: function(iterator) {=0A=
    var trues =3D [], falses =3D [];=0A=
    this.each(function(value, index) {=0A=
      ((iterator || Prototype.K)(value, index) ?=0A=
        trues : falses).push(value);=0A=
    });=0A=
    return [trues, falses];=0A=
  },=0A=
=0A=
  pluck: function(property) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      results.push(value[property]);=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  reject: function(iterator) {=0A=
    var results =3D [];=0A=
    this.each(function(value, index) {=0A=
      if (!iterator(value, index))=0A=
        results.push(value);=0A=
    });=0A=
    return results;=0A=
  },=0A=
=0A=
  sortBy: function(iterator) {=0A=
    return this.collect(function(value, index) {=0A=
      return {value: value, criteria: iterator(value, index)};=0A=
    }).sort(function(left, right) {=0A=
      var a =3D left.criteria, b =3D right.criteria;=0A=
      return a < b ? -1 : a > b ? 1 : 0;=0A=
    }).pluck('value');=0A=
  },=0A=
=0A=
  toArray: function() {=0A=
    return this.collect(Prototype.K);=0A=
  },=0A=
=0A=
  zip: function() {=0A=
    var iterator =3D Prototype.K, args =3D $A(arguments);=0A=
    if (typeof args.last() =3D=3D 'function')=0A=
      iterator =3D args.pop();=0A=
=0A=
    var collections =3D [this].concat(args).map($A);=0A=
    return this.map(function(value, index) {=0A=
      return iterator(collections.pluck(index));=0A=
    });=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '#<Enumerable:' + this.toArray().inspect() + '>';=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Enumerable, {=0A=
  map:     Enumerable.collect,=0A=
  find:    Enumerable.detect,=0A=
  select:  Enumerable.findAll,=0A=
  member:  Enumerable.include,=0A=
  entries: Enumerable.toArray=0A=
});=0A=
var $A =3D Array.from =3D function(iterable) {=0A=
  if (!iterable) return [];=0A=
  if (iterable.toArray) {=0A=
    return iterable.toArray();=0A=
  } else {=0A=
    var results =3D [];=0A=
    for (var i =3D 0; i < iterable.length; i++)=0A=
      results.push(iterable[i]);=0A=
    return results;=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Array.prototype, Enumerable);=0A=
=0A=
if (!Array.prototype._reverse)=0A=
  Array.prototype._reverse =3D Array.prototype.reverse;=0A=
=0A=
Object.extend(Array.prototype, {=0A=
  _each: function(iterator) {=0A=
    for (var i =3D 0; i < this.length; i++)=0A=
      iterator(this[i]);=0A=
  },=0A=
=0A=
  clear: function() {=0A=
    this.length =3D 0;=0A=
    return this;=0A=
  },=0A=
=0A=
  first: function() {=0A=
    return this[0];=0A=
  },=0A=
=0A=
  last: function() {=0A=
    return this[this.length - 1];=0A=
  },=0A=
=0A=
  compact: function() {=0A=
    return this.select(function(value) {=0A=
      return value !=3D undefined || value !=3D null;=0A=
    });=0A=
  },=0A=
=0A=
  flatten: function() {=0A=
    return this.inject([], function(array, value) {=0A=
      return array.concat(value && value.constructor =3D=3D Array ?=0A=
        value.flatten() : [value]);=0A=
    });=0A=
  },=0A=
=0A=
  without: function() {=0A=
    var values =3D $A(arguments);=0A=
    return this.select(function(value) {=0A=
      return !values.include(value);=0A=
    });=0A=
  },=0A=
=0A=
  indexOf: function(object) {=0A=
    for (var i =3D 0; i < this.length; i++)=0A=
      if (this[i] =3D=3D object) return i;=0A=
    return -1;=0A=
  },=0A=
=0A=
  reverse: function(inline) {=0A=
    return (inline !=3D=3D false ? this : this.toArray())._reverse();=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '[' + this.map(Object.inspect).join(', ') + ']';=0A=
  }=0A=
});=0A=
var Hash =3D {=0A=
  _each: function(iterator) {=0A=
    for (var key in this) {=0A=
      var value =3D this[key];=0A=
      if (typeof value =3D=3D 'function') continue;=0A=
=0A=
      var pair =3D [key, value];=0A=
      pair.key =3D key;=0A=
      pair.value =3D value;=0A=
      iterator(pair);=0A=
    }=0A=
  },=0A=
=0A=
  keys: function() {=0A=
    return this.pluck('key');=0A=
  },=0A=
=0A=
  values: function() {=0A=
    return this.pluck('value');=0A=
  },=0A=
=0A=
  merge: function(hash) {=0A=
    return $H(hash).inject($H(this), function(mergedHash, pair) {=0A=
      mergedHash[pair.key] =3D pair.value;=0A=
      return mergedHash;=0A=
    });=0A=
  },=0A=
=0A=
  toQueryString: function() {=0A=
    return this.map(function(pair) {=0A=
      return pair.map(encodeURIComponent).join('=3D');=0A=
    }).join('&');=0A=
  },=0A=
=0A=
  inspect: function() {=0A=
    return '#<Hash:{' + this.map(function(pair) {=0A=
      return pair.map(Object.inspect).join(': ');=0A=
    }).join(', ') + '}>';=0A=
  }=0A=
}=0A=
=0A=
function $H(object) {=0A=
  var hash =3D Object.extend({}, object || {});=0A=
  Object.extend(hash, Enumerable);=0A=
  Object.extend(hash, Hash);=0A=
  return hash;=0A=
}=0A=
ObjectRange =3D Class.create();=0A=
Object.extend(ObjectRange.prototype, Enumerable);=0A=
Object.extend(ObjectRange.prototype, {=0A=
  initialize: function(start, end, exclusive) {=0A=
    this.start =3D start;=0A=
    this.end =3D end;=0A=
    this.exclusive =3D exclusive;=0A=
  },=0A=
=0A=
  _each: function(iterator) {=0A=
    var value =3D this.start;=0A=
    do {=0A=
      iterator(value);=0A=
      value =3D value.succ();=0A=
    } while (this.include(value));=0A=
  },=0A=
=0A=
  include: function(value) {=0A=
    if (value < this.start)=0A=
      return false;=0A=
    if (this.exclusive)=0A=
      return value < this.end;=0A=
    return value <=3D this.end;=0A=
  }=0A=
});=0A=
=0A=
var $R =3D function(start, end, exclusive) {=0A=
  return new ObjectRange(start, end, exclusive);=0A=
}=0A=
=0A=
var Ajax =3D {=0A=
  getTransport: function() {=0A=
    return Try.these(=0A=
      function() {return new XMLHttpRequest()},=0A=
      function() {return new ActiveXObject('Msxml2.XMLHTTP')},=0A=
      function() {return new ActiveXObject('Microsoft.XMLHTTP')}=0A=
    ) || false;=0A=
  },=0A=
=0A=
  activeRequestCount: 0=0A=
}=0A=
=0A=
Ajax.Responders =3D {=0A=
  responders: [],=0A=
=0A=
  _each: function(iterator) {=0A=
    this.responders._each(iterator);=0A=
  },=0A=
=0A=
  register: function(responderToAdd) {=0A=
    if (!this.include(responderToAdd))=0A=
      this.responders.push(responderToAdd);=0A=
  },=0A=
=0A=
  unregister: function(responderToRemove) {=0A=
    this.responders =3D this.responders.without(responderToRemove);=0A=
  },=0A=
=0A=
  dispatch: function(callback, request, transport, json) {=0A=
    this.each(function(responder) {=0A=
      if (responder[callback] && typeof responder[callback] =3D=3D =
'function') {=0A=
        try {=0A=
          responder[callback].apply(responder, [request, transport, =
json]);=0A=
        } catch (e) {}=0A=
      }=0A=
    });=0A=
  }=0A=
};=0A=
=0A=
Object.extend(Ajax.Responders, Enumerable);=0A=
=0A=
Ajax.Responders.register({=0A=
  onCreate: function() {=0A=
    Ajax.activeRequestCount++;=0A=
  },=0A=
=0A=
  onComplete: function() {=0A=
    Ajax.activeRequestCount--;=0A=
  }=0A=
});=0A=
=0A=
Ajax.Base =3D function() {};=0A=
Ajax.Base.prototype =3D {=0A=
  setOptions: function(options) {=0A=
    this.options =3D {=0A=
      method:       'post',=0A=
      asynchronous: true,=0A=
      contentType:  'application/x-www-form-urlencoded',=0A=
      parameters:   ''=0A=
    }=0A=
    Object.extend(this.options, options || {});=0A=
  },=0A=
=0A=
  responseIsSuccess: function() {=0A=
    return this.transport.status =3D=3D undefined=0A=
        || this.transport.status =3D=3D 0=0A=
        || (this.transport.status >=3D 200 && this.transport.status < =
300);=0A=
  },=0A=
=0A=
  responseIsFailure: function() {=0A=
    return !this.responseIsSuccess();=0A=
  }=0A=
}=0A=
=0A=
Ajax.Request =3D Class.create();=0A=
Ajax.Request.Events =3D=0A=
  ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];=0A=
=0A=
Ajax.Request.prototype =3D Object.extend(new Ajax.Base(), {=0A=
  initialize: function(url, options) {=0A=
    this.transport =3D Ajax.getTransport();=0A=
    this.setOptions(options);=0A=
    this.request(url);=0A=
  },=0A=
=0A=
  request: function(url) {=0A=
    var parameters =3D this.options.parameters || '';=0A=
    if (parameters.length > 0) parameters +=3D '&_=3D';=0A=
=0A=
    try {=0A=
      this.url =3D url;=0A=
      if (this.options.method =3D=3D 'get' && parameters.length > 0)=0A=
        this.url +=3D (this.url.match(/\?/) ? '&' : '?') + parameters;=0A=
=0A=
      Ajax.Responders.dispatch('onCreate', this, this.transport);=0A=
=0A=
      this.transport.open(this.options.method, this.url,=0A=
        this.options.asynchronous);=0A=
=0A=
      if (this.options.asynchronous) {=0A=
        this.transport.onreadystatechange =3D =
this.onStateChange.bind(this);=0A=
        setTimeout((function() =
{this.respondToReadyState(1)}).bind(this), 10);=0A=
      }=0A=
=0A=
      this.setRequestHeaders();=0A=
=0A=
      var body =3D this.options.postBody ? this.options.postBody : =
parameters;=0A=
      this.transport.send(this.options.method =3D=3D 'post' ? body : =
null);=0A=
=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
  },=0A=
=0A=
  setRequestHeaders: function() {=0A=
    var requestHeaders =3D=0A=
      ['X-Requested-With', 'XMLHttpRequest',=0A=
       'X-Prototype-Version', Prototype.Version,=0A=
       'Accept', 'text/javascript, text/html, application/xml, text/xml, =
*/*'];=0A=
=0A=
    if (this.options.method =3D=3D 'post') {=0A=
      requestHeaders.push('Content-type', this.options.contentType);=0A=
=0A=
      /* Force "Connection: close" for Mozilla browsers to work around=0A=
       * a bug where XMLHttpReqeuest sends an incorrect Content-length=0A=
       * header. See Mozilla Bugzilla #246651.=0A=
       */=0A=
      if (this.transport.overrideMimeType)=0A=
        requestHeaders.push('Connection', 'close');=0A=
    }=0A=
=0A=
    if (this.options.requestHeaders)=0A=
      requestHeaders.push.apply(requestHeaders, =
this.options.requestHeaders);=0A=
=0A=
    for (var i =3D 0; i < requestHeaders.length; i +=3D 2)=0A=
      this.transport.setRequestHeader(requestHeaders[i], =
requestHeaders[i+1]);=0A=
  },=0A=
=0A=
  onStateChange: function() {=0A=
    var readyState =3D this.transport.readyState;=0A=
    if (readyState !=3D 1)=0A=
      this.respondToReadyState(this.transport.readyState);=0A=
  },=0A=
=0A=
  header: function(name) {=0A=
    try {=0A=
      return this.transport.getResponseHeader(name);=0A=
    } catch (e) {}=0A=
  },=0A=
=0A=
  evalJSON: function() {=0A=
    try {=0A=
      return eval('(' + this.header('X-JSON') + ')');=0A=
    } catch (e) {}=0A=
  },=0A=
=0A=
  evalResponse: function() {=0A=
    try {=0A=
      return eval(this.transport.responseText);=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
  },=0A=
=0A=
  respondToReadyState: function(readyState) {=0A=
    var event =3D Ajax.Request.Events[readyState];=0A=
    var transport =3D this.transport, json =3D this.evalJSON();=0A=
=0A=
    if (event =3D=3D 'Complete') {=0A=
      try {=0A=
        (this.options['on' + this.transport.status]=0A=
         || this.options['on' + (this.responseIsSuccess() ? 'Success' : =
'Failure')]=0A=
         || Prototype.emptyFunction)(transport, json);=0A=
      } catch (e) {=0A=
        this.dispatchException(e);=0A=
      }=0A=
=0A=
      if ((this.header('Content-type') || =
'').match(/^text\/javascript/i))=0A=
        this.evalResponse();=0A=
    }=0A=
=0A=
    try {=0A=
      (this.options['on' + event] || Prototype.emptyFunction)(transport, =
json);=0A=
      Ajax.Responders.dispatch('on' + event, this, transport, json);=0A=
    } catch (e) {=0A=
      this.dispatchException(e);=0A=
    }=0A=
=0A=
    /* Avoid memory leak in MSIE: clean up the oncomplete event handler =
*/=0A=
    if (event =3D=3D 'Complete')=0A=
      this.transport.onreadystatechange =3D Prototype.emptyFunction;=0A=
  },=0A=
=0A=
  dispatchException: function(exception) {=0A=
    (this.options.onException || Prototype.emptyFunction)(this, =
exception);=0A=
    Ajax.Responders.dispatch('onException', this, exception);=0A=
  }=0A=
});=0A=
=0A=
Ajax.Updater =3D Class.create();=0A=
=0A=
Object.extend(Object.extend(Ajax.Updater.prototype, =
Ajax.Request.prototype), {=0A=
  initialize: function(container, url, options) {=0A=
    this.containers =3D {=0A=
      success: container.success ? $(container.success) : $(container),=0A=
      failure: container.failure ? $(container.failure) :=0A=
        (container.success ? null : $(container))=0A=
    }=0A=
=0A=
    this.transport =3D Ajax.getTransport();=0A=
    this.setOptions(options);=0A=
=0A=
    var onComplete =3D this.options.onComplete || =
Prototype.emptyFunction;=0A=
    this.options.onComplete =3D (function(transport, object) {=0A=
      this.updateContent();=0A=
      onComplete(transport, object);=0A=
    }).bind(this);=0A=
=0A=
    this.request(url);=0A=
  },=0A=
=0A=
  updateContent: function() {=0A=
    var receiver =3D this.responseIsSuccess() ?=0A=
      this.containers.success : this.containers.failure;=0A=
    var response =3D this.transport.responseText;=0A=
=0A=
    if (!this.options.evalScripts)=0A=
      response =3D response.stripScripts();=0A=
=0A=
    if (receiver) {=0A=
      if (this.options.insertion) {=0A=
        new this.options.insertion(receiver, response);=0A=
      } else {=0A=
        Element.update(receiver, response);=0A=
      }=0A=
    }=0A=
=0A=
    if (this.responseIsSuccess()) {=0A=
      if (this.onComplete)=0A=
        setTimeout(this.onComplete.bind(this), 10);=0A=
    }=0A=
  }=0A=
});=0A=
=0A=
Ajax.PeriodicalUpdater =3D Class.create();=0A=
Ajax.PeriodicalUpdater.prototype =3D Object.extend(new Ajax.Base(), {=0A=
  initialize: function(container, url, options) {=0A=
    this.setOptions(options);=0A=
    this.onComplete =3D this.options.onComplete;=0A=
=0A=
    this.frequency =3D (this.options.frequency || 2);=0A=
    this.decay =3D (this.options.decay || 1);=0A=
=0A=
    this.updater =3D {};=0A=
    this.container =3D container;=0A=
    this.url =3D url;=0A=
=0A=
    this.start();=0A=
  },=0A=
=0A=
  start: function() {=0A=
    this.options.onComplete =3D this.updateComplete.bind(this);=0A=
    this.onTimerEvent();=0A=
  },=0A=
=0A=
  stop: function() {=0A=
    this.updater.onComplete =3D undefined;=0A=
    clearTimeout(this.timer);=0A=
    (this.onComplete || Prototype.emptyFunction).apply(this, arguments);=0A=
  },=0A=
=0A=
  updateComplete: function(request) {=0A=
    if (this.options.decay) {=0A=
      this.decay =3D (request.responseText =3D=3D this.lastText ?=0A=
        this.decay * this.options.decay : 1);=0A=
=0A=
      this.lastText =3D request.responseText;=0A=
    }=0A=
    this.timer =3D setTimeout(this.onTimerEvent.bind(this),=0A=
      this.decay * this.frequency * 1000);=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    this.updater =3D new Ajax.Updater(this.container, this.url, =
this.options);=0A=
  }=0A=
});=0A=
function $() {=0A=
  var results =3D [], element;=0A=
  for (var i =3D 0; i < arguments.length; i++) {=0A=
    element =3D arguments[i];=0A=
    if (typeof element =3D=3D 'string')=0A=
      element =3D document.getElementById(element);=0A=
    results.push(Element.extend(element));=0A=
  }=0A=
  return results.length < 2 ? results[0] : results;=0A=
}=0A=
=0A=
document.getElementsByClassName =3D function(className, parentElement) {=0A=
  var children =3D ($(parentElement) || =
document.body).getElementsByTagName('*');=0A=
  return $A(children).inject([], function(elements, child) {=0A=
    if (child.className.match(new RegExp("(^|\\s)" + className + =
"(\\s|$)")))=0A=
      elements.push(Element.extend(child));=0A=
    return elements;=0A=
  });=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
if (!window.Element)=0A=
  var Element =3D new Object();=0A=
=0A=
Element.extend =3D function(element) {=0A=
  if (!element) return;=0A=
  if (_nativeExtensions) return element;=0A=
=0A=
  if (!element._extended && element.tagName && element !=3D window) {=0A=
    var methods =3D Element.Methods, cache =3D Element.extend.cache;=0A=
    for (property in methods) {=0A=
      var value =3D methods[property];=0A=
      if (typeof value =3D=3D 'function')=0A=
        element[property] =3D cache.findOrStore(value);=0A=
    }=0A=
  }=0A=
=0A=
  element._extended =3D true;=0A=
  return element;=0A=
}=0A=
=0A=
Element.extend.cache =3D {=0A=
  findOrStore: function(value) {=0A=
    return this[value] =3D this[value] || function() {=0A=
      return value.apply(null, [this].concat($A(arguments)));=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
Element.Methods =3D {=0A=
  visible: function(element) {=0A=
    return $(element).style.display !=3D 'none';=0A=
  },=0A=
=0A=
  toggle: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var element =3D $(arguments[i]);=0A=
      Element[Element.visible(element) ? 'hide' : 'show'](element);=0A=
    }=0A=
  },=0A=
=0A=
  hide: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var element =3D $(arguments[i]);=0A=
      element.style.display =3D 'none';=0A=
    }=0A=
  },=0A=
=0A=
  show: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++) {=0A=
      var element =3D $(arguments[i]);=0A=
      element.style.display =3D '';=0A=
    }=0A=
  },=0A=
=0A=
  remove: function(element) {=0A=
    element =3D $(element);=0A=
    element.parentNode.removeChild(element);=0A=
  },=0A=
=0A=
  update: function(element, html) {=0A=
    $(element).innerHTML =3D html.stripScripts();=0A=
    setTimeout(function() {html.evalScripts()}, 10);=0A=
  },=0A=
=0A=
  replace: function(element, html) {=0A=
    element =3D $(element);=0A=
    if (element.outerHTML) {=0A=
      element.outerHTML =3D html.stripScripts();=0A=
    } else {=0A=
      var range =3D element.ownerDocument.createRange();=0A=
      range.selectNodeContents(element);=0A=
      element.parentNode.replaceChild(=0A=
        range.createContextualFragment(html.stripScripts()), element);=0A=
    }=0A=
    setTimeout(function() {html.evalScripts()}, 10);=0A=
  },=0A=
=0A=
  getHeight: function(element) {=0A=
    element =3D $(element);=0A=
    return element.offsetHeight;=0A=
  },=0A=
=0A=
  classNames: function(element) {=0A=
    return new Element.ClassNames(element);=0A=
  },=0A=
=0A=
  hasClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    return Element.classNames(element).include(className);=0A=
  },=0A=
=0A=
  addClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    return Element.classNames(element).add(className);=0A=
  },=0A=
=0A=
  removeClassName: function(element, className) {=0A=
    if (!(element =3D $(element))) return;=0A=
    return Element.classNames(element).remove(className);=0A=
  },=0A=
=0A=
  // removes whitespace-only text node children=0A=
  cleanWhitespace: function(element) {=0A=
    element =3D $(element);=0A=
    for (var i =3D 0; i < element.childNodes.length; i++) {=0A=
      var node =3D element.childNodes[i];=0A=
      if (node.nodeType =3D=3D 3 && !/\S/.test(node.nodeValue))=0A=
        Element.remove(node);=0A=
    }=0A=
  },=0A=
=0A=
  empty: function(element) {=0A=
    return $(element).innerHTML.match(/^\s*$/);=0A=
  },=0A=
=0A=
  childOf: function(element, ancestor) {=0A=
    element =3D $(element), ancestor =3D $(ancestor);=0A=
    while (element =3D element.parentNode)=0A=
      if (element =3D=3D ancestor) return true;=0A=
    return false;=0A=
  },=0A=
=0A=
  scrollTo: function(element) {=0A=
    element =3D $(element);=0A=
    var x =3D element.x ? element.x : element.offsetLeft,=0A=
        y =3D element.y ? element.y : element.offsetTop;=0A=
    window.scrollTo(x, y);=0A=
  },=0A=
=0A=
  getStyle: function(element, style) {=0A=
    element =3D $(element);=0A=
    var value =3D element.style[style.camelize()];=0A=
    if (!value) {=0A=
      if (document.defaultView && document.defaultView.getComputedStyle) =
{=0A=
        var css =3D document.defaultView.getComputedStyle(element, null);=0A=
        value =3D css ? css.getPropertyValue(style) : null;=0A=
      } else if (element.currentStyle) {=0A=
        value =3D element.currentStyle[style.camelize()];=0A=
      }=0A=
    }=0A=
=0A=
    if (window.opera && ['left', 'top', 'right', =
'bottom'].include(style))=0A=
      if (Element.getStyle(element, 'position') =3D=3D 'static') value =
=3D 'auto';=0A=
=0A=
    return value =3D=3D 'auto' ? null : value;=0A=
  },=0A=
=0A=
  setStyle: function(element, style) {=0A=
    element =3D $(element);=0A=
    for (var name in style)=0A=
      element.style[name.camelize()] =3D style[name];=0A=
  },=0A=
=0A=
  getDimensions: function(element) {=0A=
    element =3D $(element);=0A=
    if (Element.getStyle(element, 'display') !=3D 'none')=0A=
      return {width: element.offsetWidth, height: element.offsetHeight};=0A=
=0A=
    // All *Width and *Height properties give 0 on elements with display =
none,=0A=
    // so enable the element temporarily=0A=
    var els =3D element.style;=0A=
    var originalVisibility =3D els.visibility;=0A=
    var originalPosition =3D els.position;=0A=
    els.visibility =3D 'hidden';=0A=
    els.position =3D 'absolute';=0A=
    els.display =3D '';=0A=
    var originalWidth =3D element.clientWidth;=0A=
    var originalHeight =3D element.clientHeight;=0A=
    els.display =3D 'none';=0A=
    els.position =3D originalPosition;=0A=
    els.visibility =3D originalVisibility;=0A=
    return {width: originalWidth, height: originalHeight};=0A=
  },=0A=
=0A=
  makePositioned: function(element) {=0A=
    element =3D $(element);=0A=
    var pos =3D Element.getStyle(element, 'position');=0A=
    if (pos =3D=3D 'static' || !pos) {=0A=
      element._madePositioned =3D true;=0A=
      element.style.position =3D 'relative';=0A=
      // Opera returns the offset relative to the positioning context, =
when an=0A=
      // element is position relative but top and left have not been =
defined=0A=
      if (window.opera) {=0A=
        element.style.top =3D 0;=0A=
        element.style.left =3D 0;=0A=
      }=0A=
    }=0A=
  },=0A=
=0A=
  undoPositioned: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._madePositioned) {=0A=
      element._madePositioned =3D undefined;=0A=
      element.style.position =3D=0A=
        element.style.top =3D=0A=
        element.style.left =3D=0A=
        element.style.bottom =3D=0A=
        element.style.right =3D '';=0A=
    }=0A=
  },=0A=
=0A=
  makeClipping: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._overflow) return;=0A=
    element._overflow =3D element.style.overflow;=0A=
    if ((Element.getStyle(element, 'overflow') || 'visible') !=3D =
'hidden')=0A=
      element.style.overflow =3D 'hidden';=0A=
  },=0A=
=0A=
  undoClipping: function(element) {=0A=
    element =3D $(element);=0A=
    if (element._overflow) return;=0A=
    element.style.overflow =3D element._overflow;=0A=
    element._overflow =3D undefined;=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Element, Element.Methods);=0A=
=0A=
var _nativeExtensions =3D false;=0A=
=0A=
if(!HTMLElement && /Konqueror|Safari|KHTML/.test(navigator.userAgent)) {=0A=
  var HTMLElement =3D {}=0A=
  HTMLElement.prototype =3D document.createElement('div').__proto__;=0A=
}=0A=
=0A=
Element.addMethods =3D function(methods) {=0A=
  Object.extend(Element.Methods, methods || {});=0A=
=0A=
  if(typeof HTMLElement !=3D 'undefined') {=0A=
    var methods =3D Element.Methods, cache =3D Element.extend.cache;=0A=
    for (property in methods) {=0A=
      var value =3D methods[property];=0A=
      if (typeof value =3D=3D 'function')=0A=
        HTMLElement.prototype[property] =3D cache.findOrStore(value);=0A=
    }=0A=
    _nativeExtensions =3D true;=0A=
  }=0A=
}=0A=
=0A=
Element.addMethods();=0A=
=0A=
var Toggle =3D new Object();=0A=
Toggle.display =3D Element.toggle;=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Abstract.Insertion =3D function(adjacency) {=0A=
  this.adjacency =3D adjacency;=0A=
}=0A=
=0A=
Abstract.Insertion.prototype =3D {=0A=
  initialize: function(element, content) {=0A=
    this.element =3D $(element);=0A=
    this.content =3D content.stripScripts();=0A=
=0A=
    if (this.adjacency && this.element.insertAdjacentHTML) {=0A=
      try {=0A=
        this.element.insertAdjacentHTML(this.adjacency, this.content);=0A=
      } catch (e) {=0A=
        var tagName =3D this.element.tagName.toLowerCase();=0A=
        if (tagName =3D=3D 'tbody' || tagName =3D=3D 'tr') {=0A=
          this.insertContent(this.contentFromAnonymousTable());=0A=
        } else {=0A=
          throw e;=0A=
        }=0A=
      }=0A=
    } else {=0A=
      this.range =3D this.element.ownerDocument.createRange();=0A=
      if (this.initializeRange) this.initializeRange();=0A=
      =
this.insertContent([this.range.createContextualFragment(this.content)]);=0A=
    }=0A=
=0A=
    setTimeout(function() {content.evalScripts()}, 10);=0A=
  },=0A=
=0A=
  contentFromAnonymousTable: function() {=0A=
    var div =3D document.createElement('div');=0A=
    div.innerHTML =3D '<table><tbody>' + this.content + =
'</tbody></table>';=0A=
    return $A(div.childNodes[0].childNodes[0].childNodes);=0A=
  }=0A=
}=0A=
=0A=
var Insertion =3D new Object();=0A=
=0A=
Insertion.Before =3D Class.create();=0A=
Insertion.Before.prototype =3D Object.extend(new =
Abstract.Insertion('beforeBegin'), {=0A=
  initializeRange: function() {=0A=
    this.range.setStartBefore(this.element);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.each((function(fragment) {=0A=
      this.element.parentNode.insertBefore(fragment, this.element);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
Insertion.Top =3D Class.create();=0A=
Insertion.Top.prototype =3D Object.extend(new =
Abstract.Insertion('afterBegin'), {=0A=
  initializeRange: function() {=0A=
    this.range.selectNodeContents(this.element);=0A=
    this.range.collapse(true);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.reverse(false).each((function(fragment) {=0A=
      this.element.insertBefore(fragment, this.element.firstChild);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
Insertion.Bottom =3D Class.create();=0A=
Insertion.Bottom.prototype =3D Object.extend(new =
Abstract.Insertion('beforeEnd'), {=0A=
  initializeRange: function() {=0A=
    this.range.selectNodeContents(this.element);=0A=
    this.range.collapse(this.element);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.each((function(fragment) {=0A=
      this.element.appendChild(fragment);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
Insertion.After =3D Class.create();=0A=
Insertion.After.prototype =3D Object.extend(new =
Abstract.Insertion('afterEnd'), {=0A=
  initializeRange: function() {=0A=
    this.range.setStartAfter(this.element);=0A=
  },=0A=
=0A=
  insertContent: function(fragments) {=0A=
    fragments.each((function(fragment) {=0A=
      this.element.parentNode.insertBefore(fragment,=0A=
        this.element.nextSibling);=0A=
    }).bind(this));=0A=
  }=0A=
});=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Element.ClassNames =3D Class.create();=0A=
Element.ClassNames.prototype =3D {=0A=
  initialize: function(element) {=0A=
    this.element =3D $(element);=0A=
  },=0A=
=0A=
  _each: function(iterator) {=0A=
    this.element.className.split(/\s+/).select(function(name) {=0A=
      return name.length > 0;=0A=
    })._each(iterator);=0A=
  },=0A=
=0A=
  set: function(className) {=0A=
    this.element.className =3D className;=0A=
  },=0A=
=0A=
  add: function(classNameToAdd) {=0A=
    if (this.include(classNameToAdd)) return;=0A=
    this.set(this.toArray().concat(classNameToAdd).join(' '));=0A=
  },=0A=
=0A=
  remove: function(classNameToRemove) {=0A=
    if (!this.include(classNameToRemove)) return;=0A=
    this.set(this.select(function(className) {=0A=
      return className !=3D classNameToRemove;=0A=
    }).join(' '));=0A=
  },=0A=
=0A=
  toString: function() {=0A=
    return this.toArray().join(' ');=0A=
  }=0A=
}=0A=
=0A=
Object.extend(Element.ClassNames.prototype, Enumerable);=0A=
var Selector =3D Class.create();=0A=
Selector.prototype =3D {=0A=
  initialize: function(expression) {=0A=
    this.params =3D {classNames: []};=0A=
    this.expression =3D expression.toString().strip();=0A=
    this.parseExpression();=0A=
    this.compileMatcher();=0A=
  },=0A=
=0A=
  parseExpression: function() {=0A=
    function abort(message) { throw 'Parse error in selector: ' + =
message; }=0A=
=0A=
    if (this.expression =3D=3D '')  abort('empty expression');=0A=
=0A=
    var params =3D this.params, expr =3D this.expression, match, =
modifier, clause, rest;=0A=
    while (match =3D =
expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=3D)(?:"([^"]*)"|([^\]\s]*))=
)?\]$/i)) {=0A=
      params.attributes =3D params.attributes || [];=0A=
      params.attributes.push({name: match[2], operator: match[3], value: =
match[4] || match[5] || ''});=0A=
      expr =3D match[1];=0A=
    }=0A=
=0A=
    if (expr =3D=3D '*') return this.params.wildcard =3D true;=0A=
=0A=
    while (match =3D expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)) {=0A=
      modifier =3D match[1], clause =3D match[2], rest =3D match[3];=0A=
      switch (modifier) {=0A=
        case '#':       params.id =3D clause; break;=0A=
        case '.':       params.classNames.push(clause); break;=0A=
        case '':=0A=
        case undefined: params.tagName =3D clause.toUpperCase(); break;=0A=
        default:        abort(expr.inspect());=0A=
      }=0A=
      expr =3D rest;=0A=
    }=0A=
=0A=
    if (expr.length > 0) abort(expr.inspect());=0A=
  },=0A=
=0A=
  buildMatchExpression: function() {=0A=
    var params =3D this.params, conditions =3D [], clause;=0A=
=0A=
    if (params.wildcard)=0A=
      conditions.push('true');=0A=
    if (clause =3D params.id)=0A=
      conditions.push('element.id =3D=3D ' + clause.inspect());=0A=
    if (clause =3D params.tagName)=0A=
      conditions.push('element.tagName.toUpperCase() =3D=3D ' + =
clause.inspect());=0A=
    if ((clause =3D params.classNames).length > 0)=0A=
      for (var i =3D 0; i < clause.length; i++)=0A=
        conditions.push('Element.hasClassName(element, ' + =
clause[i].inspect() + ')');=0A=
    if (clause =3D params.attributes) {=0A=
      clause.each(function(attribute) {=0A=
        var value =3D 'element.getAttribute(' + attribute.name.inspect() =
+ ')';=0A=
        var splitValueBy =3D function(delimiter) {=0A=
          return value + ' && ' + value + '.split(' + =
delimiter.inspect() + ')';=0A=
        }=0A=
=0A=
        switch (attribute.operator) {=0A=
          case '=3D':       conditions.push(value + ' =3D=3D ' + =
attribute.value.inspect()); break;=0A=
          case '~=3D':      conditions.push(splitValueBy(' ') + =
'.include(' + attribute.value.inspect() + ')'); break;=0A=
          case '|=3D':      conditions.push(=0A=
                            splitValueBy('-') + '.first().toUpperCase() =
=3D=3D ' + attribute.value.toUpperCase().inspect()=0A=
                          ); break;=0A=
          case '!=3D':      conditions.push(value + ' !=3D ' + =
attribute.value.inspect()); break;=0A=
          case '':=0A=
          case undefined: conditions.push(value + ' !=3D null'); break;=0A=
          default:        throw 'Unknown operator ' + attribute.operator =
+ ' in selector';=0A=
        }=0A=
      });=0A=
    }=0A=
=0A=
    return conditions.join(' && ');=0A=
  },=0A=
=0A=
  compileMatcher: function() {=0A=
    this.match =3D new Function('element', 'if (!element.tagName) return =
false; \=0A=
      return ' + this.buildMatchExpression());=0A=
  },=0A=
=0A=
  findElements: function(scope) {=0A=
    var element;=0A=
=0A=
    if (element =3D $(this.params.id))=0A=
      if (this.match(element))=0A=
        if (!scope || Element.childOf(element, scope))=0A=
          return [element];=0A=
=0A=
    scope =3D (scope || =
document).getElementsByTagName(this.params.tagName || '*');=0A=
=0A=
    var results =3D [];=0A=
    for (var i =3D 0; i < scope.length; i++)=0A=
      if (this.match(element =3D scope[i]))=0A=
        results.push(Element.extend(element));=0A=
=0A=
    return results;=0A=
  },=0A=
=0A=
  toString: function() {=0A=
    return this.expression;=0A=
  }=0A=
}=0A=
=0A=
function $$() {=0A=
  return $A(arguments).map(function(expression) {=0A=
    return expression.strip().split(/\s+/).inject([null], =
function(results, expr) {=0A=
      var selector =3D new Selector(expr);=0A=
      return results.map(selector.findElements.bind(selector)).flatten();=0A=
    });=0A=
  }).flatten();=0A=
}=0A=
var Field =3D {=0A=
  clear: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++)=0A=
      $(arguments[i]).value =3D '';=0A=
  },=0A=
=0A=
  focus: function(element) {=0A=
    $(element).focus();=0A=
  },=0A=
=0A=
  present: function() {=0A=
    for (var i =3D 0; i < arguments.length; i++)=0A=
      if ($(arguments[i]).value =3D=3D '') return false;=0A=
    return true;=0A=
  },=0A=
=0A=
  select: function(element) {=0A=
    $(element).select();=0A=
  },=0A=
=0A=
  activate: function(element) {=0A=
    element =3D $(element);=0A=
    element.focus();=0A=
    if (element.select)=0A=
      element.select();=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var Form =3D {=0A=
  serialize: function(form) {=0A=
    var elements =3D Form.getElements($(form));=0A=
    var queryComponents =3D new Array();=0A=
=0A=
    for (var i =3D 0; i < elements.length; i++) {=0A=
      var queryComponent =3D Form.Element.serialize(elements[i]);=0A=
      if (queryComponent)=0A=
        queryComponents.push(queryComponent);=0A=
    }=0A=
=0A=
    return queryComponents.join('&');=0A=
  },=0A=
=0A=
  getElements: function(form) {=0A=
    form =3D $(form);=0A=
    var elements =3D new Array();=0A=
=0A=
    for (var tagName in Form.Element.Serializers) {=0A=
      var tagElements =3D form.getElementsByTagName(tagName);=0A=
      for (var j =3D 0; j < tagElements.length; j++)=0A=
        elements.push(tagElements[j]);=0A=
    }=0A=
    return elements;=0A=
  },=0A=
=0A=
  getInputs: function(form, typeName, name) {=0A=
    form =3D $(form);=0A=
    var inputs =3D form.getElementsByTagName('input');=0A=
=0A=
    if (!typeName && !name)=0A=
      return inputs;=0A=
=0A=
    var matchingInputs =3D new Array();=0A=
    for (var i =3D 0; i < inputs.length; i++) {=0A=
      var input =3D inputs[i];=0A=
      if ((typeName && input.type !=3D typeName) ||=0A=
          (name && input.name !=3D name))=0A=
        continue;=0A=
      matchingInputs.push(input);=0A=
    }=0A=
=0A=
    return matchingInputs;=0A=
  },=0A=
=0A=
  disable: function(form) {=0A=
    var elements =3D Form.getElements(form);=0A=
    for (var i =3D 0; i < elements.length; i++) {=0A=
      var element =3D elements[i];=0A=
      element.blur();=0A=
      element.disabled =3D 'true';=0A=
    }=0A=
  },=0A=
=0A=
  enable: function(form) {=0A=
    var elements =3D Form.getElements(form);=0A=
    for (var i =3D 0; i < elements.length; i++) {=0A=
      var element =3D elements[i];=0A=
      element.disabled =3D '';=0A=
    }=0A=
  },=0A=
=0A=
  findFirstElement: function(form) {=0A=
    return Form.getElements(form).find(function(element) {=0A=
      return element.type !=3D 'hidden' && !element.disabled &&=0A=
        ['input', 'select', =
'textarea'].include(element.tagName.toLowerCase());=0A=
    });=0A=
  },=0A=
=0A=
  focusFirstElement: function(form) {=0A=
    Field.activate(Form.findFirstElement(form));=0A=
  },=0A=
=0A=
  reset: function(form) {=0A=
    $(form).reset();=0A=
  }=0A=
}=0A=
=0A=
Form.Element =3D {=0A=
  serialize: function(element) {=0A=
    element =3D $(element);=0A=
    var method =3D element.tagName.toLowerCase();=0A=
    var parameter =3D Form.Element.Serializers[method](element);=0A=
=0A=
    if (parameter) {=0A=
      var key =3D encodeURIComponent(parameter[0]);=0A=
      if (key.length =3D=3D 0) return;=0A=
=0A=
      if (parameter[1].constructor !=3D Array)=0A=
        parameter[1] =3D [parameter[1]];=0A=
=0A=
      return parameter[1].map(function(value) {=0A=
        return key + '=3D' + encodeURIComponent(value);=0A=
      }).join('&');=0A=
    }=0A=
  },=0A=
=0A=
  getValue: function(element) {=0A=
    element =3D $(element);=0A=
    var method =3D element.tagName.toLowerCase();=0A=
    var parameter =3D Form.Element.Serializers[method](element);=0A=
=0A=
    if (parameter)=0A=
      return parameter[1];=0A=
  }=0A=
}=0A=
=0A=
Form.Element.Serializers =3D {=0A=
  input: function(element) {=0A=
    switch (element.type.toLowerCase()) {=0A=
      case 'submit':=0A=
      case 'hidden':=0A=
      case 'password':=0A=
      case 'text':=0A=
        return Form.Element.Serializers.textarea(element);=0A=
      case 'checkbox':=0A=
      case 'radio':=0A=
        return Form.Element.Serializers.inputSelector(element);=0A=
    }=0A=
    return false;=0A=
  },=0A=
=0A=
  inputSelector: function(element) {=0A=
    if (element.checked)=0A=
      return [element.name, element.value];=0A=
  },=0A=
=0A=
  textarea: function(element) {=0A=
    return [element.name, element.value];=0A=
  },=0A=
=0A=
  select: function(element) {=0A=
    return Form.Element.Serializers[element.type =3D=3D 'select-one' ?=0A=
      'selectOne' : 'selectMany'](element);=0A=
  },=0A=
=0A=
  selectOne: function(element) {=0A=
    var value =3D '', opt, index =3D element.selectedIndex;=0A=
    if (index >=3D 0) {=0A=
      opt =3D element.options[index];=0A=
      value =3D opt.value || opt.text;=0A=
    }=0A=
    return [element.name, value];=0A=
  },=0A=
=0A=
  selectMany: function(element) {=0A=
    var value =3D [];=0A=
    for (var i =3D 0; i < element.length; i++) {=0A=
      var opt =3D element.options[i];=0A=
      if (opt.selected)=0A=
        value.push(opt.value || opt.text);=0A=
    }=0A=
    return [element.name, value];=0A=
  }=0A=
}=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
var $F =3D Form.Element.getValue;=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Abstract.TimedObserver =3D function() {}=0A=
Abstract.TimedObserver.prototype =3D {=0A=
  initialize: function(element, frequency, callback) {=0A=
    this.frequency =3D frequency;=0A=
    this.element   =3D $(element);=0A=
    this.callback  =3D callback;=0A=
=0A=
    this.lastValue =3D this.getValue();=0A=
    this.registerCallback();=0A=
  },=0A=
=0A=
  registerCallback: function() {=0A=
    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);=0A=
  },=0A=
=0A=
  onTimerEvent: function() {=0A=
    var value =3D this.getValue();=0A=
    if (this.lastValue !=3D value) {=0A=
      this.callback(this.element, value);=0A=
      this.lastValue =3D value;=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
Form.Element.Observer =3D Class.create();=0A=
Form.Element.Observer.prototype =3D Object.extend(new =
Abstract.TimedObserver(), {=0A=
  getValue: function() {=0A=
    return Form.Element.getValue(this.element);=0A=
  }=0A=
});=0A=
=0A=
Form.Observer =3D Class.create();=0A=
Form.Observer.prototype =3D Object.extend(new Abstract.TimedObserver(), {=0A=
  getValue: function() {=0A=
    return Form.serialize(this.element);=0A=
  }=0A=
});=0A=
=0A=
/*-----------------------------------------------------------------------=
---*/=0A=
=0A=
Abstract.EventObserver =3D function() {}=0A=
Abstract.EventObserver.prototype =3D {=0A=
  initialize: function(element, callback) {=0A=
    this.element  =3D $(element);=0A=
    this.callback =3D callback;=0A=
=0A=
    this.lastValue =3D this.getValue();=0A=
    if (this.element.tagName.toLowerCase() =3D=3D 'form')=0A=
      this.registerFormCallbacks();=0A=
    else=0A=
      this.registerCallback(this.element);=0A=
  },=0A=
=0A=
  onElementEvent: function() {=0A=
    var value =3D this.getValue();=0A=
    if (this.lastValue !=3D value) {=0A=
      this.callback(this.element, value);=0A=
      this.lastValue =3D value;=0A=
    }=0A=
  },=0A=
=0A=
  registerFormCallbacks: function() {=0A=
    var elements =3D Form.getElements(this.element);=0A=
    for (var i =3D 0; i < elements.length; i++)=0A=
      this.registerCallback(elements[i]);=0A=
  },=0A=
=0A=
  registerCallback: function(element) {=0A=
    if (element.type) {=0A=
      switch (element.type.toLowerCase()) {=0A=
        case 'checkbox':=0A=
        case 'radio':=0A=
          Event.observe(element, 'click', =
this.onElementEvent.bind(this));=0A=
          break;=0A=
        case 'password':=0A=
        case 'text':=0A=
        case 'textarea':=0A=
        case 'select-one':=0A=
        case 'select-multiple':=0A=
          Event.observe(element, 'change', =
this.onElementEvent.bind(this));=0A=
          break;=0A=
      }=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
Form.Element.EventObserver =3D Class.create();=0A=
Form.Element.EventObserver.prototype =3D Object.extend(new =
Abstract.EventObserver(), {=0A=
  getValue: function() {=0A=
    return Form.Element.getValue(this.element);=0A=
  }=0A=
});=0A=
=0A=
Form.EventObserver =3D Class.create();=0A=
Form.EventObserver.prototype =3D Object.extend(new =
Abstract.EventObserver(), {=0A=
  getValue: function() {=0A=
    return Form.serialize(this.element);=0A=
  }=0A=
});=0A=
if (!window.Event) {=0A=
  var Event =3D new Object();=0A=
}=0A=
=0A=
Object.extend(Event, {=0A=
  KEY_BACKSPACE: 8,=0A=
  KEY_TAB:       9,=0A=
  KEY_RETURN:   13,=0A=
  KEY_ESC:      27,=0A=
  KEY_LEFT:     37,=0A=
  KEY_UP:       38,=0A=
  KEY_RIGHT:    39,=0A=
  KEY_DOWN:     40,=0A=
  KEY_DELETE:   46,=0A=
=0A=
  element: function(event) {=0A=
    return event.target || event.srcElement;=0A=
  },=0A=
=0A=
  isLeftClick: function(event) {=0A=
    return (((event.which) && (event.which =3D=3D 1)) ||=0A=
            ((event.button) && (event.button =3D=3D 1)));=0A=
  },=0A=
=0A=
  pointerX: function(event) {=0A=
    return event.pageX || (event.clientX +=0A=
      (document.documentElement.scrollLeft || document.body.scrollLeft));=0A=
  },=0A=
=0A=
  pointerY: function(event) {=0A=
    return event.pageY || (event.clientY +=0A=
      (document.documentElement.scrollTop || document.body.scrollTop));=0A=
  },=0A=
=0A=
  stop: function(event) {=0A=
    if (event.preventDefault) {=0A=
      event.preventDefault();=0A=
      event.stopPropagation();=0A=
    } else {=0A=
      event.returnValue =3D false;=0A=
      event.cancelBubble =3D true;=0A=
    }=0A=
  },=0A=
=0A=
  // find the first node with the given tagName, starting from the=0A=
  // node the event was triggered on; traverses the DOM upwards=0A=
  findElement: function(event, tagName) {=0A=
    var element =3D Event.element(event);=0A=
    while (element.parentNode && (!element.tagName ||=0A=
        (element.tagName.toUpperCase() !=3D tagName.toUpperCase())))=0A=
      element =3D element.parentNode;=0A=
    return element;=0A=
  },=0A=
=0A=
  observers: false,=0A=
=0A=
  _observeAndCache: function(element, name, observer, useCapture) {=0A=
    if (!this.observers) this.observers =3D [];=0A=
    if (element.addEventListener) {=0A=
      this.observers.push([element, name, observer, useCapture]);=0A=
      element.addEventListener(name, observer, useCapture);=0A=
    } else if (element.attachEvent) {=0A=
      this.observers.push([element, name, observer, useCapture]);=0A=
      element.attachEvent('on' + name, observer);=0A=
    }=0A=
  },=0A=
=0A=
  unloadCache: function() {=0A=
    if (!Event.observers) return;=0A=
    for (var i =3D 0; i < Event.observers.length; i++) {=0A=
      Event.stopObserving.apply(this, Event.observers[i]);=0A=
      Event.observers[i][0] =3D null;=0A=
    }=0A=
    Event.observers =3D false;=0A=
  },=0A=
=0A=
  observe: function(element, name, observer, useCapture) {=0A=
    var element =3D $(element);=0A=
    useCapture =3D useCapture || false;=0A=
=0A=
    if (name =3D=3D 'keypress' &&=0A=
        (navigator.appVersion.match(/Konqueror|Safari|KHTML/)=0A=
        || element.attachEvent))=0A=
      name =3D 'keydown';=0A=
=0A=
    this._observeAndCache(element, name, observer, useCapture);=0A=
  },=0A=
=0A=
  stopObserving: function(element, name, observer, useCapture) {=0A=
    var element =3D $(element);=0A=
    useCapture =3D useCapture || false;=0A=
=0A=
    if (name =3D=3D 'keypress' &&=0A=
        (navigator.appVersion.match(/Konqueror|Safari|KHTML/)=0A=
        || element.detachEvent))=0A=
      name =3D 'keydown';=0A=
=0A=
    if (element.removeEventListener) {=0A=
      element.removeEventListener(name, observer, useCapture);=0A=
    } else if (element.detachEvent) {=0A=
      element.detachEvent('on' + name, observer);=0A=
    }=0A=
  }=0A=
});=0A=
=0A=
/* prevent memory leaks in IE */=0A=
if (navigator.appVersion.match(/\bMSIE\b/))=0A=
  Event.observe(window, 'unload', Event.unloadCache, false);=0A=
var Position =3D {=0A=
  // set to true if needed, warning: firefox performance problems=0A=
  // NOT neeeded for page scrolling, only if draggable contained in=0A=
  // scrollable elements=0A=
  includeScrollOffsets: false,=0A=
=0A=
  // must be called before calling withinIncludingScrolloffset, every =
time the=0A=
  // page is scrolled=0A=
  prepare: function() {=0A=
    this.deltaX =3D  window.pageXOffset=0A=
                || document.documentElement.scrollLeft=0A=
                || document.body.scrollLeft=0A=
                || 0;=0A=
    this.deltaY =3D  window.pageYOffset=0A=
                || document.documentElement.scrollTop=0A=
                || document.body.scrollTop=0A=
                || 0;=0A=
  },=0A=
=0A=
  realOffset: function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.scrollTop  || 0;=0A=
      valueL +=3D element.scrollLeft || 0;=0A=
      element =3D element.parentNode;=0A=
    } while (element);=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  cumulativeOffset: function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
      element =3D element.offsetParent;=0A=
    } while (element);=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  positionedOffset: function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
      element =3D element.offsetParent;=0A=
      if (element) {=0A=
        p =3D Element.getStyle(element, 'position');=0A=
        if (p =3D=3D 'relative' || p =3D=3D 'absolute') break;=0A=
      }=0A=
    } while (element);=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  offsetParent: function(element) {=0A=
    if (element.offsetParent) return element.offsetParent;=0A=
    if (element =3D=3D document.body) return element;=0A=
=0A=
    while ((element =3D element.parentNode) && element !=3D =
document.body)=0A=
      if (Element.getStyle(element, 'position') !=3D 'static')=0A=
        return element;=0A=
=0A=
    return document.body;=0A=
  },=0A=
=0A=
  // caches x/y coordinate pair to use with overlap=0A=
  within: function(element, x, y) {=0A=
    if (this.includeScrollOffsets)=0A=
      return this.withinIncludingScrolloffsets(element, x, y);=0A=
    this.xcomp =3D x;=0A=
    this.ycomp =3D y;=0A=
    this.offset =3D this.cumulativeOffset(element);=0A=
=0A=
    return (y >=3D this.offset[1] &&=0A=
            y <  this.offset[1] + element.offsetHeight &&=0A=
            x >=3D this.offset[0] &&=0A=
            x <  this.offset[0] + element.offsetWidth);=0A=
  },=0A=
=0A=
  withinIncludingScrolloffsets: function(element, x, y) {=0A=
    var offsetcache =3D this.realOffset(element);=0A=
=0A=
    this.xcomp =3D x + offsetcache[0] - this.deltaX;=0A=
    this.ycomp =3D y + offsetcache[1] - this.deltaY;=0A=
    this.offset =3D this.cumulativeOffset(element);=0A=
=0A=
    return (this.ycomp >=3D this.offset[1] &&=0A=
            this.ycomp <  this.offset[1] + element.offsetHeight &&=0A=
            this.xcomp >=3D this.offset[0] &&=0A=
            this.xcomp <  this.offset[0] + element.offsetWidth);=0A=
  },=0A=
=0A=
  // within must be called directly before=0A=
  overlap: function(mode, element) {=0A=
    if (!mode) return 0;=0A=
    if (mode =3D=3D 'vertical')=0A=
      return ((this.offset[1] + element.offsetHeight) - this.ycomp) /=0A=
        element.offsetHeight;=0A=
    if (mode =3D=3D 'horizontal')=0A=
      return ((this.offset[0] + element.offsetWidth) - this.xcomp) /=0A=
        element.offsetWidth;=0A=
  },=0A=
=0A=
  clone: function(source, target) {=0A=
    source =3D $(source);=0A=
    target =3D $(target);=0A=
    target.style.position =3D 'absolute';=0A=
    var offsets =3D this.cumulativeOffset(source);=0A=
    target.style.top    =3D offsets[1] + 'px';=0A=
    target.style.left   =3D offsets[0] + 'px';=0A=
    target.style.width  =3D source.offsetWidth + 'px';=0A=
    target.style.height =3D source.offsetHeight + 'px';=0A=
  },=0A=
=0A=
  page: function(forElement) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
=0A=
    var element =3D forElement;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
=0A=
      // Safari fix=0A=
      if (element.offsetParent=3D=3Ddocument.body)=0A=
        if (Element.getStyle(element,'position')=3D=3D'absolute') break;=0A=
=0A=
    } while (element =3D element.offsetParent);=0A=
=0A=
    element =3D forElement;=0A=
    do {=0A=
      valueT -=3D element.scrollTop  || 0;=0A=
      valueL -=3D element.scrollLeft || 0;=0A=
    } while (element =3D element.parentNode);=0A=
=0A=
    return [valueL, valueT];=0A=
  },=0A=
=0A=
  clone: function(source, target) {=0A=
    var options =3D Object.extend({=0A=
      setLeft:    true,=0A=
      setTop:     true,=0A=
      setWidth:   true,=0A=
      setHeight:  true,=0A=
      offsetTop:  0,=0A=
      offsetLeft: 0=0A=
    }, arguments[2] || {})=0A=
=0A=
    // find page position of source=0A=
    source =3D $(source);=0A=
    var p =3D Position.page(source);=0A=
=0A=
    // find coordinate system to use=0A=
    target =3D $(target);=0A=
    var delta =3D [0, 0];=0A=
    var parent =3D null;=0A=
    // delta [0,0] will do fine with position: fixed elements,=0A=
    // position:absolute needs offsetParent deltas=0A=
    if (Element.getStyle(target,'position') =3D=3D 'absolute') {=0A=
      parent =3D Position.offsetParent(target);=0A=
      delta =3D Position.page(parent);=0A=
    }=0A=
=0A=
    // correct by body offsets (fixes Safari)=0A=
    if (parent =3D=3D document.body) {=0A=
      delta[0] -=3D document.body.offsetLeft;=0A=
      delta[1] -=3D document.body.offsetTop;=0A=
    }=0A=
=0A=
    // set position=0A=
    if(options.setLeft)   target.style.left  =3D (p[0] - delta[0] + =
options.offsetLeft) + 'px';=0A=
    if(options.setTop)    target.style.top   =3D (p[1] - delta[1] + =
options.offsetTop) + 'px';=0A=
    if(options.setWidth)  target.style.width =3D source.offsetWidth + =
'px';=0A=
    if(options.setHeight) target.style.height =3D source.offsetHeight + =
'px';=0A=
  },=0A=
=0A=
  absolutize: function(element) {=0A=
    element =3D $(element);=0A=
    if (element.style.position =3D=3D 'absolute') return;=0A=
    Position.prepare();=0A=
=0A=
    var offsets =3D Position.positionedOffset(element);=0A=
    var top     =3D offsets[1];=0A=
    var left    =3D offsets[0];=0A=
    var width   =3D element.clientWidth;=0A=
    var height  =3D element.clientHeight;=0A=
=0A=
    element._originalLeft   =3D left - parseFloat(element.style.left  || =
0);=0A=
    element._originalTop    =3D top  - parseFloat(element.style.top || =
0);=0A=
    element._originalWidth  =3D element.style.width;=0A=
    element._originalHeight =3D element.style.height;=0A=
=0A=
    element.style.position =3D 'absolute';=0A=
    element.style.top    =3D top + 'px';;=0A=
    element.style.left   =3D left + 'px';;=0A=
    element.style.width  =3D width + 'px';;=0A=
    element.style.height =3D height + 'px';;=0A=
  },=0A=
=0A=
  relativize: function(element) {=0A=
    element =3D $(element);=0A=
    if (element.style.position =3D=3D 'relative') return;=0A=
    Position.prepare();=0A=
=0A=
    element.style.position =3D 'relative';=0A=
    var top  =3D parseFloat(element.style.top  || 0) - =
(element._originalTop || 0);=0A=
    var left =3D parseFloat(element.style.left || 0) - =
(element._originalLeft || 0);=0A=
=0A=
    element.style.top    =3D top + 'px';=0A=
    element.style.left   =3D left + 'px';=0A=
    element.style.height =3D element._originalHeight;=0A=
    element.style.width  =3D element._originalWidth;=0A=
  }=0A=
}=0A=
=0A=
// Safari returns margins on body which is incorrect if the child is =
absolutely=0A=
// positioned.  For performance reasons, redefine =
Position.cumulativeOffset for=0A=
// KHTML/WebKit only.=0A=
if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) {=0A=
  Position.cumulativeOffset =3D function(element) {=0A=
    var valueT =3D 0, valueL =3D 0;=0A=
    do {=0A=
      valueT +=3D element.offsetTop  || 0;=0A=
      valueL +=3D element.offsetLeft || 0;=0A=
      if (element.offsetParent =3D=3D document.body)=0A=
        if (Element.getStyle(element, 'position') =3D=3D 'absolute') =
break;=0A=
=0A=
      element =3D element.offsetParent;=0A=
    } while (element);=0A=
=0A=
    return [valueL, valueT];=0A=
  }=0A=
}
------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/js/scriptaculous.js

// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, =
http://mir.aculo.us)=0A=
// =0A=
// Permission is hereby granted, free of charge, to any person obtaining=0A=
// a copy of this software and associated documentation files (the=0A=
// "Software"), to deal in the Software without restriction, including=0A=
// without limitation the rights to use, copy, modify, merge, publish,=0A=
// distribute, sublicense, and/or sell copies of the Software, and to=0A=
// permit persons to whom the Software is furnished to do so, subject to=0A=
// the following conditions:=0A=
// =0A=
// The above copyright notice and this permission notice shall be=0A=
// included in all copies or substantial portions of the Software.=0A=
//=0A=
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,=0A=
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF=0A=
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND=0A=
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE=0A=
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION=0A=
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION=0A=
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.=0A=
=0A=
var Scriptaculous =3D {=0A=
  Version: '1.6.1',=0A=
  require: function(libraryName) {=0A=
    // inserting via DOM fails in Safari 2.0, so brute force approach=0A=
    document.write('<script type=3D"text/javascript" =
src=3D"'+libraryName+'"></script>');=0A=
  },=0A=
  load: function() {=0A=
    if((typeof Prototype=3D=3D'undefined') || =0A=
       (typeof Element =3D=3D 'undefined') || =0A=
       (typeof Element.Methods=3D=3D'undefined') ||=0A=
       parseFloat(Prototype.Version.split(".")[0] + "." +=0A=
                  Prototype.Version.split(".")[1]) < 1.5)=0A=
       throw("script.aculo.us requires the Prototype JavaScript =
framework >=3D 1.5.0");=0A=
    =0A=
    $A(document.getElementsByTagName("script")).findAll( function(s) {=0A=
      return (s.src && s.src.match(/scriptaculous\.js(\?.*)?$/))=0A=
    }).each( function(s) {=0A=
      var path =3D s.src.replace(/scriptaculous\.js(\?.*)?$/,'');=0A=
      var includes =3D s.src.match(/\?.*load=3D([a-z,]*)/);=0A=
/*=0A=
	UPDATED TO ONLY PULL IN THE EFFECTS.JS=0A=
*/=0A=
	// (includes ? includes[1] : =
'builder,effects,dragdrop,controls,slider').split(',').each(=0A=
      (includes ? includes[1] : 'effects').split(',').each(=0A=
       function(include) { Scriptaculous.require(path+include+'.js') });=0A=
    });=0A=
  }=0A=
}=0A=
=0A=
Scriptaculous.load();
------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/js/core/scripts.js

function MM_swapImgRestore() { //v3.0
  var i,x,a=3Ddocument.MM_sr; =
for(i=3D0;a&&i<a.length&&(x=3Da[i])&&x.oSrc;i++) x.src=3Dx.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=3Ddocument; if(d.images){ if(!d.MM_p) d.MM_p=3Dnew Array();
    var i,j=3Dd.MM_p.length,a=3DMM_preloadImages.arguments; for(i=3D0; =
i<a.length; i++)
    if (a[i].indexOf("#")!=3D0){ d.MM_p[j]=3Dnew Image; =
d.MM_p[j++].src=3Da[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=3Ddocument; =
if((p=3Dn.indexOf("?"))>0&&parent.frames.length) {
    d=3Dparent.frames[n.substring(p+1)].document; n=3Dn.substring(0,p);}
  if(!(x=3Dd[n])&&d.all) x=3Dd.all[n]; for =
(i=3D0;!x&&i<d.forms.length;i++) x=3Dd.forms[i][n];
  for(i=3D0;!x&&d.layers&&i<d.layers.length;i++) =
x=3DMM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=3Dd.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=3D0,x,a=3DMM_swapImage.arguments; document.MM_sr=3Dnew Array; =
for(i=3D0;i<(a.length-2);i+=3D3)
   if ((x=3DMM_findObj(a[i]))!=3Dnull){document.MM_sr[j++]=3Dx; =
if(!x.oSrc) x.oSrc=3Dx.src; x.src=3Da[i+2];}
}
------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/js/core/fontsizer.js

=0A=
=0A=
function createCookie(name,value,days) {=0A=
  if (days) {=0A=
    var date =3D new Date();=0A=
    date.setTime(date.getTime()+(days*24*60*60*1000));=0A=
    var expires =3D "; expires=3D"+date.toGMTString();=0A=
  }=0A=
  else expires =3D "";=0A=
  document.cookie =3D name+"=3D"+value+expires+"; path=3D/";=0A=
}=0A=
=0A=
function readCookie(name) {=0A=
  var nameEQ =3D name + "=3D";=0A=
  var ca =3D document.cookie.split(';');=0A=
  for(var i=3D0;i < ca.length;i++) {=0A=
    var c =3D ca[i];=0A=
    while (c.charAt(0)=3D=3D' ') c =3D c.substring(1,c.length);=0A=
    if (c.indexOf(nameEQ) =3D=3D 0) return =
c.substring(nameEQ.length,c.length);=0A=
  }=0A=
  return null;=0A=
}=0A=
=0A=
function rememberFontSize(divname,fontsize) {=0A=
  var cookie =3D readCookie("fontsize");=0A=
  var cookieout =3D '';=0A=
  if (cookie) {=0A=
    var divs =3D cookie.split('~');=0A=
    for (var i=3D0; i<divs.length;i++) {=0A=
      var pairs =3D divs[i].split('|');=0A=
      if (pairs[0] =3D=3D divname) {=0A=
        cookieout +=3D divname+'|'+fontsize+'~';=0A=
      } else if (pairs[0] && pairs[0] !=3D 'undefined') {=0A=
        cookieout +=3D pairs[0]+'|'+pairs[1]+'~';=0A=
      }=0A=
    }=0A=
  } else {=0A=
    cookieout =3D divname+'|'+fontsize+'~';=0A=
  }=0A=
  createCookie('fontsize',cookieout,365);=0A=
}=0A=
=0A=
function setfont(cookieval) {=0A=
  var divs =3D cookieval.split('~');=0A=
  for (var i=3D0; i<divs.length;i++) {=0A=
    var pairs =3D divs[i].split('|');=0A=
    var div =3D document.getElementById(pairs[0]);=0A=
    if (div) {=0A=
      div.style.fontSize =3D pairs[1];=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function upfont(divname,step) {=0A=
  if (!step) {step =3D .1; }=0A=
  var div =3D document.getElementById(divname);=0A=
  if (!div) return;=0A=
  var fontsize =3D div.style.fontSize;=0A=
  if (!fontsize) {=0A=
    fontsize =3D "1.0em";=0A=
  }=0A=
  fontsize =3D parseFloat(fontsize);=0A=
  fontsize +=3D step;=0A=
  fontsize +=3D "em";=0A=
  //rememberFontSize(divname, fontsize);=0A=
  div.style.fontSize =3D fontsize;=0A=
}=0A=
=0A=
function defaultfontsize(divname) {=0A=
  var fontsize =3D "1.0em";=0A=
  var div =3D document.getElementById(divname);=0A=
  //rememberFontSize(divname,fontsize);=0A=
  div.style.fontSize =3D fontsize;=0A=
}=0A=
=0A=
=0A=
function downfont(divname, step) {=0A=
  //var cookie =3D readCookie("fontsize");=0A=
  if(!step) { step =3D .1; } =0A=
  var div =3D document.getElementById(divname);=0A=
  if(!div) return;=0A=
  var fontsize =3D div.style.fontSize;=0A=
  if( !fontsize) {=0A=
	fontsize =3D "1.0em";=0A=
  }=0A=
  fontsize =3D parseFloat(fontsize);=0A=
  fontsize -=3D step;=0A=
  fontsize +=3D "em";=0A=
 // rememberFontSize(divname, fontsize);=0A=
  div.style.fontSize =3D fontsize;=0A=
}=0A=
=0A=
=0A=

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/js/core/validation.js

// Copyright =A9 2001 by Apple Computer, Inc., All Rights Reserved.=0A=
//=0A=
// You may incorporate this Apple sample code into your own code=0A=
// without restriction. This Apple sample code has been provided "AS IS"=0A=
// and the responsibility for its operation is yours. You may =
redistribute=0A=
// this code, but you are not permitted to redistribute it as=0A=
// "Apple sample code" after having made changes.=0A=
=0A=
// email=0A=
=0A=
function checkEmail (strng) {=0A=
var error=3D"";=0A=
if (strng =3D=3D "") {=0A=
   error =3D "You didn't enter an email address.\n";=0A=
}=0A=
=0A=
    var emailFilter=3D/^.+@.+\..{2,3}$/;=0A=
    if (!(emailFilter.test(strng))) { =0A=
       error =3D "Please enter a valid email address.\n";=0A=
    }=0A=
    else {=0A=
//test email for illegal characters=0A=
       var illegalChars=3D /[\(\)\<\>\,\;\:\\\"\[\]]/=0A=
         if (strng.match(illegalChars)) {=0A=
          error =3D "The email address contains illegal characters.\n";=0A=
       }=0A=
    }=0A=
return error;    =0A=
}=0A=
=0A=
function checkNumber(num) {=0A=
	=0A=
	if(isNaN(num)){=0A=
		return " must be a number.";=0A=
	}=0A=
	else{=0A=
		return "";=0A=
	}=0A=
}=0A=
=0A=
// phone number - strip out delimiters and check for 10 digits=0A=
=0A=
function checkPhone (strng) {=0A=
var error =3D "";=0A=
if (strng =3D=3D "") {=0A=
   error =3D "You didn't enter a phone number.\n";=0A=
}=0A=
=0A=
var stripped =3D strng.replace(/[\(\)\.\-\ ]/g, ''); //strip out =
acceptable non-numeric characters=0A=
    if (isNaN(parseInt(stripped))) {=0A=
       error =3D "The phone number contains illegal characters.";=0A=
  =0A=
    }=0A=
    if (!(stripped.length =3D=3D 10)) {=0A=
	error =3D "The phone number is the wrong length. Make sure you included =
an area code.\n";=0A=
    } =0A=
return error;=0A=
}=0A=
=0A=
=0A=
// password - between 6-8 chars, uppercase, lowercase, and numeral=0A=
=0A=
function checkPassword (strng) {=0A=
var error =3D "";=0A=
if (strng =3D=3D "") {=0A=
   error =3D "You didn't enter a password.\n";=0A=
}=0A=
=0A=
    var illegalChars =3D /[\W_]/; // allow only letters and numbers=0A=
    =0A=
    if ((strng.length < 6) || (strng.length > 8)) {=0A=
       error =3D "The password is the wrong length.\n";=0A=
    }=0A=
    else if (illegalChars.test(strng)) {=0A=
      error =3D "The password contains illegal characters.\n";=0A=
    } =0A=
    else if (!((strng.search(/(a-z)+/)) && (strng.search(/(A-Z)+/)) && =
(strng.search(/(0-9)+/)))) {=0A=
       error =3D "The password must contain at least one uppercase =
letter, one lowercase letter, and one numeral.\n";=0A=
    }  =0A=
return error;    =0A=
}    =0A=
=0A=
=0A=
// username - 4-10 chars, uc, lc, and underscore only.=0A=
=0A=
function checkUsername (strng) {=0A=
var error =3D "";=0A=
if (strng =3D=3D "") {=0A=
   error =3D "You didn't enter a username.\n";=0A=
}=0A=
=0A=
=0A=
    var illegalChars =3D /\W/; // allow letters, numbers, and underscores=0A=
    if ((strng.length < 4) || (strng.length > 10)) {=0A=
       error =3D "The username is the wrong length.\n";=0A=
    }=0A=
    else if (illegalChars.test(strng)) {=0A=
    error =3D "The username contains illegal characters.\n";=0A=
    } =0A=
return error;=0A=
}       =0A=
=0A=
=0A=
// non-empty textbox=0A=
=0A=
function isEmpty(strng) {=0A=
var error =3D "";=0A=
  if (strng.length =3D=3D 0) {=0A=
     error =3D "The mandatory text area has not been filled in.\n"=0A=
  }=0A=
return error;	  =0A=
}=0A=
=0A=
// was textbox altered=0A=
=0A=
function isDifferent(strng) {=0A=
var error =3D ""; =0A=
  if (strng !=3D "Can\'t touch this!") {=0A=
     error =3D "You altered the inviolate text area.\n";=0A=
  }=0A=
return error;=0A=
}=0A=
=0A=
// exactly one radio button is chosen=0A=
=0A=
function checkRadio(checkvalue) {=0A=
var error =3D "";=0A=
   if (!(checkvalue)) {=0A=
       error =3D "Please check a radio button.\n";=0A=
    }=0A=
return error;=0A=
}=0A=
=0A=
// valid selector from dropdown list=0A=
=0A=
function checkDropdown(choice) {=0A=
var error =3D "";=0A=
    if (choice =3D=3D 0) {=0A=
    error =3D "You didn't choose an option from the drop-down list.\n";=0A=
    }    =0A=
return error;=0A=
}    =0A=

------=_NextPart_000_0000_01C78B40.F2994FD0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://mx.hallmarkchannel.com/publish/pr/home/shows/little_house_farewell/press_releases.analytics.js?id=1177960557436

=20


=09
=09









<!-- START Nielsen//NetRatings SiteCensus V5.2 -->
<!-- COPYRIGHT 2005 Nielsen//NetRatings -->


document.write("<script type=3D'text/javascript'>");
document.write("var _rsCI=3D'us-hallmarkchannel';");
document.write("var _rsCG=3D'defualt';");
document.write("var _rsUN=3Descape('default');");
document.write("var _rsSI=3Descape(window.location) + '?username=3D' + =
_rsUN;");
document.write("var _rsDN=3D'//secure-us.imrworldwide.com/';");
document.write("var _rsSE=3D1;");
document.write("var _rsSM=3D1.0;");
document.write("</script>");
document.write("<script type=3D'text/javascript' =
src=3D'//secure-us.imrworldwide.com/v52.js'></script>");
document.write("<noscript>");
document.write("<img =
src=3D'//secure-us.imrworldwide.com/cgi-bin/m?ci=3Dus-hallmarkchannel&amp=
;cg=3Ddefualt' alt=3D''/>");
document.write("</noscript>");
<!-- END Nielsen//NetRatings SiteCensus V5.2 -->



------=_NextPart_000_0000_01C78B40.F2994FD0--

