From: "Saved by Windows Internet Explorer 7"
Subject: United States Code: Title 16,2643. Gathering information on costs of service | LII / Legal Information Institute
Date: Mon, 14 Jun 2010 15:06:48 -0400
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0027_01CB0BD3.36379B50"
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18197

This is a multi-part message in MIME format.

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_00002643----000-.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML xmlns:lxslt =3D "http://xml.apache.org/xslt"><HEAD><TITLE>United =
States Code: Title 16,2643. Gathering information on costs of service | =
LII / Legal Information Institute</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1"><LINK=20
href=3D"http://www.law.cornell.edu/uscode/css/uscode.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
43----000-.html"=20
type=3Dtext/html rel=3Dcanonical>
<META content=3DT16F04391 name=3Dfragment-ID>
<META content=3D"Sun Nov  8 07:09:49 2009" name=3Dproduction-date>
<META content=3Dldms-ng2.xsl name=3Dproduction-xsl>
<META=20
content=3D"TITLE 16 - CONSERVATION/CHAPTER 46 - PUBLIC UTILITY =
REGULATORY POLICIES/SUBCHAPTER IV - ADMINISTRATIVE PROVISIONS"=20
name=3Dparents>
<META scheme=3Durn=20
content=3Durn:lex:us:federal:codified.statute:2009;16.usc.2643@official;h=
ouse.gov:en$text-html:legal.information.institute=20
name=3Ddc.identifier><!-- inclusion for head element. mostly for Google =
ad js --><!-- see the init section below. we attempt to open the =
database connection once, and reuse it -->
<SCRIPT =
src=3D"http://partner.googleadservices.com/gampad/google_service.js"=20
type=3Dtext/javascript>=0A=
	</SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
	GS_googleAddAdSenseService("ca-pub-6351434937294517");=0A=
	GS_googleEnableAllServices();=0A=
	</SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
	 GA_googleAddSlot("ca-pub-6351434937294517", =
"USC_Conservation_ATF_Left_120x600");=0A=
=0A=
	</SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
	GA_googleFetchAds();=0A=
	</SCRIPT>

<META content=3D"MSHTML 6.00.6002.18226" name=3DGENERATOR></HEAD>
<BODY><!-- the following is Mason-included: header.htm  --><!-- This =
included header depends on the uscode stylesheet --><!-- note too that =
we include explicit end tags for some elements that =0A=
     do not normally require them, such as IMG.  This is because this=0A=
     file is also used as input to the XSLT processor that generates =0A=
     most of the Code files.  --><!-- COPYRIGHT NOTICE.=0A=
=0A=
     The LII does not assert copyright in US Government works, but we do=0A=
     claim copyright in markup, navigation apparatus, and other =
value-added=0A=
     features of this electronic edition of the US Code.  This material =
is =0A=
     covered by a Creative Commons license, viewable at=0A=
     =0A=
     http://creativecommons.org/licenses/by-nc-sa/2.5/=0A=
     =0A=
     In brief, the terms of that license are that you may copy, =
distribute,=0A=
     and display this work, or make derivative works, so long as=0A=
     =0A=
     a) you give the LII credit;=0A=
     b) you do not use this work for commercial purposes=0A=
     c) you distribute any works derived from this one under the same=0A=
        licensing terms as this.=0A=
     =0A=
     Potential commercial users/licensors should contact us at =0A=
     =0A=
     lii@lii.law.cornell.edu=0A=
-->
<DIV><!-- this div is used to fool the XSLT processor into=0A=
     thinking this is a well formed document.  =0A=
     otherwise, you're right to think=0A=
     it's useless --><!-- begin tmp liihead faux sub-inclusion --><!-- =
liihead inclusion -->
<SCRIPT type=3Dtext/javascript>=0A=
var gaJsHost =3D (("https:" =3D=3D document.location.protocol) ? =
"https://ssl." : "http://www.");=0A=
document.write(unescape("%3Cscript src=3D'" + gaJsHost + =
"google-analytics.com/ga.js' type=3D'text/javascript'%3E%3C/script%3E"));=0A=
</SCRIPT>

<SCRIPT type=3Dtext/javascript>=0A=
var pageTracker =3D _gat._getTracker("UA-1734385-15");=0A=
pageTracker._initData();=0A=
pageTracker._trackPageview();=0A=
</SCRIPT>

<DIV id=3Dcontainer><!-- opens in header.htm, closes in footer.htm =
--><!-- accessibility --><A=20
class=3DskipNav=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
43----000-.html#content">skip=20
navigation</A> <!--  CU-mandate -->
<DIV id=3Dcu-head>
<DIV id=3Dcu-identity>
<DIV id=3Dcu-logo><A id=3Dinsignia-link title=3D"Cornell University"=20
href=3D"http://www.cornell.edu/"><IMG alt=3D"Cornell University"=20
src=3D"http://www.law.cornell.edu/images/insignia.gif" border=3D0></A><A =

id=3Dunit-link title=3D"Cornell Law School"=20
href=3D"http://www.lawschool.cornell.edu/"><IMG alt=3D"Cornell Law =
School"=20
src=3D"http://www.law.cornell.edu/images/unit_name.gif" border=3D0></A> =
</DIV>
<DIV id=3Dsearch-navigation>
<UL>
  <LI><A href=3D"http://www.lawschool.cornell.edu/search.cfm">Search Law =

  School</A> </LI>
  <LI><A href=3D"http://www.cornell.edu/search/">Search Cornell</A>=20
</LI></UL></DIV></DIV></DIV><!-- close cu-head -->
<DIV id=3Dours><!-- open: header, close: footer --><!--  LII-header -->
<DIV class=3Dheader id=3Dlii-head>
<DIV>
<DIV id=3Dlii-logo><A href=3D"http://www.law.cornell.edu/" =
name=3Dliinav><SPAN=20
class=3Dliitmplogo>LII</SPAN> / Legal Information =
Institute</A></DIV><!-- close lii-logo -->
<DIV id=3Dlii-nav>
<UL>
  <LI><A class=3Dnav id=3Dliihomelink title=3D"lii home"=20
  href=3D"http://www.law.cornell.edu/">home</A> </LI>
  <LI><A class=3Dnav id=3Dliisearchlink title=3D"lii search"=20
  href=3D"http://www.law.cornell.edu/search/">search</A> </LI>
  <LI><A class=3Dnav id=3Dliilawyerlink title=3D"attorney directory"=20
  =
onclick=3D"javascript:&#10;pageTracker._trackPageview('/outbound/justia.t=
xt');"=20
  href=3D"http://lawyers.law.cornell.edu/">find a lawyer</A> </LI>
  <LI><A class=3Dnav id=3Dliidonatelink title=3D"lii donations"=20
  href=3D"http://www.law.cornell.edu/donors/">donate</A> </LI></UL><BR=20
class=3Dclear></DIV><!-- close lii-nav --></DIV><!-- close extra div =
--><BR=20
class=3Dclear></DIV><!-- close lii-head --><!-- end liihead inclusion =
--><!-- end tmp liihead -->
<DIV id=3Dcollection>
<DIV class=3Dheader id=3Dcollection-head>
<DIV id=3Dcollectionchunk>
<H1 id=3Dcollection-logo><A =
href=3D"http://www.law.cornell.edu/uscode/">U.S.=20
Code</A></H1><!-- close collection-logo -->
<DIV id=3Dcollection-nav>
<UL>
  <LI><A id=3Dhomelink title=3D"Main Page"=20
  href=3D"http://www.law.cornell.edu/uscode/">main page</A> </LI>
  <LI><A id=3Dfaqlink title=3DFAQ=20
  href=3D"http://www.law.cornell.edu/uscode/faq.html">faq</A> </LI>
  <LI><A id=3Dindexlink title=3DIndex=20
  href=3D"http://www.law.cornell.edu/uscode/titles.html">index</A> </LI>
  <LI><A id=3Dsearchlink title=3DSearch=20
  href=3D"http://www.law.cornell.edu/uscode/search/">search</A> =
</LI></UL><BR=20
class=3Dclear></DIV><!-- close collection-nav --></DIV><!-- close =
collectionchunk -->
<DIV id=3Dcollection-pic><IMG alt=3DCongress=20
src=3D"http://www.law.cornell.edu/uscode/images/loc_233x100.gif" =
border=3D0>=20
</DIV><BR class=3Dclear></DIV><!-- close  collection-head -->
<DIV id=3Dmiddle><BR class=3Dclear>
<DIV class=3Dbreathe><BR class=3Dclear><A name=3Dcontent></A><!-- =
splashover begins here --><LINK media=3Dall=20
href=3D"http://www.law.cornell.edu/css/fundraiser-css.css" =
type=3Dtext/css=20
rel=3Dstylesheet><!--[if gte IE 5.5]><![if lt IE 7]>=0A=
<style type=3D"text/css">=0A=
        #fundraiser-screen {=0A=
        /*=0A=
            This corrects IE not recognizing 'positon:fixed'=0A=
            IE5.5+/Win - this is more specific than the IE 5.0 version=0A=
            IE 7 and above properly display.=0A=
        */=0A=
            position: absolute;=0A=
            left: expression( ( ignoreMe2 =3D =0A=
document.documentElement.scrollLeft ? =0A=
document.documentElement.scrollLeft : document.body.scrollLeft ) + 'px' =
);=0A=
            top: expression( ( ignoreMe =3D =0A=
document.documentElement.scrollTop ? document.documentElement.scrollTop =0A=
: document.body.scrollTop ) + 'px' );=0A=
        }=0A=
</style>=0A=
<![endif]><![if lt IE 8]>
<STYLE type=3Dtext/css>#fundraiser-head {
	HEIGHT: 54px
}
#fundraiser-form {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
}
</STYLE>
<![endif]><![endif]-->
<SCRIPT src=3D"http://www.law.cornell.edu/js/jquery-1.4.2.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.law.cornell.edu/js/fundraiser-js.js"=20
type=3Dtext/javascript></SCRIPT>

<DIV id=3Dfundraiser-screen></DIV>
<DIV id=3Dfundraiser>
<DIV id=3Dfundraiser-head>
<DIV id=3Dlii-logo><A href=3D"http://www.law.cornell.edu/" =
name=3Dliinav><SPAN=20
class=3Dliitmplogo>LII</SPAN> / Legal Information Institute</A> </DIV>
<DIV id=3Dlii-right><A id=3Dclose-button title=3Dclose>close =
[X]</A></DIV><BR=20
class=3Dclear></DIV>
<DIV id=3Dfundraiser-content></DIV>
<DIV id=3Dfundraiser-footer>
<DIV id=3Dfundraiser-buttons><BUTTON id=3Dlearn-more=20
title=3D"Learn More About LII">Learn More about LII</BUTTON><BUTTON =
id=3Ddo-donation=20
title=3D"Donate to LII">Donate</BUTTON> </DIV>
<DIV class=3Dcorners id=3Dcr_btm_left></DIV>
<DIV class=3Dcorners id=3Dcr_btm_right></DIV></DIV></DIV><!-- splashover =
ends here -->
<DIV class=3Dstatute border=3D"0" width=3D"100%">
<DIV class=3Dlocalnav>
<DIV class=3Dbacktrail><A title=3D"TITLE 16 - CONSERVATION"=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sup_01_16.htm=
l">TITLE=20
16</A> &gt; <A title=3D"CHAPTER 46 - PUBLIC UTILITY REGULATORY POLICIES" =

href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sup_01_16_10_=
46.html">CHAPTER=20
46</A> &gt; <A title=3D"SUBCHAPTER IV - ADMINISTRATIVE PROVISIONS"=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sup_01_16_10_=
46_20_IV.html">SUBCHAPTER=20
IV</A> &gt; =A7&nbsp;2643</DIV>
<DIV class=3Dprevnext><A title=3D"=A7&#8201;2642. Responsibilities of =
Secretary"=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
42----000-.html">Prev</A>=20
| <A title=3D"=A7&#8201;2644. Relationship to other authority"=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
44----000-.html">Next</A>=20
</DIV></DIV>
<DIV class=3Dlocalinfo>
<H2 class=3Dcatchline>=A7&nbsp;2643. Gathering information on costs of =
service</H2>
<DIV class=3Ddates><A=20
href=3D"http://www.law.cornell.edu/uscode/HowCurrent.php/?tn=3D16&amp;fra=
gid=3DT16F04391&amp;extid=3Dusc_sec_16_00002643----000-&amp;sourcedate=3D=
2009-11-06&amp;proctime=3DSun Nov  8 07:09:49 2009">How=20
Current is This?</A> </DIV></DIV>
<DIV class=3Dstatute>
<DIV class=3Dpsection-1><A name=3Da></A><SPAN =
class=3Denumbell>(a)</SPAN> <B=20
class=3Dlabelleader>Information required to be gathered </B>
<DIV class=3Dptext-11>Each electric utility shall periodically gather =
information=20
under such rules (promulgated by the Commission) as the Commission =
determines=20
necessary to allow determination of the costs associated with providing =
electric=20
service. For purposes of this section, and for purposes of any =
consideration and=20
determination respecting the standard established by section <A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
21----000-.html">2621</A>=20
<A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
21----000-.html#d_2">(d)(2)</A>=20
of this title, such costs shall be separated, to the maximum extent =
practicable,=20
into the following components: customer cost component, demand cost =
component,=20
and energy cost component. Rules under this subsection shall include=20
requirements for the gathering of the following information with respect =
to each=20
electric utility=97 </DIV>
<DIV class=3Dpsection-2><A name=3Da_1></A><SPAN =
class=3Denumbell>(1)</SPAN> <SPAN=20
class=3Dptext-2>the costs of serving each electric consumer class, =
including costs=20
of serving different consumption patterns within such class, based on =
voltage=20
level, time of use, and other appropriate factors; </SPAN></DIV>
<DIV class=3Dpsection-2><A name=3Da_2></A><SPAN =
class=3Denumbell>(2)</SPAN> <SPAN=20
class=3Dptext-2>daily kilowatt demand load curves for all electric =
consumer=20
classes combined representative of daily and seasonal differences in =
demand, and=20
daily kilowatt demand load curves for each electric consumer class for =
which=20
there is a separate rate, representative of daily and seasonal =
differences in=20
demand; </SPAN></DIV>
<DIV class=3Dpsection-2><A name=3Da_3></A><SPAN =
class=3Denumbell>(3)</SPAN> <SPAN=20
class=3Dptext-2>annual capital, operating, and maintenance costs=97 =
</SPAN>
<DIV class=3Dpsection-3><A name=3Da_3_A></A><SPAN =
class=3Denumbell>(A)</SPAN> <SPAN=20
class=3Dptext-3>for transmission and distribution services, and =
</SPAN></DIV>
<DIV class=3Dpsection-3><A name=3Da_3_B></A><SPAN =
class=3Denumbell>(B)</SPAN> <SPAN=20
class=3Dptext-3>for each type of generating unit; and </SPAN>
<DIV class=3Dleading-04></DIV></DIV></DIV>
<DIV class=3Dpsection-2><A name=3Da_4></A><SPAN =
class=3Denumbell>(4)</SPAN> <SPAN=20
class=3Dptext-2>costs of purchased power, including representative daily =
and=20
seasonal differences in the amount of such costs. </SPAN>
<DIV class=3Dleading-04></DIV></DIV>
<DIV class=3Doutdent->Such rules shall provide that information required =
to be=20
gathered under this section shall be presented in such categories and =
such=20
detail as may be necessary to carry out the purposes of this section.=20
</DIV></DIV>
<DIV class=3Dpsection-1><A name=3Db></A><SPAN =
class=3Denumbell>(b)</SPAN> <B=20
class=3Dlabelleader>Commission rules </B>
<DIV class=3Dptext-11>The Commission shall, within 180 days after =
November 9,=20
1978, by rule, prescribe the methods, procedure, and format to be used =
by=20
electric utilities in gathering the information described in this =
section. Such=20
rules may provide for the exemption by the Commission of an electric =
utility or=20
class of electric utilities from gathering all or part of such =
information, in=20
cases where such utility or utilities show and the Commission finds, =
after=20
public notice and opportunity for the presentation of written data, =
views, and=20
arguments, that gathering such information is not likely to carry out =
the=20
purposes of this section. The Commission shall periodically review such =
findings=20
and may revise such rules. </DIV></DIV>
<DIV class=3Dpsection-1><A name=3Dc></A><SPAN =
class=3Denumbell>(c)</SPAN> <B=20
class=3Dlabelleader>Filing and publication </B>
<DIV class=3Dptext-11>Not later than two years after November 9, 1978, =
and=20
periodically, but not less frequently than every two years thereafter, =
each=20
electric utility shall file with=97 </DIV>
<DIV class=3Dpsection-2><A name=3Dc_1></A><SPAN =
class=3Denumbell>(1)</SPAN> <SPAN=20
class=3Dptext-2>the Commission, and </SPAN></DIV>
<DIV class=3Dpsection-2><A name=3Dc_2></A><SPAN =
class=3Denumbell>(2)</SPAN> <SPAN=20
class=3Dptext-2>any State regulatory authority which has ratemaking =
authority for=20
such utility, </SPAN>
<DIV class=3Dleading-04></DIV></DIV>
<DIV class=3Doutdent->the information gathered pursuant to this section =
and make=20
such information available to the public in such form and manner as the=20
Commission shall prescribe. In addition, at the time of application for, =
or=20
proposal of, any rate increase, each electric utility shall make such=20
information available to the public in such form and manner as the =
Commission=20
shall prescribe. The two-year period after November 9, 1978, specified =
in this=20
subsection may be extended by the Commission for a reasonable additional =
period=20
in the case of any electric utility for good cause shown. </DIV></DIV>
<DIV class=3Dpsection-1><A name=3Dd></A><SPAN =
class=3Denumbell>(d)</SPAN> <B=20
class=3Dlabelleader>Enforcement </B>
<DIV class=3Dptext-11>For purposes of enforcement, any violation of a =
requirement=20
of this section shall be treated as a violation of a provision of the =
Energy=20
Supply and Environmental Coordination Act of 1974 [<A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode15/usc_sup_01_15.htm=
l">15</A>=20
U.S.C. <A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode15/usc_sec_15_000007=
91----000-.html">791</A>=20
et seq.] enforceable under section 12 of such Act [<A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode15/usc_sup_01_15.htm=
l">15</A>=20
U.S.C. <A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode15/usc_sec_15_000007=
97----000-.html">797</A>]=20
(notwithstanding any expiration date in such Act) except that in =
applying the=20
provisions of such section <A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000000=
12----000-.html">12</A>=20
any reference to the Federal Energy Administrator shall be treated as a=20
reference to the Commission. </DIV></DIV></DIV></DIV>
<DIV class=3Dannot-left><!-- blockset for left sidebar --><!-- see the =
init section below. we attempt to open the database connection once, and =
reuse it --><!-- top sponsor for this range --><!-- justanswer block -->
<DIV class=3Dblock id=3Dblock_justanswer><A=20
onclick=3D"javascript:pageTracker._trackPageview('/outbound/justanswer.tx=
t');"=20
href=3D"http://topics.law.cornell.edu/justanswer_interstitial">Ask A =
Lawyer=20
Online. <SPAN=20
style=3D"DISPLAY: block; FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: =
#333; TEXT-DECORATION: none! important">Get=20
an Answer ASAP!</SPAN> </A></DIV><!-- middle sponsor for this range =
--><!-- bottom sponsor for this range --><!-- google ads -->
<DIV class=3Dblock id=3Dblock_adsense>
<P class=3Dwhine><A =
href=3D"http://www.law.cornell.edu/donors">Donations</A> cover=20
only 20% of our costs.</P><!-- ca-pub-6351434937294517 -->
<SCRIPT type=3Dtext/javascript>=0A=
	GA_googleFillSlot("USC_Conservation_ATF_Left_120x600");=0A=
	</SCRIPT>
</DIV></DIV>
<DIV class=3Dannot-right><!-- blockset for right sidebar --><!-- we open =
the database in the init section below --><!-- any of these blocks can =
appear in either the left or right sidebar=0A=
     and still work. This is somewhat costly in terms of database calls.=0A=
--><!-- sharing -->
<DIV class=3Dblock id=3Dblock_addthis><A=20
onmouseover=3D"return addthis_open(this, '', '[URL]', '[TITLE]')"=20
onclick=3D"return addthis_sendto()" onmouseout=3Daddthis_close()=20
href=3D"http://www.addthis.com/bookmark.php?v=3D250&amp;pub=3Dliiadverts"=
><IMG=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
height=3D16 alt=3D"Bookmark and Share"=20
src=3D"http://s7.addthis.com/static/btn/lg-share-en.gif" =
width=3D125></A>
<SCRIPT =
src=3D"http://s7.addthis.com/js/250/addthis_widget.js?pub=3Dliiadverts"=20
type=3Dtext/javascript></SCRIPT>
 </DIV><!-- group "lii utilities" together, primarily for control over =
borders -->
<DIV class=3Dblockgroup id=3Dlii_collection_utils><!-- per-Title search =
-->
<DIV class=3Dblock id=3Dblock_search><SPAN class=3Dsearchbox><SPAN=20
class=3Dsrchlead>Search this title:</SPAN> <BR>
<FORM action=3D/uscode/search/index.html method=3Dpost><INPUT =
name=3Dquery> <INPUT type=3Dsubmit value=3D"Search Title 16"> =
</FORM></SPAN></DIV><!-- official notes -->
<DIV class=3Dblock id=3Dblock_notes><A=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
43----000-notes.html">Notes</A></SPAN>=20
</DIV><!-- RSS feed -->
<DIV class=3Dblock id=3Dblock_rss><A title=3D"RSS feed"=20
href=3D"http://www.law.cornell.edu/uscode/rss/usc_update_16.rss"><EM>Titl=
e 16=20
RSS</EM> <IMG alt=3D"Title 16 RSS feed"=20
src=3D"http://www.law.cornell.edu/uscode/images/feed.gif"></A> =
</DIV><!-- PDF stuff -->
<DIV class=3Dblock id=3Dblock_pdf><A=20
href=3D"http://www.law.cornell.edu/uscprint/buypdf.php">PDF (2 =
pages)</A></DIV><!-- updates --><A=20
href=3D"http://www.law.cornell.edu/uscode/usc_update.php" =
rel=3Dnofollow>No=20
Update(s) Pending</A> <!-- parallel table of authorities -->
<DIV class=3Dblock id=3Dblock_plltable><A=20
href=3D"http://www.law.cornell.edu/usc-cgi/usc_cfr.cgi?title=3D16&amp;sec=
tion=3D2643">Parallel=20
authorities (CFR)</A> </DIV></DIV><!-- end of LII utilities group =
--><!-- lawyer listing -->
<DIV class=3Dblock id=3Djustia_find_lawyers>
<DIV id=3Dlawyers_search_results></DIV><A id=3Dseemorelawyers =
name=3Dlisttop>
<SCRIPT src=3D"http://www.law.cornell.edu/scripts/jquery.js"=20
type=3Dtext/javascript></SCRIPT>
<A id=3Dseemorelawyers name=3Dlisttop>
<SCRIPT type=3Dtext/javascript>=0A=
		$(document).ready(function() {=0A=
			=
$.getJSON('http://lawyers.law.cornell.edu/lawyers/environmental/locate?me=
thod=3Djsonp&limit=3D5&prefer_practice=3D1&callback=3D?&parts=3Dquery|bas=
ic|location|practice|badges',=0A=
			function(data){=0A=
				if (data.profiles) {=0A=
					if (data.practice_area_name) {=0A=
						data.practice_area_name =3D data.practice_area_name.replace(/ =
(Law|Lawyer|Lawyers)$/i,'');=0A=
						title =3D data.practice_area_name+ ' Lawyers';=0A=
					} else if (data.search_query) {=0A=
						title =3D '"'+data.search_query+'" Lawyers';=0A=
					} else {=0A=
						title =3D 'Lawyers';=0A=
					}=0A=
					$("#lawyers_search_results").html('<strong =
class=3D"lawyer-profile-head">'+title+' near '+data.city_name+', =
'+data.state_name_full+'</strong>');=0A=
					$("#lawyers_search_results").append('<div =
class=3D"lawyers-get-listed"><a =
href=3D"https://lawyers.justia.com/signup?ref=3Dcornell">Lawyers: get =
listed for free!</a></div>');=0A=
					$("#lawyers_search_results").append('<div class=3D"lawyers" />');=0A=
					var oddeven =3D 'odd';=0A=
						$.each(data.profiles, function(i,item) {=0A=
							=0A=
							if (item.practice_areas) {=0A=
								practiceareas=3Ditem.practice_areas.join(", ");=0A=
							} else {=0A=
								practiceareas=3D'';=0A=
							}=0A=
							//process badge information=0A=
							badgeroot=3D'/images';=0A=
							badge=3D'';=0A=
							if (item.badges){=0A=
								for (i=3D0;i<item.badges.length;i++){=0A=
									if (item.badges[i]=3D=3D"Cornell LII Bronze") {badge=3D'<p =
class=3D"lawyer-entry-badge"><img src=3D"'+badgeroot+'/bitty-bronze.gif" =
/></p>';}=0A=
									if (item.badges[i]=3D=3D"Cornell LII Silver") {badge=3D'<p =
class=3D"lawyer-entry-badge"><img src=3D"'+badgeroot+'/bitty-silver.gif" =
/></p>';}=0A=
									if (item.badges[i]=3D=3D"Cornell LII Gold") {badge=3D'<p =
class=3D"lawyer-entry-badge"><img src=3D"'+badgeroot+'/bitty-gold.gif" =
/></p>';}=0A=
								}=0A=
							}						=0A=
							if (!item.img) { item.img =3D =
'http://lawyers.justia.com/images/no-picture-listings.png'; }=0A=
								$('<div class=3D"lawyer-entry-'+oddeven+'"><a =
href=3D"'+item.url+'" class=3D"lawyer-entry-pic"><img =
src=3D"'+item.img+'" width=3D"33" /></a><p =
class=3D"lawyer-entry-name"><strong><a href=3D"'+item.url+'" =
onclick=3D"javascript:pageTracker._trackPageview(\'/outbound/lawyer_refer=
ral.txt\');" >'+item.full_name+'</a></strong><div =
class=3D"lawyer-entry-pa-sidebar" =
title=3D"'+practiceareas+'">'+practiceareas+'</div><div =
class=3D"lawyer-entry-loc">'+item.city+', =
'+item.state+'</div></p>'+badge+'</div>').appendTo("#lawyers_search_resul=
ts .lawyers");=0A=
							if (oddeven =3D=3D 'odd') {=0A=
								oddeven =3D 'even';=0A=
							} else {=0A=
								oddeven =3D 'odd';=0A=
							}=0A=
						});=0A=
					$('#seemorelawyers').attr('href',data.url);=0A=
					$('#seemorelawyers').html('See More Lawyers');=0A=
				}=0A=
				});=0A=
			});=0A=
		</SCRIPT>

<P><A href=3D"http://lawyers.law.cornell.edu/lawyers/locate/">All=20
lawyers</A></P></DIV></DIV>
<DIV class=3Dprevnext><A title=3D"=A7&#8201;2642. Responsibilities of =
Secretary"=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
42----000-.html">Prev</A>=20
| <A title=3D"=A7&#8201;2644. Relationship to other authority"=20
href=3D"http://www.law.cornell.edu/uscode/html/uscode16/usc_sec_16_000026=
44----000-.html">Next</A>=20
</DIV><!-- the following is Mason-included from footer.htm --><!-- =
dependent on uscode.css --><!-- note that this included file is =
sometimes used by an XSLT processor in preparing the Code and so it's =
necessary to do SGML-ish stuff like closing IMG tags --><BR=20
class=3Dclear>
<DIV><!-- disclaimer -->
<DIV class=3DlargerOfTwo><EM>LII has no control over and does not =
endorse any=20
external Internet site that contains links to or references =
LII.</EM></DIV><!-- end disclaimer -->
<DIV class=3Dparis><A class=3Dparis=20
onclick=3D"javascript:&#10;pageTracker._trackPageview('/outbound/paris.tx=
t');"=20
href=3D"http://www.lawschool.cornell.edu/international/study_abroad/"><IM=
G=20
alt=3D"Study law abroad: Cornell Paris Institute"=20
src=3D"http://www.law.cornell.edu/images/paris/cls-paris.gif" =
border=3D0></A>=20
</DIV></DIV><!-- close tag line --><BR class=3Dclear></DIV><!-- close =
extra div opened in header.htm --><BR=20
class=3Dclear></DIV><!-- close middle (opened in header.htm) -->
<DIV id=3Dfooter>
<DIV class=3DfooterNav>
<DIV><!-- getting ridiculous, i know -->
<UL>
  <LI><A class=3Dnav href=3D"http://www.law.cornell.edu/lii.html">about =
us</A> </LI>
  <LI><A class=3Dnav id=3Dliisitemaplink title=3D"lii sitemap"=20
  href=3D"http://www.law.cornell.edu/tour.html">sitemap</A> </LI>
  <LI><A class=3Dnav href=3D"http://www.law.cornell.edu/help/">help</A> =
</LI>
  <LI><A class=3Dnav =
href=3D"http://www.law.cornell.edu/comments/credits.html">terms=20
  of use</A> </LI>
  <LI><A class=3Dnav href=3D"http://www.facebook.com/Law.LII">friend =
us</A> </LI>
  <LI><A class=3Dnav href=3D"http://twitter.com/Cornell_LII">follow =
us</A> </LI>
  <LI><A href=3D"http://topics.law.cornell.edu/contact">contact us</A> =
</LI></UL><BR=20
class=3Dclear></DIV><!-- close ridiculous div --></DIV><!-- close =
footerNav --></DIV><!-- close footer --><BR=20
class=3Dclear></DIV><!-- close collection (opened in header.htm) --><BR=20
class=3Dclear></DIV><!-- close ours (opened in header.htm) --><BR=20
class=3Dclear></DIV><!-- close container (opened in header.htm) =
--></DIV><!-- close XSLT-related div --><!-- end included footer =
--></BODY></HTML>

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.law.cornell.edu/images/insignia.gif

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
9KIYzahGN8rRjnoH9KMg3UEIAAA7

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.law.cornell.edu/images/unit_name.gif

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
p0ANqlCHStSiGvWoSE2qUpfK1KZuIQQAOw==

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.law.cornell.edu/uscode/images/loc_233x100.gif

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
bU1lIGJB2TaCyk73JalUHy0WC5MJhAAAOw==

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://s7.addthis.com/static/btn/lg-share-en.gif

R0lGODlhfQAQAMQfAF+25dvZ12SsPeexZ5KSkh0g/7DP4/zIBOaymvrLUviSEba1tairpurq6sPG
yBqS0+BKCqDGX/DHnsbVqPz8/PPz8/9pOvb29vr6+u/v7+zs7Ojo6MDAwAAAAP///////yH5BAEA
AB8ALAAAAAB9ABAAAAX/4PdxZGmeaKqubOu+cMyJY+DdeK7vfO//wKBwOAzMODaicslsOolGDs5C
rVKf2OZluy14vb4FY7zgBRCSCpF0s7ot2fiQ2/0WdIu8p3zj5wIQgQMbQ2weVm1VQB2MOB2Ojo03
jJIelI9MdBd2dzgEOGM3AQR+NwgQCgoIERECAkCGiIeKPpiWk5C3uLq6tlp0nDmfHhsEAQEOycNT
qQoTrK6wUrM7V7U7tpjZu71YmsGeHg0cBBfJDsU5FwsGDhLPrQzSFBTWOVT0+fr0lPmXHfwuBWTk
j+C+gwgp/Duxj4BDEhkqaBijz8ADAAACvHsWIGE+EhgwyLISsqTJkx1C2qZUybJlypUtT8qcqfLS
CZkEQnLIkCEAg5MALmZMQDQBTZMktoysoklTBy5PL0SVumVq1KtQm2rdKtWmCU0cGHC4sHNBgAWa
HqgFIIHogQFcuZCoUOGNFbp489KlhLdD371/K/gFLJiv3sOIF5rQK4VDhbJn9ToIYMBAggMHFKRB
nBciT7sWeIoeTbq06dOoU59WXIK0QwIZXjtEHWCAbdIdMuTOzZNEANUaggsfTry48ePIkytfzrw5
cSM1NkifTr269evYs2vfzr27d+/QRcgYT768+fMsRIQAADs=

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.law.cornell.edu/uscode/images/feed.gif

R0lGODlhEAAQAOYAAPSRNut/MvqcOfudOviZOfz18P/58+6FNOh5MeZ/M/aUN/KNNeZ0L+mFNfCJ
NO6FM/748uNuLv7y5tpeKud4L+yKNuF4MeyBMuBqLep9MeN5MuN5MfmdQeiDNN5lLP3x5t5vL99x
MNxhK/3ateF0MOuJNeiFNf738uV0LuJ2MeeBM95wMOV8MuiCNPzChOqHNd1uL+R7MuV9MumINvqs
XvrOp/ivae6RTPSmZ+6aZPnIm+l+OfS9mPieRO+NQe6rif7s2vmlUu6ylfG3l/u5d+B1RfOkZ++d
ZPSsc/zZtfetaf3fwf7x5vKjZuaLYPi/jvabRPKTQvSygPupUvqiRv7mzvfDmfi0deyWY/ehUOiJ
VffUvvWpaPzjzfrDj+qJSfXAmPW/mf3lzfmfRfvm2PnXv+JwNvq+g/uvXuR8R/qzavrTs/eXOPma
OfWSN/GLNeqwh////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAAAAAAALAAAAAAQABAAAAfpgAVwFhsxMgkqHQ0vJRUzcII7KBQZFw8OCwAKbG0CHIMoXzxgTZia
nAIDBCYbFEdxsBA6UKiqbg0xGTdWax+wBkSpBG5vLTKWpjZAsC7DbwcJCQ84EF1ePW0jsFfPASwq
DlywcQZoA0lxED4BCBodmVlnEuQ0br5hCAwpDadtVNpMoiCJc4JBBBIvNi2p4mLMPCkBTsTRgiFE
CTZqYIlx8yROGQRb4vzwAKJCmykG4tR4YyQOGQZD4ggRAWNGqiBKuuXAEiGNkyITVsDh4OwAO4MY
PIiYYAYSHBMNWiRgoSEFiRAgYAgtEAgAOw==

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.law.cornell.edu/images/paris/cls-paris.gif

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
bolb/OIYz7jGNw6AQAAAOw==

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/uscode/html/uscode16/jquery.fancybox-1.2.6.css

DIV#fancy_overlay {
	DISPLAY: none; Z-INDEX: 30; LEFT: 0px; WIDTH: 100%; POSITION: fixed; =
TOP: 0px; HEIGHT: 100%
}
DIV#fancy_loading {
	DISPLAY: none; Z-INDEX: 100; BACKGROUND: none transparent scroll repeat =
0% 0%; OVERFLOW: hidden; WIDTH: 40px; CURSOR: pointer; POSITION: =
absolute; HEIGHT: 40px
}
DIV#fancy_loading DIV {
	BACKGROUND: url(images/fancy_progress.png) no-repeat; LEFT: 0px; WIDTH: =
40px; POSITION: absolute; TOP: 0px; HEIGHT: 480px
}
DIV#fancy_outer {
	PADDING-RIGHT: 20px; DISPLAY: none; PADDING-LEFT: 20px; Z-INDEX: 90; =
BACKGROUND: none transparent scroll repeat 0% 0%; LEFT: 0px; =
PADDING-BOTTOM: 40px; MARGIN: 0px; PADDING-TOP: 20px; POSITION: =
absolute; TOP: 0px
}
DIV#fancy_inner {
	BACKGROUND: #fff; WIDTH: 100%; POSITION: relative; HEIGHT: 100%
}
DIV#fancy_content {
	Z-INDEX: 100; MARGIN: 0px; POSITION: absolute
}
DIV#fancy_div {
	Z-INDEX: 100; BACKGROUND: #000; WIDTH: 100%; COLOR: #fff; HEIGHT: 100%
}
IMG#fancy_img {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; Z-INDEX: 100; LEFT: 0px; BORDER-BOTTOM-WIDTH: =
0px; PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 100%; PADDING-TOP: 0px; =
POSITION: absolute; TOP: 0px; HEIGHT: 100%; BORDER-RIGHT-WIDTH: 0px
}
DIV#fancy_close {
	DISPLAY: none; Z-INDEX: 181; RIGHT: -15px; BACKGROUND: =
url(images/fancy_closebox.png) no-repeat left top; WIDTH: 30px; CURSOR: =
pointer; POSITION: absolute; TOP: -12px; HEIGHT: 30px
}
#fancy_frame {
	DISPLAY: none; WIDTH: 100%; POSITION: relative; HEIGHT: 100%
}
#fancy_ajax {
	OVERFLOW: auto; WIDTH: 100%; HEIGHT: 100%
}
A#fancy_left {
	DISPLAY: none; Z-INDEX: 111; BACKGROUND-IMAGE: =
url(data:image/gif;base64,AAAA); OVERFLOW: hidden; WIDTH: 35%; CURSOR: =
pointer; BOTTOM: 0px; POSITION: absolute; HEIGHT: 100%; outline: none
}
A#fancy_right {
	DISPLAY: none; Z-INDEX: 111; BACKGROUND-IMAGE: =
url(data:image/gif;base64,AAAA); OVERFLOW: hidden; WIDTH: 35%; CURSOR: =
pointer; BOTTOM: 0px; POSITION: absolute; HEIGHT: 100%; outline: none
}
A#fancy_left {
	LEFT: 0px
}
A#fancy_right {
	RIGHT: 0px
}
SPAN.fancy_ico {
	MARGIN-TOP: -15px; DISPLAY: block; Z-INDEX: 112; WIDTH: 30px; CURSOR: =
pointer; POSITION: absolute; TOP: 50%; HEIGHT: 30px
}
SPAN#fancy_left_ico {
	BACKGROUND: url(images/fancy_left.png) no-repeat; LEFT: -9999px
}
SPAN#fancy_right_ico {
	RIGHT: -9999px; BACKGROUND: url(images/fancy_right.png) no-repeat
}
A#fancy_left:hover {
	VISIBILITY: visible; BACKGROUND-COLOR: transparent
}
A#fancy_right:hover {
	VISIBILITY: visible; BACKGROUND-COLOR: transparent
}
A#fancy_left:hover SPAN {
	LEFT: 20px
}
A#fancy_right:hover SPAN {
	RIGHT: 20px
}
#fancy_bigIframe {
	BACKGROUND: none transparent scroll repeat 0% 0%; LEFT: 0px; WIDTH: =
100%; POSITION: absolute; TOP: 0px; HEIGHT: 100%
}
DIV#fancy_bg {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; Z-INDEX: 70; LEFT: 0px; BORDER-BOTTOM-WIDTH: =
0px; PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 100%; PADDING-TOP: 0px; =
POSITION: absolute; TOP: 0px; HEIGHT: 100%; BORDER-RIGHT-WIDTH: 0px
}
DIV.fancy_bg {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; DISPLAY: block; =
PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; Z-INDEX: 70; =
BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: =
0px; POSITION: absolute; BORDER-RIGHT-WIDTH: 0px
}
DIV#fancy_bg_n {
	BACKGROUND: url(images/fancy_shadow_n.png) repeat-x; LEFT: 0px; WIDTH: =
100%; TOP: -20px; HEIGHT: 20px
}
DIV#fancy_bg_ne {
	RIGHT: -20px; BACKGROUND: url(images/fancy_shadow_ne.png) no-repeat; =
WIDTH: 20px; TOP: -20px; HEIGHT: 20px
}
DIV#fancy_bg_e {
	RIGHT: -20px; BACKGROUND: url(images/fancy_shadow_e.png) repeat-y; =
WIDTH: 20px; HEIGHT: 100%
}
DIV#fancy_bg_se {
	RIGHT: -20px; BACKGROUND: url(images/fancy_shadow_se.png) no-repeat; =
WIDTH: 20px; BOTTOM: -20px; HEIGHT: 20px
}
DIV#fancy_bg_s {
	BACKGROUND: url(images/fancy_shadow_s.png) repeat-x; LEFT: 0px; WIDTH: =
100%; BOTTOM: -20px; HEIGHT: 20px
}
DIV#fancy_bg_sw {
	BACKGROUND: url(images/fancy_shadow_sw.png) no-repeat; LEFT: -20px; =
WIDTH: 20px; BOTTOM: -20px; HEIGHT: 20px
}
DIV#fancy_bg_w {
	BACKGROUND: url(images/fancy_shadow_w.png) repeat-y; LEFT: -20px; =
WIDTH: 20px; HEIGHT: 100%
}
DIV#fancy_bg_nw {
	BACKGROUND: url(images/fancy_shadow_nw.png) no-repeat; LEFT: -20px; =
WIDTH: 20px; TOP: -20px; HEIGHT: 20px
}
DIV#fancy_title {
	DISPLAY: none; Z-INDEX: 100; POSITION: absolute
}
DIV#fancy_title DIV {
	PADDING-BOTTOM: 3px; FONT: bold 12px Arial; COLOR: #fff; WHITE-SPACE: =
nowrap
}
DIV#fancy_title TABLE {
	MARGIN: 0px auto
}
DIV#fancy_title TABLE TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 0px
}
TD#fancy_title_left {
	BACKGROUND: url(images/fancy_title_left.png) repeat-x; WIDTH: 15px; =
HEIGHT: 32px
}
TD#fancy_title_main {
	BACKGROUND: url(images/fancy_title_main.png) repeat-x; HEIGHT: 32px
}
TD#fancy_title_right {
	BACKGROUND: url(images/fancy_title_right.png) repeat-x; WIDTH: 15px; =
HEIGHT: 32px
}

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/css/lii10.css

@import url( jquery.fancybox-1.2.6.css );
H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H5 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H6 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 62.5%; BACKGROUND: =
#fff; PADDING-BOTTOM: 0px; MARGIN: 0px; LINE-HEIGHT: 1.5; PADDING-TOP: =
0px; FONT-FAMILY: Verdana, 'Helvetica Neue', Arial, 'Liberation Sans', =
FreeSans, sans-serif
}
HR {
	CLEAR: both; BORDER-RIGHT: #ccc 0px solid; BORDER-TOP: #ccc 1px solid; =
BORDER-LEFT: #ccc 0px solid; BORDER-BOTTOM: #ccc 0px solid; HEIGHT: 0px
}
H1 {
	FONT-WEIGHT: normal; FONT-SIZE: 2.4em
}
H2 {
	FONT-WEIGHT: normal; FONT-SIZE: 2em
}
H3 {
	FONT-WEIGHT: normal; FONT-SIZE: 1.8em
}
H4 {
	FONT-WEIGHT: normal; FONT-SIZE: 1.6em
}
H5 {
	FONT-SIZE: 1.4em
}
H6 {
	FONT-SIZE: 1.2em
}
OL {
	LIST-STYLE-TYPE: decimal
}
UL {
	PADDING-LEFT: 10px; MARGIN-LEFT: 10px; LIST-STYLE-TYPE: disc
}
P {
	FONT-SIZE: 1.3em
}
LI {
	FONT-SIZE: 1.3em
}
DD {
	FONT-SIZE: 1.3em
}
DT {
	FONT-SIZE: 1.3em
}
TD {
	FONT-SIZE: 1.3em
}
BLOCKQUOTE {
	FONT-SIZE: 1.3em
}
#cu-identity {
=09
}
DIV#search-navigation {
	FLOAT: right
}
DIV#search-navigation UL {
	MARGIN-TOP: 45px; LIST-STYLE-TYPE: none
}
DIV#search-navigation LI {
	FLOAT: left
}
DIV#search-navigation A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 3px; COLOR: =
#fff; PADDING-TOP: 3px; TEXT-DECORATION: none
}
DIV#search-navigation A:hover {
	BACKGROUND: #444
}
.skipNav {
	LEFT: 0px; OVERFLOW: hidden; WIDTH: 1px; POSITION: absolute; TOP: =
-500px; HEIGHT: 1px
}
#skip-to-nav A {
	LEFT: 0px; OVERFLOW: hidden; WIDTH: 1px; POSITION: absolute; TOP: =
-500px; HEIGHT: 1px
}
#skip-to-nav A:hover {
	LEFT: 0px; OVERFLOW: hidden; WIDTH: 1px; POSITION: absolute; TOP: =
-500px; HEIGHT: 1px
}
#skip-to-nav A:visited {
	LEFT: 0px; OVERFLOW: hidden; WIDTH: 1px; POSITION: absolute; TOP: =
-500px; HEIGHT: 1px
}
#skip-to-nav A:active {
	WIDTH: auto; POSITION: static; HEIGHT: auto
}
#skip-to-nav A:focus {
	WIDTH: auto; POSITION: static; HEIGHT: auto
}
DIV#container {
	BORDER-RIGHT: #333 1px solid; BORDER-TOP: #333 1px solid; MIN-HEIGHT: =
1200px; BACKGROUND: #68645b; MARGIN: 0px auto; BORDER-LEFT: #333 1px =
solid; BORDER-BOTTOM: #333 1px solid
}
DIV.ours {
	MARGIN: 0px auto; WIDTH: 960px
}
DIV.collection {
	BACKGROUND: #fff; MARGIN: 0px auto; WIDTH: 960px
}
#cu-head {
	BACKGROUND: #68645b; HEIGHT: 75px
}
#cu-identity {
	MARGIN: 0px auto; WIDTH: 960px
}
#cu-logo {
	CLEAR: left; FLOAT: left
}
A > IMG {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
IMG#insig {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; WIDTH: 54px; HEIGHT: 45px; BORDER-RIGHT-WIDTH: 0px
}
IMG#cls {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; WIDTH: 200px; HEIGHT: 45px; BORDER-RIGHT-WIDTH: 0px
}
DIV#cu-logo A:hover IMG#insig {
	BACKGROUND: #555
}
DIV#cu-logo A:hover IMG#cls {
	BACKGROUND: #555
}
#cu-search {
	BACKGROUND: #68645b
}
#cu-search A {
	PADDING-RIGHT: 10px; MARGIN-TOP: 5px; PADDING-LEFT: 10px; FONT-SIZE: =
1em; BACKGROUND: #68645b; FLOAT: right; PADDING-BOTTOM: 10px; COLOR: =
#fff; BORDER-TOP-STYLE: none; MARGIN-RIGHT: 5px; PADDING-TOP: 10px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-DECORATION: =
none; BORDER-BOTTOM-STYLE: none
}
#cu-search A:hover {
	BACKGROUND: #555
}
.header {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px auto; WIDTH: 960px; PADDING-TOP: 0px
}
#lii-head {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #ccc; =
PADDING-BOTTOM: 0px; MARGIN: 0px auto; WIDTH: 960px; PADDING-TOP: 0px
}
DIV.liiround {
=09
}
#lii-logo {
	BACKGROUND: url(images/cr1.gif) no-repeat left top
}
#lii-logo {
	FLOAT: left
}
#lii-logo A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 1.2em; =
PADDING-BOTTOM: 2px; MARGIN: 0px; COLOR: #333; PADDING-TOP: 2px; =
TEXT-DECORATION: none
}
#lii-logo A:hover {
	BACKGROUND: #f0f0f0; TEXT-DECORATION: none! important
}
#lii-nav A.nav:hover {
	BACKGROUND: #f0f0f0; TEXT-DECORATION: none! important
}
#collection-logo A:hover {
	BACKGROUND: #f0f0f0; TEXT-DECORATION: none! important
}
DIV#lii-nav {
	BACKGROUND: url(images/cr1.gif) no-repeat right -100px; FLOAT: right; =
PADDING-TOP: 5px
}
#lii-nav UL {
	BACKGROUND: #ccc
}
#lii-nav LI A {
	BACKGROUND: #ccc
}
#lii-nav UL {
	MARGIN: 0.6em 0px 0px; LIST-STYLE-TYPE: none
}
#lii-nav LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; FLOAT: left; =
PADDING-BOTTOM: 0px; PADDING-TOP: 4px
}
#lii-nav LI A {
	PADDING-RIGHT: 9px; PADDING-LEFT: 9px; PADDING-BOTTOM: 3px; COLOR: =
#333; PADDING-TOP: 3px; TEXT-DECORATION: none
}
#collection-head {
	BACKGROUND: #f0f0f0; MARGIN: 0px auto; WIDTH: 960px
}
#collectionchunk {
	FLOAT: left; PADDING-TOP: 10px
}
H1#collection-logo {
	FONT-SIZE: 1em
}
#collection-logo A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 2em; =
PADDING-BOTTOM: 0px; COLOR: #333; PADDING-TOP: 0px; TEXT-DECORATION: =
none! important
}
#collection-logo A:visited {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 2em; =
PADDING-BOTTOM: 0px; COLOR: #333; PADDING-TOP: 0px; TEXT-DECORATION: =
none! important
}
#collection-logo A:hover {
	BACKGROUND: #ccc
}
#collection-nav {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#collection-nav UL {
	MARGIN: 0px; LIST-STYLE-TYPE: none
}
#collection-nav LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; FLOAT: left; =
PADDING-BOTTOM: 0px; PADDING-TOP: 4px
}
#collection-nav LI A {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 3px; COLOR: =
#333; PADDING-TOP: 3px; TEXT-DECORATION: none
}
#collection-nav A:hover {
	BACKGROUND: #ccc
}
DIV#collection-pic {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
DIV#embed-pic {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
DIV#collection-pic IMG {
	PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: =
-1em 0px; PADDING-TOP: 1px
}
DIV#embed-pic IMG {
	PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: =
-2em 0px 0px; PADDING-TOP: 1px
}
#topNav FORM {
	DISPLAY: inline; VERTICAL-ALIGN: middle
}
#topNav INPUT {
	VERTICAL-ALIGN: middle
}
#topNav INPUT.txtbox {
	MARGIN: 2px
}
#topNav INPUT.btn {
	MARGIN: 2px; COLOR: #333
}
DIV#middle {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; MIN-HEIGHT: 1000px; =
BACKGROUND: #fff; PADDING-BOTTOM: 0px; MARGIN: 0px auto; WIDTH: 960px; =
PADDING-TOP: 0px
}
DIV#middle DIV.breathe {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
BR.clear {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; VISIBILITY: hidden; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
HR.clear {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; VISIBILITY: hidden; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
BR.clear {
	FONT-SIZE: 1px; LINE-HEIGHT: 1px
}
HR.clear {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
DIV.statute {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN-LEFT: 180px; WIDTH: 540px; MARGIN-RIGHT: -780px; =
PADDING-TOP: 0px
}
BODY#states DIV#content {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN-LEFT: 180px; WIDTH: 540px; MARGIN-RIGHT: -780px; =
PADDING-TOP: 0px
}
* HTML DIV.statute {
	MARGIN-LEFT: 80px
}
* HTML BODY#states DIV#content {
	MARGIN-LEFT: 80px
}
DIV.annot-left {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; FLOAT: left; =
PADDING-BOTTOM: 0px; MARGIN-LEFT: 0px; WIDTH: 160px; MARGIN-RIGHT: =
-180px; PADDING-TOP: 0px
}
* HTML DIV.annot-left {
	MARGIN-LEFT: -80px
}
DIV.annot-right {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; FLOAT: left; =
PADDING-BOTTOM: 0px; MARGIN-LEFT: 780px; WIDTH: 160px; MARGIN-RIGHT: =
-960px; PADDING-TOP: 0px
}
* HTML DIV.annot-right {
	CLEAR: right; MARGIN-LEFT: 380px; MARGIN-RIGHT: 0px
}
DIV.block {
	BORDER-RIGHT: #ccc 2px solid; PADDING-RIGHT: 8px; BORDER-TOP: #ccc 2px =
solid; PADDING-LEFT: 8px; PADDING-BOTTOM: 8px; MARGIN: 5px 0px; =
BORDER-LEFT: #ccc 2px solid; PADDING-TOP: 8px; BORDER-BOTTOM: #ccc 2px =
solid
}
DIV#block_sponsor_top {
=09
}
DIV#block_sponsor_mid {
=09
}
DIV#block_sponsor_bottom {
=09
}
DIV.sponsormsg {
	BACKGROUND: #fff
}
P.sponsor-fullurl {
=09
}
P.sponsor-fullurl A {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 1.2em; COLOR: #b31b3b; =
TEXT-DECORATION: underline
}
A SPAN.sponsor-fullurl {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 1.2em; COLOR: #b31b3b; =
TEXT-DECORATION: underline
}
A SPAN.sponsor-header {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 1.2em; COLOR: #b31b3b; =
TEXT-DECORATION: underline
}
DIV#block_justanswer A {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 1.2em; COLOR: #b31b3b; =
TEXT-DECORATION: underline
}
P.sponsor-tagline1 {
	DISPLAY: block; FONT-SIZE: 1.1em; COLOR: #000
}
P.sponsor-tagline2 {
	DISPLAY: block; FONT-SIZE: 1.1em; COLOR: #000
}
P.sponsor-tagline-2 {
	DISPLAY: block; FONT-SIZE: 1.1em; COLOR: #000
}
A SPAN.sponsor-tagline1 {
	DISPLAY: block; FONT-SIZE: 1.1em; COLOR: #000
}
A SPAN.sponsor-tagline2 {
	DISPLAY: block; FONT-SIZE: 1.1em; COLOR: #000
}
A SPAN.sponsor-tagline-2 {
	DISPLAY: block; FONT-SIZE: 1.1em; COLOR: #000
}
P.sponsor-displayurl {
	MARGIN-TOP: 2px; DISPLAY: block; FONT-SIZE: 0.9em
}
A SPAN.sponsor-displayurl {
	MARGIN-TOP: 2px; DISPLAY: block; FONT-SIZE: 0.9em
}
DIV#block_justanswer {
=09
}
DIV#block_justanswer A SPAN {
	TEXT-DECORATION: none! important
}
DIV#block_adsense {
=09
}
DIV#block_adsense P.whine {
	FONT-SIZE: 1em
}
DIV#block_search {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV#block_notes {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV#block_rss {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV#block_update {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV#block_plltable {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV#block_pdf {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV.blockgroup {
	BORDER-RIGHT: #ccc 2px solid; PADDING-RIGHT: 8px; BORDER-TOP: #ccc 2px =
solid; PADDING-LEFT: 8px; PADDING-BOTTOM: 8px; MARGIN: 5px 0px; =
BORDER-LEFT: #ccc 2px solid; PADDING-TOP: 8px; BORDER-BOTTOM: #ccc 2px =
solid
}
DIV#block_addthis {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
BORDER-TOP-STYLE: none; PADDING-TOP: 10px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV#block_search {
=09
}
DIV#block_search INPUT {
	MARGIN-BOTTOM: 5px
}
DIV#block_search INPUT[name=3D'query'] {
	WIDTH: 135px
}
DIV#block_notes {
=09
}
DIV#block_rss {
=09
}
DIV#block_update {
=09
}
DIV#block_plltable {
=09
}
DIV#block_pdf {
=09
}
DIV#justia_find_lawyers {
=09
}
DIV#justia_find_lawyers P {
	FONT-SIZE: 1em
}
.lawyer-entry-pic IMG {
	CLEAR: left; PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 0px; =
FLOAT: left; PADDING-BOTTOM: 5px; PADDING-TOP: 0px
}
DIV#lawyers_search_results {
	CLEAR: both
}
DIV#lawyers_search_results STRONG.lawyer-profile-head {
	CLEAR: both; DISPLAY: block; FONT-WEIGHT: bold; LINE-HEIGHT: 1.1
}
DIV#lawyers_search_results DIV.lawyers-get-listed {
	CLEAR: both; DISPLAY: block; FONT-SIZE: 0.72em; MARGIN-BOTTOM: 5px
}
DIV#lawyers_search_results DIV.lawyers-get-listed {
	CLEAR: both; DISPLAY: block; FONT-SIZE: 0.72em; MARGIN-BOTTOM: 5px
}
DIV#lawyers_search_results DIV.lawyers {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
DIV#lawyers_search_results DIV.lawyers DIV.lawyer-entry-odd:first-child =
{
	BORDER-TOP: #ccc 2px solid
}
DIV#lawyers_search_results DIV.lawyers DIV.lawyer-entry-odd {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
10px; MARGIN: 0px; PADDING-TOP: 10px; BORDER-BOTTOM: #ccc 2px solid
}
DIV#lawyers_search_results DIV.lawyers DIV.lawyer-entry-even {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
#f0f0f0; PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BORDER-BOTTOM: #ccc =
2px solid
}
DIV.lawyer-entry-pic {
=09
}
P.lawyer-entry-name {
	FONT-SIZE: 1em; MARGIN: 0px; COLOR: #000066; LINE-HEIGHT: 1.2
}
DIV.lawyer-entry-pa {
	COLOR: #000
}
DIV.lawyer-entry-pa-sidebar {
	OVERFLOW-Y: hidden; OVERFLOW-X: hidden; COLOR: #000; WHITE-SPACE: =
nowrap; TEXT-OVERFLOW: ellipsis
}
* HTML DIV.lawyer-entry-pa-sidebar {
	WIDTH: 120px! important
}
DIV.lawyer-entry-loc {
	COLOR: #000066
}
P.lawyer-entry-badge {
	CLEAR: both; MARGIN-TOP: 0px; MARGIN-BOTTOM: 1px
}
P.lawyers-see-all {
	CLEAR: both
}
#footer {
	CLEAR: both; BACKGROUND: #ccc; MARGIN: 0px auto; WIDTH: 960px; =
TEXT-ALIGN: center
}
#footer .footerNav {
=09
}
#footer .footerNav DIV {
=09
}
#footer UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; MARGIN: =
0px auto 10px; WIDTH: 600px; PADDING-TOP: 10px
}
#footer LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px 0.5em; COLOR: #333; PADDING-TOP: 0px; LIST-STYLE-TYPE: =
none
}
#footer LI A {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
COLOR: #333; PADDING-TOP: 0.5em; TEXT-DECORATION: none
}
#footer LI A:hover {
	BACKGROUND: #f0f0f0; TEXT-DECORATION: none
}
BODY.homepg A#homelink {
	FONT-WEIGHT: bold
}
BODY.hitlist A#searchlink {
	FONT-WEIGHT: bold
}
BODY#search A#searchlink {
	FONT-WEIGHT: bold
}
BODY.tellmore A#telllink {
	FONT-WEIGHT: bold
}
BODY#tellmore A#telllink {
	FONT-WEIGHT: bold
}
BODY.donors A#donorlink {
	FONT-WEIGHT: bold
}
BODY.faq A#faqlink {
	FONT-WEIGHT: bold
}
BODY#faq A#faqlink {
	FONT-WEIGHT: bold
}
BODY#faq A#aboutlink {
	FONT-WEIGHT: bold
}
BODY#about A#aboutlink {
	FONT-WEIGHT: bold
}
BODY#subscribe A#subscribelink {
	FONT-WEIGHT: bold
}
BODY#main A#homelink {
	FONT-WEIGHT: bold
}
BODY#liihome DIV#lii-nav A#liihomelink {
	FONT-WEIGHT: bold
}
BODY#liisearch DIV#lii-nav #liisearchlink {
	FONT-WEIGHT: bold
}
BODY#liisitemap DIV#lii-nav A#liisitemaplink {
	FONT-WEIGHT: bold
}
BODY#liidonate DIV#lii-nav A#liidonatelink {
	FONT-WEIGHT: bold
}
LI A#liidonatelink {
	MARGIN-RIGHT: 1.5em
}
LI A#liidonate {
	MARGIN-RIGHT: 1.5em
}
LI A#liilawyerlink {
=09
}
LI A#liifootlawyerlink {
=09
}
P.contentIntro {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 1em; PADDING-BOTTOM: =
2px; PADDING-TOP: 2px
}
DIV.contentIntro {
	FONT-SIZE: 1em; MARGIN: 2px 5px
}
.indented {
	MARGIN-LEFT: 50px; MARGIN-RIGHT: 50px
}
.toc {
	MARGIN-LEFT: 50px; MARGIN-RIGHT: 50px
}
.wasBlockquote {
	MARGIN-LEFT: 50px; MARGIN-RIGHT: 50px
}
.allcaps {
	TEXT-TRANSFORM: uppercase
}
.smallcaps {
	FONT-VARIANT: small-caps
}
.extraSpot {
	FONT-WEIGHT: bold; FONT-SIZE: 2em; COLOR: yellow
}
.emergency {
	COLOR: red
}
.loud {
	COLOR: red
}
A.defn_embed {
	TEXT-DECORATION: none
}
A.defn_embed:hover:link {
	TEXT-DECORATION: underline
}
SPAN.speling {
	COLOR: red; FONT-STYLE: italic
}
.speling {
	COLOR: red; FONT-STYLE: italic
}
SPAN.highlight {
	FONT-WEIGHT: bold; COLOR: red
}
BODY.hitlist H1.hitlist {
	FONT-SIZE: 1.8em; MARGIN-LEFT: 40px; MARGIN-RIGHT: 40px
}
BODY.hitlist H2 {
	PADDING-RIGHT: 10px; BORDER-TOP: #ccc 2px solid; PADDING-LEFT: 10px; =
FONT-SIZE: 1.7em; MARGIN-LEFT: 40px; MARGIN-RIGHT: 40px; PADDING-TOP: =
1ex
}
BODY.hitlist H3 {
	PADDING-RIGHT: 10px; BORDER-TOP: #ccc 1px solid; PADDING-LEFT: 10px; =
MARGIN-LEFT: 50px; MARGIN-RIGHT: 50px; PADDING-TOP: 1ex
}
BODY.hitlist H4 {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; =
MARGIN-LEFT: 60px; COLOR: #000000; MARGIN-RIGHT: 60px
}
BODY.hitlist DIV#middle DIV.swsearchbox {
	FONT-SIZE: 1.2em; MARGIN-LEFT: 60px; MARGIN-RIGHT: 60px
}
DIV.swsmallhelp {
	FONT-SIZE: 0.7em; MARGIN-LEFT: 70px; FONT-STYLE: italic
}
BODY.hitlist DIV.swsearchbox DIV.swsmallhelp {
	MARGIN-LEFT: 20px
}
H4.swsubtitle {
	FONT-SIZE: 1em
}
BODY.hitlist P {
	MARGIN-LEFT: 50px
}
BODY.hitlist P.featured {
	FONT-WEIGHT: bold; MARGIN-LEFT: 80px
}
BODY.hitlist UL.navline {
	COLOR: #ccc
}
UL.navline LI {
	PADDING-RIGHT: 1.5em; FLOAT: left; COLOR: #999
}
DL.swhitlist {
	MARGIN-LEFT: 80px; MARGIN-RIGHT: 80px
}
TABLE.swhitlist {
	MARGIN-LEFT: 80px; MARGIN-RIGHT: 80px
}
TR.swhit {
	VERTICAL-ALIGN: top
}
.swtitle {
	VERTICAL-ALIGN: top
}
TD.swrank IMG {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN: 0px; VERTICAL-ALIGN: text-top; PADDING-TOP: 0.5em
}
TD.swtitle {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN: 0px; VERTICAL-ALIGN: top; PADDING-TOP: 0.5em
}
.swsearchparrot {
	FONT-SIZE: 1.1em
}
DL.swhitlist {
	FONT-SIZE: 1em
}
DL.swhitlist DT.popnames {
	MARGIN-TOP: 1em
}
DL.swhitlist DD.popnames {
=09
}
UL.HITLIST {
	MARGIN-LEFT: 100px
}
DIV.HITLIST UL {
	MARGIN-LEFT: 100px
}
LI.HITLIST {
	MARGIN-LEFT: 0px
}
DIV.HITLIST LI {
	MARGIN-LEFT: 0px
}
DIV.HITLIST P {
	MARGIN-LEFT: 0px
}
DIV.oneColumn {
	CLEAR: both; MARGIN: 1ex auto
}
DIV.twoColumns {
	CLEAR: both; MARGIN: 1ex auto
}
DIV.threeColumns {
	CLEAR: both; MARGIN: 1ex auto
}
BODY.text UL.navline LI:first-child {
	LIST-STYLE-TYPE: none
}
BODY.text UL.navline + TABLE {
	CLEAR: both; MARGIN-TOP: 2em
}
BODY.text TABLE {
	MARGIN: 0px auto; WIDTH: 850px
}
BODY.text TABLE TD {
=09
}
BODY.text TH[scope=3D'col'] {
	BORDER-BOTTOM: #ccc 1px solid
}
BODY#faq DIV#middle UL {
	PADDING-LEFT: 50px; MARGIN-LEFT: 60px
}
BODY.linklist DIV.linklist {
	CLEAR: both; MARGIN-LEFT: auto; MARGIN-RIGHT: auto
}
BODY.text DIV.linklist {
	CLEAR: both; MARGIN-LEFT: auto; MARGIN-RIGHT: auto
}
BODY.linklist DIV.text {
=09
}
DIV.oneOfTwo {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #fff; FLOAT: left; =
PADDING-BOTTOM: 0px; WIDTH: 460px; PADDING-TOP: 0px
}
UL.oneOfTwo {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #fff; FLOAT: left; =
PADDING-BOTTOM: 0px; WIDTH: 460px; PADDING-TOP: 0px
}
DIV.oneOfThree {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #fff; FLOAT: left; =
PADDING-BOTTOM: 0px; WIDTH: 290px; PADDING-TOP: 0px
}
UL.oneOfThree {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #fff; FLOAT: left; =
PADDING-BOTTOM: 0px; WIDTH: 290px; PADDING-TOP: 0px
}
.oneOfThree LI {
	LIST-STYLE-TYPE: none
}
.oneOfTwo LI {
	LIST-STYLE-TYPE: none
}
DIV#middle DIV.disclaimer {
	MARGIN: 0px auto; WIDTH: 100%
}
DIV.largerOfTwo {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; WIDTH: 680px; MARGIN-RIGHT: 10px; PADDING-TOP: 0px
}
DIV#content {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; WIDTH: 680px; MARGIN-RIGHT: 10px; PADDING-TOP: 0px
}
.smallerOfTwo {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #f0f0f0; FLOAT: =
left; PADDING-BOTTOM: 0px; MARGIN-LEFT: 10px; WIDTH: 180px; PADDING-TOP: =
0px
}
#menu {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #f0f0f0; FLOAT: =
left; PADDING-BOTTOM: 0px; MARGIN-LEFT: 10px; WIDTH: 180px; PADDING-TOP: =
0px
}
DIV.smallerOfTwo UL {
	MARGIN-LEFT: 20px
}
DIV#menu UL {
	MARGIN-LEFT: 20px
}
DIV.paris {
	FLOAT: right
}
DIV.paris {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.paris A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.paris IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.paris A IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.smallOneOfThree {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; WIDTH: 200px; PADDING-TOP: 0px
}
DIV#middle DIV.smallOneOfThree {
	BACKGROUND: #f0f0f0
}
.largeOneOfThree {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
0px; WIDTH: 470px; PADDING-TOP: 0px
}
SPAN.liitmplogo {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 36px; PADDING-BOTTOM: =
0px; COLOR: #b31b1b; PADDING-TOP: 0px; FONT-FAMILY: Georgia, 'Times New =
Roman', serif
}
DIV#home-video {
	BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; BACKGROUND: =
#fff; BORDER-LEFT: #ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid
}
DIV#donationrequest {
	PADDING-LEFT: 100px
}
DIV#frtxt P {
	DISPLAY: block; FONT-WEIGHT: bold; MARGIN: 0px; TEXT-ALIGN: center
}
A#frtxt {
	DISPLAY: block; FONT-WEIGHT: bold; MARGIN: 0px; TEXT-ALIGN: center
}
DIV#frtxt P A {
	COLOR: #000066; TEXT-DECORATION: underline! important
}
DIV#frchunk A#frtxt {
	COLOR: #000; TEXT-DECORATION: none! important
}
DIV#frchunk A#frtxt SPAN#plsgive {
	COLOR: #000066; TEXT-DECORATION: underline! important
}
UNKNOWN {
=09
}

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/uscode/css/uscode.css

@import url( /css/lii10.css );
DIV.statute DIV.statute {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 100%; PADDING-TOP: 0px
}
* HTML DIV.annot-right {
=09
}
DIV.prevnext {
	CLEAR: both; FLOAT: right; MARGIN-RIGHT: 180px
}
* HTML DIV.prevnext {
=09
}
DIV.statute DIV.prevnext {
	CLEAR: right; FLOAT: right; MARGIN-RIGHT: 0px
}
DIV.statute DIV.dates {
	CLEAR: right; FLOAT: right; MARGIN-RIGHT: 0px
}
LI.tocitem {
	FONT-SIZE: 1.1em
}
DIV.footer {
	CLEAR: both
}
BODY#indexpage A#indexlink {
	FONT-WEIGHT: bold
}
.swforcesect A {
	FONT-WEIGHT: bold; FONT-SIZE: larger; PADDING-BOTTOM: 1em
}
H1 {
	FONT-WEIGHT: normal; COLOR: #222255
}
H2 {
	FONT-WEIGHT: normal; COLOR: #222255
}
H3 {
	FONT-WEIGHT: normal; COLOR: #222255
}
H4 {
	FONT-WEIGHT: normal; COLOR: #222255
}
H5 {
	FONT-WEIGHT: normal; COLOR: #222255
}
H6 {
	FONT-WEIGHT: normal; COLOR: #222255
}
H1.popnamesbar {
	MARGIN-LEFT: 10%; MARGIN-RIGHT: 10%
}
DIV.popnamesbar {
	MARGIN-LEFT: 10%; MARGIN-RIGHT: 10%
}
H2.catchline {
	FONT-SIZE: 1.6em! important
}
HR {
	COLOR: #083194; HEIGHT: 3px; BACKGROUND-COLOR: #ffffff
}
HR.footsep {
	HEIGHT: 1px
}
A:link {
	TEXT-DECORATION: none
}
A:visited {
	TEXT-DECORATION: none
}
LI.tocitem A {
	TEXT-DECORATION: none
}
A:link {
	COLOR: navy
}
A:visited {
	COLOR: maroon
}
LI.tocitem {
	MARGIN-TOP: 0.75em
}
DIV.statute {
	FONT-SIZE: 1.1em
}
P.catchline {
	FONT-WEIGHT: bold; FONT-SIZE: 1.2em
}
DIV.leader {
	FONT-WEIGHT: bold
}
P.leader {
	FONT-WEIGHT: bold
}
B.labelleader {
	FONT-WEIGHT: bold
}
SPAN.backtrail {
	FONT-WEIGHT: bold; FONT-SIZE: 1em
}
SPAN.prevnext {
	FONT-SIZE: 1em; TEXT-ALIGN: right
}
SPAN.special-word {
	COLOR: red
}
TABLE.header {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
MARGIN-LEFT: auto; WIDTH: 100%; PADDING-TOP: 10px
}
TH {
	FONT-WEIGHT: bold; FONT-SIZE: 1.1em; TEXT-ALIGN: left
}
TD {
	VERTICAL-ALIGN: top
}
TD.backtrail {
	FONT-WEIGHT: bold; FONT-SIZE: 1em; PADDING-TOP: 10px
}
TD.prevnext {
	FONT-SIZE: 1em; TEXT-ALIGN: right
}
TD.dates {
	FONT-SIZE: 0.95em; FONT-STYLE: italic; TEXT-ALIGN: right
}
TABLE.statute {
	CLEAR: both; PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: =
10px; MARGIN-LEFT: auto; WIDTH: 100%; PADDING-TOP: 10px
}
TABLE.statutetoc {
	CLEAR: both; PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: =
2px; WIDTH: 100%; PADDING-TOP: 2px
}
TABLE.classification {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-SIZE: 1em; PADDING-BOTTOM: =
4px; WIDTH: 90%; COLOR: #000000; PADDING-TOP: 4px; BACKGROUND-COLOR: =
#eeeeee
}
TR.classifilight1 {
	BACKGROUND-COLOR: #f5f5f5
}
TR.classifilight0 {
	BACKGROUND-COLOR: #eeeeee
}
TH.cltop {
	FONT-WEIGHT: bold; FONT-SIZE: 1.1em; TEXT-ALIGN: center
}
TH.clbot {
	FONT-WEIGHT: bold; FONT-SIZE: 1.1em; BORDER-BOTTOM: black 1px dashed; =
TEXT-ALIGN: center
}
TD.cllft {
	PADDING-RIGHT: 0em; PADDING-LEFT: 2em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em; TEXT-ALIGN: left
}
TD.clcen {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em; TEXT-ALIGN: center
}
TD.clrt {
	PADDING-RIGHT: 2em; PADDING-LEFT: 0em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em; TEXT-ALIGN: right
}
TD.misc {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em
}
TD.section {
	PADDING-RIGHT: 2em; PADDING-LEFT: 2em; PADDING-BOTTOM: 1em; =
PADDING-TOP: 1em
}
TD.supsec {
	PADDING-RIGHT: 2em; PADDING-LEFT: 2em; PADDING-BOTTOM: 2em; =
PADDING-TOP: 2em
}
TD.statlinks {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; BORDER-LEFT: black 2px solid; PADDING-TOP: 10px; =
TEXT-ALIGN: left
}
.pagetitle {
	TEXT-ALIGN: center
}
DIV.outdent-1 {
	MARGIN-LEFT: -5%
}
DIV.outdent-2 {
	MARGIN-LEFT: -10%
}
DIV.outdent-3 {
	MARGIN-LEFT: -12%
}
DIV.outdent-4 {
	MARGIN-LEFT: -16%
}
DIV.outdent-5 {
	MARGIN-LEFT: -20%
}
DIV.outdent-6 {
	MARGIN-LEFT: -24%
}
DIV.outdent-7 {
	MARGIN-LEFT: -28%
}
DIV.outdent-8 {
	MARGIN-LEFT: -32%
}
DIV.outdent-9 {
	MARGIN-LEFT: -36%
}
DIV.psection-1 {
	PADDING-RIGHT: 5pt; PADDING-LEFT: 5pt; PADDING-BOTTOM: 5pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 5pt
}
SPAN.ptext-1 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-2 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-2 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-3 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-3 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-4 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-4 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-5 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 3%; PADDING-TOP: 4pt
}
SPAN.ptext-5 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-6 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-6 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-7 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-7 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-8 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-8 {
	MARGIN-LEFT: 0.5em
}
DIV.psection-9 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
MARGIN-LEFT: 4%; PADDING-TOP: 4pt
}
SPAN.ptext-9 {
	MARGIN-LEFT: 0.5em
}
DIV.ptext-11 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0.5em
}
DIV.ptext-12 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0.5em
}
DIV.ptext-13 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0.5em
}
DIV.ptext-21 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN-LEFT: 1em; PADDING-TOP: 0.5em
}
DIV.ptext-22 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN-LEFT: 2em; PADDING-TOP: 0.5em
}
DIV.ptext-23 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN-LEFT: 3em; PADDING-TOP: 0.5em
}
DIV.ptext-24 {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN-LEFT: 4em; PADDING-TOP: 0.5em
}
DIV.leading-01 {
	PADDING-RIGHT: 1pt; PADDING-LEFT: 1pt; PADDING-BOTTOM: 1pt; =
PADDING-TOP: 1pt
}
DIV.leading-02 {
	PADDING-RIGHT: 2pt; PADDING-LEFT: 2pt; PADDING-BOTTOM: 2pt; =
PADDING-TOP: 2pt
}
DIV.leading-03 {
	PADDING-RIGHT: 3pt; PADDING-LEFT: 3pt; PADDING-BOTTOM: 3pt; =
PADDING-TOP: 3pt
}
DIV.leading-04 {
	PADDING-RIGHT: 4pt; PADDING-LEFT: 4pt; PADDING-BOTTOM: 4pt; =
PADDING-TOP: 4pt
}
DIV.leading-05 {
	PADDING-RIGHT: 5pt; PADDING-LEFT: 5pt; PADDING-BOTTOM: 5pt; =
PADDING-TOP: 5pt
}
DIV.leading-06 {
	PADDING-RIGHT: 6pt; PADDING-LEFT: 6pt; PADDING-BOTTOM: 6pt; =
PADDING-TOP: 6pt
}
DIV.leading-08 {
	PADDING-RIGHT: 8pt; PADDING-LEFT: 8pt; PADDING-BOTTOM: 8pt; =
PADDING-TOP: 8pt
}
DIV.leading-10 {
	PADDING-RIGHT: 10pt; PADDING-LEFT: 10pt; PADDING-BOTTOM: 10pt; =
PADDING-TOP: 10pt
}
DIV.leading-11 {
	PADDING-RIGHT: 11pt; PADDING-LEFT: 11pt; PADDING-BOTTOM: 11pt; =
PADDING-TOP: 11pt
}
DIV.leading-12 {
	PADDING-RIGHT: 12pt; PADDING-LEFT: 12pt; PADDING-BOTTOM: 12pt; =
PADDING-TOP: 12pt
}
DIV.leading-14 {
	PADDING-RIGHT: 1.2em; PADDING-LEFT: 1.2em; PADDING-BOTTOM: 1.2em; =
PADDING-TOP: 1.2em
}
DIV.leading-15 {
	PADDING-RIGHT: 15pt; PADDING-LEFT: 15pt; PADDING-BOTTOM: 15pt; =
PADDING-TOP: 15pt
}
DIV.leading-16 {
	PADDING-RIGHT: 16pt; PADDING-LEFT: 16pt; PADDING-BOTTOM: 16pt; =
PADDING-TOP: 16pt
}
DIV.leading-18 {
	PADDING-RIGHT: 18pt; PADDING-LEFT: 18pt; PADDING-BOTTOM: 18pt; =
PADDING-TOP: 18pt
}
DIV.leading-24 {
	PADDING-RIGHT: 24pt; PADDING-LEFT: 24pt; PADDING-BOTTOM: 24pt; =
PADDING-TOP: 24pt
}
DIV.leading-29 {
	PADDING-RIGHT: 29pt; PADDING-LEFT: 29pt; PADDING-BOTTOM: 29pt; =
PADDING-TOP: 29pt
}
SPAN.srchlead {
	FONT-STYLE: italic
}
SPAN.greyout {
	COLOR: #999999
}
SPAN.enum {
	FONT-WEIGHT: bold
}
SPAN.enumbell {
	FONT-WEIGHT: bold
}
SPAN.enumlstr {
	FONT-WEIGHT: bold; COLOR: #000066
}

@media Print   =20
{
DIV.annot-right {
	DISPLAY: none! important
}
DIV.prevnext {
	DISPLAY: none! important
}
DIV.dates {
	DISPLAY: none! important
}
DIV.localnav {
	BORDER-TOP-WIDTH: 0px! important; BORDER-LEFT-WIDTH: 0px! important; =
BACKGROUND: #fff; FLOAT: none! important; BORDER-BOTTOM-WIDTH: 0px! =
important; MARGIN: auto; WIDTH: auto! important; COLOR: #000; HEIGHT: =
auto! important; BORDER-RIGHT-WIDTH: 0px! important
}
DIV.backtrail {
	BORDER-TOP-WIDTH: 0px! important; BORDER-LEFT-WIDTH: 0px! important; =
BACKGROUND: #fff; FLOAT: none! important; BORDER-BOTTOM-WIDTH: 0px! =
important; MARGIN: auto; WIDTH: auto! important; COLOR: #000; HEIGHT: =
auto! important; BORDER-RIGHT-WIDTH: 0px! important
}
H2.catchline {
	BORDER-TOP-WIDTH: 0px! important; BORDER-LEFT-WIDTH: 0px! important; =
BACKGROUND: #fff; FLOAT: none! important; BORDER-BOTTOM-WIDTH: 0px! =
important; MARGIN: auto; WIDTH: auto! important; COLOR: #000; HEIGHT: =
auto! important; BORDER-RIGHT-WIDTH: 0px! important
}
DIV.statute {
	BORDER-TOP-WIDTH: 0px! important; BORDER-LEFT-WIDTH: 0px! important; =
BACKGROUND: #fff; FLOAT: none! important; BORDER-BOTTOM-WIDTH: 0px! =
important; MARGIN: auto; WIDTH: auto! important; COLOR: #000; HEIGHT: =
auto! important; BORDER-RIGHT-WIDTH: 0px! important
}
H2.catchline {
	DISPLAY: block! important
}
DIV.statute {
	DISPLAY: block! important
}

}

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/css/fundraiser-css.css

DIV#lii-logo A {
	FONT-SIZE: 1em
}
#fundraiser {
	DISPLAY: none; Z-INDEX: 99; BACKGROUND: white; WIDTH: 400px; POSITION: =
absolute
}
#fundraiser-screen {
	DISPLAY: none; Z-INDEX: 98; FILTER: alpha(opacity=3D50); LEFT: 0px; =
POSITION: fixed; TOP: 0px; BACKGROUND-COLOR: black; opacity: 0.5
}
#close-button:hover {
	CURSOR: pointer; COLOR: #b31b1b
}
#fundraiser-close-button:hover {
	CURSOR: pointer; COLOR: #b31b1b
}
#fundraiser-head {
	BACKGROUND: #cccccc 0px 0px
}
#fundraiser-head #lii-right {
	PADDING-RIGHT: 10px; BACKGROUND-POSITION: right -100px; PADDING-LEFT: =
0px; FLOAT: right; BACKGROUND-IMAGE: =
url(http://www.law.cornell.edu/images/cr1.gif); PADDING-BOTTOM: 0px; =
PADDING-TOP: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 20px; =
BACKGROUND-COLOR: transparent
}
#fundraiser-content {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 5px
}
#fundraiser-content P.message {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#fundraiser-content P.cta {
	FONT-SIZE: 150%; TEXT-ALIGN: center
}
#fundraiser-footer {
	BACKGROUND: #cccccc 0px 0px; TEXT-ALIGN: center
}
#fundraiser-footer #fundraiser-buttons {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px; TEXT-ALIGN: center
}
#fundraiser-footer #fundraiser-buttons BUTTON {
	CURSOR: pointer; COLOR: white; BACKGROUND-COLOR: #333
}
#fundraiser-footer #fundraiser-buttons BUTTON:hover {
	BACKGROUND-COLOR: black
}
#fundraiser-footer #fundraiser-buttons #do-donation {
	FONT-SIZE: 200%; BACKGROUND-COLOR: #b31b1b
}
#fundraiser-footer DIV.corners {
	MARGIN-TOP: -20px; WIDTH: 20px; BACKGROUND-REPEAT: no-repeat; HEIGHT: =
20px; BACKGROUND-COLOR: transparent
}
#fundraiser-footer #cr_btm_left {
	BACKGROUND-POSITION: left top; FLOAT: left; BACKGROUND-IMAGE: =
url(http://www.law.cornell.edu/images/cr_btm.gif)
}
#fundraiser-footer #cr_btm_right {
	BACKGROUND-POSITION: right top; FLOAT: right; BACKGROUND-IMAGE: =
url(http://www.law.cornell.edu/images/cr_btm.gif)
}

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://partner.googleadservices.com/gampad/google_service.js

(function(){var =
e=3Dnull,g=3Dfalse,h=3Dwindow,i=3Ddocument,j=3D"push",l=3D"GA_jstiming",n=
=3D"indexOf",o=3D"length",p=3D"prototype",q=3D"call",r=3D"join";function =
s(a){this.t=3D{};this.tick=3Dfunction(b,c,d){d=3Dd?d:(new =
Date).getTime();this.t[b]=3D[d,c]};this.tick("start",e,a)}var t=3Dnew =
s;h.GA_jstiming=3D{Timer:s,load:t};if(h[l]){h[l].d=3D{};h[l].i=3D1;var =
u=3Dfunction(a,b,c){var =
d=3Da.t[b],f=3Da.t.start;if(d&&(f||c)){d=3Da.t[b][0];f=3Dc!=3Dundefined?c=
:f[0];return d-f}};h[l].report=3Dfunction(a,b,c){var =
d=3D"";if(a.h)d+=3D"&"+a.h;var f=3Da.t,k=3Df.start,O=3D[],D=3D[];for(var =
m in f)if(m!=3D"start")if(m[n]("_")!=3D0){var =
E=3Df[m][1];if(E)f[E]&&D[j](m+"."+u(a,m,f[E][0]));else =
k&&O[j](m+"."+u(a,m))}delete f.start;if(b)for(var P in =
b)d+=3D"&"+P+"=3D"+b[P];a=3D[c?c:"http://csi.gstatic.com/csi","?v=3D3","&=
s=3D"+(h[l].sn||"gam")+"&action=3D",a.name,D[o]?"&it=3D"+D[r](","):=0A=
"","",d,"&rt=3D",O[r](",")][r]("");b=3Dnew Image;var =
Q=3Dh[l].i++;h[l].d[Q]=3Db;b.onload=3Db.onerror=3Dfunction(){delete =
h[l].d[Q]};b.src=3Da;b=3De;return a}};var =
v=3Dthis,w=3Dfunction(a,b,c){a=3Da.split(".");c=3Dc||v;!(a[0]in =
c)&&c.execScript&&c.execScript("var "+a[0]);for(var =
d;a[o]&&(d=3Da.shift());)if(!a[o]&&b!=3D=3Dundefined)c[d]=3Db;else =
c=3Dc[d]?c[d]:(c[d]=3D{})},x=3Dfunction(a,b){function =
c(){}c.prototype=3Db[p];a.k=3Db[p];a.prototype=3Dnew c};var =
aa=3D/^([\w-]+\.)*([\w-]{2,})(\:[0-9]+)?$/,y=3Dfunction(a,b){if(!a)return=
 b;var c=3Da.match(aa);return c?c[0]:b};var =
ba,z=3DparseFloat("0.05"),ca=3Dba=3DisNaN(z)||z>1||z<0?0:z;var A;var =
da=3D"false";A=3Dda=3D=3D"true"?true:g;var ea=3DA;var =
B=3Dfunction(){return y("","pubads.g.doubleclick.net")};var =
C,F,G,H,I,fa,ga,ha,ia,J=3Dfunction(){return =
v.navigator?v.navigator.userAgent:e},K=3Dfunction(){return =
v.navigator};I=3DH=3DG=3DF=3DC=3Dg;var L;if(L=3DJ()){var =
ja=3DK();C=3DL[n]("Opera")=3D=3D0;F=3D!C&&L[n]("MSIE")!=3D-1;H=3D(G=3D!C&=
&L[n]("WebKit")!=3D-1)&&L[n]("Mobile")!=3D-1;I=3D!C&&!G&&ja.product=3D=3D=
"Gecko"}var =
ka=3DC,la=3DF,ma=3DI,na=3DG,oa,M=3DK(),N=3Doa=3DM&&M.platform||"";fa=3DN[=
n]("Mac")!=3D-1;ga=3DN[n]("Win")!=3D-1;ha=3DN[n]("Linux")!=3D-1;ia=3D!!K(=
)&&(K().appVersion||"")[n]("X11")!=3D-1;var R=3D"",S;=0A=
if(ka&&v.opera){var T=3Dv.opera.version;R=3Dtypeof =
T=3D=3D"function"?T():T}else{if(ma)S=3D/rv\:([^\);]+)(\)|;)/;else =
if(la)S=3D/MSIE\s+([^\);]+)(\)|;)/;else =
if(na)S=3D/WebKit\/(\S+)/;if(S){var U=3DS.exec(J());R=3DU?U[1]:""}};var =
pa=3Di,qa=3De,V=3Dpa.getElementsByTagName("script");if(V&&V[o]){var =
ra=3DV[V[o]-1];qa=3Dra.parentNode};y("","pagead2.googlesyndication.com");=
var sa=3Dfunction(a,b){for(var c in =
a)Object[p].hasOwnProperty[q](a,c)&&b[q](e,a[c],c,a)};var =
W=3Dfunction(a){return!!a&&(a[n]("?google_debug")>0||a[n]("&google_debug"=
)>0)};var ta=3Dfunction(){this.b=3D[];this.c=3D{};for(var =
a=3D0,b=3Darguments[o];a<b;++a)this.c[arguments[a]]=3D""},ua=3Dfunction(a=
){var =
b=3D[],c=3Dfunction(d){d!=3D""&&b[j](d)};sa(a.c,c);if(a.b[o]>0&&b[o]>0)re=
turn a.b[r](",")+","+b[r](",");return a.b[r](",")+b[r](",")};function =
va(a){var b;b=3D"adsense";if((a=3Da)&&typeof =
a=3D=3D"string"&&a[o]>0)if(b=3D=3De)b=3De;else{var =
c=3Dh.GS_googleServiceIds_[b];if(c=3D=3De){c=3Db=3D=3D"adsense"?new =
X:new =
Y;h.GS_googleServiceIds_[b]=3Dc}b:{for(b=3D0;b<c.a[o];b++)if(a=3D=3Dc.a[b=
])break b;c.a[c.a[o]]=3Da}b=3Dc}else b=3De;return =
b}w("GS_googleAddAdSenseService",va,void 0);function wa(){for(var a in =
h.GS_googleServiceIds_){var b=3Dh.GS_googleServiceIds_[a];typeof =
b!=3D"function"&&b.e()}}w("GS_googleEnableAllServices",wa,void =
0);function xa(){h.GS_googleServiceIds_=3D{}}=0A=
w("GS_googleResetAllServices",xa,void 0);function ya(){var =
a=3D"adsense";a=3Da=3D=3De?e:h.GS_googleServiceIds_[a];return =
a=3Da=3D=3De?"":a.a[r]()}w("GS_googleGetIdsForAdSenseService",ya,void =
0);function za(a){return Z(a)}w("GS_googleFindService",za,void =
0);function Aa(){var a=3DZ("adsense");return =
a?ua(a.f):""}w("GS_googleGetExpIdsForAdSense",Aa,void 0);function =
$(a){this.j=3Da;this.a=3D[];this.f=3Dnew =
ta}$[p].toString=3Dfunction(){for(var a=3D"["+this.j+" ids: =
",b=3D0;b<this.a[o];b++){if(b>0)a+=3D",";a+=3Dthis.a[b]}a+=3D"]";return =
a};=0A=
var Z=3Dfunction(a){return =
a=3Da=3D=3De?e:h.GS_googleServiceIds_[a]};function =
Y(){$[q](this,"unknown")}x(Y,$);Y[p].e=3Dfunction(){};function =
X(){$[q](this,"adsense");this.g=3Dg}x(X,$);=0A=
var Ba=3Dfunction(a,b){var c;c=3Da;var d=3DZ("adsense");var =
f=3Dd.f;d=3D["32942001","32942002"];var =
k;k=3Dtrue;if(k&&!(Math.random()<1.0E-4)&&Math.random()<b){k=3DMath.floor=
(Math.random()*d[o]);f=3Df;d=3Dd[k];k=3Dvoid 0;if(d=3D=3D"")d=3D"";else =
if(k)if(f.c.hasOwnProperty(k))d=3Df.c[k]=3Dd;else =
d=3D"";else{f.b[j](d);d=3Dd}d=3Dd}else =
d=3D"";c=3Dd=3D=3D=3D"32942002"||c&&(c[n]("?use_google_ads2")>0||c[n]("&u=
se_google_ads2")>0)?true:g;if(c){if(W(a))return"google_ads_dbg2.js";retur=
n"google_ads2.js"}else{if(W(a))return"google_ads_dbg.js";return"google_ad=
s.js"}};=0A=
X[p].e=3Dfunction(){if(!this.g){var a;a=3DBa(i.URL,ca);var =
b=3D"http://"+y("","partner.googleadservices.com");if(ea)b=3D"https://"+y=
("","securepubads.g.doubleclick.net");var =
c=3D"",d;d=3DB();(d=3Dd=3D=3D"pubads.g.doubleclick.net")||(c=3D"?prodhost=
=3D"+B());a=3Db+"/gampad/"+a+c;b=3D"script";i.write("<"+b+' =
src=3D"'+a+'"><\/script>');this.g=3Dtrue;if(h[l]&&h[l].Timer){h[l].load.n=
ame=3D"load";h[l].load.tick("start")}}};h.GS_googleServiceIds_||(h.GS_goo=
gleServiceIds_=3D{});})()=0A=

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/js/jquery-1.4.2.js

/*!=0A=
 * jQuery JavaScript Library v1.4.2=0A=
 * http://jquery.com/=0A=
 *=0A=
 * Copyright 2010, John Resig=0A=
 * Dual licensed under the MIT or GPL Version 2 licenses.=0A=
 * http://jquery.org/license=0A=
 *=0A=
 * Includes Sizzle.js=0A=
 * http://sizzlejs.com/=0A=
 * Copyright 2010, The Dojo Foundation=0A=
 * Released under the MIT, BSD, and GPL Licenses.=0A=
 *=0A=
 * Date: Sat Feb 13 22:33:48 2010 -0500=0A=
 */=0A=
(function( window, undefined ) {=0A=
=0A=
// Define a local copy of jQuery=0A=
var jQuery =3D function( selector, context ) {=0A=
		// The jQuery object is actually just the init constructor 'enhanced'=0A=
		return new jQuery.fn.init( selector, context );=0A=
	},=0A=
=0A=
	// Map over jQuery in case of overwrite=0A=
	_jQuery =3D window.jQuery,=0A=
=0A=
	// Map over the $ in case of overwrite=0A=
	_$ =3D window.$,=0A=
=0A=
	// Use the correct document accordingly with window argument (sandbox)=0A=
	document =3D window.document,=0A=
=0A=
	// A central reference to the root jQuery(document)=0A=
	rootjQuery,=0A=
=0A=
	// A simple way to check for HTML strings or ID strings=0A=
	// (both of which we optimize for)=0A=
	quickExpr =3D /^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,=0A=
=0A=
	// Is it a simple selector=0A=
	isSimple =3D /^.[^:#\[\.,]*$/,=0A=
=0A=
	// Check if a string has a non-whitespace character in it=0A=
	rnotwhite =3D /\S/,=0A=
=0A=
	// Used for trimming whitespace=0A=
	rtrim =3D /^(\s|\u00A0)+|(\s|\u00A0)+$/g,=0A=
=0A=
	// Match a standalone tag=0A=
	rsingleTag =3D /^<(\w+)\s*\/?>(?:<\/\1>)?$/,=0A=
=0A=
	// Keep a UserAgent string for use with jQuery.browser=0A=
	userAgent =3D navigator.userAgent,=0A=
=0A=
	// For matching the engine and version of the browser=0A=
	browserMatch,=0A=
	=0A=
	// Has the ready events already been bound?=0A=
	readyBound =3D false,=0A=
	=0A=
	// The functions to execute on DOM ready=0A=
	readyList =3D [],=0A=
=0A=
	// The ready event handler=0A=
	DOMContentLoaded,=0A=
=0A=
	// Save a reference to some core methods=0A=
	toString =3D Object.prototype.toString,=0A=
	hasOwnProperty =3D Object.prototype.hasOwnProperty,=0A=
	push =3D Array.prototype.push,=0A=
	slice =3D Array.prototype.slice,=0A=
	indexOf =3D Array.prototype.indexOf;=0A=
=0A=
jQuery.fn =3D jQuery.prototype =3D {=0A=
	init: function( selector, context ) {=0A=
		var match, elem, ret, doc;=0A=
=0A=
		// Handle $(""), $(null), or $(undefined)=0A=
		if ( !selector ) {=0A=
			return this;=0A=
		}=0A=
=0A=
		// Handle $(DOMElement)=0A=
		if ( selector.nodeType ) {=0A=
			this.context =3D this[0] =3D selector;=0A=
			this.length =3D 1;=0A=
			return this;=0A=
		}=0A=
		=0A=
		// The body element only exists once, optimize finding it=0A=
		if ( selector =3D=3D=3D "body" && !context ) {=0A=
			this.context =3D document;=0A=
			this[0] =3D document.body;=0A=
			this.selector =3D "body";=0A=
			this.length =3D 1;=0A=
			return this;=0A=
		}=0A=
=0A=
		// Handle HTML strings=0A=
		if ( typeof selector =3D=3D=3D "string" ) {=0A=
			// Are we dealing with HTML string or an ID?=0A=
			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=
					doc =3D (context ? context.ownerDocument || context : document);=0A=
=0A=
					// If a single string is passed in and it's a single tag=0A=
					// just do a createElement and skip the rest=0A=
					ret =3D rsingleTag.exec( selector );=0A=
=0A=
					if ( ret ) {=0A=
						if ( jQuery.isPlainObject( context ) ) {=0A=
							selector =3D [ document.createElement( ret[1] ) ];=0A=
							jQuery.fn.attr.call( selector, context, true );=0A=
=0A=
						} else {=0A=
							selector =3D [ doc.createElement( ret[1] ) ];=0A=
						}=0A=
=0A=
					} else {=0A=
						ret =3D buildFragment( [ match[1] ], [ doc ] );=0A=
						selector =3D (ret.cacheable ? ret.fragment.cloneNode(true) : =
ret.fragment).childNodes;=0A=
					}=0A=
					=0A=
					return jQuery.merge( this, selector );=0A=
					=0A=
				// HANDLE: $("#id")=0A=
				} else {=0A=
					elem =3D document.getElementById( match[2] );=0A=
=0A=
					if ( elem ) {=0A=
						// Handle the case where IE and Opera return items=0A=
						// by name instead of ID=0A=
						if ( elem.id !=3D=3D match[2] ) {=0A=
							return rootjQuery.find( selector );=0A=
						}=0A=
=0A=
						// Otherwise, we inject the element directly into the jQuery object=0A=
						this.length =3D 1;=0A=
						this[0] =3D elem;=0A=
					}=0A=
=0A=
					this.context =3D document;=0A=
					this.selector =3D selector;=0A=
					return this;=0A=
				}=0A=
=0A=
			// HANDLE: $("TAG")=0A=
			} else if ( !context && /^\w+$/.test( selector ) ) {=0A=
				this.selector =3D selector;=0A=
				this.context =3D document;=0A=
				selector =3D document.getElementsByTagName( selector );=0A=
				return jQuery.merge( this, selector );=0A=
=0A=
			// HANDLE: $(expr, $(...))=0A=
			} else if ( !context || context.jquery ) {=0A=
				return (context || rootjQuery).find( selector );=0A=
=0A=
			// HANDLE: $(expr, context)=0A=
			// (which is just equivalent to: $(context).find(expr)=0A=
			} else {=0A=
				return jQuery( context ).find( selector );=0A=
			}=0A=
=0A=
		// HANDLE: $(function)=0A=
		// Shortcut for document ready=0A=
		} else if ( jQuery.isFunction( selector ) ) {=0A=
			return rootjQuery.ready( selector );=0A=
		}=0A=
=0A=
		if (selector.selector !=3D=3D undefined) {=0A=
			this.selector =3D selector.selector;=0A=
			this.context =3D selector.context;=0A=
		}=0A=
=0A=
		return jQuery.makeArray( selector, this );=0A=
	},=0A=
=0A=
	// Start with an empty selector=0A=
	selector: "",=0A=
=0A=
	// The current version of jQuery being used=0A=
	jquery: "1.4.2",=0A=
=0A=
	// The default length of a jQuery object is 0=0A=
	length: 0,=0A=
=0A=
	// The number of elements contained in the matched element set=0A=
	size: function() {=0A=
		return this.length;=0A=
	},=0A=
=0A=
	toArray: function() {=0A=
		return slice.call( this, 0 );=0A=
	},=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 null ?=0A=
=0A=
			// Return a 'clean' array=0A=
			this.toArray() :=0A=
=0A=
			// Return just the object=0A=
			( num < 0 ? this.slice(num)[ 0 ] : 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, name, selector ) {=0A=
		// Build a new jQuery matched element set=0A=
		var ret =3D jQuery();=0A=
=0A=
		if ( jQuery.isArray( elems ) ) {=0A=
			push.apply( ret, elems );=0A=
		=0A=
		} else {=0A=
			jQuery.merge( ret, elems );=0A=
		}=0A=
=0A=
		// Add the old object onto the stack (as a reference)=0A=
		ret.prevObject =3D this;=0A=
=0A=
		ret.context =3D this.context;=0A=
=0A=
		if ( name =3D=3D=3D "find" ) {=0A=
			ret.selector =3D this.selector + (this.selector ? " " : "") + =
selector;=0A=
		} else if ( name ) {=0A=
			ret.selector =3D this.selector + "." + name + "(" + selector + ")";=0A=
		}=0A=
=0A=
		// Return the newly-formed element set=0A=
		return ret;=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=
	ready: function( fn ) {=0A=
		// Attach the listeners=0A=
		jQuery.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 if ( readyList ) {=0A=
			// Add the function to the wait list=0A=
			readyList.push( fn );=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
	=0A=
	eq: function( i ) {=0A=
		return i =3D=3D=3D -1 ?=0A=
			this.slice( i ) :=0A=
			this.slice( i, +i + 1 );=0A=
	},=0A=
=0A=
	first: function() {=0A=
		return this.eq( 0 );=0A=
	},=0A=
=0A=
	last: function() {=0A=
		return this.eq( -1 );=0A=
	},=0A=
=0A=
	slice: function() {=0A=
		return this.pushStack( slice.apply( this, arguments ),=0A=
			"slice", slice.call(arguments).join(",") );=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=
	end: function() {=0A=
		return this.prevObject || jQuery(null);=0A=
	},=0A=
=0A=
	// For internal use only.=0A=
	// Behaves like an Array's method, not like a jQuery method.=0A=
	push: push,=0A=
	sort: [].sort,=0A=
	splice: [].splice=0A=
};=0A=
=0A=
// Give the init function the jQuery prototype for later instantiation=0A=
jQuery.fn.init.prototype =3D jQuery.fn;=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, name, src, copy;=0A=
=0A=
	// Handle a deep copy situation=0A=
	if ( typeof target =3D=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=3D "object" && !jQuery.isFunction(target) ) {=0A=
		target =3D {};=0A=
	}=0A=
=0A=
	// extend jQuery itself if only one argument is passed=0A=
	if ( length =3D=3D=3D i ) {=0A=
		target =3D this;=0A=
		--i;=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 ( name in options ) {=0A=
				src =3D target[ name ];=0A=
				copy =3D options[ name ];=0A=
=0A=
				// Prevent never-ending loop=0A=
				if ( target =3D=3D=3D copy ) {=0A=
					continue;=0A=
				}=0A=
=0A=
				// Recurse if we're merging object literal values or arrays=0A=
				if ( deep && copy && ( jQuery.isPlainObject(copy) || =
jQuery.isArray(copy) ) ) {=0A=
					var clone =3D src && ( jQuery.isPlainObject(src) || =
jQuery.isArray(src) ) ? src=0A=
						: jQuery.isArray(copy) ? [] : {};=0A=
=0A=
					// Never move original objects, clone them=0A=
					target[ name ] =3D jQuery.extend( deep, clone, copy );=0A=
=0A=
				// Don't bring in undefined values=0A=
				} else if ( copy !=3D=3D undefined ) {=0A=
					target[ name ] =3D copy;=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// Return the modified object=0A=
	return target;=0A=
};=0A=
=0A=
jQuery.extend({=0A=
	noConflict: function( deep ) {=0A=
		window.$ =3D _$;=0A=
=0A=
		if ( deep ) {=0A=
			window.jQuery =3D _jQuery;=0A=
		}=0A=
=0A=
		return jQuery;=0A=
	},=0A=
	=0A=
	// Is the DOM ready to be used? Set to true once it occurs.=0A=
	isReady: false,=0A=
	=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=
			// Make sure body exists, at least, in case IE gets a little =
overzealous (ticket #5443).=0A=
			if ( !document.body ) {=0A=
				return setTimeout( jQuery.ready, 13 );=0A=
			}=0A=
=0A=
			// Remember that the DOM is ready=0A=
			jQuery.isReady =3D true;=0A=
=0A=
			// If there are functions bound, to execute=0A=
			if ( readyList ) {=0A=
				// Execute all of them=0A=
				var fn, i =3D 0;=0A=
				while ( (fn =3D readyList[ i++ ]) ) {=0A=
					fn.call( document, jQuery );=0A=
				}=0A=
=0A=
				// Reset the list of functions=0A=
				readyList =3D null;=0A=
			}=0A=
=0A=
			// Trigger any bound ready events=0A=
			if ( jQuery.fn.triggerHandler ) {=0A=
				jQuery( document ).triggerHandler( "ready" );=0A=
			}=0A=
		}=0A=
	},=0A=
	=0A=
	bindReady: function() {=0A=
		if ( readyBound ) {=0A=
			return;=0A=
		}=0A=
=0A=
		readyBound =3D true;=0A=
=0A=
		// Catch cases where $(document).ready() is called after the=0A=
		// browser event has already occurred.=0A=
		if ( document.readyState =3D=3D=3D "complete" ) {=0A=
			return jQuery.ready();=0A=
		}=0A=
=0A=
		// Mozilla, Opera and webkit nightlies currently support this event=0A=
		if ( document.addEventListener ) {=0A=
			// Use the handy event callback=0A=
			document.addEventListener( "DOMContentLoaded", DOMContentLoaded, =
false );=0A=
			=0A=
			// A fallback to window.onload, that will always work=0A=
			window.addEventListener( "load", jQuery.ready, false );=0A=
=0A=
		// If IE event model is used=0A=
		} else if ( document.attachEvent ) {=0A=
			// ensure firing before onload,=0A=
			// maybe late but safe also for iframes=0A=
			document.attachEvent("onreadystatechange", DOMContentLoaded);=0A=
			=0A=
			// A fallback to window.onload, that will always work=0A=
			window.attachEvent( "onload", jQuery.ready );=0A=
=0A=
			// If IE and not a frame=0A=
			// continually check to see if the document is ready=0A=
			var toplevel =3D false;=0A=
=0A=
			try {=0A=
				toplevel =3D window.frameElement =3D=3D null;=0A=
			} catch(e) {}=0A=
=0A=
			if ( document.documentElement.doScroll && toplevel ) {=0A=
				doScrollCheck();=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	// See test/unit/core.js for details concerning isFunction.=0A=
	// Since version 1.3, DOM methods and functions like alert=0A=
	// aren't supported. They return false on IE (#2968).=0A=
	isFunction: function( obj ) {=0A=
		return toString.call(obj) =3D=3D=3D "[object Function]";=0A=
	},=0A=
=0A=
	isArray: function( obj ) {=0A=
		return toString.call(obj) =3D=3D=3D "[object Array]";=0A=
	},=0A=
=0A=
	isPlainObject: function( obj ) {=0A=
		// Must be an Object.=0A=
		// Because of IE, we also have to check the presence of the =
constructor property.=0A=
		// Make sure that DOM nodes and window objects don't pass through, as =
well=0A=
		if ( !obj || toString.call(obj) !=3D=3D "[object Object]" || =
obj.nodeType || obj.setInterval ) {=0A=
			return false;=0A=
		}=0A=
		=0A=
		// Not own constructor property must be Object=0A=
		if ( obj.constructor=0A=
			&& !hasOwnProperty.call(obj, "constructor")=0A=
			&& !hasOwnProperty.call(obj.constructor.prototype, "isPrototypeOf") ) =
{=0A=
			return false;=0A=
		}=0A=
		=0A=
		// Own properties are enumerated firstly, so to speed up,=0A=
		// if last one is own, then all properties are own.=0A=
	=0A=
		var key;=0A=
		for ( key in obj ) {}=0A=
		=0A=
		return key =3D=3D=3D undefined || hasOwnProperty.call( obj, key );=0A=
	},=0A=
=0A=
	isEmptyObject: function( obj ) {=0A=
		for ( var name in obj ) {=0A=
			return false;=0A=
		}=0A=
		return true;=0A=
	},=0A=
	=0A=
	error: function( msg ) {=0A=
		throw msg;=0A=
	},=0A=
	=0A=
	parseJSON: function( data ) {=0A=
		if ( typeof data !=3D=3D "string" || !data ) {=0A=
			return null;=0A=
		}=0A=
=0A=
		// Make sure leading/trailing whitespace is removed (IE can't handle =
it)=0A=
		data =3D jQuery.trim( data );=0A=
		=0A=
		// Make sure the incoming data is actual JSON=0A=
		// Logic borrowed from http://json.org/json2.js=0A=
		if ( =
/^[\],:{}\s]*$/.test(data.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, =
"@")=0A=
			=
.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?=
/g, "]")=0A=
			.replace(/(?:^|:|,)(?:\s*\[)+/g, "")) ) {=0A=
=0A=
			// Try to use the native JSON parser first=0A=
			return window.JSON && window.JSON.parse ?=0A=
				window.JSON.parse( data ) :=0A=
				(new Function("return " + data))();=0A=
=0A=
		} else {=0A=
			jQuery.error( "Invalid JSON: " + data );=0A=
		}=0A=
	},=0A=
=0A=
	noop: function() {},=0A=
=0A=
	// Evalulates a script in a global context=0A=
	globalEval: function( data ) {=0A=
		if ( data && rnotwhite.test(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=
=0A=
			if ( jQuery.support.scriptEval ) {=0A=
				script.appendChild( document.createTextNode( data ) );=0A=
			} else {=0A=
				script.text =3D data;=0A=
			}=0A=
=0A=
			// Use insertBefore instead of appendChild to circumvent an IE6 bug.=0A=
			// This arises when a base node is used (#2709).=0A=
			head.insertBefore( script, head.firstChild );=0A=
			head.removeChild( script );=0A=
		}=0A=
	},=0A=
=0A=
	nodeName: function( elem, name ) {=0A=
		return elem.nodeName && elem.nodeName.toUpperCase() =3D=3D=3D =
name.toUpperCase();=0A=
	},=0A=
=0A=
	// args is for internal usage only=0A=
	each: function( object, callback, args ) {=0A=
		var name, i =3D 0,=0A=
			length =3D object.length,=0A=
			isObj =3D length =3D=3D=3D undefined || jQuery.isFunction(object);=0A=
=0A=
		if ( args ) {=0A=
			if ( isObj ) {=0A=
				for ( name in object ) {=0A=
					if ( callback.apply( object[ name ], args ) =3D=3D=3D false ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			} else {=0A=
				for ( ; i < length; ) {=0A=
					if ( callback.apply( object[ i++ ], args ) =3D=3D=3D false ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
		// A special, fast, case for the most common use of each=0A=
		} else {=0A=
			if ( isObj ) {=0A=
				for ( name in object ) {=0A=
					if ( callback.call( object[ name ], name, object[ name ] ) =
=3D=3D=3D false ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			} else {=0A=
				for ( var value =3D object[0];=0A=
					i < length && callback.call( value, i, value ) !=3D=3D false; value =
=3D object[++i] ) {}=0A=
			}=0A=
		}=0A=
=0A=
		return object;=0A=
	},=0A=
=0A=
	trim: function( text ) {=0A=
		return (text || "").replace( rtrim, "" );=0A=
	},=0A=
=0A=
	// results is for internal usage only=0A=
	makeArray: function( array, results ) {=0A=
		var ret =3D results || [];=0A=
=0A=
		if ( array !=3D null ) {=0A=
			// The window, strings (and functions) also have 'length'=0A=
			// The extra typeof function check is to prevent crashes=0A=
			// in Safari 2 (See: #3039)=0A=
			if ( array.length =3D=3D null || typeof array =3D=3D=3D "string" || =
jQuery.isFunction(array) || (typeof array !=3D=3D "function" && =
array.setInterval) ) {=0A=
				push.call( ret, array );=0A=
			} else {=0A=
				jQuery.merge( ret, array );=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	inArray: function( elem, array ) {=0A=
		if ( array.indexOf ) {=0A=
			return array.indexOf( elem );=0A=
		}=0A=
=0A=
		for ( var i =3D 0, length =3D array.length; i < length; i++ ) {=0A=
			if ( array[ i ] =3D=3D=3D elem ) {=0A=
				return i;=0A=
			}=0A=
		}=0A=
=0A=
		return -1;=0A=
	},=0A=
=0A=
	merge: function( first, second ) {=0A=
		var i =3D first.length, j =3D 0;=0A=
=0A=
		if ( typeof second.length =3D=3D=3D "number" ) {=0A=
			for ( var l =3D second.length; j < l; j++ ) {=0A=
				first[ i++ ] =3D second[ j ];=0A=
			}=0A=
		=0A=
		} else {=0A=
			while ( second[j] !=3D=3D undefined ) {=0A=
				first[ i++ ] =3D second[ j++ ];=0A=
			}=0A=
		}=0A=
=0A=
		first.length =3D i;=0A=
=0A=
		return first;=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 !=3D=3D !callback( elems[ i ], i ) ) {=0A=
				ret.push( elems[ i ] );=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	// arg is for internal usage only=0A=
	map: function( elems, callback, arg ) {=0A=
		var ret =3D [], value;=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=
			value =3D callback( elems[ i ], i, arg );=0A=
=0A=
			if ( value !=3D null ) {=0A=
				ret[ ret.length ] =3D value;=0A=
			}=0A=
		}=0A=
=0A=
		return ret.concat.apply( [], ret );=0A=
	},=0A=
=0A=
	// A global GUID counter for objects=0A=
	guid: 1,=0A=
=0A=
	proxy: function( fn, proxy, thisObject ) {=0A=
		if ( arguments.length =3D=3D=3D 2 ) {=0A=
			if ( typeof proxy =3D=3D=3D "string" ) {=0A=
				thisObject =3D fn;=0A=
				fn =3D thisObject[ proxy ];=0A=
				proxy =3D undefined;=0A=
=0A=
			} else if ( proxy && !jQuery.isFunction( proxy ) ) {=0A=
				thisObject =3D proxy;=0A=
				proxy =3D undefined;=0A=
			}=0A=
		}=0A=
=0A=
		if ( !proxy && fn ) {=0A=
			proxy =3D function() {=0A=
				return fn.apply( thisObject || this, arguments );=0A=
			};=0A=
		}=0A=
=0A=
		// Set the guid of unique handler to the same of original handler, so =
it can be removed=0A=
		if ( fn ) {=0A=
			proxy.guid =3D fn.guid =3D fn.guid || proxy.guid || jQuery.guid++;=0A=
		}=0A=
=0A=
		// So proxy can be declared as an argument=0A=
		return proxy;=0A=
	},=0A=
=0A=
	// Use of jQuery.browser is frowned upon.=0A=
	// More details: http://docs.jquery.com/Utilities/jQuery.browser=0A=
	uaMatch: function( ua ) {=0A=
		ua =3D ua.toLowerCase();=0A=
=0A=
		var match =3D /(webkit)[ \/]([\w.]+)/.exec( ua ) ||=0A=
			/(opera)(?:.*version)?[ \/]([\w.]+)/.exec( ua ) ||=0A=
			/(msie) ([\w.]+)/.exec( ua ) ||=0A=
			!/compatible/.test( ua ) && /(mozilla)(?:.*? rv:([\w.]+))?/.exec( ua =
) ||=0A=
		  	[];=0A=
=0A=
		return { browser: match[1] || "", version: match[2] || "0" };=0A=
	},=0A=
=0A=
	browser: {}=0A=
});=0A=
=0A=
browserMatch =3D jQuery.uaMatch( userAgent );=0A=
if ( browserMatch.browser ) {=0A=
	jQuery.browser[ browserMatch.browser ] =3D true;=0A=
	jQuery.browser.version =3D browserMatch.version;=0A=
}=0A=
=0A=
// Deprecated, use jQuery.browser.webkit instead=0A=
if ( jQuery.browser.webkit ) {=0A=
	jQuery.browser.safari =3D true;=0A=
}=0A=
=0A=
if ( indexOf ) {=0A=
	jQuery.inArray =3D function( elem, array ) {=0A=
		return indexOf.call( array, elem );=0A=
	};=0A=
}=0A=
=0A=
// All jQuery objects should point back to these=0A=
rootjQuery =3D jQuery(document);=0A=
=0A=
// Cleanup functions for the document ready method=0A=
if ( document.addEventListener ) {=0A=
	DOMContentLoaded =3D function() {=0A=
		document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, =
false );=0A=
		jQuery.ready();=0A=
	};=0A=
=0A=
} else if ( document.attachEvent ) {=0A=
	DOMContentLoaded =3D function() {=0A=
		// Make sure body exists, at least, in case IE gets a little =
overzealous (ticket #5443).=0A=
		if ( document.readyState =3D=3D=3D "complete" ) {=0A=
			document.detachEvent( "onreadystatechange", DOMContentLoaded );=0A=
			jQuery.ready();=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// The DOM ready check for Internet Explorer=0A=
function doScrollCheck() {=0A=
	if ( jQuery.isReady ) {=0A=
		return;=0A=
	}=0A=
=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( doScrollCheck, 1 );=0A=
		return;=0A=
	}=0A=
=0A=
	// and execute any waiting functions=0A=
	jQuery.ready();=0A=
}=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=
	} else {=0A=
		jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || =
"" );=0A=
	}=0A=
=0A=
	if ( elem.parentNode ) {=0A=
		elem.parentNode.removeChild( elem );=0A=
	}=0A=
}=0A=
=0A=
// Mutifunctional method to get and set values to a collection=0A=
// The value/s can be optionally by executed if its a function=0A=
function access( elems, key, value, exec, fn, pass ) {=0A=
	var length =3D elems.length;=0A=
	=0A=
	// Setting many attributes=0A=
	if ( typeof key =3D=3D=3D "object" ) {=0A=
		for ( var k in key ) {=0A=
			access( elems, k, key[k], exec, fn, value );=0A=
		}=0A=
		return elems;=0A=
	}=0A=
	=0A=
	// Setting one attribute=0A=
	if ( value !=3D=3D undefined ) {=0A=
		// Optionally, function values get executed if exec is true=0A=
		exec =3D !pass && exec && jQuery.isFunction(value);=0A=
		=0A=
		for ( var i =3D 0; i < length; i++ ) {=0A=
			fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key =
) ) : value, pass );=0A=
		}=0A=
		=0A=
		return elems;=0A=
	}=0A=
	=0A=
	// Getting an attribute=0A=
	return length ? fn( elems[0], key ) : undefined;=0A=
}=0A=
=0A=
function now() {=0A=
	return (new Date).getTime();=0A=
}=0A=
(function() {=0A=
=0A=
	jQuery.support =3D {};=0A=
=0A=
	var root =3D document.documentElement,=0A=
		script =3D document.createElement("script"),=0A=
		div =3D document.createElement("div"),=0A=
		id =3D "script" + now();=0A=
=0A=
	div.style.display =3D "none";=0A=
	div.innerHTML =3D "   <link/><table></table><a href=3D'/a' =
style=3D'color:red;float:left;opacity:.55;'>a</a><input =
type=3D'checkbox'/>";=0A=
=0A=
	var all =3D div.getElementsByTagName("*"),=0A=
		a =3D div.getElementsByTagName("a")[0];=0A=
=0A=
	// Can't get basic test support=0A=
	if ( !all || !all.length || !a ) {=0A=
		return;=0A=
	}=0A=
=0A=
	jQuery.support =3D {=0A=
		// IE strips leading whitespace when .innerHTML is used=0A=
		leadingWhitespace: div.firstChild.nodeType =3D=3D=3D 3,=0A=
=0A=
		// Make sure that tbody elements aren't automatically inserted=0A=
		// IE will insert them into empty tables=0A=
		tbody: !div.getElementsByTagName("tbody").length,=0A=
=0A=
		// Make sure that link elements get serialized correctly by innerHTML=0A=
		// This requires a wrapper element in IE=0A=
		htmlSerialize: !!div.getElementsByTagName("link").length,=0A=
=0A=
		// Get the style information from getAttribute=0A=
		// (IE uses .cssText insted)=0A=
		style: /red/.test( a.getAttribute("style") ),=0A=
=0A=
		// Make sure that URLs aren't manipulated=0A=
		// (IE normalizes it by default)=0A=
		hrefNormalized: a.getAttribute("href") =3D=3D=3D "/a",=0A=
=0A=
		// Make sure that element opacity exists=0A=
		// (IE uses filter instead)=0A=
		// Use a regex to work around a WebKit issue. See #5145=0A=
		opacity: /^0.55$/.test( a.style.opacity ),=0A=
=0A=
		// Verify style float existence=0A=
		// (IE uses styleFloat instead of cssFloat)=0A=
		cssFloat: !!a.style.cssFloat,=0A=
=0A=
		// Make sure that if no value is specified for a checkbox=0A=
		// that it defaults to "on".=0A=
		// (WebKit defaults to "" instead)=0A=
		checkOn: div.getElementsByTagName("input")[0].value =3D=3D=3D "on",=0A=
=0A=
		// Make sure that a selected-by-default option has a working selected =
property.=0A=
		// (WebKit defaults to false instead of true, IE too, if it's in an =
optgroup)=0A=
		optSelected: document.createElement("select").appendChild( =
document.createElement("option") ).selected,=0A=
=0A=
		parentNode: div.removeChild( div.appendChild( =
document.createElement("div") ) ).parentNode =3D=3D=3D null,=0A=
=0A=
		// Will be defined later=0A=
		deleteExpando: true,=0A=
		checkClone: false,=0A=
		scriptEval: false,=0A=
		noCloneEvent: true,=0A=
		boxModel: null=0A=
	};=0A=
=0A=
	script.type =3D "text/javascript";=0A=
	try {=0A=
		script.appendChild( document.createTextNode( "window." + id + "=3D1;" =
) );=0A=
	} catch(e) {}=0A=
=0A=
	root.insertBefore( script, root.firstChild );=0A=
=0A=
	// Make sure that the execution of code works by injecting a script=0A=
	// tag with appendChild/createTextNode=0A=
	// (IE doesn't support this, fails, and uses .text instead)=0A=
	if ( window[ id ] ) {=0A=
		jQuery.support.scriptEval =3D true;=0A=
		delete window[ id ];=0A=
	}=0A=
=0A=
	// Test to see if it's possible to delete an expando from an element=0A=
	// Fails in Internet Explorer=0A=
	try {=0A=
		delete script.test;=0A=
	=0A=
	} catch(e) {=0A=
		jQuery.support.deleteExpando =3D false;=0A=
	}=0A=
=0A=
	root.removeChild( script );=0A=
=0A=
	if ( div.attachEvent && div.fireEvent ) {=0A=
		div.attachEvent("onclick", function click() {=0A=
			// Cloning a node shouldn't copy over any=0A=
			// bound event handlers (IE does this)=0A=
			jQuery.support.noCloneEvent =3D false;=0A=
			div.detachEvent("onclick", click);=0A=
		});=0A=
		div.cloneNode(true).fireEvent("onclick");=0A=
	}=0A=
=0A=
	div =3D document.createElement("div");=0A=
	div.innerHTML =3D "<input type=3D'radio' name=3D'radiotest' =
checked=3D'checked'/>";=0A=
=0A=
	var fragment =3D document.createDocumentFragment();=0A=
	fragment.appendChild( div.firstChild );=0A=
=0A=
	// WebKit doesn't clone checked state correctly in fragments=0A=
	jQuery.support.checkClone =3D =
fragment.cloneNode(true).cloneNode(true).lastChild.checked;=0A=
=0A=
	// Figure out if the W3C box model works as expected=0A=
	// document.body must exist before we can do this=0A=
	jQuery(function() {=0A=
		var div =3D document.createElement("div");=0A=
		div.style.width =3D div.style.paddingLeft =3D "1px";=0A=
=0A=
		document.body.appendChild( div );=0A=
		jQuery.boxModel =3D jQuery.support.boxModel =3D div.offsetWidth =
=3D=3D=3D 2;=0A=
		document.body.removeChild( div ).style.display =3D 'none';=0A=
=0A=
		div =3D null;=0A=
	});=0A=
=0A=
	// Technique from Juriy Zaytsev=0A=
	// =
http://thinkweb2.com/projects/prototype/detecting-event-support-without-b=
rowser-sniffing/=0A=
	var eventSupported =3D function( eventName ) { =0A=
		var el =3D document.createElement("div"); =0A=
		eventName =3D "on" + eventName; =0A=
=0A=
		var isSupported =3D (eventName in el); =0A=
		if ( !isSupported ) { =0A=
			el.setAttribute(eventName, "return;"); =0A=
			isSupported =3D typeof el[eventName] =3D=3D=3D "function"; =0A=
		} =0A=
		el =3D null; =0A=
=0A=
		return isSupported; =0A=
	};=0A=
	=0A=
	jQuery.support.submitBubbles =3D eventSupported("submit");=0A=
	jQuery.support.changeBubbles =3D eventSupported("change");=0A=
=0A=
	// release memory in IE=0A=
	root =3D script =3D div =3D all =3D a =3D null;=0A=
})();=0A=
=0A=
jQuery.props =3D {=0A=
	"for": "htmlFor",=0A=
	"class": "className",=0A=
	readonly: "readOnly",=0A=
	maxlength: "maxLength",=0A=
	cellspacing: "cellSpacing",=0A=
	rowspan: "rowSpan",=0A=
	colspan: "colSpan",=0A=
	tabindex: "tabIndex",=0A=
	usemap: "useMap",=0A=
	frameborder: "frameBorder"=0A=
};=0A=
var expando =3D "jQuery" + now(), uuid =3D 0, windowData =3D {};=0A=
=0A=
jQuery.extend({=0A=
	cache: {},=0A=
	=0A=
	expando:expando,=0A=
=0A=
	// The following elements throw uncatchable exceptions if you=0A=
	// attempt to add expando properties to them.=0A=
	noData: {=0A=
		"embed": true,=0A=
		"object": true,=0A=
		"applet": true=0A=
	},=0A=
=0A=
	data: function( elem, name, data ) {=0A=
		if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) {=0A=
			return;=0A=
		}=0A=
=0A=
		elem =3D elem =3D=3D window ?=0A=
			windowData :=0A=
			elem;=0A=
=0A=
		var id =3D elem[ expando ], cache =3D jQuery.cache, thisCache;=0A=
=0A=
		if ( !id && typeof name =3D=3D=3D "string" && data =3D=3D=3D undefined =
) {=0A=
			return null;=0A=
		}=0A=
=0A=
		// Compute a unique ID for the element=0A=
		if ( !id ) { =0A=
			id =3D ++uuid;=0A=
		}=0A=
=0A=
		// Avoid generating a new cache unless none exists and we=0A=
		// want to manipulate it.=0A=
		if ( typeof name =3D=3D=3D "object" ) {=0A=
			elem[ expando ] =3D id;=0A=
			thisCache =3D cache[ id ] =3D jQuery.extend(true, {}, name);=0A=
=0A=
		} else if ( !cache[ id ] ) {=0A=
			elem[ expando ] =3D id;=0A=
			cache[ id ] =3D {};=0A=
		}=0A=
=0A=
		thisCache =3D cache[ id ];=0A=
=0A=
		// Prevent overriding the named cache with undefined values=0A=
		if ( data !=3D=3D undefined ) {=0A=
			thisCache[ name ] =3D data;=0A=
		}=0A=
=0A=
		return typeof name =3D=3D=3D "string" ? thisCache[ name ] : thisCache;=0A=
	},=0A=
=0A=
	removeData: function( elem, name ) {=0A=
		if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) {=0A=
			return;=0A=
		}=0A=
=0A=
		elem =3D elem =3D=3D window ?=0A=
			windowData :=0A=
			elem;=0A=
=0A=
		var id =3D elem[ expando ], cache =3D jQuery.cache, thisCache =3D =
cache[ id ];=0A=
=0A=
		// If we want to remove a specific section of the element's data=0A=
		if ( name ) {=0A=
			if ( thisCache ) {=0A=
				// Remove the section of cache data=0A=
				delete thisCache[ name ];=0A=
=0A=
				// If we've removed all the data, remove the element's cache=0A=
				if ( jQuery.isEmptyObject(thisCache) ) {=0A=
					jQuery.removeData( elem );=0A=
				}=0A=
			}=0A=
=0A=
		// Otherwise, we want to remove all of the element's data=0A=
		} else {=0A=
			if ( jQuery.support.deleteExpando ) {=0A=
				delete elem[ jQuery.expando ];=0A=
=0A=
			} else if ( elem.removeAttribute ) {=0A=
				elem.removeAttribute( jQuery.expando );=0A=
			}=0A=
=0A=
			// Completely remove the data cache=0A=
			delete cache[ id ];=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
jQuery.fn.extend({=0A=
	data: function( key, value ) {=0A=
		if ( typeof key =3D=3D=3D "undefined" && this.length ) {=0A=
			return jQuery.data( this[0] );=0A=
=0A=
		} else if ( typeof key =3D=3D=3D "object" ) {=0A=
			return this.each(function() {=0A=
				jQuery.data( this, key );=0A=
			});=0A=
		}=0A=
=0A=
		var parts =3D key.split(".");=0A=
		parts[1] =3D parts[1] ? "." + parts[1] : "";=0A=
=0A=
		if ( value =3D=3D=3D undefined ) {=0A=
			var data =3D this.triggerHandler("getData" + parts[1] + "!", =
[parts[0]]);=0A=
=0A=
			if ( data =3D=3D=3D undefined && this.length ) {=0A=
				data =3D jQuery.data( this[0], key );=0A=
			}=0A=
			return data =3D=3D=3D undefined && 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=
=0A=
	removeData: function( key ) {=0A=
		return this.each(function() {=0A=
			jQuery.removeData( this, key );=0A=
		});=0A=
	}=0A=
});=0A=
jQuery.extend({=0A=
	queue: function( elem, type, data ) {=0A=
		if ( !elem ) {=0A=
			return;=0A=
		}=0A=
=0A=
		type =3D (type || "fx") + "queue";=0A=
		var q =3D jQuery.data( elem, type );=0A=
=0A=
		// Speed up dequeue by getting out quickly if this is just a lookup=0A=
		if ( !data ) {=0A=
			return q || [];=0A=
		}=0A=
=0A=
		if ( !q || jQuery.isArray(data) ) {=0A=
			q =3D jQuery.data( elem, type, jQuery.makeArray(data) );=0A=
=0A=
		} else {=0A=
			q.push( data );=0A=
		}=0A=
=0A=
		return q;=0A=
	},=0A=
=0A=
	dequeue: function( elem, type ) {=0A=
		type =3D type || "fx";=0A=
=0A=
		var queue =3D jQuery.queue( elem, type ), fn =3D queue.shift();=0A=
=0A=
		// If the fx queue is dequeued, always remove the progress sentinel=0A=
		if ( fn =3D=3D=3D "inprogress" ) {=0A=
			fn =3D queue.shift();=0A=
		}=0A=
=0A=
		if ( fn ) {=0A=
			// Add a progress sentinel to prevent the fx queue from being=0A=
			// automatically dequeued=0A=
			if ( type =3D=3D=3D "fx" ) {=0A=
				queue.unshift("inprogress");=0A=
			}=0A=
=0A=
			fn.call(elem, function() {=0A=
				jQuery.dequeue(elem, type);=0A=
			});=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
jQuery.fn.extend({=0A=
	queue: function( type, data ) {=0A=
		if ( typeof type !=3D=3D "string" ) {=0A=
			data =3D type;=0A=
			type =3D "fx";=0A=
		}=0A=
=0A=
		if ( data =3D=3D=3D undefined ) {=0A=
			return jQuery.queue( this[0], type );=0A=
		}=0A=
		return this.each(function( i, elem ) {=0A=
			var queue =3D jQuery.queue( this, type, data );=0A=
=0A=
			if ( type =3D=3D=3D "fx" && queue[0] !=3D=3D "inprogress" ) {=0A=
				jQuery.dequeue( this, type );=0A=
			}=0A=
		});=0A=
	},=0A=
	dequeue: function( type ) {=0A=
		return this.each(function() {=0A=
			jQuery.dequeue( this, type );=0A=
		});=0A=
	},=0A=
=0A=
	// Based off of the plugin by Clint Helfers, with permission.=0A=
	// http://blindsignals.com/index.php/2009/07/jquery-delay/=0A=
	delay: function( time, type ) {=0A=
		time =3D jQuery.fx ? jQuery.fx.speeds[time] || time : time;=0A=
		type =3D type || "fx";=0A=
=0A=
		return this.queue( type, function() {=0A=
			var elem =3D this;=0A=
			setTimeout(function() {=0A=
				jQuery.dequeue( elem, type );=0A=
			}, time );=0A=
		});=0A=
	},=0A=
=0A=
	clearQueue: function( type ) {=0A=
		return this.queue( type || "fx", [] );=0A=
	}=0A=
});=0A=
var rclass =3D /[\n\t]/g,=0A=
	rspace =3D /\s+/,=0A=
	rreturn =3D /\r/g,=0A=
	rspecialurl =3D /href|src|style/,=0A=
	rtype =3D /(button|input)/i,=0A=
	rfocusable =3D /(button|input|object|select|textarea)/i,=0A=
	rclickable =3D /^(a|area)$/i,=0A=
	rradiocheck =3D /radio|checkbox/;=0A=
=0A=
jQuery.fn.extend({=0A=
	attr: function( name, value ) {=0A=
		return access( this, name, value, true, jQuery.attr );=0A=
	},=0A=
=0A=
	removeAttr: function( name, fn ) {=0A=
		return this.each(function(){=0A=
			jQuery.attr( this, name, "" );=0A=
			if ( this.nodeType =3D=3D=3D 1 ) {=0A=
				this.removeAttribute( name );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	addClass: function( value ) {=0A=
		if ( jQuery.isFunction(value) ) {=0A=
			return this.each(function(i) {=0A=
				var self =3D jQuery(this);=0A=
				self.addClass( value.call(this, i, self.attr("class")) );=0A=
			});=0A=
		}=0A=
=0A=
		if ( value && typeof value =3D=3D=3D "string" ) {=0A=
			var classNames =3D (value || "").split( rspace );=0A=
=0A=
			for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
				var elem =3D this[i];=0A=
=0A=
				if ( elem.nodeType =3D=3D=3D 1 ) {=0A=
					if ( !elem.className ) {=0A=
						elem.className =3D value;=0A=
=0A=
					} else {=0A=
						var className =3D " " + elem.className + " ", setClass =3D =
elem.className;=0A=
						for ( var c =3D 0, cl =3D classNames.length; c < cl; c++ ) {=0A=
							if ( className.indexOf( " " + classNames[c] + " " ) < 0 ) {=0A=
								setClass +=3D " " + classNames[c];=0A=
							}=0A=
						}=0A=
						elem.className =3D jQuery.trim( setClass );=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	removeClass: function( value ) {=0A=
		if ( jQuery.isFunction(value) ) {=0A=
			return this.each(function(i) {=0A=
				var self =3D jQuery(this);=0A=
				self.removeClass( value.call(this, i, self.attr("class")) );=0A=
			});=0A=
		}=0A=
=0A=
		if ( (value && typeof value =3D=3D=3D "string") || value =3D=3D=3D =
undefined ) {=0A=
			var classNames =3D (value || "").split(rspace);=0A=
=0A=
			for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
				var elem =3D this[i];=0A=
=0A=
				if ( elem.nodeType =3D=3D=3D 1 && elem.className ) {=0A=
					if ( value ) {=0A=
						var className =3D (" " + elem.className + " ").replace(rclass, " =
");=0A=
						for ( var c =3D 0, cl =3D classNames.length; c < cl; c++ ) {=0A=
							className =3D className.replace(" " + classNames[c] + " ", " ");=0A=
						}=0A=
						elem.className =3D jQuery.trim( className );=0A=
=0A=
					} else {=0A=
						elem.className =3D "";=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	toggleClass: function( value, stateVal ) {=0A=
		var type =3D typeof value, isBool =3D typeof stateVal =3D=3D=3D =
"boolean";=0A=
=0A=
		if ( jQuery.isFunction( value ) ) {=0A=
			return this.each(function(i) {=0A=
				var self =3D jQuery(this);=0A=
				self.toggleClass( value.call(this, i, self.attr("class"), stateVal), =
stateVal );=0A=
			});=0A=
		}=0A=
=0A=
		return this.each(function() {=0A=
			if ( type =3D=3D=3D "string" ) {=0A=
				// toggle individual class names=0A=
				var className, i =3D 0, self =3D jQuery(this),=0A=
					state =3D stateVal,=0A=
					classNames =3D value.split( rspace );=0A=
=0A=
				while ( (className =3D classNames[ i++ ]) ) {=0A=
					// check each className given, space seperated list=0A=
					state =3D isBool ? state : !self.hasClass( className );=0A=
					self[ state ? "addClass" : "removeClass" ]( className );=0A=
				}=0A=
=0A=
			} else if ( type =3D=3D=3D "undefined" || type =3D=3D=3D "boolean" ) {=0A=
				if ( this.className ) {=0A=
					// store className if set=0A=
					jQuery.data( this, "__className__", this.className );=0A=
				}=0A=
=0A=
				// toggle whole className=0A=
				this.className =3D this.className || value =3D=3D=3D false ? "" : =
jQuery.data( this, "__className__" ) || "";=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	hasClass: function( selector ) {=0A=
		var className =3D " " + selector + " ";=0A=
		for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
			if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( =
className ) > -1 ) {=0A=
				return true;=0A=
			}=0A=
		}=0A=
=0A=
		return false;=0A=
	},=0A=
=0A=
	val: function( value ) {=0A=
		if ( value =3D=3D=3D undefined ) {=0A=
			var elem =3D this[0];=0A=
=0A=
			if ( elem ) {=0A=
				if ( jQuery.nodeName( elem, "option" ) ) {=0A=
					return (elem.attributes.value || {}).specified ? elem.value : =
elem.text;=0A=
				}=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=3D "select-one";=0A=
=0A=
					// Nothing was selected=0A=
					if ( index < 0 ) {=0A=
						return null;=0A=
					}=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(option).val();=0A=
=0A=
							// We don't need an array for one selects=0A=
							if ( one ) {=0A=
								return value;=0A=
							}=0A=
=0A=
							// Multi-Selects return an array=0A=
							values.push( value );=0A=
						}=0A=
					}=0A=
=0A=
					return values;=0A=
				}=0A=
=0A=
				// Handle the case where in Webkit "" is returned instead of "on" if =
a value isn't specified=0A=
				if ( rradiocheck.test( elem.type ) && !jQuery.support.checkOn ) {=0A=
					return elem.getAttribute("value") =3D=3D=3D null ? "on" : =
elem.value;=0A=
				}=0A=
				=0A=
=0A=
				// Everything else, we just grab the value=0A=
				return (elem.value || "").replace(rreturn, "");=0A=
=0A=
			}=0A=
=0A=
			return undefined;=0A=
		}=0A=
=0A=
		var isFunction =3D jQuery.isFunction(value);=0A=
=0A=
		return this.each(function(i) {=0A=
			var self =3D jQuery(this), val =3D value;=0A=
=0A=
			if ( this.nodeType !=3D=3D 1 ) {=0A=
				return;=0A=
			}=0A=
=0A=
			if ( isFunction ) {=0A=
				val =3D value.call(this, i, self.val());=0A=
			}=0A=
=0A=
			// Typecast each time if the value is a Function and the appended=0A=
			// value is therefore different each time.=0A=
			if ( typeof val =3D=3D=3D "number" ) {=0A=
				val +=3D "";=0A=
			}=0A=
=0A=
			if ( jQuery.isArray(val) && rradiocheck.test( this.type ) ) {=0A=
				this.checked =3D jQuery.inArray( self.val(), val ) >=3D 0;=0A=
=0A=
			} else if ( jQuery.nodeName( this, "select" ) ) {=0A=
				var values =3D jQuery.makeArray(val);=0A=
=0A=
				jQuery( "option", this ).each(function() {=0A=
					this.selected =3D jQuery.inArray( jQuery(this).val(), values ) >=3D =
0;=0A=
				});=0A=
=0A=
				if ( !values.length ) {=0A=
					this.selectedIndex =3D -1;=0A=
				}=0A=
=0A=
			} else {=0A=
				this.value =3D val;=0A=
			}=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	attrFn: {=0A=
		val: true,=0A=
		css: true,=0A=
		html: true,=0A=
		text: true,=0A=
		data: true,=0A=
		width: true,=0A=
		height: true,=0A=
		offset: true=0A=
	},=0A=
		=0A=
	attr: function( elem, name, value, pass ) {=0A=
		// don't set attributes on text and comment nodes=0A=
		if ( !elem || elem.nodeType =3D=3D=3D 3 || elem.nodeType =3D=3D=3D 8 ) =
{=0A=
			return undefined;=0A=
		}=0A=
=0A=
		if ( pass && name in jQuery.attrFn ) {=0A=
			return jQuery(elem)[name](value);=0A=
		}=0A=
=0A=
		var notxml =3D elem.nodeType !=3D=3D 1 || !jQuery.isXMLDoc( elem ),=0A=
			// Whether we are setting (or getting)=0A=
			set =3D value !=3D=3D undefined;=0A=
=0A=
		// Try to normalize/fix the name=0A=
		name =3D notxml && jQuery.props[ name ] || name;=0A=
=0A=
		// Only do all the following if this is a node (faster for style)=0A=
		if ( elem.nodeType =3D=3D=3D 1 ) {=0A=
			// These attributes require special treatment=0A=
			var special =3D rspecialurl.test( name );=0A=
=0A=
			// Safari mis-reports the default selected property of an option=0A=
			// Accessing the parent's selectedIndex property fixes it=0A=
			if ( name =3D=3D=3D "selected" && !jQuery.support.optSelected ) {=0A=
				var parent =3D elem.parentNode;=0A=
				if ( parent ) {=0A=
					parent.selectedIndex;=0A=
	=0A=
					// Make sure that it also works with optgroups, see #5701=0A=
					if ( parent.parentNode ) {=0A=
						parent.parentNode.selectedIndex;=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// If applicable, access the attribute via the DOM 0 way=0A=
			if ( name in elem && notxml && !special ) {=0A=
				if ( set ) {=0A=
					// We can't allow the type property to be changed (since it causes =
problems in IE)=0A=
					if ( name =3D=3D=3D "type" && rtype.test( elem.nodeName ) && =
elem.parentNode ) {=0A=
						jQuery.error( "type property can't be changed" );=0A=
					}=0A=
=0A=
					elem[ name ] =3D value;=0A=
				}=0A=
=0A=
				// browsers index elements by id/name on forms, give priority to =
attributes.=0A=
				if ( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) =
) {=0A=
					return elem.getAttributeNode( name ).nodeValue;=0A=
				}=0A=
=0A=
				// elem.tabIndex doesn't always return the correct value when it =
hasn't been explicitly set=0A=
				// =
http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabi=
ndex-values-with-javascript/=0A=
				if ( name =3D=3D=3D "tabIndex" ) {=0A=
					var attributeNode =3D elem.getAttributeNode( "tabIndex" );=0A=
=0A=
					return attributeNode && attributeNode.specified ?=0A=
						attributeNode.value :=0A=
						rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName =
) && elem.href ?=0A=
							0 :=0A=
							undefined;=0A=
				}=0A=
=0A=
				return elem[ name ];=0A=
			}=0A=
=0A=
			if ( !jQuery.support.style && notxml && name =3D=3D=3D "style" ) {=0A=
				if ( set ) {=0A=
					elem.style.cssText =3D "" + value;=0A=
				}=0A=
=0A=
				return elem.style.cssText;=0A=
			}=0A=
=0A=
			if ( set ) {=0A=
				// convert the value to a string (all browsers do this but IE) see =
#1070=0A=
				elem.setAttribute( name, "" + value );=0A=
			}=0A=
=0A=
			var attr =3D !jQuery.support.hrefNormalized && notxml && special ?=0A=
					// Some attributes require a special call on IE=0A=
					elem.getAttribute( name, 2 ) :=0A=
					elem.getAttribute( name );=0A=
=0A=
			// Non-existent attributes return null, we normalize to undefined=0A=
			return attr =3D=3D=3D null ? undefined : attr;=0A=
		}=0A=
=0A=
		// elem is actually elem.style ... set the style=0A=
		// Using attr for specific style information is now deprecated. Use =
style instead.=0A=
		return jQuery.style( elem, name, value );=0A=
	}=0A=
});=0A=
var rnamespaces =3D /\.(.*)$/,=0A=
	fcleanup =3D function( nm ) {=0A=
		return nm.replace(/[^\w\s\.\|`]/g, function( ch ) {=0A=
			return "\\" + ch;=0A=
		});=0A=
	};=0A=
=0A=
/*=0A=
 * A number of helper functions used for managing events.=0A=
 * Many of the ideas behind this code originated 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=3D 3 || elem.nodeType =3D=3D=3D 8 ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// For whatever reason, IE has trouble passing the window object=0A=
		// around, causing it to be cloned in the process=0A=
		if ( elem.setInterval && ( elem !=3D=3D window && !elem.frameElement ) =
) {=0A=
			elem =3D window;=0A=
		}=0A=
=0A=
		var handleObjIn, handleObj;=0A=
=0A=
		if ( handler.handler ) {=0A=
			handleObjIn =3D handler;=0A=
			handler =3D handleObjIn.handler;=0A=
		}=0A=
=0A=
		// Make sure that the function being executed has a unique ID=0A=
		if ( !handler.guid ) {=0A=
			handler.guid =3D jQuery.guid++;=0A=
		}=0A=
=0A=
		// Init the element's event structure=0A=
		var elemData =3D jQuery.data( elem );=0A=
=0A=
		// If no elemData is found then we must be trying to bind to one of the=0A=
		// banned noData elements=0A=
		if ( !elemData ) {=0A=
			return;=0A=
		}=0A=
=0A=
		var events =3D elemData.events =3D elemData.events || {},=0A=
			eventHandle =3D elemData.handle, eventHandle;=0A=
=0A=
		if ( !eventHandle ) {=0A=
			elemData.handle =3D eventHandle =3D function() {=0A=
				// Handle the second event of a trigger and when=0A=
				// an event is called after a page has unloaded=0A=
				return typeof jQuery !=3D=3D "undefined" && !jQuery.event.triggered ?=0A=
					jQuery.event.handle.apply( eventHandle.elem, arguments ) :=0A=
					undefined;=0A=
			};=0A=
		}=0A=
=0A=
		// Add elem as a property of the handle function=0A=
		// This is to prevent a memory leak with non-native events in IE.=0A=
		eventHandle.elem =3D elem;=0A=
=0A=
		// Handle multiple events separated by a space=0A=
		// jQuery(...).bind("mouseover mouseout", fn);=0A=
		types =3D types.split(" ");=0A=
=0A=
		var type, i =3D 0, namespaces;=0A=
=0A=
		while ( (type =3D types[ i++ ]) ) {=0A=
			handleObj =3D handleObjIn ?=0A=
				jQuery.extend({}, handleObjIn) :=0A=
				{ handler: handler, data: data };=0A=
=0A=
			// Namespaced event handlers=0A=
			if ( type.indexOf(".") > -1 ) {=0A=
				namespaces =3D type.split(".");=0A=
				type =3D namespaces.shift();=0A=
				handleObj.namespace =3D namespaces.slice(0).sort().join(".");=0A=
=0A=
			} else {=0A=
				namespaces =3D [];=0A=
				handleObj.namespace =3D "";=0A=
			}=0A=
=0A=
			handleObj.type =3D type;=0A=
			handleObj.guid =3D handler.guid;=0A=
=0A=
			// Get the current list of functions bound to this event=0A=
			var handlers =3D events[ type ],=0A=
				special =3D jQuery.event.special[ 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 ( !special.setup || special.setup.call( elem, data, namespaces, =
eventHandle ) =3D=3D=3D false ) {=0A=
					// Bind the global event handler to the element=0A=
					if ( elem.addEventListener ) {=0A=
						elem.addEventListener( type, eventHandle, false );=0A=
=0A=
					} else if ( elem.attachEvent ) {=0A=
						elem.attachEvent( "on" + type, eventHandle );=0A=
					}=0A=
				}=0A=
			}=0A=
			=0A=
			if ( special.add ) { =0A=
				special.add.call( elem, handleObj ); =0A=
=0A=
				if ( !handleObj.handler.guid ) {=0A=
					handleObj.handler.guid =3D handler.guid;=0A=
				}=0A=
			}=0A=
=0A=
			// Add the function to the element's handler list=0A=
			handlers.push( handleObj );=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=
	global: {},=0A=
=0A=
	// Detach an event or set of events from an element=0A=
	remove: function( elem, types, handler, pos ) {=0A=
		// don't do events on text and comment nodes=0A=
		if ( elem.nodeType =3D=3D=3D 3 || elem.nodeType =3D=3D=3D 8 ) {=0A=
			return;=0A=
		}=0A=
=0A=
		var ret, type, fn, i =3D 0, all, namespaces, namespace, special, =
eventType, handleObj, origType,=0A=
			elemData =3D jQuery.data( elem ),=0A=
			events =3D elemData && elemData.events;=0A=
=0A=
		if ( !elemData || !events ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// types is actually an event object here=0A=
		if ( types && types.type ) {=0A=
			handler =3D types.handler;=0A=
			types =3D types.type;=0A=
		}=0A=
=0A=
		// Unbind all events for the element=0A=
		if ( !types || typeof types =3D=3D=3D "string" && types.charAt(0) =
=3D=3D=3D "." ) {=0A=
			types =3D types || "";=0A=
=0A=
			for ( type in events ) {=0A=
				jQuery.event.remove( elem, type + types );=0A=
			}=0A=
=0A=
			return;=0A=
		}=0A=
=0A=
		// Handle multiple events separated by a space=0A=
		// jQuery(...).unbind("mouseover mouseout", fn);=0A=
		types =3D types.split(" ");=0A=
=0A=
		while ( (type =3D types[ i++ ]) ) {=0A=
			origType =3D type;=0A=
			handleObj =3D null;=0A=
			all =3D type.indexOf(".") < 0;=0A=
			namespaces =3D [];=0A=
=0A=
			if ( !all ) {=0A=
				// Namespaced event handlers=0A=
				namespaces =3D type.split(".");=0A=
				type =3D namespaces.shift();=0A=
=0A=
				namespace =3D new RegExp("(^|\\.)" + =0A=
					jQuery.map( namespaces.slice(0).sort(), fcleanup =
).join("\\.(?:.*\\.)?") + "(\\.|$)")=0A=
			}=0A=
=0A=
			eventType =3D events[ type ];=0A=
=0A=
			if ( !eventType ) {=0A=
				continue;=0A=
			}=0A=
=0A=
			if ( !handler ) {=0A=
				for ( var j =3D 0; j < eventType.length; j++ ) {=0A=
					handleObj =3D eventType[ j ];=0A=
=0A=
					if ( all || namespace.test( handleObj.namespace ) ) {=0A=
						jQuery.event.remove( elem, origType, handleObj.handler, j );=0A=
						eventType.splice( j--, 1 );=0A=
					}=0A=
				}=0A=
=0A=
				continue;=0A=
			}=0A=
=0A=
			special =3D jQuery.event.special[ type ] || {};=0A=
=0A=
			for ( var j =3D pos || 0; j < eventType.length; j++ ) {=0A=
				handleObj =3D eventType[ j ];=0A=
=0A=
				if ( handler.guid =3D=3D=3D handleObj.guid ) {=0A=
					// remove the given handler for the given type=0A=
					if ( all || namespace.test( handleObj.namespace ) ) {=0A=
						if ( pos =3D=3D null ) {=0A=
							eventType.splice( j--, 1 );=0A=
						}=0A=
=0A=
						if ( special.remove ) {=0A=
							special.remove.call( elem, handleObj );=0A=
						}=0A=
					}=0A=
=0A=
					if ( pos !=3D null ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// remove generic event handler if no more handlers exist=0A=
			if ( eventType.length =3D=3D=3D 0 || pos !=3D null && =
eventType.length =3D=3D=3D 1 ) {=0A=
				if ( !special.teardown || special.teardown.call( elem, namespaces ) =
=3D=3D=3D false ) {=0A=
					removeEvent( elem, type, elemData.handle );=0A=
				}=0A=
=0A=
				ret =3D null;=0A=
				delete events[ type ];=0A=
			}=0A=
		}=0A=
=0A=
		// Remove the expando if it's no longer used=0A=
		if ( jQuery.isEmptyObject( events ) ) {=0A=
			var handle =3D elemData.handle;=0A=
			if ( handle ) {=0A=
				handle.elem =3D null;=0A=
			}=0A=
=0A=
			delete elemData.events;=0A=
			delete elemData.handle;=0A=
=0A=
			if ( jQuery.isEmptyObject( elemData ) ) {=0A=
				jQuery.removeData( elem );=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	// bubbling is internal=0A=
	trigger: function( event, data, elem /*, bubbling */ ) {=0A=
		// Event object or event type=0A=
		var type =3D event.type || event,=0A=
			bubbling =3D arguments[3];=0A=
=0A=
		if ( !bubbling ) {=0A=
			event =3D typeof event =3D=3D=3D "object" ?=0A=
				// jQuery.Event object=0A=
				event[expando] ? event :=0A=
				// Object literal=0A=
				jQuery.extend( jQuery.Event(type), event ) :=0A=
				// Just the event type (string)=0A=
				jQuery.Event(type);=0A=
=0A=
			if ( type.indexOf("!") >=3D 0 ) {=0A=
				event.type =3D type =3D type.slice(0, -1);=0A=
				event.exclusive =3D true;=0A=
			}=0A=
=0A=
			// Handle a global trigger=0A=
			if ( !elem ) {=0A=
				// Don't bubble custom events when global (to avoid too much =
overhead)=0A=
				event.stopPropagation();=0A=
=0A=
				// Only trigger if we've ever bound an event for it=0A=
				if ( jQuery.event.global[ type ] ) {=0A=
					jQuery.each( jQuery.cache, function() {=0A=
						if ( this.events && this.events[type] ) {=0A=
							jQuery.event.trigger( event, data, this.handle.elem );=0A=
						}=0A=
					});=0A=
				}=0A=
			}=0A=
=0A=
			// Handle triggering a single element=0A=
=0A=
			// don't do events on text and comment nodes=0A=
			if ( !elem || elem.nodeType =3D=3D=3D 3 || elem.nodeType =3D=3D=3D 8 =
) {=0A=
				return undefined;=0A=
			}=0A=
=0A=
			// Clean up in case it is reused=0A=
			event.result =3D undefined;=0A=
			event.target =3D elem;=0A=
=0A=
			// Clone the incoming data, if any=0A=
			data =3D jQuery.makeArray( data );=0A=
			data.unshift( event );=0A=
		}=0A=
=0A=
		event.currentTarget =3D elem;=0A=
=0A=
		// Trigger the event, it is assumed that "handle" is a function=0A=
		var handle =3D jQuery.data( elem, "handle" );=0A=
		if ( handle ) {=0A=
			handle.apply( elem, data );=0A=
		}=0A=
=0A=
		var parent =3D elem.parentNode || elem.ownerDocument;=0A=
=0A=
		// Trigger an inline bound script=0A=
		try {=0A=
			if ( !(elem && elem.nodeName && =
jQuery.noData[elem.nodeName.toLowerCase()]) ) {=0A=
				if ( elem[ "on" + type ] && elem[ "on" + type ].apply( elem, data ) =
=3D=3D=3D false ) {=0A=
					event.result =3D false;=0A=
				}=0A=
			}=0A=
=0A=
		// prevent IE from throwing an error for some elements with some event =
types, see #3533=0A=
		} catch (e) {}=0A=
=0A=
		if ( !event.isPropagationStopped() && parent ) {=0A=
			jQuery.event.trigger( event, data, parent, true );=0A=
=0A=
		} else if ( !event.isDefaultPrevented() ) {=0A=
			var target =3D event.target, old,=0A=
				isClick =3D jQuery.nodeName(target, "a") && type =3D=3D=3D "click",=0A=
				special =3D jQuery.event.special[ type ] || {};=0A=
=0A=
			if ( (!special._default || special._default.call( elem, event ) =
=3D=3D=3D false) && =0A=
				!isClick && !(target && target.nodeName && =
jQuery.noData[target.nodeName.toLowerCase()]) ) {=0A=
=0A=
				try {=0A=
					if ( target[ type ] ) {=0A=
						// Make sure that we don't accidentally re-trigger the onFOO events=0A=
						old =3D target[ "on" + type ];=0A=
=0A=
						if ( old ) {=0A=
							target[ "on" + type ] =3D null;=0A=
						}=0A=
=0A=
						jQuery.event.triggered =3D true;=0A=
						target[ type ]();=0A=
					}=0A=
=0A=
				// prevent IE from throwing an error for some elements with some =
event types, see #3533=0A=
				} catch (e) {}=0A=
=0A=
				if ( old ) {=0A=
					target[ "on" + type ] =3D old;=0A=
				}=0A=
=0A=
				jQuery.event.triggered =3D false;=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	handle: function( event ) {=0A=
		var all, handlers, namespaces, namespace, events;=0A=
=0A=
		event =3D arguments[0] =3D jQuery.event.fix( event || window.event );=0A=
		event.currentTarget =3D this;=0A=
=0A=
		// Namespaced event handlers=0A=
		all =3D event.type.indexOf(".") < 0 && !event.exclusive;=0A=
=0A=
		if ( !all ) {=0A=
			namespaces =3D event.type.split(".");=0A=
			event.type =3D namespaces.shift();=0A=
			namespace =3D new RegExp("(^|\\.)" + =
namespaces.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)");=0A=
		}=0A=
=0A=
		var events =3D jQuery.data(this, "events"), handlers =3D events[ =
event.type ];=0A=
=0A=
		if ( events && handlers ) {=0A=
			// Clone the handlers to prevent manipulation=0A=
			handlers =3D handlers.slice(0);=0A=
=0A=
			for ( var j =3D 0, l =3D handlers.length; j < l; j++ ) {=0A=
				var handleObj =3D handlers[ j ];=0A=
=0A=
				// Filter the functions by class=0A=
				if ( all || namespace.test( handleObj.namespace ) ) {=0A=
					// Pass in a reference to the handler function itself=0A=
					// So that we can later remove it=0A=
					event.handler =3D handleObj.handler;=0A=
					event.data =3D handleObj.data;=0A=
					event.handleObj =3D handleObj;=0A=
	=0A=
					var ret =3D handleObj.handler.apply( this, arguments );=0A=
=0A=
					if ( ret !=3D=3D undefined ) {=0A=
						event.result =3D ret;=0A=
						if ( ret =3D=3D=3D false ) {=0A=
							event.preventDefault();=0A=
							event.stopPropagation();=0A=
						}=0A=
					}=0A=
=0A=
					if ( event.isImmediatePropagationStopped() ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return event.result;=0A=
	},=0A=
=0A=
	props: "altKey attrChange attrName bubbles button cancelable charCode =
clientX clientY ctrlKey currentTarget data detail eventPhase fromElement =
handler keyCode layerX layerY metaKey newValue offsetX offsetY =
originalTarget pageX pageY prevValue relatedNode relatedTarget screenX =
screenY shiftKey srcElement target toElement view wheelDelta =
which".split(" "),=0A=
=0A=
	fix: function( event ) {=0A=
		if ( event[ expando ] ) {=0A=
			return event;=0A=
		}=0A=
=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.Event( originalEvent );=0A=
=0A=
		for ( var i =3D this.props.length, prop; i; ) {=0A=
			prop =3D this.props[ --i ];=0A=
			event[ prop ] =3D originalEvent[ prop ];=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=
=0A=
		// check if target is a textnode (safari)=0A=
		if ( event.target.nodeType =3D=3D=3D 3 ) {=0A=
			event.target =3D event.target.parentNode;=0A=
		}=0A=
=0A=
		// Add relatedTarget, if necessary=0A=
		if ( !event.relatedTarget && event.fromElement ) {=0A=
			event.relatedTarget =3D event.fromElement =3D=3D=3D event.target ? =
event.toElement : event.fromElement;=0A=
		}=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 && doc.clientLeft || body && =
body.clientLeft || 0);=0A=
			event.pageY =3D event.clientY + (doc && doc.scrollTop  || body && =
body.scrollTop  || 0) - (doc && doc.clientTop  || body && body.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=
=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=
=0A=
		// Add which for click: 1 =3D=3D=3D left; 2 =3D=3D=3D middle; 3 =
=3D=3D=3D right=0A=
		// Note: button is not normalized, so don't use it=0A=
		if ( !event.which && event.button !=3D=3D undefined ) {=0A=
			event.which =3D (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( =
event.button & 4 ? 2 : 0 ) ));=0A=
		}=0A=
=0A=
		return event;=0A=
	},=0A=
=0A=
	// Deprecated, use jQuery.guid instead=0A=
	guid: 1E8,=0A=
=0A=
	// Deprecated, use jQuery.proxy instead=0A=
	proxy: jQuery.proxy,=0A=
=0A=
	special: {=0A=
		ready: {=0A=
			// Make sure the ready event is setup=0A=
			setup: jQuery.bindReady,=0A=
			teardown: jQuery.noop=0A=
		},=0A=
=0A=
		live: {=0A=
			add: function( handleObj ) {=0A=
				jQuery.event.add( this, handleObj.origType, jQuery.extend({}, =
handleObj, {handler: liveHandler}) ); =0A=
			},=0A=
=0A=
			remove: function( handleObj ) {=0A=
				var remove =3D true,=0A=
					type =3D handleObj.origType.replace(rnamespaces, "");=0A=
				=0A=
				jQuery.each( jQuery.data(this, "events").live || [], function() {=0A=
					if ( type =3D=3D=3D this.origType.replace(rnamespaces, "") ) {=0A=
						remove =3D false;=0A=
						return false;=0A=
					}=0A=
				});=0A=
=0A=
				if ( remove ) {=0A=
					jQuery.event.remove( this, handleObj.origType, liveHandler );=0A=
				}=0A=
			}=0A=
=0A=
		},=0A=
=0A=
		beforeunload: {=0A=
			setup: function( data, namespaces, eventHandle ) {=0A=
				// We only want to do this special case on windows=0A=
				if ( this.setInterval ) {=0A=
					this.onbeforeunload =3D eventHandle;=0A=
				}=0A=
=0A=
				return false;=0A=
			},=0A=
			teardown: function( namespaces, eventHandle ) {=0A=
				if ( this.onbeforeunload =3D=3D=3D eventHandle ) {=0A=
					this.onbeforeunload =3D null;=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
var removeEvent =3D document.removeEventListener ?=0A=
	function( elem, type, handle ) {=0A=
		elem.removeEventListener( type, handle, false );=0A=
	} : =0A=
	function( elem, type, handle ) {=0A=
		elem.detachEvent( "on" + type, handle );=0A=
	};=0A=
=0A=
jQuery.Event =3D function( src ) {=0A=
	// Allow instantiation without the 'new' keyword=0A=
	if ( !this.preventDefault ) {=0A=
		return new jQuery.Event( src );=0A=
	}=0A=
=0A=
	// Event object=0A=
	if ( src && src.type ) {=0A=
		this.originalEvent =3D src;=0A=
		this.type =3D src.type;=0A=
	// Event type=0A=
	} else {=0A=
		this.type =3D src;=0A=
	}=0A=
=0A=
	// timeStamp is buggy for some events on Firefox(#3843)=0A=
	// So we won't rely on the native value=0A=
	this.timeStamp =3D now();=0A=
=0A=
	// Mark it as fixed=0A=
	this[ expando ] =3D true;=0A=
};=0A=
=0A=
function returnFalse() {=0A=
	return false;=0A=
}=0A=
function returnTrue() {=0A=
	return true;=0A=
}=0A=
=0A=
// jQuery.Event is based on DOM3 Events as specified by the ECMAScript =
Language Binding=0A=
// =
http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-bind=
ing.html=0A=
jQuery.Event.prototype =3D {=0A=
	preventDefault: function() {=0A=
		this.isDefaultPrevented =3D returnTrue;=0A=
=0A=
		var e =3D this.originalEvent;=0A=
		if ( !e ) {=0A=
			return;=0A=
		}=0A=
		=0A=
		// if preventDefault exists run it on the original event=0A=
		if ( e.preventDefault ) {=0A=
			e.preventDefault();=0A=
		}=0A=
		// otherwise set the returnValue property of the original event to =
false (IE)=0A=
		e.returnValue =3D false;=0A=
	},=0A=
	stopPropagation: function() {=0A=
		this.isPropagationStopped =3D returnTrue;=0A=
=0A=
		var e =3D this.originalEvent;=0A=
		if ( !e ) {=0A=
			return;=0A=
		}=0A=
		// if stopPropagation exists run it on the original event=0A=
		if ( e.stopPropagation ) {=0A=
			e.stopPropagation();=0A=
		}=0A=
		// otherwise set the cancelBubble property of the original event to =
true (IE)=0A=
		e.cancelBubble =3D true;=0A=
	},=0A=
	stopImmediatePropagation: function() {=0A=
		this.isImmediatePropagationStopped =3D returnTrue;=0A=
		this.stopPropagation();=0A=
	},=0A=
	isDefaultPrevented: returnFalse,=0A=
	isPropagationStopped: returnFalse,=0A=
	isImmediatePropagationStopped: returnFalse=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 ) {=0A=
	// Check if mouse(over|out) are still within the same parent element=0A=
	var parent =3D event.relatedTarget;=0A=
=0A=
	// Firefox sometimes assigns relatedTarget a XUL element=0A=
	// which we cannot access the parentNode property of=0A=
	try {=0A=
		// Traverse up the tree=0A=
		while ( parent && parent !=3D=3D this ) {=0A=
			parent =3D parent.parentNode;=0A=
		}=0A=
=0A=
		if ( parent !=3D=3D this ) {=0A=
			// set the correct event type=0A=
			event.type =3D event.data;=0A=
=0A=
			// handle event if we actually just moused on to a non sub-element=0A=
			jQuery.event.handle.apply( this, arguments );=0A=
		}=0A=
=0A=
	// assuming we've left the element since we most likely mousedover a =
xul element=0A=
	} catch(e) { }=0A=
},=0A=
=0A=
// In case of event delegation, we only need to rename the event.type,=0A=
// liveHandler will take care of the rest.=0A=
delegate =3D function( event ) {=0A=
	event.type =3D event.data;=0A=
	jQuery.event.handle.apply( this, arguments );=0A=
};=0A=
=0A=
// Create mouseenter and mouseleave events=0A=
jQuery.each({=0A=
	mouseenter: "mouseover",=0A=
	mouseleave: "mouseout"=0A=
}, function( orig, fix ) {=0A=
	jQuery.event.special[ orig ] =3D {=0A=
		setup: function( data ) {=0A=
			jQuery.event.add( this, fix, data && data.selector ? delegate : =
withinElement, orig );=0A=
		},=0A=
		teardown: function( data ) {=0A=
			jQuery.event.remove( this, fix, data && data.selector ? delegate : =
withinElement );=0A=
		}=0A=
	};=0A=
});=0A=
=0A=
// submit delegation=0A=
if ( !jQuery.support.submitBubbles ) {=0A=
=0A=
	jQuery.event.special.submit =3D {=0A=
		setup: function( data, namespaces ) {=0A=
			if ( this.nodeName.toLowerCase() !=3D=3D "form" ) {=0A=
				jQuery.event.add(this, "click.specialSubmit", function( e ) {=0A=
					var elem =3D e.target, type =3D elem.type;=0A=
=0A=
					if ( (type =3D=3D=3D "submit" || type =3D=3D=3D "image") && jQuery( =
elem ).closest("form").length ) {=0A=
						return trigger( "submit", this, arguments );=0A=
					}=0A=
				});=0A=
	 =0A=
				jQuery.event.add(this, "keypress.specialSubmit", function( e ) {=0A=
					var elem =3D e.target, type =3D elem.type;=0A=
=0A=
					if ( (type =3D=3D=3D "text" || type =3D=3D=3D "password") && =
jQuery( elem ).closest("form").length && e.keyCode =3D=3D=3D 13 ) {=0A=
						return trigger( "submit", this, arguments );=0A=
					}=0A=
				});=0A=
=0A=
			} else {=0A=
				return false;=0A=
			}=0A=
		},=0A=
=0A=
		teardown: function( namespaces ) {=0A=
			jQuery.event.remove( this, ".specialSubmit" );=0A=
		}=0A=
	};=0A=
=0A=
}=0A=
=0A=
// change delegation, happens here so we have bind.=0A=
if ( !jQuery.support.changeBubbles ) {=0A=
=0A=
	var formElems =3D /textarea|input|select/i,=0A=
=0A=
	changeFilters,=0A=
=0A=
	getVal =3D function( elem ) {=0A=
		var type =3D elem.type, val =3D elem.value;=0A=
=0A=
		if ( type =3D=3D=3D "radio" || type =3D=3D=3D "checkbox" ) {=0A=
			val =3D elem.checked;=0A=
=0A=
		} else if ( type =3D=3D=3D "select-multiple" ) {=0A=
			val =3D elem.selectedIndex > -1 ?=0A=
				jQuery.map( elem.options, function( elem ) {=0A=
					return elem.selected;=0A=
				}).join("-") :=0A=
				"";=0A=
=0A=
		} else if ( elem.nodeName.toLowerCase() =3D=3D=3D "select" ) {=0A=
			val =3D elem.selectedIndex;=0A=
		}=0A=
=0A=
		return val;=0A=
	},=0A=
=0A=
	testChange =3D function testChange( e ) {=0A=
		var elem =3D e.target, data, val;=0A=
=0A=
		if ( !formElems.test( elem.nodeName ) || elem.readOnly ) {=0A=
			return;=0A=
		}=0A=
=0A=
		data =3D jQuery.data( elem, "_change_data" );=0A=
		val =3D getVal(elem);=0A=
=0A=
		// the current data will be also retrieved by beforeactivate=0A=
		if ( e.type !=3D=3D "focusout" || elem.type !=3D=3D "radio" ) {=0A=
			jQuery.data( elem, "_change_data", val );=0A=
		}=0A=
		=0A=
		if ( data =3D=3D=3D undefined || val =3D=3D=3D data ) {=0A=
			return;=0A=
		}=0A=
=0A=
		if ( data !=3D null || val ) {=0A=
			e.type =3D "change";=0A=
			return jQuery.event.trigger( e, arguments[1], elem );=0A=
		}=0A=
	};=0A=
=0A=
	jQuery.event.special.change =3D {=0A=
		filters: {=0A=
			focusout: testChange, =0A=
=0A=
			click: function( e ) {=0A=
				var elem =3D e.target, type =3D elem.type;=0A=
=0A=
				if ( type =3D=3D=3D "radio" || type =3D=3D=3D "checkbox" || =
elem.nodeName.toLowerCase() =3D=3D=3D "select" ) {=0A=
					return testChange.call( this, e );=0A=
				}=0A=
			},=0A=
=0A=
			// Change has to be called before submit=0A=
			// Keydown will be called before keypress, which is used in =
submit-event delegation=0A=
			keydown: function( e ) {=0A=
				var elem =3D e.target, type =3D elem.type;=0A=
=0A=
				if ( (e.keyCode =3D=3D=3D 13 && elem.nodeName.toLowerCase() !=3D=3D =
"textarea") ||=0A=
					(e.keyCode =3D=3D=3D 32 && (type =3D=3D=3D "checkbox" || type =
=3D=3D=3D "radio")) ||=0A=
					type =3D=3D=3D "select-multiple" ) {=0A=
					return testChange.call( this, e );=0A=
				}=0A=
			},=0A=
=0A=
			// Beforeactivate happens also before the previous element is blurred=0A=
			// with this event you can't trigger a change event, but you can store=0A=
			// information/focus[in] is not needed anymore=0A=
			beforeactivate: function( e ) {=0A=
				var elem =3D e.target;=0A=
				jQuery.data( elem, "_change_data", getVal(elem) );=0A=
			}=0A=
		},=0A=
=0A=
		setup: function( data, namespaces ) {=0A=
			if ( this.type =3D=3D=3D "file" ) {=0A=
				return false;=0A=
			}=0A=
=0A=
			for ( var type in changeFilters ) {=0A=
				jQuery.event.add( this, type + ".specialChange", changeFilters[type] =
);=0A=
			}=0A=
=0A=
			return formElems.test( this.nodeName );=0A=
		},=0A=
=0A=
		teardown: function( namespaces ) {=0A=
			jQuery.event.remove( this, ".specialChange" );=0A=
=0A=
			return formElems.test( this.nodeName );=0A=
		}=0A=
	};=0A=
=0A=
	changeFilters =3D jQuery.event.special.change.filters;=0A=
}=0A=
=0A=
function trigger( type, elem, args ) {=0A=
	args[0].type =3D type;=0A=
	return jQuery.event.handle.apply( elem, args );=0A=
}=0A=
=0A=
// Create "bubbling" focus and blur events=0A=
if ( document.addEventListener ) {=0A=
	jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix =
) {=0A=
		jQuery.event.special[ fix ] =3D {=0A=
			setup: function() {=0A=
				this.addEventListener( orig, handler, true );=0A=
			}, =0A=
			teardown: function() { =0A=
				this.removeEventListener( orig, handler, true );=0A=
			}=0A=
		};=0A=
=0A=
		function handler( e ) { =0A=
			e =3D jQuery.event.fix( e );=0A=
			e.type =3D fix;=0A=
			return jQuery.event.handle.call( this, e );=0A=
		}=0A=
	});=0A=
}=0A=
=0A=
jQuery.each(["bind", "one"], function( i, name ) {=0A=
	jQuery.fn[ name ] =3D function( type, data, fn ) {=0A=
		// Handle object literals=0A=
		if ( typeof type =3D=3D=3D "object" ) {=0A=
			for ( var key in type ) {=0A=
				this[ name ](key, data, type[key], fn);=0A=
			}=0A=
			return this;=0A=
		}=0A=
		=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			fn =3D data;=0A=
			data =3D undefined;=0A=
		}=0A=
=0A=
		var handler =3D name =3D=3D=3D "one" ? jQuery.proxy( fn, function( =
event ) {=0A=
			jQuery( this ).unbind( event, handler );=0A=
			return fn.apply( this, arguments );=0A=
		}) : fn;=0A=
=0A=
		if ( type =3D=3D=3D "unload" && name !=3D=3D "one" ) {=0A=
			this.one( type, data, fn );=0A=
=0A=
		} else {=0A=
			for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
				jQuery.event.add( this[i], type, handler, data );=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	};=0A=
});=0A=
=0A=
jQuery.fn.extend({=0A=
	unbind: function( type, fn ) {=0A=
		// Handle object literals=0A=
		if ( typeof type =3D=3D=3D "object" && !type.preventDefault ) {=0A=
			for ( var key in type ) {=0A=
				this.unbind(key, type[key]);=0A=
			}=0A=
=0A=
		} else {=0A=
			for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
				jQuery.event.remove( this[i], type, fn );=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
	=0A=
	delegate: function( selector, types, data, fn ) {=0A=
		return this.live( types, data, fn, selector );=0A=
	},=0A=
	=0A=
	undelegate: function( selector, types, fn ) {=0A=
		if ( arguments.length =3D=3D=3D 0 ) {=0A=
				return this.unbind( "live" );=0A=
		=0A=
		} else {=0A=
			return this.die( types, null, fn, selector );=0A=
		}=0A=
	},=0A=
	=0A=
	trigger: function( type, data ) {=0A=
		return this.each(function() {=0A=
			jQuery.event.trigger( type, data, this );=0A=
		});=0A=
	},=0A=
=0A=
	triggerHandler: function( type, data ) {=0A=
		if ( this[0] ) {=0A=
			var event =3D jQuery.Event( type );=0A=
			event.preventDefault();=0A=
			event.stopPropagation();=0A=
			jQuery.event.trigger( event, data, this[0] );=0A=
			return event.result;=0A=
		}=0A=
	},=0A=
=0A=
	toggle: function( fn ) {=0A=
		// Save reference to arguments for access in closure=0A=
		var args =3D arguments, i =3D 1;=0A=
=0A=
		// link all the functions, so any of them can unbind this click handler=0A=
		while ( i < args.length ) {=0A=
			jQuery.proxy( fn, args[ i++ ] );=0A=
		}=0A=
=0A=
		return this.click( jQuery.proxy( fn, function( event ) {=0A=
			// Figure out which function to execute=0A=
			var lastToggle =3D ( jQuery.data( this, "lastToggle" + fn.guid ) || 0 =
) % i;=0A=
			jQuery.data( this, "lastToggle" + fn.guid, lastToggle + 1 );=0A=
=0A=
			// Make sure that clicks stop=0A=
			event.preventDefault();=0A=
=0A=
			// and execute the function=0A=
			return args[ lastToggle ].apply( this, arguments ) || false;=0A=
		}));=0A=
	},=0A=
=0A=
	hover: function( fnOver, fnOut ) {=0A=
		return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );=0A=
	}=0A=
});=0A=
=0A=
var liveMap =3D {=0A=
	focus: "focusin",=0A=
	blur: "focusout",=0A=
	mouseenter: "mouseover",=0A=
	mouseleave: "mouseout"=0A=
};=0A=
=0A=
jQuery.each(["live", "die"], function( i, name ) {=0A=
	jQuery.fn[ name ] =3D function( types, data, fn, origSelector /* =
Internal Use Only */ ) {=0A=
		var type, i =3D 0, match, namespaces, preType,=0A=
			selector =3D origSelector || this.selector,=0A=
			context =3D origSelector ? this : jQuery( this.context );=0A=
=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			fn =3D data;=0A=
			data =3D undefined;=0A=
		}=0A=
=0A=
		types =3D (types || "").split(" ");=0A=
=0A=
		while ( (type =3D types[ i++ ]) !=3D null ) {=0A=
			match =3D rnamespaces.exec( type );=0A=
			namespaces =3D "";=0A=
=0A=
			if ( match )  {=0A=
				namespaces =3D match[0];=0A=
				type =3D type.replace( rnamespaces, "" );=0A=
			}=0A=
=0A=
			if ( type =3D=3D=3D "hover" ) {=0A=
				types.push( "mouseenter" + namespaces, "mouseleave" + namespaces );=0A=
				continue;=0A=
			}=0A=
=0A=
			preType =3D type;=0A=
=0A=
			if ( type =3D=3D=3D "focus" || type =3D=3D=3D "blur" ) {=0A=
				types.push( liveMap[ type ] + namespaces );=0A=
				type =3D type + namespaces;=0A=
=0A=
			} else {=0A=
				type =3D (liveMap[ type ] || type) + namespaces;=0A=
			}=0A=
=0A=
			if ( name =3D=3D=3D "live" ) {=0A=
				// bind live handler=0A=
				context.each(function(){=0A=
					jQuery.event.add( this, liveConvert( type, selector ),=0A=
						{ data: data, selector: selector, handler: fn, origType: type, =
origHandler: fn, preType: preType } );=0A=
				});=0A=
=0A=
			} else {=0A=
				// unbind live handler=0A=
				context.unbind( liveConvert( type, selector ), fn );=0A=
			}=0A=
		}=0A=
		=0A=
		return this;=0A=
	}=0A=
});=0A=
=0A=
function liveHandler( event ) {=0A=
	var stop, elems =3D [], selectors =3D [], args =3D arguments,=0A=
		related, match, handleObj, elem, j, i, l, data,=0A=
		events =3D jQuery.data( this, "events" );=0A=
=0A=
	// Make sure we avoid non-left-click bubbling in Firefox (#3861)=0A=
	if ( event.liveFired =3D=3D=3D this || !events || !events.live || =
event.button && event.type =3D=3D=3D "click" ) {=0A=
		return;=0A=
	}=0A=
=0A=
	event.liveFired =3D this;=0A=
=0A=
	var live =3D events.live.slice(0);=0A=
=0A=
	for ( j =3D 0; j < live.length; j++ ) {=0A=
		handleObj =3D live[j];=0A=
=0A=
		if ( handleObj.origType.replace( rnamespaces, "" ) =3D=3D=3D =
event.type ) {=0A=
			selectors.push( handleObj.selector );=0A=
=0A=
		} else {=0A=
			live.splice( j--, 1 );=0A=
		}=0A=
	}=0A=
=0A=
	match =3D jQuery( event.target ).closest( selectors, =
event.currentTarget );=0A=
=0A=
	for ( i =3D 0, l =3D match.length; i < l; i++ ) {=0A=
		for ( j =3D 0; j < live.length; j++ ) {=0A=
			handleObj =3D live[j];=0A=
=0A=
			if ( match[i].selector =3D=3D=3D handleObj.selector ) {=0A=
				elem =3D match[i].elem;=0A=
				related =3D null;=0A=
=0A=
				// Those two events require additional checking=0A=
				if ( handleObj.preType =3D=3D=3D "mouseenter" || handleObj.preType =
=3D=3D=3D "mouseleave" ) {=0A=
					related =3D jQuery( event.relatedTarget ).closest( =
handleObj.selector )[0];=0A=
				}=0A=
=0A=
				if ( !related || related !=3D=3D elem ) {=0A=
					elems.push({ elem: elem, handleObj: handleObj });=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	for ( i =3D 0, l =3D elems.length; i < l; i++ ) {=0A=
		match =3D elems[i];=0A=
		event.currentTarget =3D match.elem;=0A=
		event.data =3D match.handleObj.data;=0A=
		event.handleObj =3D match.handleObj;=0A=
=0A=
		if ( match.handleObj.origHandler.apply( match.elem, args ) =3D=3D=3D =
false ) {=0A=
			stop =3D false;=0A=
			break;=0A=
		}=0A=
	}=0A=
=0A=
	return stop;=0A=
}=0A=
=0A=
function liveConvert( type, selector ) {=0A=
	return "live." + (type && type !=3D=3D "*" ? type + "." : "") + =
selector.replace(/\./g, "`").replace(/ /g, "&");=0A=
}=0A=
=0A=
jQuery.each( ("blur focus focusin focusout load resize scroll unload =
click dblclick " +=0A=
	"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " =
+=0A=
	"change select 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=
	if ( jQuery.attrFn ) {=0A=
		jQuery.attrFn[ name ] =3D true;=0A=
	}=0A=
});=0A=
=0A=
// Prevent memory leaks in IE=0A=
// Window isn't included so as not to unbind existing unload events=0A=
// More info:=0A=
//  - http://isaacschlueter.com/2006/10/msie-memory-leaks/=0A=
if ( window.attachEvent && !window.addEventListener ) {=0A=
	window.attachEvent("onunload", function() {=0A=
		for ( var id in jQuery.cache ) {=0A=
			if ( jQuery.cache[ id ].handle ) {=0A=
				// Try/Catch is to handle iframes being unloaded, see #4280=0A=
				try {=0A=
					jQuery.event.remove( jQuery.cache[ id ].handle.elem );=0A=
				} catch(e) {}=0A=
			}=0A=
		}=0A=
	});=0A=
}=0A=
/*!=0A=
 * Sizzle CSS Selector Engine - v1.0=0A=
 *  Copyright 2009, The Dojo Foundation=0A=
 *  Released under the MIT, BSD, and GPL Licenses.=0A=
 *  More information: http://sizzlejs.com/=0A=
 */=0A=
(function(){=0A=
=0A=
var chunker =3D =
/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+=
)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,=0A=
	done =3D 0,=0A=
	toString =3D Object.prototype.toString,=0A=
	hasDuplicate =3D false,=0A=
	baseHasDuplicate =3D true;=0A=
=0A=
// Here we check if the JavaScript engine is using some sort of=0A=
// optimization where it does not always call our comparision=0A=
// function. If that is the case, discard the hasDuplicate value.=0A=
//   Thus far that includes Google Chrome.=0A=
[0, 0].sort(function(){=0A=
	baseHasDuplicate =3D false;=0A=
	return 0;=0A=
});=0A=
=0A=
var Sizzle =3D function(selector, context, results, seed) {=0A=
	results =3D results || [];=0A=
	var origContext =3D context =3D context || document;=0A=
=0A=
	if ( context.nodeType !=3D=3D 1 && context.nodeType !=3D=3D 9 ) {=0A=
		return [];=0A=
	}=0A=
	=0A=
	if ( !selector || typeof selector !=3D=3D "string" ) {=0A=
		return results;=0A=
	}=0A=
=0A=
	var parts =3D [], m, set, checkSet, extra, prune =3D true, contextXML =
=3D isXML(context),=0A=
		soFar =3D selector;=0A=
	=0A=
	// Reset the position of the chunker regexp (start from head)=0A=
	while ( (chunker.exec(""), m =3D chunker.exec(soFar)) !=3D=3D null ) {=0A=
		soFar =3D m[3];=0A=
		=0A=
		parts.push( m[1] );=0A=
		=0A=
		if ( m[2] ) {=0A=
			extra =3D m[3];=0A=
			break;=0A=
		}=0A=
	}=0A=
=0A=
	if ( parts.length > 1 && origPOS.exec( selector ) ) {=0A=
		if ( parts.length =3D=3D=3D 2 && Expr.relative[ parts[0] ] ) {=0A=
			set =3D posProcess( parts[0] + parts[1], context );=0A=
		} else {=0A=
			set =3D Expr.relative[ parts[0] ] ?=0A=
				[ context ] :=0A=
				Sizzle( parts.shift(), context );=0A=
=0A=
			while ( parts.length ) {=0A=
				selector =3D parts.shift();=0A=
=0A=
				if ( Expr.relative[ selector ] ) {=0A=
					selector +=3D parts.shift();=0A=
				}=0A=
				=0A=
				set =3D posProcess( selector, set );=0A=
			}=0A=
		}=0A=
	} else {=0A=
		// Take a shortcut and set the context if the root selector is an ID=0A=
		// (but not if it'll be faster if the inner selector is an ID)=0A=
		if ( !seed && parts.length > 1 && context.nodeType =3D=3D=3D 9 && =
!contextXML &&=0A=
				Expr.match.ID.test(parts[0]) && =
!Expr.match.ID.test(parts[parts.length - 1]) ) {=0A=
			var ret =3D Sizzle.find( parts.shift(), context, contextXML );=0A=
			context =3D ret.expr ? Sizzle.filter( ret.expr, ret.set )[0] : =
ret.set[0];=0A=
		}=0A=
=0A=
		if ( context ) {=0A=
			var ret =3D seed ?=0A=
				{ expr: parts.pop(), set: makeArray(seed) } :=0A=
				Sizzle.find( parts.pop(), parts.length =3D=3D=3D 1 && (parts[0] =
=3D=3D=3D "~" || parts[0] =3D=3D=3D "+") && context.parentNode ? =
context.parentNode : context, contextXML );=0A=
			set =3D ret.expr ? Sizzle.filter( ret.expr, ret.set ) : ret.set;=0A=
=0A=
			if ( parts.length > 0 ) {=0A=
				checkSet =3D makeArray(set);=0A=
			} else {=0A=
				prune =3D false;=0A=
			}=0A=
=0A=
			while ( parts.length ) {=0A=
				var cur =3D parts.pop(), pop =3D cur;=0A=
=0A=
				if ( !Expr.relative[ cur ] ) {=0A=
					cur =3D "";=0A=
				} else {=0A=
					pop =3D parts.pop();=0A=
				}=0A=
=0A=
				if ( pop =3D=3D null ) {=0A=
					pop =3D context;=0A=
				}=0A=
=0A=
				Expr.relative[ cur ]( checkSet, pop, contextXML );=0A=
			}=0A=
		} else {=0A=
			checkSet =3D parts =3D [];=0A=
		}=0A=
	}=0A=
=0A=
	if ( !checkSet ) {=0A=
		checkSet =3D set;=0A=
	}=0A=
=0A=
	if ( !checkSet ) {=0A=
		Sizzle.error( cur || selector );=0A=
	}=0A=
=0A=
	if ( toString.call(checkSet) =3D=3D=3D "[object Array]" ) {=0A=
		if ( !prune ) {=0A=
			results.push.apply( results, checkSet );=0A=
		} else if ( context && context.nodeType =3D=3D=3D 1 ) {=0A=
			for ( var i =3D 0; checkSet[i] !=3D null; i++ ) {=0A=
				if ( checkSet[i] && (checkSet[i] =3D=3D=3D true || =
checkSet[i].nodeType =3D=3D=3D 1 && contains(context, checkSet[i])) ) {=0A=
					results.push( set[i] );=0A=
				}=0A=
			}=0A=
		} else {=0A=
			for ( var i =3D 0; checkSet[i] !=3D null; i++ ) {=0A=
				if ( checkSet[i] && checkSet[i].nodeType =3D=3D=3D 1 ) {=0A=
					results.push( set[i] );=0A=
				}=0A=
			}=0A=
		}=0A=
	} else {=0A=
		makeArray( checkSet, results );=0A=
	}=0A=
=0A=
	if ( extra ) {=0A=
		Sizzle( extra, origContext, results, seed );=0A=
		Sizzle.uniqueSort( results );=0A=
	}=0A=
=0A=
	return results;=0A=
};=0A=
=0A=
Sizzle.uniqueSort =3D function(results){=0A=
	if ( sortOrder ) {=0A=
		hasDuplicate =3D baseHasDuplicate;=0A=
		results.sort(sortOrder);=0A=
=0A=
		if ( hasDuplicate ) {=0A=
			for ( var i =3D 1; i < results.length; i++ ) {=0A=
				if ( results[i] =3D=3D=3D results[i-1] ) {=0A=
					results.splice(i--, 1);=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	return results;=0A=
};=0A=
=0A=
Sizzle.matches =3D function(expr, set){=0A=
	return Sizzle(expr, null, null, set);=0A=
};=0A=
=0A=
Sizzle.find =3D function(expr, context, isXML){=0A=
	var set, match;=0A=
=0A=
	if ( !expr ) {=0A=
		return [];=0A=
	}=0A=
=0A=
	for ( var i =3D 0, l =3D Expr.order.length; i < l; i++ ) {=0A=
		var type =3D Expr.order[i], match;=0A=
		=0A=
		if ( (match =3D Expr.leftMatch[ type ].exec( expr )) ) {=0A=
			var left =3D match[1];=0A=
			match.splice(1,1);=0A=
=0A=
			if ( left.substr( left.length - 1 ) !=3D=3D "\\" ) {=0A=
				match[1] =3D (match[1] || "").replace(/\\/g, "");=0A=
				set =3D Expr.find[ type ]( match, context, isXML );=0A=
				if ( set !=3D null ) {=0A=
					expr =3D expr.replace( Expr.match[ type ], "" );=0A=
					break;=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	if ( !set ) {=0A=
		set =3D context.getElementsByTagName("*");=0A=
	}=0A=
=0A=
	return {set: set, expr: expr};=0A=
};=0A=
=0A=
Sizzle.filter =3D function(expr, set, inplace, not){=0A=
	var old =3D expr, result =3D [], curLoop =3D set, match, anyFound,=0A=
		isXMLFilter =3D set && set[0] && isXML(set[0]);=0A=
=0A=
	while ( expr && set.length ) {=0A=
		for ( var type in Expr.filter ) {=0A=
			if ( (match =3D Expr.leftMatch[ type ].exec( expr )) !=3D null && =
match[2] ) {=0A=
				var filter =3D Expr.filter[ type ], found, item, left =3D match[1];=0A=
				anyFound =3D false;=0A=
=0A=
				match.splice(1,1);=0A=
=0A=
				if ( left.substr( left.length - 1 ) =3D=3D=3D "\\" ) {=0A=
					continue;=0A=
				}=0A=
=0A=
				if ( curLoop =3D=3D=3D result ) {=0A=
					result =3D [];=0A=
				}=0A=
=0A=
				if ( Expr.preFilter[ type ] ) {=0A=
					match =3D Expr.preFilter[ type ]( match, curLoop, inplace, result, =
not, isXMLFilter );=0A=
=0A=
					if ( !match ) {=0A=
						anyFound =3D found =3D true;=0A=
					} else if ( match =3D=3D=3D true ) {=0A=
						continue;=0A=
					}=0A=
				}=0A=
=0A=
				if ( match ) {=0A=
					for ( var i =3D 0; (item =3D curLoop[i]) !=3D null; i++ ) {=0A=
						if ( item ) {=0A=
							found =3D filter( item, match, i, curLoop );=0A=
							var pass =3D not ^ !!found;=0A=
=0A=
							if ( inplace && found !=3D null ) {=0A=
								if ( pass ) {=0A=
									anyFound =3D true;=0A=
								} else {=0A=
									curLoop[i] =3D false;=0A=
								}=0A=
							} else if ( pass ) {=0A=
								result.push( item );=0A=
								anyFound =3D true;=0A=
							}=0A=
						}=0A=
					}=0A=
				}=0A=
=0A=
				if ( found !=3D=3D undefined ) {=0A=
					if ( !inplace ) {=0A=
						curLoop =3D result;=0A=
					}=0A=
=0A=
					expr =3D expr.replace( Expr.match[ type ], "" );=0A=
=0A=
					if ( !anyFound ) {=0A=
						return [];=0A=
					}=0A=
=0A=
					break;=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Improper expression=0A=
		if ( expr =3D=3D=3D old ) {=0A=
			if ( anyFound =3D=3D null ) {=0A=
				Sizzle.error( expr );=0A=
			} else {=0A=
				break;=0A=
			}=0A=
		}=0A=
=0A=
		old =3D expr;=0A=
	}=0A=
=0A=
	return curLoop;=0A=
};=0A=
=0A=
Sizzle.error =3D function( msg ) {=0A=
	throw "Syntax error, unrecognized expression: " + msg;=0A=
};=0A=
=0A=
var Expr =3D Sizzle.selectors =3D {=0A=
	order: [ "ID", "NAME", "TAG" ],=0A=
	match: {=0A=
		ID: /#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,=0A=
		CLASS: /\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,=0A=
		NAME: /\[name=3D['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,=0A=
		ATTR: =
/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=3D)\s*(['"]*)(.*?)\3|)\s*\]=
/,=0A=
		TAG: /^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,=0A=
		CHILD: /:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,=0A=
		POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=3D[^-]|$)/,=0A=
		PSEUDO: =
/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\)=
)?/=0A=
	},=0A=
	leftMatch: {},=0A=
	attrMap: {=0A=
		"class": "className",=0A=
		"for": "htmlFor"=0A=
	},=0A=
	attrHandle: {=0A=
		href: function(elem){=0A=
			return elem.getAttribute("href");=0A=
		}=0A=
	},=0A=
	relative: {=0A=
		"+": function(checkSet, part){=0A=
			var isPartStr =3D typeof part =3D=3D=3D "string",=0A=
				isTag =3D isPartStr && !/\W/.test(part),=0A=
				isPartStrNotTag =3D isPartStr && !isTag;=0A=
=0A=
			if ( isTag ) {=0A=
				part =3D part.toLowerCase();=0A=
			}=0A=
=0A=
			for ( var i =3D 0, l =3D checkSet.length, elem; i < l; i++ ) {=0A=
				if ( (elem =3D checkSet[i]) ) {=0A=
					while ( (elem =3D elem.previousSibling) && elem.nodeType !=3D=3D 1 =
) {}=0A=
=0A=
					checkSet[i] =3D isPartStrNotTag || elem && =
elem.nodeName.toLowerCase() =3D=3D=3D part ?=0A=
						elem || false :=0A=
						elem =3D=3D=3D part;=0A=
				}=0A=
			}=0A=
=0A=
			if ( isPartStrNotTag ) {=0A=
				Sizzle.filter( part, checkSet, true );=0A=
			}=0A=
		},=0A=
		">": function(checkSet, part){=0A=
			var isPartStr =3D typeof part =3D=3D=3D "string";=0A=
=0A=
			if ( isPartStr && !/\W/.test(part) ) {=0A=
				part =3D part.toLowerCase();=0A=
=0A=
				for ( var i =3D 0, l =3D checkSet.length; i < l; i++ ) {=0A=
					var elem =3D checkSet[i];=0A=
					if ( elem ) {=0A=
						var parent =3D elem.parentNode;=0A=
						checkSet[i] =3D parent.nodeName.toLowerCase() =3D=3D=3D part ? =
parent : false;=0A=
					}=0A=
				}=0A=
			} else {=0A=
				for ( var i =3D 0, l =3D checkSet.length; i < l; i++ ) {=0A=
					var elem =3D checkSet[i];=0A=
					if ( elem ) {=0A=
						checkSet[i] =3D isPartStr ?=0A=
							elem.parentNode :=0A=
							elem.parentNode =3D=3D=3D part;=0A=
					}=0A=
				}=0A=
=0A=
				if ( isPartStr ) {=0A=
					Sizzle.filter( part, checkSet, true );=0A=
				}=0A=
			}=0A=
		},=0A=
		"": function(checkSet, part, isXML){=0A=
			var doneName =3D done++, checkFn =3D dirCheck;=0A=
=0A=
			if ( typeof part =3D=3D=3D "string" && !/\W/.test(part) ) {=0A=
				var nodeCheck =3D part =3D part.toLowerCase();=0A=
				checkFn =3D dirNodeCheck;=0A=
			}=0A=
=0A=
			checkFn("parentNode", part, doneName, checkSet, nodeCheck, isXML);=0A=
		},=0A=
		"~": function(checkSet, part, isXML){=0A=
			var doneName =3D done++, checkFn =3D dirCheck;=0A=
=0A=
			if ( typeof part =3D=3D=3D "string" && !/\W/.test(part) ) {=0A=
				var nodeCheck =3D part =3D part.toLowerCase();=0A=
				checkFn =3D dirNodeCheck;=0A=
			}=0A=
=0A=
			checkFn("previousSibling", part, doneName, checkSet, nodeCheck, =
isXML);=0A=
		}=0A=
	},=0A=
	find: {=0A=
		ID: function(match, context, isXML){=0A=
			if ( typeof context.getElementById !=3D=3D "undefined" && !isXML ) {=0A=
				var m =3D context.getElementById(match[1]);=0A=
				return m ? [m] : [];=0A=
			}=0A=
		},=0A=
		NAME: function(match, context){=0A=
			if ( typeof context.getElementsByName !=3D=3D "undefined" ) {=0A=
				var ret =3D [], results =3D context.getElementsByName(match[1]);=0A=
=0A=
				for ( var i =3D 0, l =3D results.length; i < l; i++ ) {=0A=
					if ( results[i].getAttribute("name") =3D=3D=3D match[1] ) {=0A=
						ret.push( results[i] );=0A=
					}=0A=
				}=0A=
=0A=
				return ret.length =3D=3D=3D 0 ? null : ret;=0A=
			}=0A=
		},=0A=
		TAG: function(match, context){=0A=
			return context.getElementsByTagName(match[1]);=0A=
		}=0A=
	},=0A=
	preFilter: {=0A=
		CLASS: function(match, curLoop, inplace, result, not, isXML){=0A=
			match =3D " " + match[1].replace(/\\/g, "") + " ";=0A=
=0A=
			if ( isXML ) {=0A=
				return match;=0A=
			}=0A=
=0A=
			for ( var i =3D 0, elem; (elem =3D curLoop[i]) !=3D null; i++ ) {=0A=
				if ( elem ) {=0A=
					if ( not ^ (elem.className && (" " + elem.className + " =
").replace(/[\t\n]/g, " ").indexOf(match) >=3D 0) ) {=0A=
						if ( !inplace ) {=0A=
							result.push( elem );=0A=
						}=0A=
					} else if ( inplace ) {=0A=
						curLoop[i] =3D false;=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			return false;=0A=
		},=0A=
		ID: function(match){=0A=
			return match[1].replace(/\\/g, "");=0A=
		},=0A=
		TAG: function(match, curLoop){=0A=
			return match[1].toLowerCase();=0A=
		},=0A=
		CHILD: function(match){=0A=
			if ( match[1] =3D=3D=3D "nth" ) {=0A=
				// parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', =
'-n+6'=0A=
				var test =3D /(-?)(\d*)n((?:\+|-)?\d*)/.exec(=0A=
					match[2] =3D=3D=3D "even" && "2n" || match[2] =3D=3D=3D "odd" && =
"2n+1" ||=0A=
					!/\D/.test( match[2] ) && "0n+" + match[2] || match[2]);=0A=
=0A=
				// calculate the numbers (first)n+(last) including if they are =
negative=0A=
				match[2] =3D (test[1] + (test[2] || 1)) - 0;=0A=
				match[3] =3D test[3] - 0;=0A=
			}=0A=
=0A=
			// TODO: Move to normal caching system=0A=
			match[0] =3D done++;=0A=
=0A=
			return match;=0A=
		},=0A=
		ATTR: function(match, curLoop, inplace, result, not, isXML){=0A=
			var name =3D match[1].replace(/\\/g, "");=0A=
			=0A=
			if ( !isXML && Expr.attrMap[name] ) {=0A=
				match[1] =3D Expr.attrMap[name];=0A=
			}=0A=
=0A=
			if ( match[2] =3D=3D=3D "~=3D" ) {=0A=
				match[4] =3D " " + match[4] + " ";=0A=
			}=0A=
=0A=
			return match;=0A=
		},=0A=
		PSEUDO: function(match, curLoop, inplace, result, not){=0A=
			if ( match[1] =3D=3D=3D "not" ) {=0A=
				// If we're dealing with a complex expression, or a simple one=0A=
				if ( ( chunker.exec(match[3]) || "" ).length > 1 || =
/^\w/.test(match[3]) ) {=0A=
					match[3] =3D Sizzle(match[3], null, null, curLoop);=0A=
				} else {=0A=
					var ret =3D Sizzle.filter(match[3], curLoop, inplace, true ^ not);=0A=
					if ( !inplace ) {=0A=
						result.push.apply( result, ret );=0A=
					}=0A=
					return false;=0A=
				}=0A=
			} else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( =
match[0] ) ) {=0A=
				return true;=0A=
			}=0A=
			=0A=
			return match;=0A=
		},=0A=
		POS: function(match){=0A=
			match.unshift( true );=0A=
			return match;=0A=
		}=0A=
	},=0A=
	filters: {=0A=
		enabled: function(elem){=0A=
			return elem.disabled =3D=3D=3D false && elem.type !=3D=3D "hidden";=0A=
		},=0A=
		disabled: function(elem){=0A=
			return elem.disabled =3D=3D=3D true;=0A=
		},=0A=
		checked: function(elem){=0A=
			return elem.checked =3D=3D=3D true;=0A=
		},=0A=
		selected: function(elem){=0A=
			// Accessing this property makes selected-by-default=0A=
			// options in Safari work properly=0A=
			elem.parentNode.selectedIndex;=0A=
			return elem.selected =3D=3D=3D true;=0A=
		},=0A=
		parent: function(elem){=0A=
			return !!elem.firstChild;=0A=
		},=0A=
		empty: function(elem){=0A=
			return !elem.firstChild;=0A=
		},=0A=
		has: function(elem, i, match){=0A=
			return !!Sizzle( match[3], elem ).length;=0A=
		},=0A=
		header: function(elem){=0A=
			return /h\d/i.test( elem.nodeName );=0A=
		},=0A=
		text: function(elem){=0A=
			return "text" =3D=3D=3D elem.type;=0A=
		},=0A=
		radio: function(elem){=0A=
			return "radio" =3D=3D=3D elem.type;=0A=
		},=0A=
		checkbox: function(elem){=0A=
			return "checkbox" =3D=3D=3D elem.type;=0A=
		},=0A=
		file: function(elem){=0A=
			return "file" =3D=3D=3D elem.type;=0A=
		},=0A=
		password: function(elem){=0A=
			return "password" =3D=3D=3D elem.type;=0A=
		},=0A=
		submit: function(elem){=0A=
			return "submit" =3D=3D=3D elem.type;=0A=
		},=0A=
		image: function(elem){=0A=
			return "image" =3D=3D=3D elem.type;=0A=
		},=0A=
		reset: function(elem){=0A=
			return "reset" =3D=3D=3D elem.type;=0A=
		},=0A=
		button: function(elem){=0A=
			return "button" =3D=3D=3D elem.type || elem.nodeName.toLowerCase() =
=3D=3D=3D "button";=0A=
		},=0A=
		input: function(elem){=0A=
			return /input|select|textarea|button/i.test(elem.nodeName);=0A=
		}=0A=
	},=0A=
	setFilters: {=0A=
		first: function(elem, i){=0A=
			return i =3D=3D=3D 0;=0A=
		},=0A=
		last: function(elem, i, match, array){=0A=
			return i =3D=3D=3D array.length - 1;=0A=
		},=0A=
		even: function(elem, i){=0A=
			return i % 2 =3D=3D=3D 0;=0A=
		},=0A=
		odd: function(elem, i){=0A=
			return i % 2 =3D=3D=3D 1;=0A=
		},=0A=
		lt: function(elem, i, match){=0A=
			return i < match[3] - 0;=0A=
		},=0A=
		gt: function(elem, i, match){=0A=
			return i > match[3] - 0;=0A=
		},=0A=
		nth: function(elem, i, match){=0A=
			return match[3] - 0 =3D=3D=3D i;=0A=
		},=0A=
		eq: function(elem, i, match){=0A=
			return match[3] - 0 =3D=3D=3D i;=0A=
		}=0A=
	},=0A=
	filter: {=0A=
		PSEUDO: function(elem, match, i, array){=0A=
			var name =3D match[1], filter =3D Expr.filters[ name ];=0A=
=0A=
			if ( filter ) {=0A=
				return filter( elem, i, match, array );=0A=
			} else if ( name =3D=3D=3D "contains" ) {=0A=
				return (elem.textContent || elem.innerText || getText([ elem ]) || =
"").indexOf(match[3]) >=3D 0;=0A=
			} else if ( name =3D=3D=3D "not" ) {=0A=
				var not =3D match[3];=0A=
=0A=
				for ( var i =3D 0, l =3D not.length; i < l; i++ ) {=0A=
					if ( not[i] =3D=3D=3D elem ) {=0A=
						return false;=0A=
					}=0A=
				}=0A=
=0A=
				return true;=0A=
			} else {=0A=
				Sizzle.error( "Syntax error, unrecognized expression: " + name );=0A=
			}=0A=
		},=0A=
		CHILD: function(elem, match){=0A=
			var type =3D match[1], node =3D elem;=0A=
			switch (type) {=0A=
				case 'only':=0A=
				case 'first':=0A=
					while ( (node =3D node.previousSibling) )	 {=0A=
						if ( node.nodeType =3D=3D=3D 1 ) { =0A=
							return false; =0A=
						}=0A=
					}=0A=
					if ( type =3D=3D=3D "first" ) { =0A=
						return true; =0A=
					}=0A=
					node =3D elem;=0A=
				case 'last':=0A=
					while ( (node =3D node.nextSibling) )	 {=0A=
						if ( node.nodeType =3D=3D=3D 1 ) { =0A=
							return false; =0A=
						}=0A=
					}=0A=
					return true;=0A=
				case 'nth':=0A=
					var first =3D match[2], last =3D match[3];=0A=
=0A=
					if ( first =3D=3D=3D 1 && last =3D=3D=3D 0 ) {=0A=
						return true;=0A=
					}=0A=
					=0A=
					var doneName =3D match[0],=0A=
						parent =3D elem.parentNode;=0A=
	=0A=
					if ( parent && (parent.sizcache !=3D=3D doneName || =
!elem.nodeIndex) ) {=0A=
						var count =3D 0;=0A=
						for ( node =3D parent.firstChild; node; node =3D node.nextSibling =
) {=0A=
							if ( node.nodeType =3D=3D=3D 1 ) {=0A=
								node.nodeIndex =3D ++count;=0A=
							}=0A=
						} =0A=
						parent.sizcache =3D doneName;=0A=
					}=0A=
					=0A=
					var diff =3D elem.nodeIndex - last;=0A=
					if ( first =3D=3D=3D 0 ) {=0A=
						return diff =3D=3D=3D 0;=0A=
					} else {=0A=
						return ( diff % first =3D=3D=3D 0 && diff / first >=3D 0 );=0A=
					}=0A=
			}=0A=
		},=0A=
		ID: function(elem, match){=0A=
			return elem.nodeType =3D=3D=3D 1 && elem.getAttribute("id") =3D=3D=3D =
match;=0A=
		},=0A=
		TAG: function(elem, match){=0A=
			return (match =3D=3D=3D "*" && elem.nodeType =3D=3D=3D 1) || =
elem.nodeName.toLowerCase() =3D=3D=3D match;=0A=
		},=0A=
		CLASS: function(elem, match){=0A=
			return (" " + (elem.className || elem.getAttribute("class")) + " ")=0A=
				.indexOf( match ) > -1;=0A=
		},=0A=
		ATTR: function(elem, match){=0A=
			var name =3D match[1],=0A=
				result =3D Expr.attrHandle[ name ] ?=0A=
					Expr.attrHandle[ name ]( elem ) :=0A=
					elem[ name ] !=3D null ?=0A=
						elem[ name ] :=0A=
						elem.getAttribute( name ),=0A=
				value =3D result + "",=0A=
				type =3D match[2],=0A=
				check =3D match[4];=0A=
=0A=
			return result =3D=3D null ?=0A=
				type =3D=3D=3D "!=3D" :=0A=
				type =3D=3D=3D "=3D" ?=0A=
				value =3D=3D=3D check :=0A=
				type =3D=3D=3D "*=3D" ?=0A=
				value.indexOf(check) >=3D 0 :=0A=
				type =3D=3D=3D "~=3D" ?=0A=
				(" " + value + " ").indexOf(check) >=3D 0 :=0A=
				!check ?=0A=
				value && result !=3D=3D false :=0A=
				type =3D=3D=3D "!=3D" ?=0A=
				value !=3D=3D check :=0A=
				type =3D=3D=3D "^=3D" ?=0A=
				value.indexOf(check) =3D=3D=3D 0 :=0A=
				type =3D=3D=3D "$=3D" ?=0A=
				value.substr(value.length - check.length) =3D=3D=3D check :=0A=
				type =3D=3D=3D "|=3D" ?=0A=
				value =3D=3D=3D check || value.substr(0, check.length + 1) =3D=3D=3D =
check + "-" :=0A=
				false;=0A=
		},=0A=
		POS: function(elem, match, i, array){=0A=
			var name =3D match[2], filter =3D Expr.setFilters[ name ];=0A=
=0A=
			if ( filter ) {=0A=
				return filter( elem, i, match, array );=0A=
			}=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
var origPOS =3D Expr.match.POS;=0A=
=0A=
for ( var type in Expr.match ) {=0A=
	Expr.match[ type ] =3D new RegExp( Expr.match[ type ].source + =
/(?![^\[]*\])(?![^\(]*\))/.source );=0A=
	Expr.leftMatch[ type ] =3D new RegExp( /(^(?:.|\r|\n)*?)/.source + =
Expr.match[ type ].source.replace(/\\(\d+)/g, function(all, num){=0A=
		return "\\" + (num - 0 + 1);=0A=
	}));=0A=
}=0A=
=0A=
var makeArray =3D function(array, results) {=0A=
	array =3D Array.prototype.slice.call( array, 0 );=0A=
=0A=
	if ( results ) {=0A=
		results.push.apply( results, array );=0A=
		return results;=0A=
	}=0A=
	=0A=
	return array;=0A=
};=0A=
=0A=
// Perform a simple check to determine if the browser is capable of=0A=
// converting a NodeList to an array using builtin methods.=0A=
// Also verifies that the returned array holds DOM nodes=0A=
// (which is not the case in the Blackberry browser)=0A=
try {=0A=
	Array.prototype.slice.call( document.documentElement.childNodes, 0 =
)[0].nodeType;=0A=
=0A=
// Provide a fallback method if it does not work=0A=
} catch(e){=0A=
	makeArray =3D function(array, results) {=0A=
		var ret =3D results || [];=0A=
=0A=
		if ( toString.call(array) =3D=3D=3D "[object Array]" ) {=0A=
			Array.prototype.push.apply( ret, array );=0A=
		} else {=0A=
			if ( typeof array.length =3D=3D=3D "number" ) {=0A=
				for ( var i =3D 0, l =3D array.length; i < l; i++ ) {=0A=
					ret.push( array[i] );=0A=
				}=0A=
			} else {=0A=
				for ( var i =3D 0; array[i]; i++ ) {=0A=
					ret.push( array[i] );=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	};=0A=
}=0A=
=0A=
var sortOrder;=0A=
=0A=
if ( document.documentElement.compareDocumentPosition ) {=0A=
	sortOrder =3D function( a, b ) {=0A=
		if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) {=0A=
			if ( a =3D=3D b ) {=0A=
				hasDuplicate =3D true;=0A=
			}=0A=
			return a.compareDocumentPosition ? -1 : 1;=0A=
		}=0A=
=0A=
		var ret =3D a.compareDocumentPosition(b) & 4 ? -1 : a =3D=3D=3D b ? 0 =
: 1;=0A=
		if ( ret =3D=3D=3D 0 ) {=0A=
			hasDuplicate =3D true;=0A=
		}=0A=
		return ret;=0A=
	};=0A=
} else if ( "sourceIndex" in document.documentElement ) {=0A=
	sortOrder =3D function( a, b ) {=0A=
		if ( !a.sourceIndex || !b.sourceIndex ) {=0A=
			if ( a =3D=3D b ) {=0A=
				hasDuplicate =3D true;=0A=
			}=0A=
			return a.sourceIndex ? -1 : 1;=0A=
		}=0A=
=0A=
		var ret =3D a.sourceIndex - b.sourceIndex;=0A=
		if ( ret =3D=3D=3D 0 ) {=0A=
			hasDuplicate =3D true;=0A=
		}=0A=
		return ret;=0A=
	};=0A=
} else if ( document.createRange ) {=0A=
	sortOrder =3D function( a, b ) {=0A=
		if ( !a.ownerDocument || !b.ownerDocument ) {=0A=
			if ( a =3D=3D b ) {=0A=
				hasDuplicate =3D true;=0A=
			}=0A=
			return a.ownerDocument ? -1 : 1;=0A=
		}=0A=
=0A=
		var aRange =3D a.ownerDocument.createRange(), bRange =3D =
b.ownerDocument.createRange();=0A=
		aRange.setStart(a, 0);=0A=
		aRange.setEnd(a, 0);=0A=
		bRange.setStart(b, 0);=0A=
		bRange.setEnd(b, 0);=0A=
		var ret =3D aRange.compareBoundaryPoints(Range.START_TO_END, bRange);=0A=
		if ( ret =3D=3D=3D 0 ) {=0A=
			hasDuplicate =3D true;=0A=
		}=0A=
		return ret;=0A=
	};=0A=
}=0A=
=0A=
// Utility function for retreiving the text value of an array of DOM =
nodes=0A=
function getText( elems ) {=0A=
	var ret =3D "", elem;=0A=
=0A=
	for ( var i =3D 0; elems[i]; i++ ) {=0A=
		elem =3D elems[i];=0A=
=0A=
		// Get the text from text nodes and CDATA nodes=0A=
		if ( elem.nodeType =3D=3D=3D 3 || elem.nodeType =3D=3D=3D 4 ) {=0A=
			ret +=3D elem.nodeValue;=0A=
=0A=
		// Traverse everything else, except comment nodes=0A=
		} else if ( elem.nodeType !=3D=3D 8 ) {=0A=
			ret +=3D getText( elem.childNodes );=0A=
		}=0A=
	}=0A=
=0A=
	return ret;=0A=
}=0A=
=0A=
// Check to see if the browser returns elements by name when=0A=
// querying by getElementById (and provide a workaround)=0A=
(function(){=0A=
	// We're going to inject a fake input element with a specified name=0A=
	var form =3D document.createElement("div"),=0A=
		id =3D "script" + (new Date).getTime();=0A=
	form.innerHTML =3D "<a name=3D'" + id + "'/>";=0A=
=0A=
	// Inject it into the root element, check its status, and remove it =
quickly=0A=
	var root =3D document.documentElement;=0A=
	root.insertBefore( form, root.firstChild );=0A=
=0A=
	// The workaround has to do additional checks after a getElementById=0A=
	// Which slows things down for other browsers (hence the branching)=0A=
	if ( document.getElementById( id ) ) {=0A=
		Expr.find.ID =3D function(match, context, isXML){=0A=
			if ( typeof context.getElementById !=3D=3D "undefined" && !isXML ) {=0A=
				var m =3D context.getElementById(match[1]);=0A=
				return m ? m.id =3D=3D=3D match[1] || typeof m.getAttributeNode =
!=3D=3D "undefined" && m.getAttributeNode("id").nodeValue =3D=3D=3D =
match[1] ? [m] : undefined : [];=0A=
			}=0A=
		};=0A=
=0A=
		Expr.filter.ID =3D function(elem, match){=0A=
			var node =3D typeof elem.getAttributeNode !=3D=3D "undefined" && =
elem.getAttributeNode("id");=0A=
			return elem.nodeType =3D=3D=3D 1 && node && node.nodeValue =3D=3D=3D =
match;=0A=
		};=0A=
	}=0A=
=0A=
	root.removeChild( form );=0A=
	root =3D form =3D null; // release memory in IE=0A=
})();=0A=
=0A=
(function(){=0A=
	// Check to see if the browser returns only elements=0A=
	// when doing getElementsByTagName("*")=0A=
=0A=
	// Create a fake element=0A=
	var div =3D document.createElement("div");=0A=
	div.appendChild( document.createComment("") );=0A=
=0A=
	// Make sure no comments are found=0A=
	if ( div.getElementsByTagName("*").length > 0 ) {=0A=
		Expr.find.TAG =3D function(match, context){=0A=
			var results =3D context.getElementsByTagName(match[1]);=0A=
=0A=
			// Filter out possible comments=0A=
			if ( match[1] =3D=3D=3D "*" ) {=0A=
				var tmp =3D [];=0A=
=0A=
				for ( var i =3D 0; results[i]; i++ ) {=0A=
					if ( results[i].nodeType =3D=3D=3D 1 ) {=0A=
						tmp.push( results[i] );=0A=
					}=0A=
				}=0A=
=0A=
				results =3D tmp;=0A=
			}=0A=
=0A=
			return results;=0A=
		};=0A=
	}=0A=
=0A=
	// Check to see if an attribute returns normalized href attributes=0A=
	div.innerHTML =3D "<a href=3D'#'></a>";=0A=
	if ( div.firstChild && typeof div.firstChild.getAttribute !=3D=3D =
"undefined" &&=0A=
			div.firstChild.getAttribute("href") !=3D=3D "#" ) {=0A=
		Expr.attrHandle.href =3D function(elem){=0A=
			return elem.getAttribute("href", 2);=0A=
		};=0A=
	}=0A=
=0A=
	div =3D null; // release memory in IE=0A=
})();=0A=
=0A=
if ( document.querySelectorAll ) {=0A=
	(function(){=0A=
		var oldSizzle =3D Sizzle, div =3D document.createElement("div");=0A=
		div.innerHTML =3D "<p class=3D'TEST'></p>";=0A=
=0A=
		// Safari can't handle uppercase or unicode characters when=0A=
		// in quirks mode.=0A=
		if ( div.querySelectorAll && div.querySelectorAll(".TEST").length =
=3D=3D=3D 0 ) {=0A=
			return;=0A=
		}=0A=
	=0A=
		Sizzle =3D function(query, context, extra, seed){=0A=
			context =3D context || document;=0A=
=0A=
			// Only use querySelectorAll on non-XML documents=0A=
			// (ID selectors don't work in non-HTML documents)=0A=
			if ( !seed && context.nodeType =3D=3D=3D 9 && !isXML(context) ) {=0A=
				try {=0A=
					return makeArray( context.querySelectorAll(query), extra );=0A=
				} catch(e){}=0A=
			}=0A=
		=0A=
			return oldSizzle(query, context, extra, seed);=0A=
		};=0A=
=0A=
		for ( var prop in oldSizzle ) {=0A=
			Sizzle[ prop ] =3D oldSizzle[ prop ];=0A=
		}=0A=
=0A=
		div =3D null; // release memory in IE=0A=
	})();=0A=
}=0A=
=0A=
(function(){=0A=
	var div =3D document.createElement("div");=0A=
=0A=
	div.innerHTML =3D "<div class=3D'test e'></div><div =
class=3D'test'></div>";=0A=
=0A=
	// Opera can't find a second classname (in 9.6)=0A=
	// Also, make sure that getElementsByClassName actually exists=0A=
	if ( !div.getElementsByClassName || =
div.getElementsByClassName("e").length =3D=3D=3D 0 ) {=0A=
		return;=0A=
	}=0A=
=0A=
	// Safari caches class attributes, doesn't catch changes (in 3.2)=0A=
	div.lastChild.className =3D "e";=0A=
=0A=
	if ( div.getElementsByClassName("e").length =3D=3D=3D 1 ) {=0A=
		return;=0A=
	}=0A=
	=0A=
	Expr.order.splice(1, 0, "CLASS");=0A=
	Expr.find.CLASS =3D function(match, context, isXML) {=0A=
		if ( typeof context.getElementsByClassName !=3D=3D "undefined" && =
!isXML ) {=0A=
			return context.getElementsByClassName(match[1]);=0A=
		}=0A=
	};=0A=
=0A=
	div =3D null; // release memory in IE=0A=
})();=0A=
=0A=
function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {=0A=
	for ( var i =3D 0, l =3D checkSet.length; i < l; i++ ) {=0A=
		var elem =3D checkSet[i];=0A=
		if ( elem ) {=0A=
			elem =3D elem[dir];=0A=
			var match =3D false;=0A=
=0A=
			while ( elem ) {=0A=
				if ( elem.sizcache =3D=3D=3D doneName ) {=0A=
					match =3D checkSet[elem.sizset];=0A=
					break;=0A=
				}=0A=
=0A=
				if ( elem.nodeType =3D=3D=3D 1 && !isXML ){=0A=
					elem.sizcache =3D doneName;=0A=
					elem.sizset =3D i;=0A=
				}=0A=
=0A=
				if ( elem.nodeName.toLowerCase() =3D=3D=3D cur ) {=0A=
					match =3D elem;=0A=
					break;=0A=
				}=0A=
=0A=
				elem =3D elem[dir];=0A=
			}=0A=
=0A=
			checkSet[i] =3D match;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {=0A=
	for ( var i =3D 0, l =3D checkSet.length; i < l; i++ ) {=0A=
		var elem =3D checkSet[i];=0A=
		if ( elem ) {=0A=
			elem =3D elem[dir];=0A=
			var match =3D false;=0A=
=0A=
			while ( elem ) {=0A=
				if ( elem.sizcache =3D=3D=3D doneName ) {=0A=
					match =3D checkSet[elem.sizset];=0A=
					break;=0A=
				}=0A=
=0A=
				if ( elem.nodeType =3D=3D=3D 1 ) {=0A=
					if ( !isXML ) {=0A=
						elem.sizcache =3D doneName;=0A=
						elem.sizset =3D i;=0A=
					}=0A=
					if ( typeof cur !=3D=3D "string" ) {=0A=
						if ( elem =3D=3D=3D cur ) {=0A=
							match =3D true;=0A=
							break;=0A=
						}=0A=
=0A=
					} else if ( Sizzle.filter( cur, [elem] ).length > 0 ) {=0A=
						match =3D elem;=0A=
						break;=0A=
					}=0A=
				}=0A=
=0A=
				elem =3D elem[dir];=0A=
			}=0A=
=0A=
			checkSet[i] =3D match;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
var contains =3D document.compareDocumentPosition ? function(a, b){=0A=
	return !!(a.compareDocumentPosition(b) & 16);=0A=
} : function(a, b){=0A=
	return a !=3D=3D b && (a.contains ? a.contains(b) : true);=0A=
};=0A=
=0A=
var isXML =3D function(elem){=0A=
	// documentElement is verified for cases where it doesn't yet exist=0A=
	// (such as loading iframes in IE - #4833) =0A=
	var documentElement =3D (elem ? elem.ownerDocument || elem : =
0).documentElement;=0A=
	return documentElement ? documentElement.nodeName !=3D=3D "HTML" : =
false;=0A=
};=0A=
=0A=
var posProcess =3D function(selector, context){=0A=
	var tmpSet =3D [], later =3D "", match,=0A=
		root =3D context.nodeType ? [context] : context;=0A=
=0A=
	// Position selectors must be done after the filter=0A=
	// And so must :not(positional) so we move all PSEUDOs to the end=0A=
	while ( (match =3D Expr.match.PSEUDO.exec( selector )) ) {=0A=
		later +=3D match[0];=0A=
		selector =3D selector.replace( Expr.match.PSEUDO, "" );=0A=
	}=0A=
=0A=
	selector =3D Expr.relative[selector] ? selector + "*" : selector;=0A=
=0A=
	for ( var i =3D 0, l =3D root.length; i < l; i++ ) {=0A=
		Sizzle( selector, root[i], tmpSet );=0A=
	}=0A=
=0A=
	return Sizzle.filter( later, tmpSet );=0A=
};=0A=
=0A=
// EXPOSE=0A=
jQuery.find =3D Sizzle;=0A=
jQuery.expr =3D Sizzle.selectors;=0A=
jQuery.expr[":"] =3D jQuery.expr.filters;=0A=
jQuery.unique =3D Sizzle.uniqueSort;=0A=
jQuery.text =3D getText;=0A=
jQuery.isXMLDoc =3D isXML;=0A=
jQuery.contains =3D contains;=0A=
=0A=
return;=0A=
=0A=
window.Sizzle =3D Sizzle;=0A=
=0A=
})();=0A=
var runtil =3D /Until$/,=0A=
	rparentsprev =3D /^(?:parents|prevUntil|prevAll)/,=0A=
	// Note: This RegExp should be improved, or likely pulled from Sizzle=0A=
	rmultiselector =3D /,/,=0A=
	slice =3D Array.prototype.slice;=0A=
=0A=
// Implement the identical functionality for filter and not=0A=
var winnow =3D function( elements, qualifier, keep ) {=0A=
	if ( jQuery.isFunction( qualifier ) ) {=0A=
		return jQuery.grep(elements, function( elem, i ) {=0A=
			return !!qualifier.call( elem, i, elem ) =3D=3D=3D keep;=0A=
		});=0A=
=0A=
	} else if ( qualifier.nodeType ) {=0A=
		return jQuery.grep(elements, function( elem, i ) {=0A=
			return (elem =3D=3D=3D qualifier) =3D=3D=3D keep;=0A=
		});=0A=
=0A=
	} else if ( typeof qualifier =3D=3D=3D "string" ) {=0A=
		var filtered =3D jQuery.grep(elements, function( elem ) {=0A=
			return elem.nodeType =3D=3D=3D 1;=0A=
		});=0A=
=0A=
		if ( isSimple.test( qualifier ) ) {=0A=
			return jQuery.filter(qualifier, filtered, !keep);=0A=
		} else {=0A=
			qualifier =3D jQuery.filter( qualifier, filtered );=0A=
		}=0A=
	}=0A=
=0A=
	return jQuery.grep(elements, function( elem, i ) {=0A=
		return (jQuery.inArray( elem, qualifier ) >=3D 0) =3D=3D=3D keep;=0A=
	});=0A=
};=0A=
=0A=
jQuery.fn.extend({=0A=
	find: function( selector ) {=0A=
		var ret =3D this.pushStack( "", "find", selector ), length =3D 0;=0A=
=0A=
		for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
			length =3D ret.length;=0A=
			jQuery.find( selector, this[i], ret );=0A=
=0A=
			if ( i > 0 ) {=0A=
				// Make sure that the results are unique=0A=
				for ( var n =3D length; n < ret.length; n++ ) {=0A=
					for ( var r =3D 0; r < length; r++ ) {=0A=
						if ( ret[r] =3D=3D=3D ret[n] ) {=0A=
							ret.splice(n--, 1);=0A=
							break;=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	has: function( target ) {=0A=
		var targets =3D jQuery( target );=0A=
		return this.filter(function() {=0A=
			for ( var i =3D 0, l =3D targets.length; i < l; i++ ) {=0A=
				if ( jQuery.contains( this, targets[i] ) ) {=0A=
					return true;=0A=
				}=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	not: function( selector ) {=0A=
		return this.pushStack( winnow(this, selector, false), "not", selector);=0A=
	},=0A=
=0A=
	filter: function( selector ) {=0A=
		return this.pushStack( winnow(this, selector, true), "filter", =
selector );=0A=
	},=0A=
	=0A=
	is: function( selector ) {=0A=
		return !!selector && jQuery.filter( selector, this ).length > 0;=0A=
	},=0A=
=0A=
	closest: function( selectors, context ) {=0A=
		if ( jQuery.isArray( selectors ) ) {=0A=
			var ret =3D [], cur =3D this[0], match, matches =3D {}, selector;=0A=
=0A=
			if ( cur && selectors.length ) {=0A=
				for ( var i =3D 0, l =3D selectors.length; i < l; i++ ) {=0A=
					selector =3D selectors[i];=0A=
=0A=
					if ( !matches[selector] ) {=0A=
						matches[selector] =3D jQuery.expr.match.POS.test( selector ) ? =0A=
							jQuery( selector, context || this.context ) :=0A=
							selector;=0A=
					}=0A=
				}=0A=
=0A=
				while ( cur && cur.ownerDocument && cur !=3D=3D context ) {=0A=
					for ( selector in matches ) {=0A=
						match =3D matches[selector];=0A=
=0A=
						if ( match.jquery ? match.index(cur) > -1 : jQuery(cur).is(match) =
) {=0A=
							ret.push({ selector: selector, elem: cur });=0A=
							delete matches[selector];=0A=
						}=0A=
					}=0A=
					cur =3D cur.parentNode;=0A=
				}=0A=
			}=0A=
=0A=
			return ret;=0A=
		}=0A=
=0A=
		var pos =3D jQuery.expr.match.POS.test( selectors ) ? =0A=
			jQuery( selectors, context || this.context ) : null;=0A=
=0A=
		return this.map(function( i, cur ) {=0A=
			while ( cur && cur.ownerDocument && cur !=3D=3D context ) {=0A=
				if ( pos ? pos.index(cur) > -1 : jQuery(cur).is(selectors) ) {=0A=
					return cur;=0A=
				}=0A=
				cur =3D cur.parentNode;=0A=
			}=0A=
			return null;=0A=
		});=0A=
	},=0A=
	=0A=
	// Determine the position of an element within=0A=
	// the matched set of elements=0A=
	index: function( elem ) {=0A=
		if ( !elem || typeof elem =3D=3D=3D "string" ) {=0A=
			return jQuery.inArray( this[0],=0A=
				// If it receives a string, the selector is used=0A=
				// If it receives nothing, the siblings are used=0A=
				elem ? jQuery( elem ) : this.parent().children() );=0A=
		}=0A=
		// Locate the position of the desired element=0A=
		return jQuery.inArray(=0A=
			// If it receives a jQuery object, the first element is used=0A=
			elem.jquery ? elem[0] : elem, this );=0A=
	},=0A=
=0A=
	add: function( selector, context ) {=0A=
		var set =3D typeof selector =3D=3D=3D "string" ?=0A=
				jQuery( selector, context || this.context ) :=0A=
				jQuery.makeArray( selector ),=0A=
			all =3D jQuery.merge( this.get(), set );=0A=
=0A=
		return this.pushStack( isDisconnected( set[0] ) || isDisconnected( =
all[0] ) ?=0A=
			all :=0A=
			jQuery.unique( all ) );=0A=
	},=0A=
=0A=
	andSelf: function() {=0A=
		return this.add( this.prevObject );=0A=
	}=0A=
});=0A=
=0A=
// A painfully simple check to see if an element is disconnected=0A=
// from a document (should be improved, where feasible).=0A=
function isDisconnected( node ) {=0A=
	return !node || !node.parentNode || node.parentNode.nodeType =3D=3D=3D =
11;=0A=
}=0A=
=0A=
jQuery.each({=0A=
	parent: function( elem ) {=0A=
		var parent =3D elem.parentNode;=0A=
		return parent && parent.nodeType !=3D=3D 11 ? parent : null;=0A=
	},=0A=
	parents: function( elem ) {=0A=
		return jQuery.dir( elem, "parentNode" );=0A=
	},=0A=
	parentsUntil: function( elem, i, until ) {=0A=
		return jQuery.dir( elem, "parentNode", until );=0A=
	},=0A=
	next: function( elem ) {=0A=
		return jQuery.nth( elem, 2, "nextSibling" );=0A=
	},=0A=
	prev: function( elem ) {=0A=
		return jQuery.nth( elem, 2, "previousSibling" );=0A=
	},=0A=
	nextAll: function( elem ) {=0A=
		return jQuery.dir( elem, "nextSibling" );=0A=
	},=0A=
	prevAll: function( elem ) {=0A=
		return jQuery.dir( elem, "previousSibling" );=0A=
	},=0A=
	nextUntil: function( elem, i, until ) {=0A=
		return jQuery.dir( elem, "nextSibling", until );=0A=
	},=0A=
	prevUntil: function( elem, i, until ) {=0A=
		return jQuery.dir( elem, "previousSibling", until );=0A=
	},=0A=
	siblings: function( elem ) {=0A=
		return jQuery.sibling( elem.parentNode.firstChild, elem );=0A=
	},=0A=
	children: function( elem ) {=0A=
		return jQuery.sibling( elem.firstChild );=0A=
	},=0A=
	contents: function( elem ) {=0A=
		return jQuery.nodeName( elem, "iframe" ) ?=0A=
			elem.contentDocument || elem.contentWindow.document :=0A=
			jQuery.makeArray( elem.childNodes );=0A=
	}=0A=
}, function( name, fn ) {=0A=
	jQuery.fn[ name ] =3D function( until, selector ) {=0A=
		var ret =3D jQuery.map( this, fn, until );=0A=
		=0A=
		if ( !runtil.test( name ) ) {=0A=
			selector =3D until;=0A=
		}=0A=
=0A=
		if ( selector && typeof selector =3D=3D=3D "string" ) {=0A=
			ret =3D jQuery.filter( selector, ret );=0A=
		}=0A=
=0A=
		ret =3D this.length > 1 ? jQuery.unique( ret ) : ret;=0A=
=0A=
		if ( (this.length > 1 || rmultiselector.test( selector )) && =
rparentsprev.test( name ) ) {=0A=
			ret =3D ret.reverse();=0A=
		}=0A=
=0A=
		return this.pushStack( ret, name, slice.call(arguments).join(",") );=0A=
	};=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	filter: function( expr, elems, not ) {=0A=
		if ( not ) {=0A=
			expr =3D ":not(" + expr + ")";=0A=
		}=0A=
=0A=
		return jQuery.find.matches(expr, elems);=0A=
	},=0A=
	=0A=
	dir: function( elem, dir, until ) {=0A=
		var matched =3D [], cur =3D elem[dir];=0A=
		while ( cur && cur.nodeType !=3D=3D 9 && (until =3D=3D=3D undefined || =
cur.nodeType !=3D=3D 1 || !jQuery( cur ).is( until )) ) {=0A=
			if ( cur.nodeType =3D=3D=3D 1 ) {=0A=
				matched.push( cur );=0A=
			}=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=3D 1 && ++num =3D=3D=3D result ) {=0A=
				break;=0A=
			}=0A=
		}=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=3D 1 && n !=3D=3D elem ) {=0A=
				r.push( n );=0A=
			}=0A=
		}=0A=
=0A=
		return r;=0A=
	}=0A=
});=0A=
var rinlinejQuery =3D / jQuery\d+=3D"(?:\d+|null)"/g,=0A=
	rleadingWhitespace =3D /^\s+/,=0A=
	rxhtmlTag =3D /(<([\w:]+)[^>]*?)\/>/g,=0A=
	rselfClosing =3D =
/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,=0A=
	rtagName =3D /<([\w:]+)/,=0A=
	rtbody =3D /<tbody/i,=0A=
	rhtml =3D /<|&#?\w+;/,=0A=
	rnocache =3D /<script|<object|<embed|<option|<style/i,=0A=
	rchecked =3D /checked\s*(?:[^=3D]|=3D\s*.checked.)/i,  // =
checked=3D"checked" or checked (html5)=0A=
	fcloseTag =3D function( all, front, tag ) {=0A=
		return rselfClosing.test( tag ) ?=0A=
			all :=0A=
			front + "></" + tag + ">";=0A=
	},=0A=
	wrapMap =3D {=0A=
		option: [ 1, "<select multiple=3D'multiple'>", "</select>" ],=0A=
		legend: [ 1, "<fieldset>", "</fieldset>" ],=0A=
		thead: [ 1, "<table>", "</table>" ],=0A=
		tr: [ 2, "<table><tbody>", "</tbody></table>" ],=0A=
		td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],=0A=
		col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ],=0A=
		area: [ 1, "<map>", "</map>" ],=0A=
		_default: [ 0, "", "" ]=0A=
	};=0A=
=0A=
wrapMap.optgroup =3D wrapMap.option;=0A=
wrapMap.tbody =3D wrapMap.tfoot =3D wrapMap.colgroup =3D wrapMap.caption =
=3D wrapMap.thead;=0A=
wrapMap.th =3D wrapMap.td;=0A=
=0A=
// IE can't serialize <link> and <script> tags normally=0A=
if ( !jQuery.support.htmlSerialize ) {=0A=
	wrapMap._default =3D [ 1, "div<div>", "</div>" ];=0A=
}=0A=
=0A=
jQuery.fn.extend({=0A=
	text: function( text ) {=0A=
		if ( jQuery.isFunction(text) ) {=0A=
			return this.each(function(i) {=0A=
				var self =3D jQuery(this);=0A=
				self.text( text.call(this, i, self.text()) );=0A=
			});=0A=
		}=0A=
=0A=
		if ( typeof text !=3D=3D "object" && text !=3D=3D undefined ) {=0A=
			return this.empty().append( (this[0] && this[0].ownerDocument || =
document).createTextNode( text ) );=0A=
		}=0A=
=0A=
		return jQuery.text( this );=0A=
	},=0A=
=0A=
	wrapAll: function( html ) {=0A=
		if ( jQuery.isFunction( html ) ) {=0A=
			return this.each(function(i) {=0A=
				jQuery(this).wrapAll( html.call(this, i) );=0A=
			});=0A=
		}=0A=
=0A=
		if ( this[0] ) {=0A=
			// The elements to wrap the target around=0A=
			var wrap =3D jQuery( html, this[0].ownerDocument ).eq(0).clone(true);=0A=
=0A=
			if ( this[0].parentNode ) {=0A=
				wrap.insertBefore( this[0] );=0A=
			}=0A=
=0A=
			wrap.map(function() {=0A=
				var elem =3D this;=0A=
=0A=
				while ( elem.firstChild && elem.firstChild.nodeType =3D=3D=3D 1 ) {=0A=
					elem =3D elem.firstChild;=0A=
				}=0A=
=0A=
				return elem;=0A=
			}).append(this);=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	wrapInner: function( html ) {=0A=
		if ( jQuery.isFunction( html ) ) {=0A=
			return this.each(function(i) {=0A=
				jQuery(this).wrapInner( html.call(this, i) );=0A=
			});=0A=
		}=0A=
=0A=
		return this.each(function() {=0A=
			var self =3D jQuery( this ), contents =3D self.contents();=0A=
=0A=
			if ( contents.length ) {=0A=
				contents.wrapAll( html );=0A=
=0A=
			} else {=0A=
				self.append( html );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	wrap: function( html ) {=0A=
		return this.each(function() {=0A=
			jQuery( this ).wrapAll( html );=0A=
		});=0A=
	},=0A=
=0A=
	unwrap: function() {=0A=
		return this.parent().each(function() {=0A=
			if ( !jQuery.nodeName( this, "body" ) ) {=0A=
				jQuery( this ).replaceWith( this.childNodes );=0A=
			}=0A=
		}).end();=0A=
	},=0A=
=0A=
	append: function() {=0A=
		return this.domManip(arguments, true, function( elem ) {=0A=
			if ( this.nodeType =3D=3D=3D 1 ) {=0A=
				this.appendChild( elem );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	prepend: function() {=0A=
		return this.domManip(arguments, true, function( elem ) {=0A=
			if ( this.nodeType =3D=3D=3D 1 ) {=0A=
				this.insertBefore( elem, this.firstChild );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	before: function() {=0A=
		if ( this[0] && this[0].parentNode ) {=0A=
			return this.domManip(arguments, false, function( elem ) {=0A=
				this.parentNode.insertBefore( elem, this );=0A=
			});=0A=
		} else if ( arguments.length ) {=0A=
			var set =3D jQuery(arguments[0]);=0A=
			set.push.apply( set, this.toArray() );=0A=
			return this.pushStack( set, "before", arguments );=0A=
		}=0A=
	},=0A=
=0A=
	after: function() {=0A=
		if ( this[0] && this[0].parentNode ) {=0A=
			return this.domManip(arguments, false, function( elem ) {=0A=
				this.parentNode.insertBefore( elem, this.nextSibling );=0A=
			});=0A=
		} else if ( arguments.length ) {=0A=
			var set =3D this.pushStack( this, "after", arguments );=0A=
			set.push.apply( set, jQuery(arguments[0]).toArray() );=0A=
			return set;=0A=
		}=0A=
	},=0A=
	=0A=
	// keepData is for internal use only--do not document=0A=
	remove: function( selector, keepData ) {=0A=
		for ( var i =3D 0, elem; (elem =3D this[i]) !=3D null; i++ ) {=0A=
			if ( !selector || jQuery.filter( selector, [ elem ] ).length ) {=0A=
				if ( !keepData && elem.nodeType =3D=3D=3D 1 ) {=0A=
					jQuery.cleanData( elem.getElementsByTagName("*") );=0A=
					jQuery.cleanData( [ elem ] );=0A=
				}=0A=
=0A=
				if ( elem.parentNode ) {=0A=
					 elem.parentNode.removeChild( elem );=0A=
				}=0A=
			}=0A=
		}=0A=
		=0A=
		return this;=0A=
	},=0A=
=0A=
	empty: function() {=0A=
		for ( var i =3D 0, elem; (elem =3D this[i]) !=3D null; i++ ) {=0A=
			// Remove element nodes and prevent memory leaks=0A=
			if ( elem.nodeType =3D=3D=3D 1 ) {=0A=
				jQuery.cleanData( elem.getElementsByTagName("*") );=0A=
			}=0A=
=0A=
			// Remove any remaining nodes=0A=
			while ( elem.firstChild ) {=0A=
				elem.removeChild( elem.firstChild );=0A=
			}=0A=
		}=0A=
		=0A=
		return this;=0A=
	},=0A=
=0A=
	clone: function( events ) {=0A=
		// Do the clone=0A=
		var ret =3D this.map(function() {=0A=
			if ( !jQuery.support.noCloneEvent && !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 html =3D this.outerHTML, ownerDocument =3D this.ownerDocument;=0A=
				if ( !html ) {=0A=
					var div =3D ownerDocument.createElement("div");=0A=
					div.appendChild( this.cloneNode(true) );=0A=
					html =3D div.innerHTML;=0A=
				}=0A=
=0A=
				return jQuery.clean([html.replace(rinlinejQuery, "")=0A=
					// Handle the case in IE 8 where action=3D/test/> self-closes a tag=0A=
					.replace(/=3D([^=3D"'>\s]+\/)>/g, '=3D"$1">')=0A=
					.replace(rleadingWhitespace, "")], ownerDocument)[0];=0A=
			} else {=0A=
				return this.cloneNode(true);=0A=
			}=0A=
		});=0A=
=0A=
		// Copy the events from the original to the clone=0A=
		if ( events =3D=3D=3D true ) {=0A=
			cloneCopyEvent( this, ret );=0A=
			cloneCopyEvent( this.find("*"), ret.find("*") );=0A=
		}=0A=
=0A=
		// Return the cloned set=0A=
		return ret;=0A=
	},=0A=
=0A=
	html: function( value ) {=0A=
		if ( value =3D=3D=3D undefined ) {=0A=
			return this[0] && this[0].nodeType =3D=3D=3D 1 ?=0A=
				this[0].innerHTML.replace(rinlinejQuery, "") :=0A=
				null;=0A=
=0A=
		// See if we can take a shortcut and just use innerHTML=0A=
		} else if ( typeof value =3D=3D=3D "string" && !rnocache.test( value ) =
&&=0A=
			(jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value =
)) &&=0A=
			!wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) {=0A=
=0A=
			value =3D value.replace(rxhtmlTag, fcloseTag);=0A=
=0A=
			try {=0A=
				for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
					// Remove element nodes and prevent memory leaks=0A=
					if ( this[i].nodeType =3D=3D=3D 1 ) {=0A=
						jQuery.cleanData( this[i].getElementsByTagName("*") );=0A=
						this[i].innerHTML =3D value;=0A=
					}=0A=
				}=0A=
=0A=
			// If using innerHTML throws an exception, use the fallback method=0A=
			} catch(e) {=0A=
				this.empty().append( value );=0A=
			}=0A=
=0A=
		} else if ( jQuery.isFunction( value ) ) {=0A=
			this.each(function(i){=0A=
				var self =3D jQuery(this), old =3D self.html();=0A=
				self.empty().append(function(){=0A=
					return value.call( this, i, old );=0A=
				});=0A=
			});=0A=
=0A=
		} else {=0A=
			this.empty().append( value );=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	replaceWith: function( value ) {=0A=
		if ( this[0] && this[0].parentNode ) {=0A=
			// Make sure that the elements are removed from the DOM before they =
are inserted=0A=
			// this can help fix replacing a parent with child elements=0A=
			if ( jQuery.isFunction( value ) ) {=0A=
				return this.each(function(i) {=0A=
					var self =3D jQuery(this), old =3D self.html();=0A=
					self.replaceWith( value.call( this, i, old ) );=0A=
				});=0A=
			}=0A=
=0A=
			if ( typeof value !=3D=3D "string" ) {=0A=
				value =3D jQuery(value).detach();=0A=
			}=0A=
=0A=
			return this.each(function() {=0A=
				var next =3D this.nextSibling, parent =3D this.parentNode;=0A=
=0A=
				jQuery(this).remove();=0A=
=0A=
				if ( next ) {=0A=
					jQuery(next).before( value );=0A=
				} else {=0A=
					jQuery(parent).append( value );=0A=
				}=0A=
			});=0A=
		} else {=0A=
			return this.pushStack( jQuery(jQuery.isFunction(value) ? value() : =
value), "replaceWith", value );=0A=
		}=0A=
	},=0A=
=0A=
	detach: function( selector ) {=0A=
		return this.remove( selector, true );=0A=
	},=0A=
=0A=
	domManip: function( args, table, callback ) {=0A=
		var results, first, value =3D args[0], scripts =3D [], fragment, =
parent;=0A=
=0A=
		// We can't cloneNode fragments that contain checked, in WebKit=0A=
		if ( !jQuery.support.checkClone && arguments.length =3D=3D=3D 3 && =
typeof value =3D=3D=3D "string" && rchecked.test( value ) ) {=0A=
			return this.each(function() {=0A=
				jQuery(this).domManip( args, table, callback, true );=0A=
			});=0A=
		}=0A=
=0A=
		if ( jQuery.isFunction(value) ) {=0A=
			return this.each(function(i) {=0A=
				var self =3D jQuery(this);=0A=
				args[0] =3D value.call(this, i, table ? self.html() : undefined);=0A=
				self.domManip( args, table, callback );=0A=
			});=0A=
		}=0A=
=0A=
		if ( this[0] ) {=0A=
			parent =3D value && value.parentNode;=0A=
=0A=
			// If we're in a fragment, just use that instead of building a new one=0A=
			if ( jQuery.support.parentNode && parent && parent.nodeType =3D=3D=3D =
11 && parent.childNodes.length =3D=3D=3D this.length ) {=0A=
				results =3D { fragment: parent };=0A=
=0A=
			} else {=0A=
				results =3D buildFragment( args, this, scripts );=0A=
			}=0A=
			=0A=
			fragment =3D results.fragment;=0A=
			=0A=
			if ( fragment.childNodes.length =3D=3D=3D 1 ) {=0A=
				first =3D fragment =3D fragment.firstChild;=0A=
			} else {=0A=
				first =3D fragment.firstChild;=0A=
			}=0A=
=0A=
			if ( first ) {=0A=
				table =3D table && jQuery.nodeName( first, "tr" );=0A=
=0A=
				for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
					callback.call(=0A=
						table ?=0A=
							root(this[i], first) :=0A=
							this[i],=0A=
						i > 0 || results.cacheable || this.length > 1  ?=0A=
							fragment.cloneNode(true) :=0A=
							fragment=0A=
					);=0A=
				}=0A=
			}=0A=
=0A=
			if ( scripts.length ) {=0A=
				jQuery.each( scripts, evalScript );=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
=0A=
		function root( elem, cur ) {=0A=
			return jQuery.nodeName(elem, "table") ?=0A=
				(elem.getElementsByTagName("tbody")[0] ||=0A=
				elem.appendChild(elem.ownerDocument.createElement("tbody"))) :=0A=
				elem;=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
function cloneCopyEvent(orig, ret) {=0A=
	var i =3D 0;=0A=
=0A=
	ret.each(function() {=0A=
		if ( this.nodeName !=3D=3D (orig[i] && orig[i].nodeName) ) {=0A=
			return;=0A=
		}=0A=
=0A=
		var oldData =3D jQuery.data( orig[i++] ), curData =3D jQuery.data( =
this, oldData ), events =3D oldData && oldData.events;=0A=
=0A=
		if ( events ) {=0A=
			delete curData.handle;=0A=
			curData.events =3D {};=0A=
=0A=
			for ( var type in events ) {=0A=
				for ( var handler in events[ type ] ) {=0A=
					jQuery.event.add( this, type, events[ type ][ handler ], events[ =
type ][ handler ].data );=0A=
				}=0A=
			}=0A=
		}=0A=
	});=0A=
}=0A=
=0A=
function buildFragment( args, nodes, scripts ) {=0A=
	var fragment, cacheable, cacheresults,=0A=
		doc =3D (nodes && nodes[0] ? nodes[0].ownerDocument || nodes[0] : =
document);=0A=
=0A=
	// Only cache "small" (1/2 KB) strings that are associated with the =
main document=0A=
	// Cloning options loses the selected state, so don't cache them=0A=
	// IE 6 doesn't like it when you put <object> or <embed> elements in a =
fragment=0A=
	// Also, WebKit does not clone 'checked' attributes on cloneNode, so =
don't cache=0A=
	if ( args.length =3D=3D=3D 1 && typeof args[0] =3D=3D=3D "string" && =
args[0].length < 512 && doc =3D=3D=3D document &&=0A=
		!rnocache.test( args[0] ) && (jQuery.support.checkClone || =
!rchecked.test( args[0] )) ) {=0A=
=0A=
		cacheable =3D true;=0A=
		cacheresults =3D jQuery.fragments[ args[0] ];=0A=
		if ( cacheresults ) {=0A=
			if ( cacheresults !=3D=3D 1 ) {=0A=
				fragment =3D cacheresults;=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	if ( !fragment ) {=0A=
		fragment =3D doc.createDocumentFragment();=0A=
		jQuery.clean( args, doc, fragment, scripts );=0A=
	}=0A=
=0A=
	if ( cacheable ) {=0A=
		jQuery.fragments[ args[0] ] =3D cacheresults ? fragment : 1;=0A=
	}=0A=
=0A=
	return { fragment: fragment, cacheable: cacheable };=0A=
}=0A=
=0A=
jQuery.fragments =3D {};=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( selector ) {=0A=
		var ret =3D [], insert =3D jQuery( selector ),=0A=
			parent =3D this.length =3D=3D=3D 1 && this[0].parentNode;=0A=
		=0A=
		if ( parent && parent.nodeType =3D=3D=3D 11 && =
parent.childNodes.length =3D=3D=3D 1 && insert.length =3D=3D=3D 1 ) {=0A=
			insert[ original ]( this[0] );=0A=
			return this;=0A=
			=0A=
		} else {=0A=
			for ( var i =3D 0, l =3D insert.length; i < l; i++ ) {=0A=
				var elems =3D (i > 0 ? this.clone(true) : this).get();=0A=
				jQuery.fn[ original ].apply( jQuery(insert[i]), elems );=0A=
				ret =3D ret.concat( elems );=0A=
			}=0A=
		=0A=
			return this.pushStack( ret, name, insert.selector );=0A=
		}=0A=
	};=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	clean: function( elems, context, fragment, scripts ) {=0A=
		context =3D context || document;=0A=
=0A=
		// !context.createElement fails in IE with an error but returns typeof =
'object'=0A=
		if ( typeof context.createElement =3D=3D=3D "undefined" ) {=0A=
			context =3D context.ownerDocument || context[0] && =
context[0].ownerDocument || document;=0A=
		}=0A=
=0A=
		var ret =3D [];=0A=
=0A=
		for ( var i =3D 0, elem; (elem =3D elems[i]) !=3D null; i++ ) {=0A=
			if ( typeof elem =3D=3D=3D "number" ) {=0A=
				elem +=3D "";=0A=
			}=0A=
=0A=
			if ( !elem ) {=0A=
				continue;=0A=
			}=0A=
=0A=
			// Convert html string into DOM nodes=0A=
			if ( typeof elem =3D=3D=3D "string" && !rhtml.test( elem ) ) {=0A=
				elem =3D context.createTextNode( elem );=0A=
=0A=
			} else if ( typeof elem =3D=3D=3D "string" ) {=0A=
				// Fix "XHTML"-style tags in all browsers=0A=
				elem =3D elem.replace(rxhtmlTag, fcloseTag);=0A=
=0A=
				// Trim whitespace, otherwise indexOf won't work as expected=0A=
				var tag =3D (rtagName.exec( elem ) || ["", ""])[1].toLowerCase(),=0A=
					wrap =3D wrapMap[ tag ] || wrapMap._default,=0A=
					depth =3D wrap[0],=0A=
					div =3D context.createElement("div");=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 ( depth-- ) {=0A=
					div =3D div.lastChild;=0A=
				}=0A=
=0A=
				// Remove IE's autoinserted <tbody> from table fragments=0A=
				if ( !jQuery.support.tbody ) {=0A=
=0A=
					// String was a <table>, *may* have spurious <tbody>=0A=
					var hasBody =3D rtbody.test(elem),=0A=
						tbody =3D tag =3D=3D=3D "table" && !hasBody ?=0A=
							div.firstChild && div.firstChild.childNodes :=0A=
=0A=
							// String was a bare <thead> or <tfoot>=0A=
							wrap[1] =3D=3D=3D "<table>" && !hasBody ?=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=
					}=0A=
=0A=
				}=0A=
=0A=
				// IE completely kills leading whitespace when innerHTML is used=0A=
				if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( =
elem ) ) {=0A=
					div.insertBefore( context.createTextNode( =
rleadingWhitespace.exec(elem)[0] ), div.firstChild );=0A=
				}=0A=
=0A=
				elem =3D div.childNodes;=0A=
			}=0A=
=0A=
			if ( elem.nodeType ) {=0A=
				ret.push( elem );=0A=
			} else {=0A=
				ret =3D jQuery.merge( ret, elem );=0A=
			}=0A=
		}=0A=
=0A=
		if ( fragment ) {=0A=
			for ( var i =3D 0; ret[i]; i++ ) {=0A=
				if ( scripts && jQuery.nodeName( ret[i], "script" ) && (!ret[i].type =
|| ret[i].type.toLowerCase() =3D=3D=3D "text/javascript") ) {=0A=
					scripts.push( ret[i].parentNode ? ret[i].parentNode.removeChild( =
ret[i] ) : ret[i] );=0A=
				=0A=
				} else {=0A=
					if ( ret[i].nodeType =3D=3D=3D 1 ) {=0A=
						ret.splice.apply( ret, [i + 1, =
0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))) );=0A=
					}=0A=
					fragment.appendChild( ret[i] );=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
	=0A=
	cleanData: function( elems ) {=0A=
		var data, id, cache =3D jQuery.cache,=0A=
			special =3D jQuery.event.special,=0A=
			deleteExpando =3D jQuery.support.deleteExpando;=0A=
		=0A=
		for ( var i =3D 0, elem; (elem =3D elems[i]) !=3D null; i++ ) {=0A=
			id =3D elem[ jQuery.expando ];=0A=
			=0A=
			if ( id ) {=0A=
				data =3D cache[ id ];=0A=
				=0A=
				if ( data.events ) {=0A=
					for ( var type in data.events ) {=0A=
						if ( special[ type ] ) {=0A=
							jQuery.event.remove( elem, type );=0A=
=0A=
						} else {=0A=
							removeEvent( elem, type, data.handle );=0A=
						}=0A=
					}=0A=
				}=0A=
				=0A=
				if ( deleteExpando ) {=0A=
					delete elem[ jQuery.expando ];=0A=
=0A=
				} else if ( elem.removeAttribute ) {=0A=
					elem.removeAttribute( jQuery.expando );=0A=
				}=0A=
				=0A=
				delete cache[ id ];=0A=
			}=0A=
		}=0A=
	}=0A=
});=0A=
// exclude the following css properties to add px=0A=
var rexclude =3D /z-?index|font-?weight|opacity|zoom|line-?height/i,=0A=
	ralpha =3D /alpha\([^)]*\)/,=0A=
	ropacity =3D /opacity=3D([^)]*)/,=0A=
	rfloat =3D /float/i,=0A=
	rdashAlpha =3D /-([a-z])/ig,=0A=
	rupper =3D /([A-Z])/g,=0A=
	rnumpx =3D /^-?\d+(?:px)?$/i,=0A=
	rnum =3D /^-?\d/,=0A=
=0A=
	cssShow =3D { position: "absolute", visibility: "hidden", =
display:"block" },=0A=
	cssWidth =3D [ "Left", "Right" ],=0A=
	cssHeight =3D [ "Top", "Bottom" ],=0A=
=0A=
	// cache check for defaultView.getComputedStyle=0A=
	getComputedStyle =3D document.defaultView && =
document.defaultView.getComputedStyle,=0A=
	// normalize float css property=0A=
	styleFloat =3D jQuery.support.cssFloat ? "cssFloat" : "styleFloat",=0A=
	fcamelCase =3D function( all, letter ) {=0A=
		return letter.toUpperCase();=0A=
	};=0A=
=0A=
jQuery.fn.css =3D function( name, value ) {=0A=
	return access( this, name, value, true, function( elem, name, value ) {=0A=
		if ( value =3D=3D=3D undefined ) {=0A=
			return jQuery.curCSS( elem, name );=0A=
		}=0A=
		=0A=
		if ( typeof value =3D=3D=3D "number" && !rexclude.test(name) ) {=0A=
			value +=3D "px";=0A=
		}=0A=
=0A=
		jQuery.style( elem, name, value );=0A=
	});=0A=
};=0A=
=0A=
jQuery.extend({=0A=
	style: function( elem, name, value ) {=0A=
		// don't set styles on text and comment nodes=0A=
		if ( !elem || elem.nodeType =3D=3D=3D 3 || elem.nodeType =3D=3D=3D 8 ) =
{=0A=
			return undefined;=0A=
		}=0A=
=0A=
		// ignore negative width and height values #1599=0A=
		if ( (name =3D=3D=3D "width" || name =3D=3D=3D "height") && =
parseFloat(value) < 0 ) {=0A=
			value =3D undefined;=0A=
		}=0A=
=0A=
		var style =3D elem.style || elem, set =3D value !=3D=3D undefined;=0A=
=0A=
		// IE uses filters for opacity=0A=
		if ( !jQuery.support.opacity && name =3D=3D=3D "opacity" ) {=0A=
			if ( set ) {=0A=
				// IE has trouble with opacity if it does not have layout=0A=
				// Force it by setting the zoom level=0A=
				style.zoom =3D 1;=0A=
=0A=
				// Set the alpha filter to set the opacity=0A=
				var opacity =3D parseInt( value, 10 ) + "" =3D=3D=3D "NaN" ? "" : =
"alpha(opacity=3D" + value * 100 + ")";=0A=
				var filter =3D style.filter || jQuery.curCSS( elem, "filter" ) || "";=0A=
				style.filter =3D ralpha.test(filter) ? filter.replace(ralpha, =
opacity) : opacity;=0A=
			}=0A=
=0A=
			return style.filter && style.filter.indexOf("opacity=3D") >=3D 0 ?=0A=
				(parseFloat( ropacity.exec(style.filter)[1] ) / 100) + "":=0A=
				"";=0A=
		}=0A=
=0A=
		// Make sure we're using the right name for getting the float value=0A=
		if ( rfloat.test( name ) ) {=0A=
			name =3D styleFloat;=0A=
		}=0A=
=0A=
		name =3D name.replace(rdashAlpha, fcamelCase);=0A=
=0A=
		if ( set ) {=0A=
			style[ name ] =3D value;=0A=
		}=0A=
=0A=
		return style[ name ];=0A=
	},=0A=
=0A=
	css: function( elem, name, force, extra ) {=0A=
		if ( name =3D=3D=3D "width" || name =3D=3D=3D "height" ) {=0A=
			var val, props =3D cssShow, which =3D name =3D=3D=3D "width" ? =
cssWidth : cssHeight;=0A=
=0A=
			function getWH() {=0A=
				val =3D name =3D=3D=3D "width" ? elem.offsetWidth : =
elem.offsetHeight;=0A=
=0A=
				if ( extra =3D=3D=3D "border" ) {=0A=
					return;=0A=
				}=0A=
=0A=
				jQuery.each( which, function() {=0A=
					if ( !extra ) {=0A=
						val -=3D parseFloat(jQuery.curCSS( elem, "padding" + this, true)) =
|| 0;=0A=
					}=0A=
=0A=
					if ( extra =3D=3D=3D "margin" ) {=0A=
						val +=3D parseFloat(jQuery.curCSS( elem, "margin" + this, true)) =
|| 0;=0A=
					} else {=0A=
						val -=3D parseFloat(jQuery.curCSS( elem, "border" + this + =
"Width", true)) || 0;=0A=
					}=0A=
				});=0A=
			}=0A=
=0A=
			if ( elem.offsetWidth !=3D=3D 0 ) {=0A=
				getWH();=0A=
			} else {=0A=
				jQuery.swap( elem, props, getWH );=0A=
			}=0A=
=0A=
			return Math.max(0, Math.round(val));=0A=
		}=0A=
=0A=
		return jQuery.curCSS( elem, name, force );=0A=
	},=0A=
=0A=
	curCSS: function( elem, name, force ) {=0A=
		var ret, style =3D elem.style, filter;=0A=
=0A=
		// IE uses filters for opacity=0A=
		if ( !jQuery.support.opacity && name =3D=3D=3D "opacity" && =
elem.currentStyle ) {=0A=
			ret =3D ropacity.test(elem.currentStyle.filter || "") ?=0A=
				(parseFloat(RegExp.$1) / 100) + "" :=0A=
				"";=0A=
=0A=
			return ret =3D=3D=3D "" ?=0A=
				"1" :=0A=
				ret;=0A=
		}=0A=
=0A=
		// Make sure we're using the right name for getting the float value=0A=
		if ( rfloat.test( name ) ) {=0A=
			name =3D styleFloat;=0A=
		}=0A=
=0A=
		if ( !force && style && style[ name ] ) {=0A=
			ret =3D style[ name ];=0A=
=0A=
		} else if ( getComputedStyle ) {=0A=
=0A=
			// Only "float" is needed here=0A=
			if ( rfloat.test( name ) ) {=0A=
				name =3D "float";=0A=
			}=0A=
=0A=
			name =3D name.replace( rupper, "-$1" ).toLowerCase();=0A=
=0A=
			var defaultView =3D elem.ownerDocument.defaultView;=0A=
=0A=
			if ( !defaultView ) {=0A=
				return null;=0A=
			}=0A=
=0A=
			var computedStyle =3D defaultView.getComputedStyle( elem, null );=0A=
=0A=
			if ( computedStyle ) {=0A=
				ret =3D computedStyle.getPropertyValue( name );=0A=
			}=0A=
=0A=
			// We should always get a number back from opacity=0A=
			if ( name =3D=3D=3D "opacity" && ret =3D=3D=3D "" ) {=0A=
				ret =3D "1";=0A=
			}=0A=
=0A=
		} else if ( elem.currentStyle ) {=0A=
			var camelCase =3D name.replace(rdashAlpha, fcamelCase);=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 ( !rnumpx.test( ret ) && rnum.test( ret ) ) {=0A=
				// Remember the original values=0A=
				var left =3D style.left, rsLeft =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=
				style.left =3D camelCase =3D=3D=3D "fontSize" ? "1em" : (ret || 0);=0A=
				ret =3D style.pixelLeft + "px";=0A=
=0A=
				// Revert the changed values=0A=
				style.left =3D left;=0A=
				elem.runtimeStyle.left =3D rsLeft;=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=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=
=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=
});=0A=
=0A=
if ( jQuery.expr && jQuery.expr.filters ) {=0A=
	jQuery.expr.filters.hidden =3D function( elem ) {=0A=
		var width =3D elem.offsetWidth, height =3D elem.offsetHeight,=0A=
			skip =3D elem.nodeName.toLowerCase() =3D=3D=3D "tr";=0A=
=0A=
		return width =3D=3D=3D 0 && height =3D=3D=3D 0 && !skip ?=0A=
			true :=0A=
			width > 0 && height > 0 && !skip ?=0A=
				false :=0A=
				jQuery.curCSS(elem, "display") =3D=3D=3D "none";=0A=
	};=0A=
=0A=
	jQuery.expr.filters.visible =3D function( elem ) {=0A=
		return !jQuery.expr.filters.hidden( elem );=0A=
	};=0A=
}=0A=
var jsc =3D now(),=0A=
	rscript =3D /<script(.|\s)*?\/script>/gi,=0A=
	rselectTextarea =3D /select|textarea/i,=0A=
	rinput =3D =
/color|date|datetime|email|hidden|month|number|password|range|search|tel|=
text|time|url|week/i,=0A=
	jsre =3D /=3D\?(&|$)/,=0A=
	rquery =3D /\?/,=0A=
	rts =3D /(\?|&)_=3D.*?(&|$)/,=0A=
	rurl =3D /^(\w+:)?\/\/([^\/?#]+)/,=0A=
	r20 =3D /%20/g,=0A=
=0A=
	// Keep a copy of the old load method=0A=
	_load =3D jQuery.fn.load;=0A=
=0A=
jQuery.fn.extend({=0A=
	load: function( url, params, callback ) {=0A=
		if ( typeof url !=3D=3D "string" ) {=0A=
			return _load.call( this, url );=0A=
=0A=
		// Don't do a request if no elements are being requested=0A=
		} else if ( !this.length ) {=0A=
			return this;=0A=
		}=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=
		// 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 if ( typeof params =3D=3D=3D "object" ) {=0A=
				params =3D jQuery.param( params, jQuery.ajaxSettings.traditional );=0A=
				type =3D "POST";=0A=
			}=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=3D "success" || status =3D=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(rscript, ""))=0A=
=0A=
							// Locate the specified elements=0A=
							.find(selector) :=0A=
=0A=
						// If not, just inject the full result=0A=
						res.responseText );=0A=
				}=0A=
=0A=
				if ( callback ) {=0A=
					self.each( callback, [res.responseText, status, res] );=0A=
				}=0A=
			}=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 this.elements ? jQuery.makeArray(this.elements) : this;=0A=
		})=0A=
		.filter(function() {=0A=
			return this.name && !this.disabled &&=0A=
				(this.checked || rselectTextarea.test(this.nodeName) ||=0A=
					rinput.test(this.type));=0A=
		})=0A=
		.map(function( i, elem ) {=0A=
			var val =3D jQuery(this).val();=0A=
=0A=
			return val =3D=3D null ?=0A=
				null :=0A=
				jQuery.isArray(val) ?=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=
jQuery.extend({=0A=
=0A=
	get: function( url, data, callback, type ) {=0A=
		// shift arguments if data argument was omited=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			type =3D type || callback;=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=
		// shift arguments if data argument was omited=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			type =3D type || callback;=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=
		url: location.href,=0A=
		global: true,=0A=
		type: "GET",=0A=
		contentType: "application/x-www-form-urlencoded",=0A=
		processData: true,=0A=
		async: true,=0A=
		/*=0A=
		timeout: 0,=0A=
		data: null,=0A=
		username: null,=0A=
		password: null,=0A=
		traditional: false,=0A=
		*/=0A=
		// Create the request object; Microsoft failed to properly=0A=
		// implement the XMLHttpRequest in IE7 (can't request local files),=0A=
		// so we use the ActiveXObject when it is available=0A=
		// This function can be overriden by calling jQuery.ajaxSetup=0A=
		xhr: window.XMLHttpRequest && (window.location.protocol !=3D=3D =
"file:" || !window.ActiveXObject) ?=0A=
			function() {=0A=
				return new window.XMLHttpRequest();=0A=
			} :=0A=
			function() {=0A=
				try {=0A=
					return new window.ActiveXObject("Microsoft.XMLHTTP");=0A=
				} catch(e) {}=0A=
			},=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=
	etag: {},=0A=
=0A=
	ajax: function( origSettings ) {=0A=
		var s =3D jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings);=0A=
		=0A=
		var jsonp, status, data,=0A=
			callbackContext =3D origSettings && origSettings.context || s,=0A=
			type =3D s.type.toUpperCase();=0A=
=0A=
		// convert data if not already a string=0A=
		if ( s.data && s.processData && typeof s.data !=3D=3D "string" ) {=0A=
			s.data =3D jQuery.param( s.data, s.traditional );=0A=
		}=0A=
=0A=
		// Handle JSONP Parameter Callbacks=0A=
		if ( s.dataType =3D=3D=3D "jsonp" ) {=0A=
			if ( type =3D=3D=3D "GET" ) {=0A=
				if ( !jsre.test( s.url ) ) {=0A=
					s.url +=3D (rquery.test( s.url ) ? "&" : "?") + (s.jsonp || =
"callback") + "=3D?";=0A=
				}=0A=
			} else if ( !s.data || !jsre.test(s.data) ) {=0A=
				s.data =3D (s.data ? s.data + "&" : "") + (s.jsonp || "callback") + =
"=3D?";=0A=
			}=0A=
			s.dataType =3D "json";=0A=
		}=0A=
=0A=
		// Build temporary JSONP function=0A=
		if ( s.dataType =3D=3D=3D "json" && (s.data && jsre.test(s.data) || =
jsre.test(s.url)) ) {=0A=
			jsonp =3D s.jsonpCallback || ("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=
			}=0A=
=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 window[ jsonp ] || function( tmp ) {=0A=
				data =3D tmp;=0A=
				success();=0A=
				complete();=0A=
				// Garbage collect=0A=
				window[ jsonp ] =3D undefined;=0A=
=0A=
				try {=0A=
					delete window[ jsonp ];=0A=
				} catch(e) {}=0A=
=0A=
				if ( head ) {=0A=
					head.removeChild( script );=0A=
				}=0A=
			};=0A=
		}=0A=
=0A=
		if ( s.dataType =3D=3D=3D "script" && s.cache =3D=3D=3D null ) {=0A=
			s.cache =3D false;=0A=
		}=0A=
=0A=
		if ( s.cache =3D=3D=3D false && type =3D=3D=3D "GET" ) {=0A=
			var ts =3D now();=0A=
=0A=
			// try replacing _=3D if it is there=0A=
			var ret =3D s.url.replace(rts, "$1_=3D" + ts + "$2");=0A=
=0A=
			// if nothing was replaced, add timestamp to the end=0A=
			s.url =3D ret + ((ret =3D=3D=3D s.url) ? (rquery.test(s.url) ? "&" : =
"?") + "_=3D" + ts : "");=0A=
		}=0A=
=0A=
		// If data is available, append data to url for get requests=0A=
		if ( s.data && type =3D=3D=3D "GET" ) {=0A=
			s.url +=3D (rquery.test(s.url) ? "&" : "?") + s.data;=0A=
		}=0A=
=0A=
		// Watch for a new set of requests=0A=
		if ( s.global && ! jQuery.active++ ) {=0A=
			jQuery.event.trigger( "ajaxStart" );=0A=
		}=0A=
=0A=
		// Matches an absolute URL, and saves the domain=0A=
		var parts =3D rurl.exec( s.url ),=0A=
			remote =3D parts && (parts[1] && parts[1] !=3D=3D location.protocol =
|| parts[2] !=3D=3D location.host);=0A=
=0A=
		// If we're requesting a remote document=0A=
		// and trying to load JSON or Script with a GET=0A=
		if ( s.dataType =3D=3D=3D "script" && type =3D=3D=3D "GET" && remote ) =
{=0A=
			var head =3D document.getElementsByTagName("head")[0] || =
document.documentElement;=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=
=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=3D "loaded" || this.readyState =3D=3D=3D =
"complete") ) {=0A=
						done =3D true;=0A=
						success();=0A=
						complete();=0A=
=0A=
						// Handle memory leak in IE=0A=
						script.onload =3D script.onreadystatechange =3D null;=0A=
						if ( head && script.parentNode ) {=0A=
							head.removeChild( script );=0A=
						}=0A=
					}=0A=
				};=0A=
			}=0A=
=0A=
			// Use insertBefore instead of appendChild  to circumvent an IE6 bug.=0A=
			// This arises when a base node is used (#2709 and #4378).=0A=
			head.insertBefore( script, head.firstChild );=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=0A=
		var xhr =3D s.xhr();=0A=
=0A=
		if ( !xhr ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Open the socket=0A=
		// Passing null username, generates a login popup on Opera (#2865)=0A=
		if ( s.username ) {=0A=
			xhr.open(type, s.url, s.async, s.username, s.password);=0A=
		} else {=0A=
			xhr.open(type, s.url, s.async);=0A=
		}=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 || origSettings && origSettings.contentType ) {=0A=
				xhr.setRequestHeader("Content-Type", s.contentType);=0A=
			}=0A=
=0A=
			// Set the If-Modified-Since and/or If-None-Match header, if in =
ifModified mode.=0A=
			if ( s.ifModified ) {=0A=
				if ( jQuery.lastModified[s.url] ) {=0A=
					xhr.setRequestHeader("If-Modified-Since", =
jQuery.lastModified[s.url]);=0A=
				}=0A=
=0A=
				if ( jQuery.etag[s.url] ) {=0A=
					xhr.setRequestHeader("If-None-Match", jQuery.etag[s.url]);=0A=
				}=0A=
			}=0A=
=0A=
			// Set header so the called script knows that it's an XMLHttpRequest=0A=
			// Only send the header if it's not a remote XHR=0A=
			if ( !remote ) {=0A=
				xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");=0A=
			}=0A=
=0A=
			// Set the Accepts header for the server, depending on the dataType=0A=
			xhr.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 and early abort=0A=
		if ( s.beforeSend && s.beforeSend.call(callbackContext, xhr, s) =
=3D=3D=3D false ) {=0A=
			// Handle the global AJAX counter=0A=
			if ( s.global && ! --jQuery.active ) {=0A=
				jQuery.event.trigger( "ajaxStop" );=0A=
			}=0A=
=0A=
			// close opended socket=0A=
			xhr.abort();=0A=
			return false;=0A=
		}=0A=
=0A=
		if ( s.global ) {=0A=
			trigger("ajaxSend", [xhr, s]);=0A=
		}=0A=
=0A=
		// Wait for a response to come back=0A=
		var onreadystatechange =3D xhr.onreadystatechange =3D function( =
isTimeout ) {=0A=
			// The request was aborted=0A=
			if ( !xhr || xhr.readyState =3D=3D=3D 0 || isTimeout =3D=3D=3D =
"abort" ) {=0A=
				// Opera doesn't call onreadystatechange before this point=0A=
				// so we simulate the call=0A=
				if ( !requestDone ) {=0A=
					complete();=0A=
				}=0A=
=0A=
				requestDone =3D true;=0A=
				if ( xhr ) {=0A=
					xhr.onreadystatechange =3D jQuery.noop;=0A=
				}=0A=
=0A=
			// The transfer is complete and the data is available, or the request =
timed out=0A=
			} else if ( !requestDone && xhr && (xhr.readyState =3D=3D=3D 4 || =
isTimeout =3D=3D=3D "timeout") ) {=0A=
				requestDone =3D true;=0A=
				xhr.onreadystatechange =3D jQuery.noop;=0A=
=0A=
				status =3D isTimeout =3D=3D=3D "timeout" ?=0A=
					"timeout" :=0A=
					!jQuery.httpSuccess( xhr ) ?=0A=
						"error" :=0A=
						s.ifModified && jQuery.httpNotModified( xhr, s.url ) ?=0A=
							"notmodified" :=0A=
							"success";=0A=
=0A=
				var errMsg;=0A=
=0A=
				if ( status =3D=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( xhr, s.dataType, s );=0A=
					} catch(err) {=0A=
						status =3D "parsererror";=0A=
						errMsg =3D err;=0A=
					}=0A=
				}=0A=
=0A=
				// Make sure that the request was successful or notmodified=0A=
				if ( status =3D=3D=3D "success" || status =3D=3D=3D "notmodified" ) {=0A=
					// JSONP handles its own success callback=0A=
					if ( !jsonp ) {=0A=
						success();=0A=
					}=0A=
				} else {=0A=
					jQuery.handleError(s, xhr, status, errMsg);=0A=
				}=0A=
=0A=
				// Fire the complete handlers=0A=
				complete();=0A=
=0A=
				if ( isTimeout =3D=3D=3D "timeout" ) {=0A=
					xhr.abort();=0A=
				}=0A=
=0A=
				// Stop memory leaks=0A=
				if ( s.async ) {=0A=
					xhr =3D null;=0A=
				}=0A=
			}=0A=
		};=0A=
=0A=
		// Override the abort handler, if we can (IE doesn't allow it, but =
that's OK)=0A=
		// Opera doesn't fire onreadystatechange at all on abort=0A=
		try {=0A=
			var oldAbort =3D xhr.abort;=0A=
			xhr.abort =3D function() {=0A=
				if ( xhr ) {=0A=
					oldAbort.call( xhr );=0A=
				}=0A=
=0A=
				onreadystatechange( "abort" );=0A=
			};=0A=
		} catch(e) { }=0A=
=0A=
		// Timeout checker=0A=
		if ( s.async && s.timeout > 0 ) {=0A=
			setTimeout(function() {=0A=
				// Check to see if the request is still happening=0A=
				if ( xhr && !requestDone ) {=0A=
					onreadystatechange( "timeout" );=0A=
				}=0A=
			}, s.timeout);=0A=
		}=0A=
=0A=
		// Send the data=0A=
		try {=0A=
			xhr.send( type =3D=3D=3D "POST" || type =3D=3D=3D "PUT" || type =
=3D=3D=3D "DELETE" ? s.data : null );=0A=
		} catch(e) {=0A=
			jQuery.handleError(s, xhr, null, e);=0A=
			// Fire the complete handlers=0A=
			complete();=0A=
		}=0A=
=0A=
		// firefox 1.5 doesn't fire statechange for sync requests=0A=
		if ( !s.async ) {=0A=
			onreadystatechange();=0A=
		}=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.call( callbackContext, data, status, xhr );=0A=
			}=0A=
=0A=
			// Fire the global callback=0A=
			if ( s.global ) {=0A=
				trigger( "ajaxSuccess", [xhr, s] );=0A=
			}=0A=
		}=0A=
=0A=
		function complete() {=0A=
			// Process result=0A=
			if ( s.complete ) {=0A=
				s.complete.call( callbackContext, xhr, status);=0A=
			}=0A=
=0A=
			// The request was completed=0A=
			if ( s.global ) {=0A=
				trigger( "ajaxComplete", [xhr, s] );=0A=
			}=0A=
=0A=
			// Handle the global AJAX counter=0A=
			if ( s.global && ! --jQuery.active ) {=0A=
				jQuery.event.trigger( "ajaxStop" );=0A=
			}=0A=
		}=0A=
		=0A=
		function trigger(type, args) {=0A=
			(s.context ? jQuery(s.context) : jQuery.event).trigger(type, args);=0A=
		}=0A=
=0A=
		// return XMLHttpRequest to allow aborting the request etc.=0A=
		return xhr;=0A=
	},=0A=
=0A=
	handleError: function( s, xhr, status, e ) {=0A=
		// If a local callback was specified, fire it=0A=
		if ( s.error ) {=0A=
			s.error.call( s.context || s, xhr, status, e );=0A=
		}=0A=
=0A=
		// Fire the global callback=0A=
		if ( s.global ) {=0A=
			(s.context ? jQuery(s.context) : jQuery.event).trigger( "ajaxError", =
[xhr, s, e] );=0A=
		}=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( xhr ) {=0A=
		try {=0A=
			// IE error sometimes returns 1223 when it should be 204 so treat it =
as success, see #1450=0A=
			return !xhr.status && location.protocol =3D=3D=3D "file:" ||=0A=
				// Opera returns 0 when status is 304=0A=
				( xhr.status >=3D 200 && xhr.status < 300 ) ||=0A=
				xhr.status =3D=3D=3D 304 || xhr.status =3D=3D=3D 1223 || xhr.status =
=3D=3D=3D 0;=0A=
		} catch(e) {}=0A=
=0A=
		return false;=0A=
	},=0A=
=0A=
	// Determines if an XMLHttpRequest returns NotModified=0A=
	httpNotModified: function( xhr, url ) {=0A=
		var lastModified =3D xhr.getResponseHeader("Last-Modified"),=0A=
			etag =3D xhr.getResponseHeader("Etag");=0A=
=0A=
		if ( lastModified ) {=0A=
			jQuery.lastModified[url] =3D lastModified;=0A=
		}=0A=
=0A=
		if ( etag ) {=0A=
			jQuery.etag[url] =3D etag;=0A=
		}=0A=
=0A=
		// Opera returns 0 when status is 304=0A=
		return xhr.status =3D=3D=3D 304 || xhr.status =3D=3D=3D 0;=0A=
	},=0A=
=0A=
	httpData: function( xhr, type, s ) {=0A=
		var ct =3D xhr.getResponseHeader("content-type") || "",=0A=
			xml =3D type =3D=3D=3D "xml" || !type && ct.indexOf("xml") >=3D 0,=0A=
			data =3D xml ? xhr.responseXML : xhr.responseText;=0A=
=0A=
		if ( xml && data.documentElement.nodeName =3D=3D=3D "parsererror" ) {=0A=
			jQuery.error( "parsererror" );=0A=
		}=0A=
=0A=
		// Allow a pre-filtering function to sanitize the response=0A=
		// s is checked to keep backwards compatibility=0A=
		if ( s && s.dataFilter ) {=0A=
			data =3D s.dataFilter( data, type );=0A=
		}=0A=
=0A=
		// The filter can actually parse the response=0A=
		if ( typeof data =3D=3D=3D "string" ) {=0A=
			// Get the JavaScript object, if JSON is used.=0A=
			if ( type =3D=3D=3D "json" || !type && ct.indexOf("json") >=3D 0 ) {=0A=
				data =3D jQuery.parseJSON( data );=0A=
=0A=
			// If the type is "script", eval it in global context=0A=
			} else if ( type =3D=3D=3D "script" || !type && =
ct.indexOf("javascript") >=3D 0 ) {=0A=
				jQuery.globalEval( data );=0A=
			}=0A=
		}=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, traditional ) {=0A=
		var s =3D [];=0A=
		=0A=
		// Set traditional to true for jQuery <=3D 1.3.2 behavior.=0A=
		if ( traditional =3D=3D=3D undefined ) {=0A=
			traditional =3D jQuery.ajaxSettings.traditional;=0A=
		}=0A=
		=0A=
		// If an array was passed in, assume that it is an array of form =
elements.=0A=
		if ( jQuery.isArray(a) || a.jquery ) {=0A=
			// Serialize the form elements=0A=
			jQuery.each( a, function() {=0A=
				add( this.name, this.value );=0A=
			});=0A=
			=0A=
		} else {=0A=
			// If traditional, encode the "old" way (the way 1.3.2 or older=0A=
			// did it), otherwise encode params recursively.=0A=
			for ( var prefix in a ) {=0A=
				buildParams( prefix, a[prefix] );=0A=
			}=0A=
		}=0A=
=0A=
		// Return the resulting serialization=0A=
		return s.join("&").replace(r20, "+");=0A=
=0A=
		function buildParams( prefix, obj ) {=0A=
			if ( jQuery.isArray(obj) ) {=0A=
				// Serialize array item.=0A=
				jQuery.each( obj, function( i, v ) {=0A=
					if ( traditional || /\[\]$/.test( prefix ) ) {=0A=
						// Treat each array item as a scalar.=0A=
						add( prefix, v );=0A=
					} else {=0A=
						// If array item is non-scalar (array or object), encode its=0A=
						// numeric index to resolve deserialization ambiguity issues.=0A=
						// Note that rack (as of 1.0.0) can't currently deserialize=0A=
						// nested arrays properly, and attempting to do so may cause=0A=
						// a server error. Possible fixes are to modify rack's=0A=
						// deserialization algorithm or to provide an option or flag=0A=
						// to force array serialization to be shallow.=0A=
						buildParams( prefix + "[" + ( typeof v =3D=3D=3D "object" || =
jQuery.isArray(v) ? i : "" ) + "]", v );=0A=
					}=0A=
				});=0A=
					=0A=
			} else if ( !traditional && obj !=3D null && typeof obj =3D=3D=3D =
"object" ) {=0A=
				// Serialize object item.=0A=
				jQuery.each( obj, function( k, v ) {=0A=
					buildParams( prefix + "[" + k + "]", v );=0A=
				});=0A=
					=0A=
			} else {=0A=
				// Serialize scalar item.=0A=
				add( prefix, obj );=0A=
			}=0A=
		}=0A=
=0A=
		function add( key, value ) {=0A=
			// If value is a function, invoke it and return its value=0A=
			value =3D jQuery.isFunction(value) ? value() : value;=0A=
			s[ s.length ] =3D encodeURIComponent(key) + "=3D" + =
encodeURIComponent(value);=0A=
		}=0A=
	}=0A=
});=0A=
var elemdisplay =3D {},=0A=
	rfxtypes =3D /toggle|show|hide/,=0A=
	rfxnum =3D /^([+-]=3D)?([\d+-.]+)(.*)$/,=0A=
	timerId,=0A=
	fxAttrs =3D [=0A=
		// height animations=0A=
		[ "height", "marginTop", "marginBottom", "paddingTop", "paddingBottom" =
],=0A=
		// width animations=0A=
		[ "width", "marginLeft", "marginRight", "paddingLeft", "paddingRight" =
],=0A=
		// opacity animations=0A=
		[ "opacity" ]=0A=
	];=0A=
=0A=
jQuery.fn.extend({=0A=
	show: function( speed, callback ) {=0A=
		if ( speed || speed =3D=3D=3D 0) {=0A=
			return this.animate( genFx("show", 3), speed, callback);=0A=
=0A=
		} else {=0A=
			for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
				var old =3D jQuery.data(this[i], "olddisplay");=0A=
=0A=
				this[i].style.display =3D old || "";=0A=
=0A=
				if ( jQuery.css(this[i], "display") =3D=3D=3D "none" ) {=0A=
					var nodeName =3D this[i].nodeName, display;=0A=
=0A=
					if ( elemdisplay[ nodeName ] ) {=0A=
						display =3D elemdisplay[ nodeName ];=0A=
=0A=
					} else {=0A=
						var elem =3D jQuery("<" + nodeName + " />").appendTo("body");=0A=
=0A=
						display =3D elem.css("display");=0A=
=0A=
						if ( display =3D=3D=3D "none" ) {=0A=
							display =3D "block";=0A=
						}=0A=
=0A=
						elem.remove();=0A=
=0A=
						elemdisplay[ nodeName ] =3D display;=0A=
					}=0A=
=0A=
					jQuery.data(this[i], "olddisplay", display);=0A=
				}=0A=
			}=0A=
=0A=
			// Set the display of the elements in a second loop=0A=
			// to avoid the constant reflow=0A=
			for ( var j =3D 0, k =3D this.length; j < k; j++ ) {=0A=
				this[j].style.display =3D jQuery.data(this[j], "olddisplay") || "";=0A=
			}=0A=
=0A=
			return this;=0A=
		}=0A=
	},=0A=
=0A=
	hide: function( speed, callback ) {=0A=
		if ( speed || speed =3D=3D=3D 0 ) {=0A=
			return this.animate( genFx("hide", 3), speed, callback);=0A=
=0A=
		} else {=0A=
			for ( var i =3D 0, l =3D this.length; i < l; i++ ) {=0A=
				var old =3D jQuery.data(this[i], "olddisplay");=0A=
				if ( !old && old !=3D=3D "none" ) {=0A=
					jQuery.data(this[i], "olddisplay", jQuery.css(this[i], "display"));=0A=
				}=0A=
			}=0A=
=0A=
			// Set the display of the elements in a second loop=0A=
			// to avoid the constant reflow=0A=
			for ( var j =3D 0, k =3D this.length; j < k; j++ ) {=0A=
				this[j].style.display =3D "none";=0A=
			}=0A=
=0A=
			return this;=0A=
		}=0A=
	},=0A=
=0A=
	// Save the old toggle function=0A=
	_toggle: jQuery.fn.toggle,=0A=
=0A=
	toggle: function( fn, fn2 ) {=0A=
		var bool =3D typeof fn =3D=3D=3D "boolean";=0A=
=0A=
		if ( jQuery.isFunction(fn) && jQuery.isFunction(fn2) ) {=0A=
			this._toggle.apply( this, arguments );=0A=
=0A=
		} else if ( fn =3D=3D null || bool ) {=0A=
			this.each(function() {=0A=
				var state =3D bool ? fn : jQuery(this).is(":hidden");=0A=
				jQuery(this)[ state ? "show" : "hide" ]();=0A=
			});=0A=
=0A=
		} else {=0A=
			this.animate(genFx("toggle", 3), fn, fn2);=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	fadeTo: function( speed, to, callback ) {=0A=
		return this.filter(":hidden").css("opacity", 0).show().end()=0A=
					.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=
		if ( jQuery.isEmptyObject( prop ) ) {=0A=
			return this.each( optall.complete );=0A=
		}=0A=
=0A=
		return this[ optall.queue =3D=3D=3D false ? "each" : "queue" =
](function() {=0A=
			var opt =3D jQuery.extend({}, optall), p,=0A=
				hidden =3D this.nodeType =3D=3D=3D 1 && jQuery(this).is(":hidden"),=0A=
				self =3D this;=0A=
=0A=
			for ( p in prop ) {=0A=
				var name =3D p.replace(rdashAlpha, fcamelCase);=0A=
=0A=
				if ( p !=3D=3D name ) {=0A=
					prop[ name ] =3D prop[ p ];=0A=
					delete prop[ p ];=0A=
					p =3D name;=0A=
				}=0A=
=0A=
				if ( prop[p] =3D=3D=3D "hide" && hidden || prop[p] =3D=3D=3D "show" =
&& !hidden ) {=0A=
					return opt.complete.call(this);=0A=
				}=0A=
=0A=
				if ( ( p =3D=3D=3D "height" || p =3D=3D=3D "width" ) && this.style ) =
{=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=
				if ( jQuery.isArray( prop[p] ) ) {=0A=
					// Create (if needed) and add to specialEasing=0A=
					(opt.specialEasing =3D opt.specialEasing || {})[p] =3D prop[p][1];=0A=
					prop[p] =3D prop[p][0];=0A=
				}=0A=
			}=0A=
=0A=
			if ( opt.overflow !=3D null ) {=0A=
				this.style.overflow =3D "hidden";=0A=
			}=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 ( rfxtypes.test(val) ) {=0A=
					e[ val =3D=3D=3D "toggle" ? hidden ? "show" : "hide" : val ]( prop =
);=0A=
=0A=
				} else {=0A=
					var parts =3D rfxnum.exec(val),=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=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 "-=3D" ? -1 : 1) * end) + start;=0A=
						}=0A=
=0A=
						e.custom( start, end, unit );=0A=
=0A=
					} else {=0A=
						e.custom( start, val, "" );=0A=
					}=0A=
				}=0A=
			});=0A=
=0A=
			// For JS strict compliance=0A=
			return true;=0A=
		});=0A=
	},=0A=
=0A=
	stop: function( clearQueue, gotoEnd ) {=0A=
		var timers =3D jQuery.timers;=0A=
=0A=
		if ( clearQueue ) {=0A=
			this.queue([]);=0A=
		}=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=3D this ) {=0A=
					if (gotoEnd) {=0A=
						// force the next step to be the last=0A=
						timers[i](true);=0A=
					}=0A=
=0A=
					timers.splice(i, 1);=0A=
				}=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=
=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
// Generate shortcuts for custom animations=0A=
jQuery.each({=0A=
	slideDown: genFx("show", 1),=0A=
	slideUp: genFx("hide", 1),=0A=
	slideToggle: genFx("toggle", 1),=0A=
	fadeIn: { opacity: "show" },=0A=
	fadeOut: { opacity: "hide" }=0A=
}, function( name, props ) {=0A=
	jQuery.fn[ name ] =3D function( speed, callback ) {=0A=
		return this.animate( props, speed, callback );=0A=
	};=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	speed: function( speed, easing, fn ) {=0A=
		var opt =3D speed && typeof speed =3D=3D=3D "object" ? speed : {=0A=
			complete: fn || !fn && easing ||=0A=
				jQuery.isFunction( speed ) && speed,=0A=
			duration: speed,=0A=
			easing: fn && easing || easing && !jQuery.isFunction(easing) && easing=0A=
		};=0A=
=0A=
		opt.duration =3D jQuery.fx.off ? 0 : typeof opt.duration =3D=3D=3D =
"number" ? opt.duration :=0A=
			jQuery.fx.speeds[opt.duration] || jQuery.fx.speeds._default;=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=
			}=0A=
			if ( jQuery.isFunction( opt.old ) ) {=0A=
				opt.old.call( this );=0A=
			}=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=
=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=
=0A=
jQuery.fx.prototype =3D {=0A=
	// Simple function for setting a style value=0A=
	update: function() {=0A=
		if ( this.options.step ) {=0A=
			this.options.step.call( this.elem, this.now, this );=0A=
		}=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=3D "height" || this.prop =3D=3D=3D "width" ) =
&& this.elem.style ) {=0A=
			this.elem.style.display =3D "block";=0A=
		}=0A=
	},=0A=
=0A=
	// Get the current size=0A=
	cur: function( force ) {=0A=
		if ( this.elem[this.prop] !=3D null && (!this.elem.style || =
this.elem.style[this.prop] =3D=3D null) ) {=0A=
			return this.elem[ this.prop ];=0A=
		}=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 now();=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=
=0A=
		var self =3D this;=0A=
		function t( gotoEnd ) {=0A=
			return self.step(gotoEnd);=0A=
		}=0A=
=0A=
		t.elem =3D this.elem;=0A=
=0A=
		if ( t() && jQuery.timers.push(t) && !timerId ) {=0A=
			timerId =3D setInterval(jQuery.fx.tick, 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.style( this.elem, this.prop );=0A=
		this.options.show =3D true;=0A=
=0A=
		// Begin the animation=0A=
		// Make sure that we start at a small width/height to avoid any=0A=
		// flash of content=0A=
		this.custom(this.prop =3D=3D=3D "width" || this.prop =3D=3D=3D =
"height" ? 1 : 0, this.cur());=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.style( this.elem, 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 now(), done =3D true;=0A=
=0A=
		if ( gotoEnd || t >=3D 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=
			for ( var i in this.options.curAnim ) {=0A=
				if ( this.options.curAnim[i] !=3D=3D true ) {=0A=
					done =3D false;=0A=
				}=0A=
			}=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=
					var old =3D jQuery.data(this.elem, "olddisplay");=0A=
					this.elem.style.display =3D old ? old : this.options.display;=0A=
=0A=
					if ( jQuery.css(this.elem, "display") =3D=3D=3D "none" ) {=0A=
						this.elem.style.display =3D "block";=0A=
					}=0A=
				}=0A=
=0A=
				// Hide the element if the "hide" operation was done=0A=
				if ( this.options.hide ) {=0A=
					jQuery(this.elem).hide();=0A=
				}=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.style(this.elem, p, this.options.orig[p]);=0A=
					}=0A=
				}=0A=
=0A=
				// Execute the complete function=0A=
				this.options.complete.call( this.elem );=0A=
			}=0A=
=0A=
			return false;=0A=
=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=
			var specialEasing =3D this.options.specialEasing && =
this.options.specialEasing[this.prop];=0A=
			var defaultEasing =3D this.options.easing || (jQuery.easing.swing ? =
"swing" : "linear");=0A=
			this.pos =3D jQuery.easing[specialEasing || =
defaultEasing](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=
jQuery.extend( jQuery.fx, {=0A=
	tick: 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=
		}=0A=
=0A=
		if ( !timers.length ) {=0A=
			jQuery.fx.stop();=0A=
		}=0A=
	},=0A=
		=0A=
	stop: function() {=0A=
		clearInterval( timerId );=0A=
		timerId =3D null;=0A=
	},=0A=
	=0A=
	speeds: {=0A=
		slow: 600,=0A=
 		fast: 200,=0A=
 		// Default speed=0A=
 		_default: 400=0A=
	},=0A=
=0A=
	step: {=0A=
		opacity: function( fx ) {=0A=
			jQuery.style(fx.elem, "opacity", fx.now);=0A=
		},=0A=
=0A=
		_default: function( fx ) {=0A=
			if ( fx.elem.style && fx.elem.style[ fx.prop ] !=3D null ) {=0A=
				fx.elem.style[ fx.prop ] =3D (fx.prop =3D=3D=3D "width" || fx.prop =
=3D=3D=3D "height" ? Math.max(0, fx.now) : fx.now) + fx.unit;=0A=
			} else {=0A=
				fx.elem[ fx.prop ] =3D fx.now;=0A=
			}=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
if ( jQuery.expr && jQuery.expr.filters ) {=0A=
	jQuery.expr.filters.animated =3D function( elem ) {=0A=
		return jQuery.grep(jQuery.timers, function( fn ) {=0A=
			return elem =3D=3D=3D fn.elem;=0A=
		}).length;=0A=
	};=0A=
}=0A=
=0A=
function genFx( type, num ) {=0A=
	var obj =3D {};=0A=
=0A=
	jQuery.each( fxAttrs.concat.apply([], fxAttrs.slice(0,num)), function() =
{=0A=
		obj[ this ] =3D type;=0A=
	});=0A=
=0A=
	return obj;=0A=
}=0A=
if ( "getBoundingClientRect" in document.documentElement ) {=0A=
	jQuery.fn.offset =3D function( options ) {=0A=
		var elem =3D this[0];=0A=
=0A=
		if ( options ) { =0A=
			return this.each(function( i ) {=0A=
				jQuery.offset.setOffset( this, options, i );=0A=
			});=0A=
		}=0A=
=0A=
		if ( !elem || !elem.ownerDocument ) {=0A=
			return null;=0A=
		}=0A=
=0A=
		if ( elem =3D=3D=3D elem.ownerDocument.body ) {=0A=
			return jQuery.offset.bodyOffset( elem );=0A=
		}=0A=
=0A=
		var box =3D elem.getBoundingClientRect(), doc =3D elem.ownerDocument, =
body =3D doc.body, docElem =3D doc.documentElement,=0A=
			clientTop =3D docElem.clientTop || body.clientTop || 0, clientLeft =
=3D docElem.clientLeft || body.clientLeft || 0,=0A=
			top  =3D box.top  + (self.pageYOffset || jQuery.support.boxModel && =
docElem.scrollTop  || body.scrollTop ) - clientTop,=0A=
			left =3D box.left + (self.pageXOffset || jQuery.support.boxModel && =
docElem.scrollLeft || body.scrollLeft) - clientLeft;=0A=
=0A=
		return { top: top, left: left };=0A=
	};=0A=
=0A=
} else {=0A=
	jQuery.fn.offset =3D function( options ) {=0A=
		var elem =3D this[0];=0A=
=0A=
		if ( options ) { =0A=
			return this.each(function( i ) {=0A=
				jQuery.offset.setOffset( this, options, i );=0A=
			});=0A=
		}=0A=
=0A=
		if ( !elem || !elem.ownerDocument ) {=0A=
			return null;=0A=
		}=0A=
=0A=
		if ( elem =3D=3D=3D elem.ownerDocument.body ) {=0A=
			return jQuery.offset.bodyOffset( elem );=0A=
		}=0A=
=0A=
		jQuery.offset.initialize();=0A=
=0A=
		var offsetParent =3D elem.offsetParent, prevOffsetParent =3D elem,=0A=
			doc =3D elem.ownerDocument, computedStyle, docElem =3D =
doc.documentElement,=0A=
			body =3D doc.body, defaultView =3D doc.defaultView,=0A=
			prevComputedStyle =3D defaultView ? defaultView.getComputedStyle( =
elem, null ) : elem.currentStyle,=0A=
			top =3D elem.offsetTop, left =3D elem.offsetLeft;=0A=
=0A=
		while ( (elem =3D elem.parentNode) && elem !=3D=3D body && elem =
!=3D=3D docElem ) {=0A=
			if ( jQuery.offset.supportsFixedPosition && =
prevComputedStyle.position =3D=3D=3D "fixed" ) {=0A=
				break;=0A=
			}=0A=
=0A=
			computedStyle =3D defaultView ? defaultView.getComputedStyle(elem, =
null) : elem.currentStyle;=0A=
			top  -=3D elem.scrollTop;=0A=
			left -=3D elem.scrollLeft;=0A=
=0A=
			if ( elem =3D=3D=3D offsetParent ) {=0A=
				top  +=3D elem.offsetTop;=0A=
				left +=3D elem.offsetLeft;=0A=
=0A=
				if ( jQuery.offset.doesNotAddBorder && =
!(jQuery.offset.doesAddBorderForTableAndCells && =
/^t(able|d|h)$/i.test(elem.nodeName)) ) {=0A=
					top  +=3D parseFloat( computedStyle.borderTopWidth  ) || 0;=0A=
					left +=3D parseFloat( computedStyle.borderLeftWidth ) || 0;=0A=
				}=0A=
=0A=
				prevOffsetParent =3D offsetParent, offsetParent =3D =
elem.offsetParent;=0A=
			}=0A=
=0A=
			if ( jQuery.offset.subtractsBorderForOverflowNotVisible && =
computedStyle.overflow !=3D=3D "visible" ) {=0A=
				top  +=3D parseFloat( computedStyle.borderTopWidth  ) || 0;=0A=
				left +=3D parseFloat( computedStyle.borderLeftWidth ) || 0;=0A=
			}=0A=
=0A=
			prevComputedStyle =3D computedStyle;=0A=
		}=0A=
=0A=
		if ( prevComputedStyle.position =3D=3D=3D "relative" || =
prevComputedStyle.position =3D=3D=3D "static" ) {=0A=
			top  +=3D body.offsetTop;=0A=
			left +=3D body.offsetLeft;=0A=
		}=0A=
=0A=
		if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position =
=3D=3D=3D "fixed" ) {=0A=
			top  +=3D Math.max( docElem.scrollTop, body.scrollTop );=0A=
			left +=3D Math.max( docElem.scrollLeft, body.scrollLeft );=0A=
		}=0A=
=0A=
		return { top: top, left: left };=0A=
	};=0A=
}=0A=
=0A=
jQuery.offset =3D {=0A=
	initialize: function() {=0A=
		var body =3D document.body, container =3D =
document.createElement("div"), innerDiv, checkDiv, table, td, =
bodyMarginTop =3D parseFloat( jQuery.curCSS(body, "marginTop", true) ) =
|| 0,=0A=
			html =3D "<div =
style=3D'position:absolute;top:0;left:0;margin:0;border:5px solid =
#000;padding:0;width:1px;height:1px;'><div></div></div><table =
style=3D'position:absolute;top:0;left:0;margin:0;border:5px solid =
#000;padding:0;width:1px;height:1px;' cellpadding=3D'0' =
cellspacing=3D'0'><tr><td></td></tr></table>";=0A=
=0A=
		jQuery.extend( container.style, { position: "absolute", top: 0, left: =
0, margin: 0, border: 0, width: "1px", height: "1px", visibility: =
"hidden" } );=0A=
=0A=
		container.innerHTML =3D html;=0A=
		body.insertBefore( container, body.firstChild );=0A=
		innerDiv =3D container.firstChild;=0A=
		checkDiv =3D innerDiv.firstChild;=0A=
		td =3D innerDiv.nextSibling.firstChild.firstChild;=0A=
=0A=
		this.doesNotAddBorder =3D (checkDiv.offsetTop !=3D=3D 5);=0A=
		this.doesAddBorderForTableAndCells =3D (td.offsetTop =3D=3D=3D 5);=0A=
=0A=
		checkDiv.style.position =3D "fixed", checkDiv.style.top =3D "20px";=0A=
		// safari subtracts parent border width here which is 5px=0A=
		this.supportsFixedPosition =3D (checkDiv.offsetTop =3D=3D=3D 20 || =
checkDiv.offsetTop =3D=3D=3D 15);=0A=
		checkDiv.style.position =3D checkDiv.style.top =3D "";=0A=
=0A=
		innerDiv.style.overflow =3D "hidden", innerDiv.style.position =3D =
"relative";=0A=
		this.subtractsBorderForOverflowNotVisible =3D (checkDiv.offsetTop =
=3D=3D=3D -5);=0A=
=0A=
		this.doesNotIncludeMarginInBodyOffset =3D (body.offsetTop !=3D=3D =
bodyMarginTop);=0A=
=0A=
		body.removeChild( container );=0A=
		body =3D container =3D innerDiv =3D checkDiv =3D table =3D td =3D null;=0A=
		jQuery.offset.initialize =3D jQuery.noop;=0A=
	},=0A=
=0A=
	bodyOffset: function( body ) {=0A=
		var top =3D body.offsetTop, left =3D body.offsetLeft;=0A=
=0A=
		jQuery.offset.initialize();=0A=
=0A=
		if ( jQuery.offset.doesNotIncludeMarginInBodyOffset ) {=0A=
			top  +=3D parseFloat( jQuery.curCSS(body, "marginTop",  true) ) || 0;=0A=
			left +=3D parseFloat( jQuery.curCSS(body, "marginLeft", true) ) || 0;=0A=
		}=0A=
=0A=
		return { top: top, left: left };=0A=
	},=0A=
	=0A=
	setOffset: function( elem, options, i ) {=0A=
		// set position first, in-case top/left are set even on static elem=0A=
		if ( /static/.test( jQuery.curCSS( elem, "position" ) ) ) {=0A=
			elem.style.position =3D "relative";=0A=
		}=0A=
		var curElem   =3D jQuery( elem ),=0A=
			curOffset =3D curElem.offset(),=0A=
			curTop    =3D parseInt( jQuery.curCSS( elem, "top",  true ), 10 ) || =
0,=0A=
			curLeft   =3D parseInt( jQuery.curCSS( elem, "left", true ), 10 ) || =
0;=0A=
=0A=
		if ( jQuery.isFunction( options ) ) {=0A=
			options =3D options.call( elem, i, curOffset );=0A=
		}=0A=
=0A=
		var props =3D {=0A=
			top:  (options.top  - curOffset.top)  + curTop,=0A=
			left: (options.left - curOffset.left) + curLeft=0A=
		};=0A=
		=0A=
		if ( "using" in options ) {=0A=
			options.using.call( elem, props );=0A=
		} else {=0A=
			curElem.css( props );=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
=0A=
jQuery.fn.extend({=0A=
	position: function() {=0A=
		if ( !this[0] ) {=0A=
			return null;=0A=
		}=0A=
=0A=
		var elem =3D this[0],=0A=
=0A=
		// Get *real* offsetParent=0A=
		offsetParent =3D this.offsetParent(),=0A=
=0A=
		// Get correct offsets=0A=
		offset       =3D this.offset(),=0A=
		parentOffset =3D /^body|html$/i.test(offsetParent[0].nodeName) ? { =
top: 0, left: 0 } : offsetParent.offset();=0A=
=0A=
		// Subtract element margins=0A=
		// note: when an element has margin: auto the offsetLeft and marginLeft=0A=
		// are the same in Safari causing offset.left to incorrectly be 0=0A=
		offset.top  -=3D parseFloat( jQuery.curCSS(elem, "marginTop",  true) ) =
|| 0;=0A=
		offset.left -=3D parseFloat( jQuery.curCSS(elem, "marginLeft", true) ) =
|| 0;=0A=
=0A=
		// Add offsetParent borders=0A=
		parentOffset.top  +=3D parseFloat( jQuery.curCSS(offsetParent[0], =
"borderTopWidth",  true) ) || 0;=0A=
		parentOffset.left +=3D parseFloat( jQuery.curCSS(offsetParent[0], =
"borderLeftWidth", true) ) || 0;=0A=
=0A=
		// Subtract the two offsets=0A=
		return {=0A=
			top:  offset.top  - parentOffset.top,=0A=
			left: offset.left - parentOffset.left=0A=
		};=0A=
	},=0A=
=0A=
	offsetParent: function() {=0A=
		return this.map(function() {=0A=
			var offsetParent =3D this.offsetParent || document.body;=0A=
			while ( offsetParent && (!/^body|html$/i.test(offsetParent.nodeName) =
&& jQuery.css(offsetParent, "position") =3D=3D=3D "static") ) {=0A=
				offsetParent =3D offsetParent.offsetParent;=0A=
			}=0A=
			return offsetParent;=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
=0A=
// Create scrollLeft and scrollTop methods=0A=
jQuery.each( ["Left", "Top"], function( i, name ) {=0A=
	var method =3D "scroll" + name;=0A=
=0A=
	jQuery.fn[ method ] =3D function(val) {=0A=
		var elem =3D this[0], win;=0A=
		=0A=
		if ( !elem ) {=0A=
			return null;=0A=
		}=0A=
=0A=
		if ( val !=3D=3D undefined ) {=0A=
			// Set the scroll offset=0A=
			return this.each(function() {=0A=
				win =3D getWindow( this );=0A=
=0A=
				if ( win ) {=0A=
					win.scrollTo(=0A=
						!i ? val : jQuery(win).scrollLeft(),=0A=
						 i ? val : jQuery(win).scrollTop()=0A=
					);=0A=
=0A=
				} else {=0A=
					this[ method ] =3D val;=0A=
				}=0A=
			});=0A=
		} else {=0A=
			win =3D getWindow( elem );=0A=
=0A=
			// Return the scroll offset=0A=
			return win ? ("pageXOffset" in win) ? win[ i ? "pageYOffset" : =
"pageXOffset" ] :=0A=
				jQuery.support.boxModel && win.document.documentElement[ method ] ||=0A=
					win.document.body[ method ] :=0A=
				elem[ method ];=0A=
		}=0A=
	};=0A=
});=0A=
=0A=
function getWindow( elem ) {=0A=
	return ("scrollTo" in elem && elem.document) ?=0A=
		elem :=0A=
		elem.nodeType =3D=3D=3D 9 ?=0A=
			elem.defaultView || elem.parentWindow :=0A=
			false;=0A=
}=0A=
// Create innerHeight, innerWidth, outerHeight and outerWidth methods=0A=
jQuery.each([ "Height", "Width" ], function( i, name ) {=0A=
=0A=
	var type =3D name.toLowerCase();=0A=
=0A=
	// innerHeight and innerWidth=0A=
	jQuery.fn["inner" + name] =3D function() {=0A=
		return this[0] ?=0A=
			jQuery.css( this[0], type, false, "padding" ) :=0A=
			null;=0A=
	};=0A=
=0A=
	// outerHeight and outerWidth=0A=
	jQuery.fn["outer" + name] =3D function( margin ) {=0A=
		return this[0] ?=0A=
			jQuery.css( this[0], type, false, margin ? "margin" : "border" ) :=0A=
			null;=0A=
	};=0A=
=0A=
	jQuery.fn[ type ] =3D function( size ) {=0A=
		// Get window width or height=0A=
		var elem =3D this[0];=0A=
		if ( !elem ) {=0A=
			return size =3D=3D null ? null : this;=0A=
		}=0A=
		=0A=
		if ( jQuery.isFunction( size ) ) {=0A=
			return this.each(function( i ) {=0A=
				var self =3D jQuery( this );=0A=
				self[ type ]( size.call( this, i, self[ type ]() ) );=0A=
			});=0A=
		}=0A=
=0A=
		return ("scrollTo" in elem && elem.document) ? // does it walk and =
quack like a window?=0A=
			// Everyone else use document.documentElement or document.body =
depending on Quirks vs Standards mode=0A=
			elem.document.compatMode =3D=3D=3D "CSS1Compat" && =
elem.document.documentElement[ "client" + name ] ||=0A=
			elem.document.body[ "client" + name ] :=0A=
=0A=
			// Get document width or height=0A=
			(elem.nodeType =3D=3D=3D 9) ? // is it a document=0A=
				// Either scroll[Width/Height] or offset[Width/Height], whichever is =
greater=0A=
				Math.max(=0A=
					elem.documentElement["client" + name],=0A=
					elem.body["scroll" + name], elem.documentElement["scroll" + name],=0A=
					elem.body["offset" + name], elem.documentElement["offset" + name]=0A=
				) :=0A=
=0A=
				// Get or set width or height on the element=0A=
				size =3D=3D=3D undefined ?=0A=
					// Get width or height on the element=0A=
					jQuery.css( elem, type ) :=0A=
=0A=
					// Set the width or height on the element (default to pixels if =
value is unitless)=0A=
					this.css( type, typeof size =3D=3D=3D "string" ? size : size + "px" =
);=0A=
	};=0A=
=0A=
});=0A=
// Expose jQuery to the global object=0A=
window.jQuery =3D window.$ =3D jQuery;=0A=
=0A=
})(window);=0A=

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/js/fundraiser-js.js

// LII Fundraiser JS functions=0A=
//Author: Wayne Weibel=0A=
//created: May 28, 2010=0A=
=0A=
/** execute on script load **/=0A=
FUNDRAISER_COOKIENAME =3D "lii_fundraiser";=0A=
TRACKING_SCRIPT_URL =3D =
"http://www.law.cornell.edu/survey/fundraiser-tracking.php";=0A=
DONATION_URL =3D =
"http://nimbus.law.cornell.edu/civicrm/civicrm/contribute/transact?id=3D6=
";=0A=
LEARN_MORE_URL =3D "http://topics.law.cornell.edu/lii/about-lii";=0A=
LEARNED_MORE =3D false;=0A=
=0A=
=0A=
addLoadEvent(fundraiserOnLoad);=0A=
=0A=
//##########################=0A=
=0A=
/** main functions **/=0A=
function fundraiserOnLoad() {=0A=
	if (getCookie(FUNDRAISER_COOKIENAME) =3D=3D null) { =0A=
		setSplashOptions();=0A=
		showFundraiserSplash(); =0A=
	}=0A=
	//else { alert("cookie present: " + entice_cookie); }=0A=
	=0A=
	//assign button actions=0A=
	$("#close-button").click(donateNo);=0A=
	$("#do-donation").click(donateYes);=0A=
	$("#learn-more").click(learnMore);=0A=
	=0A=
}=0A=
=0A=
function showFundraiserSplash() {=0A=
	//alert("loading splashover");=0A=
	var xcoord =3D ($(window).width()/2) - ($("#fundraiser").width()/2) + =
$(window).scrollLeft() + "px";=0A=
	$("#fundraiser").css("left",xcoord);=0A=
	var ycoord =3D ($(window).height()/2) - ($("#fundraiser").height()/2) + =
$(window).scrollTop() + "px";=0A=
	$("#fundraiser").css("top",ycoord);=0A=
	$("#fundraiser").show("slow");=0A=
	=0A=
	$("#fundraiser-screen").css("width",$(window).width()+"px");=0A=
	$("#fundraiser-screen").css("height",$(window).height()+"px");=0A=
	$("#fundraiser-screen").show();=0A=
}=0A=
=0A=
function donateNo() {=0A=
	setCookie(FUNDRAISER_COOKIENAME,"NO",30);=0A=
	closeSplashover();=0A=
	recordSplashOptions(false);=0A=
}=0A=
=0A=
function donateYes() {=0A=
	setCookie(FUNDRAISER_COOKIENAME,"YES",365);=0A=
	closeSplashover();=0A=
	window.open(DONATION_URL,"donateYes");=0A=
	recordSplashOptions(true);=0A=
}=0A=
=0A=
function learnMore() {=0A=
	window.open(LEARN_MORE_URL, "learnMore");=0A=
	LEARNED_MORE =3D true;=0A=
}=0A=
=0A=
function closeSplashover() {=0A=
	$("#fundraiser").hide("fast");=0A=
	$("#fundraiser-screen").hide();=0A=
}=0A=
=0A=
function setSplashOptions() {=0A=
	var message =3D [=0A=
		"<p class=3D'message'>Help us keep legal information free for =
everyone.</p><p class=3D'message cta'>Donate to LII</p>",=0A=
		"<p class=3D'message'>Every month, your contributions enable 1 million =
people to access the law here, for free.</p><p class=3D'message =
cta'>Show Your Support</p>",=0A=
		"<p class=3D'message'>Support open access to legal information.</p><p =
class=3D'message cta'>Donate to LII</p>",=0A=
		"<p class=3D'message'>You allow LII to provide free, open access to =
the law.</p><p class=3D'message cta'>Contribute Today</p>"=0A=
	];=0A=
	=0A=
	var value =3D [=0A=
		"Help us keep legal information free for everyone. Donate to LII",=0A=
		"Every month, your contributions enable 1 million people to access the =
law here, for free. Show Your Support",=0A=
		"Support open access to legal information. Donate to LII",=0A=
		"You allow LII to provide free, open access to the law. Contribute =
Today."=0A=
	];=0A=
	=0A=
	var randnum =3D Math.floor( Math.random() * 4); //random number between =
0 and 3 - the indexes of the arrays=0A=
	var content =3D message[randnum] + "<input =
type=3D'hidden'id=3D'fundraiser-message' name=3D'fundraiser-message' =
value=3D'" + value[randnum] + "' />";=0A=
	=0A=
	$("#fundraiser-content").html(content);=0A=
}=0A=
=0A=
function recordSplashOptions(donated) {=0A=
	params =3D "action=3DtrackDonor&learned_more=3D" + LEARNED_MORE + =
"&donated=3D" + donated;=0A=
	params +=3D "&message=3D" + $('#fundraiser-message').val();=0A=
=0A=
	response =3D makeRequest(params, TRACKING_SCRIPT_URL);=0A=
	//alert(response);=0A=
}=0A=
//############################=0A=
=0A=
/** utility functions **/=0A=
function addLoadEvent(func) {=0A=
  var oldonload =3D window.onload;=0A=
  if (typeof window.onload !=3D 'function') {=0A=
    window.onload =3D func;=0A=
  } else {=0A=
    window.onload =3D function() {=0A=
      oldonload();=0A=
      func();=0A=
    }=0A=
  }=0A=
}=0A=
=0A=
function setCookie(c_name,value,expiredays) {=0A=
	var exdate=3Dnew Date();=0A=
	exdate.setDate(exdate.getDate()+expiredays);=0A=
	=0A=
	var cookievalue =3D c_name + "=3D" + escape(value);=0A=
	cookievalue +=3D ((expiredays=3D=3Dnull) ? "" : =
";expires=3D"+exdate.toGMTString());=0A=
	cookievalue +=3D ";path=3D/";=0A=
	document.cookie =3D cookievalue;=0A=
}=0A=
=0A=
function getCookie(c_name) {=0A=
	if (document.cookie.length>0)=0A=
	  {=0A=
	  c_start=3Ddocument.cookie.indexOf(c_name + "=3D");=0A=
	  if (c_start!=3D-1)=0A=
		{=0A=
		c_start=3Dc_start + c_name.length+1;=0A=
		c_end=3Ddocument.cookie.indexOf(";",c_start);=0A=
		if (c_end=3D=3D-1) c_end=3Ddocument.cookie.length;=0A=
		return unescape(document.cookie.substring(c_start,c_end));=0A=
		}=0A=
	  }=0A=
	return null;=0A=
}=0A=
=0A=
function deleteCookie(name){=0A=
	//clear the cookie from browser memory=0A=
	setCookie(name,"",-1);=0A=
}=0A=
=0A=
/*=0A=
	perform AJAX request to server=0A=
	- uses POST method=0A=
	- async =3D FALSE (script will wait for send to return)=0A=
	@param params - the variables and values to be sent to server script as =
a String=0A=
	@param URL - the url to the file to be accessed; full or root-relative=0A=
	@param update_element - id of, or the object to be updated with =
returned data=0A=
	@param overwrite - boolean; true - replace content of update_element, =
false - append to update_element=0A=
*/=0A=
function makeRequest(params, URL){=0A=
	var xhr =3D false;=0A=
	if (window.XMLHttpRequest) xhr =3D new XMLHttpRequest();=0A=
	else if (window.ActiveXObject){=0A=
		try { xhr =3D new ActiveXObject("Microsoft.XMLHTTP"); }=0A=
		catch(e){}=0A=
	}=0A=
=0A=
	if (!xhr) return alert('Unable to create XMLHttpRequest');=0A=
	xhr.open('POST', URL, false);=0A=
	//Send the proper header information along with the request=0A=
	xhr.setRequestHeader("Content-type", =
"application/x-www-form-urlencoded");=0A=
	xhr.setRequestHeader("Content-length", params.length);=0A=
	xhr.setRequestHeader("Connection", "close");=0A=
	=0A=
	//alert("sending request: " + params);=0A=
	xhr.send(params);=0A=
=0A=
	if (xhr.status =3D=3D 200) return xhr.responseText=0A=
	else alert("Error During AJAX Request to\n" + URL + "\n\nResponse Code: =
" + xhr.status + "</h1>" + xhr.responseText);=0A=
	=0A=
	return null=0A=
}=0A=

------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://s7.addthis.com/js/250/addthis_widget.js?pub=liiadverts

/* (c) 2008, 2009, 2010 Add This, LLC */=0A=
if(!window._ate){var =
_atd=3D"www.addthis.com/",_atr=3D"//s7.addthis.com/",_atn=3D"//l.addthisc=
dn.com/",_euc=3DencodeURIComponent,_duc=3DdecodeURIComponent,_atc=3D{dr:0=
,ver:250,loc:0,enote:"",cwait:500,tamp:-1,xamp:0,camp:1,vamp:1,famp:0.02,=
pamp:0.2,damp:0.5,abf:!!window.addthis_do_ab};(function(){try{var =
F=3Dwindow.location;if(F.protocol.indexOf("file")=3D=3D=3D0){_atr=3D"http=
:"+_atr}if(F.hostname.indexOf("localhost")!=3D-1){_atc.loc=3D1}}catch(L){=
}var =
J=3Dnavigator.userAgent.toLowerCase(),M=3Ddocument,t=3Dwindow,H=3DM.locat=
ion,O=3D{win:/windows/.test(J),xp:/windows nt 5.1/.test(J)||/windows nt =
5.2/.test(J),chr:/chrome/.test(J),iph:/iphone/.test(J),ipa:/ipad/.test(J)=
,saf:/safari/.test(J),web:/webkit/.test(J),opr:/opera/.test(J),msi:(/msie=
/.test(J))&&!(/opera/.test(J)),ffx:/firefox/.test(J),ff2:/firefox\/2/.tes=
t(J),ie6:/msie 6.0/.test(J),ie7:/msie =
7.0/.test(J),mod:-1},f=3D{vst:[],rev:"78108",bro:O,show:1,dl:H,upm:!!t.po=
stMessage&&(""+t.postMessage).toLowerCase().indexOf("[native =
code]")!=3D=3D-1,camp:_atc.camp-Math.random(),xamp:_atc.xamp-Math.random(=
),vamp:_atc.vamp-Math.random(),pamp:_atc.pamp-Math.random(),afamp:_atc.af=
amp-Math.random(),ab:"-",seq:1,inst:1,wait:500,tmo:null,cvt:[],avt:null,s=
ttm:new =
Date().getTime(),max:4294967295,sid:0,sub:!!window.at_sub,dbm:0,uid:null,=
spt:"static/r07/widget19.png",api:{},imgz:[],hash:window.location.hash};M=
.ce=3DM.createElement;M.gn=3DM.getElementsByTagName;window._ate=3Df;var =
u=3Dfunction(r,p,q,d){if(!r){return q}if(r instanceof =
Array||(r.length&&(typeof r!=3D=3D"function"))){for(var =
l=3D0,a=3Dr.length,b=3Dr[0];l<a;b=3Dr[++l]){q=3Dp.call(d||r,q,b,l,r)}}els=
e{for(var e in r){q=3Dp.call(d||r,q,r[e],e,r)}}return =
q},A=3DArray.prototype.slice,C=3Dfunction(b){return =
A.apply(b,A.call(arguments,1))},B=3Dfunction(a){return(""+a).replace(/(^\=
s+|\s+$)/g,"")},K=3Dfunction(a,b){return =
u(C(arguments,1),function(e,d){return =
u(d,function(p,l,i){p[i]=3Dl;return p},e)},a)},m=3Dfunction(b,a){return =
u(b,function(i,e,d){d=3DB(d);if(d){i.push(_euc(d)+"=3D"+_euc(B(e)))}retur=
n i},[]).join(a||"&")},j=3Dfunction(b,a){return =
u((b||"").split(a||"&"),function(p,r){try{var =
l=3Dr.split("=3D"),i=3DB(_duc(l[0])),d=3DB(_duc(l.slice(1).join("=3D")));=
if(i){p[i]=3Dd}}catch(q){}return p},{})},Q=3Dfunction(){var =
a=3DC(arguments,0),d=3Da.shift(),b=3Da.shift();return function(){return =
d.apply(b,a.concat(C(arguments,0)))}},G=3Dfunction(b,e,a,d){if(!e){return=
}if(we){e[(b?"detach":"attach")+"Event"]("on"+a,d)}else{e[(b?"remove":"ad=
d")+"EventListener"](a,d,false)}},k=3Dfunction(d,a,b){G(0,d,a,b)},g=3Dfun=
ction(d,a,b){G(1,d,a,b)},c=3D{reduce:u,slice:C,strip:B,extend:K,toKV:m,fr=
omKV:j,bind:Q,listen:k,unlisten:g};f.util=3Dc;K(f,c);(function(p,r,s){var=
 i,R=3Dp.util;function =
q(U,T,W,S,V){this.type=3DU;this.triggerType=3DT||U;this.target=3DW||S;thi=
s.triggerTarget=3DS||W;this.data=3DV||{}}R.extend(q.prototype,{constructo=
r:q,bubbles:false,preventDefault:R.noop,stopPropagation:R.noop,clone:func=
tion(){return new =
this.constructor(this.type,this.triggerType,this.target,this.triggerTarge=
t,R.extend({},this.data))}});function =
e(S,T){this.target=3DS;this.queues=3D{};this.defaultEventType=3DT||q}func=
tion a(S){var T=3Dthis.queues;if(!T[S]){T[S]=3D[]}return T[S]}function =
l(S,T){this.getQueue(S).push(T)}function d(T,U){var =
V=3Dthis.getQueue(T),S=3DV.indexOf(U);if(S!=3D=3D-1){V.splice(S,1)}}funct=
ion b(S,W,V,U){var =
T=3Dthis;if(!U){setTimeout(function(){T.dispatchEvent(new =
T.defaultEventType(S,S,W,T.target,V))},10)}else{T.dispatchEvent(new =
T.defaultEventType(S,S,W,T.target,V))}}function w(T){for(var =
U=3D0,W=3DT.target,V=3Dthis.getQueue(T.type),S=3DV.length;U<S;U++){V[U].c=
all(W,T.clone())}}R.extend(e.prototype,{constructor:e,getQueue:a,addEvent=
Listener:l,removeEventListener:d,dispatchEvent:w,fire:b});p.event=3D{Poly=
Event:q,EventDispatcher:e}})(f,f.api,f);f.ed=3Dnew =
f.event.EventDispatcher(f);var =
o=3D{isBound:0,isReady:0,readyList:[],onReady:function(){if(!o.isReady){o=
.isReady=3D1;var =
a=3Do.readyList.concat(window.addthis_onload||[]);for(var =
b=3D0;b<a.length;b++){a[b].call(window)}o.readyList=3D[]}},addLoad:functi=
on(a){var b=3Dt.onload;if(typeof =
t.onload!=3D"function"){t.onload=3Da}else{t.onload=3Dfunction(){if(b){b()=
}a()}}},bindReady:function(){if(x.isBound||_atc.xol){return}x.isBound=3D1=
;if(M.addEventListener&&!O.opr){M.addEventListener("DOMContentLoaded",x.o=
nReady,false)}var =
a=3Dwindow.addthis_product;if(a&&a.indexOf("f")>-1){x.onReady();return}if=
(O.msi&&window=3D=3Dtop){(function(){if(x.isReady){return}try{M.documentE=
lement.doScroll("left")}catch(d){setTimeout(arguments.callee,0);return}x.=
onReady()})()}if(O.opr){M.addEventListener("DOMContentLoaded",function(){=
if(x.isReady){return}for(var =
d=3D0;d<M.styleSheets.length;d++){if(M.styleSheets[d].disabled){setTimeou=
t(arguments.callee,0);return}}x.onReady()},false)}if(O.saf){var =
b;(function(){if(x.isReady){return}if(M.readyState!=3D"loaded"&&M.readySt=
ate!=3D"complete"){setTimeout(arguments.callee,0);return}if(b=3D=3D=3Dund=
efined){var d=3DM.gn("link");for(var =
e=3D0;e<d.length;e++){if(d[e].getAttribute("rel")=3D=3D"stylesheet"){b++}=
}var =
l=3DM.gn("style");b+=3Dl.length}if(M.styleSheets.length!=3Db){setTimeout(=
arguments.callee,0);return}x.onReady()})()}x.addLoad(x.onReady)},append:f=
unction(b,a){x.bindReady();if(x.isReady){b.call(window,[])}else{x.readyLi=
st.push(function(){return =
b.call(window,[])})}}},x=3Do,P=3Df;K(f,{plo:[],lad:function(a){f.plo.push=
(a)}});K(f,{pub:function(){return =
_euc((window.addthis_config||{}).username||window.addthis_pub||"")},igv:f=
unction(a,b){if(!t.addthis_share){t.addthis_share=3D{}}if(!addthis_share.=
url){addthis_share.url=3D(t.addthis_url||a||"").split("#{").shift()}if(!a=
ddthis_share.title){addthis_share.title=3D(t.addthis_title||b||"").split(=
"#{").shift()}if(!t.addthis_config){t.addthis_config=3D{username:t.addthi=
s_pub}}else{if(addthis_config.data_use_cookies=3D=3D=3Dfalse){_atc.xck=3D=
1}}}});if(!_atc.ost){if(!t.addthis_conf){t.addthis_conf=3D{}}for(var I =
in =
addthis_conf){_atc[I]=3Daddthis_conf[I]}_atc.ost=3D1}(function(b,l,e){var=
 q,p=3Ddocument,a=3Db.util;b.ckv=3Da.fromKV(p.cookie,";");function =
i(d){return =
a.fromKV(p.cookie,";")[d]}if(!b.cookie){b.cookie=3D{}}b.cookie.rck=3Di})(=
f,f.api,f);K(f,{qtp:[],xtp:function(){var =
b=3Df,d;while(d=3Db.qtp.pop()){b.trk(d)}},gat:function(){},atf:null,get_a=
tssh:function(){var =
e=3Ddocument,b=3Df,i=3De.getElementById("_atssh");if(!i){i=3De.ce("div");=
i.style.visibility=3D"hidden";i.id=3D"_atssh";b.opp(i.style);e.body.inser=
tBefore(i,e.body.firstChild)}return i},ctf:function(i){var =
p=3Ddocument,e=3Dwindow,b=3Df,q,l=3DMath.floor(Math.random()*1000);div=3D=
b.get_atssh();if(!b.bro.msi){q=3Dp.ce("iframe");q.id=3D"_atssh"+l}else{if=
(b.bro.ie6&&!i&&p.location.protocol.indexOf("https")=3D=3D0){i=3D"javascr=
ipt:''"}div.innerHTML=3D'<iframe id=3D"_atssh'+l+'" width=3D"1" =
height=3D"1" name=3D"_atssh'+l+'" =
'+(i?'src=3D"'+i+'"':"")+">";q=3Dp.getElementById("_atssh"+l)}b.opp(q.sty=
le);q.frameborder=3Dq.style.border=3D0;q.style.top=3Dq.style.left=3D0;ret=
urn q},off:function(){return Math.floor((new =
Date().getTime()-f.sttm)/100).toString(16)},oms:function(d){var =
b=3Df;if(d&&d.data&&d.data.service){if(!b.upm){if(b.dcp){return}b.dcp=3D1=
}b.trk({gen:300,sh:d.data.service})}},omp:function(b,d,e){var =
a=3D{};if(b){a.sh=3Db}if(d){a.cm=3Dd}if(e){a.cs=3De}f.img("sh","3",null,a=
)},trk:function(e){var =
d=3Df,i=3Dd.dr,b=3D(d.rev||"");if(!e){return}if(i){i=3Di.split("http://")=
.pop()}e.xck=3D_atc.xck?1:0;e.xxl=3D1;e.sid=3Dd.ssid();e.pub=3Dd.pub();e.=
ssl=3Dd.ssl||0;e.du=3Dd.tru(d.du||d.dl.href);if(d.dt){e.dt=3Dd.dt}if(d.cb=
){e.cb=3Dd.cb}e.lng=3Dd.lng();e.ver=3D_atc.ver;if(!d.upm&&d.uid){e.uid=3D=
d.uid}e.pc=3Dwindow.addthis_product||"men-"+_atc.ver;if(i){e.dr=3Dd.tru(i=
)}if(d.dh){e.dh=3Dd.dh}if(b){e.rev=3Db}if(d.xfr){if(d.upm){if(d.atf){d.at=
f.contentWindow.postMessage(m(e),"*")}}else{var =
l=3Dd.get_atssh();base=3D"static/r07/sh18.html"+(false?"?t=3D"+new =
Date().getTime():"");if(d.atf){l.removeChild(l.firstChild)}d.atf=3Dd.ctf(=
);d.atf.src=3D_atr+base+"#"+m(e);l.appendChild(d.atf)}}else{f.qtp.push(e)=
}},img:function(l,r,b,p,q){if(!window.at_sub&&!_atc.xtr){var =
d=3Df,e=3Dp||{};e.evt=3Dl;if(b){e.ext=3Db}d.avt=3De;if(q=3D=3D=3D1){d.xmi=
(true)}else{d.sxm(true)}}},cuid:function(){return((f.sttm/1000)&f.max).to=
String(16)+("00000000"+(Math.floor(Math.random()*(f.max+1))).toString(16)=
).slice(-8)},ssid:function(){if(f.sid=3D=3D=3D0){f.sid=3Df.cuid()}return =
f.sid},sta:function(){var =
b=3Df;return"AT-"+(b.pub()?b.pub():"unknown")+"/-/"+b.ab+"/"+b.ssid()+"/"=
+(b.seq++)+(b.uid!=3D=3Dnull?"/"+b.uid:"")},cst:function(a){return"CXNID=3D=
2000001.521545608054043907"+(a||2)+"NXC"},fcv:function(b,a){return =
_euc(b)+"=3D"+_euc(a)+";"+f.off()},cev:function(b,a){f.cvt.push(f.fcv(b,a=
));f.sxm(true)},sxm:function(a){if(f.tmo!=3D=3Dnull){clearTimeout(f.tmo)}=
if(a){f.tmo=3Df.sto("_ate.xmi(false)",f.wait)}},xmi:function(r){var =
b=3Df,p=3Db.dl?b.dl.hostname:"";if(b.cvt.length>0||b.avt){b.sxm(false);if=
(_atc.xtr){return}var =
l=3Db.avt||{};l.ce=3Db.cvt.join(",");b.cvt=3D[];b.avt=3Dnull;b.trk(l);if(=
r){var =
q=3Ddocument,e=3Dq.ce("iframe");e.id=3D"_atf";f.opp(e.style);q.body.appen=
dChild(e);e=3Dq.getElementById("_atf")}}}});K(f,{_rec:[],rec:function(e){=
if(!e){return}var =
q=3Dj(e),b=3Df,d=3Db.atf,l=3Db._rec,w;if(q.ssh){b.ssh(q.ssh)}if(q.uid){b.=
uid=3Dq.uid}if(q.dbm){b.dbm=3Dq.dbm}if(q.rdy){b.xfr=3D1;b.xtp();return}fo=
r(var =
R=3D0;R<l.length;R++){l[R](q)}},xfr:!f.upm||!f.bro.ffx,ssh:function(b){f.=
gssh=3D1;var =
a=3Dwindow.addthis_ssh=3D_duc(b);f._ssh=3Da.split(",")},com:function(a){i=
f(window.parent&&window.postMessage){window.parent.postMessage(a,"*")}els=
e{f.ifm(a)}},ifm:function(b){if(addthis_wpl){var =
d=3D(addthis_wpl.split("#"))[0];window.parent.location.href=3Dd+"#at"+b}r=
eturn =
false},pmh:function(a){if(a.origin.slice(-12)=3D=3D".addthis.com"){f.rec(=
a.data)}}});K(f,{lng:function(){return =
window.addthis_language||(window.addthis_config||{}).ui_language||(f.bro.=
msi?navigator.userLanguage:navigator.language)},iwb:function(a){var =
b=3D{th:1,pl:1,sl:1,gl:1,hu:1,is:1,nb:1};return =
!!b[a]},ivl:function(a){var =
b=3D{af:1,afr:"af",ar:1,ara:"ar",az:1,aze:"az",be:1,bye:"be",bg:1,bul:"bg=
",bn:1,ben:"bn",bs:1,bos:"bs",ca:1,cat:"ca",cs:1,ces:"cs",cze:"cs",cy:1,c=
ym:"cy",da:1,dan:"da",de:1,deu:"de",ger:"de",el:1,gre:"el",ell:"ell",es:1=
,esl:"es",spa:"spa",et:1,est:"et",fa:1,fas:"fa",per:"fa",fi:1,fin:"fi",fo=
:1,fao:"fo",fr:1,fra:"fr",fre:"fr",ga:1,gae:"ga",gdh:"ga",gl:1,glg:"gl",h=
e:1,heb:"he",hi:1,hin:"hin",hr:1,cro:"hr",hu:1,hun:"hu",id:1,ind:"id",is:=
1,ice:"is",it:1,ita:"it",ja:1,jpn:"ja",ko:1,kor:"ko",ku:1,lb:1,ltz:"lb",l=
t:1,lit:"lt",lv:1,lav:"lv",mk:1,mac:"mk",mak:"mk",ms:1,msa:"ms",may:"ms",=
nb:1,nl:1,nla:"nl",dut:"nl",no:1,nn:1,nno:"no",oc:1,oci:"oc",pl:1,pol:"pl=
",pt:1,por:"pt",ro:1,ron:"ro",rum:"ro",ru:1,rus:"ru",sk:1,slk:"sk",slo:"s=
k",sl:1,slv:"sl",sq:1,alb:"sq",sr:1,ser:"sr",sv:1,sve:"sv",sw:1,swe:"sv",=
ta:1,tam:"ta",te:1,teg:"te",th:1,tha:"th",tl:1,tgl:"tl",tr:1,tur:"tr",uk:=
1,ukr:"uk",ur:1,urd:"ur",vi:1,vie:"vi","zh-hk":1,"chi-hk":"zh-hk","zho-hk=
":"zh-hk","zh-tr":1,"chi-tr":"zh-tr","zho-tr":"zh-tr","zh-tw":1,"chi-tw":=
"zh-tw","zho-tw":"zh-tw",zh:1,chi:"zh",zho:"zh"};if(b[a]){return =
b[a]}a=3Da.split("-").shift();if(b[a]){if(b[a]=3D=3D=3D1){return =
a}else{return b[a]}}return 0},gvl:function(a){var =
b=3Df.ivl(a)||"en";if(b=3D=3D=3D1){b=3Da}return b},alg:function(e,d){var =
a=3D(e||f.lng()||"en").toLowerCase(),b=3Df.ivl(a);if(a.indexOf("en")!=3D=3D=
0&&(!f.pll||d)){if(b){if(b!=3D=3D1){a=3Db}f.pll=3Df.ajs("static/r07/lang0=
1/"+a+".js")}}}});K(f,{trim:function(a,b){try{a=3Da.replace(/^[\s\u3000]+=
|[\s\u3000]+$/g,"");if(b){a=3D_euc(a)}}catch(b){}return =
a},trl:[],tru:function(b,a){var =
d=3D"";if(b){d=3Db.substr(0,300);if(d!=3Db){f.trl.push(a)}}return =
d},sto:function(b,a){return =
setTimeout(b,a)},opp:function(a){a.width=3Da.height=3D"1px";a.position=3D=
"absolute";a.zIndex=3D100000},jlr:{},ajs:function(a){if(!f.jlr[a]){var =
b=3DM.ce("script");b.src=3D_atr+a;M.gn("head")[0].appendChild(b);f.jlr[a]=
=3D1;return b}return 1},jlo:function(){try{var =
q=3Ddocument,b=3Df,p=3Db.lng(),i=3Dfunction(d){var a=3Dnew =
Image();f.imgz.push(a);a.src=3Dd};b.alg(p);if(!b.pld){if(b.bro.ie6){i(_at=
r+b.spt);i(_atr+"static/t00/logo1414.gif");i(_atr+"static/t00/logo88.gif"=
);if(window.addthis_feed){i("static/r05/feed00.gif",1)}}if(b.pll&&!window=
.addthis_translations){b.sto(function(){b.pld=3Db.ajs("static/r07/menu54.=
js")},10)}else{b.pld=3Db.ajs("static/r07/menu54.js")}}}catch(l){}},ao:fun=
ction(b,l,i,d,e,a){f.lad(["open",b,l,i,d,e,a]);f.jlo();return =
false},ac:function(){},as:function(b,d,a){f.lad(["send",b,d,a]);f.jlo()}}=
);(function(e,p,i){var r=3Ddocument,q=3D1,a=3D[" porn "," xxx "," milf =
"," cum "];function l(w){var S=3D0,R;for(var =
d=3D0;d<a.length;d++){R=3Da[d];if(w=3D=3DR.replace(/ =
/g,"")||w.indexOf(R)>-1||w.indexOf(R.replace(/^ =
/g,""))=3D=3D=3D0){S|=3Dq}}return S}function b(){var =
S=3D(t.addthis_title||r.title||"").toLowerCase(),s=3Dl(S),R=3Dr.all?r.all=
.tags("META"):r.getElementsByTagName?r.getElementsByTagName("META"):new =
Array();if(R&&R.length){for(var w=3D0;w<R.length;w++){var =
d=3DR[w]||{},U=3D(d.name||"").toLowerCase(),T=3D(d.content||"").toLowerCa=
se();if(U=3D=3D"description"||U=3D=3D"keywords"){s|=3Dl(T)}}}return =
s}if(!e.ad){e.ad=3D{}}e.ad.cla=3Db})(f,f.api,f);var =
t=3Dwindow,N=3Dt.addthis_config||{};function n(){var =
a=3DM.ce("link");a.rel=3D"stylesheet";a.type=3D"text/css";a.href=3D_atr+"=
static/r07/widget38.css";a.media=3D"all";M.gn("head")[0].appendChild(a)}f=
unction h(){try{if(_atc.xol&&!_atc.xcs){n()}var =
ae=3Df,q=3Dae.bro.msi,b=3D0,T=3DM.title,U=3DM.referer||M.referrer||"",S=3D=
H?H.href:null,r=3DS,ab=3DH.hostname,ad=3DS?S.indexOf("sms_ss"):-1,X=3D(f.=
lng().split("-")).shift(),p=3D(H.href.indexOf(_atr)=3D=3D-1&&!ae.sub),Y=3D=
M.gn("link"),d=3D_atr+"static/r07/sh18.html#",V=3DS&&S.indexOf("https")=3D=
=3D=3D0?1:0,s,af,R=3Dfunction(){af.pc=3Dwindow.addthis_product||"men"+_at=
c.ver};for(var Z=3D0;Z<Y.length;Z++){var =
W=3DY[Z];if(W.rel&&W.rel=3D=3D"canonical"&&W.href){r=3DW.href}}r=3Dr.spli=
t("#{").shift();ae.igv(r,M.title||"");ae.dr=3Dae.tru(U,"fr");ae.du=3Dae.t=
ru(r,"fp");ae.dt=3DT=3Dt.addthis_share.title;ae.cb=3Dae.ad.cla();ae.dh=3D=
H.hostname;ae.ssl=3DV;af=3D{cb:ae.cb,ab:ae.ab,dh:ae.dh,dr:ae.dr,du:ae.du,=
dt:T,inst:ae.inst,lng:ae.lng(),pc:t.addthis_product||"men",pub:ae.pub(),s=
sl:V,sid:f.ssid(),srd:_atc.damp,srf:_atc.famp,srp:_atc.pamp,srx:_atc.xamp=
,ver:_atc.ver,xck:_atc.xck||0};if(ae.trl.length){af.trl=3Dae.trl.join(","=
)}if(ae.rev){af.rev=3Dae.rev}if(ad>-1&&S.indexOf(_atd+"book")=3D=3D-1){va=
r w=3D[];var =
aa=3DS.substr(ad);aa=3Daa.split("&").shift().split("#").shift().split("=3D=
").pop();af.sr=3Daa;if(ae.vamp>=3D0&&!ae.sub&&aa.length){w.push(ae.fcv("p=
lv",Math.round(1/_atc.vamp)));w.push(ae.fcv("rsc",aa));af.ce=3Dw.join(","=
)}}if(ae.upm){af.xd=3D1;if(f.bro.ffx){af.xld=3D1}}if(p){if(ae.upm){if(q){=
f.sto(function(){R();ae.atf=3Ds=3Dae.ctf(d+m(af))},f.wait);t.attachEvent(=
"onmessage",ae.pmh)}else{s=3Dae.ctf();t.addEventListener("message",ae.pmh=
,false)}if(f.bro.ffx){s.src=3Dd;f.qtp.push(af)}else{if(!q){f.sto(function=
(){R();s.src=3Dd+m(af)},f.wait)}}}else{s=3Dae.ctf();f.sto(function(){R();=
s.src=3Dd+m(af)},f.wait)}if(s){ae.atf=3Ds=3Dae.get_atssh().appendChild(s)=
}}if(t.addthis_language||N.ui_language){ae.alg()}if(ae.plo.length>0){ae.j=
lo()}}catch(ac){}}f.ed.addEventListener("addthis.menu.share",f.oms);t._at=
e=3DP;t._adr=3Dx;try{var =
E=3DM.gn("script"),v=3DE[E.length-1],y=3Dv.src.indexOf("#")>-1?v.src.repl=
ace(/^[^\#]+\#?/,""):v.src.replace(/^[^\?]+\??/,""),z=3Dj(y);if(z.pub||z.=
username){t.addthis_pub=3D_duc(z.pub?z.pub:z.username)}if(t.addthis_pub&&=
t.addthis_config){t.addthis_config.username=3Dt.addthis_pub}if(z.domready=
){_atc.dr=3D1}if(z.async){_atc.xol=3D1}if(_atc.ver=3D=3D=3D120){var =
D=3D"atb"+f.cuid();M.write('<span =
id=3D"'+D+'"></span>');f.igv();f.lad(["span",D,addthis_share.url||"[url]"=
,addthis_share.title||"[title]"])}if(t.addthis_clickout){f.lad(["cout"])}=
if(!_atc.xol&&!_atc.xcs&&N.ui_use_css!=3D=3Dfalse){n()}}catch(L){}o.bindR=
eady();o.append(h)})();function addthis_open(){if(typeof =
iconf=3D=3D"string"){iconf=3Dnull}return =
_ate.ao.apply(_ate,arguments)}function =
addthis_close(){_ate.ac()}function =
addthis_sendto(){_ate.as.apply(_ate,arguments);return =
false}if(_atc.dr){_adr.onReady()}}else{_ate.inst++}if(_atc.abf){addthis_o=
pen(document.getElementById("ab"),"emailab",window.addthis_url||"[URL]",w=
indow.addthis_title||"[TITLE]")};if(!window.addthis||window.addthis.nodeT=
ype!=3D=3Dundefined){window.addthis=3D(function(){var =
g=3D{aim:"AIM",a1webmarks:"A1&#8209;Webmarks",aim:"AIM =
Share",amazonwishlist:"Amazon",aolmail:"AOL Mail",aviary:"Aviary =
Capture",domaintoolswhois:"Whois Lookup",googlereader:"Google =
Reader",googletranslate:"Google =
Translate",linkagogo:"Link-a-Gogo",meneame:"Men&eacute;ame",misterwong:"M=
ister Wong",mailto:"Email =
App",myaol:"myAOL",myspace:"MySpace",readitlater:"Read It =
Later",stumbleupon:"StumbleUpon",typepad:"TypePad",wordpress:"WordPress",=
yahoobkm:"Y! Bookmarks",yahoomail:"Y! =
Mail"},i=3Ddocument,f=3Di.gn("body").item(0),h=3D_ate.util.bind,c=3D_ate.=
ed,b=3Dfunction(d,n){var =
o;if(window._atw&&_atw.list){o=3D_atw.list[d]}else{if(g[d]){o=3Dg[d]}else=
{o=3D(n?d:(d.substr(0,1).toUpperCase()+d.substr(1)))}}return =
o.replace(/&nbsp;/g," =
")},l=3Dfunction(d,w,u,t,v){w=3Dw.toUpperCase();var =
r=3D(d=3D=3Df&&addthis.cache[w]?addthis.cache[w]:(d||f||i.body).getElemen=
tsByTagName(w)),q=3D[],s,p;if(d=3D=3Df){addthis.cache[w]=3Dr}if(v){for(s=3D=
0;s<r.length;s++){p=3Dr[s];if(p.className.indexOf(u)>-1){q.push(p)}}}else=
{u=3Du.replace(/\-/g,"\\-");var n=3Dnew =
RegExp("(^|\\s)"+u+(t?"\\w*":"")+"(\\s|$)");for(s=3D0;s<r.length;s++){p=3D=
r[s];if(n.test(p.className)){q.push(p)}}}return(q)},m=3Di.getElementsByCl=
assname||l;function k(d){if(typeof d=3D=3D"string"){var =
n=3Dd.substr(0,1);if(n=3D=3D"#"){d=3Di.getElementById(d.substr(1))}else{i=
f(n=3D=3D"."){d=3Dm(f,"*",d.substr(1))}else{}}}if(!d){d=3D[]}else{if(!(d =
instanceof Array)){d=3D[d]}}return d}function a(n,d){return =
function(){addthis.plo.push({call:n,args:arguments,ns:d})}}function =
j(o){var =
n=3Dthis,d=3Dthis.queue=3D[];this.name=3Do;this.call=3Dfunction(){d.push(=
arguments)};this.call.queuer=3Dthis;this.flush=3Dfunction(r,q){for(var =
p=3D0;p<d.length;p++){r.apply(q||n,d[p])}return =
r}}return{ost:0,cache:{},plo:[],links:[],ems:[],init:_adr.onReady,_Queuer=
:j,_queueFor:a,_select:k,_gebcn:l,button:a("button"),toolbox:a("toolbox")=
,update:a("update"),util:{getServiceName:b},addEventListener:h(_ate.ed.ad=
dEventListener,_ate.ed),removeEventListener:h(_ate.ed.removeEventListener=
,_ate.ed)}})()}_adr.append((function(){if(!window.addthis.ost){_ate.exten=
d(addthis,_ate.api);var =
d=3Ddocument,u=3Dundefined,w=3Dwindow,unaccent=3Dfunction(s){if(s.indexOf=
("&")>-1){s=3Ds.replace(/&([aeiou]).+;/g,"$1")}return =
s},customServices=3D{},globalConfig=3Dw.addthis_config,globalShare=3Dw.ad=
dthis_share,upConfig=3D{},upShare=3D{},body=3Dd.gn("body").item(0),mrg=3D=
function(o,n){if(n&&o!=3D=3Dn){for(var k in =
n){if(o[k]=3D=3D=3Du){o[k]=3Dn[k]}}}},addevts=3Dfunction(o,ss,au){var =
oldclick=3Do.onclick||function(){},genshare=3Dfunction(){_ate.ed.fire("ad=
dthis.menu.share",window.addthis||{},{service:ss})};if(o.conf.data_ga_tra=
cker||addthis_config.data_ga_tracker||o.conf.data_ga_property||addthis_co=
nfig.data_ga_property){o.onclick=3Dfunction(){_ate.gat(ss,au,o.conf,o.sha=
re);genshare();oldclick()}}else{o.onclick=3Dfunction(){genshare();oldclic=
k()}}},rpl=3Dfunction(o,n){var r=3D{};for(var k in =
o){if(n[k]){r[k]=3Dn[k]}else{r[k]=3Do[k]}}return =
r},addthis=3Dwindow.addthis,genieu=3Dfunction(share){return"mailto:?subje=
ct=3D"+_euc(share.title?share.title:"%20")+"&body=3D"+_euc(share.title?sh=
are.title:"")+(share.title?"%0D%0A":"")+_euc(share.url)+"%0D%0A%0D%0AShar=
ed via =
AddThis.com"},b_title=3D{email:"Email",mailto:"Email",print:"Print",favor=
ites:"Save to Favorites",twitter:"Tweet This",digg:"Digg =
This",more:"View more =
services"},json=3D{email_vars:1,templates:1,services_custom:1},nosend=3D{=
feed:1,more:1,email:1,mailto:1},nowindow=3D{feed:1,email:1,mailto:1,print=
:1,more:1,favorites:1},a_config=3D["username","services_custom","services=
_exclude","services_compact","services_expanded","ui_click","ui_hide_embe=
d","ui_delay","ui_hover_direction","ui_language","ui_offset_top","ui_offs=
et_left","ui_header_color","ui_header_background","ui_icons","ui_cobrand"=
,"data_use_cookies","data_track_clickback","data_track_linkback"],a_share=
=3D["url","title","templates","email_template","email_vars","html","swfur=
l","width","height","screenshot","author","description","content"],_svcur=
l=3Dfunction(config,share){var sv=3Dconfig.services instanceof =
Array?config.services[0]:config.services||"";return"http://"+_atd+"bookma=
rk.php?v=3D"+_atc.ver+"&pub=3D"+_euc(_ate.pub())+"&s=3D"+sv+(share.url?"&=
url=3D"+_euc(share.url):"")+(share.title?"&title=3D"+_euc(share.title):""=
)+"&tt=3D0"},_makeButton=3Dfunction(w,h,alt,url){var =
img=3Dd.ce("img");img.width=3Dw;img.height=3Dh;img.border=3D0;img.alt=3Da=
lt;img.src=3Durl;return =
img},_parseAttributes=3Dfunction(el,attrs,overrides,childWins){var =
rv=3D{};overrides=3Doverrides||{};for(var =
i=3D0;i<attrs.length;i++){if(overrides[attrs[i]]&&!childWins){rv[attrs[i]=
]=3Doverrides[attrs[i]]}else{if(el){var =
p=3D"addthis:"+attrs[i],v=3Del.getAttribute?el.getAttribute(p)||el[p]:el[=
p];if(v){rv[attrs[i]]=3Dv}else{if(overrides[attrs[i]]){rv[attrs[i]]=3Dove=
rrides[attrs[i]]}}if(rv[attrs[i]]=3D=3D=3D"true"){rv[attrs[i]]=3Dtrue}els=
e{if(rv[attrs[i]]=3D=3D=3D"false"){rv[attrs[i]]=3Dfalse}}}}if(rv[attrs[i]=
]!=3D=3Dundefined&&json[attrs[i]]&&(typeof =
rv[attrs[i]]=3D=3D"string")){eval("var e =3D =
"+rv[attrs[i]]);rv[attrs[i]]=3De}}return =
rv},_processCustomServices=3Dfunction(conf){var =
acs=3D(conf||{}).services_custom;if(!acs){return}if(!(acs instanceof =
Array)){acs=3D[acs]}for(var i=3D0;i<acs.length;i++){var =
service=3Dacs[i];if(service.name&&service.icon&&service.url){service.code=
=3Dservice.url=3Dservice.url.replace(/ =
/g,"");if(service.code.indexOf("http")=3D=3D=3D0){service.code=3Dservice.=
code.substr((service.code.indexOf("https")=3D=3D=3D0?8:7))}service.code=3D=
service.code.split("?").shift().split("/").shift().toLowerCase();customSe=
rvices[service.code]=3Dservice}}},_select=3Daddthis._select,_getCustomSer=
vice=3Dfunction(ss,conf){return =
customServices[ss]||{}},_getATtributes=3Dfunction(el,config,share,childWi=
ns){var =
rv=3D{conf:config||{},share:share||{}};rv.conf=3D_parseAttributes(el,a_co=
nfig,config,childWins);rv.share=3D_parseAttributes(el,a_share,share,child=
Wins);return =
rv},_render=3Dfunction(what,conf,attrs){_ate.igv();if(what){conf=3Dconf||=
{};attrs=3Dattrs||{};var =
config=3Dconf.conf||globalConfig,share=3Dconf.share||globalShare,onmouseo=
ver=3Dattrs.onmouseover,onmouseout=3Dattrs.onmouseout,onclick=3Dattrs.onc=
lick,internal=3Dattrs.internal,ss=3Dattrs.singleservice;if(ss){config.pro=
duct=3D"tbx-"+_atc.ver;if(onclick=3D=3D=3Du){onclick=3Dnosend[ss]?functio=
n(el,config,share){var s=3Drpl(share,upShare);return =
addthis_open(el,ss,s.url,s.title,rpl(config,upConfig),s)}:nowindow[ss]?fu=
nction(el,config,share){var s=3Drpl(share,upShare);return =
addthis_sendto(ss,rpl(config,upConfig),s)}:null}}else{if(!attrs.noevents)=
{if(!attrs.nohover){if(onmouseover=3D=3D=3Du){onmouseover=3Dfunction(el,c=
onfig,share){return =
addthis_open(el,"",null,null,config,share)}}if(onmouseout=3D=3D=3Du){onmo=
useout=3Dfunction(el){return =
addthis_close()}}if(onclick=3D=3D=3Du){onclick=3Dfunction(el,config,share=
){return =
addthis_sendto("more",config,share)}}}else{if(onclick=3D=3D=3Du){onclick=3D=
function(el,config,share){return =
addthis_open(el,"more",null,null,config,share)}}}}}what=3D_select(what);f=
or(var i=3D0;i<what.length;i++){var =
o=3Dwhat[i],oattr=3D_getATtributes(o,config,share,true)||{};mrg(oattr.con=
f,globalConfig);mrg(oattr.share,globalShare);o.conf=3Doattr.conf;o.share=3D=
oattr.share;if(o.conf.ui_language){_ate.alg(o.conf.ui_language)}_processC=
ustomServices(o.conf);if((!o.conf||!o.conf.ui_click)&&!_ate.bro.ipa){if(o=
nmouseover){o.onmouseover=3Dfunction(){return =
onmouseover(this,this.conf,this.share)}}if(onmouseout){o.onmouseout=3Dfun=
ction(){return =
onmouseout(this)}}if(onclick){o.onclick=3Dfunction(){return =
onclick(this,this.conf,this.share)}}}else{if(onclick){o.onclick=3Dfunctio=
n(){return =
addthis_open(this,ss?ss:"",null,null,this.conf,this.share)}}}if(o.tagName=
.toLowerCase()=3D=3D"a"){if(ss){var =
customService=3D_getCustomService(ss,o.conf);o.conf.product=3D"tbx-"+_atc=
.ver;if(customService&&customService.code&&customService.icon){if(o.first=
Child&&o.firstChild.className.indexOf("at300bs")>-1){o.firstChild.style.b=
ackground=3D"url("+customService.icon+") no-repeat top =
left"}}if(!nowindow[ss]){var =
t=3D_ate.trim,template=3Do.share.templates&&o.share.templates[ss]?o.share=
.templates[ss]:"",url=3Do.share.url||addthis_share.url,title=3Do.share.ti=
tle||addthis_share.title,swfurl=3Do.share.swfurl||addthis_share.swfurl,wi=
dth=3Do.share.width||addthis_share.width,height=3Do.share.height||addthis=
_share.height,description=3Do.share.description||addthis_share.descriptio=
n,screenshot=3Do.share.screenshot||addthis_share.screenshot;o.href=3D"//"=
+_atd+"bookmark.php?pub=3D"+t(addthis_config.username||o.conf.username||_=
ate.pub(),1)+"&v=3D"+_atc.ver+"&source=3Dtbx-"+_atc.ver+"&tt=3D0&s=3D"+ss=
+"&url=3D"+_euc(url||"")+"&title=3D"+t(title||"",1)+"&content=3D"+t(o.sha=
re.content||addthis_share.content||"",1)+(template?"&template=3D"+_euc(te=
mplate):"")+(o.conf.data_track_clickback||o.conf.data_track_linkback?"&sm=
s_ss=3D1":"")+"&lng=3D"+(o.conf.ui_language||_ate.lng()||"xy").split("-")=
.shift()+(description?"&description=3D"+t(description,1):"")+(swfurl?"&sw=
furl=3D"+_euc(swfurl):"")+(attrs.issh?"&ips=3D1":"")+(width?"&width=3D"+_=
euc(width):"")+(height?"&height=3D"+_euc(height):"")+(screenshot?"&screen=
shot=3D"+_euc(screenshot):"")+(customService&&customService.url?"&acn=3D"=
+_euc(customService.name)+"&acc=3D"+_euc(customService.code)+"&acu=3D"+_e=
uc(customService.url):"")+(_ate.uid?"&uid=3D"+_euc(_ate.uid):"");addevts(=
o,ss,url);o.target=3D"_blank";addthis.links.push(o)}else{if(ss=3D=3D"mail=
to"||(ss=3D=3D"email"&&(o.conf.ui_use_mailto||_ate.bro.iph||_ate.bro.ipa)=
)){o.onclick=3Dfunction(){};o.href=3Dgenieu(o.share);addevts(o,ss,url);ad=
dthis.ems.push(o)}}if(!o.title||o.at_titled){o.title=3Dunaccent(b_title[s=
s]?b_title[ss]:"Send to =
"+addthis.util.getServiceName(ss,!customService));o.at_titled=3D1}}}var =
app;switch(internal){case"img":if(!o.hasChildNodes()){var =
lang=3D_ate.lng().split("-").shift(),validatedLang=3D_ate.ivl(lang);if(!v=
alidatedLang){lang=3D"en"}else{if(validatedLang!=3D=3D1){lang=3Dvalidated=
Lang}}app=3D_makeButton(_ate.iwb(lang)?150:125,16,"Share",_atr+"static/bt=
n/v2/lg-share-"+lang.substr(0,2)+".gif")}break}if(app){o.appendChild(app)=
}}}},buttons=3Daddthis._gebcn(body,"A","addthis_button_",true,true),_rend=
erToolbox=3Dfunction(collection,config,share,reprocess){for(var =
i=3D0;i<collection.length;i++){var =
b=3Dcollection[i];if(b=3D=3Dnull){continue}if(reprocess!=3D=3Dfalse||!b.o=
st){var =
config=3Dconfig||globalConfig,share=3Dshare||globalShare,attr=3D_getATtri=
butes(b,config,share,true),hc=3D0,a=3D"at300",c=3Db.className||"",s=3Dc.m=
atch(/addthis_button_([\w\.]+)(?:\s|$)/),options=3Du,sv=3Ds&&s.length?s[1=
]:0;if(sv){if(sv=3D=3D=3D"facebook_like"){var =
fblike;if(!_ate.bro.msi){fblike=3Dd.ce("iframe")}else{b.innerHTML=3D'<ifr=
ame frameborder=3D"0" scrolling=3D"no" =
scrollbars=3D"no"'+(_ate.bro.ie6?" =
src=3D\"javascript:''\"":"")+"></iframe>";fblike=3Db.firstChild}fblike.st=
yle.overflow=3D"hidden";fblike.style.border=3D"none";fblike.style.borderW=
idth=3D"0px";fblike.style.width=3D"82px";fblike.style.height=3D"25px";fbl=
ike.style.marginTop=3D"-2px";fblike.src=3D"//www.facebook.com/plugins/lik=
e.php?href=3D"+_euc(share.url||addthis_share.url)+"&layout=3Dbutton_count=
&show_faces=3Dfalse&width=3D100&action=3Dlike&font=3Darial&colorscheme=3D=
light";if(!_ate.bro.msi){b.appendChild(fblike)}}else{if(sv.indexOf("prefe=
rred")>-1){window.addthis_product=3D"tbx-"+_atc.ver;s=3Dc.match(/addthis_=
button_preferred_([0-9]+)(?:\s|$)/);var =
svidx=3D((s&&s.length)?Math.min(12,Math.max(1,parseInt(s[1]))):1)-1;if(wi=
ndow._atw){var =
excl=3D_atw.conf.services_exclude,locopts=3D_atw.loc,opts=3Daddthis_optio=
ns.replace(",more","").split(",");if(svidx<opts.length){sv=3Dopts[svidx];=
locopts=3Dlocopts.replace(sv,"").replace(",,","").replace(/,$|^,/,"")}els=
e{if(typeof =
locopts!=3D"array"){locopts=3Dlocopts.split(",")}do{if(svidx<locopts.leng=
th){sv=3Dlocopts[svidx]}else{break}}while(excl.indexOf(svidx++)=3D=3D-1)}=
b._ips=3D1;if(b.className.indexOf(sv)=3D=3D-1){b.className+=3D" =
addthis_button_"+sv}}else{if(config.ui_language||window.addthis_language)=
{_ate.alg(config.ui_language)}_ate.plo.push(["deco",_renderToolbox,[b],co=
nfig,share,true]);if(_ate.gssh){_ate.pld=3D_ate.ajs("static/r07/menu54.js=
")}else{if(!_ate.pld){_ate.pld=3D1;var =
loadmenu=3Dfunction(){_ate.pld=3D_ate.ajs("static/r07/menu54.js")};if(_at=
e.upm){_ate._rec.push(function(data){if(data.ssh){loadmenu()}});_ate.sto(=
loadmenu,500)}else{loadmenu()}}}continue}}}if(!b.childNodes.length){var =
sp=3Dd.ce("span");b.appendChild(sp);sp.className=3Da+"bs =
at15t_"+sv}else{if(b.childNodes.length=3D=3D1){var =
cn=3Db.childNodes[0];if(cn.nodeType=3D=3D3){var =
sp=3Dd.ce("span"),tv=3Dcn.nodeValue;b.insertBefore(sp,cn);sp.className=3D=
a+"bs =
at15t_"+sv}}else{hc=3D1}}if(sv=3D=3D=3D"compact"){if(!hc&&c.indexOf(a)=3D=
=3D-1){b.className+=3D" =
"+a+"m"}}else{if(sv=3D=3D=3D"expanded"){if(!hc&&c.indexOf(a)=3D=3D-1){b.c=
lassName+=3D" =
"+a+"m"}options=3D{nohover:true,singleservice:"more"}}else{if(!hc&&c.inde=
xOf(a)=3D=3D-1){b.className+=3D" =
"+a+"b"}options=3D{singleservice:sv}}}if(b._ips){if(!options){options=3D{=
}}options.issh=3Dtrue}_render([b],attr,options);b.ost=3D1;window.addthis_=
product=3D"tbx-"+_atc.ver}}}},gat=3Dfunction(s,au,conf,share){var =
pageTracker=3Dconf.data_ga_tracker,propertyId=3Dconf.data_ga_property;if(=
propertyId&&typeof(window._gat)=3D=3D"object"){pageTracker=3D_gat._getTra=
cker(propertyId)}if(pageTracker&&typeof(pageTracker)=3D=3D"string"){pageT=
racker=3Dwindow[pageTracker]}if(pageTracker&&typeof(pageTracker)=3D=3D"ob=
ject"){var =
gaUrl=3Dau||(share||{}).url||location.href;if(gaUrl.toLowerCase().replace=
("https","http").indexOf("http%3a%2f%2f")=3D=3D0){gaUrl=3D_duc(gaUrl)}try=
{pageTracker._trackEvent("addthis",s,gaUrl)}catch(e){try{pageTracker._ini=
tData();pageTracker._trackEvent("addthis",s,gaUrl)}catch(e){}}}};_ate.gat=
=3Dgat;addthis.update=3Dfunction(which,what,value){if(which=3D=3D"share")=
{if(!window.addthis_share){window.addthis_share=3D{}}window.addthis_share=
[what]=3Dvalue;upShare[what]=3Dvalue;for(var i in addthis.links){var =
o=3Daddthis.links[i],rx=3Dnew =
RegExp("&"+what+"=3D(.*)&"),ns=3D"&"+what+"=3D"+_euc(value)+"&";o.href=3D=
o.href.replace(rx,ns);if(o.href.indexOf(what)=3D=3D-1){o.href+=3Dns}}for(=
var i in addthis.ems){var =
o=3Daddthis.ems[i];o.href=3Dgenieu(addthis_share)}}else{if(which=3D=3D"co=
nfig"){if(!window.addthis_config){window.addthis_config=3D{}}window.addth=
is_config[what]=3Dvalue;upConfig[what]=3Dvalue}}};addthis._render=3D_rend=
er;addthis.button=3Dfunction(what,config,share){_render(what,{conf:config=
,share:share},{internal:"img"})};addthis.toolbox=3Dfunction(what,config,s=
hare){var toolboxes=3D_select(what);for(var =
i=3D0;i<toolboxes.length;i++){var =
tb=3Dtoolboxes[i],attr=3D_getATtributes(tb,config,share),sp=3Dd.ce("div")=
,c;if(tb){c=3Dtb.getElementsByTagName("a");if(c){_renderToolbox(c,attr.co=
nf,attr.share)}tb.appendChild(sp)}sp.className=3D"atclear"}};addthis.read=
y=3Dfunction(){var =
at=3Daddthis,a=3D".addthis_";if(at.ost){return}at.ost=3D1;addthis.toolbox=
(a+"toolbox");addthis.button(a+"button");_renderToolbox(buttons,null,null=
,false);_ate.ed.fire("addthis.ready",addthis);for(var =
i=3D0,plo=3Dat.plo,q;i<plo.length;i++){q=3Dplo[i];(q.ns?at[q.ns]:at)[q.ca=
ll].apply(this,q.args)}};window.addthis=3Daddthis;window.addthis.ready()}=
}));_ate.extend(addthis,{user:(function(){var =
f=3D_ate,c=3Daddthis,g=3D{},d=3D0,j;function i(a,k){return =
f.reduce(["getID","getServiceShareHistory"],a,k)}function h(a,k){return =
function(l){setTimeout(function(){l(f[a]||k)},0)}}function =
b(){if(d){return}if(j!=3D=3Dnull){clearTimeout(j)}j=3Dnull;d=3D1;i(functi=
on(l,a,k){g[a]=3Dg[a].queuer.flush(h.apply(c,l[k]),c);return =
l},[["uid",""],["_ssh",[]]])}f._rec.push(b);j=3DsetTimeout(b,5000);g.getP=
referredServices=3Dfunction(a){if(window._atw){a(addthis_options.split(",=
"))}else{f.plo.push(["pref",a]);_ate.alg();if(f.gssh){f.pld=3Df.ajs("stat=
ic/r07/menu54.js")}else{if(!f.pld){f.pld=3D1;_ate._rec.push(function(k){i=
f(k.ssh){_ate.pld=3D_ate.ajs("static/r07/menu54.js")}})}}}};return =
i(function(k,a){k[a]=3D(new c._Queuer(a)).call;return k},g)})()});
------=_NextPart_000_0027_01CB0BD3.36379B50
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.law.cornell.edu/scripts/jquery.js

// $Id: jquery.js,v 1.12.2.3 2008/06/25 09:38:39 goba Exp $ =0A=
=0A=
/*=0A=
 * jQuery 1.2.6 - 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-05-24 14:22:17 -0400 (Sat, 24 May 2008)=0A=
 * Rev: 5685=0A=
 */=0A=
eval(function(p,a,c,k,e,r){e=3Dfunction(c){return(c<a?'':e(parseInt(c/a))=
)+((c=3Dc%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace=
(/^/,String)){while(c--)r[e(c)]=3Dk[c]||e(c);k=3D[function(e){return =
r[e]}];e=3Dfunction(){return'\\w+'};c=3D1};while(c--)if(k[c])p=3Dp.replac=
e(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(H(){J =
w=3D1b.4M,3m$=3D1b.$;J D=3D1b.4M=3D1b.$=3DH(a,b){I 2B D.17.5j(a,b)};J =
u=3D/^[^<]*(<(.|\\s)+>)[^>]*$|^#(\\w+)$/,62=3D/^.[^:#\\[\\.]*$/,12;D.17=3D=
D.44=3D{5j:H(d,b){d=3Dd||S;G(d.16){7[0]=3Dd;7.K=3D1;I 7}G(1j =
d=3D=3D"23"){J =
c=3Du.2D(d);G(c&&(c[1]||!b)){G(c[1])d=3DD.4h([c[1]],b);N{J =
a=3DS.61(c[3]);G(a){G(a.2v!=3Dc[3])I D().2q(d);I D(a)}d=3D[]}}N I =
D(b).2q(d)}N G(D.1D(d))I D(S)[D.17.27?"27":"43"](d);I =
7.6Y(D.2d(d))},5w:"1.2.6",8G:H(){I 7.K},K:0,3p:H(a){I =
a=3D=3D12?D.2d(7):7[a]},2I:H(b){J a=3DD(b);a.5n=3D7;I =
a},6Y:H(a){7.K=3D0;2p.44.1p.1w(7,a);I 7},P:H(a,b){I =
D.P(7,a,b)},5i:H(b){J a=3D-1;I D.2L(b&&b.5w?b[0]:b,7)},1K:H(c,a,b){J =
d=3Dc;G(c.1q=3D=3D56)G(a=3D=3D=3D12)I =
7[0]&&D[b||"1K"](7[0],c);N{d=3D{};d[c]=3Da}I 7.P(H(i){R(c 1n =
d)D.1K(b?7.V:7,c,D.1i(7,d[c],b,i,c))})},1g:H(b,a){G((b=3D=3D\'2h\'||b=3D=3D=
\'1Z\')&&3d(a)<0)a=3D12;I 7.1K(b,a,"2a")},1r:H(b){G(1j =
b!=3D"49"&&b!=3DU)I 7.4E().3v((7[0]&&7[0].2z||S).5F(b));J =
a=3D"";D.P(b||7,H(){D.P(7.3t,H(){G(7.16!=3D8)a+=3D7.16!=3D1?7.76:D.17.1r(=
[7])})});I a},5z:H(b){G(7[0])D(b,7[0].2z).5y().39(7[0]).2l(H(){J =
a=3D7;1B(a.1x)a=3Da.1x;I a}).3v(7);I 7},8Y:H(a){I =
7.P(H(){D(7).6Q().5z(a)})},8R:H(a){I 7.P(H(){D(7).5z(a)})},3v:H(){I =
7.3W(19,M,Q,H(a){G(7.16=3D=3D1)7.3U(a)})},6F:H(){I =
7.3W(19,M,M,H(a){G(7.16=3D=3D1)7.39(a,7.1x)})},6E:H(){I =
7.3W(19,Q,Q,H(a){7.1d.39(a,7)})},5q:H(){I =
7.3W(19,Q,M,H(a){7.1d.39(a,7.2H)})},3l:H(){I 7.5n||D([])},2q:H(b){J =
c=3DD.2l(7,H(a){I D.2q(b,a)});I 7.2I(/[^+>] =
[^+>]/.11(b)||b.1h("..")>-1?D.4r(c):c)},5y:H(e){J =
f=3D7.2l(H(){G(D.14.1f&&!D.4n(7)){J =
a=3D7.6o(M),5h=3DS.3h("1v");5h.3U(a);I D.4h([5h.4H])[0]}N I 7.6o(M)});J =
d=3Df.2q("*").5c().P(H(){G(7[E]!=3D12)7[E]=3DU});G(e=3D=3D=3DM)7.2q("*").=
5c().P(H(i){G(7.16=3D=3D3)I;J c=3DD.L(7,"3w");R(J a 1n c)R(J b 1n =
c[a])D.W.1e(d[i],a,c[a][b],c[a][b].L)});I f},1E:H(b){I =
7.2I(D.1D(b)&&D.3C(7,H(a,i){I =
b.1k(a,i)})||D.3g(b,7))},4Y:H(b){G(b.1q=3D=3D56)G(62.11(b))I =
7.2I(D.3g(b,7,M));N b=3DD.3g(b,7);J a=3Db.K&&b[b.K-1]!=3D=3D12&&!b.16;I =
7.1E(H(){I a?D.2L(7,b)<0:7!=3Db})},1e:H(a){I 7.2I(D.4r(D.2R(7.3p(),1j =
a=3D=3D\'23\'?D(a):D.2d(a))))},3F:H(a){I!!a&&D.3g(a,7).K>0},7T:H(a){I =
7.3F("."+a)},6e:H(b){G(b=3D=3D12){G(7.K){J c=3D7[0];G(D.Y(c,"2A")){J =
e=3Dc.64,63=3D[],15=3Dc.15,2V=3Dc.O=3D=3D"2A-2V";G(e<0)I U;R(J =
i=3D2V?e:0,2f=3D2V?e+1:15.K;i<2f;i++){J =
d=3D15[i];G(d.2W){b=3DD.14.1f&&!d.at.2x.an?d.1r:d.2x;G(2V)I =
b;63.1p(b)}}I 63}N I(7[0].2x||"").1o(/\\r/g,"")}I =
12}G(b.1q=3D=3D4L)b+=3D\'\';I =
7.P(H(){G(7.16!=3D1)I;G(b.1q=3D=3D2p&&/5O|5L/.11(7.O))7.4J=3D(D.2L(7.2x,b=
)>=3D0||D.2L(7.34,b)>=3D0);N G(D.Y(7,"2A")){J =
a=3DD.2d(b);D("9R",7).P(H(){7.2W=3D(D.2L(7.2x,a)>=3D0||D.2L(7.1r,a)>=3D0)=
});G(!a.K)7.64=3D-1}N 7.2x=3Db})},2K:H(a){I =
a=3D=3D12?(7[0]?7[0].4H:U):7.4E().3v(a)},7b:H(a){I =
7.5q(a).21()},79:H(i){I 7.3s(i,i+1)},3s:H(){I =
7.2I(2p.44.3s.1w(7,19))},2l:H(b){I 7.2I(D.2l(7,H(a,i){I =
b.1k(a,i,a)}))},5c:H(){I 7.1e(7.5n)},L:H(d,b){J =
a=3Dd.1R(".");a[1]=3Da[1]?"."+a[1]:"";G(b=3D=3D=3D12){J =
c=3D7.5C("9z"+a[1]+"!",[a[0]]);G(c=3D=3D=3D12&&7.K)c=3DD.L(7[0],d);I =
c=3D=3D=3D12&&a[1]?7.L(a[0]):c}N I =
7.1P("9u"+a[1]+"!",[a[0],b]).P(H(){D.L(7,d,b)})},3b:H(a){I =
7.P(H(){D.3b(7,a)})},3W:H(g,f,h,d){J e=3D7.K>1,3x;I =
7.P(H(){G(!3x){3x=3DD.4h(g,7.2z);G(h)3x.9o()}J =
b=3D7;G(f&&D.Y(7,"1T")&&D.Y(3x[0],"4F"))b=3D7.3H("22")[0]||7.3U(7.2z.3h("=
22"));J c=3DD([]);D.P(3x,H(){J =
a=3De?D(7).5y(M)[0]:7;G(D.Y(a,"1m"))c=3Dc.1e(a);N{G(a.16=3D=3D1)c=3Dc.1e(=
D("1m",a).21());d.1k(b,a)}});c.P(6T)})}};D.17.5j.44=3DD.17;H =
6T(i,a){G(a.4d)D.3Y({1a:a.4d,31:Q,1O:"1m"});N =
D.5u(a.1r||a.6O||a.4H||"");G(a.1d)a.1d.37(a)}H 1z(){I+2B =
8J}D.1l=3DD.17.1l=3DH(){J =
b=3D19[0]||{},i=3D1,K=3D19.K,4x=3DQ,15;G(b.1q=3D=3D8I){4x=3Db;b=3D19[1]||=
{};i=3D2}G(1j b!=3D"49"&&1j =
b!=3D"H")b=3D{};G(K=3D=3Di){b=3D7;--i}R(;i<K;i++)G((15=3D19[i])!=3DU)R(J =
c 1n 15){J a=3Db[c],2w=3D15[c];G(b=3D=3D=3D2w)6M;G(4x&&2w&&1j =
2w=3D=3D"49"&&!2w.16)b[c]=3DD.1l(4x,a||(2w.K!=3DU?[]:{}),2w);N =
G(2w!=3D=3D12)b[c]=3D2w}I b};J =
E=3D"4M"+1z(),6K=3D0,5r=3D{},6G=3D/z-?5i|8B-?8A|1y|6B|8v-?1Z/i,3P=3DS.3P|=
|{};D.1l({8u:H(a){1b.$=3D3m$;G(a)1b.4M=3Dw;I D},1D:H(a){I!!a&&1j =
a!=3D"23"&&!a.Y&&a.1q!=3D2p&&/^[\\s[]?H/.11(a+"")},4n:H(a){I =
a.1C&&!a.1c||a.2j&&a.2z&&!a.2z.1c},5u:H(a){a=3DD.3k(a);G(a){J =
b=3DS.3H("6w")[0]||S.1C,1m=3DS.3h("1m");1m.O=3D"1r/4t";G(D.14.1f)1m.1r=3D=
a;N 1m.3U(S.5F(a));b.39(1m,b.1x);b.37(1m)}},Y:H(b,a){I =
b.Y&&b.Y.2r()=3D=3Da.2r()},1Y:{},L:H(c,d,b){c=3Dc=3D=3D1b?5r:c;J =
a=3Dc[E];G(!a)a=3Dc[E]=3D++6K;G(d&&!D.1Y[a])D.1Y[a]=3D{};G(b!=3D=3D12)D.1=
Y[a][d]=3Db;I d?D.1Y[a][d]:a},3b:H(c,b){c=3Dc=3D=3D1b?5r:c;J =
a=3Dc[E];G(b){G(D.1Y[a]){2U D.1Y[a][b];b=3D"";R(b 1n =
D.1Y[a])1X;G(!b)D.3b(c)}}N{1U{2U c[E]}1V(e){G(c.5l)c.5l(E)}2U =
D.1Y[a]}},P:H(d,a,c){J e,i=3D0,K=3Dd.K;G(c){G(K=3D=3D12){R(e 1n =
d)G(a.1w(d[e],c)=3D=3D=3DQ)1X}N =
R(;i<K;)G(a.1w(d[i++],c)=3D=3D=3DQ)1X}N{G(K=3D=3D12){R(e 1n =
d)G(a.1k(d[e],e,d[e])=3D=3D=3DQ)1X}N R(J =
b=3Dd[0];i<K&&a.1k(b,i,b)!=3D=3DQ;b=3Dd[++i]){}}I =
d},1i:H(b,a,c,i,d){G(D.1D(a))a=3Da.1k(b,i);I =
a&&a.1q=3D=3D4L&&c=3D=3D"2a"&&!6G.11(d)?a+"2X":a},1F:{1e:H(c,b){D.P((b||"=
").1R(/\\s+/),H(i,a){G(c.16=3D=3D1&&!D.1F.3T(c.1F,a))c.1F+=3D(c.1F?" =
":"")+a})},21:H(c,b){G(c.16=3D=3D1)c.1F=3Db!=3D12?D.3C(c.1F.1R(/\\s+/),H(=
a){I!D.1F.3T(b,a)}).6s(" "):""},3T:H(b,a){I =
D.2L(a,(b.1F||b).6r().1R(/\\s+/))>-1}},6q:H(b,c,a){J e=3D{};R(J d 1n =
c){e[d]=3Db.V[d];b.V[d]=3Dc[d]}a.1k(b);R(J d 1n =
c)b.V[d]=3De[d]},1g:H(d,e,c){G(e=3D=3D"2h"||e=3D=3D"1Z"){J =
b,3X=3D{30:"5x",5g:"1G",18:"3I"},35=3De=3D=3D"2h"?["5e","6k"]:["5G","6i"]=
;H 5b(){b=3De=3D=3D"2h"?d.8f:d.8c;J =
a=3D0,2C=3D0;D.P(35,H(){a+=3D3d(D.2a(d,"57"+7,M))||0;2C+=3D3d(D.2a(d,"2C"=
+7+"4b",M))||0});b-=3D29.83(a+2C)}G(D(d).3F(":4j"))5b();N =
D.6q(d,3X,5b);I 29.2f(0,b)}I D.2a(d,e,c)},2a:H(f,l,k){J e,V=3Df.V;H =
3E(b){G(!D.14.2k)I Q;J =
a=3D3P.54(b,U);I!a||a.52("3E")=3D=3D""}G(l=3D=3D"1y"&&D.14.1f){e=3DD.1K(V=
,"1y");I e=3D=3D""?"1":e}G(D.14.2G&&l=3D=3D"18"){J d=3DV.50;V.50=3D"0 7Y =
7W";V.50=3Dd}G(l.1I(/4i/i))l=3Dy;G(!k&&V&&V[l])e=3DV[l];N =
G(3P.54){G(l.1I(/4i/i))l=3D"4i";l=3Dl.1o(/([A-Z])/g,"-$1").3y();J =
c=3D3P.54(f,U);G(c&&!3E(f))e=3Dc.52(l);N{J =
g=3D[],2E=3D[],a=3Df,i=3D0;R(;a&&3E(a);a=3Da.1d)2E.6h(a);R(;i<2E.K;i++)G(=
3E(2E[i])){g[i]=3D2E[i].V.18;2E[i].V.18=3D"3I"}e=3Dl=3D=3D"18"&&g[2E.K-1]=
!=3DU?"2F":(c&&c.52(l))||"";R(i=3D0;i<g.K;i++)G(g[i]!=3DU)2E[i].V.18=3Dg[=
i]}G(l=3D=3D"1y"&&e=3D=3D"")e=3D"1"}N G(f.4g){J =
h=3Dl.1o(/\\-(\\w)/g,H(a,b){I =
b.2r()});e=3Df.4g[l]||f.4g[h];G(!/^\\d+(2X)?$/i.11(e)&&/^\\d/.11(e)){J =
j=3DV.1A,66=3Df.65.1A;f.65.1A=3Df.4g.1A;V.1A=3De||0;e=3DV.aM+"2X";V.1A=3D=
j;f.65.1A=3D66}}I e},4h:H(l,h){J k=3D[];h=3Dh||S;G(1j =
h.3h=3D=3D\'12\')h=3Dh.2z||h[0]&&h[0].2z||S;D.P(l,H(i,d){G(!d)I;G(d.1q=3D=
=3D4L)d+=3D\'\';G(1j =
d=3D=3D"23"){d=3Dd.1o(/(<(\\w+)[^>]*?)\\/>/g,H(b,a,c){I =
c.1I(/^(aK|4f|7E|aG|4T|7A|aB|3n|az|ay|av)$/i)?b:a+"></"+c+">"});J =
f=3DD.3k(d).3y(),1v=3Dh.3h("1v");J e=3D!f.1h("<au")&&[1,"<2A =
7w=3D\'7w\'>","</2A>"]||!f.1h("<ar")&&[1,"<7v>","</7v>"]||f.1I(/^<(aq|22|=
am|ak|ai)/)&&[1,"<1T>","</1T>"]||!f.1h("<4F")&&[2,"<1T><22>","</22></1T>"=
]||(!f.1h("<af")||!f.1h("<ad"))&&[3,"<1T><22><4F>","</4F></22></1T>"]||!f=
.1h("<7E")&&[2,"<1T><22></22><7q>","</7q></1T>"]||D.14.1f&&[1,"1v<1v>","<=
/1v>"]||[0,"",""];1v.4H=3De[1]+d+e[2];1B(e[0]--)1v=3D1v.5T;G(D.14.1f){J =
g=3D!f.1h("<1T")&&f.1h("<22")<0?1v.1x&&1v.1x.3t:e[1]=3D=3D"<1T>"&&f.1h("<=
22")<0?1v.3t:[];R(J =
j=3Dg.K-1;j>=3D0;--j)G(D.Y(g[j],"22")&&!g[j].3t.K)g[j].1d.37(g[j]);G(/^\\=
s/.11(d))1v.39(h.5F(d.1I(/^\\s*/)[0]),1v.1x)}d=3DD.2d(1v.3t)}G(d.K=3D=3D=3D=
0&&(!D.Y(d,"3V")&&!D.Y(d,"2A")))I;G(d[0]=3D=3D12||D.Y(d,"3V")||d.15)k.1p(=
d);N k=3DD.2R(k,d)});I k},1K:H(d,f,c){G(!d||d.16=3D=3D3||d.16=3D=3D8)I =
12;J =
e=3D!D.4n(d),40=3Dc!=3D=3D12,1f=3DD.14.1f;f=3De&&D.3X[f]||f;G(d.2j){J =
g=3D/5Q|4d|V/.11(f);G(f=3D=3D"2W"&&D.14.2k)d.1d.64;G(f 1n =
d&&e&&!g){G(40){G(f=3D=3D"O"&&D.Y(d,"4T")&&d.1d)7p"O a3 a1\'t 9V =
9U";d[f]=3Dc}G(D.Y(d,"3V")&&d.7i(f))I d.7i(f).76;I =
d[f]}G(1f&&e&&f=3D=3D"V")I D.1K(d.V,"9T",c);G(40)d.9Q(f,""+c);J =
h=3D1f&&e&&g?d.4G(f,2):d.4G(f);I =
h=3D=3D=3DU?12:h}G(1f&&f=3D=3D"1y"){G(40){d.6B=3D1;d.1E=3D(d.1E||"").1o(/=
7f\\([^)]*\\)/,"")+(3r(c)+\'\'=3D=3D"9L"?"":"7f(1y=3D"+c*7a+")")}I =
d.1E&&d.1E.1h("1y=3D")>=3D0?(3d(d.1E.1I(/1y=3D([^)]*)/)[1])/7a)+\'\':""}f=
=3Df.1o(/-([a-z])/9H,H(a,b){I b.2r()});G(40)d[f]=3Dc;I =
d[f]},3k:H(a){I(a||"").1o(/^\\s+|\\s+$/g,"")},2d:H(b){J =
a=3D[];G(b!=3DU){J i=3Db.K;G(i=3D=3DU||b.1R||b.4I||b.1k)a[0]=3Db;N =
1B(i)a[--i]=3Db[i]}I a},2L:H(b,a){R(J =
i=3D0,K=3Da.K;i<K;i++)G(a[i]=3D=3D=3Db)I i;I-1},2R:H(a,b){J =
i=3D0,T,2S=3Da.K;G(D.14.1f){1B(T=3Db[i++])G(T.16!=3D8)a[2S++]=3DT}N =
1B(T=3Db[i++])a[2S++]=3DT;I a},4r:H(a){J c=3D[],2o=3D{};1U{R(J =
i=3D0,K=3Da.K;i<K;i++){J =
b=3DD.L(a[i]);G(!2o[b]){2o[b]=3DM;c.1p(a[i])}}}1V(e){c=3Da}I =
c},3C:H(c,a,d){J b=3D[];R(J =
i=3D0,K=3Dc.K;i<K;i++)G(!d!=3D!a(c[i],i))b.1p(c[i]);I b},2l:H(d,a){J =
c=3D[];R(J i=3D0,K=3Dd.K;i<K;i++){J b=3Da(d[i],i);G(b!=3DU)c[c.K]=3Db}I =
c.7d.1w([],c)}});J =
v=3D9B.9A.3y();D.14=3D{5B:(v.1I(/.+(?:9y|9x|9w|9v)[\\/: =
]([\\d.]+)/)||[])[1],2k:/75/.11(v),2G:/2G/.11(v),1f:/1f/.11(v)&&!/2G/.11(=
v),42:/42/.11(v)&&!/(9s|75)/.11(v)};J =
y=3DD.14.1f?"7o":"72";D.1l({71:!D.14.1f||S.70=3D=3D"6Z",3X:{"R":"9n","9k"=
:"1F","4i":y,72:y,7o:y,9h:"9f",9e:"9d",9b:"99"}});D.P({6W:H(a){I =
a.1d},97:H(a){I D.4S(a,"1d")},95:H(a){I D.3a(a,2,"2H")},91:H(a){I =
D.3a(a,2,"4l")},8Z:H(a){I D.4S(a,"2H")},8X:H(a){I =
D.4S(a,"4l")},8W:H(a){I D.5v(a.1d.1x,a)},8V:H(a){I D.5v(a.1x)},6Q:H(a){I =
D.Y(a,"8U")?a.8T||a.8S.S:D.2d(a.3t)}},H(c,d){D.17[c]=3DH(b){J =
a=3DD.2l(7,d);G(b&&1j b=3D=3D"23")a=3DD.3g(b,a);I =
7.2I(D.4r(a))}});D.P({6P:"3v",8Q:"6F",39:"6E",8P:"5q",8O:"7b"},H(c,b){D.1=
7[c]=3DH(){J a=3D19;I 7.P(H(){R(J =
i=3D0,K=3Da.K;i<K;i++)D(a[i])[b](7)})}});D.P({8N:H(a){D.1K(7,a,"");G(7.16=
=3D=3D1)7.5l(a)},8M:H(a){D.1F.1e(7,a)},8L:H(a){D.1F.21(7,a)},8K:H(a){D.1F=
[D.1F.3T(7,a)?"21":"1e"](7,a)},21:H(a){G(!a||D.1E(a,[7]).r.K){D("*",7).1e=
(7).P(H(){D.W.21(7);D.3b(7)});G(7.1d)7.1d.37(7)}},4E:H(){D(">*",7).21();1=
B(7.1x)7.37(7.1x)}},H(a,b){D.17[a]=3DH(){I =
7.P(b,19)}});D.P(["6N","4b"],H(i,c){J b=3Dc.3y();D.17[b]=3DH(a){I =
7[0]=3D=3D1b?D.14.2G&&S.1c["5t"+c]||D.14.2k&&1b["5s"+c]||S.70=3D=3D"6Z"&&=
S.1C["5t"+c]||S.1c["5t"+c]:7[0]=3D=3DS?29.2f(29.2f(S.1c["4y"+c],S.1C["4y"=
+c]),29.2f(S.1c["2i"+c],S.1C["2i"+c])):a=3D=3D12?(7.K?D.1g(7[0],b):U):7.1=
g(b,a.1q=3D=3D56?a:a+"2X")}});H 25(a,b){I =
a[0]&&3r(D.2a(a[0],b,M),10)||0}J =
C=3DD.14.2k&&3r(D.14.5B)<8H?"(?:[\\\\w*3m-]|\\\\\\\\.)":"(?:[\\\\w\\8F-\\=
8E*3m-]|\\\\\\\\.)",6L=3D2B 4v("^>\\\\s*("+C+"+)"),6J=3D2B =
4v("^("+C+"+)(#)("+C+"+)"),6I=3D2B =
4v("^([#.]?)("+C+"*)");D.1l({6H:{"":H(a,i,m){I =
m[2]=3D=3D"*"||D.Y(a,m[2])},"#":H(a,i,m){I =
a.4G("2v")=3D=3Dm[2]},":":{8D:H(a,i,m){I i<m[3]-0},8C:H(a,i,m){I =
i>m[3]-0},3a:H(a,i,m){I m[3]-0=3D=3Di},79:H(a,i,m){I =
m[3]-0=3D=3Di},3o:H(a,i){I i=3D=3D0},3S:H(a,i,m,r){I =
i=3D=3Dr.K-1},6D:H(a,i){I i%2=3D=3D0},6C:H(a,i){I i%2},"3o-4u":H(a){I =
a.1d.3H("*")[0]=3D=3Da},"3S-4u":H(a){I =
D.3a(a.1d.5T,1,"4l")=3D=3Da},"8z-4u":H(a){I!D.3a(a.1d.5T,2,"4l")},6W:H(a)=
{I =
a.1x},4E:H(a){I!a.1x},8y:H(a,i,m){I(a.6O||a.8x||D(a).1r()||"").1h(m[3])>=3D=
0},4j:H(a){I"1G"!=3Da.O&&D.1g(a,"18")!=3D"2F"&&D.1g(a,"5g")!=3D"1G"},1G:H=
(a){I"1G"=3D=3Da.O||D.1g(a,"18")=3D=3D"2F"||D.1g(a,"5g")=3D=3D"1G"},8w:H(=
a){I!a.3R},3R:H(a){I a.3R},4J:H(a){I a.4J},2W:H(a){I =
a.2W||D.1K(a,"2W")},1r:H(a){I"1r"=3D=3Da.O},5O:H(a){I"5O"=3D=3Da.O},5L:H(=
a){I"5L"=3D=3Da.O},5p:H(a){I"5p"=3D=3Da.O},3Q:H(a){I"3Q"=3D=3Da.O},5o:H(a=
){I"5o"=3D=3Da.O},6A:H(a){I"6A"=3D=3Da.O},6z:H(a){I"6z"=3D=3Da.O},2s:H(a)=
{I"2s"=3D=3Da.O||D.Y(a,"2s")},4T:H(a){I/4T|2A|6y|2s/i.11(a.Y)},3T:H(a,i,m=
){I D.2q(m[3],a).K},8t:H(a){I/h\\d/i.11(a.Y)},8s:H(a){I D.3C(D.3O,H(b){I =
a=3D=3Db.T}).K}}},6x:[/^(\\[) *@?([\\w-]+) *([!*$^~=3D]*) =
*(\'?"?)(.*?)\\4 =
*\\]/,/^(:)([\\w-]+)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/,2B =
4v("^([:.#]*)("+C+"+)")],3g:H(a,c,b){J d,1t=3D[];1B(a&&a!=3Dd){d=3Da;J =
f=3DD.1E(a,c,b);a=3Df.t.1o(/^\\s*,\\s*/,"");1t=3Db?c=3Df.r:D.2R(1t,f.r)}I=
 1t},2q:H(t,o){G(1j =
t!=3D"23")I[t];G(o&&o.16!=3D1&&o.16!=3D9)I[];o=3Do||S;J =
d=3D[o],2o=3D[],3S,Y;1B(t&&3S!=3Dt){J r=3D[];3S=3Dt;t=3DD.3k(t);J =
l=3DQ,3j=3D6L,m=3D3j.2D(t);G(m){Y=3Dm[1].2r();R(J i=3D0;d[i];i++)R(J =
c=3Dd[i].1x;c;c=3Dc.2H)G(c.16=3D=3D1&&(Y=3D=3D"*"||c.Y.2r()=3D=3DY))r.1p(=
c);d=3Dr;t=3Dt.1o(3j,"");G(t.1h(" =
")=3D=3D0)6M;l=3DM}N{3j=3D/^([>+~])\\s*(\\w*)/i;G((m=3D3j.2D(t))!=3DU){r=3D=
[];J k=3D{};Y=3Dm[2].2r();m=3Dm[1];R(J j=3D0,3i=3Dd.K;j<3i;j++){J =
n=3Dm=3D=3D"~"||m=3D=3D"+"?d[j].2H:d[j].1x;R(;n;n=3Dn.2H)G(n.16=3D=3D1){J=
 =
g=3DD.L(n);G(m=3D=3D"~"&&k[g])1X;G(!Y||n.Y.2r()=3D=3DY){G(m=3D=3D"~")k[g]=
=3DM;r.1p(n)}G(m=3D=3D"+")1X}}d=3Dr;t=3DD.3k(t.1o(3j,""));l=3DM}}G(t&&!l)=
{G(!t.1h(",")){G(o=3D=3Dd[0])d.4s();2o=3DD.2R(2o,d);r=3Dd=3D[o];t=3D" =
"+t.6v(1,t.K)}N{J h=3D6J;J =
m=3Dh.2D(t);G(m){m=3D[0,m[2],m[3],m[1]]}N{h=3D6I;m=3Dh.2D(t)}m[2]=3Dm[2].=
1o(/\\\\/g,"");J f=3Dd[d.K-1];G(m[1]=3D=3D"#"&&f&&f.61&&!D.4n(f)){J =
p=3Df.61(m[2]);G((D.14.1f||D.14.2G)&&p&&1j =
p.2v=3D=3D"23"&&p.2v!=3Dm[2])p=3DD(\'[@2v=3D"\'+m[2]+\'"]\',f)[0];d=3Dr=3D=
p&&(!m[3]||D.Y(p,m[3]))?[p]:[]}N{R(J i=3D0;d[i];i++){J =
a=3Dm[1]=3D=3D"#"&&m[3]?m[3]:m[1]!=3D""||m[0]=3D=3D""?"*":m[2];G(a=3D=3D"=
*"&&d[i].Y.3y()=3D=3D"49")a=3D"3n";r=3DD.2R(r,d[i].3H(a))}G(m[1]=3D=3D"."=
)r=3DD.5m(r,m[2]);G(m[1]=3D=3D"#"){J e=3D[];R(J =
i=3D0;r[i];i++)G(r[i].4G("2v")=3D=3Dm[2]){e=3D[r[i]];1X}r=3De}d=3Dr}t=3Dt=
.1o(h,"")}}G(t){J =
b=3DD.1E(t,r);d=3Dr=3Db.r;t=3DD.3k(b.t)}}G(t)d=3D[];G(d&&o=3D=3Dd[0])d.4s=
();2o=3DD.2R(2o,d);I 2o},5m:H(r,m,a){m=3D" "+m+" ";J c=3D[];R(J =
i=3D0;r[i];i++){J b=3D(" "+r[i].1F+" =
").1h(m)>=3D0;G(!a&&b||a&&!b)c.1p(r[i])}I c},1E:H(t,r,h){J =
d;1B(t&&t!=3Dd){d=3Dt;J p=3DD.6x,m;R(J =
i=3D0;p[i];i++){m=3Dp[i].2D(t);G(m){t=3Dt.8r(m[0].K);m[2]=3Dm[2].1o(/\\\\=
/g,"");1X}}G(!m)1X;G(m[1]=3D=3D":"&&m[2]=3D=3D"4Y")r=3D62.11(m[3])?D.1E(m=
[3],r,M).r:D(r).4Y(m[3]);N G(m[1]=3D=3D".")r=3DD.5m(r,m[2],h);N =
G(m[1]=3D=3D"["){J g=3D[],O=3Dm[3];R(J i=3D0,3i=3Dr.K;i<3i;i++){J =
a=3Dr[i],z=3Da[D.3X[m[2]]||m[2]];G(z=3D=3DU||/5Q|4d|2W/.11(m[2]))z=3DD.1K=
(a,m[2])||\'\';G((O=3D=3D""&&!!z||O=3D=3D"=3D"&&z=3D=3Dm[5]||O=3D=3D"!=3D=
"&&z!=3Dm[5]||O=3D=3D"^=3D"&&z&&!z.1h(m[5])||O=3D=3D"$=3D"&&z.6v(z.K-m[5]=
.K)=3D=3Dm[5]||(O=3D=3D"*=3D"||O=3D=3D"~=3D")&&z.1h(m[5])>=3D0)^h)g.1p(a)=
}r=3Dg}N G(m[1]=3D=3D":"&&m[2]=3D=3D"3a-4u"){J =
e=3D{},g=3D[],11=3D/(-?)(\\d*)n((?:\\+|-)?\\d*)/.2D(m[3]=3D=3D"6D"&&"2n"|=
|m[3]=3D=3D"6C"&&"2n+1"||!/\\D/.11(m[3])&&"8q+"+m[3]||m[3]),3o=3D(11[1]+(=
11[2]||1))-0,d=3D11[3]-0;R(J i=3D0,3i=3Dr.K;i<3i;i++){J =
j=3Dr[i],1d=3Dj.1d,2v=3DD.L(1d);G(!e[2v]){J c=3D1;R(J =
n=3D1d.1x;n;n=3Dn.2H)G(n.16=3D=3D1)n.4q=3Dc++;e[2v]=3DM}J =
b=3DQ;G(3o=3D=3D0){G(j.4q=3D=3Dd)b=3DM}N =
G((j.4q-d)%3o=3D=3D0&&(j.4q-d)/3o>=3D0)b=3DM;G(b^h)g.1p(j)}r=3Dg}N{J =
f=3DD.6H[m[1]];G(1j f=3D=3D"49")f=3Df[m[2]];G(1j =
f=3D=3D"23")f=3D6u("Q||H(a,i){I "+f+";}");r=3DD.3C(r,H(a,i){I =
f(a,i,m,r)},h)}}I{r:r,t:t}},4S:H(b,c){J =
a=3D[],1t=3Db[c];1B(1t&&1t!=3DS){G(1t.16=3D=3D1)a.1p(1t);1t=3D1t[c]}I =
a},3a:H(a,e,c,b){e=3De||1;J =
d=3D0;R(;a;a=3Da[c])G(a.16=3D=3D1&&++d=3D=3De)1X;I a},5v:H(n,a){J =
r=3D[];R(;n;n=3Dn.2H){G(n.16=3D=3D1&&n!=3Da)r.1p(n)}I =
r}});D.W=3D{1e:H(f,i,g,e){G(f.16=3D=3D3||f.16=3D=3D8)I;G(D.14.1f&&f.4I)f=3D=
1b;G(!g.24)g.24=3D7.24++;G(e!=3D12){J h=3Dg;g=3D7.3M(h,H(){I =
h.1w(7,19)});g.L=3De}J =
j=3DD.L(f,"3w")||D.L(f,"3w",{}),1H=3DD.L(f,"1H")||D.L(f,"1H",H(){G(1j =
D!=3D"12"&&!D.W.5k)I =
D.W.1H.1w(19.3L.T,19)});1H.T=3Df;D.P(i.1R(/\\s+/),H(c,b){J =
a=3Db.1R(".");b=3Da[0];g.O=3Da[1];J =
d=3Dj[b];G(!d){d=3Dj[b]=3D{};G(!D.W.2t[b]||D.W.2t[b].4p.1k(f)=3D=3D=3DQ){=
G(f.3K)f.3K(b,1H,Q);N =
G(f.6t)f.6t("4o"+b,1H)}}d[g.24]=3Dg;D.W.26[b]=3DM});f=3DU},24:1,26:{},21:=
H(e,h,f){G(e.16=3D=3D3||e.16=3D=3D8)I;J =
i=3DD.L(e,"3w"),1L,5i;G(i){G(h=3D=3D12||(1j =
h=3D=3D"23"&&h.8p(0)=3D=3D"."))R(J g 1n =
i)7.21(e,g+(h||""));N{G(h.O){f=3Dh.2y;h=3Dh.O}D.P(h.1R(/\\s+/),H(b,a){J =
c=3Da.1R(".");a=3Dc[0];G(i[a]){G(f)2U i[a][f.24];N R(f 1n =
i[a])G(!c[1]||i[a][f].O=3D=3Dc[1])2U i[a][f];R(1L 1n =
i[a])1X;G(!1L){G(!D.W.2t[a]||D.W.2t[a].4A.1k(e)=3D=3D=3DQ){G(e.6p)e.6p(a,=
D.L(e,"1H"),Q);N G(e.6n)e.6n("4o"+a,D.L(e,"1H"))}1L=3DU;2U i[a]}}})}R(1L =
1n i)1X;G(!1L){J =
d=3DD.L(e,"1H");G(d)d.T=3DU;D.3b(e,"3w");D.3b(e,"1H")}}},1P:H(h,c,f,g,i){=
c=3DD.2d(c);G(h.1h("!")>=3D0){h=3Dh.3s(0,-1);J =
a=3DM}G(!f){G(7.26[h])D("*").1e([1b,S]).1P(h,c)}N{G(f.16=3D=3D3||f.16=3D=3D=
8)I 12;J =
b,1L,17=3DD.1D(f[h]||U),W=3D!c[0]||!c[0].32;G(W){c.6h({O:h,2J:f,32:H(){},=
3J:H(){},4C:1z()});c[0][E]=3DM}c[0].O=3Dh;G(a)c[0].6m=3DM;J =
d=3DD.L(f,"1H");G(d)b=3Dd.1w(f,c);G((!17||(D.Y(f,\'a\')&&h=3D=3D"4V"))&&f=
["4o"+h]&&f["4o"+h].1w(f,c)=3D=3D=3DQ)b=3DQ;G(W)c.4s();G(i&&D.1D(i)){1L=3D=
i.1w(f,b=3D=3DU?c:c.7d(b));G(1L!=3D=3D12)b=3D1L}G(17&&g!=3D=3DQ&&b!=3D=3D=
Q&&!(D.Y(f,\'a\')&&h=3D=3D"4V")){7.5k=3DM;1U{f[h]()}1V(e){}}7.5k=3DQ}I =
b},1H:H(b){J =
a,1L,38,5f,4m;b=3D19[0]=3DD.W.6l(b||1b.W);38=3Db.O.1R(".");b.O=3D38[0];38=
=3D38[1];5f=3D!38&&!b.6m;4m=3D(D.L(7,"3w")||{})[b.O];R(J j 1n 4m){J =
c=3D4m[j];G(5f||c.O=3D=3D38){b.2y=3Dc;b.L=3Dc.L;1L=3Dc.1w(7,19);G(a!=3D=3D=
Q)a=3D1L;G(1L=3D=3D=3DQ){b.32();b.3J()}}}I a},6l:H(b){G(b[E]=3D=3DM)I =
b;J d=3Db;b=3D{8o:d};J c=3D"8n 8m 8l 8k 2s 8j 47 5d 6j 5E 8i L 8h 8g 4K =
2y 5a 59 8e 8b 58 6f 8a 88 4k 87 86 84 6d 2J 4C 6c O 82 81 35".1R(" =
");R(J =
i=3Dc.K;i;i--)b[c[i]]=3Dd[c[i]];b[E]=3DM;b.32=3DH(){G(d.32)d.32();d.80=3D=
Q};b.3J=3DH(){G(d.3J)d.3J();d.7Z=3DM};b.4C=3Db.4C||1z();G(!b.2J)b.2J=3Db.=
6d||S;G(b.2J.16=3D=3D3)b.2J=3Db.2J.1d;G(!b.4k&&b.4K)b.4k=3Db.4K=3D=3Db.2J=
?b.6c:b.4K;G(b.58=3D=3DU&&b.5d!=3DU){J =
a=3DS.1C,1c=3DS.1c;b.58=3Db.5d+(a&&a.2e||1c&&1c.2e||0)-(a.6b||0);b.6f=3Db=
.6j+(a&&a.2c||1c&&1c.2c||0)-(a.6a||0)}G(!b.35&&((b.47||b.47=3D=3D=3D0)?b.=
47:b.5a))b.35=3Db.47||b.5a;G(!b.59&&b.5E)b.59=3Db.5E;G(!b.35&&b.2s)b.35=3D=
(b.2s&1?1:(b.2s&2?3:(b.2s&4?2:0)));I =
b},3M:H(a,b){b.24=3Da.24=3Da.24||b.24||7.24++;I =
b},2t:{27:{4p:H(){55();I},4A:H(){I}},3D:{4p:H(){G(D.14.1f)I =
Q;D(7).2O("53",D.W.2t.3D.2y);I M},4A:H(){G(D.14.1f)I =
Q;D(7).4e("53",D.W.2t.3D.2y);I M},2y:H(a){G(F(a,7))I M;a.O=3D"3D";I =
D.W.1H.1w(7,19)}},3N:{4p:H(){G(D.14.1f)I Q;D(7).2O("51",D.W.2t.3N.2y);I =
M},4A:H(){G(D.14.1f)I Q;D(7).4e("51",D.W.2t.3N.2y);I =
M},2y:H(a){G(F(a,7))I M;a.O=3D"3N";I =
D.W.1H.1w(7,19)}}}};D.17.1l({2O:H(c,a,b){I =
c=3D=3D"4X"?7.2V(c,a,b):7.P(H(){D.W.1e(7,c,b||a,b&&a)})},2V:H(d,b,c){J =
e=3DD.W.3M(c||b,H(a){D(7).4e(a,e);I(c||b).1w(7,19)});I =
7.P(H(){D.W.1e(7,d,e,c&&b)})},4e:H(a,b){I =
7.P(H(){D.W.21(7,a,b)})},1P:H(c,a,b){I =
7.P(H(){D.W.1P(c,a,7,M,b)})},5C:H(c,a,b){I =
7[0]&&D.W.1P(c,a,7[0],Q,b)},2m:H(b){J =
c=3D19,i=3D1;1B(i<c.K)D.W.3M(b,c[i++]);I =
7.4V(D.W.3M(b,H(a){7.4Z=3D(7.4Z||0)%i;a.32();I =
c[7.4Z++].1w(7,19)||Q}))},7X:H(a,b){I =
7.2O(\'3D\',a).2O(\'3N\',b)},27:H(a){55();G(D.2Q)a.1k(S,D);N =
D.3A.1p(H(){I a.1k(7,D)});I =
7}});D.1l({2Q:Q,3A:[],27:H(){G(!D.2Q){D.2Q=3DM;G(D.3A){D.P(D.3A,H(){7.1k(=
S)});D.3A=3DU}D(S).5C("27")}}});J x=3DQ;H =
55(){G(x)I;x=3DM;G(S.3K&&!D.14.2G)S.3K("69",D.27,Q);G(D.14.1f&&1b=3D=3D1S=
)(H(){G(D.2Q)I;1U{S.1C.7V("1A")}1V(3e){3B(19.3L,0);I}D.27()})();G(D.14.2G=
)S.3K("69",H(){G(D.2Q)I;R(J =
i=3D0;i<S.4W.K;i++)G(S.4W[i].3R){3B(19.3L,0);I}D.27()},Q);G(D.14.2k){J =
a;(H(){G(D.2Q)I;G(S.3f!=3D"68"&&S.3f!=3D"1J"){3B(19.3L,0);I}G(a=3D=3D=3D1=
2)a=3DD("V, =
7A[7U=3D7S]").K;G(S.4W.K!=3Da){3B(19.3L,0);I}D.27()})()}D.W.1e(1b,"43",D.=
27)}D.P(("7R,7Q,43,85,4y,4X,4V,7P,"+"7O,7N,89,53,51,7M,2A,"+"5o,7L,7K,8d,=
3e").1R(","),H(i,b){D.17[b]=3DH(a){I a?7.2O(b,a):7.1P(b)}});J =
F=3DH(a,c){J b=3Da.4k;1B(b&&b!=3Dc)1U{b=3Db.1d}1V(3e){b=3Dc}I =
b=3D=3Dc};D(1b).2O("4X",H(){D("*").1e(S).4e()});D.17.1l({67:D.17.43,43:H(=
g,d,c){G(1j g!=3D\'23\')I 7.67(g);J e=3Dg.1h(" ");G(e>=3D0){J =
i=3Dg.3s(e,g.K);g=3Dg.3s(0,e)}c=3Dc||H(){};J =
f=3D"2P";G(d)G(D.1D(d)){c=3Dd;d=3DU}N{d=3DD.3n(d);f=3D"6g"}J =
h=3D7;D.3Y({1a:g,O:f,1O:"2K",L:d,1J:H(a,b){G(b=3D=3D"1W"||b=3D=3D"7J")h.2=
K(i?D("<1v/>").3v(a.4U.1o(/<1m(.|\\s)*?\\/1m>/g,"")).2q(i):a.4U);h.P(c,[a=
.4U,b,a])}});I 7},aL:H(){I D.3n(7.7I())},7I:H(){I 7.2l(H(){I =
D.Y(7,"3V")?D.2d(7.aH):7}).1E(H(){I =
7.34&&!7.3R&&(7.4J||/2A|6y/i.11(7.Y)||/1r|1G|3Q/i.11(7.O))}).2l(H(i,c){J =
b=3DD(7).6e();I =
b=3D=3DU?U:b.1q=3D=3D2p?D.2l(b,H(a,i){I{34:c.34,2x:a}}):{34:c.34,2x:b}}).=
3p()}});D.P("7H,7G,7F,7D,7C,7B".1R(","),H(i,o){D.17[o]=3DH(f){I =
7.2O(o,f)}});J B=3D1z();D.1l({3p:H(d,b,a,c){G(D.1D(b)){a=3Db;b=3DU}I =
D.3Y({O:"2P",1a:d,L:b,1W:a,1O:c})},aE:H(b,a){I =
D.3p(b,U,a,"1m")},aD:H(c,b,a){I =
D.3p(c,b,a,"3z")},aC:H(d,b,a,c){G(D.1D(b)){a=3Db;b=3D{}}I =
D.3Y({O:"6g",1a:d,L:b,1W:a,1O:c})},aA:H(a){D.1l(D.60,a)},60:{1a:5Z.5Q,26:=
M,O:"2P",2T:0,7z:"4R/x-ax-3V-aw",7x:M,31:M,L:U,5Y:U,3Q:U,4Q:{2N:"4R/2N, =
1r/2N",2K:"1r/2K",1m:"1r/4t, 4R/4t",3z:"4R/3z, =
1r/4t",1r:"1r/as",4w:"*/*"}},4z:{},3Y:H(s){s=3DD.1l(M,s,D.1l(M,{},D.60,s)=
);J g,2Z=3D/=3D\\?(&|$)/g,1u,L,O=3Ds.O.2r();G(s.L&&s.7x&&1j =
s.L!=3D"23")s.L=3DD.3n(s.L);G(s.1O=3D=3D"4P"){G(O=3D=3D"2P"){G(!s.1a.1I(2=
Z))s.1a+=3D(s.1a.1I(/\\?/)?"&":"?")+(s.4P||"7u")+"=3D?"}N =
G(!s.L||!s.L.1I(2Z))s.L=3D(s.L?s.L+"&":"")+(s.4P||"7u")+"=3D?";s.1O=3D"3z=
"}G(s.1O=3D=3D"3z"&&(s.L&&s.L.1I(2Z)||s.1a.1I(2Z))){g=3D"4P"+B++;G(s.L)s.=
L=3D(s.L+"").1o(2Z,"=3D"+g+"$1");s.1a=3Ds.1a.1o(2Z,"=3D"+g+"$1");s.1O=3D"=
1m";1b[g]=3DH(a){L=3Da;1W();1J();1b[g]=3D12;1U{2U =
1b[g]}1V(e){}G(i)i.37(h)}}G(s.1O=3D=3D"1m"&&s.1Y=3D=3DU)s.1Y=3DQ;G(s.1Y=3D=
=3D=3DQ&&O=3D=3D"2P"){J j=3D1z();J =
k=3Ds.1a.1o(/(\\?|&)3m=3D.*?(&|$)/,"$ap=3D"+j+"$2");s.1a=3Dk+((k=3D=3Ds.1=
a)?(s.1a.1I(/\\?/)?"&":"?")+"3m=3D"+j:"")}G(s.L&&O=3D=3D"2P"){s.1a+=3D(s.=
1a.1I(/\\?/)?"&":"?")+s.L;s.L=3DU}G(s.26&&!D.4O++)D.W.1P("7H");J =
n=3D/^(?:\\w+:)?\\/\\/([^\\/?#]+)/;G(s.1O=3D=3D"1m"&&O=3D=3D"2P"&&n.11(s.=
1a)&&n.2D(s.1a)[1]!=3D5Z.al){J i=3DS.3H("6w")[0];J =
h=3DS.3h("1m");h.4d=3Ds.1a;G(s.7t)h.aj=3Ds.7t;G(!g){J =
l=3DQ;h.ah=3Dh.ag=3DH(){G(!l&&(!7.3f||7.3f=3D=3D"68"||7.3f=3D=3D"1J")){l=3D=
M;1W();1J();i.37(h)}}}i.3U(h);I 12}J m=3DQ;J c=3D1b.7s?2B 7s("ae.ac"):2B =
7r();G(s.5Y)c.6R(O,s.1a,s.31,s.5Y,s.3Q);N =
c.6R(O,s.1a,s.31);1U{G(s.L)c.4B("ab-aa",s.7z);G(s.5S)c.4B("a9-5R-a8",D.4z=
[s.1a]||"a7, a6 a5 a4 5N:5N:5N =
a2");c.4B("X-9Z-9Y","7r");c.4B("9W",s.1O&&s.4Q[s.1O]?s.4Q[s.1O]+", =
*/*":s.4Q.4w)}1V(e){}G(s.7m&&s.7m(c,s)=3D=3D=3DQ){s.26&&D.4O--;c.7l();I =
Q}G(s.26)D.W.1P("7B",[c,s]);J =
d=3DH(a){G(!m&&c&&(c.3f=3D=3D4||a=3D=3D"2T")){m=3DM;G(f){7k(f);f=3DU}1u=3D=
a=3D=3D"2T"&&"2T"||!D.7j(c)&&"3e"||s.5S&&D.7h(c,s.1a)&&"7J"||"1W";G(1u=3D=
=3D"1W"){1U{L=3DD.6X(c,s.1O,s.9S)}1V(e){1u=3D"5J"}}G(1u=3D=3D"1W"){J =
b;1U{b=3Dc.5I("7g-5R")}1V(e){}G(s.5S&&b)D.4z[s.1a]=3Db;G(!g)1W()}N =
D.5H(s,c,1u);1J();G(s.31)c=3DU}};G(s.31){J =
f=3D4I(d,13);G(s.2T>0)3B(H(){G(c){c.7l();G(!m)d("2T")}},s.2T)}1U{c.9P(s.L=
)}1V(e){D.5H(s,c,U,e)}G(!s.31)d();H =
1W(){G(s.1W)s.1W(L,1u);G(s.26)D.W.1P("7C",[c,s])}H =
1J(){G(s.1J)s.1J(c,1u);G(s.26)D.W.1P("7F",[c,s]);G(s.26&&!--D.4O)D.W.1P("=
7G")}I =
c},5H:H(s,a,b,e){G(s.3e)s.3e(a,b,e);G(s.26)D.W.1P("7D",[a,s,e])},4O:0,7j:=
H(a){1U{I!a.1u&&5Z.9O=3D=3D"5p:"||(a.1u>=3D7e&&a.1u<9N)||a.1u=3D=3D7c||a.=
1u=3D=3D9K||D.14.2k&&a.1u=3D=3D12}1V(e){}I Q},7h:H(a,c){1U{J =
b=3Da.5I("7g-5R");I =
a.1u=3D=3D7c||b=3D=3DD.4z[c]||D.14.2k&&a.1u=3D=3D12}1V(e){}I =
Q},6X:H(a,c,b){J =
d=3Da.5I("9J-O"),2N=3Dc=3D=3D"2N"||!c&&d&&d.1h("2N")>=3D0,L=3D2N?a.9I:a.4=
U;G(2N&&L.1C.2j=3D=3D"5J")7p"5J";G(b)L=3Db(L,c);G(c=3D=3D"1m")D.5u(L);G(c=
=3D=3D"3z")L=3D6u("("+L+")");I L},3n:H(a){J =
s=3D[];G(a.1q=3D=3D2p||a.5w)D.P(a,H(){s.1p(3u(7.34)+"=3D"+3u(7.2x))});N =
R(J j 1n =
a)G(a[j]&&a[j].1q=3D=3D2p)D.P(a[j],H(){s.1p(3u(j)+"=3D"+3u(7))});N =
s.1p(3u(j)+"=3D"+3u(D.1D(a[j])?a[j]():a[j]));I =
s.6s("&").1o(/%20/g,"+")}});D.17.1l({1N:H(c,b){I =
c?7.2g({1Z:"1N",2h:"1N",1y:"1N"},c,b):7.1E(":1G").P(H(){7.V.18=3D7.5D||""=
;G(D.1g(7,"18")=3D=3D"2F"){J a=3DD("<"+7.2j+" =
/>").6P("1c");7.V.18=3Da.1g("18");G(7.V.18=3D=3D"2F")7.V.18=3D"3I";a.21()=
}}).3l()},1M:H(b,a){I =
b?7.2g({1Z:"1M",2h:"1M",1y:"1M"},b,a):7.1E(":4j").P(H(){7.5D=3D7.5D||D.1g=
(7,"18");7.V.18=3D"2F"}).3l()},78:D.17.2m,2m:H(a,b){I =
D.1D(a)&&D.1D(b)?7.78.1w(7,19):a?7.2g({1Z:"2m",2h:"2m",1y:"2m"},a,b):7.P(=
H(){D(7)[D(7).3F(":1G")?"1N":"1M"]()})},9G:H(b,a){I =
7.2g({1Z:"1N"},b,a)},9F:H(b,a){I 7.2g({1Z:"1M"},b,a)},9E:H(b,a){I =
7.2g({1Z:"2m"},b,a)},9D:H(b,a){I 7.2g({1y:"1N"},b,a)},9M:H(b,a){I =
7.2g({1y:"1M"},b,a)},9C:H(c,a,b){I 7.2g({1y:a},c,b)},2g:H(k,j,i,g){J =
h=3DD.77(j,i,g);I 7[h.36=3D=3D=3DQ?"P":"36"](H(){G(7.16!=3D1)I Q;J =
f=3DD.1l({},h),p,1G=3DD(7).3F(":1G"),46=3D7;R(p 1n =
k){G(k[p]=3D=3D"1M"&&1G||k[p]=3D=3D"1N"&&!1G)I =
f.1J.1k(7);G(p=3D=3D"1Z"||p=3D=3D"2h"){f.18=3DD.1g(7,"18");f.33=3D7.V.33}=
}G(f.33!=3DU)7.V.33=3D"1G";f.45=3DD.1l({},k);D.P(k,H(c,a){J e=3D2B =
D.28(46,f,c);G(/2m|1N|1M/.11(a))e[a=3D=3D"2m"?1G?"1N":"1M":a](k);N{J =
b=3Da.6r().1I(/^([+-]=3D)?([\\d+-.]+)(.*)$/),2b=3De.1t(M)||0;G(b){J =
d=3D3d(b[2]),2M=3Db[3]||"2X";G(2M!=3D"2X"){46.V[c]=3D(d||1)+2M;2b=3D((d||=
1)/e.1t(M))*2b;46.V[c]=3D2b+2M}G(b[1])d=3D((b[1]=3D=3D"-=3D"?-1:1)*d)+2b;=
e.3G(2b,d,2M)}N e.3G(2b,a,"")}});I =
M})},36:H(a,b){G(D.1D(a)||(a&&a.1q=3D=3D2p)){b=3Da;a=3D"28"}G(!a||(1j =
a=3D=3D"23"&&!b))I A(7[0],a);I =
7.P(H(){G(b.1q=3D=3D2p)A(7,a,b);N{A(7,a).1p(b);G(A(7,a).K=3D=3D1)b.1k(7)}=
})},9X:H(b,c){J a=3DD.3O;G(b)7.36([]);7.P(H(){R(J =
i=3Da.K-1;i>=3D0;i--)G(a[i].T=3D=3D7){G(c)a[i](M);a.7n(i,1)}});G(!c)7.5A(=
);I 7}});J A=3DH(b,c,a){G(b){c=3Dc||"28";J =
q=3DD.L(b,c+"36");G(!q||a)q=3DD.L(b,c+"36",D.2d(a))}I =
q};D.17.5A=3DH(a){a=3Da||"28";I 7.P(H(){J =
q=3DA(7,a);q.4s();G(q.K)q[0].1k(7)})};D.1l({77:H(b,a,c){J =
d=3Db&&b.1q=3D=3Da0?b:{1J:c||!c&&a||D.1D(b)&&b,2u:b,41:c&&a||a&&a.1q!=3D9=
t&&a};d.2u=3D(d.2u&&d.2u.1q=3D=3D4L?d.2u:D.28.5K[d.2u])||D.28.5K.74;d.5M=3D=
d.1J;d.1J=3DH(){G(d.36!=3D=3DQ)D(7).5A();G(D.1D(d.5M))d.5M.1k(7)};I =
d},41:{73:H(p,n,b,a){I =
b+a*p},5P:H(p,n,b,a){I((-29.9r(p*29.9q)/2)+0.5)*a+b}},3O:[],48:U,28:H(b,c=
,a){7.15=3Dc;7.T=3Db;7.1i=3Da;G(!c.3Z)c.3Z=3D{}}});D.28.44=3D{4D:H(){G(7.=
15.2Y)7.15.2Y.1k(7.T,7.1z,7);(D.28.2Y[7.1i]||D.28.2Y.4w)(7);G(7.1i=3D=3D"=
1Z"||7.1i=3D=3D"2h")7.T.V.18=3D"3I"},1t:H(a){G(7.T[7.1i]!=3DU&&7.T.V[7.1i=
]=3D=3DU)I 7.T[7.1i];J r=3D3d(D.1g(7.T,7.1i,a));I =
r&&r>-9p?r:3d(D.2a(7.T,7.1i))||0},3G:H(c,b,d){7.5V=3D1z();7.2b=3Dc;7.3l=3D=
b;7.2M=3Dd||7.2M||"2X";7.1z=3D7.2b;7.2S=3D7.4N=3D0;7.4D();J e=3D7;H =
t(a){I e.2Y(a)}t.T=3D7.T;D.3O.1p(t);G(D.48=3D=3DU){D.48=3D4I(H(){J =
a=3DD.3O;R(J =
i=3D0;i<a.K;i++)G(!a[i]())a.7n(i--,1);G(!a.K){7k(D.48);D.48=3DU}},13)}},1=
N:H(){7.15.3Z[7.1i]=3DD.1K(7.T.V,7.1i);7.15.1N=3DM;7.3G(0,7.1t());G(7.1i=3D=
=3D"2h"||7.1i=3D=3D"1Z")7.T.V[7.1i]=3D"9m";D(7.T).1N()},1M:H(){7.15.3Z[7.=
1i]=3DD.1K(7.T.V,7.1i);7.15.1M=3DM;7.3G(7.1t(),0)},2Y:H(a){J =
t=3D1z();G(a||t>7.15.2u+7.5V){7.1z=3D7.3l;7.2S=3D7.4N=3D1;7.4D();7.15.45[=
7.1i]=3DM;J b=3DM;R(J i 1n =
7.15.45)G(7.15.45[i]!=3D=3DM)b=3DQ;G(b){G(7.15.18!=3DU){7.T.V.33=3D7.15.3=
3;7.T.V.18=3D7.15.18;G(D.1g(7.T,"18")=3D=3D"2F")7.T.V.18=3D"3I"}G(7.15.1M=
)7.T.V.18=3D"2F";G(7.15.1M||7.15.1N)R(J p 1n =
7.15.45)D.1K(7.T.V,p,7.15.3Z[p])}G(b)7.15.1J.1k(7.T);I Q}N{J =
n=3Dt-7.5V;7.4N=3Dn/7.15.2u;7.2S=3DD.41[7.15.41||(D.41.5P?"5P":"73")](7.4=
N,n,0,1,7.15.2u);7.1z=3D7.2b+((7.3l-7.2b)*7.2S);7.4D()}I =
M}};D.1l(D.28,{5K:{9l:9j,9i:7e,74:9g},2Y:{2e:H(a){a.T.2e=3Da.1z},2c:H(a){=
a.T.2c=3Da.1z},1y:H(a){D.1K(a.T.V,"1y",a.1z)},4w:H(a){a.T.V[a.1i]=3Da.1z+=
a.2M}}});D.17.2i=3DH(){J b=3D0,1S=3D0,T=3D7[0],3q;G(T)ao(D.14){J =
d=3DT.1d,4a=3DT,1s=3DT.1s,1Q=3DT.2z,5U=3D2k&&3r(5B)<9c&&!/9a/i.11(v),1g=3D=
D.2a,3c=3D1g(T,"30")=3D=3D"3c";G(T.7y){J =
c=3DT.7y();1e(c.1A+29.2f(1Q.1C.2e,1Q.1c.2e),c.1S+29.2f(1Q.1C.2c,1Q.1c.2c)=
);1e(-1Q.1C.6b,-1Q.1C.6a)}N{1e(T.5X,T.5W);1B(1s){1e(1s.5X,1s.5W);G(42&&!/=
^t(98|d|h)$/i.11(1s.2j)||2k&&!5U)2C(1s);G(!3c&&1g(1s,"30")=3D=3D"3c")3c=3D=
M;4a=3D/^1c$/i.11(1s.2j)?4a:1s;1s=3D1s.1s}1B(d&&d.2j&&!/^1c|2K$/i.11(d.2j=
)){G(!/^96|1T.*$/i.11(1g(d,"18")))1e(-d.2e,-d.2c);G(42&&1g(d,"33")!=3D"4j=
")2C(d);d=3Dd.1d}G((5U&&(3c||1g(4a,"30")=3D=3D"5x"))||(42&&1g(4a,"30")!=3D=
"5x"))1e(-1Q.1c.5X,-1Q.1c.5W);G(3c)1e(29.2f(1Q.1C.2e,1Q.1c.2e),29.2f(1Q.1=
C.2c,1Q.1c.2c))}3q=3D{1S:1S,1A:b}}H =
2C(a){1e(D.2a(a,"6V",M),D.2a(a,"6U",M))}H =
1e(l,t){b+=3D3r(l,10)||0;1S+=3D3r(t,10)||0}I 3q};D.17.1l({30:H(){J =
a=3D0,1S=3D0,3q;G(7[0]){J =
b=3D7.1s(),2i=3D7.2i(),4c=3D/^1c|2K$/i.11(b[0].2j)?{1S:0,1A:0}:b.2i();2i.=
1S-=3D25(7,\'94\');2i.1A-=3D25(7,\'aF\');4c.1S+=3D25(b,\'6U\');4c.1A+=3D2=
5(b,\'6V\');3q=3D{1S:2i.1S-4c.1S,1A:2i.1A-4c.1A}}I 3q},1s:H(){J =
a=3D7[0].1s;1B(a&&(!/^1c|2K$/i.11(a.2j)&&D.1g(a,\'30\')=3D=3D\'93\'))a=3D=
a.1s;I D(a)}});D.P([\'5e\',\'5G\'],H(i,b){J =
c=3D\'4y\'+b;D.17[c]=3DH(a){G(!7[0])I;I =
a!=3D12?7.P(H(){7=3D=3D1b||7=3D=3DS?1b.92(!i?a:D(1b).2e(),i?a:D(1b).2c())=
:7[c]=3Da}):7[0]=3D=3D1b||7[0]=3D=3DS?46[i?\'aI\':\'aJ\']||D.71&&S.1C[c]|=
|S.1c[c]:7[0][c]}});D.P(["6N","4b"],H(i,b){J =
c=3Di?"5e":"5G",4f=3Di?"6k":"6i";D.17["5s"+b]=3DH(){I =
7[b.3y()]()+25(7,"57"+c)+25(7,"57"+4f)};D.17["90"+b]=3DH(a){I =
7["5s"+b]()+25(7,"2C"+c+"4b")+25(7,"2C"+4f+"4b")+(a?25(7,"6S"+c)+25(7,"6S=
"+4f):0)}})})();',62,669,'|||||||this|||||||||||||||||||||||||||||||||||i=
f|function|return|var|length|data|true|else|type|each|false|for|document|=
elem|null|style|event||nodeName|||test|undefined||browser|options|nodeTyp=
e|fn|display|arguments|url|window|body|parentNode|add|msie|css|indexOf|pr=
op|typeof|call|extend|script|in|replace|push|constructor|text|offsetParen=
t|cur|status|div|apply|firstChild|opacity|now|left|while|documentElement|=
isFunction|filter|className|hidden|handle|match|complete|attr|ret|hide|sh=
ow|dataType|trigger|doc|split|top|table|try|catch|success|break|cache|hei=
ght||remove|tbody|string|guid|num|global|ready|fx|Math|curCSS|start|scrol=
lTop|makeArray|scrollLeft|max|animate|width|offset|tagName|safari|map|tog=
gle||done|Array|find|toUpperCase|button|special|duration|id|copy|value|ha=
ndler|ownerDocument|select|new|border|exec|stack|none|opera|nextSibling|p=
ushStack|target|html|inArray|unit|xml|bind|GET|isReady|merge|pos|timeout|=
delete|one|selected|px|step|jsre|position|async|preventDefault|overflow|n=
ame|which|queue|removeChild|namespace|insertBefore|nth|removeData|fixed|p=
arseFloat|error|readyState|multiFilter|createElement|rl|re|trim|end|_|par=
am|first|get|results|parseInt|slice|childNodes|encodeURIComponent|append|=
events|elems|toLowerCase|json|readyList|setTimeout|grep|mouseenter|color|=
is|custom|getElementsByTagName|block|stopPropagation|addEventListener|cal=
lee|proxy|mouseleave|timers|defaultView|password|disabled|last|has|append=
Child|form|domManip|props|ajax|orig|set|easing|mozilla|load|prototype|cur=
Anim|self|charCode|timerId|object|offsetChild|Width|parentOffset|src|unbi=
nd|br|currentStyle|clean|float|visible|relatedTarget|previousSibling|hand=
lers|isXMLDoc|on|setup|nodeIndex|unique|shift|javascript|child|RegExp|_de=
fault|deep|scroll|lastModified|teardown|setRequestHeader|timeStamp|update=
|empty|tr|getAttribute|innerHTML|setInterval|checked|fromElement|Number|j=
Query|state|active|jsonp|accepts|application|dir|input|responseText|click=
|styleSheets|unload|not|lastToggle|outline|mouseout|getPropertyValue|mous=
eover|getComputedStyle|bindReady|String|padding|pageX|metaKey|keyCode|get=
WH|andSelf|clientX|Left|all|visibility|container|index|init|triggered|rem=
oveAttribute|classFilter|prevObject|submit|file|after|windowData|inner|cl=
ient|globalEval|sibling|jquery|absolute|clone|wrapAll|dequeue|version|tri=
ggerHandler|oldblock|ctrlKey|createTextNode|Top|handleError|getResponseHe=
ader|parsererror|speeds|checkbox|old|00|radio|swing|href|Modified|ifModif=
ied|lastChild|safari2|startTime|offsetTop|offsetLeft|username|location|aj=
axSettings|getElementById|isSimple|values|selectedIndex|runtimeStyle|rsLe=
ft|_load|loaded|DOMContentLoaded|clientTop|clientLeft|toElement|srcElemen=
t|val|pageY|POST|unshift|Bottom|clientY|Right|fix|exclusive|detachEvent|c=
loneNode|removeEventListener|swap|toString|join|attachEvent|eval|substr|h=
ead|parse|textarea|reset|image|zoom|odd|even|before|prepend|exclude|expr|=
quickClass|quickID|uuid|quickChild|continue|Height|textContent|appendTo|c=
ontents|open|margin|evalScript|borderTopWidth|borderLeftWidth|parent|http=
Data|setArray|CSS1Compat|compatMode|boxModel|cssFloat|linear|def|webkit|n=
odeValue|speed|_toggle|eq|100|replaceWith|304|concat|200|alpha|Last|httpN=
otModified|getAttributeNode|httpSuccess|clearInterval|abort|beforeSend|sp=
lice|styleFloat|throw|colgroup|XMLHttpRequest|ActiveXObject|scriptCharset=
|callback|fieldset|multiple|processData|getBoundingClientRect|contentType=
|link|ajaxSend|ajaxSuccess|ajaxError|col|ajaxComplete|ajaxStop|ajaxStart|=
serializeArray|notmodified|keypress|keydown|change|mouseup|mousedown|dblc=
lick|focus|blur|stylesheet|hasClass|rel|doScroll|black|hover|solid|cancel=
Bubble|returnValue|wheelDelta|view|round|shiftKey|resize|screenY|screenX|=
relatedNode|mousemove|prevValue|originalTarget|offsetHeight|keyup|newValu=
e|offsetWidth|eventPhase|detail|currentTarget|cancelable|bubbles|attrName=
|attrChange|altKey|originalEvent|charAt|0n|substring|animated|header|noCo=
nflict|line|enabled|innerText|contains|only|weight|font|gt|lt|uFFFF|u0128=
|size|417|Boolean|Date|toggleClass|removeClass|addClass|removeAttr|replac=
eAll|insertAfter|prependTo|wrap|contentWindow|contentDocument|iframe|chil=
dren|siblings|prevAll|wrapInner|nextAll|outer|prev|scrollTo|static|margin=
Top|next|inline|parents|able|cellSpacing|adobeair|cellspacing|522|maxLeng=
th|maxlength|readOnly|400|readonly|fast|600|class|slow|1px|htmlFor|revers=
e|10000|PI|cos|compatible|Function|setData|ie|ra|it|rv|getData|userAgent|=
navigator|fadeTo|fadeIn|slideToggle|slideUp|slideDown|ig|responseXML|cont=
ent|1223|NaN|fadeOut|300|protocol|send|setAttribute|option|dataFilter|css=
Text|changed|be|Accept|stop|With|Requested|Object|can|GMT|property|1970|J=
an|01|Thu|Since|If|Type|Content|XMLHTTP|th|Microsoft|td|onreadystatechang=
e|onload|cap|charset|colg|host|tfoot|specified|with|1_|thead|leg|plain|at=
tributes|opt|embed|urlencoded|www|area|hr|ajaxSetup|meta|post|getJSON|get=
Script|marginLeft|img|elements|pageYOffset|pageXOffset|abbr|serialize|pix=
elLeft'.split('|'),0,{}));// $Id: drupal.js,v 1.41.2.3 2008/06/25 =
09:06:57 goba Exp $=0A=
=0A=
var Drupal =3D Drupal || { 'settings': {}, 'behaviors': {}, 'themes': =
{}, 'locale': {} };=0A=
=0A=
/**=0A=
 * Set the variable that indicates if JavaScript behaviors should be =
applied=0A=
 */=0A=
Drupal.jsEnabled =3D document.getElementsByTagName && =
document.createElement && document.createTextNode && =
document.documentElement && document.getElementById;=0A=
=0A=
/**=0A=
 * Attach all registered behaviors to a page element.=0A=
 *=0A=
 * Behaviors are event-triggered actions that attach to page elements, =
enhancing=0A=
 * default non-Javascript UIs. Behaviors are registered in the =
Drupal.behaviors=0A=
 * object as follows:=0A=
 * @code=0A=
 *    Drupal.behaviors.behaviorName =3D function () {=0A=
 *      ...=0A=
 *    };=0A=
 * @endcode=0A=
 *=0A=
 * Drupal.attachBehaviors is added below to the jQuery ready event and so=0A=
 * runs on initial page load. Developers implementing AHAH/AJAX in their=0A=
 * solutions should also call this function after new page content has =
been=0A=
 * loaded, feeding in an element to be processed, in order to attach all=0A=
 * behaviors to the new content.=0A=
 *=0A=
 * Behaviors should use a class in the form behaviorName-processed to =
ensure=0A=
 * the behavior is attached only once to a given element. (Doing so =
enables=0A=
 * the reprocessing of given elements, which may be needed on occasion =
despite=0A=
 * the ability to limit behavior attachment to a particular element.)=0A=
 *=0A=
 * @param context=0A=
 *   An element to attach behaviors to. If none is given, the document =
element=0A=
 *   is used.=0A=
 */=0A=
Drupal.attachBehaviors =3D function(context) {=0A=
  context =3D context || document;=0A=
  if (Drupal.jsEnabled) {=0A=
    // Execute all of them.=0A=
    jQuery.each(Drupal.behaviors, function() {=0A=
      this(context);=0A=
    });=0A=
  }=0A=
};=0A=
=0A=
/**=0A=
 * Encode special characters in a plain-text string for display as HTML.=0A=
 */=0A=
Drupal.checkPlain =3D function(str) {=0A=
  str =3D String(str);=0A=
  var replace =3D { '&': '&amp;', '"': '&quot;', '<': '&lt;', '>': =
'&gt;' };=0A=
  for (var character in replace) {=0A=
    var regex =3D new RegExp(character, 'g');=0A=
    str =3D str.replace(regex, replace[character]);=0A=
  }=0A=
  return str;=0A=
};=0A=
=0A=
/**=0A=
 * Translate strings to the page language or a given language.=0A=
 *=0A=
 * See the documentation of the server-side t() function for further =
details.=0A=
 *=0A=
 * @param str=0A=
 *   A string containing the English string to translate.=0A=
 * @param args=0A=
 *   An object of replacements pairs to make after translation. =
Incidences=0A=
 *   of any key in this array are replaced with the corresponding value.=0A=
 *   Based on the first character of the key, the value is escaped =
and/or themed:=0A=
 *    - !variable: inserted as is=0A=
 *    - @variable: escape plain text to HTML (Drupal.checkPlain)=0A=
 *    - %variable: escape text and theme as a placeholder for =
user-submitted=0A=
 *      content (checkPlain + Drupal.theme('placeholder'))=0A=
 * @return=0A=
 *   The translated string.=0A=
 */=0A=
Drupal.t =3D function(str, args) {=0A=
  // Fetch the localized version of the string.=0A=
  if (Drupal.locale.strings && Drupal.locale.strings[str]) {=0A=
    str =3D Drupal.locale.strings[str];=0A=
  }=0A=
=0A=
  if (args) {=0A=
    // Transform arguments before inserting them=0A=
    for (var key in args) {=0A=
      switch (key.charAt(0)) {=0A=
        // Escaped only=0A=
        case '@':=0A=
          args[key] =3D Drupal.checkPlain(args[key]);=0A=
        break;=0A=
        // Pass-through=0A=
        case '!':=0A=
          break;=0A=
        // Escaped and placeholder=0A=
        case '%':=0A=
        default:=0A=
          args[key] =3D Drupal.theme('placeholder', args[key]);=0A=
          break;=0A=
      }=0A=
      str =3D str.replace(key, args[key]);=0A=
    }=0A=
  }=0A=
  return str;=0A=
};=0A=
=0A=
/**=0A=
 * Format a string containing a count of items.=0A=
 *=0A=
 * This function ensures that the string is pluralized correctly. Since =
Drupal.t() is=0A=
 * called by this function, make sure not to pass already-localized =
strings to it.=0A=
 *=0A=
 * See the documentation of the server-side format_plural() function for =
further details.=0A=
 *=0A=
 * @param count=0A=
 *   The item count to display.=0A=
 * @param singular=0A=
 *   The string for the singular case. Please make sure it is clear this =
is=0A=
 *   singular, to ease translation (e.g. use "1 new comment" instead of =
"1 new").=0A=
 *   Do not use @count in the singular string.=0A=
 * @param plural=0A=
 *   The string for the plural case. Please make sure it is clear this =
is plural,=0A=
 *   to ease translation. Use @count in place of the item count, as in =
"@count=0A=
 *   new comments".=0A=
 * @param args=0A=
 *   An object of replacements pairs to make after translation. =
Incidences=0A=
 *   of any key in this array are replaced with the corresponding value.=0A=
 *   Based on the first character of the key, the value is escaped =
and/or themed:=0A=
 *    - !variable: inserted as is=0A=
 *    - @variable: escape plain text to HTML (Drupal.checkPlain)=0A=
 *    - %variable: escape text and theme as a placeholder for =
user-submitted=0A=
 *      content (checkPlain + Drupal.theme('placeholder'))=0A=
 *   Note that you do not need to include @count in this array.=0A=
 *   This replacement is done automatically for the plural case.=0A=
 * @return=0A=
 *   A translated string.=0A=
 */=0A=
Drupal.formatPlural =3D function(count, singular, plural, args) {=0A=
  var args =3D args || {};=0A=
  args['@count'] =3D count;=0A=
  // Determine the index of the plural form.=0A=
  var index =3D Drupal.locale.pluralFormula ? =
Drupal.locale.pluralFormula(args['@count']) : ((args['@count'] =3D=3D 1) =
? 0 : 1);=0A=
=0A=
  if (index =3D=3D 0) {=0A=
    return Drupal.t(singular, args);=0A=
  }=0A=
  else if (index =3D=3D 1) {=0A=
    return Drupal.t(plural, args);=0A=
  }=0A=
  else {=0A=
    args['@count['+ index +']'] =3D args['@count'];=0A=
    delete args['@count'];=0A=
    return Drupal.t(plural.replace('@count', '@count['+ index +']'));=0A=
  }=0A=
};=0A=
=0A=
/**=0A=
 * Generate the themed representation of a Drupal object.=0A=
 *=0A=
 * All requests for themed output must go through this function. It =
examines=0A=
 * the request and routes it to the appropriate theme function. If the =
current=0A=
 * theme does not provide an override function, the generic theme =
function is=0A=
 * called.=0A=
 *=0A=
 * For example, to retrieve the HTML that is output by =
theme_placeholder(text),=0A=
 * call Drupal.theme('placeholder', text).=0A=
 *=0A=
 * @param func=0A=
 *   The name of the theme function to call.=0A=
 * @param ...=0A=
 *   Additional arguments to pass along to the theme function.=0A=
 * @return=0A=
 *   Any data the theme function returns. This could be a plain HTML =
string,=0A=
 *   but also a complex object.=0A=
 */=0A=
Drupal.theme =3D function(func) {=0A=
  for (var i =3D 1, args =3D []; i < arguments.length; i++) {=0A=
    args.push(arguments[i]);=0A=
  }=0A=
=0A=
  return (Drupal.theme[func] || =
Drupal.theme.prototype[func]).apply(this, args);=0A=
};=0A=
=0A=
/**=0A=
 * Parse a JSON response.=0A=
 *=0A=
 * The result is either the JSON object, or an object with 'status' 0 =
and 'data' an error message.=0A=
 */=0A=
Drupal.parseJson =3D function (data) {=0A=
  if ((data.substring(0, 1) !=3D '{') && (data.substring(0, 1) !=3D =
'[')) {=0A=
    return { status: 0, data: data.length ? data : Drupal.t('Unspecified =
error') };=0A=
  }=0A=
  return eval('(' + data + ');');=0A=
};=0A=
=0A=
/**=0A=
 * Freeze the current body height (as minimum height). Used to prevent=0A=
 * unnecessary upwards scrolling when doing DOM manipulations.=0A=
 */=0A=
Drupal.freezeHeight =3D function () {=0A=
  Drupal.unfreezeHeight();=0A=
  var div =3D document.createElement('div');=0A=
  $(div).css({=0A=
    position: 'absolute',=0A=
    top: '0px',=0A=
    left: '0px',=0A=
    width: '1px',=0A=
    height: $('body').css('height')=0A=
  }).attr('id', 'freeze-height');=0A=
  $('body').append(div);=0A=
};=0A=
=0A=
/**=0A=
 * Unfreeze the body height=0A=
 */=0A=
Drupal.unfreezeHeight =3D function () {=0A=
  $('#freeze-height').remove();=0A=
};=0A=
=0A=
/**=0A=
 * Wrapper to address the mod_rewrite url encoding bug=0A=
 * (equivalent of drupal_urlencode() in PHP).=0A=
 */=0A=
Drupal.encodeURIComponent =3D function (item, uri) {=0A=
  uri =3D uri || location.href;=0A=
  item =3D encodeURIComponent(item).replace(/%2F/g, '/');=0A=
  return (uri.indexOf('?q=3D') !=3D -1) ? item : item.replace(/%26/g, =
'%2526').replace(/%23/g, '%2523').replace(/\/\//g, '/%252F');=0A=
};=0A=
=0A=
/**=0A=
 * Get the text selection in a textarea.=0A=
 */=0A=
Drupal.getSelection =3D function (element) {=0A=
  if (typeof(element.selectionStart) !=3D 'number' && =
document.selection) {=0A=
    // The current selection=0A=
    var range1 =3D document.selection.createRange();=0A=
    var range2 =3D range1.duplicate();=0A=
    // Select all text.=0A=
    range2.moveToElementText(element);=0A=
    // Now move 'dummy' end point to end point of original range.=0A=
    range2.setEndPoint('EndToEnd', range1);=0A=
    // Now we can calculate start and end points.=0A=
    var start =3D range2.text.length - range1.text.length;=0A=
    var end =3D start + range1.text.length;=0A=
    return { 'start': start, 'end': end };=0A=
  }=0A=
  return { 'start': element.selectionStart, 'end': element.selectionEnd =
};=0A=
};=0A=
=0A=
/**=0A=
 * Build an error message from ahah response.=0A=
 */=0A=
Drupal.ahahError =3D function(xmlhttp, uri) {=0A=
  if (xmlhttp.status =3D=3D 200) {=0A=
    if (jQuery.trim($(xmlhttp.responseText).text())) {=0A=
      var message =3D Drupal.t("An error occurred. \n@uri\n@text", =
{'@uri': uri, '@text': xmlhttp.responseText });=0A=
    }=0A=
    else {=0A=
      var message =3D Drupal.t("An error occurred. \n@uri\n(no =
information available).", {'@uri': uri, '@text': xmlhttp.responseText });=0A=
    }=0A=
  }=0A=
  else {=0A=
    var message =3D Drupal.t("An HTTP error @status occurred. \n@uri", =
{'@uri': uri, '@status': xmlhttp.status });=0A=
  }=0A=
  return message;=0A=
}=0A=
=0A=
// Global Killswitch on the <html> element=0A=
if (Drupal.jsEnabled) {=0A=
  // Global Killswitch on the <html> element=0A=
  $(document.documentElement).addClass('js');=0A=
  // 'js enabled' cookie=0A=
  document.cookie =3D 'has_js=3D1; path=3D/';=0A=
  // Attach all behaviors.=0A=
  $(document).ready(function() {=0A=
    Drupal.attachBehaviors(this);=0A=
  });=0A=
}=0A=
=0A=
/**=0A=
 * The default themes.=0A=
 */=0A=
Drupal.theme.prototype =3D {=0A=
=0A=
  /**=0A=
   * Formats text for emphasized display in a placeholder inside a =
sentence.=0A=
   *=0A=
   * @param str=0A=
   *   The text to format (plain-text).=0A=
   * @return=0A=
   *   The formatted text (html).=0A=
   */=0A=
  placeholder: function(str) {=0A=
    return '<em>' + Drupal.checkPlain(str) + '</em>';=0A=
  }=0A=
};=0A=
;
------=_NextPart_000_0027_01CB0BD3.36379B50--
