From: <Saved by Windows Internet Explorer 7>
Subject: Recording Information
Date: Thu, 1 Apr 2010 13:50:40 -0400
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01CAD1A2.50CE3980"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/recording/recordAction.do;jsessionid=sxhlL0cSP1GrFs7C6K2psfNXpy6MgS9RC9Tg861cQVxQQwJG7hVV!23538260?theAction=poprecord&actname=%2Feventcenter%2Fframe%2Fg.do&apiname=lsr.php&renewticket=0&renewticket=0&actappname=ec0605l&entappname=url0107l&needFilter=false&&isurlact=true&entactname=%2FnbrRecordingURL.do&rID=2147132&rKey=d7d12770ae74dc62&recordID=2147132&rnd=7465351941&siteurl=benefitadvisorsevents&SP=EC&AT=pb&format=short

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Recording Information</TITLE>
<META http-equiv=3Dcontent-type content=3D"text/html; charset=3DUTF-8">
<META content=3D55 name=3Ddescription><LINK=20
href=3D"https://benefitadvisorsevents.webex.com/brand_dewd/288676/site_be=
nefitadvisorsevents/brand/EC/brand.css"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT type=3Dtext/javascript>
// <![CDATA[
var ecMaxLengthWarningMsg =3D "The text you entered was trimmed because =
it exceeded the maximum length. Please review it.";
// ]]>
</SCRIPT>
<LINK=20
href=3D"https://benefitadvisorsevents.webex.com/brand_dewd/288676/site_be=
nefitadvisorsevents/brand/brand.css"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT=20
src=3D"https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/html/j=
s/jquery/jquery.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/html/j=
s/common/htmlrenderenhance.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>
// <![CDATA[
function goToEnroll(accessType) {
	window.location.href =3D =
"\/ec0605l\/eventcenter\/enroll\/register.do?siteurl=3Dbenefitadvisorseve=
nts&formId=3D2147132&confId=3D2147132&formType=3D1&loadFlag=3D1&eventType=
=3D1&accessType=3D" + accessType;
}

function checkPass(accessType) {
	var form =3D document.forms['recordActionForm'];
	form.playbackPasswd.value =3D jQuery.trim(form.playbackPasswd.value);
	if (form.playbackPasswd.value =3D=3D "") {
		window.alert('Please provide the password.');
		form.playbackPasswd.focus();
		return;
	}
	form.theAction.value =3D "check_pass";
	if (typeof(accessType) =3D=3D "undefined") {
		if (typeof(form.playbackB) =3D=3D "object") {
			accessType =3D "viewRecording";
		} else {
			accessType =3D "downloadRecording";
		}
	}
	form.accessType.value =3D accessType;
	form.submit();
}

$(document).ready(function() {
	if (window.opener !=3D null) {
		$('#btnClose').show();
	}
});
// ]]>
</SCRIPT>

<META content=3D"MSHTML 6.00.6000.16945" name=3DGENERATOR></HEAD>
<BODY class=3DPageBgColor vLink=3D#0066cc aLink=3D#9900ff link=3D#0066cc =
topMargin=3D0=20
marginheight=3D"0">
<DIV align=3Dleft>
<TABLE class=3DmwPageBgColor cellSpacing=3D0 cellPadding=3D10 =
width=3D"100%" border=3D0>
  <TBODY>
  <TR>
    <TD vAlign=3Dtop><!-- Begin page content -->
      <FORM name=3DrecordActionForm onsubmit=3D"return false;"=20
      action=3D/ec0605l/eventcenter/recording/recordAction.do =
method=3Dpost><INPUT=20
      type=3Dhidden value=3Dbenefitadvisorsevents name=3Dsiteurl> <INPUT =
type=3Dhidden=20
      value=3Dpoprecord name=3DtheAction> <INPUT type=3Dhidden value=3D0 =

      name=3DconfViewID> <INPUT type=3Dhidden name=3Dpath> <INPUT =
type=3Dhidden=20
      name=3DaccessType> <INPUT type=3Dhidden value=3D2147132 =
name=3DrecordID> <INPUT=20
      type=3Dhidden name=3DviewType>=20
      <TABLE class=3DmwTblBgColor cellSpacing=3D0 cellPadding=3D0 =
width=3D"100%"=20
      border=3D0>
        <TBODY>
        <TR class=3DmwPageTitleBgColor height=3D35>
          <TD class=3DmwPageTitleFont noWrap width=3D"100%"=20
            colSpan=3D3><STRONG>&nbsp;Recording =
Information</STRONG></TD></TR>
        <TR vAlign=3Dtop>
          <TD>
            <TABLE class=3DmwTblBgColor cellSpacing=3D1 cellPadding=3D2 =
width=3D"100%"=20
            border=3D0>
              <TBODY>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont noWrap align=3Dright=20
                  width=3D"30%"><STRONG>Topic:</STRONG>&nbsp;</TD>
                <TD class=3DmwTblContentFont width=3D"70%">
                  <DIV class=3DTextRenderEnhance style=3D"DISPLAY: =
inline"><PRE style=3D"DISPLAY: none">Special Webinar on National Health =
Care Reform - Seitlin Benefits-20100330 1602-1
</PRE></DIV></TD></TR>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont noWrap=20
                  align=3Dright><STRONG>Recording =
date:</STRONG>&nbsp;</TD>
                <TD class=3DmwTblContentFont>Tuesday, March 30, 2010 =
1:00=20
              pm</TD></TR>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont>&nbsp;</TD>
                <TD class=3DmwTblContentFont>Eastern Daylight Time (New =
York,=20
                  GMT-04:00)</TD></TR>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont noWrap =
align=3Dright><STRONG>Panelist=20
                  Information:</STRONG>&nbsp;</TD>
                <TD class=3DmwTblContentFont>
                  <DIV class=3DTextRenderEnhance style=3D"DISPLAY: =
inline"><PRE style=3D"DISPLAY: none">Peter Marathas, Esq.
</PRE></DIV></TD></TR>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont noWrap=20
                  align=3Dright><STRONG>Duration:</STRONG>&nbsp;</TD>
                <TD class=3DmwTblContentFont>57 minutes </TD></TR>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont noWrap=20
                  align=3Dright><STRONG>Description:</STRONG>&nbsp;</TD>
                <TD class=3DmwTblContentFont>
                  <DIV class=3DTextRenderEnhance style=3D"DISPLAY: =
inline"><PRE style=3D"DISPLAY: none">Special Webinar on National Health =
Care Reform brought to you by Seitlin Benefits in conjunction with Peter =
Marathas, partner with Proskauer Rose.  This will be the first of many =
discussions Seitlin Benefits will be bringing you on this topic.  Once =
the reconciliation process is over, we will be able to provide more =
details on the 2010 and 2011 requirements.  If you have any questions or =
require any additional information, please feel free to reach out to us =
directly at rfiumara@seitlin.com.  Thank you.
</PRE></DIV></TD></TR>
              <TR vAlign=3Dtop>
                <TD class=3DmwTblContentFont>&nbsp;</TD>
                <TD class=3DmwTblContentFont vAlign=3Dtop noWrap><INPUT =
onclick=3D"goToEnroll('viewRecording');" type=3Dbutton value=3DPlayback =
name=3DplaybackB>&nbsp;&nbsp;&nbsp;&nbsp;=20
<INPUT onclick=3D"goToEnroll('downloadRecording');" type=3Dbutton =
value=3DDownload name=3DdownloadB>&nbsp;&nbsp;&nbsp;&nbsp;=20
<INPUT id=3DbtnClose style=3D"DISPLAY: none" onclick=3Dwindow.close(); =
type=3Dbutton value=3DClose name=3DbtnClose>=20
                =
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></FORM></TD></TR>
  <TR>
    <TD>
      <TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" border=3D0>
        <TBODY>
        <TR>
          <TD vAlign=3Dtop align=3Dmiddle =
width=3D"100%">&nbsp;</TD></TR>
        <TR>
          <TD vAlign=3Dtop align=3Dmiddle width=3D"100%"><IMG alt=3D""=20
            =
src=3D"https://benefitadvisorsevents.webex.com/cmp0306l/webcomponents/htm=
l/img/poweredbywebex.gif"=20
            border=3D0> </TD></TR>
        <TR>
          <TD align=3Dmiddle>
            <TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" =
border=3D0>
              <TBODY>
              <TR>
                <TD align=3Dmiddle>
                  <STYLE type=3Dtext/css>.STYLE1 {
	FONT-SIZE: 11px; COLOR: #8b7b66; FONT-FAMILY: Verdana, Arial, =
Helvetica, sans-serif
}
.footerClass {
	FONT-SIZE: 12px; COLOR: #000000; TEXT-ALIGN: center
}
.footer {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: "Verdana"; TEXT-ALIGN: =
center
}
</STYLE>

                  <TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" =
border=3D0>
                    <TBODY>
                    <TR>
                      <TD>
                        <DIV align=3Dcenter><SPAN class=3DSTYLE1>Benefit =
Advisors=20
                        Network. Smart Partners. Copyright
                        <SCRIPT language=3DJavaScript =
type=3Dtext/javascript>document.write(new =
Date().getFullYear());</SCRIPT>
                         . All rights =
reserved.</SPAN></DIV></TD></TR></TBODY></TABLE>
                  <TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%" =
border=3D0>
                    <TBODY>
                    <TR>
                      <TD>
                        <DIV class=3Dfooterclass><SPAN><FONT=20
                        face=3D"Verdana, Helvetica, Arial, sans-serif" =
size=3D1><A=20
                        href=3D"http://www.webex.com/webex_privacy.html" =

                        target=3D_blank>Privacy</A> | <A=20
                        href=3D"http://www.webex.com/webex_terms.html"=20
                        target=3D_blank>Terms of Service</A> | <A=20
                        href=3D"http://www.webex.com/go/svfreetrial"=20
                        target=3D_blank>Request information about WebEx=20
                        services</A>=20
              =
</FONT></SPAN></DIV></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><=
A=20
            href=3D"http://www.webex.com/"><IMG=20
            =
src=3D"https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/html/i=
mg/poweredbywebex_bottom.gif"=20
            border=3D0></A>=20
  </TD></TR></TBODY></TABLE><!-- End page content =
--></TD></TR></TBODY></TABLE></DIV></BODY></HTML>

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: https://benefitadvisorsevents.webex.com/cmp0306l/webcomponents/html/img/poweredbywebex.gif

R0lGODlhTQA8AMQAAJ/SVL/hje/344fHKY/KOPf78c/oquf01JfORqfWYtfsuK/Zccflm7fdf9/w
xn/DHP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAABNADwAAAX/ICSOZGmeaKqubOu+cCzPdG3feK7vfO//wKBwSCwaj8ikcsmkOQIBhkDk
SASmDAPEEIAortCANqwVkM3QKYkrLnAhhYCCFngAHgMIw04YFBJ5Dw8CCAkODwgADRCIBA8Bh4kN
kY4MJAADCI+HUA8HdA8FmgIECxACDwYGD3uprIcLkIwOCg8LsJCHDhAICJcEDQ+7gA+LoIKLjyKP
qAQECI4HkQBagg8EBdMGuhALeSOYmrsCA341dbsiCwRmnhCOC8EEEIcMDp+sCYP19/UGA6bAIVCQ
SQQAADbqkDigaYCxBalqmTokCKGwAgAp2tGYQI1BQQTmQDjo40CBJihT/6pcybKly5ctDkSZkm2G
gE+n0tUsUQCniGwOgnqcAdHZAwWHZjCYN1KYl28kHCAcceggtRqrLEFIgG1XAQVSRAgw4BHpwkEQ
ynVZkICKFnoAxp5MSnXKAZ8tuI4A+uBdpkF7NDEo4GwAUxEEDBxwiDAxr2fsHJRDMCCosKB/2A3Q
6gJA26ihBnS84liVgXkY33ZLwCABwQP7jjogAAntglvWLpb7/MIbVQBJFdwBADvd1s+KRhC0UsCW
rwADrE7qq6cy9RH6VLuo1aCAAM+HDgDIxgpYgXinBZATCQfPLspdYN9MYGCPggIAcJOQOGBoi2AD
4CFNX5gYJoACjoT0h/8gvH0kQjA4QYSHGUYRMKA13nSRiAwCYFbCTVGRoB4M2Zw0Al4wpaiiC9IE
5aEKB/iXwk5HNABAHwehaAIAXbRAVxIBTCWWASbSI5IiZJ0iDXty0UNdkyIcQKQDIOaUQ5AjeEPZ
Ln2U8110A3DRCEJ1aLJNX4GxshUiAa4yBVtXToXKNvkRVEAc4i3CVgDzwJbWHAEgkJRjS6GySzDv
BNAcewlNVYtVPAo5UhdBYsmIfE4egsonh6wiwh56JHbYDZY2R2UC03UIHI8QVDpVX7R1AxysXTSA
wKL49YWRQzpY2mqAR635QAL4URrpMlsEGFJwCQKqLHUQyahDNh6N6IIscSHCEcBdDXyWgKQrnlCU
oCNVFu4KPZ2r7rrstuvuu/DGK++89NZr771BhAAAOw==

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/html/img/poweredbywebex_bottom.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAQAICRAEAOw==

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: https://benefitadvisorsevents.webex.com/brand_dewd/288676/site_benefitadvisorsevents/brand/EC/brand.css

.TblNormalBarBgColor {
	BACKGROUND-COLOR: #e2e2e2
}
.TblTitleFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ffcf00; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwPageBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TblBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TabBorderColor {
	COLOR: #999999
}
.mwSctHeaderBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.mwTblHeaderBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.TblLighterBgColor {
	BACKGROUND-COLOR: #ffffff
}
.mwMoreServiceIconColor {
	COLOR: #ffffff
}
.TblDarkerBgColor {
	BACKGROUND-COLOR: #f4f4f4
}
.mwBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TblSixthFont {
	FONT-SIZE: 13px; COLOR: #6a6a6a; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.mwNavigationColor2 {
	BACKGROUND-COLOR: #999999
}
.TabFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.mwHorizontalRule2 {
	COLOR: #999999
}
.TblNormalBgColor {
	BACKGROUND-COLOR: #ebebeb
}
.TabBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.TblInProgressBarBgColor {
	BACKGROUND-COLOR: #f5f59d
}
.MenuActiveFont {
	FONT-SIZE: 10px; COLOR: #ff0000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblContentBgColor2 {
	BACKGROUND-COLOR: #f5f5f5
}
.TblContentFont3 {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.BodyBgColor {
	BACKGROUND-COLOR: #00659c
}
.BtBarFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblECBgColor {
	BACKGROUND-COLOR: #f8f8f8
}
.MenuBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TblCalendarFont {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwPageTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.BtBarBgColor {
	BACKGROUND-COLOR: #f5f5f5
}
.TblContentBgColor3 {
	BACKGROUND-COLOR: #e9e9e9
}
.TblMonthValidFont {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #0066cc; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.mwTabBgColor {
	BACKGROUND-COLOR: #89e600
}
.mwHorizontalRule1 {
	COLOR: #ffffff
}
.TblPastHeaderBgColor {
	BACKGROUND-COLOR: #dcdcdc
}
.TblProgramDesFont {
	FONT-SIZE: 13px; COLOR: #707070; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.TblTitleBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.TblHeaderFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwPageFont {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwTopNavigationBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.WelPageTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Arial, Helvetica,sans-serif
}
.TblProgramBarFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #006db8; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.TblMonthly2ndBgColor {
	BACKGROUND-COLOR: #e8eef7
}
.TblMonthly1stBgColor {
	BACKGROUND-COLOR: #c5dff8
}
.PageBgColor {
	BACKGROUND-COLOR: #ffffff
}
.WelContentFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.WelPageTitleFontBC {
	BACKGROUND-COLOR: #99ccff
}
.WelLabFont {
	FONT-SIZE: 10px; COLOR: #0066cc; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.MiddleLineColor {
	COLOR: #b5b5b5
}
.mwTblContentFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.TblMonthInvalidFont {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #646464; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.WelLabFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: Arial, =
Helvetica,sans-serif
}
.TblHeaderBgColor2 {
	BACKGROUND-COLOR: #e7e7e7
}
.TblFooterBgColor {
	BACKGROUND-COLOR: #ffffff
}
.mwTopNavigationVRule {
	COLOR: #ffffff
}
.mwNavigationFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ffffff; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblECInProgressBgColor {
	BACKGROUND-COLOR: #f8f8f8
}
.TblContentFont5 {
	FONT-SIZE: 13px; COLOR: #ad3bfb; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.TblInProgressBorderColor {
	COLOR: #fead00
}
.PageFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwTblBgColor {
	BACKGROUND-COLOR: #ffffff
}
.mwRightLineColor {
	BACKGROUND-COLOR: #cdcdcd
}
.TblMonthly3rdTitleFont {
	FONT-SIZE: 10px; COLOR: #6a6a6a; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblHeaderFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.SLColor {
	BACKGROUND-COLOR: #00659c
}
.WelContentFontBC {
	BACKGROUND-COLOR: #ededed
}
.MenuTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.BottomLineColor {
	COLOR: #575757
}
.mwTblRuleBgColor {
	BACKGROUND-COLOR: #eeeeee
}
.mwSelTabFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #ffffff; FONT-FAMILY: =
Verdana,Arial, Helvetica,sans-serif
}
.TblCalendarBgColor {
	BACKGROUND-COLOR: #f5f5f5
}
.TblECHeaderFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #0066cc; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwSelTabBgColor {
	BACKGROUND-COLOR: #178dcd
}
.mwTopNavigationFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblECInProgressBarBgColor {
	BACKGROUND-COLOR: #e2e2e2
}
.MenuTextFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #178dcd; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.PageTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.MonthFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ff6600; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.mwWelcomeFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblContentFont2 {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.TopLineColor {
	COLOR: #ffffff
}
.TblContentBgColor5 {
	BACKGROUND-COLOR: #e6e6e6
}
.TblHeaderBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.mwTabFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana
}
.mwSltTopNavigationBgColor {
	BACKGROUND-COLOR: #0080ff
}
.TblSetupFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #0172e3; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblFooterFont {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblContentFont4 {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.TblContentBgColor4 {
	BACKGROUND-COLOR: #f5f5f5
}
.TblTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwFirstHRule {
	COLOR: #ffffff
}
.mwPageTitleBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.HighlightFont {
	FONT-SIZE: 13px; COLOR: #9900ff; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblHeaderFont3 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #0065cc; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwTblHeaderFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblInProgressBgColor {
	BACKGROUND-COLOR: #fafae1
}
.TblSeventhFont {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: https://benefitadvisorsevents.webex.com/brand_dewd/288676/site_benefitadvisorsevents/brand/brand.css

.TblNormalBarBgColor {
	BACKGROUND-COLOR: #e2e2e2
}
.TblTitleFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ffcf00; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwPageBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TblBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TabBorderColor {
	COLOR: #999999
}
.mwSctHeaderBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.mwTblHeaderBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.TblLighterBgColor {
	BACKGROUND-COLOR: #ffffff
}
.mwMoreServiceIconColor {
	COLOR: #ffffff
}
.TblDarkerBgColor {
	BACKGROUND-COLOR: #f4f4f4
}
.mwBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TblSixthFont {
	FONT-SIZE: 13px; COLOR: #6a6a6a; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.mwNavigationColor2 {
	BACKGROUND-COLOR: #999999
}
.TabFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.mwHorizontalRule2 {
	COLOR: #999999
}
.TabBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.TblNormalBgColor {
	BACKGROUND-COLOR: #ebebeb
}
.TblInProgressBarBgColor {
	BACKGROUND-COLOR: #f5f59d
}
.TblContentFont3 {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.TblContentBgColor2 {
	BACKGROUND-COLOR: #f5f5f5
}
.MenuActiveFont {
	FONT-SIZE: 10px; COLOR: #ff0000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.BodyBgColor {
	BACKGROUND-COLOR: #00659c
}
.BtBarFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.MenuBgColor {
	BACKGROUND-COLOR: #ffffff
}
.TblECBgColor {
	BACKGROUND-COLOR: #f8f8f8
}
.TblCalendarFont {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwPageTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.BtBarBgColor {
	BACKGROUND-COLOR: #f5f5f5
}
.TblContentBgColor3 {
	BACKGROUND-COLOR: #e9e9e9
}
.TblMonthValidFont {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #0066cc; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.mwTabBgColor {
	BACKGROUND-COLOR: #89e600
}
.mwHorizontalRule1 {
	COLOR: #ffffff
}
.TblPastHeaderBgColor {
	BACKGROUND-COLOR: #dcdcdc
}
.TblProgramDesFont {
	FONT-SIZE: 13px; COLOR: #707070; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.TblTitleBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.TblHeaderFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwPageFont {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwTopNavigationBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.WelPageTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Arial, Helvetica,sans-serif
}
.TblProgramBarFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #006db8; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.TblMonthly2ndBgColor {
	BACKGROUND-COLOR: #e8eef7
}
.TblMonthly1stBgColor {
	BACKGROUND-COLOR: #c5dff8
}
.PageBgColor {
	BACKGROUND-COLOR: #ffffff
}
.WelContentFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.WelPageTitleFontBC {
	BACKGROUND-COLOR: #99ccff
}
.WelLabFont {
	FONT-SIZE: 10px; COLOR: #0066cc; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.MiddleLineColor {
	COLOR: #b5b5b5
}
.mwTblContentFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.TblMonthInvalidFont {
	FONT-WEIGHT: bold; FONT-SIZE: 16px; COLOR: #646464; FONT-FAMILY: =
Arial,Verdana,Helvetica,sans-serif
}
.WelLabFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: Arial, =
Helvetica,sans-serif
}
.TblHeaderBgColor2 {
	BACKGROUND-COLOR: #e7e7e7
}
.TblFooterBgColor {
	BACKGROUND-COLOR: #ffffff
}
.mwTopNavigationVRule {
	COLOR: #ffffff
}
.mwNavigationFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ffffff; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblContentFont5 {
	FONT-SIZE: 13px; COLOR: #ad3bfb; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.TblECInProgressBgColor {
	BACKGROUND-COLOR: #f8f8f8
}
.PageFont {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblInProgressBorderColor {
	COLOR: #fead00
}
.mwTblBgColor {
	BACKGROUND-COLOR: #ffffff
}
.mwRightLineColor {
	BACKGROUND-COLOR: #cdcdcd
}
.TblMonthly3rdTitleFont {
	FONT-SIZE: 10px; COLOR: #6a6a6a; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblHeaderFont2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.WelContentFontBC {
	BACKGROUND-COLOR: #ededed
}
.SLColor {
	BACKGROUND-COLOR: #00659c
}
.mwTblRuleBgColor {
	BACKGROUND-COLOR: #eeeeee
}
.BottomLineColor {
	COLOR: #575757
}
.MenuTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Helvetica,Arial,sans-serif
}
.mwSelTabFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #ffffff; FONT-FAMILY: =
Verdana,Arial, Helvetica,sans-serif
}
.TblCalendarBgColor {
	BACKGROUND-COLOR: #f5f5f5
}
.mwSelTabBgColor {
	BACKGROUND-COLOR: #178dcd
}
.TblECHeaderFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #0066cc; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwTopNavigationFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblECInProgressBarBgColor {
	BACKGROUND-COLOR: #e2e2e2
}
.MenuTextFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #178dcd; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.PageTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.MonthFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ff6600; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.TblContentFont2 {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.mwWelcomeFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblContentBgColor5 {
	BACKGROUND-COLOR: #e6e6e6
}
.TopLineColor {
	COLOR: #ffffff
}
.mwTabFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana
}
.TblHeaderBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.mwSltTopNavigationBgColor {
	BACKGROUND-COLOR: #0080ff
}
.TblFooterFont {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblSetupFont {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #0172e3; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblContentFont4 {
	FONT-SIZE: 13px; COLOR: #000000; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.TblContentBgColor4 {
	BACKGROUND-COLOR: #f5f5f5
}
.mwPageTitleBgColor {
	BACKGROUND-COLOR: #e7e7e7
}
.mwFirstHRule {
	COLOR: #ffffff
}
.TblTitleFont {
	FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.HighlightFont {
	FONT-SIZE: 13px; COLOR: #9900ff; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblHeaderFont3 {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #0065cc; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.mwTblHeaderFont {
	FONT-WEIGHT: bold; FONT-SIZE: 13px; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}
.TblInProgressBgColor {
	BACKGROUND-COLOR: #fafae1
}
.TblSeventhFont {
	FONT-SIZE: 10px; COLOR: #000000; FONT-FAMILY: =
Verdana,Helvetica,Arial,sans-serif
}

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/html/js/jquery/jquery.js

(function(){=0A=
/*=0A=
 * jQuery 1.2.3 - New Wave Javascript=0A=
 *=0A=
 * Copyright (c) 2008 John Resig (jquery.com)=0A=
 * Dual licensed under the MIT (MIT-LICENSE.txt)=0A=
 * and GPL (GPL-LICENSE.txt) licenses.=0A=
 *=0A=
 * $Date: 2008/03/12 10:19:44 $=0A=
 * $Rev: 4663 $=0A=
 */=0A=
=0A=
// Map over jQuery in case of overwrite=0A=
if ( window.jQuery )=0A=
	var _jQuery =3D window.jQuery;=0A=
=0A=
var jQuery =3D window.jQuery =3D function( selector, context ) {=0A=
	// The jQuery object is actually just the init constructor 'enhanced'=0A=
	return new jQuery.prototype.init( selector, context );=0A=
};=0A=
=0A=
// Map over the $ in case of overwrite=0A=
if ( window.$ )=0A=
	var _$ =3D window.$;=0A=
	=0A=
// Map the jQuery namespace to the '$' one=0A=
window.$ =3D jQuery;=0A=
=0A=
// A simple way to check for HTML strings or ID strings=0A=
// (both of which we optimize for)=0A=
var quickExpr =3D /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/;=0A=
=0A=
// Is it a simple selector=0A=
var isSimple =3D /^.[^:#\[\.]*$/;=0A=
=0A=
jQuery.fn =3D jQuery.prototype =3D {=0A=
	init: function( selector, context ) {=0A=
		// Make sure that a selection was provided=0A=
		selector =3D selector || document;=0A=
=0A=
		// Handle $(DOMElement)=0A=
		if ( selector.nodeType ) {=0A=
			this[0] =3D selector;=0A=
			this.length =3D 1;=0A=
			return this;=0A=
=0A=
		// Handle HTML strings=0A=
		} else if ( typeof selector =3D=3D "string" ) {=0A=
			// Are we dealing with HTML string or an ID?=0A=
			var match =3D quickExpr.exec( selector );=0A=
=0A=
			// Verify a match, and that no context was specified for #id=0A=
			if ( match && (match[1] || !context) ) {=0A=
=0A=
				// HANDLE: $(html) -> $(array)=0A=
				if ( match[1] )=0A=
					selector =3D jQuery.clean( [ match[1] ], context );=0A=
=0A=
				// HANDLE: $("#id")=0A=
				else {=0A=
					var elem =3D document.getElementById( match[3] );=0A=
=0A=
					// Make sure an element was located=0A=
					if ( elem )=0A=
						// Handle the case where IE and Opera return items=0A=
						// by name instead of ID=0A=
						if ( elem.id !=3D match[3] )=0A=
							return jQuery().find( selector );=0A=
=0A=
						// Otherwise, we inject the element directly into the jQuery object=0A=
						else {=0A=
							this[0] =3D elem;=0A=
							this.length =3D 1;=0A=
							return this;=0A=
						}=0A=
=0A=
					else=0A=
						selector =3D [];=0A=
				}=0A=
=0A=
			// HANDLE: $(expr, [context])=0A=
			// (which is just equivalent to: $(content).find(expr)=0A=
			} else=0A=
				return new jQuery( context ).find( selector );=0A=
=0A=
		// HANDLE: $(function)=0A=
		// Shortcut for document ready=0A=
		} else if ( jQuery.isFunction( selector ) )=0A=
			return new jQuery( document )[ jQuery.fn.ready ? "ready" : "load" ]( =
selector );=0A=
=0A=
		return this.setArray(=0A=
			// HANDLE: $(array)=0A=
			selector.constructor =3D=3D Array && selector ||=0A=
=0A=
			// HANDLE: $(arraylike)=0A=
			// Watch for when an array-like object, contains DOM nodes, is passed =
in as the selector=0A=
			(selector.jquery || selector.length && selector !=3D window && =
!selector.nodeType && selector[0] !=3D undefined && =
selector[0].nodeType) && jQuery.makeArray( selector ) ||=0A=
=0A=
			// HANDLE: $(*)=0A=
			[ selector ] );=0A=
	},=0A=
	=0A=
	// The current version of jQuery being used=0A=
	jquery: "1.2.3",=0A=
=0A=
	// The number of elements contained in the matched element set=0A=
	size: function() {=0A=
		return this.length;=0A=
	},=0A=
	=0A=
	// The number of elements contained in the matched element set=0A=
	length: 0,=0A=
=0A=
	// Get the Nth element in the matched element set OR=0A=
	// Get the whole matched element set as a clean array=0A=
	get: function( num ) {=0A=
		return num =3D=3D undefined ?=0A=
=0A=
			// Return a 'clean' array=0A=
			jQuery.makeArray( this ) :=0A=
=0A=
			// Return just the object=0A=
			this[ num ];=0A=
	},=0A=
	=0A=
	// Take an array of elements and push it onto the stack=0A=
	// (returning the new matched element set)=0A=
	pushStack: function( elems ) {=0A=
		// Build a new jQuery matched element set=0A=
		var ret =3D jQuery( elems );=0A=
=0A=
		// Add the old object onto the stack (as a reference)=0A=
		ret.prevObject =3D this;=0A=
=0A=
		// Return the newly-formed element set=0A=
		return ret;=0A=
	},=0A=
	=0A=
	// Force the current matched set of elements to become=0A=
	// the specified array of elements (destroying the stack in the process)=0A=
	// You should use pushStack() in order to do this, but maintain the =
stack=0A=
	setArray: function( elems ) {=0A=
		// Resetting the length to 0, then using the native Array push=0A=
		// is a super-fast way to populate an object with array-like properties=0A=
		this.length =3D 0;=0A=
		Array.prototype.push.apply( this, elems );=0A=
		=0A=
		return this;=0A=
	},=0A=
=0A=
	// Execute a callback for every element in the matched set.=0A=
	// (You can seed the arguments with an array of args, but this is=0A=
	// only used internally.)=0A=
	each: function( callback, args ) {=0A=
		return jQuery.each( this, callback, args );=0A=
	},=0A=
=0A=
	// Determine the position of an element within =0A=
	// the matched set of elements=0A=
	index: function( elem ) {=0A=
		var ret =3D -1;=0A=
=0A=
		// Locate the position of the desired element=0A=
		this.each(function(i){=0A=
			if ( this =3D=3D elem )=0A=
				ret =3D i;=0A=
		});=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	attr: function( name, value, type ) {=0A=
		var options =3D name;=0A=
		=0A=
		// Look for the case where we're accessing a style value=0A=
		if ( name.constructor =3D=3D String )=0A=
			if ( value =3D=3D undefined )=0A=
				return this.length && jQuery[ type || "attr" ]( this[0], name ) || =
undefined;=0A=
=0A=
			else {=0A=
				options =3D {};=0A=
				options[ name ] =3D value;=0A=
			}=0A=
		=0A=
		// Check to see if we're setting style values=0A=
		return this.each(function(i){=0A=
			// Set all the styles=0A=
			for ( name in options )=0A=
				jQuery.attr(=0A=
					type ?=0A=
						this.style :=0A=
						this,=0A=
					name, jQuery.prop( this, options[ name ], type, i, name )=0A=
				);=0A=
		});=0A=
	},=0A=
=0A=
	css: function( key, value ) {=0A=
		// ignore negative width and height values=0A=
		if ( (key =3D=3D 'width' || key =3D=3D 'height') && parseFloat(value) =
< 0 )=0A=
			value =3D undefined;=0A=
		return this.attr( key, value, "curCSS" );=0A=
	},=0A=
=0A=
	text: function( text ) {=0A=
		if ( typeof text !=3D "object" && text !=3D null )=0A=
			return this.empty().append( (this[0] && this[0].ownerDocument || =
document).createTextNode( text ) );=0A=
=0A=
		var ret =3D "";=0A=
=0A=
		jQuery.each( text || this, function(){=0A=
			jQuery.each( this.childNodes, function(){=0A=
				if ( this.nodeType !=3D 8 )=0A=
					ret +=3D this.nodeType !=3D 1 ?=0A=
						this.nodeValue :=0A=
						jQuery.fn.text( [ this ] );=0A=
			});=0A=
		});=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	wrapAll: function( html ) {=0A=
		if ( this[0] )=0A=
			// The elements to wrap the target around=0A=
			jQuery( html, this[0].ownerDocument )=0A=
				.clone()=0A=
				.insertBefore( this[0] )=0A=
				.map(function(){=0A=
					var elem =3D this;=0A=
=0A=
					while ( elem.firstChild )=0A=
						elem =3D elem.firstChild;=0A=
=0A=
					return elem;=0A=
				})=0A=
				.append(this);=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	wrapInner: function( html ) {=0A=
		return this.each(function(){=0A=
			jQuery( this ).contents().wrapAll( html );=0A=
		});=0A=
	},=0A=
=0A=
	wrap: function( html ) {=0A=
		return this.each(function(){=0A=
			jQuery( this ).wrapAll( html );=0A=
		});=0A=
	},=0A=
=0A=
	append: function() {=0A=
		return this.domManip(arguments, true, false, function(elem){=0A=
			if (this.nodeType =3D=3D 1)=0A=
				this.appendChild( elem );=0A=
		});=0A=
	},=0A=
=0A=
	prepend: function() {=0A=
		return this.domManip(arguments, true, true, function(elem){=0A=
			if (this.nodeType =3D=3D 1)=0A=
				this.insertBefore( elem, this.firstChild );=0A=
		});=0A=
	},=0A=
	=0A=
	before: function() {=0A=
		return this.domManip(arguments, false, false, function(elem){=0A=
			this.parentNode.insertBefore( elem, this );=0A=
		});=0A=
	},=0A=
=0A=
	after: function() {=0A=
		return this.domManip(arguments, false, true, function(elem){=0A=
			this.parentNode.insertBefore( elem, this.nextSibling );=0A=
		});=0A=
	},=0A=
=0A=
	end: function() {=0A=
		return this.prevObject || jQuery( [] );=0A=
	},=0A=
=0A=
	find: function( selector ) {=0A=
		var elems =3D jQuery.map(this, function(elem){=0A=
			return jQuery.find( selector, elem );=0A=
		});=0A=
=0A=
		return this.pushStack( /[^+>] [^+>]/.test( selector ) || =
selector.indexOf("..") > -1 ?=0A=
			jQuery.unique( elems ) :=0A=
			elems );=0A=
	},=0A=
=0A=
	clone: function( events ) {=0A=
		// Do the clone=0A=
		var ret =3D this.map(function(){=0A=
			if ( jQuery.browser.msie && !jQuery.isXMLDoc(this) ) {=0A=
				// IE copies events bound via attachEvent when=0A=
				// using cloneNode. Calling detachEvent on the=0A=
				// clone will also remove the events from the orignal=0A=
				// In order to get around this, we use innerHTML.=0A=
				// Unfortunately, this means some modifications to =0A=
				// attributes in IE that are actually only stored =0A=
				// as properties will not be copied (such as the=0A=
				// the name attribute on an input).=0A=
				var clone =3D this.cloneNode(true),=0A=
					container =3D document.createElement("div");=0A=
				container.appendChild(clone);=0A=
				return jQuery.clean([container.innerHTML])[0];=0A=
			} else=0A=
				return this.cloneNode(true);=0A=
		});=0A=
=0A=
		// Need to set the expando to null on the cloned set if it exists=0A=
		// removeData doesn't work here, IE removes it from the original as =
well=0A=
		// this is primarily for IE but the data expando shouldn't be copied =
over in any browser=0A=
		var clone =3D ret.find("*").andSelf().each(function(){=0A=
			if ( this[ expando ] !=3D undefined )=0A=
				this[ expando ] =3D null;=0A=
		});=0A=
		=0A=
		// Copy the events from the original to the clone=0A=
		if ( events =3D=3D=3D true )=0A=
			this.find("*").andSelf().each(function(i){=0A=
				if (this.nodeType =3D=3D 3)=0A=
					return;=0A=
				var events =3D jQuery.data( this, "events" );=0A=
=0A=
				for ( var type in events )=0A=
					for ( var handler in events[ type ] )=0A=
						jQuery.event.add( clone[ i ], type, events[ type ][ handler ], =
events[ type ][ handler ].data );=0A=
			});=0A=
=0A=
		// Return the cloned set=0A=
		return ret;=0A=
	},=0A=
=0A=
	filter: function( selector ) {=0A=
		return this.pushStack(=0A=
			jQuery.isFunction( selector ) &&=0A=
			jQuery.grep(this, function(elem, i){=0A=
				return selector.call( elem, i );=0A=
			}) ||=0A=
=0A=
			jQuery.multiFilter( selector, this ) );=0A=
	},=0A=
=0A=
	not: function( selector ) {=0A=
		if ( selector.constructor =3D=3D String )=0A=
			// test special case where just one selector is passed in=0A=
			if ( isSimple.test( selector ) )=0A=
				return this.pushStack( jQuery.multiFilter( selector, this, true ) );=0A=
			else=0A=
				selector =3D jQuery.multiFilter( selector, this );=0A=
=0A=
		var isArrayLike =3D selector.length && selector[selector.length - 1] =
!=3D=3D undefined && !selector.nodeType;=0A=
		return this.filter(function() {=0A=
			return isArrayLike ? jQuery.inArray( this, selector ) < 0 : this !=3D =
selector;=0A=
		});=0A=
	},=0A=
=0A=
	add: function( selector ) {=0A=
		return !selector ? this : this.pushStack( jQuery.merge( =0A=
			this.get(),=0A=
			selector.constructor =3D=3D String ? =0A=
				jQuery( selector ).get() :=0A=
				selector.length !=3D undefined && (!selector.nodeName || =
jQuery.nodeName(selector, "form")) ?=0A=
					selector : [selector] ) );=0A=
	},=0A=
=0A=
	is: function( selector ) {=0A=
		return selector ?=0A=
			jQuery.multiFilter( selector, this ).length > 0 :=0A=
			false;=0A=
	},=0A=
=0A=
	hasClass: function( selector ) {=0A=
		return this.is( "." + selector );=0A=
	},=0A=
	=0A=
	val: function( value ) {=0A=
		if ( value =3D=3D undefined ) {=0A=
=0A=
			if ( this.length ) {=0A=
				var elem =3D this[0];=0A=
=0A=
				// We need to handle select boxes special=0A=
				if ( jQuery.nodeName( elem, "select" ) ) {=0A=
					var index =3D elem.selectedIndex,=0A=
						values =3D [],=0A=
						options =3D elem.options,=0A=
						one =3D elem.type =3D=3D "select-one";=0A=
					=0A=
					// Nothing was selected=0A=
					if ( index < 0 )=0A=
						return null;=0A=
=0A=
					// Loop through all the selected options=0A=
					for ( var i =3D one ? index : 0, max =3D one ? index + 1 : =
options.length; i < max; i++ ) {=0A=
						var option =3D options[ i ];=0A=
=0A=
						if ( option.selected ) {=0A=
							// Get the specifc value for the option=0A=
							value =3D jQuery.browser.msie && =
!option.attributes.value.specified ? option.text : option.value;=0A=
							=0A=
							// We don't need an array for one selects=0A=
							if ( one )=0A=
								return value;=0A=
							=0A=
							// Multi-Selects return an array=0A=
							values.push( value );=0A=
						}=0A=
					}=0A=
					=0A=
					return values;=0A=
					=0A=
				// Everything else, we just grab the value=0A=
				} else=0A=
					return (this[0].value || "").replace(/\r/g, "");=0A=
=0A=
			}=0A=
=0A=
			return undefined;=0A=
		}=0A=
=0A=
		return this.each(function(){=0A=
			if ( this.nodeType !=3D 1 )=0A=
				return;=0A=
=0A=
			if ( value.constructor =3D=3D Array && /radio|checkbox/.test( =
this.type ) )=0A=
				this.checked =3D (jQuery.inArray(this.value, value) >=3D 0 ||=0A=
					jQuery.inArray(this.name, value) >=3D 0);=0A=
=0A=
			else if ( jQuery.nodeName( this, "select" ) ) {=0A=
				var values =3D value.constructor =3D=3D Array ?=0A=
					value :=0A=
					[ value ];=0A=
=0A=
				jQuery( "option", this ).each(function(){=0A=
					this.selected =3D (jQuery.inArray( this.value, values ) >=3D 0 ||=0A=
						jQuery.inArray( this.text, values ) >=3D 0);=0A=
				});=0A=
=0A=
				if ( !values.length )=0A=
					this.selectedIndex =3D -1;=0A=
=0A=
			} else=0A=
				this.value =3D value;=0A=
		});=0A=
	},=0A=
	=0A=
	html: function( value ) {=0A=
		return value =3D=3D undefined ?=0A=
			(this.length ?=0A=
				this[0].innerHTML :=0A=
				null) :=0A=
			this.empty().append( value );=0A=
	},=0A=
=0A=
	replaceWith: function( value ) {=0A=
		return this.after( value ).remove();=0A=
	},=0A=
=0A=
	eq: function( i ) {=0A=
		return this.slice( i, i + 1 );=0A=
	},=0A=
=0A=
	slice: function() {=0A=
		return this.pushStack( Array.prototype.slice.apply( this, arguments ) =
);=0A=
	},=0A=
=0A=
	map: function( callback ) {=0A=
		return this.pushStack( jQuery.map(this, function(elem, i){=0A=
			return callback.call( elem, i, elem );=0A=
		}));=0A=
	},=0A=
=0A=
	andSelf: function() {=0A=
		return this.add( this.prevObject );=0A=
	},=0A=
=0A=
	data: function( key, value ){=0A=
		var parts =3D key.split(".");=0A=
		parts[1] =3D parts[1] ? "." + parts[1] : "";=0A=
=0A=
		if ( value =3D=3D null ) {=0A=
			var data =3D this.triggerHandler("getData" + parts[1] + "!", =
[parts[0]]);=0A=
			=0A=
			if ( data =3D=3D undefined && this.length )=0A=
				data =3D jQuery.data( this[0], key );=0A=
=0A=
			return data =3D=3D null && parts[1] ?=0A=
				this.data( parts[0] ) :=0A=
				data;=0A=
		} else=0A=
			return this.trigger("setData" + parts[1] + "!", [parts[0], =
value]).each(function(){=0A=
				jQuery.data( this, key, value );=0A=
			});=0A=
	},=0A=
=0A=
	removeData: function( key ){=0A=
		return this.each(function(){=0A=
			jQuery.removeData( this, key );=0A=
		});=0A=
	},=0A=
	=0A=
	domManip: function( args, table, reverse, callback ) {=0A=
		var clone =3D this.length > 1, elems; =0A=
=0A=
		return this.each(function(){=0A=
			if ( !elems ) {=0A=
				elems =3D jQuery.clean( args, this.ownerDocument );=0A=
=0A=
				if ( reverse )=0A=
					elems.reverse();=0A=
			}=0A=
=0A=
			var obj =3D this;=0A=
=0A=
			if ( table && jQuery.nodeName( this, "table" ) && jQuery.nodeName( =
elems[0], "tr" ) )=0A=
				obj =3D this.getElementsByTagName("tbody")[0] || this.appendChild( =
this.ownerDocument.createElement("tbody") );=0A=
=0A=
			var scripts =3D jQuery( [] );=0A=
=0A=
			jQuery.each(elems, function(){=0A=
				var elem =3D clone ?=0A=
					jQuery( this ).clone( true )[0] :=0A=
					this;=0A=
=0A=
				// execute all scripts after the elements have been injected=0A=
				if ( jQuery.nodeName( elem, "script" ) ) {=0A=
					scripts =3D scripts.add( elem );=0A=
				} else {=0A=
					// Remove any inner scripts for later evaluation=0A=
					if ( elem.nodeType =3D=3D 1 )=0A=
						scripts =3D scripts.add( jQuery( "script", elem ).remove() );=0A=
=0A=
					// Inject the elements into the document=0A=
					callback.call( obj, elem );=0A=
				}=0A=
			});=0A=
=0A=
			scripts.each( evalScript );=0A=
		});=0A=
	}=0A=
};=0A=
=0A=
// Give the init function the jQuery prototype for later instantiation=0A=
jQuery.prototype.init.prototype =3D jQuery.prototype;=0A=
=0A=
function evalScript( i, elem ) {=0A=
	if ( elem.src )=0A=
		jQuery.ajax({=0A=
			url: elem.src,=0A=
			async: false,=0A=
			dataType: "script"=0A=
		});=0A=
=0A=
	else=0A=
		jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || =
"" );=0A=
=0A=
	if ( elem.parentNode )=0A=
		elem.parentNode.removeChild( elem );=0A=
}=0A=
=0A=
jQuery.extend =3D jQuery.fn.extend =3D function() {=0A=
	// copy reference to target object=0A=
	var target =3D arguments[0] || {}, i =3D 1, length =3D =
arguments.length, deep =3D false, options;=0A=
=0A=
	// Handle a deep copy situation=0A=
	if ( target.constructor =3D=3D Boolean ) {=0A=
		deep =3D target;=0A=
		target =3D arguments[1] || {};=0A=
		// skip the boolean and the target=0A=
		i =3D 2;=0A=
	}=0A=
=0A=
	// Handle case when target is a string or something (possible in deep =
copy)=0A=
	if ( typeof target !=3D "object" && typeof target !=3D "function" )=0A=
		target =3D {};=0A=
=0A=
	// extend jQuery itself if only one argument is passed=0A=
	if ( length =3D=3D 1 ) {=0A=
		target =3D this;=0A=
		i =3D 0;=0A=
	}=0A=
=0A=
	for ( ; i < length; i++ )=0A=
		// Only deal with non-null/undefined values=0A=
		if ( (options =3D arguments[ i ]) !=3D null )=0A=
			// Extend the base object=0A=
			for ( var name in options ) {=0A=
				// Prevent never-ending loop=0A=
				if ( target =3D=3D=3D options[ name ] )=0A=
					continue;=0A=
=0A=
				// Recurse if we're merging object values=0A=
				if ( deep && options[ name ] && typeof options[ name ] =3D=3D =
"object" && target[ name ] && !options[ name ].nodeType )=0A=
					target[ name ] =3D jQuery.extend( target[ name ], options[ name ] );=0A=
=0A=
				// Don't bring in undefined values=0A=
				else if ( options[ name ] !=3D undefined )=0A=
					target[ name ] =3D options[ name ];=0A=
=0A=
			}=0A=
=0A=
	// Return the modified object=0A=
	return target;=0A=
};=0A=
=0A=
var expando =3D "jQuery" + (new Date()).getTime(), uuid =3D 0, =
windowData =3D {};=0A=
=0A=
// exclude the following css properties to add px=0A=
var exclude =3D /z-?index|font-?weight|opacity|zoom|line-?height/i;=0A=
=0A=
jQuery.extend({=0A=
	noConflict: function( deep ) {=0A=
		window.$ =3D _$;=0A=
=0A=
		if ( deep )=0A=
			window.jQuery =3D _jQuery;=0A=
=0A=
		return jQuery;=0A=
	},=0A=
=0A=
	// See test/unit/core.js for details concerning this function.=0A=
	isFunction: function( fn ) {=0A=
		return !!fn && typeof fn !=3D "string" && !fn.nodeName && =0A=
			fn.constructor !=3D Array && /function/i.test( fn + "" );=0A=
	},=0A=
	=0A=
	// check if an element is in a (or is an) XML document=0A=
	isXMLDoc: function( elem ) {=0A=
		return elem.documentElement && !elem.body ||=0A=
			elem.tagName && elem.ownerDocument && !elem.ownerDocument.body;=0A=
	},=0A=
=0A=
	// Evalulates a script in a global context=0A=
	globalEval: function( data ) {=0A=
		data =3D jQuery.trim( data );=0A=
=0A=
		if ( data ) {=0A=
			// Inspired by code by Andrea Giammarchi=0A=
			// =
http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom=
.html=0A=
			var head =3D document.getElementsByTagName("head")[0] || =
document.documentElement,=0A=
				script =3D document.createElement("script");=0A=
=0A=
			script.type =3D "text/javascript";=0A=
			if ( jQuery.browser.msie )=0A=
				script.text =3D data;=0A=
			else=0A=
				script.appendChild( document.createTextNode( data ) );=0A=
=0A=
			head.appendChild( script );=0A=
			head.removeChild( script );=0A=
		}=0A=
	},=0A=
=0A=
	nodeName: function( elem, name ) {=0A=
		return elem.nodeName && elem.nodeName.toUpperCase() =3D=3D =
name.toUpperCase();=0A=
	},=0A=
	=0A=
	cache: {},=0A=
	=0A=
	data: function( elem, name, data ) {=0A=
		elem =3D elem =3D=3D window ?=0A=
			windowData :=0A=
			elem;=0A=
=0A=
		var id =3D elem[ expando ];=0A=
=0A=
		// Compute a unique ID for the element=0A=
		if ( !id ) =0A=
			id =3D elem[ expando ] =3D ++uuid;=0A=
=0A=
		// Only generate the data cache if we're=0A=
		// trying to access or manipulate it=0A=
		if ( name && !jQuery.cache[ id ] )=0A=
			jQuery.cache[ id ] =3D {};=0A=
		=0A=
		// Prevent overriding the named cache with undefined values=0A=
		if ( data !=3D undefined )=0A=
			jQuery.cache[ id ][ name ] =3D data;=0A=
		=0A=
		// Return the named cache data, or the ID for the element	=0A=
		return name ?=0A=
			jQuery.cache[ id ][ name ] :=0A=
			id;=0A=
	},=0A=
	=0A=
	removeData: function( elem, name ) {=0A=
		elem =3D elem =3D=3D window ?=0A=
			windowData :=0A=
			elem;=0A=
=0A=
		var id =3D elem[ expando ];=0A=
=0A=
		// If we want to remove a specific section of the element's data=0A=
		if ( name ) {=0A=
			if ( jQuery.cache[ id ] ) {=0A=
				// Remove the section of cache data=0A=
				delete jQuery.cache[ id ][ name ];=0A=
=0A=
				// If we've removed all the data, remove the element's cache=0A=
				name =3D "";=0A=
=0A=
				for ( name in jQuery.cache[ id ] )=0A=
					break;=0A=
=0A=
				if ( !name )=0A=
					jQuery.removeData( elem );=0A=
			}=0A=
=0A=
		// Otherwise, we want to remove all of the element's data=0A=
		} else {=0A=
			// Clean up the element expando=0A=
			try {=0A=
				delete elem[ expando ];=0A=
			} catch(e){=0A=
				// IE has trouble directly removing the expando=0A=
				// but it's ok with using removeAttribute=0A=
				if ( elem.removeAttribute )=0A=
					elem.removeAttribute( expando );=0A=
			}=0A=
=0A=
			// Completely remove the data cache=0A=
			delete jQuery.cache[ id ];=0A=
		}=0A=
	},=0A=
=0A=
	// args is for internal usage only=0A=
	each: function( object, callback, args ) {=0A=
		if ( args ) {=0A=
			if ( object.length =3D=3D undefined ) {=0A=
				for ( var name in object )=0A=
					if ( callback.apply( object[ name ], args ) =3D=3D=3D false )=0A=
						break;=0A=
			} else=0A=
				for ( var i =3D 0, length =3D object.length; i < length; i++ )=0A=
					if ( callback.apply( object[ i ], args ) =3D=3D=3D false )=0A=
						break;=0A=
=0A=
		// A special, fast, case for the most common use of each=0A=
		} else {=0A=
			if ( object.length =3D=3D undefined ) {=0A=
				for ( var name in object )=0A=
					if ( callback.call( object[ name ], name, object[ name ] ) =
=3D=3D=3D false )=0A=
						break;=0A=
			} else=0A=
				for ( var i =3D 0, length =3D object.length, value =3D object[0]; =0A=
					i < length && callback.call( value, i, value ) !=3D=3D false; value =
=3D object[++i] ){}=0A=
		}=0A=
=0A=
		return object;=0A=
	},=0A=
	=0A=
	prop: function( elem, value, type, i, name ) {=0A=
			// Handle executable functions=0A=
			if ( jQuery.isFunction( value ) )=0A=
				value =3D value.call( elem, i );=0A=
				=0A=
			// Handle passing in a number to a CSS property=0A=
			return value && value.constructor =3D=3D Number && type =3D=3D =
"curCSS" && !exclude.test( name ) ?=0A=
				value + "px" :=0A=
				value;=0A=
	},=0A=
=0A=
	className: {=0A=
		// internal only, use addClass("class")=0A=
		add: function( elem, classNames ) {=0A=
			jQuery.each((classNames || "").split(/\s+/), function(i, className){=0A=
				if ( elem.nodeType =3D=3D 1 && !jQuery.className.has( =
elem.className, className ) )=0A=
					elem.className +=3D (elem.className ? " " : "") + className;=0A=
			});=0A=
		},=0A=
=0A=
		// internal only, use removeClass("class")=0A=
		remove: function( elem, classNames ) {=0A=
			if (elem.nodeType =3D=3D 1)=0A=
				elem.className =3D classNames !=3D undefined ?=0A=
					jQuery.grep(elem.className.split(/\s+/), function(className){=0A=
						return !jQuery.className.has( classNames, className );	=0A=
					}).join(" ") :=0A=
					"";=0A=
		},=0A=
=0A=
		// internal only, use is(".class")=0A=
		has: function( elem, className ) {=0A=
			return jQuery.inArray( className, (elem.className || =
elem).toString().split(/\s+/) ) > -1;=0A=
		}=0A=
	},=0A=
=0A=
	// A method for quickly swapping in/out CSS properties to get correct =
calculations=0A=
	swap: function( elem, options, callback ) {=0A=
		var old =3D {};=0A=
		// Remember the old values, and insert the new ones=0A=
		for ( var name in options ) {=0A=
			old[ name ] =3D elem.style[ name ];=0A=
			elem.style[ name ] =3D options[ name ];=0A=
		}=0A=
=0A=
		callback.call( elem );=0A=
=0A=
		// Revert the old values=0A=
		for ( var name in options )=0A=
			elem.style[ name ] =3D old[ name ];=0A=
	},=0A=
=0A=
	css: function( elem, name, force ) {=0A=
		if ( name =3D=3D "width" || name =3D=3D "height" ) {=0A=
			var val, props =3D { position: "absolute", visibility: "hidden", =
display:"block" }, which =3D name =3D=3D "width" ? [ "Left", "Right" ] : =
[ "Top", "Bottom" ];=0A=
		=0A=
			function getWH() {=0A=
				val =3D name =3D=3D "width" ? elem.offsetWidth : elem.offsetHeight;=0A=
				var padding =3D 0, border =3D 0;=0A=
				jQuery.each( which, function() {=0A=
					padding +=3D parseFloat(jQuery.curCSS( elem, "padding" + this, =
true)) || 0;=0A=
					border +=3D parseFloat(jQuery.curCSS( elem, "border" + this + =
"Width", true)) || 0;=0A=
				});=0A=
				val -=3D Math.round(padding + border);=0A=
			}=0A=
		=0A=
			if ( jQuery(elem).is(":visible") )=0A=
				getWH();=0A=
			else=0A=
				jQuery.swap( elem, props, getWH );=0A=
			=0A=
			return Math.max(0, val);=0A=
		}=0A=
		=0A=
		return jQuery.curCSS( elem, name, force );=0A=
	},=0A=
=0A=
	curCSS: function( elem, name, force ) {=0A=
		var ret;=0A=
=0A=
		// A helper method for determining if an element's values are broken=0A=
		function color( elem ) {=0A=
			if ( !jQuery.browser.safari )=0A=
				return false;=0A=
=0A=
			var ret =3D document.defaultView.getComputedStyle( elem, null );=0A=
			return !ret || ret.getPropertyValue("color") =3D=3D "";=0A=
		}=0A=
=0A=
		// We need to handle opacity special in IE=0A=
		if ( name =3D=3D "opacity" && jQuery.browser.msie ) {=0A=
			ret =3D jQuery.attr( elem.style, "opacity" );=0A=
=0A=
			return ret =3D=3D "" ?=0A=
				"1" :=0A=
				ret;=0A=
		}=0A=
		// Opera sometimes will give the wrong display answer, this fixes it, =
see #2037=0A=
		if ( jQuery.browser.opera && name =3D=3D "display" ) {=0A=
			var save =3D elem.style.outline;=0A=
			elem.style.outline =3D "0 solid black";=0A=
			elem.style.outline =3D save;=0A=
		}=0A=
		=0A=
		// Make sure we're using the right name for getting the float value=0A=
		if ( name.match( /float/i ) )=0A=
			name =3D styleFloat;=0A=
=0A=
		if ( !force && elem.style && elem.style[ name ] )=0A=
			ret =3D elem.style[ name ];=0A=
=0A=
		else if ( document.defaultView && =
document.defaultView.getComputedStyle ) {=0A=
=0A=
			// Only "float" is needed here=0A=
			if ( name.match( /float/i ) )=0A=
				name =3D "float";=0A=
=0A=
			name =3D name.replace( /([A-Z])/g, "-$1" ).toLowerCase();=0A=
=0A=
			var getComputedStyle =3D document.defaultView.getComputedStyle( elem, =
null );=0A=
=0A=
			if ( getComputedStyle && !color( elem ) )=0A=
				ret =3D getComputedStyle.getPropertyValue( name );=0A=
=0A=
			// If the element isn't reporting its values properly in Safari=0A=
			// then some display: none elements are involved=0A=
			else {=0A=
				var swap =3D [], stack =3D [];=0A=
=0A=
				// Locate all of the parent display: none elements=0A=
				for ( var a =3D elem; a && color(a); a =3D a.parentNode )=0A=
					stack.unshift(a);=0A=
=0A=
				// Go through and make them visible, but in reverse=0A=
				// (It would be better if we knew the exact display type that they =
had)=0A=
				for ( var i =3D 0; i < stack.length; i++ )=0A=
					if ( color( stack[ i ] ) ) {=0A=
						swap[ i ] =3D stack[ i ].style.display;=0A=
						stack[ i ].style.display =3D "block";=0A=
					}=0A=
=0A=
				// Since we flip the display style, we have to handle that=0A=
				// one special, otherwise get the value=0A=
				ret =3D name =3D=3D "display" && swap[ stack.length - 1 ] !=3D null ?=0A=
					"none" :=0A=
					( getComputedStyle && getComputedStyle.getPropertyValue( name ) ) =
|| "";=0A=
=0A=
				// Finally, revert the display styles back=0A=
				for ( var i =3D 0; i < swap.length; i++ )=0A=
					if ( swap[ i ] !=3D null )=0A=
						stack[ i ].style.display =3D swap[ i ];=0A=
			}=0A=
=0A=
			// We should always get a number back from opacity=0A=
			if ( name =3D=3D "opacity" && ret =3D=3D "" )=0A=
				ret =3D "1";=0A=
=0A=
		} else if ( elem.currentStyle ) {=0A=
			var camelCase =3D name.replace(/\-(\w)/g, function(all, letter){=0A=
				return letter.toUpperCase();=0A=
			});=0A=
=0A=
			ret =3D elem.currentStyle[ name ] || elem.currentStyle[ camelCase ];=0A=
=0A=
			// From the awesome hack by Dean Edwards=0A=
			// http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291=0A=
=0A=
			// If we're not dealing with a regular pixel number=0A=
			// but a number that has a weird ending, we need to convert it to =
pixels=0A=
			if ( !/^\d+(px)?$/i.test( ret ) && /^\d/.test( ret ) ) {=0A=
				// Remember the original values=0A=
				var style =3D elem.style.left, runtimeStyle =3D =
elem.runtimeStyle.left;=0A=
=0A=
				// Put in the new values to get a computed value out=0A=
				elem.runtimeStyle.left =3D elem.currentStyle.left;=0A=
				elem.style.left =3D ret || 0;=0A=
				ret =3D elem.style.pixelLeft + "px";=0A=
=0A=
				// Revert the changed values=0A=
				elem.style.left =3D style;=0A=
				elem.runtimeStyle.left =3D runtimeStyle;=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
	=0A=
	clean: function( elems, context ) {=0A=
		var ret =3D [];=0A=
		context =3D context || document;=0A=
		// !context.createElement fails in IE with an error but returns typeof =
'object'=0A=
		if (typeof context.createElement =3D=3D 'undefined') =0A=
			context =3D context.ownerDocument || context[0] && =
context[0].ownerDocument || document;=0A=
=0A=
		jQuery.each(elems, function(i, elem){=0A=
			if ( !elem )=0A=
				return;=0A=
=0A=
			if ( elem.constructor =3D=3D Number )=0A=
				elem =3D elem.toString();=0A=
			=0A=
			// Convert html string into DOM nodes=0A=
			if ( typeof elem =3D=3D "string" ) {=0A=
				// Fix "XHTML"-style tags in all browsers=0A=
				elem =3D elem.replace(/(<(\w+)[^>]*?)\/>/g, function(all, front, =
tag){=0A=
					return =
tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ?=0A=
						all :=0A=
						front + "></" + tag + ">";=0A=
				});=0A=
=0A=
				// Trim whitespace, otherwise indexOf won't work as expected=0A=
				var tags =3D jQuery.trim( elem ).toLowerCase(), div =3D =
context.createElement("div");=0A=
=0A=
				var wrap =3D=0A=
					// option or optgroup=0A=
					!tags.indexOf("<opt") &&=0A=
					[ 1, "<select multiple=3D'multiple'>", "</select>" ] ||=0A=
					=0A=
					!tags.indexOf("<leg") &&=0A=
					[ 1, "<fieldset>", "</fieldset>" ] ||=0A=
					=0A=
					tags.match(/^<(thead|tbody|tfoot|colg|cap)/) &&=0A=
					[ 1, "<table>", "</table>" ] ||=0A=
					=0A=
					!tags.indexOf("<tr") &&=0A=
					[ 2, "<table><tbody>", "</tbody></table>" ] ||=0A=
					=0A=
				 	// <thead> matched above=0A=
					(!tags.indexOf("<td") || !tags.indexOf("<th")) &&=0A=
					[ 3, "<table><tbody><tr>", "</tr></tbody></table>" ] ||=0A=
					=0A=
					!tags.indexOf("<col") &&=0A=
					[ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ] ||=0A=
=0A=
					// IE can't serialize <link> and <script> tags normally=0A=
					jQuery.browser.msie &&=0A=
					[ 1, "div<div>", "</div>" ] ||=0A=
					=0A=
					[ 0, "", "" ];=0A=
=0A=
				// Go to html and back, then peel off extra wrappers=0A=
				div.innerHTML =3D wrap[1] + elem + wrap[2];=0A=
				=0A=
				// Move to the right depth=0A=
				while ( wrap[0]-- )=0A=
					div =3D div.lastChild;=0A=
				=0A=
				// Remove IE's autoinserted <tbody> from table fragments=0A=
				if ( jQuery.browser.msie ) {=0A=
					=0A=
					// String was a <table>, *may* have spurious <tbody>=0A=
					var tbody =3D !tags.indexOf("<table") && tags.indexOf("<tbody") < 0 =
?=0A=
						div.firstChild && div.firstChild.childNodes :=0A=
						=0A=
						// String was a bare <thead> or <tfoot>=0A=
						wrap[1] =3D=3D "<table>" && tags.indexOf("<tbody") < 0 ?=0A=
							div.childNodes :=0A=
							[];=0A=
				=0A=
					for ( var j =3D tbody.length - 1; j >=3D 0 ; --j )=0A=
						if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j =
].childNodes.length )=0A=
							tbody[ j ].parentNode.removeChild( tbody[ j ] );=0A=
					=0A=
					// IE completely kills leading whitespace when innerHTML is used	=0A=
					if ( /^\s/.test( elem ) )	=0A=
						div.insertBefore( context.createTextNode( elem.match(/^\s*/)[0] ), =
div.firstChild );=0A=
				=0A=
				}=0A=
				=0A=
				elem =3D jQuery.makeArray( div.childNodes );=0A=
			}=0A=
=0A=
			if ( elem.length =3D=3D=3D 0 && (!jQuery.nodeName( elem, "form" ) && =
!jQuery.nodeName( elem, "select" )) )=0A=
				return;=0A=
=0A=
			if ( elem[0] =3D=3D undefined || jQuery.nodeName( elem, "form" ) || =
elem.options )=0A=
				ret.push( elem );=0A=
=0A=
			else=0A=
				ret =3D jQuery.merge( ret, elem );=0A=
=0A=
		});=0A=
=0A=
		return ret;=0A=
	},=0A=
	=0A=
	attr: function( elem, name, value ) {=0A=
		// don't set attributes on text and comment nodes=0A=
		if (!elem || elem.nodeType =3D=3D 3 || elem.nodeType =3D=3D 8)=0A=
			return undefined;=0A=
=0A=
		var fix =3D jQuery.isXMLDoc( elem ) ?=0A=
			{} :=0A=
			jQuery.props;=0A=
=0A=
		// Safari mis-reports the default selected property of a hidden option=0A=
		// Accessing the parent's selectedIndex property fixes it=0A=
		if ( name =3D=3D "selected" && jQuery.browser.safari )=0A=
			elem.parentNode.selectedIndex;=0A=
		=0A=
		// Certain attributes only work when accessed via the old DOM 0 way=0A=
		if ( fix[ name ] ) {=0A=
			if ( value !=3D undefined )=0A=
				elem[ fix[ name ] ] =3D value;=0A=
=0A=
			return elem[ fix[ name ] ];=0A=
=0A=
		} else if ( jQuery.browser.msie && name =3D=3D "style" )=0A=
			return jQuery.attr( elem.style, "cssText", value );=0A=
=0A=
		else if ( value =3D=3D undefined && jQuery.browser.msie && =
jQuery.nodeName( elem, "form" ) && (name =3D=3D "action" || name =3D=3D =
"method") )=0A=
			return elem.getAttributeNode( name ).nodeValue;=0A=
=0A=
		// IE elem.getAttribute passes even for style=0A=
		else if ( elem.tagName ) {=0A=
=0A=
			if ( value !=3D undefined ) {=0A=
				// We can't allow the type property to be changed (since it causes =
problems in IE)=0A=
				if ( name =3D=3D "type" && jQuery.nodeName( elem, "input" ) && =
elem.parentNode )=0A=
					throw "type property can't be changed";=0A=
=0A=
				// convert the value to a string (all browsers do this but IE) see =
#1070=0A=
				elem.setAttribute( name, "" + value );=0A=
			}=0A=
=0A=
			if ( jQuery.browser.msie && /href|src/.test( name ) && =
!jQuery.isXMLDoc( elem ) ) =0A=
				return elem.getAttribute( name, 2 );=0A=
=0A=
			return elem.getAttribute( name );=0A=
=0A=
		// elem is actually elem.style ... set the style=0A=
		} else {=0A=
			// IE actually uses filters for opacity=0A=
			if ( name =3D=3D "opacity" && jQuery.browser.msie ) {=0A=
				if ( value !=3D undefined ) {=0A=
					// IE has trouble with opacity if it does not have layout=0A=
					// Force it by setting the zoom level=0A=
					elem.zoom =3D 1; =0A=
	=0A=
					// Set the alpha filter to set the opacity=0A=
					elem.filter =3D (elem.filter || "").replace( /alpha\([^)]*\)/, "" ) =
+=0A=
						(parseFloat( value ).toString() =3D=3D "NaN" ? "" : =
"alpha(opacity=3D" + value * 100 + ")");=0A=
				}=0A=
	=0A=
				return elem.filter && elem.filter.indexOf("opacity=3D") >=3D 0 ?=0A=
					(parseFloat( elem.filter.match(/opacity=3D([^)]*)/)[1] ) / =
100).toString() :=0A=
					"";=0A=
			}=0A=
=0A=
			name =3D name.replace(/-([a-z])/ig, function(all, letter){=0A=
				return letter.toUpperCase();=0A=
			});=0A=
=0A=
			if ( value !=3D undefined )=0A=
				elem[ name ] =3D value;=0A=
=0A=
			return elem[ name ];=0A=
		}=0A=
	},=0A=
	=0A=
	trim: function( text ) {=0A=
		return (text || "").replace( /^\s+|\s+$/g, "" );=0A=
	},=0A=
=0A=
	makeArray: function( array ) {=0A=
		var ret =3D [];=0A=
=0A=
		// Need to use typeof to fight Safari childNodes crashes=0A=
		if ( typeof array !=3D "array" )=0A=
			for ( var i =3D 0, length =3D array.length; i < length; i++ )=0A=
				ret.push( array[ i ] );=0A=
		else=0A=
			ret =3D array.slice( 0 );=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	inArray: function( elem, array ) {=0A=
		for ( var i =3D 0, length =3D array.length; i < length; i++ )=0A=
			if ( array[ i ] =3D=3D elem )=0A=
				return i;=0A=
=0A=
		return -1;=0A=
	},=0A=
=0A=
	merge: function( first, second ) {=0A=
		// We have to loop this way because IE & Opera overwrite the length=0A=
		// expando of getElementsByTagName=0A=
=0A=
		// Also, we need to make sure that the correct elements are being =
returned=0A=
		// (IE returns comment nodes in a '*' query)=0A=
		if ( jQuery.browser.msie ) {=0A=
			for ( var i =3D 0; second[ i ]; i++ )=0A=
				if ( second[ i ].nodeType !=3D 8 )=0A=
					first.push( second[ i ] );=0A=
=0A=
		} else=0A=
			for ( var i =3D 0; second[ i ]; i++ )=0A=
				first.push( second[ i ] );=0A=
=0A=
		return first;=0A=
	},=0A=
=0A=
	unique: function( array ) {=0A=
		var ret =3D [], done =3D {};=0A=
=0A=
		try {=0A=
=0A=
			for ( var i =3D 0, length =3D array.length; i < length; i++ ) {=0A=
				var id =3D jQuery.data( array[ i ] );=0A=
=0A=
				if ( !done[ id ] ) {=0A=
					done[ id ] =3D true;=0A=
					ret.push( array[ i ] );=0A=
				}=0A=
			}=0A=
=0A=
		} catch( e ) {=0A=
			ret =3D array;=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	grep: function( elems, callback, inv ) {=0A=
		var ret =3D [];=0A=
=0A=
		// Go through the array, only saving the items=0A=
		// that pass the validator function=0A=
		for ( var i =3D 0, length =3D elems.length; i < length; i++ )=0A=
			if ( !inv && callback( elems[ i ], i ) || inv && !callback( elems[ i =
], i ) )=0A=
				ret.push( elems[ i ] );=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	map: function( elems, callback ) {=0A=
		var ret =3D [];=0A=
=0A=
		// Go through the array, translating each of the items to their=0A=
		// new value (or values).=0A=
		for ( var i =3D 0, length =3D elems.length; i < length; i++ ) {=0A=
			var value =3D callback( elems[ i ], i );=0A=
=0A=
			if ( value !=3D=3D null && value !=3D undefined ) {=0A=
				if ( value.constructor !=3D Array )=0A=
					value =3D [ value ];=0A=
=0A=
				ret =3D ret.concat( value );=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	}=0A=
});=0A=
=0A=
var userAgent =3D navigator.userAgent.toLowerCase();=0A=
=0A=
// Figure out what browser is being used=0A=
jQuery.browser =3D {=0A=
	version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || =
[])[1],=0A=
	safari: /webkit/.test( userAgent ),=0A=
	opera: /opera/.test( userAgent ),=0A=
	msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ),=0A=
	mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( =
userAgent )=0A=
};=0A=
=0A=
var styleFloat =3D jQuery.browser.msie ?=0A=
	"styleFloat" :=0A=
	"cssFloat";=0A=
	=0A=
jQuery.extend({=0A=
	// Check to see if the W3C box model is being used=0A=
	boxModel: !jQuery.browser.msie || document.compatMode =3D=3D =
"CSS1Compat",=0A=
	=0A=
	props: {=0A=
		"for": "htmlFor",=0A=
		"class": "className",=0A=
		"float": styleFloat,=0A=
		cssFloat: styleFloat,=0A=
		styleFloat: styleFloat,=0A=
		innerHTML: "innerHTML",=0A=
		className: "className",=0A=
		value: "value",=0A=
		disabled: "disabled",=0A=
		checked: "checked",=0A=
		readonly: "readOnly",=0A=
		selected: "selected",=0A=
		maxlength: "maxLength",=0A=
		selectedIndex: "selectedIndex",=0A=
		defaultValue: "defaultValue",=0A=
		tagName: "tagName",=0A=
		nodeName: "nodeName"=0A=
	}=0A=
});=0A=
=0A=
jQuery.each({=0A=
	parent: function(elem){return elem.parentNode;},=0A=
	parents: function(elem){return jQuery.dir(elem,"parentNode");},=0A=
	next: function(elem){return jQuery.nth(elem,2,"nextSibling");},=0A=
	prev: function(elem){return jQuery.nth(elem,2,"previousSibling");},=0A=
	nextAll: function(elem){return jQuery.dir(elem,"nextSibling");},=0A=
	prevAll: function(elem){return jQuery.dir(elem,"previousSibling");},=0A=
	siblings: function(elem){return =
jQuery.sibling(elem.parentNode.firstChild,elem);},=0A=
	children: function(elem){return jQuery.sibling(elem.firstChild);},=0A=
	contents: function(elem){return =
jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.d=
ocument:jQuery.makeArray(elem.childNodes);}=0A=
}, function(name, fn){=0A=
	jQuery.fn[ name ] =3D function( selector ) {=0A=
		var ret =3D jQuery.map( this, fn );=0A=
=0A=
		if ( selector && typeof selector =3D=3D "string" )=0A=
			ret =3D jQuery.multiFilter( selector, ret );=0A=
=0A=
		return this.pushStack( jQuery.unique( ret ) );=0A=
	};=0A=
});=0A=
=0A=
jQuery.each({=0A=
	appendTo: "append",=0A=
	prependTo: "prepend",=0A=
	insertBefore: "before",=0A=
	insertAfter: "after",=0A=
	replaceAll: "replaceWith"=0A=
}, function(name, original){=0A=
	jQuery.fn[ name ] =3D function() {=0A=
		var args =3D arguments;=0A=
=0A=
		return this.each(function(){=0A=
			for ( var i =3D 0, length =3D args.length; i < length; i++ )=0A=
				jQuery( args[ i ] )[ original ]( this );=0A=
		});=0A=
	};=0A=
});=0A=
=0A=
jQuery.each({=0A=
	removeAttr: function( name ) {=0A=
		jQuery.attr( this, name, "" );=0A=
		if (this.nodeType =3D=3D 1) =0A=
			this.removeAttribute( name );=0A=
	},=0A=
=0A=
	addClass: function( classNames ) {=0A=
		jQuery.className.add( this, classNames );=0A=
	},=0A=
=0A=
	removeClass: function( classNames ) {=0A=
		jQuery.className.remove( this, classNames );=0A=
	},=0A=
=0A=
	toggleClass: function( classNames ) {=0A=
		jQuery.className[ jQuery.className.has( this, classNames ) ? "remove" =
: "add" ]( this, classNames );=0A=
	},=0A=
=0A=
	remove: function( selector ) {=0A=
		if ( !selector || jQuery.filter( selector, [ this ] ).r.length ) {=0A=
			// Prevent memory leaks=0A=
			jQuery( "*", this ).add(this).each(function(){=0A=
				jQuery.event.remove(this);=0A=
				jQuery.removeData(this);=0A=
			});=0A=
			if (this.parentNode)=0A=
				this.parentNode.removeChild( this );=0A=
		}=0A=
	},=0A=
=0A=
	empty: function() {=0A=
		// Remove element nodes and prevent memory leaks=0A=
		jQuery( ">*", this ).remove();=0A=
		=0A=
		// Remove any remaining nodes=0A=
		while ( this.firstChild )=0A=
			this.removeChild( this.firstChild );=0A=
	}=0A=
}, function(name, fn){=0A=
	jQuery.fn[ name ] =3D function(){=0A=
		return this.each( fn, arguments );=0A=
	};=0A=
});=0A=
=0A=
jQuery.each([ "Height", "Width" ], function(i, name){=0A=
	var type =3D name.toLowerCase();=0A=
	=0A=
	jQuery.fn[ type ] =3D function( size ) {=0A=
		// Get window width or height=0A=
		return this[0] =3D=3D window ?=0A=
			// Opera reports document.body.client[Width/Height] properly in both =
quirks and standards=0A=
			jQuery.browser.opera && document.body[ "client" + name ] || =0A=
			=0A=
			// Safari reports inner[Width/Height] just fine (Mozilla and Opera =
include scroll bar widths)=0A=
			jQuery.browser.safari && window[ "inner" + name ] ||=0A=
			=0A=
			// Everyone else use document.documentElement or document.body =
depending on Quirks vs Standards mode=0A=
			document.compatMode =3D=3D "CSS1Compat" && document.documentElement[ =
"client" + name ] || document.body[ "client" + name ] :=0A=
		=0A=
			// Get document width or height=0A=
			this[0] =3D=3D document ?=0A=
				// Either scroll[Width/Height] or offset[Width/Height], whichever is =
greater=0A=
				Math.max( =0A=
					Math.max(document.body["scroll" + name], =
document.documentElement["scroll" + name]), =0A=
					Math.max(document.body["offset" + name], =
document.documentElement["offset" + name]) =0A=
				) :=0A=
=0A=
				// Get or set width or height on the element=0A=
				size =3D=3D undefined ?=0A=
					// Get width or height on the element=0A=
					(this.length ? jQuery.css( this[0], type ) : null) :=0A=
=0A=
					// Set the width or height on the element (default to pixels if =
value is unitless)=0A=
					this.css( type, size.constructor =3D=3D String ? size : size + "px" =
);=0A=
	};=0A=
});=0A=
=0A=
var chars =3D jQuery.browser.safari && parseInt(jQuery.browser.version) =
< 417 ?=0A=
		"(?:[\\w*_-]|\\\\.)" :=0A=
		"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",=0A=
	quickChild =3D new RegExp("^>\\s*(" + chars + "+)"),=0A=
	quickID =3D new RegExp("^(" + chars + "+)(#)(" + chars + "+)"),=0A=
	quickClass =3D new RegExp("^([#.]?)(" + chars + "*)");=0A=
=0A=
jQuery.extend({=0A=
	expr: {=0A=
		"": function(a,i,m){return m[2]=3D=3D"*"||jQuery.nodeName(a,m[2]);},=0A=
		"#": function(a,i,m){return a.getAttribute("id")=3D=3Dm[2];},=0A=
		":": {=0A=
			// Position Checks=0A=
			lt: function(a,i,m){return i<m[3]-0;},=0A=
			gt: function(a,i,m){return i>m[3]-0;},=0A=
			nth: function(a,i,m){return m[3]-0=3D=3Di;},=0A=
			eq: function(a,i,m){return m[3]-0=3D=3Di;},=0A=
			first: function(a,i){return i=3D=3D0;},=0A=
			last: function(a,i,m,r){return i=3D=3Dr.length-1;},=0A=
			even: function(a,i){return i%2=3D=3D0;},=0A=
			odd: function(a,i){return i%2;},=0A=
=0A=
			// Child Checks=0A=
			"first-child": function(a){return =
a.parentNode.getElementsByTagName("*")[0]=3D=3Da;},=0A=
			"last-child": function(a){return =
jQuery.nth(a.parentNode.lastChild,1,"previousSibling")=3D=3Da;},=0A=
			"only-child": function(a){return =
!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},=0A=
=0A=
			// Parent Checks=0A=
			parent: function(a){return a.firstChild;},=0A=
			empty: function(a){return !a.firstChild;},=0A=
=0A=
			// Text Check=0A=
			contains: function(a,i,m){return =
(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=3D0;},=0A=
=0A=
			// Visibility=0A=
			visible: function(a){return =
"hidden"!=3Da.type&&jQuery.css(a,"display")!=3D"none"&&jQuery.css(a,"visi=
bility")!=3D"hidden";},=0A=
			hidden: function(a){return =
"hidden"=3D=3Da.type||jQuery.css(a,"display")=3D=3D"none"||jQuery.css(a,"=
visibility")=3D=3D"hidden";},=0A=
=0A=
			// Form attributes=0A=
			enabled: function(a){return !a.disabled;},=0A=
			disabled: function(a){return a.disabled;},=0A=
			checked: function(a){return a.checked;},=0A=
			selected: function(a){return a.selected||jQuery.attr(a,"selected");},=0A=
=0A=
			// Form elements=0A=
			text: function(a){return "text"=3D=3Da.type;},=0A=
			radio: function(a){return "radio"=3D=3Da.type;},=0A=
			checkbox: function(a){return "checkbox"=3D=3Da.type;},=0A=
			file: function(a){return "file"=3D=3Da.type;},=0A=
			password: function(a){return "password"=3D=3Da.type;},=0A=
			submit: function(a){return "submit"=3D=3Da.type;},=0A=
			image: function(a){return "image"=3D=3Da.type;},=0A=
			reset: function(a){return "reset"=3D=3Da.type;},=0A=
			button: function(a){return =
"button"=3D=3Da.type||jQuery.nodeName(a,"button");},=0A=
			input: function(a){return =
/input|select|textarea|button/i.test(a.nodeName);},=0A=
=0A=
			// :has()=0A=
			has: function(a,i,m){return jQuery.find(m[3],a).length;},=0A=
=0A=
			// :header=0A=
			header: function(a){return /h\d/i.test(a.nodeName);},=0A=
=0A=
			// :animated=0A=
			animated: function(a){return =
jQuery.grep(jQuery.timers,function(fn){return a=3D=3Dfn.elem;}).length;}=0A=
		}=0A=
	},=0A=
	=0A=
	// The regular expressions that power the parsing engine=0A=
	parse: [=0A=
		// Match: [@value=3D'test'], [@foo]=0A=
		/^(\[) *@?([\w-]+) *([!*$^~=3D]*) *('?"?)(.*?)\4 *\]/,=0A=
=0A=
		// Match: :contains('foo')=0A=
		/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,=0A=
=0A=
		// Match: :even, :last-chlid, #id, .class=0A=
		new RegExp("^([:.#]*)(" + chars + "+)")=0A=
	],=0A=
=0A=
	multiFilter: function( expr, elems, not ) {=0A=
		var old, cur =3D [];=0A=
=0A=
		while ( expr && expr !=3D old ) {=0A=
			old =3D expr;=0A=
			var f =3D jQuery.filter( expr, elems, not );=0A=
			expr =3D f.t.replace(/^\s*,\s*/, "" );=0A=
			cur =3D not ? elems =3D f.r : jQuery.merge( cur, f.r );=0A=
		}=0A=
=0A=
		return cur;=0A=
	},=0A=
=0A=
	find: function( t, context ) {=0A=
		// Quickly handle non-string expressions=0A=
		if ( typeof t !=3D "string" )=0A=
			return [ t ];=0A=
=0A=
		// check to make sure context is a DOM element or a document=0A=
		if ( context && context.nodeType !=3D 1 && context.nodeType !=3D 9)=0A=
			return [ ];=0A=
=0A=
		// Set the correct context (if none is provided)=0A=
		context =3D context || document;=0A=
=0A=
		// Initialize the search=0A=
		var ret =3D [context], done =3D [], last, nodeName;=0A=
=0A=
		// Continue while a selector expression exists, and while=0A=
		// we're no longer looping upon ourselves=0A=
		while ( t && last !=3D t ) {=0A=
			var r =3D [];=0A=
			last =3D t;=0A=
=0A=
			t =3D jQuery.trim(t);=0A=
=0A=
			var foundToken =3D false;=0A=
=0A=
			// An attempt at speeding up child selectors that=0A=
			// point to a specific element tag=0A=
			var re =3D quickChild;=0A=
			var m =3D re.exec(t);=0A=
=0A=
			if ( m ) {=0A=
				nodeName =3D m[1].toUpperCase();=0A=
=0A=
				// Perform our own iteration and filter=0A=
				for ( var i =3D 0; ret[i]; i++ )=0A=
					for ( var c =3D ret[i].firstChild; c; c =3D c.nextSibling )=0A=
						if ( c.nodeType =3D=3D 1 && (nodeName =3D=3D "*" || =
c.nodeName.toUpperCase() =3D=3D nodeName) )=0A=
							r.push( c );=0A=
=0A=
				ret =3D r;=0A=
				t =3D t.replace( re, "" );=0A=
				if ( t.indexOf(" ") =3D=3D 0 ) continue;=0A=
				foundToken =3D true;=0A=
			} else {=0A=
				re =3D /^([>+~])\s*(\w*)/i;=0A=
=0A=
				if ( (m =3D re.exec(t)) !=3D null ) {=0A=
					r =3D [];=0A=
=0A=
					var merge =3D {};=0A=
					nodeName =3D m[2].toUpperCase();=0A=
					m =3D m[1];=0A=
=0A=
					for ( var j =3D 0, rl =3D ret.length; j < rl; j++ ) {=0A=
						var n =3D m =3D=3D "~" || m =3D=3D "+" ? ret[j].nextSibling : =
ret[j].firstChild;=0A=
						for ( ; n; n =3D n.nextSibling )=0A=
							if ( n.nodeType =3D=3D 1 ) {=0A=
								var id =3D jQuery.data(n);=0A=
=0A=
								if ( m =3D=3D "~" && merge[id] ) break;=0A=
								=0A=
								if (!nodeName || n.nodeName.toUpperCase() =3D=3D nodeName ) {=0A=
									if ( m =3D=3D "~" ) merge[id] =3D true;=0A=
									r.push( n );=0A=
								}=0A=
								=0A=
								if ( m =3D=3D "+" ) break;=0A=
							}=0A=
					}=0A=
=0A=
					ret =3D r;=0A=
=0A=
					// And remove the token=0A=
					t =3D jQuery.trim( t.replace( re, "" ) );=0A=
					foundToken =3D true;=0A=
				}=0A=
			}=0A=
=0A=
			// See if there's still an expression, and that we haven't already=0A=
			// matched a token=0A=
			if ( t && !foundToken ) {=0A=
				// Handle multiple expressions=0A=
				if ( !t.indexOf(",") ) {=0A=
					// Clean the result set=0A=
					if ( context =3D=3D ret[0] ) ret.shift();=0A=
=0A=
					// Merge the result sets=0A=
					done =3D jQuery.merge( done, ret );=0A=
=0A=
					// Reset the context=0A=
					r =3D ret =3D [context];=0A=
=0A=
					// Touch up the selector string=0A=
					t =3D " " + t.substr(1,t.length);=0A=
=0A=
				} else {=0A=
					// Optimize for the case nodeName#idName=0A=
					var re2 =3D quickID;=0A=
					var m =3D re2.exec(t);=0A=
					=0A=
					// Re-organize the results, so that they're consistent=0A=
					if ( m ) {=0A=
						m =3D [ 0, m[2], m[3], m[1] ];=0A=
=0A=
					} else {=0A=
						// Otherwise, do a traditional filter check for=0A=
						// ID, class, and element selectors=0A=
						re2 =3D quickClass;=0A=
						m =3D re2.exec(t);=0A=
					}=0A=
=0A=
					m[2] =3D m[2].replace(/\\/g, "");=0A=
=0A=
					var elem =3D ret[ret.length-1];=0A=
=0A=
					// Try to do a global search by ID, where we can=0A=
					if ( m[1] =3D=3D "#" && elem && elem.getElementById && =
!jQuery.isXMLDoc(elem) ) {=0A=
						// Optimization for HTML document case=0A=
						var oid =3D elem.getElementById(m[2]);=0A=
						=0A=
						// Do a quick check for the existence of the actual ID attribute=0A=
						// to avoid selecting by the name attribute in IE=0A=
						// also check to insure id is a string to avoid selecting an =
element with the name of 'id' inside a form=0A=
						if ( (jQuery.browser.msie||jQuery.browser.opera) && oid && typeof =
oid.id =3D=3D "string" && oid.id !=3D m[2] )=0A=
							oid =3D jQuery('[@id=3D"'+m[2]+'"]', elem)[0];=0A=
=0A=
						// Do a quick check for node name (where applicable) so=0A=
						// that div#foo searches will be really fast=0A=
						ret =3D r =3D oid && (!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] =
: [];=0A=
					} else {=0A=
						// We need to find all descendant elements=0A=
						for ( var i =3D 0; ret[i]; i++ ) {=0A=
							// Grab the tag name being searched for=0A=
							var tag =3D m[1] =3D=3D "#" && m[3] ? m[3] : m[1] !=3D "" || m[0] =
=3D=3D "" ? "*" : m[2];=0A=
=0A=
							// Handle IE7 being really dumb about <object>s=0A=
							if ( tag =3D=3D "*" && ret[i].nodeName.toLowerCase() =3D=3D =
"object" )=0A=
								tag =3D "param";=0A=
=0A=
							r =3D jQuery.merge( r, ret[i].getElementsByTagName( tag ));=0A=
						}=0A=
=0A=
						// It's faster to filter by class and be done with it=0A=
						if ( m[1] =3D=3D "." )=0A=
							r =3D jQuery.classFilter( r, m[2] );=0A=
=0A=
						// Same with ID filtering=0A=
						if ( m[1] =3D=3D "#" ) {=0A=
							var tmp =3D [];=0A=
=0A=
							// Try to find the element with the ID=0A=
							for ( var i =3D 0; r[i]; i++ )=0A=
								if ( r[i].getAttribute("id") =3D=3D m[2] ) {=0A=
									tmp =3D [ r[i] ];=0A=
									break;=0A=
								}=0A=
=0A=
							r =3D tmp;=0A=
						}=0A=
=0A=
						ret =3D r;=0A=
					}=0A=
=0A=
					t =3D t.replace( re2, "" );=0A=
				}=0A=
=0A=
			}=0A=
=0A=
			// If a selector string still exists=0A=
			if ( t ) {=0A=
				// Attempt to filter it=0A=
				var val =3D jQuery.filter(t,r);=0A=
				ret =3D r =3D val.r;=0A=
				t =3D jQuery.trim(val.t);=0A=
			}=0A=
		}=0A=
=0A=
		// An error occurred with the selector;=0A=
		// just return an empty set instead=0A=
		if ( t )=0A=
			ret =3D [];=0A=
=0A=
		// Remove the root context=0A=
		if ( ret && context =3D=3D ret[0] )=0A=
			ret.shift();=0A=
=0A=
		// And combine the results=0A=
		done =3D jQuery.merge( done, ret );=0A=
=0A=
		return done;=0A=
	},=0A=
=0A=
	classFilter: function(r,m,not){=0A=
		m =3D " " + m + " ";=0A=
		var tmp =3D [];=0A=
		for ( var i =3D 0; r[i]; i++ ) {=0A=
			var pass =3D (" " + r[i].className + " ").indexOf( m ) >=3D 0;=0A=
			if ( !not && pass || not && !pass )=0A=
				tmp.push( r[i] );=0A=
		}=0A=
		return tmp;=0A=
	},=0A=
=0A=
	filter: function(t,r,not) {=0A=
		var last;=0A=
=0A=
		// Look for common filter expressions=0A=
		while ( t && t !=3D last ) {=0A=
			last =3D t;=0A=
=0A=
			var p =3D jQuery.parse, m;=0A=
=0A=
			for ( var i =3D 0; p[i]; i++ ) {=0A=
				m =3D p[i].exec( t );=0A=
=0A=
				if ( m ) {=0A=
					// Remove what we just matched=0A=
					t =3D t.substring( m[0].length );=0A=
=0A=
					m[2] =3D m[2].replace(/\\/g, "");=0A=
					break;=0A=
				}=0A=
			}=0A=
=0A=
			if ( !m )=0A=
				break;=0A=
=0A=
			// :not() is a special case that can be optimized by=0A=
			// keeping it out of the expression list=0A=
			if ( m[1] =3D=3D ":" && m[2] =3D=3D "not" )=0A=
				// optimize if only one selector found (most common case)=0A=
				r =3D isSimple.test( m[3] ) ?=0A=
					jQuery.filter(m[3], r, true).r :=0A=
					jQuery( r ).not( m[3] );=0A=
=0A=
			// We can get a big speed boost by filtering by class here=0A=
			else if ( m[1] =3D=3D "." )=0A=
				r =3D jQuery.classFilter(r, m[2], not);=0A=
=0A=
			else if ( m[1] =3D=3D "[" ) {=0A=
				var tmp =3D [], type =3D m[3];=0A=
				=0A=
				for ( var i =3D 0, rl =3D r.length; i < rl; i++ ) {=0A=
					var a =3D r[i], z =3D a[ jQuery.props[m[2]] || m[2] ];=0A=
					=0A=
					if ( z =3D=3D null || /href|src|selected/.test(m[2]) )=0A=
						z =3D jQuery.attr(a,m[2]) || '';=0A=
=0A=
					if ( (type =3D=3D "" && !!z ||=0A=
						 type =3D=3D "=3D" && z =3D=3D m[5] ||=0A=
						 type =3D=3D "!=3D" && z !=3D m[5] ||=0A=
						 type =3D=3D "^=3D" && z && !z.indexOf(m[5]) ||=0A=
						 type =3D=3D "$=3D" && z.substr(z.length - m[5].length) =3D=3D =
m[5] ||=0A=
						 (type =3D=3D "*=3D" || type =3D=3D "~=3D") && z.indexOf(m[5]) =
>=3D 0) ^ not )=0A=
							tmp.push( a );=0A=
				}=0A=
				=0A=
				r =3D tmp;=0A=
=0A=
			// We can get a speed boost by handling nth-child here=0A=
			} else if ( m[1] =3D=3D ":" && m[2] =3D=3D "nth-child" ) {=0A=
				var merge =3D {}, tmp =3D [],=0A=
					// parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', =
'-n+6'=0A=
					test =3D /(-?)(\d*)n((?:\+|-)?\d*)/.exec(=0A=
						m[3] =3D=3D "even" && "2n" || m[3] =3D=3D "odd" && "2n+1" ||=0A=
						!/\D/.test(m[3]) && "0n+" + m[3] || m[3]),=0A=
					// calculate the numbers (first)n+(last) including if they are =
negative=0A=
					first =3D (test[1] + (test[2] || 1)) - 0, last =3D test[3] - 0;=0A=
 =0A=
				// loop through all the elements left in the jQuery object=0A=
				for ( var i =3D 0, rl =3D r.length; i < rl; i++ ) {=0A=
					var node =3D r[i], parentNode =3D node.parentNode, id =3D =
jQuery.data(parentNode);=0A=
=0A=
					if ( !merge[id] ) {=0A=
						var c =3D 1;=0A=
=0A=
						for ( var n =3D parentNode.firstChild; n; n =3D n.nextSibling )=0A=
							if ( n.nodeType =3D=3D 1 )=0A=
								n.nodeIndex =3D c++;=0A=
=0A=
						merge[id] =3D true;=0A=
					}=0A=
=0A=
					var add =3D false;=0A=
=0A=
					if ( first =3D=3D 0 ) {=0A=
						if ( node.nodeIndex =3D=3D last )=0A=
							add =3D true;=0A=
					} else if ( (node.nodeIndex - last) % first =3D=3D 0 && =
(node.nodeIndex - last) / first >=3D 0 )=0A=
						add =3D true;=0A=
=0A=
					if ( add ^ not )=0A=
						tmp.push( node );=0A=
				}=0A=
=0A=
				r =3D tmp;=0A=
=0A=
			// Otherwise, find the expression to execute=0A=
			} else {=0A=
				var fn =3D jQuery.expr[ m[1] ];=0A=
				if ( typeof fn =3D=3D "object" )=0A=
					fn =3D fn[ m[2] ];=0A=
=0A=
				if ( typeof fn =3D=3D "string" )=0A=
					fn =3D eval("false||function(a,i){return " + fn + ";}");=0A=
=0A=
				// Execute it against the current filter=0A=
				r =3D jQuery.grep( r, function(elem, i){=0A=
					return fn(elem, i, m, r);=0A=
				}, not );=0A=
			}=0A=
		}=0A=
=0A=
		// Return an array of filtered elements (r)=0A=
		// and the modified expression string (t)=0A=
		return { r: r, t: t };=0A=
	},=0A=
=0A=
	dir: function( elem, dir ){=0A=
		var matched =3D [];=0A=
		var cur =3D elem[dir];=0A=
		while ( cur && cur !=3D document ) {=0A=
			if ( cur.nodeType =3D=3D 1 )=0A=
				matched.push( cur );=0A=
			cur =3D cur[dir];=0A=
		}=0A=
		return matched;=0A=
	},=0A=
	=0A=
	nth: function(cur,result,dir,elem){=0A=
		result =3D result || 1;=0A=
		var num =3D 0;=0A=
=0A=
		for ( ; cur; cur =3D cur[dir] )=0A=
			if ( cur.nodeType =3D=3D 1 && ++num =3D=3D result )=0A=
				break;=0A=
=0A=
		return cur;=0A=
	},=0A=
	=0A=
	sibling: function( n, elem ) {=0A=
		var r =3D [];=0A=
=0A=
		for ( ; n; n =3D n.nextSibling ) {=0A=
			if ( n.nodeType =3D=3D 1 && (!elem || n !=3D elem) )=0A=
				r.push( n );=0A=
		}=0A=
=0A=
		return r;=0A=
	}=0A=
});=0A=
=0A=
/*=0A=
 * A number of helper functions used for managing events.=0A=
 * Many of the ideas behind this code orignated from =0A=
 * Dean Edwards' addEvent library.=0A=
 */=0A=
jQuery.event =3D {=0A=
=0A=
	// Bind an event to an element=0A=
	// Original by Dean Edwards=0A=
	add: function(elem, types, handler, data) {=0A=
		if ( elem.nodeType =3D=3D 3 || elem.nodeType =3D=3D 8 )=0A=
			return;=0A=
=0A=
		// For whatever reason, IE has trouble passing the window object=0A=
		// around, causing it to be cloned in the process=0A=
		if ( jQuery.browser.msie && elem.setInterval !=3D undefined )=0A=
			elem =3D window;=0A=
=0A=
		// Make sure that the function being executed has a unique ID=0A=
		if ( !handler.guid )=0A=
			handler.guid =3D this.guid++;=0A=
			=0A=
		// if data is passed, bind to handler =0A=
		if( data !=3D undefined ) { =0A=
			// Create temporary function pointer to original handler =0A=
			var fn =3D handler; =0A=
=0A=
			// Create unique handler function, wrapped around original handler =0A=
			handler =3D function() { =0A=
				// Pass arguments and context to original handler =0A=
				return fn.apply(this, arguments); =0A=
			};=0A=
=0A=
			// Store data in unique handler =0A=
			handler.data =3D data;=0A=
=0A=
			// Set the guid of unique handler to the same of original handler, so =
it can be removed =0A=
			handler.guid =3D fn.guid;=0A=
		}=0A=
=0A=
		// Init the element's event structure=0A=
		var events =3D jQuery.data(elem, "events") || jQuery.data(elem, =
"events", {}),=0A=
			handle =3D jQuery.data(elem, "handle") || jQuery.data(elem, "handle", =
function(){=0A=
				// returned undefined or false=0A=
				var val;=0A=
=0A=
				// Handle the second event of a trigger and when=0A=
				// an event is called after a page has unloaded=0A=
				if ( typeof jQuery =3D=3D "undefined" || jQuery.event.triggered )=0A=
					return val;=0A=
		=0A=
				val =3D jQuery.event.handle.apply(arguments.callee.elem, arguments);=0A=
		=0A=
				return val;=0A=
			});=0A=
		// Add elem as a property of the handle function=0A=
		// This is to prevent a memory leak with non-native=0A=
		// event in IE.=0A=
		handle.elem =3D elem;=0A=
			=0A=
			// Handle multiple events seperated by a space=0A=
			// jQuery(...).bind("mouseover mouseout", fn);=0A=
			jQuery.each(types.split(/\s+/), function(index, type) {=0A=
				// Namespaced event handlers=0A=
				var parts =3D type.split(".");=0A=
				type =3D parts[0];=0A=
				handler.type =3D parts[1];=0A=
=0A=
				// Get the current list of functions bound to this event=0A=
				var handlers =3D events[type];=0A=
=0A=
				// Init the event handler queue=0A=
				if (!handlers) {=0A=
					handlers =3D events[type] =3D {};=0A=
		=0A=
					// Check for a special event handler=0A=
					// Only use addEventListener/attachEvent if the special=0A=
					// events handler returns false=0A=
					if ( !jQuery.event.special[type] || =
jQuery.event.special[type].setup.call(elem) =3D=3D=3D false ) {=0A=
						// Bind the global event handler to the element=0A=
						if (elem.addEventListener)=0A=
							elem.addEventListener(type, handle, false);=0A=
						else if (elem.attachEvent)=0A=
							elem.attachEvent("on" + type, handle);=0A=
					}=0A=
				}=0A=
=0A=
				// Add the function to the element's handler list=0A=
				handlers[handler.guid] =3D handler;=0A=
=0A=
				// Keep track of which events have been used, for global triggering=0A=
				jQuery.event.global[type] =3D true;=0A=
			});=0A=
		=0A=
		// Nullify elem to prevent memory leaks in IE=0A=
		elem =3D null;=0A=
	},=0A=
=0A=
	guid: 1,=0A=
	global: {},=0A=
=0A=
	// Detach an event or set of events from an element=0A=
	remove: function(elem, types, handler) {=0A=
		// don't do events on text and comment nodes=0A=
		if ( elem.nodeType =3D=3D 3 || elem.nodeType =3D=3D 8 )=0A=
			return;=0A=
=0A=
		var events =3D jQuery.data(elem, "events"), ret, index;=0A=
=0A=
		if ( events ) {=0A=
			// Unbind all events for the element=0A=
			if ( types =3D=3D undefined || (typeof types =3D=3D "string" && =
types.charAt(0) =3D=3D ".") )=0A=
				for ( var type in events )=0A=
					this.remove( elem, type + (types || "") );=0A=
			else {=0A=
				// types is actually an event object here=0A=
				if ( types.type ) {=0A=
					handler =3D types.handler;=0A=
					types =3D types.type;=0A=
				}=0A=
				=0A=
				// Handle multiple events seperated by a space=0A=
				// jQuery(...).unbind("mouseover mouseout", fn);=0A=
				jQuery.each(types.split(/\s+/), function(index, type){=0A=
					// Namespaced event handlers=0A=
					var parts =3D type.split(".");=0A=
					type =3D parts[0];=0A=
					=0A=
					if ( events[type] ) {=0A=
						// remove the given handler for the given type=0A=
						if ( handler )=0A=
							delete events[type][handler.guid];=0A=
			=0A=
						// remove all handlers for the given type=0A=
						else=0A=
							for ( handler in events[type] )=0A=
								// Handle the removal of namespaced events=0A=
								if ( !parts[1] || events[type][handler].type =3D=3D parts[1] )=0A=
									delete events[type][handler];=0A=
=0A=
						// remove generic event handler if no more handlers exist=0A=
						for ( ret in events[type] ) break;=0A=
						if ( !ret ) {=0A=
							if ( !jQuery.event.special[type] || =
jQuery.event.special[type].teardown.call(elem) =3D=3D=3D false ) {=0A=
								if (elem.removeEventListener)=0A=
									elem.removeEventListener(type, jQuery.data(elem, "handle"), =
false);=0A=
								else if (elem.detachEvent)=0A=
									elem.detachEvent("on" + type, jQuery.data(elem, "handle"));=0A=
							}=0A=
							ret =3D null;=0A=
							delete events[type];=0A=
						}=0A=
					}=0A=
				});=0A=
			}=0A=
=0A=
			// Remove the expando if it's no longer used=0A=
			for ( ret in events ) break;=0A=
			if ( !ret ) {=0A=
				var handle =3D jQuery.data( elem, "handle" );=0A=
				if ( handle ) handle.elem =3D null;=0A=
				jQuery.removeData( elem, "events" );=0A=
				jQuery.removeData( elem, "handle" );=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	trigger: function(type, data, elem, donative, extra) {=0A=
		// Clone the incoming data, if any=0A=
		data =3D jQuery.makeArray(data || []);=0A=
=0A=
		if ( type.indexOf("!") >=3D 0 ) {=0A=
			type =3D type.slice(0, -1);=0A=
			var exclusive =3D true;=0A=
		}=0A=
=0A=
		// Handle a global trigger=0A=
		if ( !elem ) {=0A=
			// Only trigger if we've ever bound an event for it=0A=
			if ( this.global[type] )=0A=
				jQuery("*").add([window, document]).trigger(type, data);=0A=
=0A=
		// Handle triggering a single element=0A=
		} else {=0A=
			// don't do events on text and comment nodes=0A=
			if ( elem.nodeType =3D=3D 3 || elem.nodeType =3D=3D 8 )=0A=
				return undefined;=0A=
=0A=
			var val, ret, fn =3D jQuery.isFunction( elem[ type ] || null ),=0A=
				// Check to see if we need to provide a fake event, or not=0A=
				event =3D !data[0] || !data[0].preventDefault;=0A=
			=0A=
			// Pass along a fake event=0A=
			if ( event )=0A=
				data.unshift( this.fix({ type: type, target: elem }) );=0A=
=0A=
			// Enforce the right trigger type=0A=
			data[0].type =3D type;=0A=
			if ( exclusive )=0A=
				data[0].exclusive =3D true;=0A=
=0A=
			// Trigger the event=0A=
			if ( jQuery.isFunction( jQuery.data(elem, "handle") ) )=0A=
				val =3D jQuery.data(elem, "handle").apply( elem, data );=0A=
=0A=
			// Handle triggering native .onfoo handlers=0A=
			if ( !fn && elem["on"+type] && elem["on"+type].apply( elem, data ) =
=3D=3D=3D false )=0A=
				val =3D false;=0A=
=0A=
			// Extra functions don't get the custom event object=0A=
			if ( event )=0A=
				data.shift();=0A=
=0A=
			// Handle triggering of extra function=0A=
			if ( extra && jQuery.isFunction( extra ) ) {=0A=
				// call the extra function and tack the current return value on the =
end for possible inspection=0A=
				ret =3D extra.apply( elem, val =3D=3D null ? data : data.concat( val =
) );=0A=
				// if anything is returned, give it precedence and have it overwrite =
the previous value=0A=
				if (ret !=3D=3D undefined)=0A=
					val =3D ret;=0A=
			}=0A=
=0A=
			// Trigger the native events (except for clicks on links)=0A=
			if ( fn && donative !=3D=3D false && val !=3D=3D false && =
!(jQuery.nodeName(elem, 'a') && type =3D=3D "click") ) {=0A=
				this.triggered =3D true;=0A=
				try {=0A=
					elem[ type ]();=0A=
				// prevent IE from throwing an error for some hidden elements=0A=
				} catch (e) {}=0A=
			}=0A=
=0A=
			this.triggered =3D false;=0A=
		}=0A=
=0A=
		return val;=0A=
	},=0A=
=0A=
	handle: function(event) {=0A=
		// returned undefined or false=0A=
		var val;=0A=
=0A=
		// Empty object is for triggered events with no data=0A=
		event =3D jQuery.event.fix( event || window.event || {} ); =0A=
=0A=
		// Namespaced event handlers=0A=
		var parts =3D event.type.split(".");=0A=
		event.type =3D parts[0];=0A=
=0A=
		var handlers =3D jQuery.data(this, "events") && jQuery.data(this, =
"events")[event.type], args =3D Array.prototype.slice.call( arguments, 1 =
);=0A=
		args.unshift( event );=0A=
=0A=
		for ( var j in handlers ) {=0A=
			var handler =3D handlers[j];=0A=
			// Pass in a reference to the handler function itself=0A=
			// So that we can later remove it=0A=
			args[0].handler =3D handler;=0A=
			args[0].data =3D handler.data;=0A=
=0A=
			// Filter the functions by class=0A=
			if ( !parts[1] && !event.exclusive || handler.type =3D=3D parts[1] ) {=0A=
				var ret =3D handler.apply( this, args );=0A=
=0A=
				if ( val !=3D=3D false )=0A=
					val =3D ret;=0A=
=0A=
				if ( ret =3D=3D=3D false ) {=0A=
					event.preventDefault();=0A=
					event.stopPropagation();=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Clean up added properties in IE to prevent memory leak=0A=
		if (jQuery.browser.msie)=0A=
			event.target =3D event.preventDefault =3D event.stopPropagation =3D=0A=
				event.handler =3D event.data =3D null;=0A=
=0A=
		return val;=0A=
	},=0A=
=0A=
	fix: function(event) {=0A=
		// store a copy of the original event object =0A=
		// and clone to set read-only properties=0A=
		var originalEvent =3D event;=0A=
		event =3D jQuery.extend({}, originalEvent);=0A=
		=0A=
		// add preventDefault and stopPropagation since =0A=
		// they will not work on the clone=0A=
		event.preventDefault =3D function() {=0A=
			// if preventDefault exists run it on the original event=0A=
			if (originalEvent.preventDefault)=0A=
				originalEvent.preventDefault();=0A=
			// otherwise set the returnValue property of the original event to =
false (IE)=0A=
			originalEvent.returnValue =3D false;=0A=
		};=0A=
		event.stopPropagation =3D function() {=0A=
			// if stopPropagation exists run it on the original event=0A=
			if (originalEvent.stopPropagation)=0A=
				originalEvent.stopPropagation();=0A=
			// otherwise set the cancelBubble property of the original event to =
true (IE)=0A=
			originalEvent.cancelBubble =3D true;=0A=
		};=0A=
		=0A=
		// Fix target property, if necessary=0A=
		if ( !event.target )=0A=
			event.target =3D event.srcElement || document; // Fixes #1925 where =
srcElement might not be defined either=0A=
				=0A=
		// check if target is a textnode (safari)=0A=
		if ( event.target.nodeType =3D=3D 3 )=0A=
			event.target =3D originalEvent.target.parentNode;=0A=
=0A=
		// Add relatedTarget, if necessary=0A=
		if ( !event.relatedTarget && event.fromElement )=0A=
			event.relatedTarget =3D event.fromElement =3D=3D event.target ? =
event.toElement : event.fromElement;=0A=
=0A=
		// Calculate pageX/Y if missing and clientX/Y available=0A=
		if ( event.pageX =3D=3D null && event.clientX !=3D null ) {=0A=
			var doc =3D document.documentElement, body =3D document.body;=0A=
			event.pageX =3D event.clientX + (doc && doc.scrollLeft || body && =
body.scrollLeft || 0) - (doc.clientLeft || 0);=0A=
			event.pageY =3D event.clientY + (doc && doc.scrollTop || body && =
body.scrollTop || 0) - (doc.clientTop || 0);=0A=
		}=0A=
			=0A=
		// Add which for key events=0A=
		if ( !event.which && ((event.charCode || event.charCode =3D=3D=3D 0) ? =
event.charCode : event.keyCode) )=0A=
			event.which =3D event.charCode || event.keyCode;=0A=
		=0A=
		// Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for =
Macs)=0A=
		if ( !event.metaKey && event.ctrlKey )=0A=
			event.metaKey =3D event.ctrlKey;=0A=
=0A=
		// Add which for click: 1 =3D=3D left; 2 =3D=3D middle; 3 =3D=3D right=0A=
		// Note: button is not normalized, so don't use it=0A=
		if ( !event.which && event.button )=0A=
			event.which =3D (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( =
event.button & 4 ? 2 : 0 ) ));=0A=
			=0A=
		return event;=0A=
	},=0A=
	=0A=
	special: {=0A=
		ready: {=0A=
			setup: function() {=0A=
				// Make sure the ready event is setup=0A=
				bindReady();=0A=
				return;=0A=
			},=0A=
			=0A=
			teardown: function() { return; }=0A=
		},=0A=
		=0A=
		mouseenter: {=0A=
			setup: function() {=0A=
				if ( jQuery.browser.msie ) return false;=0A=
				jQuery(this).bind("mouseover", =
jQuery.event.special.mouseenter.handler);=0A=
				return true;=0A=
			},=0A=
		=0A=
			teardown: function() {=0A=
				if ( jQuery.browser.msie ) return false;=0A=
				jQuery(this).unbind("mouseover", =
jQuery.event.special.mouseenter.handler);=0A=
				return true;=0A=
			},=0A=
			=0A=
			handler: function(event) {=0A=
				// If we actually just moused on to a sub-element, ignore it=0A=
				if ( withinElement(event, this) ) return true;=0A=
				// Execute the right handlers by setting the event type to mouseenter=0A=
				arguments[0].type =3D "mouseenter";=0A=
				return jQuery.event.handle.apply(this, arguments);=0A=
			}=0A=
		},=0A=
	=0A=
		mouseleave: {=0A=
			setup: function() {=0A=
				if ( jQuery.browser.msie ) return false;=0A=
				jQuery(this).bind("mouseout", =
jQuery.event.special.mouseleave.handler);=0A=
				return true;=0A=
			},=0A=
		=0A=
			teardown: function() {=0A=
				if ( jQuery.browser.msie ) return false;=0A=
				jQuery(this).unbind("mouseout", =
jQuery.event.special.mouseleave.handler);=0A=
				return true;=0A=
			},=0A=
			=0A=
			handler: function(event) {=0A=
				// If we actually just moused on to a sub-element, ignore it=0A=
				if ( withinElement(event, this) ) return true;=0A=
				// Execute the right handlers by setting the event type to mouseleave=0A=
				arguments[0].type =3D "mouseleave";=0A=
				return jQuery.event.handle.apply(this, arguments);=0A=
			}=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
jQuery.fn.extend({=0A=
	bind: function( type, data, fn ) {=0A=
		return type =3D=3D "unload" ? this.one(type, data, fn) : =
this.each(function(){=0A=
			jQuery.event.add( this, type, fn || data, fn && data );=0A=
		});=0A=
	},=0A=
	=0A=
	one: function( type, data, fn ) {=0A=
		return this.each(function(){=0A=
			jQuery.event.add( this, type, function(event) {=0A=
				jQuery(this).unbind(event);=0A=
				return (fn || data).apply( this, arguments);=0A=
			}, fn && data);=0A=
		});=0A=
	},=0A=
=0A=
	unbind: function( type, fn ) {=0A=
		return this.each(function(){=0A=
			jQuery.event.remove( this, type, fn );=0A=
		});=0A=
	},=0A=
=0A=
	trigger: function( type, data, fn ) {=0A=
		return this.each(function(){=0A=
			jQuery.event.trigger( type, data, this, true, fn );=0A=
		});=0A=
	},=0A=
=0A=
	triggerHandler: function( type, data, fn ) {=0A=
		if ( this[0] )=0A=
			return jQuery.event.trigger( type, data, this[0], false, fn );=0A=
		return undefined;=0A=
	},=0A=
=0A=
	toggle: function() {=0A=
		// Save reference to arguments for access in closure=0A=
		var args =3D arguments;=0A=
=0A=
		return this.click(function(event) {=0A=
			// Figure out which function to execute=0A=
			this.lastToggle =3D 0 =3D=3D this.lastToggle ? 1 : 0;=0A=
			=0A=
			// Make sure that clicks stop=0A=
			event.preventDefault();=0A=
			=0A=
			// and execute the function=0A=
			return args[this.lastToggle].apply( this, arguments ) || false;=0A=
		});=0A=
	},=0A=
=0A=
	hover: function(fnOver, fnOut) {=0A=
		return this.bind('mouseenter', fnOver).bind('mouseleave', fnOut);=0A=
	},=0A=
	=0A=
	ready: function(fn) {=0A=
		// Attach the listeners=0A=
		bindReady();=0A=
=0A=
		// If the DOM is already ready=0A=
		if ( jQuery.isReady )=0A=
			// Execute the function immediately=0A=
			fn.call( document, jQuery );=0A=
			=0A=
		// Otherwise, remember the function for later=0A=
		else=0A=
			// Add the function to the wait list=0A=
			jQuery.readyList.push( function() { return fn.call(this, jQuery); } );=0A=
	=0A=
		return this;=0A=
	}=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	isReady: false,=0A=
	readyList: [],=0A=
	// Handle when the DOM is ready=0A=
	ready: function() {=0A=
		// Make sure that the DOM is not already loaded=0A=
		if ( !jQuery.isReady ) {=0A=
			// Remember that the DOM is ready=0A=
			jQuery.isReady =3D true;=0A=
			=0A=
			// If there are functions bound, to execute=0A=
			if ( jQuery.readyList ) {=0A=
				// Execute all of them=0A=
				jQuery.each( jQuery.readyList, function(){=0A=
					this.apply( document );=0A=
				});=0A=
				=0A=
				// Reset the list of functions=0A=
				jQuery.readyList =3D null;=0A=
			}=0A=
		=0A=
			// Trigger any bound ready events=0A=
			jQuery(document).triggerHandler("ready");=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
var readyBound =3D false;=0A=
=0A=
function bindReady(){=0A=
	if ( readyBound ) return;=0A=
	readyBound =3D true;=0A=
=0A=
	// Mozilla, Opera (see further below for it) and webkit nightlies =
currently support this event=0A=
	if ( document.addEventListener && !jQuery.browser.opera)=0A=
		// Use the handy event callback=0A=
		document.addEventListener( "DOMContentLoaded", jQuery.ready, false );=0A=
	=0A=
	// If IE is used and is not in a frame=0A=
	// Continually check to see if the document is ready=0A=
	if ( jQuery.browser.msie && window =3D=3D top ) (function(){=0A=
		if (jQuery.isReady) return;=0A=
		try {=0A=
			// If IE is used, use the trick by Diego Perini=0A=
			// http://javascript.nwbox.com/IEContentLoaded/=0A=
			document.documentElement.doScroll("left");=0A=
		} catch( error ) {=0A=
			setTimeout( arguments.callee, 0 );=0A=
			return;=0A=
		}=0A=
		// and execute any waiting functions=0A=
		jQuery.ready();=0A=
	})();=0A=
=0A=
	if ( jQuery.browser.opera )=0A=
		document.addEventListener( "DOMContentLoaded", function () {=0A=
			if (jQuery.isReady) return;=0A=
			for (var i =3D 0; i < document.styleSheets.length; i++)=0A=
				if (document.styleSheets[i].disabled) {=0A=
					setTimeout( arguments.callee, 0 );=0A=
					return;=0A=
				}=0A=
			// and execute any waiting functions=0A=
			jQuery.ready();=0A=
		}, false);=0A=
=0A=
	if ( jQuery.browser.safari ) {=0A=
		var numStyles;=0A=
		(function(){=0A=
			if (jQuery.isReady) return;=0A=
			if ( document.readyState !=3D "loaded" && document.readyState !=3D =
"complete" ) {=0A=
				setTimeout( arguments.callee, 0 );=0A=
				return;=0A=
			}=0A=
			if ( numStyles =3D=3D=3D undefined )=0A=
				numStyles =3D jQuery("style, link[rel=3Dstylesheet]").length;=0A=
			if ( document.styleSheets.length !=3D numStyles ) {=0A=
				setTimeout( arguments.callee, 0 );=0A=
				return;=0A=
			}=0A=
			// and execute any waiting functions=0A=
			jQuery.ready();=0A=
		})();=0A=
	}=0A=
=0A=
	// A fallback to window.onload, that will always work=0A=
	jQuery.event.add( window, "load", jQuery.ready );=0A=
}=0A=
=0A=
jQuery.each( ("blur,focus,load,resize,scroll,unload,click,dblclick," +=0A=
	"mousedown,mouseup,mousemove,mouseover,mouseout,change,select," + =0A=
	"submit,keydown,keypress,keyup,error").split(","), function(i, name){=0A=
	=0A=
	// Handle event binding=0A=
	jQuery.fn[name] =3D function(fn){=0A=
		return fn ? this.bind(name, fn) : this.trigger(name);=0A=
	};=0A=
});=0A=
=0A=
// Checks if an event happened on an element within another element=0A=
// Used in jQuery.event.special.mouseenter and mouseleave handlers=0A=
var withinElement =3D function(event, elem) {=0A=
	// Check if mouse(over|out) are still within the same parent element=0A=
	var parent =3D event.relatedTarget;=0A=
	// Traverse up the tree=0A=
	while ( parent && parent !=3D elem ) try { parent =3D =
parent.parentNode; } catch(error) { parent =3D elem; }=0A=
	// Return true if we actually just moused on to a sub-element=0A=
	return parent =3D=3D elem;=0A=
};=0A=
=0A=
// Prevent memory leaks in IE=0A=
// And prevent errors on refresh with events like mouseover in other =
browsers=0A=
// Window isn't included so as not to unbind existing unload events=0A=
jQuery(window).bind("unload", function() {=0A=
	jQuery("*").add(document).unbind();=0A=
});=0A=
jQuery.fn.extend({=0A=
	load: function( url, params, callback ) {=0A=
		if ( jQuery.isFunction( url ) )=0A=
			return this.bind("load", url);=0A=
=0A=
		var off =3D url.indexOf(" ");=0A=
		if ( off >=3D 0 ) {=0A=
			var selector =3D url.slice(off, url.length);=0A=
			url =3D url.slice(0, off);=0A=
		}=0A=
=0A=
		callback =3D callback || function(){};=0A=
=0A=
		// Default to a GET request=0A=
		var type =3D "GET";=0A=
=0A=
		// If the second parameter was provided=0A=
		if ( params )=0A=
			// If it's a function=0A=
			if ( jQuery.isFunction( params ) ) {=0A=
				// We assume that it's the callback=0A=
				callback =3D params;=0A=
				params =3D null;=0A=
=0A=
			// Otherwise, build a param string=0A=
			} else {=0A=
				params =3D jQuery.param( params );=0A=
				type =3D "POST";=0A=
			}=0A=
=0A=
		var self =3D this;=0A=
=0A=
		// Request the remote document=0A=
		jQuery.ajax({=0A=
			url: url,=0A=
			type: type,=0A=
			dataType: "html",=0A=
			data: params,=0A=
			complete: function(res, status){=0A=
				// If successful, inject the HTML into all the matched elements=0A=
				if ( status =3D=3D "success" || status =3D=3D "notmodified" )=0A=
					// See if a selector was specified=0A=
					self.html( selector ?=0A=
						// Create a dummy div to hold the results=0A=
						jQuery("<div/>")=0A=
							// inject the contents of the document in, removing the scripts=0A=
							// to avoid any 'Permission Denied' errors in IE=0A=
							.append(res.responseText.replace(/<script(.|\s)*?\/script>/g, ""))=0A=
=0A=
							// Locate the specified elements=0A=
							.find(selector) :=0A=
=0A=
						// If not, just inject the full result=0A=
						res.responseText );=0A=
=0A=
				self.each( callback, [res.responseText, status, res] );=0A=
			}=0A=
		});=0A=
		return this;=0A=
	},=0A=
=0A=
	serialize: function() {=0A=
		return jQuery.param(this.serializeArray());=0A=
	},=0A=
	serializeArray: function() {=0A=
		return this.map(function(){=0A=
			return jQuery.nodeName(this, "form") ?=0A=
				jQuery.makeArray(this.elements) : this;=0A=
		})=0A=
		.filter(function(){=0A=
			return this.name && !this.disabled && =0A=
				(this.checked || /select|textarea/i.test(this.nodeName) || =0A=
					/text|hidden|password/i.test(this.type));=0A=
		})=0A=
		.map(function(i, elem){=0A=
			var val =3D jQuery(this).val();=0A=
			return val =3D=3D null ? null :=0A=
				val.constructor =3D=3D Array ?=0A=
					jQuery.map( val, function(val, i){=0A=
						return {name: elem.name, value: val};=0A=
					}) :=0A=
					{name: elem.name, value: val};=0A=
		}).get();=0A=
	}=0A=
});=0A=
=0A=
// Attach a bunch of functions for handling common AJAX events=0A=
jQuery.each( =
"ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(",=
"), function(i,o){=0A=
	jQuery.fn[o] =3D function(f){=0A=
		return this.bind(o, f);=0A=
	};=0A=
});=0A=
=0A=
var jsc =3D (new Date).getTime();=0A=
=0A=
jQuery.extend({=0A=
	get: function( url, data, callback, type ) {=0A=
		// shift arguments if data argument was ommited=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			callback =3D data;=0A=
			data =3D null;=0A=
		}=0A=
		=0A=
		return jQuery.ajax({=0A=
			type: "GET",=0A=
			url: url,=0A=
			data: data,=0A=
			success: callback,=0A=
			dataType: type=0A=
		});=0A=
	},=0A=
=0A=
	getScript: function( url, callback ) {=0A=
		return jQuery.get(url, null, callback, "script");=0A=
	},=0A=
=0A=
	getJSON: function( url, data, callback ) {=0A=
		return jQuery.get(url, data, callback, "json");=0A=
	},=0A=
=0A=
	post: function( url, data, callback, type ) {=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			callback =3D data;=0A=
			data =3D {};=0A=
		}=0A=
=0A=
		return jQuery.ajax({=0A=
			type: "POST",=0A=
			url: url,=0A=
			data: data,=0A=
			success: callback,=0A=
			dataType: type=0A=
		});=0A=
	},=0A=
=0A=
	ajaxSetup: function( settings ) {=0A=
		jQuery.extend( jQuery.ajaxSettings, settings );=0A=
	},=0A=
=0A=
	ajaxSettings: {=0A=
		global: true,=0A=
		type: "GET",=0A=
		timeout: 0,=0A=
		contentType: "application/x-www-form-urlencoded",=0A=
		processData: true,=0A=
		async: true,=0A=
		data: null,=0A=
		username: null,=0A=
		password: null,=0A=
		accepts: {=0A=
			xml: "application/xml, text/xml",=0A=
			html: "text/html",=0A=
			script: "text/javascript, application/javascript",=0A=
			json: "application/json, text/javascript",=0A=
			text: "text/plain",=0A=
			_default: "*/*"=0A=
		}=0A=
	},=0A=
	=0A=
	// Last-Modified header cache for next request=0A=
	lastModified: {},=0A=
=0A=
	ajax: function( s ) {=0A=
		var jsonp, jsre =3D /=3D\?(&|$)/g, status, data;=0A=
=0A=
		// Extend the settings, but re-extend 's' so that it can be=0A=
		// checked again later (in the test suite, specifically)=0A=
		s =3D jQuery.extend(true, s, jQuery.extend(true, {}, =
jQuery.ajaxSettings, s));=0A=
=0A=
		// convert data if not already a string=0A=
		if ( s.data && s.processData && typeof s.data !=3D "string" )=0A=
			s.data =3D jQuery.param(s.data);=0A=
=0A=
		// Handle JSONP Parameter Callbacks=0A=
		if ( s.dataType =3D=3D "jsonp" ) {=0A=
			if ( s.type.toLowerCase() =3D=3D "get" ) {=0A=
				if ( !s.url.match(jsre) )=0A=
					s.url +=3D (s.url.match(/\?/) ? "&" : "?") + (s.jsonp || =
"callback") + "=3D?";=0A=
			} else if ( !s.data || !s.data.match(jsre) )=0A=
				s.data =3D (s.data ? s.data + "&" : "") + (s.jsonp || "callback") + =
"=3D?";=0A=
			s.dataType =3D "json";=0A=
		}=0A=
=0A=
		// Build temporary JSONP function=0A=
		if ( s.dataType =3D=3D "json" && (s.data && s.data.match(jsre) || =
s.url.match(jsre)) ) {=0A=
			jsonp =3D "jsonp" + jsc++;=0A=
=0A=
			// Replace the =3D? sequence both in the query string and the data=0A=
			if ( s.data )=0A=
				s.data =3D (s.data + "").replace(jsre, "=3D" + jsonp + "$1");=0A=
			s.url =3D s.url.replace(jsre, "=3D" + jsonp + "$1");=0A=
=0A=
			// We need to make sure=0A=
			// that a JSONP style response is executed properly=0A=
			s.dataType =3D "script";=0A=
=0A=
			// Handle JSONP-style loading=0A=
			window[ jsonp ] =3D function(tmp){=0A=
				data =3D tmp;=0A=
				success();=0A=
				complete();=0A=
				// Garbage collect=0A=
				window[ jsonp ] =3D undefined;=0A=
				try{ delete window[ jsonp ]; } catch(e){}=0A=
				if ( head )=0A=
					head.removeChild( script );=0A=
			};=0A=
		}=0A=
=0A=
		if ( s.dataType =3D=3D "script" && s.cache =3D=3D null )=0A=
			s.cache =3D false;=0A=
=0A=
		if ( s.cache =3D=3D=3D false && s.type.toLowerCase() =3D=3D "get" ) {=0A=
			var ts =3D (new Date()).getTime();=0A=
			// try replacing _=3D if it is there=0A=
			var ret =3D s.url.replace(/(\?|&)_=3D.*?(&|$)/, "$1_=3D" + ts + "$2");=0A=
			// if nothing was replaced, add timestamp to the end=0A=
			s.url =3D ret + ((ret =3D=3D s.url) ? (s.url.match(/\?/) ? "&" : "?") =
+ "_=3D" + ts : "");=0A=
		}=0A=
=0A=
		// If data is available, append data to url for get requests=0A=
		if ( s.data && s.type.toLowerCase() =3D=3D "get" ) {=0A=
			s.url +=3D (s.url.match(/\?/) ? "&" : "?") + s.data;=0A=
=0A=
			// IE likes to send both get and post data, prevent this=0A=
			s.data =3D null;=0A=
		}=0A=
=0A=
		// Watch for a new set of requests=0A=
		if ( s.global && ! jQuery.active++ )=0A=
			jQuery.event.trigger( "ajaxStart" );=0A=
=0A=
		// If we're requesting a remote document=0A=
		// and trying to load JSON or Script with a GET=0A=
		if ( (!s.url.indexOf("http") || !s.url.indexOf("//")) && s.dataType =
=3D=3D "script" && s.type.toLowerCase() =3D=3D "get" ) {=0A=
			var head =3D document.getElementsByTagName("head")[0];=0A=
			var script =3D document.createElement("script");=0A=
			script.src =3D s.url;=0A=
			if (s.scriptCharset)=0A=
				script.charset =3D s.scriptCharset;=0A=
=0A=
			// Handle Script loading=0A=
			if ( !jsonp ) {=0A=
				var done =3D false;=0A=
=0A=
				// Attach handlers for all browsers=0A=
				script.onload =3D script.onreadystatechange =3D function(){=0A=
					if ( !done && (!this.readyState || =0A=
							this.readyState =3D=3D "loaded" || this.readyState =3D=3D =
"complete") ) {=0A=
						done =3D true;=0A=
						success();=0A=
						complete();=0A=
						head.removeChild( script );=0A=
					}=0A=
				};=0A=
			}=0A=
=0A=
			head.appendChild(script);=0A=
=0A=
			// We handle everything using the script element injection=0A=
			return undefined;=0A=
		}=0A=
=0A=
		var requestDone =3D false;=0A=
=0A=
		// Create the request object; Microsoft failed to properly=0A=
		// implement the XMLHttpRequest in IE7, so we use the ActiveXObject =
when it is available=0A=
		var xml =3D window.ActiveXObject ? new =
ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();=0A=
=0A=
		// Open the socket=0A=
		xml.open(s.type, s.url, s.async, s.username, s.password);=0A=
=0A=
		// Need an extra try/catch for cross domain requests in Firefox 3=0A=
		try {=0A=
			// Set the correct header, if data is being sent=0A=
			if ( s.data )=0A=
				xml.setRequestHeader("Content-Type", s.contentType);=0A=
=0A=
			// Set the If-Modified-Since header, if ifModified mode.=0A=
			if ( s.ifModified )=0A=
				xml.setRequestHeader("If-Modified-Since",=0A=
					jQuery.lastModified[s.url] || "Thu, 01 Jan 1970 00:00:00 GMT" );=0A=
=0A=
			// Set header so the called script knows that it's an XMLHttpRequest=0A=
			xml.setRequestHeader("X-Requested-With", "XMLHttpRequest");=0A=
=0A=
			// Set the Accepts header for the server, depending on the dataType=0A=
			xml.setRequestHeader("Accept", s.dataType && s.accepts[ s.dataType ] ?=0A=
				s.accepts[ s.dataType ] + ", */*" :=0A=
				s.accepts._default );=0A=
		} catch(e){}=0A=
=0A=
		// Allow custom headers/mimetypes=0A=
		if ( s.beforeSend )=0A=
			s.beforeSend(xml);=0A=
			=0A=
		if ( s.global )=0A=
			jQuery.event.trigger("ajaxSend", [xml, s]);=0A=
=0A=
		// Wait for a response to come back=0A=
		var onreadystatechange =3D function(isTimeout){=0A=
			// The transfer is complete and the data is available, or the request =
timed out=0A=
			if ( !requestDone && xml && (xml.readyState =3D=3D 4 || isTimeout =
=3D=3D "timeout") ) {=0A=
				requestDone =3D true;=0A=
				=0A=
				// clear poll interval=0A=
				if (ival) {=0A=
					clearInterval(ival);=0A=
					ival =3D null;=0A=
				}=0A=
				=0A=
				status =3D isTimeout =3D=3D "timeout" && "timeout" ||=0A=
					!jQuery.httpSuccess( xml ) && "error" ||=0A=
					s.ifModified && jQuery.httpNotModified( xml, s.url ) && =
"notmodified" ||=0A=
					"success";=0A=
=0A=
				if ( status =3D=3D "success" ) {=0A=
					// Watch for, and catch, XML document parse errors=0A=
					try {=0A=
						// process the data (runs the xml through httpData regardless of =
callback)=0A=
						data =3D jQuery.httpData( xml, s.dataType );=0A=
					} catch(e) {=0A=
						status =3D "parsererror";=0A=
					}=0A=
				}=0A=
=0A=
				// Make sure that the request was successful or notmodified=0A=
				if ( status =3D=3D "success" ) {=0A=
					// Cache Last-Modified header, if ifModified mode.=0A=
					var modRes;=0A=
					try {=0A=
						modRes =3D xml.getResponseHeader("Last-Modified");=0A=
					} catch(e) {} // swallow exception thrown by FF if header is not =
available=0A=
	=0A=
					if ( s.ifModified && modRes )=0A=
						jQuery.lastModified[s.url] =3D modRes;=0A=
=0A=
					// JSONP handles its own success callback=0A=
					if ( !jsonp )=0A=
						success();	=0A=
				} else=0A=
					jQuery.handleError(s, xml, status);=0A=
=0A=
				// Fire the complete handlers=0A=
				complete();=0A=
=0A=
				// Stop memory leaks=0A=
				if ( s.async )=0A=
					xml =3D null;=0A=
			}=0A=
		};=0A=
		=0A=
		if ( s.async ) {=0A=
			// don't attach the handler to the request, just poll it instead=0A=
			var ival =3D setInterval(onreadystatechange, 13); =0A=
=0A=
			// Timeout checker=0A=
			if ( s.timeout > 0 )=0A=
				setTimeout(function(){=0A=
					// Check to see if the request is still happening=0A=
					if ( xml ) {=0A=
						// Cancel the request=0A=
						xml.abort();=0A=
	=0A=
						if( !requestDone )=0A=
							onreadystatechange( "timeout" );=0A=
					}=0A=
				}, s.timeout);=0A=
		}=0A=
			=0A=
		// Send the data=0A=
		try {=0A=
			xml.send(s.data);=0A=
		} catch(e) {=0A=
			jQuery.handleError(s, xml, null, e);=0A=
		}=0A=
		=0A=
		// firefox 1.5 doesn't fire statechange for sync requests=0A=
		if ( !s.async )=0A=
			onreadystatechange();=0A=
=0A=
		function success(){=0A=
			// If a local callback was specified, fire it and pass it the data=0A=
			if ( s.success )=0A=
				s.success( data, status );=0A=
=0A=
			// Fire the global callback=0A=
			if ( s.global )=0A=
				jQuery.event.trigger( "ajaxSuccess", [xml, s] );=0A=
		}=0A=
=0A=
		function complete(){=0A=
			// Process result=0A=
			if ( s.complete )=0A=
				s.complete(xml, status);=0A=
=0A=
			// The request was completed=0A=
			if ( s.global )=0A=
				jQuery.event.trigger( "ajaxComplete", [xml, s] );=0A=
=0A=
			// Handle the global AJAX counter=0A=
			if ( s.global && ! --jQuery.active )=0A=
				jQuery.event.trigger( "ajaxStop" );=0A=
		}=0A=
		=0A=
		// return XMLHttpRequest to allow aborting the request etc.=0A=
		return xml;=0A=
	},=0A=
=0A=
	handleError: function( s, xml, status, e ) {=0A=
		// If a local callback was specified, fire it=0A=
		if ( s.error ) s.error( xml, status, e );=0A=
=0A=
		// Fire the global callback=0A=
		if ( s.global )=0A=
			jQuery.event.trigger( "ajaxError", [xml, s, e] );=0A=
	},=0A=
=0A=
	// Counter for holding the number of active queries=0A=
	active: 0,=0A=
=0A=
	// Determines if an XMLHttpRequest was successful or not=0A=
	httpSuccess: function( r ) {=0A=
		try {=0A=
			// IE error sometimes returns 1223 when it should be 204 so treat it =
as success, see #1450=0A=
			return !r.status && location.protocol =3D=3D "file:" ||=0A=
				( r.status >=3D 200 && r.status < 300 ) || r.status =3D=3D 304 || =
r.status =3D=3D 1223 ||=0A=
				jQuery.browser.safari && r.status =3D=3D undefined;=0A=
		} catch(e){}=0A=
		return false;=0A=
	},=0A=
=0A=
	// Determines if an XMLHttpRequest returns NotModified=0A=
	httpNotModified: function( xml, url ) {=0A=
		try {=0A=
			var xmlRes =3D xml.getResponseHeader("Last-Modified");=0A=
=0A=
			// Firefox always returns 200. check Last-Modified date=0A=
			return xml.status =3D=3D 304 || xmlRes =3D=3D =
jQuery.lastModified[url] ||=0A=
				jQuery.browser.safari && xml.status =3D=3D undefined;=0A=
		} catch(e){}=0A=
		return false;=0A=
	},=0A=
=0A=
	httpData: function( r, type ) {=0A=
		var ct =3D r.getResponseHeader("content-type");=0A=
		var xml =3D type =3D=3D "xml" || !type && ct && ct.indexOf("xml") >=3D =
0;=0A=
		var data =3D xml ? r.responseXML : r.responseText;=0A=
=0A=
		if ( xml && data.documentElement.tagName =3D=3D "parsererror" )=0A=
			throw "parsererror";=0A=
=0A=
		// If the type is "script", eval it in global context=0A=
		if ( type =3D=3D "script" )=0A=
			jQuery.globalEval( data );=0A=
=0A=
		// Get the JavaScript object, if JSON is used.=0A=
		if ( type =3D=3D "json" )=0A=
			data =3D eval("(" + data + ")");=0A=
=0A=
		return data;=0A=
	},=0A=
=0A=
	// Serialize an array of form elements or a set of=0A=
	// key/values into a query string=0A=
	param: function( a ) {=0A=
		var s =3D [];=0A=
=0A=
		// If an array was passed in, assume that it is an array=0A=
		// of form elements=0A=
		if ( a.constructor =3D=3D Array || a.jquery )=0A=
			// Serialize the form elements=0A=
			jQuery.each( a, function(){=0A=
				s.push( encodeURIComponent(this.name) + "=3D" + encodeURIComponent( =
this.value ) );=0A=
			});=0A=
=0A=
		// Otherwise, assume that it's an object of key/value pairs=0A=
		else=0A=
			// Serialize the key/values=0A=
			for ( var j in a )=0A=
				// If the value is an array then the key names need to be repeated=0A=
				if ( a[j] && a[j].constructor =3D=3D Array )=0A=
					jQuery.each( a[j], function(){=0A=
						s.push( encodeURIComponent(j) + "=3D" + encodeURIComponent( this ) =
);=0A=
					});=0A=
				else=0A=
					s.push( encodeURIComponent(j) + "=3D" + encodeURIComponent( a[j] ) =
);=0A=
=0A=
		// Return the resulting serialization=0A=
		return s.join("&").replace(/%20/g, "+");=0A=
	}=0A=
=0A=
});=0A=
jQuery.fn.extend({=0A=
	show: function(speed,callback){=0A=
		return speed ?=0A=
			this.animate({=0A=
				height: "show", width: "show", opacity: "show"=0A=
			}, speed, callback) :=0A=
			=0A=
			this.filter(":hidden").each(function(){=0A=
				this.style.display =3D this.oldblock || "";=0A=
				if ( jQuery.css(this,"display") =3D=3D "none" ) {=0A=
					var elem =3D jQuery("<" + this.tagName + " />").appendTo("body");=0A=
					this.style.display =3D elem.css("display");=0A=
					// handle an edge condition where css is - div { display:none; } or =
similar=0A=
					if (this.style.display =3D=3D "none")=0A=
						this.style.display =3D "block";=0A=
					elem.remove();=0A=
				}=0A=
			}).end();=0A=
	},=0A=
	=0A=
	hide: function(speed,callback){=0A=
		return speed ?=0A=
			this.animate({=0A=
				height: "hide", width: "hide", opacity: "hide"=0A=
			}, speed, callback) :=0A=
			=0A=
			this.filter(":visible").each(function(){=0A=
				this.oldblock =3D this.oldblock || jQuery.css(this,"display");=0A=
				this.style.display =3D "none";=0A=
			}).end();=0A=
	},=0A=
=0A=
	// Save the old toggle function=0A=
	_toggle: jQuery.fn.toggle,=0A=
	=0A=
	toggle: function( fn, fn2 ){=0A=
		return jQuery.isFunction(fn) && jQuery.isFunction(fn2) ?=0A=
			this._toggle( fn, fn2 ) :=0A=
			fn ?=0A=
				this.animate({=0A=
					height: "toggle", width: "toggle", opacity: "toggle"=0A=
				}, fn, fn2) :=0A=
				this.each(function(){=0A=
					jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();=0A=
				});=0A=
	},=0A=
	=0A=
	slideDown: function(speed,callback){=0A=
		return this.animate({height: "show"}, speed, callback);=0A=
	},=0A=
	=0A=
	slideUp: function(speed,callback){=0A=
		return this.animate({height: "hide"}, speed, callback);=0A=
	},=0A=
=0A=
	slideToggle: function(speed, callback){=0A=
		return this.animate({height: "toggle"}, speed, callback);=0A=
	},=0A=
	=0A=
	fadeIn: function(speed, callback){=0A=
		return this.animate({opacity: "show"}, speed, callback);=0A=
	},=0A=
	=0A=
	fadeOut: function(speed, callback){=0A=
		return this.animate({opacity: "hide"}, speed, callback);=0A=
	},=0A=
	=0A=
	fadeTo: function(speed,to,callback){=0A=
		return this.animate({opacity: to}, speed, callback);=0A=
	},=0A=
	=0A=
	animate: function( prop, speed, easing, callback ) {=0A=
		var optall =3D jQuery.speed(speed, easing, callback);=0A=
=0A=
		return this[ optall.queue =3D=3D=3D false ? "each" : "queue" =
](function(){=0A=
			if ( this.nodeType !=3D 1)=0A=
				return false;=0A=
=0A=
			var opt =3D jQuery.extend({}, optall);=0A=
			var hidden =3D jQuery(this).is(":hidden"), self =3D this;=0A=
			=0A=
			for ( var p in prop ) {=0A=
				if ( prop[p] =3D=3D "hide" && hidden || prop[p] =3D=3D "show" && =
!hidden )=0A=
					return jQuery.isFunction(opt.complete) && opt.complete.apply(this);=0A=
=0A=
				if ( p =3D=3D "height" || p =3D=3D "width" ) {=0A=
					// Store display property=0A=
					opt.display =3D jQuery.css(this, "display");=0A=
=0A=
					// Make sure that nothing sneaks out=0A=
					opt.overflow =3D this.style.overflow;=0A=
				}=0A=
			}=0A=
=0A=
			if ( opt.overflow !=3D null )=0A=
				this.style.overflow =3D "hidden";=0A=
=0A=
			opt.curAnim =3D jQuery.extend({}, prop);=0A=
			=0A=
			jQuery.each( prop, function(name, val){=0A=
				var e =3D new jQuery.fx( self, opt, name );=0A=
=0A=
				if ( /toggle|show|hide/.test(val) )=0A=
					e[ val =3D=3D "toggle" ? hidden ? "show" : "hide" : val ]( prop );=0A=
				else {=0A=
					var parts =3D val.toString().match(/^([+-]=3D)?([\d+-.]+)(.*)$/),=0A=
						start =3D e.cur(true) || 0;=0A=
=0A=
					if ( parts ) {=0A=
						var end =3D parseFloat(parts[2]),=0A=
							unit =3D parts[3] || "px";=0A=
=0A=
						// We need to compute starting value=0A=
						if ( unit !=3D "px" ) {=0A=
							self.style[ name ] =3D (end || 1) + unit;=0A=
							start =3D ((end || 1) / e.cur(true)) * start;=0A=
							self.style[ name ] =3D start + unit;=0A=
						}=0A=
=0A=
						// If a +=3D/-=3D token was provided, we're doing a relative =
animation=0A=
						if ( parts[1] )=0A=
							end =3D ((parts[1] =3D=3D "-=3D" ? -1 : 1) * end) + start;=0A=
=0A=
						e.custom( start, end, unit );=0A=
					} else=0A=
						e.custom( start, val, "" );=0A=
				}=0A=
			});=0A=
=0A=
			// For JS strict compliance=0A=
			return true;=0A=
		});=0A=
	},=0A=
	=0A=
	queue: function(type, fn){=0A=
		if ( jQuery.isFunction(type) || ( type && type.constructor =3D=3D =
Array )) {=0A=
			fn =3D type;=0A=
			type =3D "fx";=0A=
		}=0A=
=0A=
		if ( !type || (typeof type =3D=3D "string" && !fn) )=0A=
			return queue( this[0], type );=0A=
=0A=
		return this.each(function(){=0A=
			if ( fn.constructor =3D=3D Array )=0A=
				queue(this, type, fn);=0A=
			else {=0A=
				queue(this, type).push( fn );=0A=
			=0A=
				if ( queue(this, type).length =3D=3D 1 )=0A=
					fn.apply(this);=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	stop: function(clearQueue, gotoEnd){=0A=
		var timers =3D jQuery.timers;=0A=
=0A=
		if (clearQueue)=0A=
			this.queue([]);=0A=
=0A=
		this.each(function(){=0A=
			// go in reverse order so anything added to the queue during the loop =
is ignored=0A=
			for ( var i =3D timers.length - 1; i >=3D 0; i-- )=0A=
				if ( timers[i].elem =3D=3D this ) {=0A=
					if (gotoEnd)=0A=
						// force the next step to be the last=0A=
						timers[i](true);=0A=
					timers.splice(i, 1);=0A=
				}=0A=
		});=0A=
=0A=
		// start the next in the queue if the last step wasn't forced=0A=
		if (!gotoEnd)=0A=
			this.dequeue();=0A=
=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
var queue =3D function( elem, type, array ) {=0A=
	if ( !elem )=0A=
		return undefined;=0A=
=0A=
	type =3D type || "fx";=0A=
=0A=
	var q =3D jQuery.data( elem, type + "queue" );=0A=
=0A=
	if ( !q || array )=0A=
		q =3D jQuery.data( elem, type + "queue", =0A=
			array ? jQuery.makeArray(array) : [] );=0A=
=0A=
	return q;=0A=
};=0A=
=0A=
jQuery.fn.dequeue =3D function(type){=0A=
	type =3D type || "fx";=0A=
=0A=
	return this.each(function(){=0A=
		var q =3D queue(this, type);=0A=
=0A=
		q.shift();=0A=
=0A=
		if ( q.length )=0A=
			q[0].apply( this );=0A=
	});=0A=
};=0A=
=0A=
jQuery.extend({=0A=
	=0A=
	speed: function(speed, easing, fn) {=0A=
		var opt =3D speed && speed.constructor =3D=3D Object ? speed : {=0A=
			complete: fn || !fn && easing || =0A=
				jQuery.isFunction( speed ) && speed,=0A=
			duration: speed,=0A=
			easing: fn && easing || easing && easing.constructor !=3D Function && =
easing=0A=
		};=0A=
=0A=
		opt.duration =3D (opt.duration && opt.duration.constructor =3D=3D =
Number ? =0A=
			opt.duration : =0A=
			{ slow: 600, fast: 200 }[opt.duration]) || 400;=0A=
	=0A=
		// Queueing=0A=
		opt.old =3D opt.complete;=0A=
		opt.complete =3D function(){=0A=
			if ( opt.queue !=3D=3D false )=0A=
				jQuery(this).dequeue();=0A=
			if ( jQuery.isFunction( opt.old ) )=0A=
				opt.old.apply( this );=0A=
		};=0A=
	=0A=
		return opt;=0A=
	},=0A=
	=0A=
	easing: {=0A=
		linear: function( p, n, firstNum, diff ) {=0A=
			return firstNum + diff * p;=0A=
		},=0A=
		swing: function( p, n, firstNum, diff ) {=0A=
			return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum;=0A=
		}=0A=
	},=0A=
	=0A=
	timers: [],=0A=
	timerId: null,=0A=
=0A=
	fx: function( elem, options, prop ){=0A=
		this.options =3D options;=0A=
		this.elem =3D elem;=0A=
		this.prop =3D prop;=0A=
=0A=
		if ( !options.orig )=0A=
			options.orig =3D {};=0A=
	}=0A=
=0A=
});=0A=
=0A=
jQuery.fx.prototype =3D {=0A=
=0A=
	// Simple function for setting a style value=0A=
	update: function(){=0A=
		if ( this.options.step )=0A=
			this.options.step.apply( this.elem, [ this.now, this ] );=0A=
=0A=
		(jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this );=0A=
=0A=
		// Set display property to block for height/width animations=0A=
		if ( this.prop =3D=3D "height" || this.prop =3D=3D "width" )=0A=
			this.elem.style.display =3D "block";=0A=
	},=0A=
=0A=
	// Get the current size=0A=
	cur: function(force){=0A=
		if ( this.elem[this.prop] !=3D null && this.elem.style[this.prop] =
=3D=3D null )=0A=
			return this.elem[ this.prop ];=0A=
=0A=
		var r =3D parseFloat(jQuery.css(this.elem, this.prop, force));=0A=
		return r && r > -10000 ? r : parseFloat(jQuery.curCSS(this.elem, =
this.prop)) || 0;=0A=
	},=0A=
=0A=
	// Start an animation from one number to another=0A=
	custom: function(from, to, unit){=0A=
		this.startTime =3D (new Date()).getTime();=0A=
		this.start =3D from;=0A=
		this.end =3D to;=0A=
		this.unit =3D unit || this.unit || "px";=0A=
		this.now =3D this.start;=0A=
		this.pos =3D this.state =3D 0;=0A=
		this.update();=0A=
=0A=
		var self =3D this;=0A=
		function t(gotoEnd){=0A=
			return self.step(gotoEnd);=0A=
		}=0A=
=0A=
		t.elem =3D this.elem;=0A=
=0A=
		jQuery.timers.push(t);=0A=
=0A=
		if ( jQuery.timerId =3D=3D null ) {=0A=
			jQuery.timerId =3D setInterval(function(){=0A=
				var timers =3D jQuery.timers;=0A=
				=0A=
				for ( var i =3D 0; i < timers.length; i++ )=0A=
					if ( !timers[i]() )=0A=
						timers.splice(i--, 1);=0A=
=0A=
				if ( !timers.length ) {=0A=
					clearInterval( jQuery.timerId );=0A=
					jQuery.timerId =3D null;=0A=
				}=0A=
			}, 13);=0A=
		}=0A=
	},=0A=
=0A=
	// Simple 'show' function=0A=
	show: function(){=0A=
		// Remember where we started, so that we can go back to it later=0A=
		this.options.orig[this.prop] =3D jQuery.attr( this.elem.style, =
this.prop );=0A=
		this.options.show =3D true;=0A=
=0A=
		// Begin the animation=0A=
		this.custom(0, this.cur());=0A=
=0A=
		// Make sure that we start at a small width/height to avoid any=0A=
		// flash of content=0A=
		if ( this.prop =3D=3D "width" || this.prop =3D=3D "height" )=0A=
			this.elem.style[this.prop] =3D "1px";=0A=
		=0A=
		// Start by showing the element=0A=
		jQuery(this.elem).show();=0A=
	},=0A=
=0A=
	// Simple 'hide' function=0A=
	hide: function(){=0A=
		// Remember where we started, so that we can go back to it later=0A=
		this.options.orig[this.prop] =3D jQuery.attr( this.elem.style, =
this.prop );=0A=
		this.options.hide =3D true;=0A=
=0A=
		// Begin the animation=0A=
		this.custom(this.cur(), 0);=0A=
	},=0A=
=0A=
	// Each step of an animation=0A=
	step: function(gotoEnd){=0A=
		var t =3D (new Date()).getTime();=0A=
=0A=
		if ( gotoEnd || t > this.options.duration + this.startTime ) {=0A=
			this.now =3D this.end;=0A=
			this.pos =3D this.state =3D 1;=0A=
			this.update();=0A=
=0A=
			this.options.curAnim[ this.prop ] =3D true;=0A=
=0A=
			var done =3D true;=0A=
			for ( var i in this.options.curAnim )=0A=
				if ( this.options.curAnim[i] !=3D=3D true )=0A=
					done =3D false;=0A=
=0A=
			if ( done ) {=0A=
				if ( this.options.display !=3D null ) {=0A=
					// Reset the overflow=0A=
					this.elem.style.overflow =3D this.options.overflow;=0A=
				=0A=
					// Reset the display=0A=
					this.elem.style.display =3D this.options.display;=0A=
					if ( jQuery.css(this.elem, "display") =3D=3D "none" )=0A=
						this.elem.style.display =3D "block";=0A=
				}=0A=
=0A=
				// Hide the element if the "hide" operation was done=0A=
				if ( this.options.hide )=0A=
					this.elem.style.display =3D "none";=0A=
=0A=
				// Reset the properties, if the item has been hidden or shown=0A=
				if ( this.options.hide || this.options.show )=0A=
					for ( var p in this.options.curAnim )=0A=
						jQuery.attr(this.elem.style, p, this.options.orig[p]);=0A=
			}=0A=
=0A=
			// If a callback was provided, execute it=0A=
			if ( done && jQuery.isFunction( this.options.complete ) )=0A=
				// Execute the complete function=0A=
				this.options.complete.apply( this.elem );=0A=
=0A=
			return false;=0A=
		} else {=0A=
			var n =3D t - this.startTime;=0A=
			this.state =3D n / this.options.duration;=0A=
=0A=
			// Perform the easing function, defaults to swing=0A=
			this.pos =3D jQuery.easing[this.options.easing || =
(jQuery.easing.swing ? "swing" : "linear")](this.state, n, 0, 1, =
this.options.duration);=0A=
			this.now =3D this.start + ((this.end - this.start) * this.pos);=0A=
=0A=
			// Perform the next step of the animation=0A=
			this.update();=0A=
		}=0A=
=0A=
		return true;=0A=
	}=0A=
=0A=
};=0A=
=0A=
jQuery.fx.step =3D {=0A=
	scrollLeft: function(fx){=0A=
		fx.elem.scrollLeft =3D fx.now;=0A=
	},=0A=
=0A=
	scrollTop: function(fx){=0A=
		fx.elem.scrollTop =3D fx.now;=0A=
	},=0A=
=0A=
	opacity: function(fx){=0A=
		jQuery.attr(fx.elem.style, "opacity", fx.now);=0A=
	},=0A=
=0A=
	_default: function(fx){=0A=
		fx.elem.style[ fx.prop ] =3D fx.now + fx.unit;=0A=
	}=0A=
};=0A=
// The Offset Method=0A=
// Originally By Brandon Aaron, part of the Dimension Plugin=0A=
// http://jquery.com/plugins/project/dimensions=0A=
jQuery.fn.offset =3D function() {=0A=
	var left =3D 0, top =3D 0, elem =3D this[0], results;=0A=
	=0A=
	if ( elem ) with ( jQuery.browser ) {=0A=
		var parent       =3D elem.parentNode, =0A=
		    offsetChild  =3D elem,=0A=
		    offsetParent =3D elem.offsetParent, =0A=
		    doc          =3D elem.ownerDocument,=0A=
		    safari2      =3D safari && parseInt(version) < 522 && =
!/adobeair/i.test(userAgent),=0A=
		    fixed        =3D jQuery.css(elem, "position") =3D=3D "fixed";=0A=
	=0A=
		// Use getBoundingClientRect if available=0A=
		if ( elem.getBoundingClientRect ) {=0A=
			var box =3D elem.getBoundingClientRect();=0A=
		=0A=
			// Add the document scroll offsets=0A=
			add(box.left + Math.max(doc.documentElement.scrollLeft, =
doc.body.scrollLeft),=0A=
				box.top  + Math.max(doc.documentElement.scrollTop,  =
doc.body.scrollTop));=0A=
		=0A=
			// IE adds the HTML element's border, by default it is medium which =
is 2px=0A=
			// IE 6 and 7 quirks mode the border width is overwritable by the =
following css html { border: 0; }=0A=
			// IE 7 standards mode, the border is always 2px=0A=
			// This border/offset is typically represented by the clientLeft and =
clientTop properties=0A=
			// However, in IE6 and 7 quirks mode the clientLeft and clientTop =
properties are not updated when overwriting it via CSS=0A=
			// Therefore this method will be off by 2px in IE while in quirksmode=0A=
			add( -doc.documentElement.clientLeft, -doc.documentElement.clientTop =
);=0A=
	=0A=
		// Otherwise loop through the offsetParents and parentNodes=0A=
		} else {=0A=
		=0A=
			// Initial element offsets=0A=
			add( elem.offsetLeft, elem.offsetTop );=0A=
			=0A=
			// Get parent offsets=0A=
			while ( offsetParent ) {=0A=
				// Add offsetParent offsets=0A=
				add( offsetParent.offsetLeft, offsetParent.offsetTop );=0A=
			=0A=
				// Mozilla and Safari > 2 does not include the border on offset =
parents=0A=
				// However Mozilla adds the border for table or table cells=0A=
				if ( mozilla && !/^t(able|d|h)$/i.test(offsetParent.tagName) || =
safari && !safari2 )=0A=
					border( offsetParent );=0A=
					=0A=
				// Add the document scroll offsets if position is fixed on any =
offsetParent=0A=
				if ( !fixed && jQuery.css(offsetParent, "position") =3D=3D "fixed" )=0A=
					fixed =3D true;=0A=
			=0A=
				// Set offsetChild to previous offsetParent unless it is the body =
element=0A=
				offsetChild  =3D /^body$/i.test(offsetParent.tagName) ? offsetChild =
: offsetParent;=0A=
				// Get next offsetParent=0A=
				offsetParent =3D offsetParent.offsetParent;=0A=
			}=0A=
		=0A=
			// Get parent scroll offsets=0A=
			while ( parent && parent.tagName && =
!/^body|html$/i.test(parent.tagName) ) {=0A=
				// Remove parent scroll UNLESS that parent is inline or a table to =
work around Opera inline/table scrollLeft/Top bug=0A=
				if ( !/^inline|table.*$/i.test(jQuery.css(parent, "display")) )=0A=
					// Subtract parent scroll offsets=0A=
					add( -parent.scrollLeft, -parent.scrollTop );=0A=
			=0A=
				// Mozilla does not add the border for a parent that has overflow =
!=3D visible=0A=
				if ( mozilla && jQuery.css(parent, "overflow") !=3D "visible" )=0A=
					border( parent );=0A=
			=0A=
				// Get next parent=0A=
				parent =3D parent.parentNode;=0A=
			}=0A=
		=0A=
			// Safari <=3D 2 doubles body offsets with a fixed position =
element/offsetParent or absolutely positioned offsetChild=0A=
			// Mozilla doubles body offsets with a non-absolutely positioned =
offsetChild=0A=
			if ( (safari2 && (fixed || jQuery.css(offsetChild, "position") =3D=3D =
"absolute")) || =0A=
				(mozilla && jQuery.css(offsetChild, "position") !=3D "absolute") )=0A=
					add( -doc.body.offsetLeft, -doc.body.offsetTop );=0A=
			=0A=
			// Add the document scroll offsets if position is fixed=0A=
			if ( fixed )=0A=
				add(Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft),=0A=
					Math.max(doc.documentElement.scrollTop,  doc.body.scrollTop));=0A=
		}=0A=
=0A=
		// Return an object with top and left properties=0A=
		results =3D { top: top, left: left };=0A=
	}=0A=
=0A=
	function border(elem) {=0A=
		add( jQuery.curCSS(elem, "borderLeftWidth", true), jQuery.curCSS(elem, =
"borderTopWidth", true) );=0A=
	}=0A=
=0A=
	function add(l, t) {=0A=
		left +=3D parseInt(l) || 0;=0A=
		top +=3D parseInt(t) || 0;=0A=
	}=0A=
=0A=
	return results;=0A=
};=0A=
})();=0A=

------=_NextPart_000_0000_01CAD1A2.50CE3980
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: https://benefitadvisorsevents.webex.com/ec0605l/eventcenter/html/js/common/htmlrenderenhance.js

(function() {
/*
 * Html Render Enhance. It depends on jQuery 1.2.3.
 */
var HtmlRenderEnhance =3D window.HtmlRenderEnhance =3D jQuery.extend({}, =
{
	textRenderEnhance: function(selector) {
		jQuery(selector || 'div.TextRenderEnhance').each(function() {
			var div =3D jQuery(this);
			var pre =3D div.find('pre:first');
			var input =3D jQuery.trim(pre.text());
			if (input !=3D '') {
				var hasTextOrCommentNodeOnly =3D (function(text) {
					var result =3D true;
					var children =3D jQuery('<div></div>').html(text).children();
					for (var i =3D 0, length =3D children.length; i < length; i++) {
						var nodeType =3D children.get(i).nodeType;
						if (nodeType =3D=3D 3 || nodeType =3D=3D 8) {
							continue;
						}
						result =3D false;
						break;
					}
					return result;
				})(input);
				if (hasTextOrCommentNodeOnly) {
					div.html(input.replace(/\r\n/g, '<br />').replace(/\r/g, '<br =
/>').replace(/\n/g, '<br />'));
				} else {
					div.html(input);
				}
				if (jQuery.trim(div.text()) =3D=3D '' && div.find('img').length =
=3D=3D 0) {
					div.text(input);
				}
			}
		});
	},
	anchorRenderEnhance: function(selector) {
		jQuery(selector || 'a.AnchorRenderEnhance').each(function() {
			var obj =3D jQuery(this);
			var text =3D jQuery.trim(obj.text());
			obj.html(text.replace(/<([aA])/g, '<$1_').replace(/<\/([aA])>/g, =
'<\/$1_>'));
			if (jQuery.trim(obj.text()) =3D=3D '') {
				obj.text(text);
			}
		});
	},
	dropDownListRenderEnhance: function(selector, options) {
		options =3D jQuery.extend({maxlength: 40}, options);
		jQuery(selector || 'select.DropDownListRenderEnhance').each(function() =
{
			var select =3D jQuery(this);
			select.hide().children().each(function() {
				var obj =3D jQuery(this);
				var text =3D =
jQuery.trim(jQuery('<div></div>').html(obj.text()).text());
				if (text !=3D '') {
					obj.text(text);
				}
				if (options.maxlength > 0) {
					var newText =3D obj.text();
					if (newText.length > options.maxlength) {
						obj.text(newText.substring(0, options.maxlength));
					}
				}
			});
			select.show();
		});
	},
	closeInputPrefill: function(selector) {
		jQuery(selector || 'form').attr('autocomplete', 'off');
	}
});
})();

(function() {
	jQuery(document).ready(function() {
		HtmlRenderEnhance.anchorRenderEnhance();
		HtmlRenderEnhance.dropDownListRenderEnhance();
		HtmlRenderEnhance.textRenderEnhance();
		HtmlRenderEnhance.closeInputPrefill(':password');
	});
})();
------=_NextPart_000_0000_01CAD1A2.50CE3980--
