From: <Zapisane przez program Windows Internet Explorer 8>
Subject: Roboty budowlane - 113905-2013 - TED Tenders Electronic Daily
Date: Wed, 10 Apr 2013 07:31:29 +0200
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01CE35BD.6A681460"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/udl?uri=TED:NOTICE:113905-2013:TEXT:PL:HTML&src=0

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>Roboty =
budowlane - 113905-2013 - TED Tenders Electronic Daily</TITLE>
<META content=3D"text/html; charset=3DUTF-8" http-equiv=3DContent-Type>
<META name=3Dkeywords=20
content=3D"Og=C5=82oszenia o przetargach, Og=C5=82oszenia o =
zam=C3=B3wieniach centralnych organ=C3=B3w rz=C4=85dowych i organ=C3=B3w =
w=C5=82adz lokalnych, Szukaj og=C5=82osze=C5=84, Elektroniczny system =
zam=C3=B3wie=C5=84, Zaproszenia do sk=C5=82adania ofert na roboty =
budowlane, us=C5=82ugi i dostawy, Og=C5=82oszenia o zam=C3=B3wieniach z =
dziedziny u=C5=BCyteczno=C5=9Bci publicznej, Handel elektroniczny, =
Zam=C3=B3wienia z sektora publicznego, Informacje o og=C5=82oszeniach o =
zam=C3=B3wieniach, Mo=C5=BCliwo=C5=9Bci uczestnictwa w przetargach i =
zam=C3=B3wieniach, Zaproszenia do sk=C5=82adania ofert, Informacje o =
zam=C3=B3wieniach, Zam=C3=B3wienia w Unii Europejskiej, Procedury =
zam=C3=B3wie=C5=84, Mo=C5=BCliwo=C5=9Bci biznesowe, Organy sektora =
publicznego, Proces przetargowy, Dz.U. S, Suplement do Dziennika =
Urz=C4=99dowego Unii Europejskiej, Internetowa aplikacja TED (Tenders =
Electronic Daily), TED, Og=C5=82oszenie o zam=C3=B3wieniu, =
Zam=C3=B3wienie, Elektroniczne pozyskiwanie zasob=C3=B3w, Doradztwo na =
temat rynk=C3=B3w, Publiczne zaproszenia do ubiegania si=C4=99 o =
zam=C3=B3wienie, Rynek wewn=C4=99trzny">
<META name=3Ddescription=20
content=3D"Tenders Electronic Daily (TED) - europejski dziennik =
zam=C3=B3wie=C5=84 publicznych. 113905-2013 - PL-Inowroc=C5=82aw: =
Us=C5=82ugi projektowania architektonicznego">
<META name=3DLanguage content=3Dpl><LINK rel=3D"shortcut icon"=20
href=3D"/static/images/favicon.ico"><LINK rel=3Dstylesheet =
type=3Dtext/css=20
href=3D"http://ted.europa.eu/static/css/ted.css?1.08.06"><LINK =
rel=3Dstylesheet=20
type=3Dtext/css =
href=3D"http://ted.europa.eu/static/css/calendar.css?1.08.06"><LINK=20
rel=3Dstylesheet type=3Dtext/css=20
href=3D"http://ted.europa.eu/static/css/notice.css?1.08.06"><LINK =
rel=3Dstylesheet=20
type=3Dtext/css =
href=3D"http://ted.europa.eu/static/css/ted-print.css?1.08.06"=20
media=3Dprint><!--[if lt IE 7]><script type=3D"text/javascript" =
src=3D"/static/js/rollover-menu-ie6.js"></script><![endif]-->
<SCRIPT type=3Dtext/javascript=20
src=3D"http://ted.europa.eu/TED/dynamic/ted-js.do?lang=3Dpl"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://ted.europa.eu/static/js/calendar.js?1.08.06"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://ted.europa.eu/static/js/ajax.js?1.08.06"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://ted.europa.eu/static/js/ted.js?1.08.06"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://ted.europa.eu/static/js/jquery-1.9.0.js"></SCRIPT>

<SCRIPT type=3Dtext/javascript=20
src=3D"http://ted.europa.eu/static/js/jquery.marquee.min.js?1.08.06"></SC=
RIPT>

<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.19403"></HEAD>
<BODY>
<FORM id=3DmainForm method=3Dpost action=3D?><!-- AJAX Content - Start =
-->
<SCRIPT type=3Dtext/javascript><!--
  startTime =3D new Date().getTime();
  serverTime =3D 1365571639035;
  clientOffset =3D startTime - serverTime;
	writeLoadingBox("Prosz=C4=99 czeka=C4=87 ...");
  //--></SCRIPT>

<DIV id=3DjsContainer class=3DjsContainer></DIV>
<DIV id=3DboxComponent></DIV><!-- AJAX Content - End --><INPUT =
id=3Daction value=3DRs=20
type=3Dhidden name=3Daction><INPUT class=3DfirstSubmit =
value=3D"Prze=C5=9Blij kwerend=C4=99" type=3Dsubmit name=3DactionEnter>
<DIV id=3DmainContainer><!-- START TOP MENU -->
<DIV id=3Dheader>
<DIV id=3Dtop-gradient></DIV>
<DIV id=3Deuropa-text>Ta strona jest cz=C4=99=C5=9Bci=C4=85 <SPAN =
id=3Deuropa-logo><A=20
onmouseover=3DrollOver(this) title=3D"Portal Unii Europejskiej"=20
onmouseout=3DrollOut(this) href=3D"http://www.europa.eu/"><IMG =
alt=3DEuropa=20
src=3D"http://ted.europa.eu/static/images/europa_logo.png"></A></SPAN></D=
IV><!-- TOP MENU -->
<DIV id=3Dtop-menu>
<UL id=3Ditem>
  <LI class=3Dtop><INS><A title=3D"Czym jest TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DaboutTed%27%2Ctrue%2Cfalse=
%2C%27_self%27%29%3B">O=20
  TED</A></INS> | </LI>
  <LI class=3Dtop><INS>
  <SCRIPT type=3Dtext/javascript>//<!--
		writeHelpLink('displayNotice', 'Pomoc ', '');
	//--></SCRIPT>
  <NOSCRIPT><A class=3Dblack=20
  =
href=3D"http://ted.europa.eu/TED/misc/helpPage.do?helpPageId=3DdisplayNot=
ice"=20
  target=3D_blank>Pomoc</A></NOSCRIPT></INS> | </LI>
  <LI class=3Dtop><INS><A title=3D"Mapa witryny"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DsiteMap%27%2Ctrue%2Cfalse%=
2C%27_self%27%29%3B">Mapa=20
  witryny</A></INS> | </LI>
  <LI class=3Dtop><INS><A title=3D"Wy=C5=9Blij wiadomo=C5=9B=C4=87 do =
zespo=C5=82u witryny TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dcontact%27%2Ctrue%2Cfalse%=
2C%27_self%27%29%3B">Kontakt</A></INS>=20
  | </LI>
  <LI class=3Dtop><INS><A title=3D"Nota prawna"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DlegalNotice%27%2Ctrue%2Cfa=
lse%2C%27_self%27%29%3B">Wa=C5=BCna=20
  informacja prawna</A></INS> </LI></UL></DIV><!-- END TOP MENU --><!-- =
START LOGO + language box -->
<H1><SPAN>TED - Internetowej aplikacji TED</SPAN> <INPUT=20
onblur=3DdisableOnsubmit(false) class=3Dlogo =
onfocus=3DdisableOnsubmit(true)=20
onmouseover=3DdisableOnsubmit(true) title=3D"Przejd=C5=BA do strony =
g=C5=82=C3=B3wnej TED"=20
onmouseout=3DdisableOnsubmit(false)=20
onclick=3D"null;$do('gp', 'pid=3Dhome', true, null, '');" value=3D"TED =
Strona g=C5=82=C3=B3wna"=20
alt=3D"TED - Internetowej aplikacji TED"=20
src=3D"http://ted.europa.eu/static/images/logo.png" type=3Dimage=20
name=3D.Rs.gp.22230623><INPUT value=3Dhome type=3Dhidden =
name=3DRs.gp.22230623.pid>=20
</H1>
<DIV id=3Dsubtitle>Suplement do Dziennika Urz=C4=99dowego Unii =
Europejskiej</DIV>
<DIV id=3Dlangbox>
<SCRIPT =
type=3Dtext/javascript>selectLangBox();$(function(){$('.marquee').marquee=
({gap: 600,speed: 60000,delayBeforeStart: 3000});});</SCRIPT>
<NOSCRIPT>
<DIV class=3DnoscriptLang><A lang=3Dbg =
title=3D"=D0=B1=D1=8A=D0=BB=D0=B3=D0=B0=D1=80=D1=81=D0=BA=D0=B8 =
=D0=B5=D0=B7=D0=B8=D0=BA"=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.1&amp;Rs.cl.1.lgI=
d=3Dbg">bg</A>=20
<A lang=3Dcs title=3D=C4=8De=C5=A1tina=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.2&amp;Rs.cl.2.lgI=
d=3Dcs">cs</A>=20
<A lang=3Dda title=3Ddansk=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.3&amp;Rs.cl.3.lgI=
d=3Dda">da</A>=20
<A lang=3Dde title=3DDeutsch=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.4&amp;Rs.cl.4.lgI=
d=3Dde">de</A>=20
<A lang=3Det title=3D"eesti keel"=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.5&amp;Rs.cl.5.lgI=
d=3Det">et</A>=20
<A lang=3Del title=3D=CE=B5=CE=BB=CE=BB=CE=B7=CE=BD=CE=B9=CE=BA=CE=AC=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.6&amp;Rs.cl.6.lgI=
d=3Del">el</A>=20
<A lang=3Den title=3DEnglish=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.7&amp;Rs.cl.7.lgI=
d=3Den">en</A>=20
<A lang=3Des title=3Despa=C3=B1ol=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.8&amp;Rs.cl.8.lgI=
d=3Des">es</A>=20
<A lang=3Dfr title=3Dfran=C3=A7ais=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.9&amp;Rs.cl.9.lgI=
d=3Dfr">fr</A>=20
<A lang=3Dga title=3DGaeilge=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.10&amp;Rs.cl.10.l=
gId=3Dga">ga</A>=20
<A lang=3Dit title=3Ditaliano=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.11&amp;Rs.cl.11.l=
gId=3Dit">it</A>=20
<A lang=3Dlv title=3D"latvie=C5=A1u valoda"=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.12&amp;Rs.cl.12.l=
gId=3Dlv">lv</A>=20
<A lang=3Dlt title=3D"lietuvi=C5=B3 kalba"=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.13&amp;Rs.cl.13.l=
gId=3Dlt">lt</A>=20
<A lang=3Dhu title=3Dmagyar=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.14&amp;Rs.cl.14.l=
gId=3Dhu">hu</A>=20
<A lang=3Dmt title=3DMalti=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.15&amp;Rs.cl.15.l=
gId=3Dmt">mt</A>=20
<A lang=3Dnl title=3DNederlands=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.16&amp;Rs.cl.16.l=
gId=3Dnl">nl</A>=20
<A lang=3Dpl title=3Dpolski=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.17&amp;Rs.cl.17.l=
gId=3Dpl">pl</A>=20
<A lang=3Dpt title=3Dportugu=C3=AAs=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.18&amp;Rs.cl.18.l=
gId=3Dpt">pt</A>=20
<A lang=3Dro title=3Drom=C3=A2n=C4=83=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.19&amp;Rs.cl.19.l=
gId=3Dro">ro</A>=20
<A lang=3Dsk title=3Dsloven=C4=8Dina=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.20&amp;Rs.cl.20.l=
gId=3Dsk">sk</A>=20
<A lang=3Dsl title=3Dsloven=C5=A1=C4=8Dina=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.21&amp;Rs.cl.21.l=
gId=3Dsl">sl</A>=20
<A lang=3Dfi title=3Dsuomi=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.22&amp;Rs.cl.22.l=
gId=3Dfi">fi</A>=20
<A lang=3Dsv title=3Dsvenska=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.cl.23&amp;Rs.cl.23.l=
gId=3Dsv">sv</A>=20
</DIV></NOSCRIPT></DIV><!-- END LOGO + language box --><!-- START LOGO + =
language box -->
<DIV id=3Dbreadcrumbs><INS><A title=3D"Strona g=C5=82=C3=B3wna witryny =
TED"=20
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dhome%27%2Ctrue%2Cfalse%2C%=
27_self%27%29%3B">TED=20
Strona g=C5=82=C3=B3wna</A></INS> &gt; Wy=C5=9Bwietlanie og=C5=82oszenia =
TED w bie=C5=BC=C4=85cym j=C4=99zyku</DIV>
<DIV id=3Dojs-issue><B><SPAN=20
title=3D09-04-2013>2013/069</SPAN></B>&nbsp;&nbsp;|&nbsp;&nbsp;Nast=C4=99=
pna=20
aktualizacja: <SPAN title=3D10-04-2013>2013/070</SPAN>&nbsp;&nbsp;<SPAN=20
id=3Dcalendar> <INPUT onblur=3DdisableOnsubmit(false) class=3DimgButton=20
onfocus=3DdisableOnsubmit(true) onmouseover=3DdisableOnsubmit(true)=20
title=3D"Kalendarz wyda=C5=84 poszczeg=C3=B3lnych numer=C3=B3w" =
onmouseout=3DdisableOnsubmit(false)=20
onclick=3D"null;$do('gp', 'pid=3DreleaseCalendar', true, null, '');"=20
value=3D"Kalendarz wyda=C5=84 Dz.U. S" alt=3D"Kalendarz wyda=C5=84 =
poszczeg=C3=B3lnych numer=C3=B3w"=20
src=3D"http://ted.europa.eu/static/images/calendar.png" type=3Dimage=20
name=3D.Rs.gp.22230624><INPUT value=3DreleaseCalendar type=3Dhidden=20
name=3DRs.gp.22230624.pid> </SPAN></DIV><!-- START LOGO + language box =
--></DIV>
<DIV id=3DmenuTabs>
<UL>
  <LI class=3Dted><INS><A title=3D"TED - Internetowa aplikacja TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dhome%27%2Ctrue%2Cfalse%2C%=
27_self%27%29%3B">TED</A></INS>=20
  </LI>
  <LI><A title=3D"Przejd=C5=BA do witryny SIMAP"=20
  href=3D"http://simap.europa.eu/index_pl.htm" =
target=3D_blank>SIMAP</A></LI>
  <LI><A title=3D"Przejd=C5=BA do witryny eNOTICES"=20
  =
href=3D"http://simap.europa.eu/enotices/changeLanguage.do?language=3Dpl" =

  target=3D_blank>eNOTICES</A></LI></UL>
<DIV class=3DquickSearch>
<FIELDSET><LEGEND>Szybkie wyszukiwanie</LEGEND><LABEL class=3Dhidden=20
for=3DquickSearchCriteria>Szybkie wyszukiwanie: </LABEL><INPUT=20
onblur=3DformElementBlur(this); id=3DquickSearchCriteria =
class=3D"qsearch blueBg"=20
onfocus=3DformElementBlur(this); type=3Dtext name=3DquickSearchCriteria> =
<INPUT=20
onblur=3DdisableOnsubmit(false) class=3Dbutton =
onfocus=3DdisableOnsubmit(true)=20
onmouseover=3DdisableOnsubmit(true) title=3D"Pole szybkiego =
wyszukiwania"=20
onmouseout=3DdisableOnsubmit(false) onclick=3D"null;$do('qs', '', false, =
null, '');"=20
value=3D"Szybkie wyszukiwanie" alt=3D"Szybkie wyszukiwanie"=20
src=3D"http://ted.europa.eu/static/images/qsearch-go-button.gif" =
type=3Dimage=20
name=3D.Rs.qs.22230625></FIELDSET><SPAN><INS><A=20
title=3D"Dost=C4=99p do pe=C5=82nego formularza wyszukiwania"=20
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dsearch%27%2Ctrue%2Cfalse%2=
C%27_self%27%29%3B">Wyszukiwanie</A></INS>=20
&nbsp;|&nbsp;<INS><A title=3D"Dost=C4=99p do formularza wyszukiwania =
zaawansowanego"=20
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DexpertSearch%27%2Ctrue%2Cf=
alse%2C%27_self%27%29%3B">Wyszukiwanie=20
zaawansowane</A></INS> </SPAN></DIV></DIV>
<DIV id=3Dmenu>
<DIV id=3DbrowseBy>
<UL>
  <LI><INS><A title=3D"Przegl=C4=85danie bazy danych TED wed=C5=82ug =
mo=C5=BCliwo=C5=9Bci biznesowych"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DbrowseByBO%27%2Ctrue%2Cfal=
se%2C%27_self%27%29%3B">Wed=C5=82ug=20
  mo=C5=BCliwo=C5=9Bci biznesowych</A></INS> </LI>
  <LI><INS><A title=3D"Przegl=C4=85danie bazy danych TED wed=C5=82ug =
bran=C5=BC (CPV)"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DbrowseByBS%27%2Ctrue%2Cfal=
se%2C%27_self%27%29%3B">Wed=C5=82ug=20
  bran=C5=BC (CPV)</A></INS> </LI>
  <LI><INS><A title=3D"Przegl=C4=85danie bazy danych TED wed=C5=82ug =
miejsca dostawy (NUTS)"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DbrowseByPD%27%2Ctrue%2Cfal=
se%2C%27_self%27%29%3B">Wed=C5=82ug=20
  miejsca dostawy (NUTS)</A></INS> </LI>
  <LI><INS><A title=3D"Przegl=C4=85danie bazy danych TED wed=C5=82ug =
nag=C5=82=C3=B3wka"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DbrowseByHeading%27%2Ctrue%=
2Cfalse%2C%27_self%27%29%3B">Wed=C5=82ug=20
  nag=C5=82=C3=B3wka</A></INS> </LI></UL></DIV>
<DIV id=3DloginDiv><INPUT onblur=3DdisableOnsubmit(false) class=3Dbutton =
onfocus=3DdisableOnsubmit(true) onmouseover=3DdisableOnsubmit(true) =
title=3DLogowanie onmouseout=3DdisableOnsubmit(false) =
onclick=3D"null;$do('gp', 'pid=3Dsecured', false, null, null);" =
value=3D"Zaloguj si=C4=99" type=3Dsubmit name=3D.Rs.gp.22230626><INPUT=20
value=3Dsecured type=3Dhidden name=3DRs.gp.22230626.pid> </DIV>
<DIV id=3DmyTed><SPAN class=3Dtitle>M=C3=B3j TED</SPAN>
<UL>
  <LI class=3DuserName>Anonimowy</LI>
  <LI><INS><A title=3D"Edytuj ustawienia"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dpreferences%27%2Ctrue%2Cfa=
lse%2C%27_self%27%29%3B">Ustawienia</A></INS>=20
  </LI>
  <LI><INS><A title=3D"Dost=C4=99p do zachowanych profili wyszukiwania"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DsavedSearchProfiles%27%2Ct=
rue%2Cfalse%2C%27_self%27%29%3B">Zachowany=20
  profil wyszukiwania</A></INS> </LI></UL></DIV>
<DIV id=3Dnews><SPAN class=3Dtitle>Wiadomo=C5=9Bci</SPAN>
<UL>
  <LI><INS><A title=3D"Dost=C4=99p do strony wiadomo=C5=9Bci TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dnews%27%2Ctrue%2Cfalse%2C%=
27_self%27%29%3B">Co=20
  nowego w witrynie?</A></INS> </LI>
  <LI><INS><A title=3D"Dost=C4=99p do nowo=C5=9Bci w dziedzinie =
zam=C3=B3wie=C5=84 publicznych"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DprocurementNews%27%2Ctrue%=
2Cfalse%2C%27_self%27%29%3B">Nowo=C5=9Bci=20
  w dziedzinie zam=C3=B3wie=C5=84 publicznych</A></INS> </LI>
  <LI class=3Drss><INS><A title=3D"Skorzystaj z kana=C5=82=C3=B3w RSS =
dost=C4=99pnych w TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DrssFeed%27%2Ctrue%2Cfalse%=
2C%27_self%27%29%3B">Kana=C5=82y=20
  RSS</A></INS> </LI>
  <LI><INS>
  <SCRIPT type=3Dtext/javascript>//<!--
		writeHelpLink('services.aboutRssFeeds', 'Czym jest RSS? ', '');
	//--></SCRIPT>
  <NOSCRIPT><A class=3Dblack=20
  =
href=3D"http://ted.europa.eu/TED/misc/helpPage.do?helpPageId=3Dservices.a=
boutRssFeeds"=20
  target=3D_blank>Czym jest RSS?</A></NOSCRIPT></INS></LI></UL></DIV>
<DIV class=3D"extLinks eurlex"><A=20
title=3D"=C5=81=C4=85cze do Dziennika Urz=C4=99dowego Unii Europejskiej =
online"=20
href=3D"http://eur-lex.europa.eu/pl/index.htm" target=3D_blank>Dziennik =
Urz=C4=99dowy=20
Unii Europejskiej online</A></DIV>
<DIV class=3D"extLinks bookshop"><A=20
title=3D"=C5=81=C4=85cze do wszystkich publikacji UE, kt=C3=B3re =
mog=C4=85 by=C4=87 przedmiotem wyszukiwania"=20
href=3D"https://bookshop.europa.eu/" target=3D_blank>Wszystkie =
publikacje UE, kt=C3=B3re=20
mog=C4=85 by=C4=87 przedmiotem wyszukiwania</A></DIV></DIV><!-- LEFT =
MENU - end --><!-- Content - start -->
<DIV id=3DmainContent>
<DIV class=3D"marquee red"></DIV><NOSCRIPT>
<DIV class=3Dwarn>Wykryto, =C5=BCe w przegl=C4=85darce =
wy=C5=82=C4=85czona jest obs=C5=82uga j=C4=99zyka=20
JavaScript. Aby m=C3=B3c kontynuowa=C4=87 korzystanie z tej witryny =
internetowej w trybie=20
uproszczonym, <A title=3D"Wy=C5=82=C4=85czona obs=C5=82uga j=C4=99zyka =
JavaScript"=20
href=3D"http://ted.europa.eu/udl?action=3DRs&amp;.Rs.swJs.82232831">klikn=
=C4=85=C4=87=20
tutaj.</A></DIV></NOSCRIPT>
<H2>Roboty budowlane - 113905-2013</H2>
<UL id=3DactionBar>
  <LI class=3Dback_list><SPAN><INS><A title=3D"Powr=C3=B3t do listy =
wynik=C3=B3w wyszukiwania"=20
  =
href=3D"javascript:%24do%28%27backToResultList%27%2C%27%27%2Ctrue%2Cfalse=
%2C%27_self%27%29%3B">Powr=C3=B3t=20
  do listy wynik=C3=B3w</A></INS></SPAN></LI>
  <LI class=3Drefine_search><SPAN><INS><A=20
  title=3D"Zaw=C4=99=C5=BA zakres wyszukiwania przez zmodyfikowanie =
kryteri=C3=B3w wyszukiwania"=20
  =
href=3D"javascript:%24do%28%27refineSearch%27%2C%27%27%2Ctrue%2Cfalse%2C%=
27_self%27%29%3B">Dodawanie=20
  kryteri=C3=B3w</A></INS></SPAN></LI>
  <LI class=3Dhelp><INS>
  <SCRIPT type=3Dtext/javascript>//<!--
		writeHelpLink('displayNotice', 'Pomoc ', '');
	//--></SCRIPT>
  <NOSCRIPT><A class=3Dblack=20
  =
href=3D"http://ted.europa.eu/TED/misc/helpPage.do?helpPageId=3DdisplayNot=
ice"=20
  target=3D_blank>Pomoc</A></NOSCRIPT></INS></LI></UL>
<DIV id=3DresultNav><A=20
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:115114-2013:TEXT:PL:HTM=
L&amp;src=3D0&amp;act=3Dnav"><IMG=20
alt=3D"Pierwszy wynik" =
src=3D"http://ted.europa.eu/static/images/backall.gif">=20
</A><A =
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113911-2013:TEXT:PL:HTM=
L&amp;src=3D0&amp;act=3Dnav"><IMG=20
alt=3D"<lbl_action_prevNotice_desc> (pl)"=20
src=3D"http://ted.europa.eu/static/images/backone.gif"> </A>54/82 <A=20
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113902-2013:TEXT:PL:HTM=
L&amp;src=3D0&amp;act=3Dnav"><IMG=20
alt=3D"Wy=C5=9Bwietl nast=C4=99pne og=C5=82oszenie"=20
src=3D"http://ted.europa.eu/static/images/nextone.gif"> </A><A=20
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113622-2013:TEXT:PL:HTM=
L&amp;src=3D0&amp;act=3Dnav"><IMG=20
alt=3D"Ostatni wynik" =
src=3D"http://ted.europa.eu/static/images/nextall.gif">=20
</A></DIV><!-- Direct access to document (No action just Help =
icon)--><BR>
<DIV id=3Dtabs>
<UL>
  <LI class=3Dactivated>
  <DIV><A =
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0&amp;tabId=3D1">J=C4=99zyk=20
  orygina=C5=82u</A> </DIV></LI>
  <LI>
  <DIV><A =
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:DATA:PL:HTM=
L&amp;src=3D0&amp;tabId=3D3">Dane</A>=20
  </DIV></LI>
  <LI>
  <DIV><A =
onclick=3D"if(checkNotMiddleOrKeyClick(event)){showDiv('loading');}"=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0&amp;tabId=3D4">Dokumenty=20
  powi=C4=85zane</A> </DIV></LI></UL></DIV>
<DIV class=3DdocumentDiv>
<P class=3DdocAction><INS><A class=3DdocDisplayLink=20
title=3D"Wy=C5=9Bwietl widok skr=C3=B3cony og=C5=82oszenia"=20
href=3D"javascript:%24do%28%27displayCompactView%27%2C%27%27%2Ctrue%2Cfal=
se%2C%27_self%27%29%3B">Wy=C5=9Bwietl=20
widok skr=C3=B3cony</A></INS> <SPAN><INPUT class=3DimgButton =
title=3D"Drukuj dokument"=20
onclick=3D"window.print();return false;"=20
src=3D"http://ted.europa.eu/static/images/printer.gif" type=3Dimage>
<SCRIPT type=3Dtext/javascript>
    					writeBookmarkDocument("/static/images/bookmark.gif", "Dodaj =
dokument do zak=C5=82adek", "PL-Inowroc\u0142aw: Us\u0142ugi =
projektowania architektonicznego", =
"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTML");
    					// function is not available when javascript is disable
    				</SCRIPT>
 <INPUT onblur=3DdisableOnsubmit(false) class=3DimgButton=20
onfocus=3DdisableOnsubmit(true) onmouseover=3DdisableOnsubmit(true)=20
title=3D"Wy=C5=9Bwietl w formacie PDF" =
onmouseout=3DdisableOnsubmit(false)=20
onclick=3D"null;$do('displayPdf', 'displayPdfDN=3D2013113905', true, =
true, '');"=20
value=3D"Format PDF" alt=3D"Wy=C5=9Bwietl w formacie PDF"=20
src=3D"http://ted.europa.eu/static/images/pdficon.gif" type=3Dimage=20
name=3D.Rs.displayPdf.3480174><INPUT value=3D2013113905 type=3Dhidden=20
name=3DRs.displayPdf.3480174.displayPdfDN> </SPAN></P></DIV>
<DIV class=3D"documentDiv noBg">
<DIV id=3DdocContent>
<DIV id=3DfullDocument>
<DIV class=3Dtab>
<DIV id=3DdocHeader><SPAN class=3Ddate>09/04/2013</SPAN> &nbsp;&nbsp; =
<SPAN=20
class=3Doj>S69</SPAN> &nbsp;&nbsp; <SPAN class=3Dheading>Pa=C5=84stwa =
cz=C5=82onkowskie -=20
Roboty budowlane - Udzielenie zam=C3=B3wienia - Procedura otwarta&nbsp; =
</SPAN></DIV>
<UL id=3DdocToc>
  <LI><A=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0#id11838115-I.">I.</A></LI>
  <LI><A=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0#id11838116-II.">II.</A></LI>
  <LI><A=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0#id11838117-IV.">IV.</A></LI>
  <LI><A=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0#id11838118-V.">V.</A></LI>
  <LI><A=20
  =
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:113905-2013:TEXT:PL:HTM=
L&amp;src=3D0#id11838119-VI.">VI.</A></LI></UL>
<DIV style=3D"TEXT-ALIGN: center; FONT-WEIGHT: bold" class=3Dstdoc>
<P>PL-Inowroc=C5=82aw: Us=C5=82ugi projektowania architektonicznego</P>
<P>2013/S 069-113905</P></DIV>
<DIV class=3DDocumentBody>
<DIV style=3D"TEXT-ALIGN: center; FONT-WEIGHT: bold" class=3Dstdoc>
<P>Og=C5=82oszenie o udzieleniu zam=C3=B3wienia</P></DIV>
<DIV style=3D"TEXT-ALIGN: center; FONT-WEIGHT: bold" class=3Dstdoc>
<P>Roboty budowlane</P></DIV>Dyrektywa 2004/18/WE
<DIV class=3Dgrseq>
<P class=3Dtigrseq><SPAN id=3Did11838115-I.>Sekcja I: Instytucja =
zamawiaj=C4=85ca</P>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->I.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa, adresy i =
punkty=20
kontaktowe</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>Przedsi=C4=99biorstwo Gospodarki Komunalnej i =
Mieszkaniowej Sp. z=20
o.o.<BR>ul. ks. Piotra Wawrzyniaka 33<BR>Osoba do kontakt=C3=B3w: =
Krystyna=20
Glonek<BR>88-100 Inowroc=C5=82aw<BR>POLSKA<BR>Tel.: +48 =
523564304<BR>E-mail: <A=20
class=3Dojsmailto=20
href=3D"mailto:pgkim@poczta.internetdsl.pl?subject=3DTED">mailto:pgkim@po=
czta.internetdsl.pl?subject=3DTED</A><BR>Faks:=20
+48 523564304</P>
<P class=3Dft><B>Adresy internetowe:</B> </P>
<P class=3Dtxurl>Og=C3=B3lny adres instytucji zamawiaj=C4=85cej: <A =
class=3Dojshref=20
href=3D"http://www.pgkimino.pl/"=20
target=3D_blank>http://www.pgkimino.pl/</A></P></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->I.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Rodzaj =
instytucji=20
zamawiaj=C4=85cej</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Inna: Sp=C3=B3lka=20
z o. o. - w=C5=82asno=C5=9B=C4=87 =
samorz=C4=85dowa<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->I.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" =
class=3Dtimark>G=C5=82=C3=B3wny przedmiot lub=20
przedmioty dzia=C5=82alno=C5=9Bci</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Inny:=20
zarz=C4=85dzanie nieruchomo=C5=9Bciami mieszkalnymi, zarzadzanie =
nieruchomo=C5=9Bciami na=20
zasadzie bezpo=C5=9Bredniej p=C5=82atno=C5=9Bci lub =
kontraktu<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->I.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Udzielenie =
zam=C3=B3wienia w=20
imieniu innych instytucji zamawiaj=C4=85cych</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Instytucja=20
zamawiaj=C4=85ca dokonuje zakupu w imieniu innych instytucji =
zamawiaj=C4=85cych:=20
nie<BR></SPAN></DIV><!--//txtmark end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq>
<P class=3Dtigrseq><SPAN id=3Did11838116-II.>Sekcja II: Przedmiot =
zam=C3=B3wienia</P>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" =
class=3Dtimark>Opis</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa nadana=20
zam=C3=B3wieniu</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Kompleksowe=20
zagospodarowanie odpad=C3=B3w komunalnych w Regionalnej Instalacji =
Przetwarzania=20
Odpad=C3=B3w Komunalnych w Inowroc=C5=82awiu przy ul. Bagiennej =
77.<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Rodzaj =
zam=C3=B3wienia oraz=20
lokalizacja rob=C3=B3t budowlanych, miejsce realizacji dostawy lub =
=C5=9Bwiadczenia=20
us=C5=82ug</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Roboty=20
budowlane<BR></SPAN><SPAN style=3D"COLOR: black">G=C5=82=C3=B3wne =
miejsce lub lokalizacja=20
rob=C3=B3t budowlanych, miejsce realizacji dostawy lub =C5=9Bwiadczenia =
us=C5=82ug: Inowroc=C5=82aw,=20
ul. Bagienna 77.<BR></SPAN>
<P class=3Dtxnuts>Kod NUTS <SPAN class=3DnutsCode=20
title=3DKujawsko-Pomorskie>PL61</SPAN></P></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat umowy=20
ramowej lub dynamicznego systemu zakup=C3=B3w (DSZ)</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Kr=C3=B3tki =
opis zam=C3=B3wienia lub=20
zakupu</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">1.=20
Przedmiotem zam=C3=B3wienia jest rozbudowa Regionalnej Instalacji do =
Przetwarzania=20
Odpad=C3=B3w Komunalnych w Inowroc=C5=82awiu w celu kompleksowego =
zagospodarowania odpad=C3=B3w=20
komunalnych poprzez budow=C4=99 i wyposa=C5=BCenie sortowni =
odpad=C3=B3w, instalacji do odzysku=20
odpad=C3=B3w oraz maszyn i urz=C4=85dze=C5=84 dla Zak=C5=82adu =
zlokalizowanego przy ulicy Bagiennej=20
77.<BR></SPAN><SPAN style=3D"COLOR: black">W zakres zam=C3=B3wienia=20
wchodzi:<BR></SPAN><SPAN style=3D"COLOR: black">a) zaprojektowanie i =
wybudowanie=20
hali nr 6 oraz rozbudowanie hali nr 5 wraz z drogami dojazdowymi i=20
placami<BR></SPAN><SPAN style=3D"COLOR: black">b) zaprojektowanie i =
wybudowanie=20
budynku socjalno-biurowego, wraz z drogami dojazdowymi, placami,=20
parkingiem,<BR></SPAN><SPAN style=3D"COLOR: black">c) zaprojektowanie i=20
wybudowanie punktu selektywnego zbierania odpad=C3=B3w komunalnych z =
drogami=20
dojazdowymi i placami,<BR></SPAN><SPAN style=3D"COLOR: black">d) =
zaprojektowanie i=20
wybudowanie trafostacji i przy=C5=82=C4=85cza =
elektroenergetycznego,<BR></SPAN><SPAN=20
style=3D"COLOR: black">e) zaprojektowanie i wybudowanie instalacji do =
biosuszenia=20
odpad=C3=B3w z armatur=C4=85 i przy=C5=82=C4=85czami,<BR></SPAN><SPAN =
style=3D"COLOR: black">f)=20
zaprojektowanie i wybudowanie przy=C5=82=C4=85cza biogazu, agregatu =
pr=C4=85dotw=C3=B3rczego i=20
przy=C5=82=C4=85cza elektroenergetycznego do trafostacji (pr=C4=85d i =
ciep=C5=82o na potrzeby=20
w=C5=82asne),<BR></SPAN><SPAN style=3D"COLOR: black">g) zaprojektowanie =
i wybudowanie=20
technologii do odzysku odpad=C3=B3w i produkcji paliwa=20
alternatywnego,<BR></SPAN><SPAN style=3D"COLOR: black">h) dostawa maszyn =
urz=C4=85dze=C5=84=20
takich jak: rozdrabniarka (2 szt), kontenery 40 m=C2=B3 (3 szt), =
r=C4=99baka do ga=C5=82=C4=99zi,=20
=C5=82adowarki przegubowej.<BR></SPAN><SPAN style=3D"COLOR: =
black">Zam=C3=B3wienie=20
podzielono na dziewi=C4=99=C4=87 cz=C4=99=C5=9Bci z =
mo=C5=BCliwo=C5=9Bci=C4=85 sk=C5=82adania ofert cz=C4=99=C5=9Bciowych, w =

tym:<BR></SPAN><SPAN style=3D"COLOR: black">Cz=C4=99=C5=9B=C4=87 I =
=E2=80=93 Zaprojektowanie i=20
wybudowanie hali nr 6, rozbudowanie hali nr 5, budynku socjalno =
biurowego i=20
punktu selektywnego zbierania odpad=C3=B3w komunalnych<BR></SPAN><SPAN=20
style=3D"COLOR: black">Zam=C3=B3wienie obejmuje mi=C4=99dzy =
innymi:<BR></SPAN><SPAN=20
style=3D"COLOR: black">a) zaprojektowanie i wybudowanie hali nr 6 oraz=20
rozbudowanie hali nr 5 wraz z drogami dojazdowymi i =
placami<BR></SPAN><SPAN=20
style=3D"COLOR: black">b) zaprojektowanie i wybudowanie budynku=20
socjalno-biurowego, wraz z drogami dojazdowymi, placami,=20
parkingiem,<BR></SPAN><SPAN style=3D"COLOR: black">c) zaprojektowanie i=20
wybudowanie punktu selektywnego zbierania odpad=C3=B3w komunalnych z =
drogami=20
dojazdowymi i placami, wraz z uzyskaniem prawomocnych decyzji =
administracyjnych,=20
zgodnie ze szczeg=C3=B3=C5=82owym opisem umieszczonym w Programie =
Funkcjonalno -U=C5=BCytkowym=20
b=C4=99d=C4=85cym za=C5=82=C4=85cznikiem nr 7 do specyfikacji istotnych =
warunk=C3=B3w=20
zam=C3=B3wienia.<BR></SPAN><SPAN style=3D"COLOR: black">Je=C5=BCeli =
b=C4=99dzie to konieczne=20
Wykonawca zobowi=C4=85zany b=C4=99dzie udost=C4=99pnia=C4=87 plac budowy =
wykonawcom wy=C5=82onionym na=20
Cz=C4=99=C5=9B=C4=87 II, III, IV i V po skoordynowaniu z robotami =
budowlanymi obj=C4=99tymi=20
przedmiotowym zam=C3=B3wieniem.<BR></SPAN><SPAN style=3D"COLOR: =
black">Cz=C4=99=C5=9B=C4=87 II =E2=80=93=20
Zaprojektowanie i wybudowanie trafostacji i przy=C5=82=C4=85cza=20
elektryczno-energetycznego<BR></SPAN><SPAN style=3D"COLOR: =
black">Zam=C3=B3wienie=20
obejmuje mi=C4=99dzy innymi:<BR></SPAN><SPAN style=3D"COLOR: black">a) =
zaprojektowanie=20
i wybudowanie trafostacji,<BR></SPAN><SPAN style=3D"COLOR: black">b) =
wykonanie=20
przy=C5=82=C4=85czy elektroenergetycznych wraz z uzyskaniem prawomocnych =
decyzji=20
administracyjnych (pr=C4=85d i ciep=C5=82o na potrzeby w=C5=82asne), =
zgodnie ze szczeg=C3=B3=C5=82owym=20
opisem umieszczonym w Programie Funkcjonalno -U=C5=BCytkowym =
b=C4=99d=C4=85cym za=C5=82=C4=85cznikiem nr=20
7 do specyfikacji istotnych warunk=C3=B3w =
zam=C3=B3wienia.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Cz=C4=99=C5=9B=C4=87 III =E2=80=93 =
Zaprojektowanie i wybudowanie przy=C5=82=C4=85cza=20
biogazu, agregatu pr=C4=85dotw=C3=B3rczego i przy=C5=82=C4=85cza =
elektroenergetycznego do=20
trafostacji<BR></SPAN><SPAN style=3D"COLOR: black">Zam=C3=B3wienie =
obejmuje mi=C4=99dzy=20
innymi:<BR></SPAN><SPAN style=3D"COLOR: black">a) zaprojektowanie i =
wybudowanie=20
przy=C5=82=C4=85cza biogazu,<BR></SPAN><SPAN style=3D"COLOR: black">b) =
dostarczenie i monta=C5=BC=20
agregatu pr=C4=85dotw=C3=B3rczego,<BR></SPAN><SPAN style=3D"COLOR: =
black">c) wykonanie=20
przy=C5=82=C4=85czy elektroenergetycznych do trafostacji (pr=C4=85d i =
ciep=C5=82o na potrzeby=20
w=C5=82asne), wraz z uzyskaniem prawomocnych decyzji administracyjnych, =
zgodnie ze=20
szczeg=C3=B3=C5=82owym opisem umieszczonym w Programie Funkcjonalno =
-U=C5=BCytkowym b=C4=99d=C4=85cym=20
za=C5=82=C4=85cznikiem nr 7 do specyfikacji istotnych warunk=C3=B3w =
zam=C3=B3wienia.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Cz=C4=99=C5=9B=C4=87 IV- Zaprojektowanie i =
wybudowanie instalacji do=20
biosuszenia odpad=C3=B3w z armatur=C4=85 i =
przy=C5=82=C4=85czami<BR></SPAN><SPAN=20
style=3D"COLOR: black">Zam=C3=B3wienie obejmuje mi=C4=99dzy =
innymi:<BR></SPAN><SPAN=20
style=3D"COLOR: black">a) zaprojektowanie i wybudowanie instalacji do =
biosuszenia=20
odpad=C3=B3w,<BR></SPAN><SPAN style=3D"COLOR: black">b) dostaw=C4=99 i =
monta=C5=BC ca=C5=82ej armatury=20
wraz z przy=C5=82=C4=85czami (w tym elektryczne), uzyskanie prawomocnych =
decyzji=20
administracyjnych, zgodnie ze szczeg=C3=B3=C5=82owym opisem umieszczonym =
w Programie=20
Funkcjonalno =E2=80=93 U=C5=BCytkowym.<BR></SPAN><SPAN style=3D"COLOR: =
black">Cz=C4=99=C5=9B=C4=87 V =E2=80=93=20
Zaprojektowanie i wybudowanie technologii do odzysku odpad=C3=B3w i =
produkcji paliwa=20
alternatywnego<BR></SPAN><SPAN style=3D"COLOR: black">Zam=C3=B3wienie =
obejmuje mi=C4=99dzy=20
innymi:<BR></SPAN><SPAN style=3D"COLOR: black">a) =
przeno=C5=9Bniki,<BR></SPAN><SPAN=20
style=3D"COLOR: black">b) rozrywark=C4=99 work=C3=B3w,<BR></SPAN><SPAN=20
style=3D"COLOR: black">c) stanowiska sortownicze,<BR></SPAN><SPAN=20
style=3D"COLOR: black">d) separator,<BR></SPAN><SPAN style=3D"COLOR: =
black">e)=20
suszarni=C4=99,<BR></SPAN><SPAN style=3D"COLOR: black">f) generator=20
ciep=C5=82a,<BR></SPAN><SPAN style=3D"COLOR: black">g) =
rozdrabniacze,<BR></SPAN><SPAN=20
style=3D"COLOR: black">h) sito,<BR></SPAN><SPAN style=3D"COLOR: =
black">i) uk=C5=82ady=20
za=C5=82adunku,<BR></SPAN><SPAN style=3D"COLOR: black">j) sterowanie i=20
integracja<BR></SPAN><SPAN style=3D"COLOR: black">je=C5=9Bli to wymagane =
- uzyskanie=20
prawomocnych decyzji administracyjnych, zgodnie ze =
szczeg=C3=B3=C5=82owym opisem=20
umieszczonym w Programie Funkcjonalno =E2=80=93 =
U=C5=BCytkowym.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Prace wymienione w cz=C4=99=C5=9Bciach I, II, =
III, IV i V b=C4=99d=C4=85=20
prowadzone na funkcjonuj=C4=85cym Zak=C5=82adzie w =C5=9Bcis=C5=82ym =
uzgodnieniu z zamawiaj=C4=85cym, co=20
wykonawca zobowi=C4=85zany b=C4=99dzie uwzgl=C4=99dni=C4=87 w =
harmonogramie rzeczowo-finansowym.=20
Wy=C5=82onieni wykonawcy na cz=C4=99=C5=9Bci I, II, III, IV i V =
musz=C4=85 =C5=9Bci=C5=9Ble wsp=C3=B3=C5=82pracowa=C4=87 ze=20
sob=C4=85 na ka=C5=BCdym etapie prac - je=C5=BCeli b=C4=99dzie to =
konieczne.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Wykonawcy zobowi=C4=85zani b=C4=99d=C4=85 =
udost=C4=99pni=C4=87 plac budowy=20
dostawcom, w celu umo=C5=BCliwienia monta=C5=BCu pozosta=C5=82ych jej =
element=C3=B3w w=20
skoordynowaniu z robotami budowlanymi obj=C4=99tymi przedmiotowym =
zam=C3=B3wieniem. Ka=C5=BCdy=20
etap prac musi by=C4=87 uzgadniany z Zamawiaj=C4=85cym.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Zamawiaj=C4=85cy wymaga min. 2 spotka=C5=84 =
wy=C5=82onionych wykonawc=C3=B3w i=20
dostawc=C3=B3w<BR></SPAN><SPAN style=3D"COLOR: black">w =
grupach:<BR></SPAN><SPAN=20
style=3D"COLOR: black">=E2=80=94 cz=C4=99=C5=9B=C4=87 budowlana i =
technologia;<BR></SPAN><SPAN=20
style=3D"COLOR: black">=E2=80=94 cz=C4=99=C5=9B=C4=87 budowlana, =
instalacje elektro-energetyczne,=20
biogazowe i agregat kogeneracyjny;<BR></SPAN><SPAN style=3D"COLOR: =
black">pierwsze=20
w celu om=C3=B3wienia kolejno=C5=9Bci wykonywania poszczeg=C3=B3lnych =
zada=C5=84<BR></SPAN><SPAN=20
style=3D"COLOR: black">i usuni=C4=99cia kolizji frontu rob=C3=B3t przy =
za=C5=82o=C5=BCeniu ci=C4=85g=C5=82o=C5=9Bci=20
pracy Zak=C5=82adu.<BR></SPAN><SPAN style=3D"COLOR: black">Na spotkaniu =
tym zostanie=20
opracowany szczeg=C3=B3=C5=82owy harmonogram prac. Kolejne zebranie =
stanowi=C4=87 b=C4=99dzie=20
weryfikacj=C4=99 post=C4=99pu prac i ewentualn=C4=85 korekt=C4=99 =
harmonogramu.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Cz=C4=99=C5=9B=C4=87 VI =E2=80=93 Rozdrabniarka, =
obejmuje dostaw=C4=99 2 szt=20
rozdrabniarek.<BR></SPAN><SPAN style=3D"COLOR: black">Minimalne dane=20
techniczne:<BR></SPAN><SPAN style=3D"COLOR: black">a) zabezpieczenie =
elektryczne=20
silnik=C3=B3w,<BR></SPAN><SPAN style=3D"COLOR: black">b) napi=C4=99cie =
sterowania min. 24=20
VDC,<BR></SPAN><SPAN style=3D"COLOR: black">c) moc silnika elektrycznego =
maks. 140=20
kW,<BR></SPAN><SPAN style=3D"COLOR: black">d) moc docisku hydraulicznego =
min. 7,5=20
kW,<BR></SPAN><SPAN style=3D"COLOR: black">e) masa maszyny ok. 17=20
Mg,<BR></SPAN><SPAN style=3D"COLOR: black">f) pojemno=C5=9B=C4=87 komory =
pracy min. 3,5=20
m=C2=B3,<BR></SPAN><SPAN style=3D"COLOR: black">g) ilo=C5=9B=C4=87 =
no=C5=BCy na rotorze maks. 140=20
sztuk,<BR></SPAN><SPAN style=3D"COLOR: black">h) ilo=C5=9B=C4=87 =
no=C5=BCy przeciwnych 6=20
sztuk,<BR></SPAN><SPAN style=3D"COLOR: black">i) ilo=C5=9B=C4=87 =
zgarniak=C3=B3w 6=20
sztuk,<BR></SPAN><SPAN style=3D"COLOR: black">j) d=C5=82ugo=C5=9B=C4=87 =
rotora min. 2100=20
mm,<BR></SPAN><SPAN style=3D"COLOR: black">k) =C5=9Brednica obrot=C3=B3w =
no=C5=BCy na wale min.=20
740 mm,<BR></SPAN><SPAN style=3D"COLOR: black">l) ilo=C5=9B=C4=87 =
obrot=C3=B3w rotora na minut=C4=99 =E2=80=93=20
maks 100 obr/min,<BR></SPAN><SPAN style=3D"COLOR: black">=C5=82) =
wielko=C5=9B=C4=87 no=C5=BCy na wale=20
min 43 mm x 43 mm x 19 mm,<BR></SPAN><SPAN style=3D"COLOR: black">m) =
no=C5=BCe na wale=20
musz=C4=85 by=C4=87 wykonane ze stali nierdzewnej. Rozdrabniarka musi =
spe=C5=82nia=C4=87 parametry=20
funkcjonalno- techniczne okre=C5=9Blone w Programie=20
Funkcjonalno-U=C5=BCytkowym.<BR></SPAN><SPAN style=3D"COLOR: =
black">Cz=C4=99=C5=9B=C4=87 VII =E2=80=93=20
Kontenery, obejmuje: dostaw=C4=99 3 szt kontener=C3=B3w rolkowych do =
system=C3=B3w hakowych,=20
zgodnych z norm=C4=85 DIN 30722.<BR></SPAN><SPAN style=3D"COLOR: =
black">Minimalne dane=20
techniczne:<BR></SPAN><SPAN style=3D"COLOR: black">a) =
pojemno=C5=9B=C4=87 40=20
m=C2=B3<BR></SPAN><SPAN style=3D"COLOR: black">b) masa w=C5=82asna do =
4000=20
kg<BR></SPAN><SPAN style=3D"COLOR: black">c) odbi=C3=B3r hakowy ok.1570 =
mm, pr=C4=99t haka=20
fi.50<BR></SPAN><SPAN style=3D"COLOR: black">d) dwie rolki=20
zewn=C4=99trzne<BR></SPAN><SPAN style=3D"COLOR: black">e) =
grubo=C5=9B=C4=87 pod=C5=82ogi 5=20
mm<BR></SPAN><SPAN style=3D"COLOR: black">f) grubo=C5=9B=C4=87 =
=C5=9Bcian i drzwi 4=20
mm<BR></SPAN><SPAN style=3D"COLOR: black">g) spoiny ci=C4=85g=C5=82e do =
ramy=20
no=C5=9Bnej<BR></SPAN><SPAN style=3D"COLOR: black">h) podw=C3=B3jne =
drzwi na min. trzech=20
potr=C3=B3jnych zawiasach ka=C5=BCde, plus wzmocnienie w poprzek =
drzwi<BR></SPAN><SPAN=20
style=3D"COLOR: black">i) centralne zamkni=C4=99cie drzwi - typ=20
holenderski<BR></SPAN><SPAN style=3D"COLOR: black">j) haczyki do =
plandeki na=20
obwodzie<BR></SPAN><SPAN style=3D"COLOR: black">k) stopnie na =
=C5=9Bcianie czo=C5=82owej z=20
lewej strony w kierunku jazdy. Kontenery musz=C4=85 spe=C5=82nia=C4=87 =
parametry funkcjonalno-=20
techniczne okre=C5=9Blone w Programie =
Funkcjonalno-U=C5=BCytkowym.<BR></SPAN><SPAN=20
style=3D"COLOR: black">Cz=C4=99=C5=9B=C4=87 VIII - R=C4=99bak do =
ga=C5=82=C4=99zi<BR></SPAN><SPAN=20
style=3D"COLOR: black">Minimalne dane techniczne:<BR></SPAN><SPAN=20
style=3D"COLOR: black">a) silnik diesel, ch=C5=82odzony =
ciecz=C4=85,<BR></SPAN><SPAN=20
style=3D"COLOR: black">b) otw=C3=B3r podajnika ok. 70 x 70 =
cm,<BR></SPAN><SPAN=20
style=3D"COLOR: black">c) hydrauliczny system podawania =
ga=C5=82=C4=99zi,<BR></SPAN><SPAN=20
style=3D"COLOR: black">d) czterokraw=C4=99dziowe obracalne =
kowad=C5=82o,<BR></SPAN><SPAN=20
style=3D"COLOR: black">e) potr=C3=B3jny pas =
nap=C4=99dowy,<BR></SPAN><SPAN=20
style=3D"COLOR: black">f) wska=C5=BAnik pracy silnika i innych =
element=C3=B3w. R=C4=99barka do=20
ga=C5=82=C4=99zi musi spe=C5=82nia=C4=87 parametry funkcjonalno- =
techniczne okre=C5=9Blone w Programie=20
Funkcjonalno-U=C5=BCytkowym.<BR></SPAN><SPAN style=3D"COLOR: =
black">Cz=C4=99=C5=9B=C4=87 IX =E2=80=93=20
=C5=81adowarka przegubowa, obejmuje: dostaw=C4=99 fabrycznie nowej =
=C5=82adowarki przegubowej w=20
ilo=C5=9Bci 1 szt., przeznaczonej do pracy w ci=C4=85gu technologicznym =
tj. przy za=C5=82adunku=20
odpad=C3=B3w na lini=C4=99 sortownicz=C4=85 oraz za=C5=82adunku =
odpad=C3=B3w ze szk=C5=82a lub metali.=20
=C5=81adowarka musi spe=C5=82nia=C4=87 normy CE.<BR></SPAN><SPAN =
style=3D"COLOR: black">Minimalne=20
dane techniczne:<BR></SPAN><SPAN style=3D"COLOR: black">a) silnik=20
czterocylindrowy, wysokopr=C4=99=C5=BCny,<BR></SPAN><SPAN =
style=3D"COLOR: black">b) nap=C4=99d=20
hydrostatyczny 2 biegowy z mo=C5=BCliwo=C5=9Bci=C4=85 zmiany kierunku =
jazdy i prze=C5=82o=C5=BCenia pod=20
pe=C5=82nym obci=C4=85=C5=BCeniem,<BR></SPAN><SPAN style=3D"COLOR: =
black">c) wyposa=C5=BCony w dwa=20
si=C5=82owniki podnosz=C4=85ce<BR></SPAN><SPAN style=3D"COLOR: black">d) =
=C5=82y=C5=BCka z z=C4=99bami o=20
pojemno=C5=9Bci min. 0,80 m=C2=B3 i szeroko=C5=9Bci min. 1800 =
mm<BR></SPAN><SPAN=20
style=3D"COLOR: black">e) odchylana kabina. =C5=81adowarka przegubowa =
musi spe=C5=82nia=C4=87=20
parametry funkcjonalno- techniczne okre=C5=9Blone w Programie=20
Funkcjonalno-U=C5=BCytkowym.<BR></SPAN><SPAN style=3D"COLOR: black">2. =
Zamawiaj=C4=85cy=20
wymaga dostarczenia certyfikat=C3=B3w CE =E2=80=93 deklaracji =
zgodno=C5=9Bci, kart=20
gwarancyjnych.<BR></SPAN><SPAN style=3D"COLOR: black">3. Wymagana =
gwarancja 36=20
miesi=C4=99cy na wszystkie cz=C4=99=C5=9Bci i =
podzespo=C5=82y.<BR></SPAN><SPAN=20
style=3D"COLOR: black">4. W okresie gwarancji dostawcy/wykonawcy =
przeprowadz=C4=85 3=20
nieodp=C5=82atne przegl=C4=85dy sprawdzaj=C4=85ce stan technicznych =
rob=C3=B3t budowlanych i=20
dostarczonych maszyn i urz=C4=85dze=C5=84. Pierwszy przegl=C4=85d =
odb=C4=99dzie si=C4=99 po up=C5=82ywie 12=20
miesi=C4=99cy, drugi przed up=C5=82ywem 24 miesi=C4=99cy i trzeci przed =
up=C5=82ywem 36=20
miesi=C4=99cy.<BR></SPAN><SPAN style=3D"COLOR: black">5. Usterki =
musz=C4=85 by=C4=87 usuni=C4=99te w=20
terminie 2 dni roboczych, za przekroczenie terminu wykonawca =
zap=C5=82aci=20
zamawiaj=C4=85cemu kar=C4=99 pieni=C4=99=C5=BCn=C4=85 w wysoko=C5=9Bci =
500 z=C5=82 za ka=C5=BCd=C4=85 dob=C4=99 pocz=C4=85wszy od dnia=20
zg=C5=82oszenia.<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1.5)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Wsp=C3=B3lny =
S=C5=82ownik Zam=C3=B3wie=C5=84=20
(CPV)</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P><SPAN class=3DcpvCode=20
title=3D"Us=C5=82ugi projektowania architektonicznego">71220000</SPAN>, =
<SPAN=20
class=3DcpvCode title=3D"Przygotowanie terenu pod =
budow=C4=99">45100000</SPAN>, <SPAN=20
class=3DcpvCode=20
title=3D"Roboty budowlane w&nbsp;zakresie wznoszenia kompletnych =
obiekt=C3=B3w budowlanych lub ich cz=C4=99=C5=9Bci oraz roboty =
w&nbsp;zakresie in=C5=BCynierii l=C4=85dowej =
i&nbsp;wodnej">45200000</SPAN>,=20
<SPAN class=3DcpvCode=20
title=3D"Roboty budowlane w&nbsp;zakresie sk=C5=82adowisk =
odpad=C3=B3w">45222110</SPAN>,=20
<SPAN class=3DcpvCode=20
title=3D"R=C3=B3=C5=BCne maszyny og=C3=B3lnego i&nbsp;specjalnego =
przeznaczenia">42900000</SPAN>,=20
<SPAN class=3DcpvCode title=3DRozdrabniarki>42996100</SPAN>, <SPAN =
class=3DcpvCode=20
title=3D"Silniki i&nbsp;generatory mocy hydrauliczne lub =
pneumatyczne">42121000</SPAN>,=20
<SPAN class=3DcpvCode=20
title=3D"Urz=C4=85dzenia podno=C5=9Bnikowe =
i&nbsp;prze=C5=82adunkowe">42410000</SPAN>, <SPAN=20
class=3DcpvCode=20
title=3D"Pojemniki i&nbsp;kosze na odpady =
i&nbsp;=C5=9Bmieci">34928480</SPAN></P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.1.6)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
Porozumienia w sprawie zam=C3=B3wie=C5=84 rz=C4=85dowych (GPA)</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Zam=C3=B3wienie=20
jest obj=C4=99te Porozumieniem w sprawie zam=C3=B3wie=C5=84 =
rz=C4=85dowych (GPA):=20
nie<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Ca=C5=82kowita =
ko=C5=84cowa warto=C5=9B=C4=87=20
zam=C3=B3wienia (zam=C3=B3wie=C5=84)</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->II.2.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Ca=C5=82kowita =
ko=C5=84cowa warto=C5=9B=C4=87=20
zam=C3=B3wienia (zam=C3=B3wie=C5=84)</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Warto=C5=9B=C4=87: 8=20
302 831,56 PLN<BR></SPAN><SPAN style=3D"COLOR: black">Bez =
VAT<BR></SPAN></DIV><!--//txtmark end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq>
<P class=3Dtigrseq><SPAN id=3Did11838117-IV.>Sekcja IV: Procedura</P>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Rodzaj=20
procedury</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.1.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Rodzaj =
procedury</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">Otwarta<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Kryteria =
udzielenia=20
zam=C3=B3wienia</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.2.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Kryteria =
udzielenia=20
zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Najni=C5=BCsza=20
cena<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.2.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat aukcji=20
elektronicznej</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Wykorzystano=20
aukcj=C4=99 elektroniczn=C4=85: nie<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje=20
administracyjne</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.3.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Numer =
referencyjny nadany=20
sprawie przez instytucj=C4=99 zamawiaj=C4=85c=C4=85</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">DMP.56/2012<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->IV.3.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Poprzednie =
publikacje=20
dotycz=C4=85ce tego samego zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Dft><B>Og=C5=82oszenie o zam=C3=B3wieniu</B></P>
<P class=3Dtxnum>Numer og=C5=82oszenia w Dz.U.: <A class=3Dojshref=20
href=3D"http://ted.europa.eu/udl?uri=3DTED:NOTICE:404305-2012:TEXT:PL:HTM=
L">2012/S=20
246-404305</A> z dnia 21.12.2012</P></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq>
<P class=3Dtigrseq><SPAN id=3Did11838118-V.>Sekcja V: Udzielenie=20
zam=C3=B3wienia</P><SPAN>Cz=C4=99=C5=9B=C4=87 nr: 1 - Nazwa: =
Cz=C4=99=C5=9B=C4=87 I =E2=80=93 Zaprojektowanie i wybudowanie=20
hali nr 6, rozbudowanie hali nr 5, budynku socjalno biurowego i punktu=20
selektywnego zbierania odpad=C3=B3w komunalnych</SPAN>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Data decyzji o =
udzieleniu=20
zam=C3=B3wienia:</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">15.3.2013<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje o=20
ofertach</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Liczba=20
otrzymanych ofert: 3<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa i adres =
wykonawcy, na=20
rzecz kt=C3=B3rego zosta=C5=82a wydana decyzja o udzieleniu =
zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>Molewski Sp. z o.o.<BR>ul. Kaliska 11<BR>87-860=20
Chodecz<BR>POLSKA<BR>Tel.: +48 542848538<BR>Faks: +48 =
542848538</P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
warto=C5=9Bci zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Pocz=C4=85tkowa=20
szacunkowa ca=C5=82kowita warto=C5=9B=C4=87 zam=C3=B3wienia: =
<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87: 4 350 000,00 =
PLN<BR></SPAN><SPAN=20
style=3D"COLOR: black">Ca=C5=82kowita ko=C5=84cowa warto=C5=9B=C4=87 =
zam=C3=B3wienia: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Najni=C5=BCsza oferta 5 934 750,00 i =
najwy=C5=BCsza oferta 13 163=20
460,00 PLN<BR></SPAN><SPAN style=3D"COLOR: black">=C5=81=C4=85cznie z =
VAT. Stawka VAT (%)=20
23,00<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.5)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
podwykonawstwa</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Przewidywane=20
jest zlecenie podwykonawstwa w ramach zam=C3=B3wienia: =
tak<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87 lub cz=C4=99=C5=9B=C4=87 =
zam=C3=B3wienia, kt=C3=B3re prawdopodobnie b=C4=99dzie=20
zlecone stronom trzecim: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Nieznana<BR></SPAN></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq><SPAN>Cz=C4=99=C5=9B=C4=87 nr: 2 - Nazwa: =
Zaprojektowanie i wybudowanie=20
trafostacji i przy=C5=82=C4=85cza elektryczno-energetycznego</SPAN>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Data decyzji o =
udzieleniu=20
zam=C3=B3wienia:</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">15.3.2013<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje o=20
ofertach</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Liczba=20
otrzymanych ofert: 3<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa i adres =
wykonawcy, na=20
rzecz kt=C3=B3rego zosta=C5=82a wydana decyzja o udzieleniu =
zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>Inenergia Sp. z o.o. Sp. k.<BR>ul. Transportowca =
31<BR>88-100=20
Inowroc=C5=82aw<BR>POLSKA<BR>Tel.: +48 523526425<BR>Faks: +48 =
523526425</P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
warto=C5=9Bci zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Pocz=C4=85tkowa=20
szacunkowa ca=C5=82kowita warto=C5=9B=C4=87 zam=C3=B3wienia: =
<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87: 1 100 000,00 =
PLN<BR></SPAN><SPAN=20
style=3D"COLOR: black">Ca=C5=82kowita ko=C5=84cowa warto=C5=9B=C4=87 =
zam=C3=B3wienia: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Najni=C5=BCsza oferta 393 600,00 i najwy=C5=BCsza =
oferta 511 618,30=20
PLN<BR></SPAN><SPAN style=3D"COLOR: black">=C5=81=C4=85cznie z VAT. =
Stawka VAT (%)=20
23,00<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.5)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
podwykonawstwa</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Przewidywane=20
jest zlecenie podwykonawstwa w ramach zam=C3=B3wienia: =
tak<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87 lub cz=C4=99=C5=9B=C4=87 =
zam=C3=B3wienia, kt=C3=B3re prawdopodobnie b=C4=99dzie=20
zlecone stronom trzecim: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Nieznana<BR></SPAN></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq><SPAN>Cz=C4=99=C5=9B=C4=87 nr: 3 - Nazwa: =
Cz=C4=99=C5=9B=C4=87 III =E2=80=93 Zaprojektowanie i=20
wybudowanie przy=C5=82=C4=85cza biogazu, agregatu =
pr=C4=85dotw=C3=B3rczego i przy=C5=82=C4=85cza=20
elektroenergetycznego do trafostacji</SPAN>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Data decyzji o =
udzieleniu=20
zam=C3=B3wienia:</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">20.3.2013<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje o=20
ofertach</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Liczba=20
otrzymanych ofert: 2<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa i adres =
wykonawcy, na=20
rzecz kt=C3=B3rego zosta=C5=82a wydana decyzja o udzieleniu =
zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>Przedsi=C4=99biorstwo Produkcyjno-Us=C5=82ugowo-Handlowe =
HORUS-ENERGIA Sp. z=20
o.o.<BR>ul. Drobiarska 43<BR>05-070 Sulej=C3=B3wek<BR>POLSKA<BR>Tel.: =
+48=20
223315331<BR>Faks: +48 223315323</P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
warto=C5=9Bci zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Pocz=C4=85tkowa=20
szacunkowa ca=C5=82kowita warto=C5=9B=C4=87 zam=C3=B3wienia: =
<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87: 1 300 000,00 =
PLN<BR></SPAN><SPAN=20
style=3D"COLOR: black">Bez VAT<BR></SPAN><SPAN style=3D"COLOR: =
black">Ca=C5=82kowita=20
ko=C5=84cowa warto=C5=9B=C4=87 zam=C3=B3wienia: <BR></SPAN><SPAN =
style=3D"COLOR: black">Najni=C5=BCsza=20
oferta 1 225 080,00 i najwy=C5=BCsza oferta 1 584 386,21 =
PLN<BR></SPAN><SPAN=20
style=3D"COLOR: black">=C5=81=C4=85cznie z VAT. Stawka VAT (%) =
23,00<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.5)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
podwykonawstwa</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Przewidywane=20
jest zlecenie podwykonawstwa w ramach zam=C3=B3wienia: =
tak<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87 lub cz=C4=99=C5=9B=C4=87 =
zam=C3=B3wienia, kt=C3=B3re prawdopodobnie b=C4=99dzie=20
zlecone stronom trzecim: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Nieznana<BR></SPAN></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq><SPAN>Cz=C4=99=C5=9B=C4=87 nr: 6 - Nazwa: =
Rozdrabniarka</SPAN>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Data decyzji o =
udzieleniu=20
zam=C3=B3wienia:</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">15.3.2013<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje o=20
ofertach</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Liczba=20
otrzymanych ofert: 1<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa i adres =
wykonawcy, na=20
rzecz kt=C3=B3rego zosta=C5=82a wydana decyzja o udzieleniu =
zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>WENDE Recyclingtech s.c. Ewa i Piotr Panto=C5=82<BR>ul. =
Marsza=C5=82ka=20
Pi=C5=82sudskiego 8/12<BR>49-300 Brzeg<BR>POLSKA<BR>Tel.: +48 =
774169666<BR>Faks: +48=20
774169666</P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
warto=C5=9Bci zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Pocz=C4=85tkowa=20
szacunkowa ca=C5=82kowita warto=C5=9B=C4=87 zam=C3=B3wienia: =
<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87: 1 800 000,00 =
PLN<BR></SPAN><SPAN=20
style=3D"COLOR: black">Bez VAT<BR></SPAN><SPAN style=3D"COLOR: =
black">Ca=C5=82kowita=20
ko=C5=84cowa warto=C5=9B=C4=87 zam=C3=B3wienia: <BR></SPAN><SPAN =
style=3D"COLOR: black">Warto=C5=9B=C4=87: 2 280=20
901,62 PLN<BR></SPAN><SPAN style=3D"COLOR: black">=C5=81=C4=85cznie z =
VAT. Stawka VAT (%)=20
23,00<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.5)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
podwykonawstwa</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Przewidywane=20
jest zlecenie podwykonawstwa w ramach zam=C3=B3wienia: =
tak<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87 lub cz=C4=99=C5=9B=C4=87 =
zam=C3=B3wienia, kt=C3=B3re prawdopodobnie b=C4=99dzie=20
zlecone stronom trzecim: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Nieznana<BR></SPAN></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq><SPAN>Cz=C4=99=C5=9B=C4=87 nr: 7 - Nazwa: =
Kontenery</SPAN>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Data decyzji o =
udzieleniu=20
zam=C3=B3wienia:</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">15.3.2013<BR></SPAN></DIV><!--//txtmark =
end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje o=20
ofertach</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Liczba=20
otrzymanych ofert: 1<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Nazwa i adres =
wykonawcy, na=20
rzecz kt=C3=B3rego zosta=C5=82a wydana decyzja o udzieleniu =
zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>POL-OSTEG Sp. z o.o.<BR>ul. Filtrowa 25<BR>85-467=20
Bydgoszcz<BR>POLSKA<BR>Tel.: +48 523477711<BR>Faks: +48 =
523724175</P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
warto=C5=9Bci zam=C3=B3wienia</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Pocz=C4=85tkowa=20
szacunkowa ca=C5=82kowita warto=C5=9B=C4=87 zam=C3=B3wienia: =
<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87: 50 000,00 PLN<BR></SPAN><SPAN=20
style=3D"COLOR: black">Bez VAT<BR></SPAN><SPAN style=3D"COLOR: =
black">Ca=C5=82kowita=20
ko=C5=84cowa warto=C5=9B=C4=87 zam=C3=B3wienia: <BR></SPAN><SPAN =
style=3D"COLOR: black">Warto=C5=9B=C4=87: 53=20
431,20 PLN<BR></SPAN><SPAN style=3D"COLOR: black">=C5=81=C4=85cznie z =
VAT. Stawka VAT (%)=20
23,00<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->V.5)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje na =
temat=20
podwykonawstwa</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Przewidywane=20
jest zlecenie podwykonawstwa w ramach zam=C3=B3wienia: =
tak<BR></SPAN><SPAN=20
style=3D"COLOR: black">Warto=C5=9B=C4=87 lub cz=C4=99=C5=9B=C4=87 =
zam=C3=B3wienia, kt=C3=B3re prawdopodobnie b=C4=99dzie=20
zlecone stronom trzecim: <BR></SPAN><SPAN=20
style=3D"COLOR: black">Nieznana<BR></SPAN></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end-->
<DIV class=3Dgrseq>
<P class=3Dtigrseq><SPAN id=3Did11838119-VI.>Sekcja VI: Informacje =
uzupe=C5=82niaj=C4=85ce</P>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje o =
funduszach=20
Unii Europejskiej</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN style=3D"COLOR: =
black">Zam=C3=B3wienie=20
dotyczy projektu/programu finansowanego ze =C5=9Brodk=C3=B3w Unii =
Europejskiej:=20
nie<BR></SPAN></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Informacje=20
dodatkowe:</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Procedury=20
odwo=C5=82awcze</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.3.1)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Organ =
odpowiedzialny za=20
procedury odwo=C5=82awcze</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.3.2)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Sk=C5=82adanie=20
odwo=C5=82a=C5=84</SPAN></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.3.3)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" =
class=3Dtimark>=C5=B9r=C3=B3d=C5=82o, gdzie mo=C5=BCna uzyska=C4=87=20
informacje na temat sk=C5=82adania odwo=C5=82a=C5=84</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark>
<P class=3Daddr>Departament Odwo=C5=82a=C5=84<BR>ul. Post=C4=99pu 17 =
a<BR>02-676=20
Warszawa<BR>POLSKA<BR>Tel.: +48 224587801<BR>Faks: +48 =
224587800</P></DIV><!--//txtmark end--></DIV>
<DIV class=3Dmlioccur><SPAN style=3D"COLOR: black" =
class=3Dnomark><!--Non empty span 2-->VI.4)</SPAN><SPAN=20
style=3D"COLOR: black; FONT-WEIGHT: bold" class=3Dtimark>Data =
wys=C5=82ania niniejszego=20
og=C5=82oszenia:</SPAN>
<DIV style=3D"COLOR: black" class=3Dtxtmark><SPAN=20
style=3D"COLOR: black">4.4.2013<BR></SPAN></DIV><!--//txtmark =
end--></DIV></DIV><!--// grseq end--></DIV></DIV></DIV></DIV></DIV>
<DIV class=3Dclear></DIV><!-- Content - END --></DIV><!-- Footer - Start =
-->
<DIV id=3Dfooter>
<UL>
  <LI><INS><A title=3D"Czym jest TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DaboutTed%27%2Ctrue%2Cfalse=
%2C%27_self%27%29%3B">O=20
  TED</A></INS> | </LI>
  <LI><INS>
  <SCRIPT type=3Dtext/javascript>//<!--
		writeHelpLink('main', 'Pomoc ', '');
	//--></SCRIPT>
  <NOSCRIPT><A class=3Dblack=20
  href=3D"http://ted.europa.eu/TED/misc/helpPage.do?helpPageId=3Dmain"=20
  target=3D_blank>Pomoc</A></NOSCRIPT></INS> | </LI>
  <LI><INS><A title=3D"Mapa witryny"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DsiteMap%27%2Ctrue%2Cfalse%=
2C%27_self%27%29%3B">Mapa=20
  witryny</A></INS> | </LI>
  <LI><INS><A title=3D"Wy=C5=9Blij wiadomo=C5=9B=C4=87 do zespo=C5=82u =
witryny TED"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3Dcontact%27%2Ctrue%2Cfalse%=
2C%27_self%27%29%3B">Kontakt</A></INS>=20
  | </LI>
  <LI><INS><A title=3D"Nota prawna"=20
  =
href=3D"javascript:%24do%28%27gp%27%2C%27pid%3DlegalNotice%27%2Ctrue%2Cfa=
lse%2C%27_self%27%29%3B">Wa=C5=BCna=20
  informacja prawna</A></INS> </LI></UL></DIV><!-- Footer - END --><!-- =
Main container - END -->
<SCRIPT type=3Dtext/javascript><!--
			registerEvent("onload", new Function("hideDiv('loading')"));
//--></SCRIPT>
<!-- AJAX Content - END --><!-- Page - end -->
<SCRIPT type=3Dtext/javascript><!--
			registerEvent("onload", new =
Function("sendAjaxRequest('\/TEDMonitoring\/stat?requestId=3D7HT4FFwzuFIA=
ADx4atMAAABN&startTime=3D1365571638983&jspProcessingTime=3D3&requestURI=3D=
%2FTED%2Fnotice%2Fudl&processEndTime=3D"+(new =
Date().getTime()-clientOffset)+"','new Function()')"));
//--></SCRIPT>
<NOSCRIPT><IMG alt=3D""=20
src=3D"http://ted.europa.eu/TEDMonitoring/stat?requestId=3D7HT4FFwzuFIAAD=
x4atMAAABN&amp;startTime=3D1365571638983&amp;jspProcessingTime=3D3&amp;re=
questURI=3D%2FTED%2Fnotice%2Fudl&amp;processEndTime=3D1365571639038">=20
</NOSCRIPT></FORM><!-- 1.08.06 =
--></SPAN></SPAN></SPAN></SPAN></SPAN></DIV></BODY></HTML>

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/europa_logo.png

iVBORw0KGgoAAAANSUhEUgAAAD4AAAAZCAYAAABpaJ3KAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAALEAAACxABrSO9dQAAABh0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjM2qefiJQAAAtFJREFU
WEftmMFKHEEQhtcnyCP4CD5CLjkKHj3kIOSSUxA8edKDD7AQCAQvSw7xtughB4mHEBD0tmKISNRs
YCGJCSiLEhSEyn49+y/lZGZnNmyUZlLQ7Ex3dVf9VX9Vj05YT2pVFIBXUWpVBB1Y/h/4CBFonfyw
xtaBLb/etZmVN/ZwsRnG+s7xCKfcr2rpjLe/d21+9b1NPmlYbfp55ngw+9LQi0EKgQcgv45s6tla
AAtwsky23+13wji/uIoB6y0fc4EDhgwD0D4vWLvzKZpslslCJnBqeK7+NtRxkMPHZl9fJM/X38wu
98y622anr5J53iOT7IynwX14ZJYeX5YS8BlC4Hyt/6u6L3tult6fwG8uzH42zQD2ceY2YDLPGoHJ
Ebo7vSCUSE9gDf1BQlBY1zw9wwtO6sbgDA3mBIDbQ02WcswSSpW90sOul8LmRn0Pss1zgeCgBy7D
2oZDWtftQINEAMTN4G8N3gmmmqsCy3x9oxV009coPrCuPejIhvwYDvxsMwF99DRhAM9kfIgQZRnC
mEBoC+s45NcAIHZIXwFQnyFg/irVHgHU+Qo8PUq+jAYcykN1sswzAsUJwBCqyzDAlB0MIziPo+h4
4KIrVBZwgCnbPmisMy+RDTGGda5bqO3ZUz7jAKRr94WNRBAn9aWmX+ZwFMflPMZxQo6RAVF2QLf+
hxCZhK4wQfTFFvoeJGdwpq9r9qCjoPKskvF0H9xQfeP5VO9llQMwlq67vC835nHA1yGBEEU5xzcZ
BUcBUvNCXwP7EtUsvwRGgeBZAZNvrKnBMefP4bxM4NpQ5usMXdigTgwwBnvVdADEe7qz4gB709eN
9AGjr0JfBqI7gROFxUTs+PNUUiTDS3FXH9bJ7nDNZzSdvSI3VIJRAvcdehx/G0STcd0WacoWZTtv
PRrg/rb4W7BRUh2naWDj+mdHNBkfR5ajzfg4wVc2478BAkxxPJ0Sx9sAAAAASUVORK5CYII=

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/backall.gif

R0lGODlhDgAMANU1AF7PU4z1VXLhUnDhU4r1VTqfTKTjnmqdiWWfhG7cUoXyVDujTILxVaH1Vz2n
TBd6SHnmU3vpU7jzpYLvVIHrXFDCUHa/i3TjUnfoU4vRkbPupF3PUXCajWOfghmHSXvqViKXSxVr
RkC1TnjoVmrbUzmbS0CuTab1V2/fUmyaiXTlVEi6Tpv1VjOjTXDfUp31Vl2ifzOVXfv8/HzqU5P1
Vv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADUALAAAAAAOAAwAAAZlwJpQ
yAkNa8VjLVV6DJnO4aHg8gin1SFicYGAatvuV9ZxYBKTVvmcrsFMMwGKIILL6bXYSjGL0Cp7fX9C
Fhs0ASwAhYeJQxkDLw0kNY+Rk0MGDCcqQpmbShojH0Oho0oSFEeoNUEAOw==

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/backone.gif

R0lGODlhBwAMANU1AF7PU4z1VXLhUnDhU4r1VTqfTDOVXZv1VmyaiT2nTGqdiTujTEC1TiKXS6H1
V4LxVRVrRhd6SHa/i3TjUrjzpV2if6b1V1DCUHfoUzOjTZ31VoXyVF3PUW/fUvv8/GOfgnnmU2Wf
hHvpU0i6TmrbU27cUhmHSUCuTYHrXHTlVILvVIvRkXjoVnCajTmbS3vqVqTjnnDfUrPupHzqU5P1
Vv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADUALAAAAAAHAAwAAAY+wJpQ
2IIMawhXZKgoxEzC0GICang+CUxJlamcZoIOgWEYbWYi2qUm4dACB4BwNdA4SEPYw5I6ylgvRzUU
KEEAOw==

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/nextone.gif

R0lGODlhBwAMANU1AF7PU4z1VXLhUnDhU4r1VTqfTDOVXZv1VmyaiT2nTGqdiTujTEC1TiKXS6H1
V4LxVRVrRhd6SHa/i3TjUrjzpV2if6b1V1DCUHfoUzOjTZ31VoXyVF3PUW/fUvv8/GOfgnnmU2Wf
hHvpU0i6TmrbU27cUhmHSUCuTYHrXHTlVILvVIvRkXjoVnCajTmbS3vqVqTjnnDfUrPupHzqU5P1
Vv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADUALAAAAAAHAAwAAAY+QBSl
RiS+WLJiLWV5wIokh2awIgIOARpHUrvQRLPNyMAgdASzUyWjKmESH08DNFmEiKZYQVGMuBBKEC1K
NUEAOw==

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/nextall.gif

R0lGODlhDgAMANU1AF7PU4z1VXLhUnDhU4r1VTqfTKTjnmqdiWWfhG7cUoXyVDujTILxVaH1Vz2n
TBd6SHnmU3vpU7jzpYLvVIHrXFDCUHa/i3TjUnfoU4vRkbPupF3PUXCajWOfghmHSXvqViKXSxVr
RkC1TnjoVmrbUzmbS0CuTab1V2/fUmyaiXTlVEi6Tpv1VjOjTXDfUp31Vl2ifzOVXfv8/HzqU5P1
Vv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADUALAAAAAAOAAwAAAZkwBpF
UisKicbiZ6QxLptJ1YlhKEqpSVLjNcjUtFxvEcAK0DYWshldrNAiM8XKDZfHaiICSjAz5fd9MDUt
EwkYDh2EhogyNSAQFwsIjpCSRh4uBQdFmJpJDyUpRqCiSSEcpqhJQQA7

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://ted.europa.eu/TEDMonitoring/stat?requestId=7HT4FFwzuFIAADx4atMAAABN&startTime=1365571638983&jspProcessingTime=3&requestURI=%2FTED%2Fnotice%2Fudl&processEndTime=1365571639038


------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/logo.png

iVBORw0KGgoAAAANSUhEUgAAAp4AAABCCAMAAADJyybcAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAwBQTFRF
L098P1lyX2xfT2Jpb3VWf39MDzyPADOZH0aFcH6QM5kALop9QJ8QTaYgUaglWawwWq0xZLE9ZrNA
c7lQcoCRcoCSdIKTdYOUd4SVd4WWeYWXeYaXeoeYfYqaZpnMn5I5r5wvv6Umj4lCgL9ggcBhicRs
isVtjcZwlMl5mcx/z68c37gT78IJ/8wAgIycgo6eg4+fiZWki5aljJemj5qolJ6slZ+tlqCtmKKv
mqOwmqSxnaazn6i1oKq1oaq2oqu3o6y4pq+6qbG8rLS/r7fBsrrDs7vEtbzGuL/Iq77hmcyAlsS+
ptOQp9ORs9mgut2pu8LKwN+wxOG1wcfPxcvSx8zTx83Uys/WztLZ0NXb0tfc09fd1Njd1dne19vg
2Nzh2d3i2t7i29/j3N/kzebAzebBz+fC0ejF0ujG1OnJ1erL1+vN2OvP2OzP2ezQ2u3R3e7V3ODk
3eDl3+Lm4fDZ4/Hb4/Hc5PHd5PLd5fLe4OPn4eTo4uXp4+bp4+bq5Ofq5efr5ejr5uns5+rt6Ort
6evu6uzu6uzv6+3w7O7w7O7x7u/y5vPg6PPi6vTk6vTl7Pbo7fbp7vbq7/fr7vDy7/Hz8Pjt8fju
8vjv8PHz8PL08vP18/T18/T29PX29PX39fb39vb48/nw9Pnx9fry9frz9vv09/v19/j5+Pv2+Pz3
+Pj5+Pn6+fr6+fr7+vv8+fz4+vz5+/36+/37+/z8/P37/P77/Pz8/Pz9/f3+/P78/f79/v7+/v7/
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPaeoowAAABh0RVh0U29mdHdhcmUAUGFpbnQuTkVU
IHYzLjM2qefiJQAAGZ1JREFUeF7tXYt7XMdV90OWvMZuqNKSlE3wI4GAZVWtqEqLCKmKihdhjM1C
FNDapFqHUh4hiaFAF2pVuI5qKW2hMtRRE0tu68rUkh1Xxmt77//GOfM4c+Z1H6vVZyfZ+dro3pkz
5zW/OfO8622JSH8g0q+0lWRdyaebuh7opAe2deHZSXd2eXXWA482PF89I9LVztqcxa1er69k0XSy
fL5en+kkv4fIawV8l1s8EGfZ/WjDs3+PSGdyW9wRwlKplN/HHZBYKZVGOsDmUWBRB9/l1gOIs+zu
wtP3ZheeuRHmEr5/4LkgB2Y3FbK8Gz0LuasjxDNDpZG25zY54Dk1VBqXiuaJnnzN3tdW+gWR/lAk
5qAJOTC7qZALu/As5K6OEI/A4FFtl1MOeJZpcPpQwHNlcrJdZ0bqva8G946bPwTmV9r1aA54Ans1
tf8wwHNyE878AMBzstw+lsLmV0ul8vwWwnMc+MvJw4cBnrDsbbuvfwDguQXmz9TbRiciLnPlPqO3
7ToHz50749PShzv33IL2eT8N7ltgfruRUwXETHgS/07As3d3X9/uXQcP7sK/vSGQduG5mQaFupvZ
9/yww3PHLoDkzsFBDJ89OwrAU7eZWrq3tbWeY+W+Be3TjZ5t97c8g3sHo2fvoYEjB3r7th8+vLOv
98CRgf2B+BmJnl145m3kbvSMempbxr5n7+DgNhjVxf+2DQ7Cf73UJjwXTk5AOv5qRDXYzk+SdqPn
zFSlMhk4mJypT1YqlanYkeVMXawKvOiZwU5bsFKvVipZx8jz9Uqlap/p+/BENaeC59GuKoHBY74O
1lfYbltApFRZUkbdoe1CmWFtWNuB72A97kTPFTSkGltqdWDuub1nJ43oO3YER/e24Hn8Mb1fv2/C
vfFx9djje0XpPvkneuaOO8iUaP0+P447v5jGOA5nKox81EPo/PiwrDQ8ZsNzfizMblyzG5ONNKXf
y6NT0WhQxV1FIYXBx4FnfVTRlMedJfRKRVcXlgXMn6/qzGGtw6SyqzRiqWW7g2njIkx7szwWXdDX
x5Rew6i6Fjylc0uloYo5hzLWanjiVpPrMWCE5/Gp0fNQYCjv3e+GzzbgeWYfP0zae9JSbkKB0pDE
5q1BeFY1mrCR1fEZ8NcNq+FsH9ytICZZMujNZiea1mYQuekA54UmDVNrW/BcgcaiVLZOHKa4ZXCw
45vPcpTl8xqcyJPZzLNFEWljw9MyP3z+MWPpoeE5w5UF/FHf8OE5A/Id1vOQhUdXKfDctmtgf4+L
xZ79R3bBaM9TcXged086jxt8XqWwmg1PHKnBNyPwB0ZVyQNxVh6fgotd4wgGCiLYBkOjMJLV61UR
nobZwbL05fAY8hMQIng67Ah3gt0YzCDqVdGwyFKInUSx4UNBOEEolUahSl3EuLIevTk8VxA3QxWg
mRJRm3ES1YdARhXDEmjom48U5VEYTuuTkrkwDNlNSW+QzYpSKCME0Va8BU/Ra4fBa4IoGD7hYABp
xiuVcek72Q4rkD08jvyVv7VLfXgmYPOoHT7hbKCEuqZFz0ODA95cc/fA4CEHsoXh6aFzzx6KnyF0
pl6ocyZf8Foa042ALzp+wqPpofOIJuMR0Yg0dmHPZb7MwQ5GdqhDsWlKDffOgIVBgkJmHVtP6cnh
yU+8V1BLijqITopBk1qEbb5lJGIE8FLWCEdv8N5q3CFCv+55HJ5YZUj7YjJ4/CE6TUUDF/2gzK5S
puwlQyo/AE8NRuMwDdhUeO4f8Ef3gUObheeCHrwf6+/Xg/xePf9UiyE7vKZtStnt44wT6DvlXYY5
HWS137Gjl9lk1JDmZgdAGsq65gNQYaMrtphqbwZPPFFkSyKAjWY7z/DMcO/B05pU40TBsENvaIg5
7kBC1REYPPGRDzLuBBHDM3YaIyK2scQcGYDnitutMEIIddLgubuv14Mn5LgRtWj0VAjsX0D5JxVW
J6TpFFgfOwZLdz0LzQ9PCD7WMAHvKs447YGQ1IEVYwdfJhvS3Oxc/wYaEprFQjAiUZKZBkOt+CyM
vYMqoaPwVHjqGZzWBojVcbe3OwF9RzmOIQxlZnQ6CHO8P0X3PcHHin8Anjgjs6br0FtksE2DZ/CM
qK/PzS4IzzMyMj6ufPaqfN0rX3U0PSZfi24sQSe1/Wnc5cAzAQ+okQ4b0Rq3iDQ/O5d7AJ4AAHtF
D1CUGabBALL2qoqKXKQxxDHd/SFCD6mCHtGuqF2FTWcxLsOnjNtgGJC5VVF4wqiv3B2CJ84J+MQW
fCVjR9rSyFsXyUlnz+aWRs9IONJuknyX88uTalBXsbQwPKEXmrW6sA8aRA53bnuYWRKOoBaciDQ/
O6eVAugEebYUDBlSWdNgHoRxUBQ0oc0XVTcOTycWCy5KCdcdNiil/p5jfLNwYcpzo/A0BSF44r4K
WwSi1RKtcXj2HBzAc3Y37d41cLDHCqAFo6cczZ8joxQkBSIVVPfpwqLRE6x0NrPBf7L54u0BjWiv
tIk0PzsY48LrITITkOGs5ylU8hDpbgBqXWIC0gZ3bGV7bDbtngeeJtYGupvIwkmjNSS0C08zlql+
oUJtHJ67BweD4bPHPTsqBk81mJvp5AIb7NXYrob2wODuf7rJ2wdGQLd5qTjaHqbJdCNo0gLscImb
Pg4CvpyeQ4cmBE8YKl2QQ/cS0T8WntPgCfinlbqyjSYUOeDJdzAi+ASFbYe3C0+UZdxjon4KPA8e
CsPz0EF7dC8GTxUstb1nTk5IePZjjhrbxaIJkxc9/XDK28c9JZsXG4wZ0RNc7Iy6uukKsMMdnNJ4
2jJCj9LaNNjX1G1L8HQ2yZKZOh4TITyx2YO7jmnwhJDkbCfiTn7WYEIIi0LNYJVviYlcvw7YUBkZ
ETuisl5wcMetT5qW4bxLuTIOTxjAg2sjL78YPBUaF84cn3ic7yIhPNWqaQ/ZXxCeEC6k8/Gsd0Qf
jGS0h+dimgcUYSe2Tstj8e+2qRPAOffYCFJDkv2CNIDtKTlRhlNytcetukoUKmnwJCwaPEGXyA1P
MN/pt14M9STYeq5UR5Whwto0ePIgAUrqQST1UDN0AcTbV+prC57uuZGIngqeIpC2Ez2hrcYmK6PW
IduIOl6Pjmb++keTFmGXzEupw5PhEArtNsxwKWlH5HyA4AksqlXTr5CmPCKOCzoFTxKVY3D3+20x
eM7TQTFET/ROGjxxFqu2bPmENhWe+wP43OyZu4qeWwVPGZVk48ORo8FKtD38GMPgmZsdQkgCtMyu
P5j2RHxRGhoZr7BrPByehmgET2A1g2gkKxg9Ow9Pe73HupG4IVAeU6erGSt3sU2gQiYPpCnw3Hnw
yGHv/sf+w0cOOh92bDp67ut/ZuIkXqzrQPQElwyNhO5wtQ3PfOzkmCwOtktDgSFewhNiYeDGnQPP
4VGrXwnOj270jMETJ5BDZrWYCU8gUKssmOLQNDQteu4a9A81ewcG8fp8+1dCePR8rH9i4gy78Kng
qbbooVWKzz2HY7O/KDzjgzuufPOy02FOXKvj5yiqgA1e3hDJ4Rm5tdYpeJKxUXeYngBqtT/3FDdC
2DwnE5649Sn2qHART6vA1DP3nsP+oebhns2duatjy/7jgR/2UntMe2jL3oPnc/0iMUinrdw5EKLt
EV8auSv3NHamDEAdOgqE3NjCPrpyt+cGweoZK/fAPlXupVGOlTv0RfsYhOqAF6zzu2x4giVin8Ha
Dsu6Ld+3e7uJlNud8yJZUmxwV/uez3gxBDPUjJTuLxXclqczlgDzKDy9vTtauRdhxyTiQZ9/o07t
EIXMJnhCy8R+Ewt42keiilEaPKEssO8pB9wc0RPNz/gFufjGkgvcbHj+m+rAsOFi5gQZ8OzdfujA
dtxKwv9vP7Afnzd5HVmeGplDTd5gCo6E3YLwxCPMvKMx+ctvBWq6Auy4Ff71RSj15xBUhRoZz/iD
3Tax9gU5SRo80UQ75JqBMwc80Zvhi6ukANuhlHnkVTpMVrTZ8Gz+Zqn0Z3JsN0pnRU84I8LBfAd+
0XEofI5ULHrqg8tg+DymwqcevIvCk+2Yuc0cbw+6f6CrEGkBdg5k/CDo7/778ERARM6ezGm5bVga
PH12ZgMgDzxhjeJGX8er3k04QmGcf3hbXo7qnxHXAtiMJAueu4+IbzQHBg7s7tt5+EgHPoXTe+8c
n3p9pCef+9S5UVF4Qm+O/QBLqr/sa05EWoBdJjzdu3Ksgmkw++iZ8wx88CCKU+Hp3lPD5YeaK+aB
J8ZG6/qoH9ndWyObiJ7Ju0+WSudphSRlZcKztxcmnPCNJv63F3+TYbODu16O79l3XCyBFk4+t4+u
16k7IXv2HsOyBfVhR8Z9T9bbzLXF/NETgWMd/plWyc+Oi3Ov8cgyAFLk8qSBJ45skfE0cvcSjw6M
bAdPCBY+Y8VVm1oU54EnQiXjkjVK4JcRCZ7moq3ULntwT5IvlEpHoRvy7YIseEow7ti1K/gLDG0s
jZJELY7kSbu+4KkW63STHman5qOjNHjaS0T0QvjqULw9EDhWJUOanx2DJ1YKYMzdajE12AIDVQkP
78g1cHMdF3bxswfEtJmMYwRm37ZYgdHAhy3YMXy6p/ZOt8eTodBnntgT+DIgDzwbpdKnv2TvBeSD
ZyBmmqyCc092JZ4dHelLSvrGp3WqlAZPDDjsGwn8KsF8dQi9VoM1BZ7ik8dRc+OCkeZlN8Y2oCEY
B8MkNrb5YBEWAXqPk69/8aIAv1piPvBBVYY1pOoa/2i+9YGbBTr8AoQ+U8FjHAqGuaKn+K7QfB4V
+tZIfLpnFCYUuh/I5IEnRutP21dfHgY8zScbBoT7dK8MfCeX/tvyMIGHszP63QFx0AufQ67AvYpJ
9Ukj8k6Dp/AxHNdDd1efNFIj52MHzofjO6hUnxQnm+EAKL4aGxbHmSDG3ODk8BSqlMfwOHMGPnEs
M6RrVer1ChDp3oS5ZL5rpPxSc2SyDr6wzwvywVN+qyw+LgWZwU6nFZ7Bezjim08zmoNkEUHhdxzQ
LJrkqIUjeM1eQmLItVdjDwWeif2duwApXaILlMV+SUTYK7FlpkDWl9mIOumVNHiK9aKVzLiUix1d
fpBMYjc/687H9mqWZe0eWt+528xw5KekQ5llvgdPiU+d2GlrTnjajglOi8X3pCzprTH8FjVUEF25
y00l23kPB54wwH+ED98fOUboBCQ5Zb/Ky9wVD+LzKCz52Ax9/gviXabPaqjE20OwnH/e1Hn69/jV
ylzsJj9rqj8fvJgpu1L1aUP3qWrgQ2JcRXzO0Dz5PB+sZ6jkafYVsDT/S6E+aLwDFE8eZZugeeGZ
1D+jtflUtNcx48kobBdmLDSEZy1ET9hJ4um3QZa1U6v+ZY7fEMm7RpQrQ9YN4EZmvSKT/Us1C195
5Y9//dlfhPTRZ3/tj/7klVdeu0UMFr6KZR8VZc86ZSEpF0/XTkB6Q5Wtn6vVTnzxBUxfPFGrvXxR
5tdqtSu89hXIMO+rZ6GSqPPCiRdrtcY6FeVid/FlU/2l2jlT29a3eeF07cVxJealWu2cLL5Qq501
hFfO1l5SqoxXa7XXjdbrUHJU2FWtnVZmJcklaf5fIAewwjIySZrAXNR54UTt9AUjxXUH+keWeo6R
Go+/WHvZ4a24ocJSxAsnjFEg+XStqoxFQ0571tqSkBvg/LcsIQ8Fnte+qjBr/nzlvjL22t96ZQ60
HYiC/8H2s2eV76G18PUCpgagppYHnpJHQ9R5HZ/JRx67SyG0X4IqL8vqQvxqqBslq4L12VmkO4fP
CpQWPGeRRvKaPYvMCOtSFSiZBRSShigazRe8PHg2UYwwTCj2elMrlhOekrsr07JOKnyO/K1QriVf
unLlorRWFRhrPXjiuebRBue+9fD8K5lY9Lz21yqP/fkXjc5AGa/rtfv6qVOnWIS5DK9fVhAC2vWL
ukUg346ekKGZfRMrLek35KhJ87JrzGpENi9A9dMEA6bv6mkouEAlzUtnlZQ3T52i6Imq6HyouzpL
s2BU5bSyrHlJZzeB6ZfJsLOOkc03oJISKRR7Q4t33ZGQO64wx1xk3mxeYMHXmPV1S+FLVBkkM2MT
w9VYyyUJhr9fKj196hQfe7Yenn8j04/Jout/r7Lgz2t/p57V2H6flf0DkZm6flS6PD1NPof5zvT0
9PkQNhIosGY1SKm4AYvp84yzIc3PjlXHSpd9RZtfn55u3AiF1YvT02rgS+ah7mIw9K5BScO3bAnM
N+15zjFyFkqNyJU3pqfnFHPXHegfWcQcg48BmVy/OSCheQarDHpNc2MNV2MtkyRY3vjkxz/+O9PT
fOq+9fB8TaafklH/rHL+9QdiQL9/7T+/9tp3VOlbquwfRdntr7l1/ZZ7u9H4tsn9ZqPxZrB1k0bD
xsYNyJCUzW9YLBJGmp8dF/pmo/EtX4nFRuPf7wV1AxMUfROUoihu036r0ZgJVLfNByKOCbSR98kl
eFcId92BRkuBxjEJmD8bVlnrhsS8K1Jl0IQ1C+dqrGWSBL+/fOKJj/1Ho/ENZvjWw/OfZPpfLfTH
KuNHTIvbt+XL/6mytx7I9+86dQOt+8PZ2R9S9srs7PlWGJ6zs7NrvGQNMuT7ZbcSkRZgx1mDSiyg
qJKmq4CpYehBFb+mIER1Lf1Vdcv85KJNtOiyg3IFJo8ducM4Bsyfja3ylHhgaClMlc9H3W2sNZIE
t9bvfuITw8mbs7OsRyl4SmnsHxjUd4fE2j38zw/q3DAcKPctmWhl/l/y/Sehaj+QZd/REFO0ZlXv
V1qem1um3CX+YtPOzc1Zrl6HDEnx7bk5+9oZkV7Oz44Le3duzh/cV0KZshaYoOhdJRmE5+aCg75l
fgIKMyNbwM6eTfyMjPYkUYlxzOLc3Nvpjdt0JVDluLuNtUaSkLL4yfITkwmoyAy14Ml00feKBDwz
AJhe/D2Z3lNULfn6/WCl78tCgu7/2HVDdVYXF806eXFxMTjxROMXFzd4/Q3IEO/4YEdcIi3AjrFu
vb24aHqMLnhncXEt4igw4R2tSgwPwDM4b7XMT0AIM3J9cdHtJtw0yx3oH6keOaYFWRnB84YrgSq7
5lJBQtYaSVLwn5bLH1tJWpe5DVsPz/+W6eeqbX4uX68Fm0rRqqE9SX5k1w3VubG0RO3WXFp6N9ZX
lpaWLOQCrZzlAQNnP0+TFmFnxLaWXVGi7B1HPtMTNJBwhofwllTSCvKUVRhsQTQzkvgaWUAgyT1+
2h0JOQYfIjMlzXB1ackeeKjyz5wSKkCNVec1echv/XNP/TKe8EFN44Sth+dVmfS+5i31fvXqtWu3
bt3R2cLg+6qM3HnNrhuC3vryMnXxjeXlSPPCCLq8bMMTMgQ/YODEJU1ahJ1WrQXslpdv+ppqcQEb
oIpU+wazxaZrxqpz82EfyjIS3tzoBxLWBGfXHZghRZIoMN8fBGy1PAlUuQWVuVuNAWStkSSYnn/q
qV/C239Yk3rF1sPzJzJpHL6n3s2fn16/dfvOA4yY92XmdfLBdbtuCJ43V1cJDPC8unpj7eZG0+/1
UGLDEzIEvzXGQArQpEXYqaYFZq4gWdKSqq2HVAM5EjOi9traxkbL1b+ptXVdwM0XDJiRvmUJifK0
JAEkimhDbpd5ngSjJz6tmWW/KTBsLaNaf/75z8vLezdYg2w9PK/LpAfsO+rd/YNz0wcyU09Tk+Q9
u27IT821NbPTvcbSzZvNJmtmKLHavAUZgt86Y6CcrkiBtUkZ7BCBNyV1cPaL4iit26qBHBnlQBVG
g0TaYtLWdQE3XzBgRvqWJSTKdUei3ZGQKKKNw9OTwPQU3qPuaAoMW8uojbU1FWa43Bg8r4p1uVq/
x/XLUXJLJg3P++rd/YNbSw9kpoHnbbtuEJ7r6wae8NxqNjc21k26eVd2Ycix4QkZoqDJGEgBmhRL
8rJLWlLo3chsrbW+fhN43eWqrd+VmoMcuUyBQiHwpqU/coTq4VWKrT0wYPKRneMyEuW6A42WtCSK
aOON7Emw9GySHXeF3ZKPYWsRM4XgUYfdGDwlK7V+j+uXo+S2TNptD+QruKF1//6dO6r09u076Bn1
RlxVcdoE/d7GBg0hrY0N3R6t1r17CFRIshgebHhChigABk4jatKi7EIDN5mixaHhLVDtrtDN1gD0
1ToKGqm/gKepbrucmw9NbxkJb+6mOmRJY113YIaCp36KyjQaEDud5dRBI4QNxljmb07MfI1W6BbZ
enjekYn8Ll+NiS2ZIeamDm0C+OV1Q50Boo2BHbSoQ0PFXpHOAAqnEmUUYAeksS0tqVGQl6xCGli2
2NVi7O0qNpVvGWohvRU32hRlmcQ0J6+H6kB/FJ1Nwd+QMGJSzFZu6+F5XybCkPOaQBCl8gfymTaW
1Hta9IQoaYrv3XPDBRV7RZRRoCSJsbO0CPUirOnma81NZW6LakxVDZQMesEW7Ajx3ZHD6CRO4xsW
951vrLKfacxqW4wMydbD84FMpG4r/C6cr8oeUKh1aIPhkzUbdFM3euocr4gysHNbtXhJTna+YE/V
kAJKbg6BnpKav6W7I6Mtd+DkQ3WNbKvivnPtN7wiT7wNiGTr4YkWWHY6GdarejEzMKduAJ9p7SMm
euRru3LISy5pKqY5u+yGNJoYYDEzVWaB7hWqEe1oROyLTClqw6polUx4Bt2ZDk9ZZXMLpAx4hsGq
msmrGxw3u5kfWA88BHiKkKYDagy8OoxmR88PbNN0DYNfCcnhhM1FzxwCuiRdD4Q90IVnFxmPsAe6
8HyEG6erWheeXQw8wh74f286vzmNR37YAAAAAElFTkSuQmCC

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/calendar.png

iVBORw0KGgoAAAANSUhEUgAAABEAAAAPCAYAAAACsSQRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAYdJREFUeNqkU8tOwkAUPaUvWlCQuGkTExM/QJJuXJjowo1b3fEVfgj+
DPyAK9zwA7BiA2xE0Br7hHrv0EFo3CAnOT135rbnzp2ZKsjx8HSVNR9PYWtVVPQGqvoJaZ1YIx7D
JrVJkzTG4vsNH8E7PsM5/GiBEhs4jntjqDbUkop4FSFZBaQhaZQzRppT10yYmkU0YRB11VybMCz1
CBWthjRL6KNwzSUz+iWZMEzdIgM2Kgtq0sSpXuD67A5fyRyaolEFerFUhiGUK5ahl9aVAQUNy0WY
BoiI0uS2YbvwnHv4vo/hcCgml8QgJxDn9GVdeJ4ndNOOBJswHcfBaDQSymPDMDaxzElIkzoOgGyn
WVzNdDpFFEVCeSwaiuOdXNFkB67rin4nk8mmb26B5+VecK5ocr5tMhgMxEuz2QzdbldU5z3gfeFY
5nZAly1rt9sZYzweZ/1+X8SdTkcoj3lexts5xp/t7LsSjVZxWdyPVqu19+mI4+31Xun5/K8jVvjn
I3055J78CDAAFQT7EAbzKKsAAAAASUVORK5CYII=

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/qsearch-go-button.gif

R0lGODlhFAATALMAAEiiHbrcqa7WmoXDZni7VmWxPzSVB9/r3vj6+uXy4PX2+Ov15czlv/D37dbq
zTOZACH5BAAAAAAALAAAAAAUABMAAAR08MlJq2XMaXdOSsvSjI2CSNjGeaA4Kiaabd0XkuX5pDR7
k7HdTBMABFq4II8oIfxKyqFDMAEwkrqlI1B9DIBZKVUCKDwEr7CK+zAAvK+oavywYmXr5sGVxm+o
Akhgfho1glBqPTZ8OYQri3dCKoZPjRaXlxEAOw==

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/printer.gif

R0lGODlhEAAPANUAAJSUlMzMzK2trcbGxqenp9jY2JiYmNbW1paWlnp6etTU1NDQ0M7OzsjIyKCg
oMTExJ6enr29vbS0tH9/f7Kysq+vr+7u7oGBgZycnJqamtvb23h4eJKSksrKympqamdnZ4ODg2ho
aGxsbPX19WVlZaioqNLS0vf39/Dw8MDAwJGRkX19ffLy8r+/v6qqqvPz86mpqfr6+vn5+cLCwsPD
w/z8/N3d3aOjo3d3d+vr67u7u6SkpLe3t6urq3x8fP///yH5BAAAAAAALAAAAAAQAA8AAAatwJ9Q
IOgZYaUSgSBs/gS/Wkx2Gr1+O+cv1vtRRyMW6nfTply/6kts+TkkzlbpF0ZZLDk3pSmKMLVCEBUh
PyIaIBeJFxOMEys+PgMfIgUFBwomCwwBAQ0DAw8zk5eZC5wdngk0CSkfHjw8EhIUFBVEPS5IBCQe
Dr4OEBgYGQbFCAAAvA6OkD4Jzwkb0sk/HiueAzQzKS0RETo4JE0YNhqVpAumKk7ExsjIHCrrP0EA
Ow==

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://ted.europa.eu/static/images/pdficon.gif

R0lGODlhDgAQANUAAMrKyuihoez29+v4+K6uru7t7ZV+fuOWifilmPLg3Pj9/eeXlfHy8viJd+fn
5+xuWuvY1fa1rfgXAuwBAfH29ry8u/RTOuhcRv39/bGxsezKwvJBQfb+/vX4+PJdXfn5+ff399/f
3+2BbuUCAqyZmfGBbu05ILy5svZLMfzs6eimpvCajPry8JeIfub29/M5H/MxMe6JePD9/vJiYuxY
QfvGvfhDKPLo5u2pqfv7+/z+/tXV1b29vfz8/P7+/v///yH5BAAAAAAALAAAAAAOABAAAAatQMBu
SBwCHL8kz4dp6lKsD4jHUPp6WJ2lxHH4eIXfEtvT2R6KkINBcIyzDZGO4QgxMsucXocwdXQgDD14
Pno5Og00JTo6PT6EHx8KKQ8UKAg1LI8VPiAgHAg0KyIvJhCbPh0gERYHEDIJGgwYBBU6NzEXBzIU
BQy9H7UKGrouA8fIHLURAQsBOCoqAdLPBCcSI9kzHhse2SMTJNcT5DAwGxvk5CQhLQbv8PEGO0EA
Ow==

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/css/ted.css?1.08.06

HTML {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BODY {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DIV {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SPAN {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
APPLET {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
OBJECT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
IFRAME {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H1 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H2 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H3 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H4 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H5 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
H6 {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
P {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BLOCKQUOTE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
PRE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
A {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
ABBR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
ACRONYM {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
ADDRESS {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
BIG {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CITE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CODE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DEL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DFN {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
EM {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
FONT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
IMG {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
INS {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
KBD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
Q {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
S {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SAMP {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
SMALL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
STRIKE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
STRONG {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
VAR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
DD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
OL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
UL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
LI {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
FIELDSET {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
FORM {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
LABEL {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
LEGEND {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TABLE {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
CAPTION {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TBODY {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TFOOT {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
THEAD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TH {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
TD {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; FONT-STYLE: =
inherit; MARGIN: 0px; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; =
PADDING-LEFT: 0px; OUTLINE-WIDTH: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: =
inherit; FONT-SIZE: inherit; VERTICAL-ALIGN: baseline; BORDER-TOP: 0px; =
FONT-WEIGHT: inherit; BORDER-RIGHT: 0px; PADDING-TOP: 0px
}
:focus {
	OUTLINE-STYLE: none; OUTLINE-COLOR: invert; OUTLINE-WIDTH: 0px
}
TABLE {
	BORDER-SPACING: 0; BORDER-COLLAPSE: collapse
}
TH {
	TEXT-ALIGN: left; FONT-WEIGHT: normal
}
TD {
	TEXT-ALIGN: left; FONT-WEIGHT: normal
}
BLOCKQUOTE:before {
	CONTENT: ""
}
BLOCKQUOTE:after {
	CONTENT: ""
}
Q:before {
	CONTENT: ""
}
Q:after {
	CONTENT: ""
}
BLOCKQUOTE {
	QUOTES: "" ""
}
Q {
	QUOTES: "" ""
}
.clear {
	CLEAR: both
}
HTML {
	HEIGHT: 100%; FONT-SIZE: 100%
}
* HTML {
	BACKGROUND: url(../images/minus.gif) no-repeat -1000px -1000px
}
BODY {
	BACKGROUND-COLOR: #fff; HEIGHT: 100%; FONT-SIZE: 0.8em
}
* HTML BODY {
	FONT-SIZE: 0.8em
}
P {
	FONT-FAMILY: Arial; MARGIN-BOTTOM: 10px
}
LI {
	FONT-FAMILY: Arial
}
INS {
	TEXT-DECORATION: none
}
OPTGROUP {
	FONT-WEIGHT: normal
}
CAPTION {
	DISPLAY: none
}
LEGEND {
	POSITION: absolute; LEFT: -10000px
}
.red {
	COLOR: #ff2222
}
.bold {
	FONT-WEIGHT: bold
}
.hidden {
	DISPLAY: none
}
.italic {
	FONT-STYLE: italic
}
.margin35 {
	MARGIN-LEFT: 35px
}
.disabledLink {
	MARGIN-TOP: 0px; DISPLAY: block; COLOR: #888; MARGIN-RIGHT: 0px
}
.imgButton {
	WIDTH: auto
}
.firstSubmit {
	POSITION: absolute; LEFT: -34567px
}
A {
	TEXT-DECORATION: none
}
A:hover {
	TEXT-DECORATION: underline
}
A:visited {
	COLOR: inherit
}
A.external {
	PADDING-RIGHT: 12px; BACKGROUND: url(../images/external_link2.gif) =
no-repeat right center
}
SPAN.underTable {
	FONT-FAMILY: Verdana
}
INPUT.blueBg {
	BORDER-BOTTOM: #7f9db9 1px solid; BORDER-LEFT: #7f9db9 1px solid; =
BACKGROUND: url(../images/input-bg.png) no-repeat left center; =
BORDER-TOP: #7f9db9 1px solid; BORDER-RIGHT: #7f9db9 1px solid
}
INPUT.disabled {
	BACKGROUND: #ddd
}
INPUT.error {
	OUTLINE-STYLE: solid; OUTLINE-COLOR: red; OUTLINE-WIDTH: 1px
}
SELECT.error {
	OUTLINE-STYLE: solid; OUTLINE-COLOR: red; OUTLINE-WIDTH: 1px
}
TEXTAREA.error {
	OUTLINE-STYLE: solid; OUTLINE-COLOR: red; OUTLINE-WIDTH: 1px
}
UL.square {
	LIST-STYLE-TYPE: square; MARGIN-LEFT: 25px
}
#mainContainer {
	POSITION: relative; MIN-WIDTH: 1000px; WIDTH: 100%
}
#header {
	Z-INDEX: 0; WIDTH: 100%; HEIGHT: 140px; OVERFLOW: auto
}
#header H1 SPAN {
	DISPLAY: none
}
#header .noscriptLang {
	Z-INDEX: 6767; POSITION: relative; MARGIN-TOP: 30px
}
#top-gradient {
	BACKGROUND-IMAGE: url(../images/top_gradient.png); POSITION: absolute; =
WIDTH: 100%; BACKGROUND-REPEAT: repeat-x; HEIGHT: 13px; TOP: 0px
}
#europa-text {
	POSITION: absolute; PADDING-LEFT: 25px; WIDTH: 30%; FONT-FAMILY: =
"Trebuchet MS", Arial, "Sans Serif"; WHITE-SPACE: nowrap; FLOAT: left; =
COLOR: #003399; FONT-SIZE: 0.9em; TOP: 11px; RIGHT: 0px; LEFT: 0px
}
#europa-logo {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 62px; DISPLAY: =
inline-block; BACKGROUND: url(../images/europa_logo.png) no-repeat left =
top; HEIGHT: 25px; VERTICAL-ALIGN: -8px; BORDER-TOP: 0px; BORDER-RIGHT: =
0px
}
#europa-logo A:visited {
=09
}
#europa-logo A:hover {
	DISPLAY: inline-block; BACKGROUND: url(../images/europa_logo_hover.png) =
no-repeat left top
}
#europa-logo A:active {
=09
}
#top-menu {
	Z-INDEX: 1; POSITION: absolute; TEXT-ALIGN: right; PADDING-RIGHT: 15px; =
FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; TOP: 13px; RIGHT: 0px
}
#top-menu UL .item {
	DISPLAY: none
}
#top-menu UL:hover .item {
	PADDING-BOTTOM: 1px; MARGIN: 1px; PADDING-LEFT: 1px; PADDING-RIGHT: =
1px; DISPLAY: block; PADDING-TOP: 1px
}
#top-menu UL:hover .item A {
	BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; =
PADDING-LEFT: 12px; PADDING-RIGHT: 2px; DISPLAY: block; COLOR: #339900; =
BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; =
TEXT-DECORATION: none
}
#top-menu UL:hover .item A:hover {
	BACKGROUND-COLOR: #339900; COLOR: #ffffff
}
#top-menu UL {
	PADDING-BOTTOM: 2px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: =
2px; WIDTH: auto; PADDING-RIGHT: 2px; FLOAT: left; LIST-STYLE-IMAGE: =
none; PADDING-TOP: 2px
}
LI.top {
	DISPLAY: inline; FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; =
COLOR: #bbb
}
.top A {
	COLOR: #5e6a77; FONT-SIZE: 0.9em; TEXT-DECORATION: none
}
.top A:hover {
	COLOR: #297700; TEXT-DECORATION: none
}
.noscriptLang A {
	PADDING-BOTTOM: 1px; OUTLINE-STYLE: solid; OUTLINE-COLOR: #000; =
PADDING-LEFT: 2px; OUTLINE-WIDTH: 1px; PADDING-RIGHT: 2px; FONT: 0.85em =
Verdana; COLOR: #0000cc; PADDING-TOP: 1px
}
noscriptLang A:visited {
	PADDING-BOTTOM: 1px; OUTLINE-STYLE: solid; OUTLINE-COLOR: #000; =
PADDING-LEFT: 2px; OUTLINE-WIDTH: 1px; PADDING-RIGHT: 2px; FONT: 0.85em =
Verdana; COLOR: #0000cc; PADDING-TOP: 1px
}
* HTML .noscriptLang A {
	BORDER-BOTTOM: #000 1px solid; BORDER-LEFT: #000 1px solid; BORDER-TOP: =
#000 1px solid; BORDER-RIGHT: #000 1px solid
}
* + HTML .noscriptLang A {
	BORDER-BOTTOM: #000 1px solid; BORDER-LEFT: #000 1px solid; BORDER-TOP: =
#000 1px solid; BORDER-RIGHT: #000 1px solid
}
.logo {
	Z-INDEX: 1; BORDER-BOTTOM: 0px; POSITION: absolute; BORDER-LEFT: 0px; =
WIDTH: auto; BORDER-TOP: 0px; TOP: 40px; BORDER-RIGHT: 0px; LEFT: 17px
}
#po-link A {
	BORDER-BOTTOM: 0px; POSITION: absolute; BORDER-LEFT: 0px; WIDTH: 78px; =
DISPLAY: block; HEIGHT: 66px; BORDER-TOP: 0px; TOP: 40px; BORDER-RIGHT: =
0px; TEXT-DECORATION: none; LEFT: 17px
}
#subtitle {
	Z-INDEX: 45; POSITION: absolute; WIDTH: 600px; FONT-FAMILY: "Trebuchet =
MS", Arial, "Sans Serif"; COLOR: #707e90; FONT-SIZE: 1.2em; TOP: 89px; =
FONT-WEIGHT: bold; LEFT: 113px
}
#langbox {
	Z-INDEX: 68688; POSITION: absolute; TOP: 65px; RIGHT: 10px
}
#breadcrumbs {
	BACKGROUND-IMAGE: url(../images/GradientGreen.gif); LINE-HEIGHT: 20px; =
BACKGROUND-COLOR: #eee; MARGIN-TOP: 116px; PADDING-LEFT: 15px; =
BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: "Trebuchet MS", Arial, "Sans =
Serif"; COLOR: #ffffff; MARGIN-LEFT: 5px; FONT-SIZE: 0.9em; =
MARGIN-RIGHT: 9px
}
#breadcrumbs A {
	COLOR: #ffffff; TEXT-DECORATION: none
}
#breadcrumbs A:hover {
	COLOR: #cccccc
}
#ojs-issue {
	BACKGROUND-IMAGE: url(../images/GradientBlue.gif); POSITION: absolute; =
BORDER-LEFT: #ffffff 3px solid; LINE-HEIGHT: 20px; BACKGROUND-COLOR: =
#eee; PADDING-LEFT: 15px; PADDING-RIGHT: 15px; BACKGROUND-REPEAT: =
repeat-x; FONT-FAMILY: Georgia, Serif; HEIGHT: 20px; COLOR: #ffffff; =
FONT-SIZE: 0.85em; TOP: 116px; RIGHT: 9px
}
#calendar {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 17px; DISPLAY: =
inline-block; BACKGROUND: url(../images/calendar.png) no-repeat left =
top; HEIGHT: 15px; VERTICAL-ALIGN: -4px; BORDER-TOP: 0px; BORDER-RIGHT: =
0px
}
#calendar A:hover {
	DISPLAY: inline-block; BACKGROUND: url(../images/calendar_hover.png) =
no-repeat left top
}
#menuTabs {
	MARGIN-BOTTOM: 5px; BACKGROUND: url(../images/menu-tabs-bg.gif) =
repeat-x left bottom; HEIGHT: 37px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 5px
}
#menuTabs UL {
	FLOAT: left; MARGIN-RIGHT: 5px
}
#menuTabs UL LI {
	LIST-STYLE-TYPE: none; PADDING-LEFT: 15px; PADDING-RIGHT: 15px; =
BACKGROUND: url(../images/GradientBlue.gif) repeat-x left top; FLOAT: =
left; HEIGHT: 24px; LIST-STYLE-IMAGE: none; MARGIN-RIGHT: 5px
}
#menuTabs UL LI.ted {
	BACKGROUND: url(../images/menu-tab-ted-bg.gif) repeat-x left top
}
#menuTabs UL LI A {
	FONT: bold 0.9em/20px Verdana; COLOR: #fff
}
#menuTabs UL LI A:hover {
	TEXT-DECORATION: none
}
.quickSearch {
	FLOAT: right
}
.quickSearch FIELDSET {
	PADDING-LEFT: 25px; BACKGROUND: url(../images/magnifier.gif) no-repeat =
left center; FLOAT: left
}
.quickSearch INPUT.qsearch {
	MARGIN-TOP: 0px; WIDTH: 250px; FONT: 0.9em "Trebuchet MS", Verdana; =
COLOR: #3e5169; VERTICAL-ALIGN: top; MARGIN-RIGHT: -8px
}
.quickSearch INPUT.button {
	WIDTH: 20px; HEIGHT: 20px; MARGIN-RIGHT: 5px
}
* HTML .quickSearch INPUT.qsearch {
	MARGIN-RIGHT: 6px
}
* HTML .quickSearch INPUT.button {
	MARGIN-TOP: 1px
}
* + HTML .quickSearch INPUT.button {
	MARGIN-TOP: 1px
}
.quickSearch SPAN {
	MARGIN-RIGHT: 5px
}
.quickSearch A {
	FONT: bold 1em Arial; WHITE-SPACE: nowrap; COLOR: #013499
}
#menu {
	WIDTH: 182px; DISPLAY: block; FONT-FAMILY: Arial; FLOAT: left; =
MARGIN-LEFT: 5px
}
#menu A {
	COLOR: #33f; FONT-SIZE: 0.9em
}
#menu A:visited {
	COLOR: #33f; FONT-SIZE: 0.9em
}
#menu DIV {
	MARGIN-BOTTOM: 15px
}
#menu #browseBy UL {
	LIST-STYLE-POSITION: inside; MARGIN-BOTTOM: 10px; MARGIN-LEFT: 0px
}
#menu #browseBy UL LI {
	BORDER-BOTTOM: #bbb 1px solid; PADDING-BOTTOM: 3px; LIST-STYLE-TYPE: =
none; PADDING-LEFT: 20px; WIDTH: 160px; PADDING-RIGHT: 3px; BACKGROUND: =
url(../images/BulletBlue.gif) no-repeat left 6px; PADDING-TOP: 3px
}
#menu #browseBy UL LI:hover {
	BACKGROUND: url(../images/BulltGreen.gif) no-repeat left 6px
}
* + HTML #menu #browseBy UL {
	MARGIN-LEFT: -13px
}
* + HTML #menu #browseBy UL LI {
	WIDTH: 154px
}
* HTML #menu #browseBy UL {
	MARGIN-LEFT: -13px
}
* HTML #menu #browseBy UL LI {
	WIDTH: 177px
}
#menu #browseBy UL LI.selected {
	BACKGROUND: url(../images/MenuActive.gif) center center; FONT-WEIGHT: =
bold
}
#menu #browseBy UL LI A {
	LINE-HEIGHT: 15px; COLOR: #587ec3
}
#menu #browseBy UL LI A:visited {
	LINE-HEIGHT: 15px; COLOR: #587ec3
}
#menu #browseBy UL LI A:hover {
	COLOR: #339900; TEXT-DECORATION: none
}
#loginDiv {
	BORDER-BOTTOM: #c7cdd4 1px solid; TEXT-ALIGN: center; BORDER-LEFT: =
#c7cdd4 1px solid; PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #dde9f4; =
PADDING-LEFT: 5px; PADDING-RIGHT: 5px; BORDER-TOP: #c7cdd4 1px solid; =
BORDER-RIGHT: #c7cdd4 1px solid; PADDING-TOP: 5px
}
#menu .title {
	FONT: bold 1.1em Verdana; COLOR: #4b77bb; MARGIN-LEFT: 20px
}
#loginDiv UL {
	LIST-STYLE-TYPE: none; LIST-STYLE-IMAGE: none
}
#loginDiv A {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #3e5169; =
TEXT-DECORATION: underline
}
#loginDiv A:visited {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #3e5169; =
TEXT-DECORATION: underline
}
#menu INPUT {
	WIDTH: 120px; HEIGHT: 18px
}
* HTML #menu INPUT {
	HEIGHT: 23px
}
#menu .navForm {
	MARGIN-TOP: 5px; PADDING-LEFT: 10px; MARGIN-BOTTOM: 0px
}
#menu INPUT.password {
	WIDTH: 120px; FLOAT: left
}
#menu INPUT.button {
	BORDER-BOTTOM: #bbb 1px solid; BORDER-LEFT: #bbb 1px solid; =
PADDING-BOTTOM: 2px; PADDING-LEFT: 1px; WIDTH: 100px; PADDING-RIGHT: =
1px; HEIGHT: 24px; MARGIN-LEFT: 5px; BORDER-TOP: #bbb 1px solid; =
FONT-WEIGHT: bold; BORDER-RIGHT: #bbb 1px solid; PADDING-TOP: 1px
}
INPUT.checkbox {
	WIDTH: auto; HEIGHT: auto
}
#menu INPUT.checkbox {
	WIDTH: auto; HEIGHT: auto
}
* HTML #menu INPUT.checkbox {
	HEIGHT: 10px
}
* + HTML #menu INPUT.checkbox {
	HEIGHT: 10px
}
#myTed {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
BACKGROUND-COLOR: #dde9f4; BORDER-TOP: #ddd 1px solid; BORDER-RIGHT: =
#ddd 1px solid; PADDING-TOP: 3px
}
#myTed UL {
	BORDER-BOTTOM: #fff 1px solid; BACKGROUND-COLOR: #fff; MARGIN-TOP: 3px
}
#myTed UL LI {
	PADDING-BOTTOM: 1px; PADDING-LEFT: 15px; PADDING-RIGHT: 0px; =
BACKGROUND: url(../images/menu-arrow.gif) no-repeat left 4px; =
BORDER-TOP: #ddd 1px solid; PADDING-TOP: 1px
}
#myTed UL LI A {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #222; =
TEXT-DECORATION: underline
}
#myTed UL LI A:visited {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #222; =
TEXT-DECORATION: underline
}
#myTed UL LI.userName {
	LIST-STYLE-TYPE: none; PADDING-LEFT: 10px; FONT-FAMILY: "Trebuchet MS", =
Arial, "Sans Serif"; BACKGROUND: none transparent scroll repeat 0% 0%; =
LIST-STYLE-IMAGE: none
}
#news {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
BACKGROUND-COLOR: #fff; BORDER-TOP: #ddd 1px solid; BORDER-RIGHT: #ddd =
1px solid; PADDING-TOP: 3px
}
#news UL {
	BORDER-BOTTOM: #fff 1px solid; LIST-STYLE-TYPE: none; MARGIN-TOP: 3px; =
MARGIN-LEFT: 5px; LIST-STYLE-IMAGE: none
}
#news UL LI.rss {
	PADDING-LEFT: 16px; BACKGROUND: url(../images/RSS.gif) no-repeat left =
center
}
#news UL LI.recentNews {
	PADDING-LEFT: 19px; BACKGROUND: url(../images/info-green.png) no-repeat =
left center
}
#news .title {
	COLOR: #339900
}
#news A {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #222
}
#news A:visited {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #222
}
#menu .extLinks {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #fff; PADDING-LEFT: 5px; =
PADDING-RIGHT: 5px; BORDER-TOP: #ddd 1px solid; BORDER-RIGHT: #ddd 1px =
solid; PADDING-TOP: 40px
}
#menu .survey {
	PADDING-BOTTOM: 5px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; =
PADDING-TOP: 5px
}
#menu .survey IMG {
	WIDTH: 172px
}
#menu .eurlex {
	BACKGROUND: url(../images/link-eurlex.png) no-repeat 5px 5px
}
#menu .bookshop {
	BACKGROUND: url(../images/link-bookshop.png) no-repeat 5px 5px
}
#menu .extLinks A {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #222; =
TEXT-DECORATION: underline
}
#menu .extLinks A:visited {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #222; =
TEXT-DECORATION: underline
}
* HTML #menu .extLinks A {
	DISPLAY: block
}
* + HTML #menu .extLinks A {
	DISPLAY: block
}
#mainContent {
	MARGIN: 0px 15px 20px 202px; WIDTH: auto; DISPLAY: block; FONT-FAMILY: =
Arial
}
#mainContent H2 {
	MARGIN-BOTTOM: 15px; BACKGROUND: url(../images/h2bg.gif) no-repeat left =
bottom; HEIGHT: 25px; FONT-SIZE: 1.2em; FONT-WEIGHT: bold
}
#mainContent A {
	COLOR: #33f
}
#mainContent A:visited {
	COLOR: #33f
}
#mainContent A:hover {
	COLOR: #44bb22
}
#mainContent HR {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; MARGIN-TOP: -5px; DISPLAY: block; =
BORDER-TOP: 0px; BORDER-RIGHT: 0px
}
#mainContent HR.greenLine {
	BORDER-BOTTOM: #22bb22 1px solid; MARGIN-TOP: 12px; CLEAR: none
}
#mainContent DIV.help {
	Z-INDEX: 123; BORDER-BOTTOM: #555 1px solid; POSITION: absolute; =
BORDER-LEFT: #555 1px solid; PADDING-LEFT: 30px; WIDTH: auto; =
PADDING-RIGHT: 25px; BACKGROUND: url(../images/helpactionbg.png) =
no-repeat left top; HEIGHT: 22px; BORDER-TOP: #555 1px solid; TOP: =
177px; RIGHT: 15px; BORDER-RIGHT: #555 1px solid
}
#mainContent DIV.help A {
	LINE-HEIGHT: 20px; HEIGHT: 22px; COLOR: #000; FONT-WEIGHT: bold; =
TEXT-DECORATION: none
}
#mainContent DIV.help A:visited {
	LINE-HEIGHT: 20px; HEIGHT: 22px; COLOR: #000; FONT-WEIGHT: bold; =
TEXT-DECORATION: none
}
#mainContent DIV.help A:hover {
	COLOR: #77b
}
#mainContent DIV.help A IMG {
	FLOAT: left
}
FIELDSET {
	MARGIN-BOTTOM: 15px
}
FORM FIELDSET.scope {
	BORDER-BOTTOM: #ddd 1px solid; POSITION: relative; BORDER-LEFT: #ddd =
1px solid; PADDING-BOTTOM: 10px; BACKGROUND-COLOR: #ebf5e5; =
PADDING-LEFT: 10px; PADDING-RIGHT: 10px; MARGIN-BOTTOM: 15px; =
BORDER-TOP: #ddd 1px solid; MARGIN-RIGHT: 10px; BORDER-RIGHT: #ddd 1px =
solid; PADDING-TOP: 10px
}
FORM FIELDSET SELECT {
	FONT-SIZE: 0.9em
}
INPUT {
	FONT-SIZE: 0.9em
}
FORM FIELDSET LABEL {
	FONT-SIZE: 0.9em; FONT-WEIGHT: bold
}
.spanInForm {
	FONT-SIZE: 0.9em; FONT-WEIGHT: bold
}
FORM FIELDSET.scope SELECT {
	WIDTH: 25%
}
INPUT {
	WIDTH: 25%
}
FORM FIELDSET.filter SELECT {
	WIDTH: 250px; FONT-SIZE: 9pt
}
INPUT {
	WIDTH: 250px; FONT-SIZE: 9pt
}
FORM FIELDSET INPUT.button {
	BORDER-BOTTOM: 0px; POSITION: relative; BORDER-LEFT: 0px; PADDING-LEFT: =
10px; WIDTH: auto; PADDING-RIGHT: 10px; BACKGROUND: none transparent =
scroll repeat 0% 0%; VERTICAL-ALIGN: top; BORDER-TOP: 0px; TOP: 0px; =
BORDER-RIGHT: 0px
}
FORM FIELDSET DIV.buttonContainer {
	POSITION: relative; PADDING-BOTTOM: 5px; DISPLAY: inline-table; =
BACKGROUND: url(../images/rightbgbutton.png) no-repeat right top; =
VERTICAL-ALIGN: top
}
FORM FIELDSET DIV.leftButtonPart {
	DISPLAY: inline-table; BACKGROUND: url(../images/leftbgbutton.png) =
no-repeat left top; HEIGHT: 19px; VERTICAL-ALIGN: top
}
* + HTML FORM FIELDSET DIV.buttonContainer {
	DISPLAY: inline; HEIGHT: 19px; VERTICAL-ALIGN: baseline
}
* HTML FORM FIELDSET DIV.buttonContainer {
	DISPLAY: inline; HEIGHT: 19px; VERTICAL-ALIGN: bottom
}
* + HTML FORM FIELDSET DIV.leftButtonPart {
	DISPLAY: inline
}
* HTML FORM FIELDSET DIV.leftButtonPart {
	DISPLAY: inline
}
#mainContent .browse {
	MARGIN-TOP: 15px; MIN-HEIGHT: 530px; WIDTH: 100%; DISPLAY: block; =
HEIGHT: auto
}
#mainContent #filterTree {
	POSITION: relative; MARGIN-TOP: 15px
}
#mainContent .browse A {
	FONT-FAMILY: Verdana; COLOR: #567ec2; TEXT-DECORATION: none
}
#mainContent .mainBrowse A {
	FONT-FAMILY: Verdana; COLOR: #567ec2; TEXT-DECORATION: none
}
#mainContent .rightBrowse A {
	COLOR: #3e5169
}
#mainContent .browse A.current {
	COLOR: #090; FONT-WEIGHT: bold
}
#mainContent .mainBrowse A.current {
	COLOR: #090; FONT-WEIGHT: bold
}
#mainContent DIV A:hover {
	COLOR: #55c015; TEXT-DECORATION: underline
}
#mainContent DIV.flag {
	MIN-HEIGHT: 530px; DISPLAY: block; BACKGROUND: =
url(../images/bgflag.gif) no-repeat right bottom
}
#mainContent DIV.leftBrowse {
	POSITION: relative; WIDTH: 300px; FLOAT: left; HEIGHT: auto
}
#mainContent DIV.mainBrowse {
	POSITION: relative; MARGIN-TOP: 15px; MIN-HEIGHT: 530px; WIDTH: 99%; =
BACKGROUND: url(../images/bgflag.gif) no-repeat right bottom; FLOAT: =
none
}
#mainContent DIV.rightBrowse {
	POSITION: relative; DISPLAY: block; HEIGHT: auto; MARGIN-LEFT: 310px
}
#mainContent FIELDSET.filter {
	MARGIN-LEFT: 20px
}
* HTML #mainContent DIV.rightBrowse {
	WIDTH: 64.9%
}
#mainContent H3 {
	PADDING-LEFT: 15px; FONT: bold 1.2em Verdana; MARGIN-BOTTOM: 10px; =
HEIGHT: 22px; COLOR: #339900
}
#mainContent H4 {
	PADDING-LEFT: 20px; FONT: bold 1em Verdana; MARGIN-BOTTOM: 10px; =
HEIGHT: 18px; COLOR: #339900
}
#mainContent H3 SPAN {
	POSITION: relative; TOP: 3px
}
#mainContent DIV.warning {
	Z-INDEX: 565; BORDER-BOTTOM: #900 2px solid; POSITION: absolute; =
BORDER-LEFT: #900 2px solid; PADDING-BOTTOM: 10px; BACKGROUND-COLOR: =
#fff; PADDING-LEFT: 10px; WIDTH: 390px; PADDING-RIGHT: 10px; DISPLAY: =
block; VERTICAL-ALIGN: middle; BORDER-TOP: #900 2px solid; RIGHT: 10px; =
BORDER-RIGHT: #900 2px solid; PADDING-TOP: 5px; -moz-border-radius: 6px; =
-webkit-border-radius: 6px
}
#mainContent DIV.warning P {
	WIDTH: 370px; DISPLAY: table-cell; FONT: 9pt/16px Verdana, sans-serif; =
VERTICAL-ALIGN: middle
}
DIV UL.tree {
	LIST-STYLE-TYPE: none; MARGIN-TOP: 4px; DISPLAY: block; MARGIN-LEFT: =
20px; LIST-STYLE-IMAGE: none
}
* HTML DIV UL.tree {
	HEIGHT: 10px
}
DIV.leftBrowse UL LI {
	LINE-HEIGHT: 12px; MARGIN-TOP: 2px
}
DIV UL LI IMG {
	MARGIN-RIGHT: 10px
}
DIV.rightBrowse UL.noChildren LI {
	LIST-STYLE-TYPE: circle; MARGIN-TOP: 0px; MARGIN-BOTTOM: 5px
}
DIV.mainBrowse UL LI {
	MARGIN-TOP: 0px; MARGIN-BOTTOM: 5px
}
DIV.info {
	MARGIN: 0px; MIN-HEIGHT: 30px; PADDING-LEFT: 32px; FONT: 0.9em Verdana; =
BACKGROUND: url(../images/infobox.png) no-repeat left top; COLOR: =
#525db5
}
DIV.warn {
	MARGIN: 0px; MIN-HEIGHT: 30px; PADDING-LEFT: 32px; FONT: 0.9em Verdana; =
BACKGROUND: url(../images/warnbox.png) no-repeat left top; COLOR: =
#f89f2c
}
DIV.error {
	MARGIN: 0px; MIN-HEIGHT: 30px; PADDING-LEFT: 32px; FONT: 0.9em Verdana; =
BACKGROUND: url(../images/errorbox.png) no-repeat left top; COLOR: =
#d41919
}
* HTML DIV.error {
	HEIGHT: 30px
}
* HTML DIV.warn {
	HEIGHT: 30px
}
* HTML DIV.info {
	HEIGHT: 30px
}
DIV.info SPAN {
	MARGIN: 2px 0px 2px 20px; PADDING-LEFT: 10px; DISPLAY: block
}
DIV.warn SPAN {
	MARGIN: 2px 0px 2px 20px; PADDING-LEFT: 10px; DISPLAY: block
}
DIV.error SPAN {
	MARGIN: 2px 0px 2px 20px; PADDING-LEFT: 10px; DISPLAY: block
}
DIV.error SPAN {
	BACKGROUND: url(../images/puce-error.gif) repeat-y left 5px
}
#mainContent P.notice {
	POSITION: absolute; WIDTH: auto; TOP: 206px; RIGHT: 2px; FONT-WEIGHT: =
bold
}
#mainContent #actionBar {
	MARGIN-BOTTOM: 35px
}
#mainContent #actionBar LI {
	BORDER-BOTTOM: #999 1px solid; POSITION: relative; BORDER-LEFT: #999 =
1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 25px; WIDTH: auto; =
PADDING-RIGHT: 3px; DISPLAY: inline; FLOAT: left; VERTICAL-ALIGN: =
middle; BORDER-TOP: #999 1px solid; FONT-WEIGHT: bold; BORDER-RIGHT: =
#999 1px solid; PADDING-TOP: 3px
}
#mainContent #actionBar LI.profile {
	BACKGROUND: url(../images/refinesearchbg.png) #83f48b no-repeat left =
top
}
#mainContent #actionBar LI.refine_search {
	BACKGROUND: url(../images/refinesearchbg.png) #83f48b no-repeat left =
top
}
#mainContent #actionBar LI.print_search {
	BACKGROUND: url(../images/printsearchbg.png) #83f48b no-repeat left top
}
#mainContent #actionBar LI.print_list {
	BACKGROUND: url(../images/printsearchbg.png) #83f48b no-repeat left top
}
#mainContent #actionBar LI.save_search {
	BACKGROUND: url(../images/savesearchbg.png) #83f48b no-repeat left top
}
#mainContent #actionBar LI.help {
	BACKGROUND: url(../images/helpactionbg.png) #83f48b no-repeat left top; =
MARGIN-RIGHT: 50px
}
#mainContent #actionBar LI.back_list {
	PADDING-LEFT: 30px; BACKGROUND: url(../images/backlistbg.png) #83f48b =
no-repeat left top
}
#mainContent #actionBar LI.export {
	BACKGROUND: url(../images/exportbg.png) #83f48b no-repeat left top
}
#mainContent #actionBar LI.delete_list {
	BACKGROUND: url(../images/deleteactionbg.png) #83f48b no-repeat left =
top
}
#mainContent #actionBar LI IMG {
	MARGIN-BOTTOM: 0px; MARGIN-LEFT: 3px
}
#mainContent #actionBar LI SPAN {
	MARGIN-TOP: -3px; MARGIN-RIGHT: 20px
}
#mainContent #actionBar LI A {
	COLOR: #000; TEXT-DECORATION: none
}
#mainContent #actionBar LI A:hover {
	COLOR: #003399; TEXT-DECORATION: underline
}
#mainContent #actionBar LI UL {
	Z-INDEX: 998; BORDER-BOTTOM: #999 1px solid; POSITION: absolute; =
BORDER-LEFT: #999 1px solid; WIDTH: 100%; BACKGROUND: =
url(../images/action-bg.png) repeat-x left bottom; VISIBILITY: hidden; =
BORDER-TOP: #999 1px solid; TOP: 22px; BORDER-RIGHT: #999 1px solid; =
LEFT: -1px
}
#mainContent .resultSearch #actionBar LI UL {
	TOP: 21px
}
#mainContent #actionBar LI UL LI {
	Z-INDEX: 999; BORDER-BOTTOM: #aaa 1px solid; BORDER-LEFT: 0px; =
PADDING-BOTTOM: 5px; LIST-STYLE-TYPE: none; PADDING-LEFT: 10px; WIDTH: =
auto; PADDING-RIGHT: 5px; DISPLAY: block; FLOAT: none; BORDER-TOP: 0px; =
BORDER-RIGHT: 0px; PADDING-TOP: 5px
}
#mainContent #actionBar LI UL.noScript {
	WIDTH: auto
}
#mainContent #actionBar LI.profile:hover UL {
	VISIBILITY: visible
}
#mainContent #actionBar LI.print_search:hover UL {
	VISIBILITY: visible
}
#mainContent #actionBar LI.sfhover UL {
	VISIBILITY: visible
}
#mainContent #actionBar LI.print_list:hover UL {
	VISIBILITY: visible
}
#mainContent #actionBar LI.delete_list:hover UL {
	VISIBILITY: visible
}
#mainContent #actionBar LI.save_search:hover UL {
	VISIBILITY: visible
}
#mainContent DIV.basicForm {
	BORDER-BOTTOM: green 1px solid; BORDER-LEFT: green 1px solid; =
MARGIN-TOP: 5px; WIDTH: 99%; BORDER-TOP: green 1px solid; BORDER-RIGHT: =
green 1px solid
}
#mainContent DIV.noBorder {
	BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: =
medium none; BORDER-RIGHT: medium none
}
#mainContent DIV.searchSelection {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #dde9f4; PADDING-LEFT: 5px; =
PADDING-RIGHT: 5px; DISPLAY: block; MARGIN-BOTTOM: 10px; BORDER-TOP: =
#ddd 1px solid; BORDER-RIGHT: #ddd 1px solid; PADDING-TOP: 5px
}
* HTML #mainContent DIV.searchSelection {
	WIDTH: 99%; ZOOM: 1
}
* + HTML #mainContent DIV.searchSelection {
	ZOOM: 1
}
#mainContent DIV.basicForm FIELDSET {
	PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; DISPLAY: =
block; PADDING-TOP: 10px
}
#mainContent DIV.basicForm FIELDSET A.black {
	COLOR: #000000
}
#mainContent DIV.basicForm FIELDSET.register A {
	COLOR: #0066ff
}
#mainContent DIV.basicForm FIELDSET A:hover {
	COLOR: #44bb22
}
#mainContent DIV.basicForm FIELDSET.scope {
	BORDER-BOTTOM: #bbb 1px dashed; TEXT-ALIGN: center; BACKGROUND-COLOR: =
#fff
}
* HTML #mainContent DIV.basicForm FIELDSET.scope {
	Z-INDEX: -1; MARGIN-BOTTOM: 0px
}
* + HTML #mainContent DIV.basicForm FIELDSET.scope {
	Z-INDEX: -1; MARGIN-BOTTOM: 0px
}
#mainContent DIV.basicForm FIELDSET.scope LABEL {
	WIDTH: auto; FLOAT: none
}
#mainContent DIV.basicForm FIELDSET.scope SELECT {
	WIDTH: 25%
}
#mainContent DIV.basicForm FIELDSET.ojs {
	BORDER-BOTTOM: #bbb 1px dashed; PADDING-BOTTOM: 5px; WIDTH: 50%; =
DISPLAY: block; FLOAT: left
}
#mainContent DIV.basicForm FIELDSET.fulltext {
	BORDER-BOTTOM: #bbb 1px dashed; PADDING-BOTTOM: 5px
}
#mainContent DIV.basicForm INPUT.imgButton {
	WIDTH: 15px; HEIGHT: 15px
}
* HTML #mainContent DIV.basicForm FIELDSET.ojs {
	BORDER-TOP: #fff 1px solid; PADDING-TOP: 25px
}
* + HTML #mainContent DIV.basicForm FIELDSET.ojs {
	BORDER-TOP: #fff 1px solid; PADDING-TOP: 25px
}
* HTML #mainContent DIV.basicForm FIELDSET.fulltext {
	BORDER-TOP: #fff 1px solid; PADDING-TOP: 25px
}
* + HTML #mainContent DIV.basicForm FIELDSET.fulltext {
	BORDER-TOP: #fff 1px solid; PADDING-TOP: 25px
}
#mainContent DIV.basicForm FIELDSET.leftPart {
	BORDER-BOTTOM: medium none; WIDTH: 50%; DISPLAY: block; MARGIN-BOTTOM: =
0px; FLOAT: left
}
* HTML #mainContent DIV.basicForm FIELDSET.leftPart {
	CLEAR: left
}
#mainContent DIV.basicForm FIELDSET UL {
	LIST-STYLE-TYPE: none; WIDTH: 100%; LIST-STYLE-IMAGE: none
}
#mainContent DIV.basicForm FIELDSET UL LI {
	BORDER-BOTTOM: #fff 1px solid; POSITION: relative; WIDTH: 100%; =
MARGIN-BOTTOM: 9px; CLEAR: both
}
#mainContent DIV.basicForm FIELDSET LI.group {
	MARGIN-BOTTOM: 5px
}
#mainContent DIV.basicForm FIELDSET LABEL {
	POSITION: relative; TEXT-ALIGN: right; WIDTH: 40%; FLOAT: left; CLEAR: =
left; MARGIN-RIGHT: 5px
}
#mainContent DIV.basicForm FIELDSET LABEL {
	POSITION: relative; TEXT-ALIGN: right; WIDTH: 40%; FLOAT: left; CLEAR: =
left; MARGIN-RIGHT: 5px
}
.spanInForm {
	POSITION: relative; TEXT-ALIGN: right; WIDTH: 40%; FLOAT: left; CLEAR: =
left; MARGIN-RIGHT: 5px
}
#mainContent DIV.basicForm FIELDSET.expertArea LABEL {
	TEXT-ALIGN: right; WIDTH: 40%; FLOAT: left; MARGIN-RIGHT: 10px
}
#mainContent DIV.basicForm FIELDSET.leftPart LABEL {
	WIDTH: 30%
}
#mainContent DIV.basicForm FIELDSET.rightPart LABEL {
	WIDTH: 30%
}
#mainContent DIV.basicForm FIELDSET.validation LABEL {
	WIDTH: 30%
}
#mainContent DIV.basicForm FIELDSET.leftPart .label {
	POSITION: relative; TEXT-ALIGN: right; WIDTH: 30%; FLOAT: left; CLEAR: =
left; FONT-WEIGHT: bold; MARGIN-RIGHT: 5px
}
#mainContent DIV.basicForm FIELDSET.expertArea TEXTAREA {
	TEXT-ALIGN: left; MARGIN: 0px; WIDTH: 400px
}
* HTML #mainContent DIV.basicForm FIELDSET.expertArea TEXTAREA {
	TEXT-ALIGN: left; MARGIN: 0px; WIDTH: 400px
}
#mainContent DIV.basicForm FIELDSET.ojs LI INPUT {
	WIDTH: 60%
}
#mainContent DIV.basicForm FIELDSET.fulltext LI INPUT {
	WIDTH: 60%
}
#mainContent DIV.basicForm FIELDSET.ojs LI LABEL {
	WIDTH: 25%
}
#mainContent DIV.basicForm FIELDSET.fulltext LI LABEL {
	WIDTH: 25%
}
#mainContent DIV.basicForm FIELDSET LI INPUT {
	WIDTH: 45%; MARGIN-RIGHT: 5px
}
* HTML #mainContent DIV.basicForm FIELDSET LI INPUT {
	WIDTH: 75%
}
* HTML #mainContent DIV.basicForm FIELDSET.ojs LI INPUT {
	WIDTH: 85%
}
* HTML #mainContent DIV.basicForm FIELDSET.fulltext LI INPUT {
	WIDTH: 85%
}
#mainContent DIV.basicForm FIELDSET LI INPUT.radio {
	WIDTH: auto
}
#mainContent DIV.basicForm FIELDSET LI INPUT.checkbox {
	WIDTH: auto
}
#mainContent DIV.basicForm FIELDSET.treeFieldset UL {
	POSITION: relative; WIDTH: auto
}
#mainContent DIV.basicForm FIELDSET.treeFieldset UL LI {
	MARGIN: 0px
}
#mainContent DIV.basicForm FIELDSET.treeFieldset UL LI INPUT {
	WIDTH: 15px; HEIGHT: 15px
}
#mainContent DIV.basicForm FIELDSET.treeFieldset UL LI INPUT.imgButton {
	WIDTH: 10px; HEIGHT: 10px
}
#mainContent DIV.basicForm FIELDSET.validation {
	POSITION: relative; TEXT-ALIGN: center; MARGIN-TOP: 30px; BORDER-TOP: =
#bbb 1px dashed
}
#mainContent DIV.basicForm FIELDSET.aboutTed {
	BORDER-BOTTOM: #aaa 1px solid; BORDER-LEFT: #aaa 1px solid; =
BACKGROUND-COLOR: #ebf5e5; BORDER-TOP: #aaa 1px solid; BORDER-RIGHT: =
#aaa 1px solid
}
#mainContent DIV.basicForm FIELDSET.validation P.requiredField {
	POSITION: absolute; FONT-STYLE: italic; PADDING-RIGHT: 10px; RIGHT: =
10px
}
#mainContent DIV.basicForm FIELDSET.validation DIV.buttonContainer {
	MARGIN-LEFT: 3%
}
#mainContent DIV.basicForm FIELDSET.validation DIV.buttonContainer INPUT =
{
	PADDING-LEFT: 20px; PADDING-RIGHT: 20px
}
* HTML #mainContent DIV.basicForm FIELDSET.validation =
DIV.buttonContainer INPUT {
	PADDING-LEFT: 5px; PADDING-RIGHT: 5px
}
* + HTML #mainContent DIV.basicForm FIELDSET.validation =
DIV.buttonContainer INPUT {
	PADDING-LEFT: 5px; PADDING-RIGHT: 5px
}
#mainContent DIV.basicForm FIELDSET.validation DIV.statsPanel {
	POSITION: absolute; MARGIN-TOP: -5px; RIGHT: 10px
}
#mainContent DIV.basicForm FIELDSET.validation DIV.statsPanel INPUT {
	WIDTH: auto
}
#mainContent DIV.basicForm FIELDSET.validation DIV.statsPanel LABEL {
	MARGIN-TOP: 3px; WIDTH: auto; FLOAT: left
}
#mainContent DIV.basicForm FIELDSET LI SPAN.example {
	DISPLAY: block; FONT: 0.85em Verdana; COLOR: #888; MARGIN-LEFT: 40%
}
#mainContent DIV.basicForm FIELDSET.leftPart LI SPAN.example {
	MARGIN-LEFT: 30%
}
#mainContent DIV.basicForm FIELDSET.rightPart LI SPAN.example {
	MARGIN-LEFT: 30%
}
#mainContent FIELDSET.statistic {
	BORDER-BOTTOM: #eee 1px solid; BORDER-LEFT: #eee 1px solid; =
PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #eee; PADDING-LEFT: 0px; WIDTH: =
99%; PADDING-RIGHT: 0px; BORDER-TOP: #eee 1px solid; BORDER-RIGHT: #eee =
1px solid; PADDING-TOP: 5px
}
#mainContent FIELDSET.statistic SELECT {
	OVERFLOW: auto
}
#mainContent .statsX {
	TEXT-ALIGN: right; WIDTH: 45%; FLOAT: left; MARGIN-RIGHT: 5%
}
#mainContent .validation {
	POSITION: relative; MARGIN-TOP: 10px; PADDING-LEFT: 45%
}
#foreground {
	Z-INDEX: 1000; POSITION: absolute; TEXT-ALIGN: center; FILTER: =
alpha(opacity=3D80); BACKGROUND-COLOR: #fff; WIDTH: 100%; HEIGHT: =
1050px; TOP: 0px; LEFT: 0px; opacity: 0.8
}
DIV#loading {
	Z-INDEX: 6946; POSITION: fixed; TEXT-ALIGN: center; WIDTH: 250px; =
BACKGROUND: url(../images/loading-bg.png) no-repeat left top; HEIGHT: =
50px; TOP: 35%; LEFT: 43%
}
* HTML DIV#loading {
	POSITION: absolute
}
DIV#loading P {
	PADDING-BOTTOM: 0px; MARGIN: 5px 0px 0px; PADDING-LEFT: 0px; =
PADDING-RIGHT: 0px; PADDING-TOP: 0px
}
DIV#jsContainer {
	Z-INDEX: 7546; BORDER-BOTTOM: #000 2px solid; POSITION: fixed; =
MIN-WIDTH: 800px; TEXT-ALIGN: left; BORDER-LEFT: #000 2px solid; =
BACKGROUND-COLOR: #fff; WIDTH: 80%; MARGIN-LEFT: 10%; BORDER-TOP: #000 =
2px solid; TOP: 20px; BORDER-RIGHT: #000 2px solid; LEFT: -10000px
}
* HTML DIV#jsContainer {
	POSITION: absolute
}
DIV.jsContainer H3 {
	PADDING-BOTTOM: 3px; PADDING-LEFT: 20px; PADDING-RIGHT: 3px; FONT: bold =
1.2em/13px Verdana; BACKGROUND: url(../images/bgh3-4.png) repeat-x right =
top; HEIGHT: 21px; COLOR: #000; PADDING-TOP: 3px
}
DIV.jsContainer FIELDSET LABEL {
	FONT-SIZE: 0.9em
}
DIV.jsContainer .overflow {
	PADDING-BOTTOM: 30px; PADDING-LEFT: 30px; PADDING-RIGHT: 30px; =
MAX-HEIGHT: 300px; OVERFLOW: auto; PADDING-TOP: 30px
}
* HTML DIV.jsContainer .overflow {
	HEIGHT: 430px
}
DIV.jsContainer .filter {
	BORDER-BOTTOM: #0a0 1px solid; PADDING-BOTTOM: 15px; PADDING-LEFT: 20%; =
PADDING-RIGHT: 15px; PADDING-TOP: 15px
}
DIV.jsContainer .filter #treeFilter {
	MARGIN-RIGHT: 10px
}
DIV.jsContainer .column {
	TEXT-ALIGN: left; MARGIN-LEFT: 45%
}
DIV.jsContainer .column1 {
	TEXT-ALIGN: left; WIDTH: 50%; FLOAT: left; CLEAR: left; MARGIN-RIGHT: =
5px
}
DIV.jsContainer .column1 UL {
	FLOAT: right
}
DIV.jsContainer .column2 {
	TEXT-ALIGN: left; FLOAT: none; MARGIN-LEFT: 52%
}
DIV.jsContainer .column2 UL {
	FLOAT: left
}
* HTML DIV.jsContainer .column2 {
	WIDTH: 99%
}
DIV.jsContainer DIV INPUT.checkbox {
	WIDTH: auto; MARGIN-LEFT: 3px
}
DIV.jsContainer DIV UL {
	LIST-STYLE-TYPE: none; LIST-STYLE-IMAGE: none
}
DIV.jsContainer DIV UL.tree {
	TEXT-ALIGN: left; MARGIN-LEFT: 25%
}
DIV.jsContainer DIV UL.tree LI {
	WIDTH: auto
}
DIV.jsContainer DIV UL.tree LI UL {
	MARGIN-LEFT: 20px
}
DIV.jsContainer DIV UL LABEL {
	FONT-WEIGHT: normal
}
DIV.jsContainer .footerJS {
	TEXT-ALIGN: center; PADDING-BOTTOM: 10px; MARGIN: 0px; BACKGROUND: =
url(../images/box-bottom-bg.png) no-repeat right bottom; BORDER-TOP: =
#0a0 1px solid; PADDING-TOP: 15px
}
DIV.jsContainer .footerJS DIV.buttonContainer {
	MARGIN-LEFT: 3%
}
DIV.jsContainer .footerJS INPUT {
	WIDTH: 100px
}
#mainContent #facets {
	POSITION: relative; WIDTH: 180px; DISPLAY: block; FLOAT: left
}
#mainContent #facets .facetTop {
	PADDING-LEFT: 20px; PADDING-RIGHT: 10px; BACKGROUND: =
url(../images/facet-top2.png) no-repeat left top; PADDING-TOP: 5px
}
#mainContent #facets .facetMiddle {
	PADDING-LEFT: 20px; PADDING-RIGHT: 10px; BACKGROUND: =
url(../images/facet-middle.gif) left top; PADDING-TOP: 8px
}
#mainContent #facets .facetBottom {
	BACKGROUND: url(../images/facet-bottom.gif) no-repeat left bottom; =
HEIGHT: 20px
}
#mainContent #facets .facetTop H4 {
	FONT: bold 0.9em Verdana; HEIGHT: 20px
}
#mainContent #facets .facetMiddle UL {
	MARGIN: 0px; LIST-STYLE-IMAGE: url(../images/puce.png)
}
#mainContent #facets .facetMiddle UL LI {
	BORDER-BOTTOM: #999 1px dotted; LINE-HEIGHT: 2px; MARGIN-BOTTOM: 6px
}
#mainContent #facets A {
	FONT: 0.9em Arial; COLOR: #2222bb
}
#mainContent #facets UL LI:hover {
	BACKGROUND: url(../images/facet-link-bg.png) no-repeat left center
}
#mainContent #facets UL LI:hover A {
	TEXT-DECORATION: none
}
#mainContent .resultSearch {
	BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; FONT: =
0.9em Verdana; MARGIN-LEFT: 185px; BORDER-TOP: white 1px solid; =
BORDER-RIGHT: white 1px solid
}
#mainContent .noFacet {
	MARGIN-LEFT: 5px
}
#mainContent .resultSearch P {
	MARGIN-BOTTOM: 10px
}
#mainContent .resultSearch P.noMargin {
	MARGIN-BOTTOM: 1px
}
#mainContent .resultSearch UL.selection {
	MARGIN-TOP: 3px; WIDTH: 47%; MARGIN-BOTTOM: 3px; FLOAT: left; =
MARGIN-LEFT: 2%
}
#mainContent .resultSearch DIV.last {
	BORDER-BOTTOM: #fff 1px solid; POSITION: relative; BORDER-LEFT: #fff =
1px solid; MARGIN-TOP: 3px; WIDTH: 40%; MARGIN-BOTTOM: -10px; FLOAT: =
inherit; MARGIN-LEFT: 30px; BORDER-TOP: #fff 1px solid; BORDER-RIGHT: =
#fff 1px solid; LEFT: -2456px
}
* HTML #mainContent .resultSearch DIV.last {
	FLOAT: left
}
* + HTML #mainContent .resultSearch DIV.last {
	FLOAT: left
}
#mainContent .resultSearch LI {
	DISPLAY: inline
}
#mainContent P.count {
	FONT-STYLE: italic
}
#mainContent SPAN.available {
	FONT-STYLE: normal; WIDTH: auto; FLOAT: right
}
#mainContent .aroundTable {
	WIDTH: 100%; OVERFLOW: auto
}
#mainContent TABLE {
	WIDTH: 100%; MARGIN-BOTTOM: 25px; FONT-SIZE: 1em
}
#mainContent TABLE#notice {
	MARGIN-BOTTOM: 10px
}
#mainContent TABLE THEAD TR {
	HEIGHT: 22px
}
* HTML #mainContent TABLE THEAD TR {
	HEIGHT: 22px
}
* + HTML #mainContent TABLE THEAD TR {
	HEIGHT: 22px
}
#mainContent TABLE THEAD TR TH {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
PADDING-BOTTOM: 3px; PADDING-LEFT: 15px; PADDING-RIGHT: 6px; BACKGROUND: =
url(../images/menu-selected-bg.gif) #c4ffc4 repeat-x center top; =
VERTICAL-ALIGN: middle; BORDER-TOP: #ddd 1px solid; FONT-WEIGHT: bold; =
BORDER-RIGHT: #ddd 1px solid; PADDING-TOP: 2px
}
#mainContent #notice {
	MARGIN-TOP: 10px
}
#mainContent TABLE TBODY TR TH {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
PADDING-RIGHT: 14px; BORDER-TOP: #ddd 1px solid; FONT-WEIGHT: bold; =
BORDER-RIGHT: #ddd 1px solid
}
* HTML #mainContent TABLE THEAD TR TH {
	BACKGROUND-COLOR: #b9ffad
}
* + HTML #mainContent TABLE THEAD TR TH {
	BACKGROUND-COLOR: #b9ffad
}
#mainContent TABLE THEAD TR TH A {
	PADDING-RIGHT: 12px; DISPLAY: block; COLOR: #000
}
#mainContent TABLE THEAD TR TH A:visited {
	PADDING-RIGHT: 12px; DISPLAY: block; COLOR: #000
}
#mainContent TABLE THEAD TR TH A {
	BACKGROUND: url(../images/double-arrow.gif) no-repeat right center
}
#mainContent TABLE THEAD TR TH.order1 A {
	BACKGROUND: url(../images/up-arrow.gif) no-repeat right center
}
#mainContent TABLE THEAD TR TH.order2 A {
	BACKGROUND: url(../images/down-arrow-table.gif) no-repeat right center
}
#mainContent TABLE THEAD TR TH.noBg {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
#mainContent TABLE THEAD TR TH A.noBg {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
#mainContent TABLE THEAD TR TH.noLeftBorder {
	BORDER-LEFT: medium none; BACKGROUND: none transparent scroll repeat 0% =
0%; BORDER-TOP: medium none
}
#mainContent TABLE THEAD TR TH.noRightBorder {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-TOP: medium =
none; BORDER-RIGHT: medium none
}
#mainContent TABLE TBODY TR TD {
	BORDER-BOTTOM: #ddd 1px solid; BORDER-LEFT: #ddd 1px solid; =
PADDING-BOTTOM: 5px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; FONT-FAMILY: =
Arial; BORDER-TOP: #ddd 1px solid; BORDER-RIGHT: #ddd 1px solid; =
PADDING-TOP: 5px
}
#mainContent TABLE TBODY TR TD SPAN {
	DISPLAY: block
}
#mainContent TABLE TBODY TR TD .descriptionDetail {
	PADDING-LEFT: 15px
}
#mainContent TABLE TBODY .even {
	BACKGROUND-COLOR: #f0ffee
}
#mainContent TABLE TBODY TR TD.textCenter {
	TEXT-ALIGN: center
}
#mainContent TABLE TBODY TR.leftAlign TD.textCenter {
	TEXT-ALIGN: left
}
#mainContent TABLE TBODY TR:hover {
	BACKGROUND-COLOR: #feffd0
}
#mainContent TABLE TBODY TR TD INPUT {
	WIDTH: auto
}
#mainContent TABLE THEAD IMG {
	MARGIN-LEFT: 6px
}
#mainContent TABLE TBODY TD A:visited {
	COLOR: #9900cc
}
* HTML #mainContent .resultSearch SPAN.available {
	MARGIN-TOP: -14px
}
* + HTML #mainContent .resultSearch SPAN.available {
	MARGIN-TOP: -14px
}
#mainContent #resultNav {
	MARGIN-TOP: -19px; WIDTH: auto; FONT-FAMILY: Verdana; FLOAT: right
}
#mainContent #tabs {
	POSITION: relative; MARGIN: 0px; DISPLAY: block; HEIGHT: 25px; TOP: =
-1px !important
}
* HTML #mainContent #tabs {
	MARGIN-LEFT: -3px
}
#mainContent #tabs UL LI {
	LIST-STYLE-TYPE: none; WIDTH: auto; PADDING-RIGHT: 12px; BACKGROUND: =
url(../images/tabright.gif) no-repeat right top; FLOAT: left; HEIGHT: =
25px; LIST-STYLE-IMAGE: none
}
#mainContent #tabs UL LI A:link {
	FONT: bold 0.85em Verdana; COLOR: #003
}
#mainContent #tabs UL LI A:visited {
	FONT: bold 0.85em Verdana; COLOR: #003
}
#mainContent #tabs UL LI A:hover {
	COLOR: #b22
}
#mainContent #tabs UL LI DIV {
	PADDING-LEFT: 12px; WIDTH: auto; BACKGROUND: url(../images/tableft.gif) =
no-repeat left top; FLOAT: left; HEIGHT: 25px; PADDING-TOP: 5px
}
#mainContent #tabs UL LI.activated {
	BORDER-BOTTOM: #fff 1px solid; BACKGROUND: =
url(../images/tabactiveright.gif) no-repeat right top
}
#mainContent #tabs UL LI.activated DIV {
	BACKGROUND: url(../images/tabactiveleft.gif) no-repeat left top
}
#mainContent .documentDiv {
	BORDER-BOTTOM: #000 1px solid; BORDER-LEFT: #000 1px solid; MARGIN-TOP: =
-2px; BACKGROUND: url(../images/pixel.gif) no-repeat 0px 1px; =
BORDER-TOP: medium none; BORDER-RIGHT: #000 1px solid; PADDING-TOP: 5px
}
* HTML #mainContent .documentDiv {
	MARGIN-LEFT: 3px
}
#mainContent .documentDiv P.docAction {
	POSITION: relative; PADDING-BOTTOM: 7px; PADDING-LEFT: 25px; =
PADDING-RIGHT: 7px; FONT-FAMILY: Verdana; MARGIN-BOTTOM: 0px; HEIGHT: =
16px; PADDING-TOP: 7px
}
* HTML #mainContent .documentDiv P.docAction {
	WIDTH: 100%; HEIGHT: 32px
}
#mainContent .documentDiv P.docAction A {
	MARGIN-RIGHT: 15px
}
#mainContent .documentDiv P.docAction A.docDisplayLink {
	PADDING-LEFT: 14px; BACKGROUND: url(../images/rightarrow.gif) no-repeat =
left center
}
#mainContent .documentDiv P.docAction A.icon {
	MARGIN-RIGHT: 5px
}
#mainContent .documentDiv P.docAction IMG {
	MARGIN-RIGHT: 5px
}
#mainContent .documentDiv P.docAction INPUT {
	MARGIN-RIGHT: 5px
}
#mainContent .documentDiv P.docAction A.icon IMG {
	MARGIN: 0px
}
#mainContent .documentDiv P.docAction SPAN {
	POSITION: absolute; WIDTH: auto; RIGHT: 10px
}
#mainContent DIV.noBg {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
#mainContent .documentDiv #cancelDoc {
	PADDING-LEFT: 30px; PADDING-TOP: 5px
}
#mainContent .documentDiv #docContent {
	PADDING-BOTTOM: 30px; PADDING-LEFT: 30px; PADDING-RIGHT: 30px; =
PADDING-TOP: 30px
}
#docContent {
	POSITION: relative; WIDTH: auto
}
#docContent P {
	LINE-HEIGHT: 18px
}
#docContent P.title {
	BORDER-BOTTOM: #000 2px solid
}
#docContent UL.navSection LI {
	DISPLAY: inline; MARGIN-RIGHT: 6px
}
#docContent P.center {
	TEXT-ALIGN: center; LINE-HEIGHT: 30px; FONT-WEIGHT: bold
}
#docContent P.section {
	MARGIN-TOP: 10px; MARGIN-BOTTOM: 10px; FONT-WEIGHT: bold; =
TEXT-DECORATION: underline
}
#docContent P.alinea {
	WIDTH: 50px; FLOAT: left
}
#docContent P.content {
	MARGIN-LEFT: 55px
}
#docContent .data {
	POSITION: relative; WIDTH: 100% !important
}
#docContent .family {
	WIDTH: 650px
}
#docContent .family TR:hover {
	BACKGROUND-COLOR: #fff
}
#docContent .family TD {
	BORDER-BOTTOM: #aaa 1px solid
}
#docContent .bgGreen {
	BACKGROUND-COLOR: #f0fff0
}
#docContent TD.title {
	BORDER-LEFT: #aaa 1px solid; FONT-WEIGHT: bold
}
#docContent .data TH {
	FONT-WEIGHT: bold; BORDER-RIGHT: green 1px solid
}
#sitemap {
	POSITION: relative; WIDTH: 100%; BACKGROUND: =
url(../images/sitemap-bg.png) no-repeat left top; HEIGHT: 600px
}
#sitemap UL {
	POSITION: absolute; WIDTH: 200px; LEFT: -1000px
}
#sitemap UL.lv2 LI {
	LIST-STYLE-POSITION: inside; LIST-STYLE-IMAGE: =
url(../images/pucesmlv2.png)
}
#sitemap UL.lv2 LI.noBullet {
	LIST-STYLE-TYPE: none; FONT-WEIGHT: bold; LIST-STYLE-IMAGE: none
}
#sitemap UL.homepage {
	TOP: 180px; LEFT: 420px
}
#sitemap UL.myTed {
	TEXT-ALIGN: right; WIDTH: 200px; TOP: 25px; LEFT: 0px
}
#sitemap UL.search {
	TOP: 55px; LEFT: 565px
}
#sitemap UL.result {
	TOP: 193px; LEFT: 630px
}
#sitemap UL.document {
	TOP: 290px; LEFT: 695px
}
#sitemap UL.browseMap {
	TOP: 350px; LEFT: 505px
}
#sitemap UL.news {
	TEXT-ALIGN: right; WIDTH: 195px; TOP: 200px; LEFT: 25px
}
#sitemap UL.rss {
	TEXT-ALIGN: right; WIDTH: 215px; TOP: 270px; LEFT: 25px
}
#sitemap UL.links {
	TEXT-ALIGN: right; WIDTH: 275px; TOP: 350px; LEFT: 25px
}
#sitemap A {
	COLOR: #0090ff
}
#sitemap A:visited {
	COLOR: #0090ff
}
#sitemap LI {
	MARGIN-BOTTOM: 10px
}
#sitemap UL.lv2 LI {
	MARGIN-BOTTOM: 3px
}
#sitemap A {
	FONT-SIZE: 10pt
}
#sitemap LI {
	FONT-SIZE: 10pt
}
#mainContent DIV.basicForm FIELDSET.register {
	MARGIN-TOP: 10px; MARGIN-BOTTOM: 0px
}
#mainContent DIV.basicForm FIELDSET.noMargin {
	MARGIN: 0px
}
#mainContent DIV.basicForm FIELDSET.register LI INPUT {
	WIDTH: 25%; MARGIN-RIGHT: 5px
}
* HTML #mainContent DIV.basicForm FIELDSET.register LI INPUT {
	WIDTH: 40%; MARGIN-RIGHT: 5px
}
#mainContent DIV.basicForm FIELDSET.register LI INPUT.checkbox {
	WIDTH: auto
}
.basicForm .register SELECT {
	WIDTH: 25%
}
.basicForm .personalDetails SELECT {
	WIDTH: 25%
}
#mainContent DIV.basicForm FIELDSET.noPadding {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; =
PADDING-TOP: 0px
}
#mainContent DIV.basicForm FIELDSET.noPadding SELECT {
	WIDTH: 25%
}
#mainContent DIV.basicForm FIELDSET.generalDetails {
	BORDER-BOTTOM: #bbb 1px dotted; MARGIN-BOTTOM: 0px
}
#mainContent DIV.basicForm FIELDSET.noBorder {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: =
0px
}
#mainContent DIV.basicForm FIELDSET.generalDetails INPUT {
	WIDTH: 30%
}
#mainContent DIV.basicForm FIELDSET.personalDetails INPUT {
	WIDTH: 30%
}
#mainContent DIV.basicForm FIELDSET.deleteAccount INPUT {
	WIDTH: 30%
}
#mainContent DIV.basicForm FIELDSET.reminder INPUT {
	WIDTH: 30%
}
* HTML #mainContent DIV.basicForm FIELDSET.generalDetails INPUT {
	WIDTH: 50%
}
* HTML #mainContent DIV.basicForm FIELDSET.personalDetails INPUT {
	WIDTH: 50%
}
* HTML #mainContent DIV.basicForm FIELDSET.deleteAccount INPUT {
	WIDTH: 50%
}
* HTML #mainContent DIV.basicForm FIELDSET.generalDetails INPUT.checkBox =
{
	WIDTH: auto
}
#mainContent DIV.basicForm DIV.infoField {
	MARGIN-BOTTOM: 0px; BORDER-TOP: #bbb 1px dotted
}
#mainContent DIV.basicForm DIV.infoField P {
	MARGIN-LEFT: 15px
}
#mainContent DIV.basicForm FIELDSET.deleteAccount INPUT.button {
	TEXT-ALIGN: center; PADDING-LEFT: 20px; WIDTH: auto; PADDING-RIGHT: =
20px
}
#mainContent DIV.basicForm FIELDSET.deleteAccount H3 {
	COLOR: #b33
}
FORM FIELDSET DIV.leftRedButton {
	BACKGROUND: url(../images/leftbgredbutton.png) no-repeat left top
}
FORM FIELDSET DIV.redButtonContainer {
	BACKGROUND: url(../images/rightbgredbutton.png) no-repeat right top
}
#mainContent DIV.redBorder {
	BORDER-BOTTOM: red 1px solid; BORDER-LEFT: red 1px solid; BORDER-TOP: =
red 1px solid; BORDER-RIGHT: red 1px solid
}
#mainContent .addressBook INPUT.button {
	PADDING-LEFT: 10px; PADDING-RIGHT: 10px
}
#mainContent .rssCountry INPUT.button {
	PADDING-LEFT: 10px; PADDING-RIGHT: 10px
}
#mainContent UL.rssFeeds {
	MARGIN-TOP: 20px; WIDTH: auto; MARGIN-BOTTOM: 30px; MARGIN-LEFT: 35px; =
LIST-STYLE-IMAGE: url(../images/rss-icon.gif)
}
#mainContent UL.rssFeeds LI {
	MARGIN-BOTTOM: 4px
}
#mainContent IMG.news {
	MARGIN-BOTTOM: 10px; FLOAT: left; MARGIN-RIGHT: 10px
}
#mainContent .rssFeeds SPAN.italic {
	FONT-SIZE: 0.9em
}
#mainContent .about H3 {
	FONT: bold 1.25em Verdana; BACKGROUND: none transparent scroll repeat =
0% 0%; COLOR: #005
}
#mainContent .about #whatIsTED {
	PADDING-BOTTOM: 30px; PADDING-LEFT: 90px; BACKGROUND: =
url(../images/about2.png) no-repeat left center; PADDING-TOP: 10px
}
#mainContent .about #benefitFromTED {
	PADDING-BOTTOM: 10px; PADDING-LEFT: 90px; BACKGROUND: =
url(../images/info2.png) no-repeat left center; PADDING-TOP: 10px
}
#mainContent .about #whyRegisterOnTED {
	PADDING-BOTTOM: 10px; PADDING-LEFT: 90px; BACKGROUND: =
url(../images/user2.png) no-repeat left center; PADDING-TOP: 10px
}
* HTML #mainContent .about #whatIsTED {
	HEIGHT: 1px
}
* HTML #mainContent .about #benefitFromTED {
	HEIGHT: 1px
}
* HTML #mainContent .about #whyRegisterOnTED {
	HEIGHT: 1px
}
#mainContent #legalNotice P {
	LINE-HEIGHT: 18px; MARGIN-LEFT: 35px
}
#mainContent #privacyRules P {
	LINE-HEIGHT: 18px; MARGIN-LEFT: 35px
}
#mainContent #legalNotice UL {
	LIST-STYLE-TYPE: square; MARGIN: 0px 0px 15px 75px
}
#mainContent #privacyRules UL {
	LIST-STYLE-TYPE: square; MARGIN: 0px 0px 15px 75px
}
#mainContent #legalNotice H3 {
	FONT: bold 1.25em Verdana; BACKGROUND: #fafffa; COLOR: #005
}
#mainContent #privacyRules H3 {
	FONT: bold 1.25em Verdana; BACKGROUND: #fafffa; COLOR: #005
}
#mainContent #legalNotice H3 A {
	COLOR: #005; TEXT-DECORATION: none
}
#mainContent #legalNotice H4 A {
	COLOR: #005; TEXT-DECORATION: none
}
#mainContent #legalNotice H4 A {
	COLOR: #339900
}
#mainContent #legalNotice H4 {
	FONT: bold 1.15em Verdana; MARGIN-BOTTOM: 10px; MARGIN-LEFT: 15px
}
#mainContent #legalNotice H5 {
	FONT: 1.15em Verdana; MARGIN-BOTTOM: 5px; LETTER-SPACING: 1px; =
MARGIN-LEFT: 20px
}
#mainContent .releaseCalendar {
	PADDING-LEFT: 25px
}
#mainContent .releaseCalendar IMG {
	MARGIN-RIGHT: 15px
}
#mainContent .releaseCalendar SELECT {
	WIDTH: 200px; MARGIN-RIGHT: 15px
}
#mainContent .basicForm .contact LABEL {
	WIDTH: 30%
}
#mainContent .cpvMapping {
	LIST-STYLE-TYPE: none; MARGIN-LEFT: 25px; LIST-STYLE-IMAGE: none
}
#mainContent .cpvMapping LI A {
	LINE-HEIGHT: 16px; LETTER-SPACING: 1px; FONT-SIZE: 0.9em
}
#mainContent .cpvMapping LI {
	PADDING-BOTTOM: 0px; HEIGHT: auto; PADDING-TOP: 4px
}
#mainContent .cpvMapping LI.selected {
	BACKGROUND-COLOR: #eaffea; FONT-WEIGHT: bold
}
DIV#boxComponent {
	Z-INDEX: 7546; POSITION: fixed; BACKGROUND-COLOR: #fff; WIDTH: 657px; =
MARGIN-LEFT: 25%; TOP: 20%; LEFT: -10000px
}
DIV.boxComponent {
	MARGIN: 0px auto; WIDTH: 657px
}
* HTML DIV.boxComponent {
	MARGIN-LEFT: 50px
}
* HTML DIV#boxComponent {
	POSITION: absolute
}
DIV.boxComponent FIELDSET {
	POSITION: relative; MARGIN: 0px; PADDING-LEFT: 10px; WIDTH: 600px
}
DIV.boxComponent FIELDSET UL LI {
	LIST-STYLE-TYPE: none; MARGIN-BOTTOM: 10px; LIST-STYLE-IMAGE: none
}
DIV.boxComponent FIELDSET LABEL {
	TEXT-ALIGN: left; WIDTH: auto; FLOAT: left; MARGIN-RIGHT: 5px
}
DIV.boxComponent FIELDSET .likeLabel {
	TEXT-ALIGN: left; WIDTH: auto; FLOAT: left; FONT-SIZE: 0.9em; =
FONT-WEIGHT: bold; MARGIN-RIGHT: 5px
}
DIV.boxComponent FIELDSET.boxValidation {
	TEXT-ALIGN: center; WIDTH: 630px; BORDER-TOP: #ddd 1px dashed
}
DIV.boxComponent FIELDSET INPUT {
	WIDTH: 35%
}
DIV.boxComponent FIELDSET SELECT {
	WIDTH: 35%
}
DIV.boxComponent FIELDSET INPUT.button {
	WIDTH: auto
}
DIV.boxComponent FIELDSET INPUT.radio {
	WIDTH: auto
}
DIV.boxComponent FIELDSET .example {
	DISPLAY: block; FONT: 0.85em Arial; COLOR: #999; MARGIN-LEFT: 15%
}
DIV.boxComponent FIELDSET .message {
	BORDER-BOTTOM: #999 1px solid; BORDER-LEFT: #999 1px solid; =
PADDING-BOTTOM: 5px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; BORDER-TOP: =
#999 1px solid; BORDER-RIGHT: #999 1px solid; PADDING-TOP: 5px
}
DIV.boxComponent FIELDSET TEXTAREA {
	BORDER-BOTTOM: #000 2px solid; BORDER-LEFT: 0px; WIDTH: 100%; =
BORDER-TOP: 0px; BORDER-RIGHT: 0px
}
DIV.boxComponent FIELDSET DIV.buttonContainer {
	MARGIN-LEFT: 10px
}
DIV.boxComponent .top {
	PADDING-LEFT: 10px; BACKGROUND: url(../images/top-box.png) no-repeat =
left top; HEIGHT: 25px
}
DIV.boxComponent .top SPAN {
	FONT: bold 1em/20px Verdana; PADDING-TOP: 3px
}
DIV.boxComponent .middle {
	PADDING-BOTTOM: 15px; PADDING-LEFT: 15px; PADDING-RIGHT: 15px; =
BACKGROUND: url(../images/box-middle.png) repeat-y left top; HEIGHT: =
auto; PADDING-TOP: 15px
}
DIV.boxComponent .middle P {
	MARGIN: 0px
}
DIV.boxComponent .middle UL {
	MARGIN-TOP: 10px; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 15px
}
DIV.boxComponent .middle UL LI {
	LINE-HEIGHT: 0.9em
}
DIV.boxComponent .middle .comboBox {
	TEXT-ALIGN: center; MARGIN-TOP: 15px
}
DIV.boxComponent .bottom {
	BACKGROUND: url(../images/box-bottom.png) no-repeat left bottom; =
HEIGHT: 45px
}
.red {
	COLOR: red !important
}
#footer {
	POSITION: relative; WIDTH: 100%; BACKGROUND: =
url(../images/bottomshadow.png) repeat-x left bottom; HEIGHT: 35px; =
BORDER-TOP: #3399cc 1px solid; PADDING-TOP: 10px
}
#footer UL {
	POSITION: absolute; LIST-STYLE-TYPE: none; RIGHT: 10px; =
LIST-STYLE-IMAGE: none
}
#footer UL LI {
	DISPLAY: inline; COLOR: #bbb
}
#footer UL LI A {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #003399; =
FONT-SIZE: 0.9em
}
#footer UL LI A:visited {
	FONT-FAMILY: "Trebuchet MS", Arial, "Sans Serif"; COLOR: #003399; =
FONT-SIZE: 0.9em
}
#footer UL LI A:hover {
	COLOR: #37ab49
}
#admin UL {
	LIST-STYLE-TYPE: none; WIDTH: 100%; LIST-STYLE-IMAGE: none
}
#admin UL LI {
	BORDER-BOTTOM: #fff 1px solid; POSITION: relative; WIDTH: 100%; =
MARGIN-BOTTOM: 9px
}
#legalNotice OL {
	PADDING-BOTTOM: 10px; PADDING-LEFT: 80px
}
#legalNotice ADDRESS {
	PADDING-BOTTOM: 10px; PADDING-LEFT: 80px
}
.marquee {
	WIDTH: 100%; OVERFLOW: hidden
}

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/css/calendar.css?1.08.06

.dpDiv {
=09
}
.dpTable {
	BORDER-BOTTOM: #aaa 1px solid; TEXT-ALIGN: center; BORDER-LEFT: #aaa =
1px solid; PADDING-BOTTOM: 5px; BACKGROUND-COLOR: #fff; PADDING-LEFT: =
5px; WIDTH: 200px; PADDING-RIGHT: 5px; FONT-FAMILY: Verdana, Arial, =
Helvetica, sans-serif; COLOR: #000; FONT-SIZE: 9pt; BORDER-TOP: #aaa 1px =
solid; BORDER-RIGHT: #aaa 1px solid; PADDING-TOP: 5px
}
.dpTR {
=09
}
.dpTitleTR {
	BACKGROUND: url(../images/calendar-month-bg.png) repeat-x left center; =
HEIGHT: 30px
}
.dpDayTR {
=09
}
.dpTodayButtonTR {
=09
}
.dpTD {
	BORDER-BOTTOM: #d3d3d3 1px solid; TEXT-ALIGN: center; BORDER-LEFT: =
#d3d3d3 1px solid; PADDING-BOTTOM: 0px; PADDING-LEFT: 3px; =
PADDING-RIGHT: 3px; BACKGROUND: url(../images/calendar-td-bg.png) =
repeat-x left top; PADDING-TOP: 3px
}
.dpDayHighlightTD {
	BORDER-BOTTOM: #aaaaaa 1px solid; TEXT-ALIGN: center; BORDER-LEFT: =
#aaaaaa 1px solid; BACKGROUND-COLOR: #cccccc; BORDER-TOP: #aaaaaa 1px =
solid; FONT-WEIGHT: bold; BORDER-RIGHT: #aaaaaa 1px solid
}
.dpTDHover {
	BORDER-BOTTOM: #000 1px solid; TEXT-ALIGN: center; BORDER-LEFT: #000 =
1px solid; BACKGROUND-COLOR: #ccc; BORDER-TOP: #000 1px solid; CURSOR: =
pointer; BORDER-RIGHT: #000 1px solid
}
.dpTitleTD {
	TEXT-ALIGN: center; PADDING-TOP: 6px
}
.dpButtonTD {
	PADDING-LEFT: 6px
}
.dpTodayButtonTD {
=09
}
.dpDayTD {
	BORDER-BOTTOM: 0px; TEXT-ALIGN: center; BORDER-LEFT: 0px; =
BACKGROUND-COLOR: #fff; COLOR: #000; BORDER-TOP: 0px; FONT-WEIGHT: bold; =
BORDER-RIGHT: 0px
}
.dpTitleText {
	COLOR: #000; FONT-SIZE: 10pt; FONT-WEIGHT: bold
}
.dpDayHighlight {
	COLOR: #000; FONT-WEIGHT: bold
}
.dpButton {
	BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: Verdana, Tahoma, =
Arial, Helvetica, sans-serif; BACKGROUND: =
url(../images/calendar-back.png) no-repeat center center; COLOR: gray; =
FONT-SIZE: 10px; BORDER-TOP: 0px; FONT-WEIGHT: bold; BORDER-RIGHT: 0px; =
PADDING-TOP: 0px
}
.right {
	PADDING-RIGHT: 3px; BACKGROUND: url(../images/calendar-next.png) =
no-repeat center center
}
.dpTodayButton {
	FONT-FAMILY: Verdana, Tahoma, Arial, Helvetica, sans-serif; BACKGROUND: =
#d8e8ff; COLOR: gray; FONT-SIZE: 10px; FONT-WEIGHT: bold
}

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/css/notice.css?1.08.06

#mainContent #docContent .tabs {
	PADDING-BOTTOM: 0px; LINE-HEIGHT: 20px; LIST-STYLE-TYPE: none; MARGIN: =
0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: block; HEIGHT: =
20px; FONT-WEIGHT: bold; PADDING-TOP: 0px
}
#mainContent #docContent .tabs LI {
	PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px 2px 0px 0px; =
PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FLOAT: left; FONT-WEIGHT: bold; =
PADDING-TOP: 0px
}
#mainContent #docContent .tabs LI * {
	DISPLAY: inline
}
#mainContent #docContent .tabs A {
	DISPLAY: block; FLOAT: left; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
#mainContent #docContent .tabs A SPAN {
	DISPLAY: block; FLOAT: left; FONT-WEIGHT: bold; TEXT-DECORATION: none
}
#mainContent #docContent .tabs A {
	FLOAT: none
}
#docContent .tabs A SPAN {
	FLOAT: none
}
#mainContent #docContent .tabs A {
	PADDING-LEFT: 10px; BACKGROUND: url(/TEDimages/tab_left.gif) no-repeat =
left top; COLOR: #000; TEXT-DECORATION: none
}
#mainContent #docContent .tabs A * {
	DISPLAY: inline; COLOR: #000
}
#mainContent #docContent .tabs A SPAN {
	PADDING-RIGHT: 10px; BACKGROUND: url(/TEDimages/tab_right.gif) =
no-repeat right top
}
#mainContent #docContent .tabs A SPAN * {
	DISPLAY: inline
}
#mainContent #docContent .tabs A SPAN B {
	CURSOR: pointer
}
#mainContent #docContent .tabs A SPAN B.on {
	COLOR: #fff
}
#mainContent #docContent .tabs A.active SPAN B.on {
	COLOR: #000
}
#mainContent #docContent .tabs A SPAN B:hover {
	COLOR: #fff; CURSOR: pointer
}
#mainContent #docContent .tabs A:hover {
	PADDING-LEFT: 10px; COLOR: #000; TEXT-DECORATION: none
}
#mainContent #docContent .tabs A:hover SPAN {
	PADDING-RIGHT: 10px
}
#mainContent #docContent .tabs A.active {
	BACKGROUND: url(/TEDimages/tab_left_active.gif) no-repeat left top; =
COLOR: #fff
}
#mainContent #docContent .tabs A.active SPAN {
	BACKGROUND: url(/TEDimages/tab_right_active.gif) no-repeat right top; =
COLOR: #fff
}
#mainContent #docContent .tabs A.active SPAN B {
	COLOR: #fff
}
#mainContent #docContent .tabs A.active SPAN B:hover {
	COLOR: #000; CURSOR: pointer
}
#mainContent #docContent .tabs A.language {
	PADDING-LEFT: 0px; DISPLAY: inline; BACKGROUND: no-repeat right top
}
#mainContent #docContent .tabs BR {
	DISPLAY: none !important
}
#mainContent #docContent {
	PADDING-BOTTOM: 20px; BACKGROUND-COLOR: #fff; PADDING-LEFT: 20px; =
PADDING-RIGHT: 20px; MARGIN-BOTTOM: 20px; PADDING-TOP: 0px
}
#mainContent #docContent #docHeader {
	BORDER-BOTTOM: #003 2px solid
}
#mainContent #docContent #docToc {
	LIST-STYLE-TYPE: none; MARGIN-LEFT: 0px
}
#mainContent #docContent #docToc LI {
	DISPLAY: inline
}
#mainContent #docContent #docToc LI A {
	TEXT-DECORATION: none
}
#mainContent #docContent .stdoc {
	TEXT-ALIGN: center
}
#mainContent #docContent .stdoc P {
	TEXT-ALIGN: center; FONT-WEIGHT: bold
}
#mainContent #docContent .grseq {
	MARGIN: 10px 0px
}
#mainContent #docContent .grseq .tigrseq {
	FONT-WEIGHT: bold; TEXT-DECORATION: underline
}
.mlioccur {
	ZOOM: 1
}
#mainContent #docContent .mlioccur {
	POSITION: relative; MARGIN-TOP: 5px; MARGIN-LEFT: 20px
}
#mainContent #docContent .grseq .mlioccur {
	POSITION: relative; MARGIN-TOP: 5px; MARGIN-LEFT: 20px
}
#mainContent #docContent .grseq .mlioccur .contauth {
=09
}
#docContent .mlioccur .nomark {
	TEXT-ALIGN: right; WIDTH: 40px; DISPLAY: block; FLOAT: left
}
#docContent .grseq .mlioccur .nomark {
	TEXT-ALIGN: right; WIDTH: 40px; DISPLAY: block; FLOAT: left
}
* HTML #docContent .mlioccur .nomark {
	POSITION: absolute; TEXT-ALIGN: right; WIDTH: 40px; DISPLAY: =
inline-block; FLOAT: none; LEFT: -50px
}
* HTML #docContent .grseq .mlioccur .nomark {
	POSITION: absolute; TEXT-ALIGN: right; WIDTH: 40px; DISPLAY: =
inline-block; FLOAT: none; LEFT: -50px
}
#mainContent #docContent .mlioccur .timark {
	DISPLAY: block; MARGIN-LEFT: 50px; FONT-WEIGHT: bold
}
#mainContent #docContent .grseq .mlioccur .timark {
	DISPLAY: block; MARGIN-LEFT: 50px; FONT-WEIGHT: bold
}
#mainContent #docContent .mlioccur .txtmark {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; =
MARGIN-LEFT: 50px; PADDING-TOP: 0px
}
#mainContent #docContent .grseq .mlioccur .txtmark {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; =
MARGIN-LEFT: 50px; PADDING-TOP: 0px
}
#mainContent #docContent .mlioccur .txtmark P {
	PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: =
0px; PADDING-TOP: 0px
}
#mainContent #docContent .grseq .mlioccur .txtmark P {
	PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: =
0px; PADDING-TOP: 0px
}
#mainContent #docContent .mlioccur .txtmark .cpvCode {
	COLOR: red
}
#mainContent #docContent .grseq .mlioccur .txtmark .cpvCode {
	COLOR: red
}
#mainContent .EEIGTop {
	MARGIN-TOP: 10px
}
.EEIGSub {
	MARGIN-TOP: 10px
}
#mainContent .EEIGTop .nomark {
	WIDTH: 60px; DISPLAY: block; FLOAT: left
}
#mainContent #cancelDoc {
	COLOR: red; FONT-WEIGHT: bold
}
#mainContent .EEIGTop .timark {
	FONT-WEIGHT: bold
}
#mainContent .EEIGTop .txtmark {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; =
MARGIN-LEFT: 60px; PADDING-TOP: 0px
}
#mainContent .EEIGSub .nomark {
	PADDING-LEFT: 20px; WIDTH: 40px; DISPLAY: block; FLOAT: left
}
#mainContent .EEIGSub .timark {
	FONT-WEIGHT: bold
}
#mainContent .EEIGSub .txtmark {
	PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; =
MARGIN-LEFT: 60px; PADDING-TOP: 0px
}
.highlight {
	BACKGROUND-COLOR: yellow
}
#mainContent TABLE TBODY TR TD SPAN.highlight {
	DISPLAY: inline
}

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/css/ted-print.css?1.08.06

HTML {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
BODY {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
DIV {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
SPAN {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
APPLET {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
OBJECT {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
IFRAME {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
H1 {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
H2 {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
H3 {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
H4 {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
H5 {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
H6 {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
P {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
BLOCKQUOTE {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
PRE {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
A {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
ABBR {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
ACRONYM {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
ADDRESS {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
BIG {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
CITE {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
CODE {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
DEL {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
DFN {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
EM {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
FONT {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
IMG {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
INS {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
KBD {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
Q {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
S {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
SAMP {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
SMALL {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
STRIKE {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
STRONG {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
SUB {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
SUP {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TT {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
VAR {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
DL {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
DT {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
DD {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
OL {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
UL {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
LI {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
FIELDSET {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
FORM {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
LABEL {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
LEGEND {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TABLE {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
CAPTION {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TBODY {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TFOOT {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
THEAD {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TR {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TH {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
TD {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #000; =
FONT-SIZE: 1em
}
A {
	COLOR: #000
}
A:hover {
	COLOR: #000
}
A:visited {
	COLOR: #000
}
#header {
	DISPLAY: none
}
#menu {
	DISPLAY: none
}
#footer {
	DISPLAY: none
}
.notice {
	DISPLAY: none
}
.help {
	DISPLAY: none
}
#menuTabs {
	DISPLAY: none
}
#resultNav {
	DISPLAY: none
}
#actionBar {
	DISPLAY: none
}
#tabs UL {
	DISPLAY: none
}
.docAction {
	DISPLAY: none
}
#mainContent #facets {
	DISPLAY: none
}
#mainContent .resultSearch {
	MARGIN-LEFT: 0px
}
#header H1 {
	DISPLAY: block
}
#mainContent {
	MARGIN: 0px; WIDTH: 100%
}
#mainContent HR {
	BORDER-BOTTOM: #000 1px solid; BORDER-LEFT: #000 1px solid; MARGIN-TOP: =
25px; DISPLAY: block; MARGIN-BOTTOM: 25px; BORDER-TOP: #000 1px solid; =
BORDER-RIGHT: #000 1px solid
}
#mainContainer {
	MIN-WIDTH: 0px
}

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/TED/dynamic/ted-js.do?lang=pl

   =20
var calendarUrl =3D '/static/images/date-picker.png';
var imageFolder =3D '/static/images/';
var appContextRoot =3D '/TED';
var refDataAjaxServiceBaseUrl =3D '/TED/search/ajaxPickRefData.do?';
var refDataAjaxBrowseServiceBaseUrl =3D '/TED/browse/ajaxBrowse.do?';
var tradCollapse =3D "Zwi=C5=84";=20
var tradExpand =3D "Rozwi=C5=84";=20
var tradNoFilterResult =3D "Przepraszamy, ale nie ma wynik&oacute;w =
pasuj=C4=85cych do kryteri&oacute;w filtrowania.";=20
var tradApply =3D "Zastosuj";=20
var tradFilter =3D "Filtruj ";=20
var tradOk =3D "OK";=20
var tradCancel =3D "Anuluj";=20
var tradErrorBookmarkPage =3D "Przepraszamy, ale przegl=C4=85darka nie =
mo=C5=BCe automatycznie dodawa=C4=87 zak=C5=82adek. Aby doda=C4=87 =
zak=C5=82adk=C4=99 do strony, nale=C5=BCy wcisn=C4=85=C4=87 CTRL+D.";
var tradSelectLangLabel =3D "Zmie=C5=84 j=C4=99zyk";=20
var tradPageChanged =3D "Ta strona zosta=C5=82a zmieniona!";
var tradUnsavedLost =3D "Wszystkie niezapisane zmiany zostan=C4=85 =
utracone.";=20
var tradValidation =3D "Sprawdzanie";=20
var tradTree =3D "Drzewo";=20
var tradNotification =3D "Powiadomienie";

var dayArrayShort =3D new Array("Ni", "Po", "Wt", "=C5=9Ar", "Cz", "Pt", =
"So");
var monthArrayLong =3D new Array("Stycze=C5=84", "Luty", "Marzec", =
"Kwiecie=C5=84", "Maj", "Czerwiec", "Lipiec", "Sierpie=C5=84", =
"Wrzesie=C5=84", "Pa=C5=BAdziernik", "Listopad", "Grudzie=C5=84");

function submitLang(langEl){
  submitPageWithAction('cl');=20
}



function selectLangBox(){
  document.write("<label class=3D'hidden' =
for=3D'lgId'>"+tradSelectLangLabel+"</label><select id=3D'lgId' =
name=3D'lgId' onchange=3D'javascript:submitLang(this);'><option =
value=3D'bg'>=D0=B1=D1=8A=D0=BB=D0=B3=D0=B0=D1=80=D1=81=D0=BA=D0=B8 =
=D0=B5=D0=B7=D0=B8=D0=BA (bg)</option><option =
value=3D'cs'>=C4=8De=C5=A1tina (cs)</option><option value=3D'da'>dansk =
(da)</option><option value=3D'de'>Deutsch (de)</option><option =
value=3D'et'>eesti keel (et)</option><option =
value=3D'el'>=CE=B5=CE=BB=CE=BB=CE=B7=CE=BD=CE=B9=CE=BA=CE=AC =
(el)</option><option value=3D'en'>English (en)</option><option =
value=3D'es'>espa=C3=B1ol (es)</option><option =
value=3D'fr'>fran=C3=A7ais (fr)</option><option value=3D'ga'>Gaeilge =
(ga)</option><option value=3D'it'>italiano (it)</option><option =
value=3D'lv'>latvie=C5=A1u valoda (lv)</option><option =
value=3D'lt'>lietuvi=C5=B3 kalba (lt)</option><option =
value=3D'hu'>magyar (hu)</option><option value=3D'mt'>Malti =
(mt)</option><option value=3D'nl'>Nederlands (nl)</option><option =
value=3D'pl' selected=3D'selected'>polski (pl)</option><option =
value=3D'pt'>portugu=C3=AAs (pt)</option><option =
value=3D'ro'>rom=C3=A2n=C4=83 (ro)</option><option =
value=3D'sk'>sloven=C4=8Dina (sk)</option><option =
value=3D'sl'>sloven=C5=A1=C4=8Dina (sl)</option><option =
value=3D'fi'>suomi (fi)</option><option value=3D'sv'>svenska =
(sv)</option></select>"); =20
}

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/js/calendar.js?1.08.06

var datePickerDivID =3D "datepicker";
var iFrameDivID =3D "datepickeriframe";
=20
//var dayArrayShort =3D new Array('Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', =
'Sa');
var dayArrayMed =3D new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', =
'Sat');
var dayArrayLong =3D new Array('Sunday', 'Monday', 'Tuesday', =
'Wednesday', 'Thursday', 'Friday', 'Saturday');
var monthArrayShort =3D new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', =
'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
var monthArrayMed =3D new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', =
'June', 'July', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec');
//var monthArrayLong =3D new Array('January', 'February', 'March', =
'April', 'May', 'June', 'July', 'August', 'September', 'October', =
'November', 'December');
=20
// these variables define the date formatting we're expecting and =
outputting.
// If you want to use a different format by default, change the =
defaultDateSeparator
// and defaultDateFormat variables either here or on your HTML page.
var defaultDateSeparator =3D "-";        // common values would be "/" =
or "."
var defaultDateFormat =3D "mdy"    // valid values are "mdy", "dmy", and =
"ymd"
var dateSeparator =3D defaultDateSeparator;
var dateFormat =3D defaultDateFormat;
=20
/*=20
<input type=3Dbutton value=3D"select" =
onclick=3D"displayDatePicker('StartDate', false, 'dmy', '.');">
=20
This would display the datepicker beneath the StartDate field (because =
the
displayBelowThisObject parameter was false), and update the StartDate =
field with
the chosen value of the datepicker using a date format of dd.mm.yyyy
*/
function hideCalendar(){
	var pickerDiv =3D document.getElementById(datePickerDivID);
	  pickerDiv.style.visibility =3D "hidden";
	  pickerDiv.style.display =3D "none";
	=20
	  adjustiFrame();
}
function displayDatePicker(dateFieldName, displayBelowThisObject, =
dtFormat, dtSep)
{
  var targetDateField =3D document.getElementsByName =
(dateFieldName).item(0);
=20
  // if we weren't told what node to display the datepicker beneath, =
just display it
  // beneath the date field we're updating
  if (!displayBelowThisObject)
    displayBelowThisObject =3D targetDateField;
=20
  // if a date separator character was given, update the dateSeparator =
variable
  if (dtSep)
    dateSeparator =3D dtSep;
  else
    dateSeparator =3D defaultDateSeparator;
=20
  // if a date format was given, update the dateFormat variable
  if (dtFormat)
    dateFormat =3D dtFormat;
  else
    dateFormat =3D defaultDateFormat;
=20
  var x =3D displayBelowThisObject.offsetLeft;
  var y =3D displayBelowThisObject.offsetTop + =
displayBelowThisObject.offsetHeight ;
=20
  // deal with elements inside tables and such
  var parent =3D displayBelowThisObject;
  while (parent.offsetParent) {
    parent =3D parent.offsetParent;
    x +=3D parent.offsetLeft;
    y +=3D parent.offsetTop ;
  }
=20
  drawDatePicker(targetDateField, x, y);
}
=20
=20
/**
Draw the datepicker object (which is just a table with calendar =
elements) at the
specified x and y coordinates, using the targetDateField object as the =
input tag
that will ultimately be populated with a date.
=20
This function will normally be called by the displayDatePicker function.
*/
function drawDatePicker(targetDateField, x, y)
{
  var dt =3D getFieldDate(targetDateField.value );
=20
  // the datepicker table will be drawn inside of a <div> with an ID =
defined by the
  // global datePickerDivID variable. If such a div doesn't yet exist on =
the HTML
  // document we're working with, add one.
  if (!document.getElementById(datePickerDivID)) {
    // don't use innerHTML to update the body, because it can cause =
global variables
    // that are currently pointing to objects on the page to have bad =
references
    //document.body.innerHTML +=3D "<div id=3D'" + datePickerDivID + "' =
class=3D'dpDiv'></div>";
    var newNode =3D document.createElement("div");
    newNode.setAttribute("id", datePickerDivID);
    newNode.setAttribute("class", "dpDiv");
    newNode.setAttribute("style", "visibility: hidden;");
    document.body.appendChild(newNode);
  }
=20
  // move the datepicker div to the proper x,y coordinate and toggle the =
visiblity
  var pickerDiv =3D document.getElementById(datePickerDivID);
  pickerDiv.style.position =3D "absolute";
  pickerDiv.style.left =3D x + "px";
  pickerDiv.style.top =3D y + "px";
  pickerDiv.style.visibility =3D (pickerDiv.style.visibility =3D=3D =
"visible" ? "hidden" : "visible");
  pickerDiv.style.display =3D (pickerDiv.style.display =3D=3D "block" ? =
"none" : "block");
  pickerDiv.style.zIndex =3D 1000;
=20
  // draw the datepicker table
  refreshDatePicker(targetDateField.name, dt.getFullYear(), =
dt.getMonth(), dt.getDate());
}
=20
=20
/**
This is the function that actually draws the datepicker calendar.
*/
function refreshDatePicker(dateFieldName, year, month, day)
{
  // if no arguments are passed, use today's date; otherwise, month and =
year
  // are required (if a day is passed, it will be highlighted later)
  var thisDay =3D new Date();
=20
  if ((month >=3D 0) && (year > 0)) {
    thisDay =3D new Date(year, month, 1);
  } else {
    day =3D thisDay.getDate();
    thisDay.setDate(1);
  }
=20
  // the calendar will be drawn as a table
  // you can customize the table elements with a global CSS style sheet,
  // or by hardcoding style and formatting elements below
  var crlf =3D "\r\n";
  var TABLE =3D "<table cols=3D7 class=3D'dpTable' =
cellspacing=3D'1'><tr><td style=3D'text-align:right' colspan=3D'7'><img =
src=3D'"+imageFolder+"delete.png' onclick=3D'hideCalendar()' =
/></td></tr>" + crlf;
  var xTABLE =3D "</table>" + crlf;
  var TR =3D "<tr class=3D'dpTR'>";
  var TR_title =3D "<tr class=3D'dpTitleTR'>";
  var TR_days =3D "<tr class=3D'dpDayTR'>";
  var TR_todaybutton =3D "<tr class=3D'dpTodayButtonTR'>";
  var xTR =3D "</tr>" + crlf;
  var TD =3D "<td class=3D'dpTD' =
onMouseOut=3D'this.className=3D\"dpTD\";' onMouseOver=3D' =
this.className=3D\"dpTDHover\";' ";    // leave this tag open, because =
we'll be adding an onClick event
  var TD_title =3D "<td colspan=3D5 class=3D'dpTitleTD'>";
  var TD_buttons =3D "<td class=3D'dpButtonTD'>";
  var TD_todaybutton =3D "<td colspan=3D7 class=3D'dpTodayButtonTD'>";
  var TD_days =3D "<td class=3D'dpDayTD'>";
  var TD_selected =3D "<td class=3D'dpDayHighlightTD' =
onMouseOut=3D'this.className=3D\"dpDayHighlightTD\";' =
onMouseOver=3D'this.className=3D\"dpTDHover\";' ";    // leave this tag =
open, because we'll be adding an onClick event
  var xTD =3D "</td>" + crlf;
  var DIV_title =3D "<div class=3D'dpTitleText'>";
  var DIV_selected =3D "<div class=3D'dpDayHighlight'>";
  var xDIV =3D "</div>";
=20
  // start generating the code for the calendar table
  var html =3D TABLE;
=20
  // this is the title bar, which displays the month and the buttons to
  // go back to a previous month or forward to the next month
  html +=3D TR_title;
  html +=3D TD_buttons + getButtonCode(dateFieldName, thisDay, -1, =
"&nbsp;&nbsp;&nbsp;&nbsp;", '') + xTD;
  html +=3D TD_title + DIV_title + monthArrayLong[ thisDay.getMonth()] + =
" " + thisDay.getFullYear() + xDIV + xTD;
  html +=3D TD_buttons + getButtonCode(dateFieldName, thisDay, 1, =
"&nbsp;&nbsp;&nbsp;&nbsp;", 'right') + xTD;
  html +=3D xTR;
=20
  // this is the row that indicates which day of the week we're on
  html +=3D TR_days;
  for(i =3D 0; i < dayArrayShort.length; i++)
    html +=3D TD_days + dayArrayShort[i] + xTD;
  html +=3D xTR;
=20
  // now we'll start populating the table with days of the month
  html +=3D TR;
=20
  // first, the leading blanks
  for (i =3D 0; i < thisDay.getDay(); i++)
    html +=3D TD + "&nbsp;" + xTD;
=20
  // now, the days of the month
  do {
    dayNum =3D thisDay.getDate();
    TD_onclick =3D " onclick=3D\"updateDateField('" + dateFieldName + =
"', '" + getDateString(thisDay) + "');\">";
   =20
    if (dayNum =3D=3D day)
      html +=3D TD_selected + TD_onclick + DIV_selected + dayNum + xDIV =
+ xTD;
    else
      html +=3D TD + TD_onclick + dayNum + xTD;
   =20
    // if this is a Saturday, start a new row
    if (thisDay.getDay() =3D=3D 6)
      html +=3D xTR + TR;
   =20
    // increment the day
    thisDay.setDate(thisDay.getDate() + 1);
  } while (thisDay.getDate() > 1)
=20
  // fill in any trailing blanks
  if (thisDay.getDay() > 0) {
    for (i =3D 6; i > thisDay.getDay(); i--)
      html +=3D TD + "&nbsp;" + xTD;
  }
  html +=3D xTR;
=20
  // add a button to allow the user to easily return to today, or close =
the calendar
  var today =3D new Date();
  var todayString =3D "Today is " + dayArrayMed[today.getDay()] + ", " + =
monthArrayMed[ today.getMonth()] + " " + today.getDate();
  //html +=3D TR_todaybutton + TD_todaybutton;
  //html +=3D "<button class=3D'dpTodayButton' =
onClick=3D'refreshDatePicker(\"" + dateFieldName + "\");'>this =
month</button> ";
  //html +=3D "<button class=3D'dpTodayButton' =
onClick=3D'updateDateField(\"" + dateFieldName + "\");'>close</button>";
  //html +=3D xTD + xTR;
=20
  // and finally, close the table
  html +=3D xTABLE;
=20
  document.getElementById(datePickerDivID).innerHTML =3D html;
  // add an "iFrame shim" to allow the datepicker to display above =
selection lists
  adjustiFrame();
}
=20
=20
/**
Convenience function for writing the code for the buttons that bring us =
back or forward
a month.
*/
function getButtonCode(dateFieldName, dateVal, adjust, label, class2)
{
  var newMonth =3D (dateVal.getMonth () + adjust) % 12;
  var newYear =3D dateVal.getFullYear() + parseInt((dateVal.getMonth() + =
adjust) / 12);
  if (newMonth < 0) {
    newMonth +=3D 12;
    newYear +=3D -1;
  }
=20
  return "<button class=3D'dpButton "+class2+"' =
onClick=3D'refreshDatePicker(\"" + dateFieldName + "\", " + newYear + ", =
" + newMonth + ");'>" + label + "</button>";
}
=20
=20
/**
Convert a JavaScript Date object to a string, based on the dateFormat =
and dateSeparator
variables at the beginning of this script library.
*/
function getDateString(dateVal)
{
  var dayString =3D "00" + dateVal.getDate();
  var monthString =3D "00" + (dateVal.getMonth()+1);
  dayString =3D dayString.substring(dayString.length - 2);
  monthString =3D monthString.substring(monthString.length - 2);
=20
  switch (dateFormat) {
    case "dmy" :
      return dayString + dateSeparator + monthString + dateSeparator + =
dateVal.getFullYear();
    case "ymd" :
      return dateVal.getFullYear() + dateSeparator + monthString + =
dateSeparator + dayString;
    case "mdy" :
    default :
      return monthString + dateSeparator + dayString + dateSeparator + =
dateVal.getFullYear();
  }
}
=20
=20
/**
Convert a string to a JavaScript Date object.
*/
function getFieldDate(dateString)
{
  var dateVal;
  var dArray;
  var d, m, y;
=20
  try {
    dArray =3D splitDateString(dateString);
    if (dArray) {
      switch (dateFormat) {
        case "dmy" :
          d =3D parseInt(dArray[0], 10);
          m =3D parseInt(dArray[1], 10) - 1;
          y =3D parseInt(dArray[2], 10);
          break;
        case "ymd" :
          d =3D parseInt(dArray[2], 10);
          m =3D parseInt(dArray[1], 10) - 1;
          y =3D parseInt(dArray[0], 10);
          break;
        case "mdy" :
        default :
          d =3D parseInt(dArray[1], 10);
          m =3D parseInt(dArray[0], 10) - 1;
          y =3D parseInt(dArray[2], 10);
          break;
      }
      dateVal =3D new Date(y, m, d);
    } else if (dateString) {
      dateVal =3D new Date(dateString);
    } else {
      dateVal =3D new Date();
    }
  } catch(e) {
    dateVal =3D new Date();
  }
=20
  return dateVal;
}
=20
=20
/**
Try to split a date string into an array of elements, using common date =
separators.
If the date is split, an array is returned; otherwise, we just return =
false.
*/
function splitDateString(dateString)
{
  var dArray;
  if (dateString.indexOf("/") >=3D 0)
    dArray =3D dateString.split("/");
  else if (dateString.indexOf(".") >=3D 0)
    dArray =3D dateString.split(".");
  else if (dateString.indexOf("-") >=3D 0)
    dArray =3D dateString.split("-");
  else if (dateString.indexOf("\\") >=3D 0)
    dArray =3D dateString.split("\\");
  else
    dArray =3D false;
=20
  return dArray;
}
=20
/**
Update the field with the given dateFieldName with the dateString that =
has been passed,
and hide the datepicker. If no dateString is passed, just close the =
datepicker without
changing the field value.
=20
Also, if the page developer has defined a function called =
datePickerClosed anywhere on
the page or in an imported library, we will attempt to run that function =
with the updated
field as a parameter. This can be used for such things as date =
validation, setting default
values for related fields, etc. For example, you might have a function =
like this to validate
a start date field:
=20
function datePickerClosed(dateField)
{
  var dateObj =3D getFieldDate(dateField.value);
  var today =3D new Date();
  today =3D new Date(today.getFullYear(), today.getMonth(), =
today.getDate());
=20
  if (dateField.name =3D=3D "StartDate") {
    if (dateObj < today) {
      // if the date is before today, alert the user and display the =
datepicker again
      alert("Please enter a date that is today or later");
      dateField.value =3D "";
      document.getElementById(datePickerDivID).style.visibility =3D =
"visible";
      adjustiFrame();
    } else {
      // if the date is okay, set the EndDate field to 7 days after the =
StartDate
      dateObj.setTime(dateObj.getTime() + (7 * 24 * 60 * 60 * 1000));
      var endDateField =3D document.getElementsByName =
("EndDate").item(0);
      endDateField.value =3D getDateString(dateObj);
    }
  }
}
=20
*/
function updateDateField(dateFieldName, dateString)
{
  var targetDateField =3D document.getElementsByName =
(dateFieldName).item(0);
  if (dateString)
    targetDateField.value =3D dateString;
=20
  var pickerDiv =3D document.getElementById(datePickerDivID);
  pickerDiv.style.visibility =3D "hidden";
  pickerDiv.style.display =3D "none";
=20
  adjustiFrame();
  targetDateField.focus();
=20
  // after the datepicker has closed, optionally run a user-defined =
function called
  // datePickerClosed, passing the field that was just updated as a =
parameter
  // (note that this will only run if the user actually selected a date =
from the datepicker)
  if ((dateString) && (typeof(datePickerClosed) =3D=3D "function"))
    datePickerClosed(targetDateField);
}
=20
=20
/**
Use an "iFrame shim" to deal with problems where the datepicker shows up =
behind
selection list elements, if they're below the datepicker. The problem =
and solution are
described at:
=20
http://dotnetjunkies.com/WebLog/jking/archive/2003/07/21/488.aspx
http://dotnetjunkies.com/WebLog/jking/archive/2003/10/30/2975.aspx
*/
function adjustiFrame(pickerDiv, iFrameDiv)
{
  // we know that Opera doesn't like something about this, so if we
  // think we're using Opera, don't even try
  var is_opera =3D (navigator.userAgent.toLowerCase().indexOf("opera") =
!=3D -1);
  if (is_opera)
    return;
 =20
  // put a try/catch block around the whole thing, just in case
  try {
    if (!document.getElementById(iFrameDivID)) {
      // don't use innerHTML to update the body, because it can cause =
global variables
      // that are currently pointing to objects on the page to have bad =
references
      //document.body.innerHTML +=3D "<iframe id=3D'" + iFrameDivID + "' =
src=3D'javascript:false;' scrolling=3D'no' frameborder=3D'0'>";
      var newNode =3D document.createElement("iFrame");
      newNode.setAttribute("id", iFrameDivID);
      newNode.setAttribute("src", "javascript:false;");
      newNode.setAttribute("scrolling", "no");
      newNode.setAttribute ("frameborder", "0");
      document.body.appendChild(newNode);
    }
   =20
    if (!pickerDiv)
      pickerDiv =3D document.getElementById(datePickerDivID);
    if (!iFrameDiv)
      iFrameDiv =3D document.getElementById(iFrameDivID);
   =20
    try {
      iFrameDiv.style.position =3D "absolute";
      iFrameDiv.style.width =3D pickerDiv.offsetWidth;
      iFrameDiv.style.height =3D pickerDiv.offsetHeight ;
      iFrameDiv.style.top =3D pickerDiv.style.top;
      iFrameDiv.style.left =3D pickerDiv.style.left;
      iFrameDiv.style.zIndex =3D pickerDiv.style.zIndex - 1;
      iFrameDiv.style.visibility =3D pickerDiv.style.visibility ;
      iFrameDiv.style.display =3D pickerDiv.style.display;
    } catch(e) {
    }
=20
  } catch (ee) {
  }
=20
}
 
------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/js/ajax.js?1.08.06

/*
 * Project: TED
 * Contractor: ARHS-Developments
 *
 * $HeadURL: =
http://forge.aris-lux.lan/svn/opoce-ted/trunk/TEDWebapp/src/main/webapp/s=
tatic/js/ajax.js $
 * $Revision: 6930 $
 * $Date: 2010-04-29 15:47:05 +0200 (jeu., 29 avr. 2010) $
 * $Author: buissoni $
 */
 =20
function sendAjaxRequest(ajaxURL, responseProcessingFunction) {
	sendAjaxRequestImpl(ajaxURL, responseProcessingFunction, 'GET', null);
}

function sendPostAjaxRequest(ajaxURL, responseProcessingFunction, =
postMsg) {
	sendAjaxRequestImpl(ajaxURL, responseProcessingFunction, 'POST', =
postMsg);
}

function sendAjaxRequestImpl(ajaxURL, responseProcessingFunction, =
method, msg) {
	var xhr;
	if (window.XMLHttpRequest) {
		// If IE7, Mozilla, Safari, etc: Use native object
		xhr =3D new XMLHttpRequest();
	}
	else {
		if (window.ActiveXObject) {
			// ...otherwise, use the ActiveX control for IE5.x and IE6
			try {
				xhr =3D new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					xhr =3D new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {
				}
			}
		}
	}
	//register the processExpandTreeHttpResponse javascript function to =
process=20
	//the http response;
	xhr.onreadystatechange =3D function() { processAjaxResponse(xhr, =
responseProcessingFunction); };;
	//alert("Sending Ajax request '" + ajaxURL + "'");=20
	xhr.open(method, ajaxURL, true);
	if (msg !=3D null) {
		xhr.setRequestHeader('Content-Type', =
'application/x-www-form-urlencoded');
	} =20
	xhr.send(msg);
}

function processAjaxResponse(httpRequest, responseProcessingFunction) {
	if (httpRequest.readyState =3D=3D 4) {
		if (httpRequest.status =3D=3D 200) {
			//from here, two httpRequest properties are available:
			// 1. httpRequest.responseText: return the response stream
			//    interpreted as a stream of characters
			// 2. httpRequest.responseXML: return an object that implements the
			//    document interface
			var jsonResponse =3D httpRequest.responseText;
			if(jsonResponse !=3D "") {
				eval("var resp=3D " + jsonResponse + ";")
				if (resp.errorCode !=3D null) {
					processAjaxErrorResponse(resp);
				} else {
					responseProcessingFunction(resp);
				}
			}
		} else if (httpRequest.status =3D=3D 500) {
			var jsonResponse =3D httpRequest.responseText;
			eval("var resp=3D " + jsonResponse + ";")
			processAjaxErrorResponse(resp);
		} else if (httpRequest.status =3D=3D 0) {
			//IOException: handle this silencly
		} else {
			var msg =3D "javascript_ajax_error_response_code_is_not_200 (It was " =
+ httpRequest.status + ")";
			//alert(msg);
		}
	} else {
		//request is not completely processed:
		//readyState could be:
		// 0 (uninitialized)
		// 1 (loading)
		// 2 (loaded)
		// 3 (interactive)
		// 4 (complete)
	}
}

function processAjaxErrorResponse(errorResponse) {
	alert(errorResponse.errorMsg);
}

window.ajaxLoaded =3D true;

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/js/ted.js?1.08.06

/*
 * Project: TED
 * Contractor: ARHS-Developments
 *
 * $HeadURL: =
http://forge.aris-lux.lan/svn/opoce-ted/trunk/TEDWebapp/src/main/webapp/s=
tatic/js/ted.js $
 * $Revision: 6841 $
 * $Date: 2010-04-16 11:24:22 +0200 (ven., 16 avr. 2010) $
 * $Author: buissoni $
 */

/**
 * The goal of the registerEvent framework is to permit to register =
several function to the window.onload
 * and window.onresize event.<b>
 */
var _registeredEvents =3D new Array();

function RegisteredEvent(eventType, fnction) {
	this.fnction =3D fnction;
	this.eventType =3D eventType.toLowerCase();
}

/**
 * The goal of the registerEvent() function is to permit to register =
several function to the window.onload
 * and window.onresize event.<b>
 */
function registerEvent(eventType, fnction) {
	var fnt;
	if (typeof(fnction)=3D=3D"function") {
		fnt =3D fnction;
	}
	else if (typeof(fnction)=3D=3D"string") {
		fnt =3D new Function(fnction);
	}
	else {
		alert("could only register function !!!");
		return;
	}
	//alert("Registering '" + eventType + "' function '" + fnt + "'");
	_registeredEvents[_registeredEvents.length] =3D new =
RegisteredEvent(eventType, fnt);
};

function _callRegisteredEvents(eventType) {
	var i;
	for (i =3D 0; i<_registeredEvents.length; i++) {
		var registeredEvent =3D _registeredEvents[i];
		if (eventType =3D=3D registeredEvent.eventType) {
			//alert("Calling '" + eventType + "' function '" + =
registeredEvent.fnction + "'");
			registeredEvent.fnction();
			//alert("Called");
		}
	}
}

//window.status =3D "Loading page...";
window.onload =3D new Function("_callRegisteredEvents('onload')");
//window.onresize =3D function() {_callRegisteredEvents("onresize");};

//registerEvent("onload", new Function("window.status =3D 'Page =
successfully loaded...'"));

window.registerEventLoaded =3D true;
=20
=09

/**
 * Submit the page, after have setting the correct action id in the =
hidden field with id 'action' (created by template.jsp).
 */
function $do(actionId, additionalParams, checkChanges, disableLoading) {
	$do(actionId, additionParams, checkChanges, disableLoading, "_self");
}

function $do(actionId, additionalParams, checkChanges, disableLoading, =
target, url) {
	if (target =3D=3D null) {
		target =3D "_self";
	} else if (target =3D=3D "_blank") {
		disableLoading =3D true;
	}
	doAction(actionId, additionalParams, checkChanges, disableLoading, =
target, url);
	return;
}

/**
 * Submit the page, after have setting the correct action id in the =
hidden field with id 'action' (created by template.jsp).
 */
function doAction(actionId, additionalParams, checkChanges, =
disableLoading, target, url) {
	var mainForm =3D document.getElementById("mainForm");
	mainForm.target =3D target;
	mainForm.getAttributeNode("action").value =3D (url !=3D null ? url : =
"?")+additionalParams;
	if(checkChanges && hasElementChanged){
		document.getElementById('action').value =3D actionId;
		//document.getElementById('jsEnabled').value =3D "true";
		try {
			generateBoxComponent('','');
		} catch (e) {
			//ignore showdiv error: we want to execute action !
			alert(e.toString());
		}
		return ;
	}
	submitPageWithAction(actionId, disableLoading);
}
/**
 * Prevent submitting the form before onclick event provide correct =
action to the form
 *=20
 */
function disableOnsubmit(boo){
	if (!boo){
		document.getElementById('mainForm').onsubmit =3D function =
onsubmit(event) {=20
			//Nothing for onsubmit
		} ;
	}
	else{
		document.getElementById('mainForm').onsubmit =3D function =
onsubmit(event) {=20
			return false;
		} ;	=09
	}
}

/**
 * Submit the page, after have setting the correct action id in the =
hidden field with id 'action' (created by template.jsp).
 */
function submitPageWithAction(actionId, disableLoading) {
	if (!disableLoading) {
	  try {
		showDiv('loading');
	  } catch (e) {
		//ignore showdiv error: we want to execute action !
	  }
	}
	document.getElementById('action').value =3D actionId;
	//document.getElementById('jsEnabled').value =3D "true";
	document.getElementById('mainForm').submit();
}
/**
 * This function create and display the question box component
 * @param yesFunction : the function called on YES click
 * @param noFunction : the function called on NO click
 */
function generateBoxComponent(yesFunction, noFunction){
	var yesDefault=3D"document.getElementById('mainForm').submit();";
	var noDefault=3D"hideDiv('boxComponent');";
	var box =3D document.getElementById("boxComponent");
	box.innerHTML =3D "<div class=3D'boxComponent'><div =
class=3D'top'><span>"+tradNotification+"</span></div><div =
class=3D'middle'><p>"+tradPageChanged+"<br/>"+tradUnsavedLost+"</p></div>=
<div class=3D'bottom' style=3D'padding-bottom: -10px;'><fieldset =
class=3D'boxValidation'><legend>"+tradValidation+"</legend><div =
class=3D'buttonContainer'><div class=3D'leftButtonPart'><input =
type=3D'button' class=3D'button' value=3D'"+tradOk+"' =
onclick=3D\""+yesDefault+" \"/></div></div><div =
class=3D'buttonContainer'><div class=3D'leftButtonPart'><input =
type=3D'button' class=3D'button' value=3D'"+tradCancel+"' =
onclick=3D\""+noDefault+"\"/></div></div></fieldset></div></div>";
	showDiv("boxComponent");
}
/**
 * This function create a link to help pages in a new window
 */
function writeHelpLink(page, helpLabel, section){
	if(section !=3D '') {
		page =3D page + "." + section;
	}
	document.write("<a class=3D'black' href=3D'javascript:;' =
onclick=3D\"window.open('" + appContextRoot + =
"/misc/helpPage.do?helpPageId=3D" + page + "','Help','menubar=3Dno, =
status=3Dno, directories=3Dno, location=3Dno, resizable=3Dno,  =
width=3D920, height=3D600'); \">" + helpLabel + "</a>");
}
/**
 * This function create a datepicker icon next to relevant input
 */
function writeDatepicker(field, displayClass, imgId){
	document.write(' <img id=3D"'+imgId+'" src=3D"'+calendarUrl+'" =
style=3D"visibility:'+displayClass+'" alt=3D"datepicker" =
onclick=3D"displayDatePicker(\''+field+'\', false, \'dmy\', \'-\');" =
/>');
}
/**
 * This function create a bookmark icon
 */
function writeBookmarkDocument(imgSrc, title, bmName, bmUrl){
	var favName =3D bmName;
	favName =3D favName.replace(/\"/g,"&quot;");
	favName =3D favName.replace(/'/g,"\\'")
	document.write("<a href=3D\"javascript:;\" =
onclick=3D\"bookmarkPage('"+favName+"','"+bmUrl+"')\" =
class=3D\"icon\"><img src=3D'"+imgSrc+"' alt=3D'"+title+"' =
title=3D'"+title+"'/></a>");
}
/**
 * This function create the loading widget
 */
function writeLoadingBox(pleaseWaitTxt){
	document.write("<div id=3D\"foreground\"></div><div id=3D\"loading\"><p =
class=3D'bold'>"+pleaseWaitTxt+"</p><img =
src=3D\""+imageFolder+"loading.gif \" alt=3D\""+pleaseWaitTxt+"\" =
title=3D\""+pleaseWaitTxt+"\" /></div>");
}
/**
 * Add automatically the provided url in the browser bookmark=20
 * Inform user when browser is not compatible
 */
function bookmarkPage(name, url){
	if(name=3D=3Dnull || url=3D=3Dnull){
		alert("Error 1\n"+tradErrorBookmarkPage);
		return;
	}
	if (url !=3D null && url.indexOf("http:") < 0){
		alert("Error 2\n"+tradErrorBookmarkPage);
		return;
	}
	if(window.external && !window.sidebar && =
navigator.userAgent.toLowerCase().indexOf('chrome')< 0) {                =
           // add IE favorite
		external.AddFavorite(url,name);
	} else if(window.sidebar && sidebar.addPanel && =
navigator.userAgent.toLowerCase().indexOf('chrome')< 0) { 					// add to =
FF bookmarks
		sidebar.addPanel(name,url,'');
	} else {                                       						 // unknown =
browser: report user
		alert(tradErrorBookmarkPage);
	}

}
/**
 * Enable/disable 'exact date' and 'from/to date' inputs
 */
function switchDateChoice(){
	var publicationDate =3D =
document.getElementsByName("searchCriteria.publicationDate")[0];
	var publicationDateChoice =3D =
document.getElementsByName("searchCriteria.publicationDateChoice")[0];
	var fromPublicationDate =3D =
document.getElementsByName("searchCriteria.fromPublicationDate")[0];
	var toPublicationDate =3D =
document.getElementsByName("searchCriteria.toPublicationDate")[0];
=09
	if(!publicationDateChoice.checked){
		//disable exact publication date
		publicationDate.disabled =3D "disabled";
		publicationDate.value =3D "";
		publicationDate.className =3D "field blueBg disabled";
		document.getElementById("exactPD").style.visibility=3D"hidden"; // =
hide datepicker img
		//enable from/to Date
		fromPublicationDate.disabled =3D "";
		toPublicationDate.disabled =3D "";
		if(fromPublicationDate.className !=3D "field blueBg error") {
			fromPublicationDate.className =3D "field blueBg";
		}
		if(toPublicationDate.className !=3D "field blueBg error") {
			toPublicationDate.className =3D "field blueBg";
		}
		document.getElementById("toPD").style.visibility=3D"visible"; // show =
datepicker img
		document.getElementById("fromPD").style.visibility=3D"visible"; // =
show datepicker img
	}
	else{
		publicationDate.disabled =3D "";
		if(publicationDate.className !=3D "field blueBg error") {
			publicationDate.className =3D "field blueBg";
		}
		document.getElementById("exactPD").style.visibility=3D"visible";
	=09
		fromPublicationDate.disabled =3D "disabled";
		toPublicationDate.disabled =3D "disabled";
		fromPublicationDate.value =3D "";
		toPublicationDate.value =3D "";
		fromPublicationDate.className =3D "field blueBg disabled";
		toPublicationDate.className =3D "field blueBg disabled";
		document.getElementById("toPD").style.visibility=3D"hidden";
		document.getElementById("fromPD").style.visibility=3D"hidden";
	}
}

/**
 * Show html element with provided id over a standard background
 */
function showDiv(divId){=09
	document.getElementById('foreground').style.height =3D =
document.getElementById("footer").offsetTop+100+"px";=20
	document.getElementById('foreground').style.top =3D "0px";
	document.getElementById('foreground').style.left =3D "0px";
	document.getElementById(divId).style.left =3D "0";
	if(divId.indexOf("loading")>-1){
		//document.getElementById(divId).innerHTML =3D loadingContent;
		document.getElementById(divId).style.left =3D "43%";
	}
	//hide <select> useful for ie6
	var selects =3D document.getElementsByTagName("select");
	for (var i =3D 0; i < selects.length; i++) {=20
		selects[i].style.visibility =3D"hidden";
	}
}

function checkNotMiddleOrKeyClick(e){=09
	var evt=3Dwindow.event? event : e=20
	var middleClick;
	var ctrlClick;
	var code;
	//check if middle mouse click was performed
	if (evt.which){=20
		middleClick =3D (evt.which =3D=3D 2);
	}
	else if (evt.button){=20
		//following definition W3C: middle =3D 1, Microsoft: middle =3D 4
		middleClick =3D (evt.button =3D=3D 1 || evt.button =3D=3D 4);
	}
	shiftPressed =3D evt.shiftKey;
    altPressed   =3D evt.altKey;
	ctrlPressed  =3D evt.ctrlKey;
	//hide div because onload is not correctly handled in chrome when =
middle click and not correctly handled in chrome
	//and firefox when ctrl-left click, so load will freeze the old tab in =
chrome when opening a new tab
    if (middleClick ||shiftPressed || altPressed || ctrlPressed){
		return false;
	} else {
		return true;
	}
}

/**
 * Hide background and html element with provided id
 */
function hideDiv(divId){
	document.getElementById('foreground').style.height =3D "0px";=20
	document.getElementById('foreground').style.top =3D "-10000px";
	document.getElementById('foreground').style.left =3D "-10000px";
	document.getElementById(divId).style.left =3D "-10000px";
	var selects =3D document.getElementsByTagName("select");
	for (var i =3D 0; i < selects.length; i++) {=20
		selects[i].style.visibility =3D"visible";
	}
}

var currentElementValue=3D"";
var hasElementChanged =3D false;
/**
 * This function set a boolean variable when the user change inputs =
value
 * onfocus set default value
 * onblur check if the value has changed
 */
function formElementFocus(el){
	if(el.type.indexOf("text")> -1){	// value for input type=3Dtext
		currentElementValue=3Del.value;
	}
	else{								// selectedIndex for select
		currentElementValue=3Del.selectedIndex;
	}
}
function formElementBlur(el){
	if(el.type.indexOf("text")> -1){
		if (currentElementValue !=3D el.value){
			hasElementChanged =3D true;
		}
	}
	else{
		if (currentElementValue !=3D el.selectedIndex){
			hasElementChanged =3D true;
		}
	}
}
/**
 * Special check for checkbox change
 */
function formCheckboxChange(el){	// any change in checkbox make the =
boolean true > (google does not support focus/blur on checkbox)
	hasElementChanged =3D true;
}
/**
 * This function create a 'plus' icon next to relevant inputs
 */
function writePickLink(refDataId, title, imgUrl, inputId){
	document.write('<a href=3D"javascript:;" =
onclick=3D"startPickRefData(\'' +  refDataId + '\', \''+inputId+'\')" =
title=3D"'+title+'"><img src=3D"'+imgUrl+'" alt=3D"'+title+'" /></a>');=09
}
function writeFilterButton(refDataId){
	document.write("<div class=3D'buttonContainer'><div =
class=3D'leftButtonPart'><input value=3D'"+tradApply+"' =
title=3D'"+tradApply+"' class=3D'button' =
onclick=3D\"filterFromBrowse('"+refDataId+"')\" =
type=3D'button'></div></div>");=09
}


var ajaxProcessing =3D false;
var originalInputId=3D"";
var generateFunction =3D"";
var useDescriptionMap =3D new Array();
var displayKeyMap =3D new Array();
var displayFirstLevelKeyMap =3D new Array();
var loadingImg=3D"<img src=3D'"+imageFolder+"ajax-loading.gif' =
alt=3D'loading' />";
var loadingImg2=3D"<br/><img src=3D'"+imageFolder+"ajax-loading2.gif' =
alt=3D'loading' style=3D'margin-left:30px;' />";
/**
 * This method is called when a user clicks on a pick link (when =
javascript is enable). This is the main entry point for the AJAX =
workflow.
 * @return always false
 */
function startPickRefData(refDataId,inputId) {
	//TODO
	if (ajaxProcessing =3D=3D true) {
		window.status =3D "Action cancelled: can't process send 2 ajax request =
at the same time";
		return false;
	}
	//generateFunction =3D "generateLiContent1";
	generateFunction =3D "fromSearch";
	showDiv('loading');
	//set the id of the linked input text
	originalInputId=3DinputId;
	//set the 'ajax' processing page variable to true, in order to avoid =
several simultaneous ajax processing.
	ajaxProcessing =3D true;
	//send init ajax request
	var ajaxUrl =3D refDataAjaxServiceBaseUrl + =
'action=3DloadInitialTree&refDataId=3D' + encodeURIComponent(refDataId);
	sendAjaxRequest(ajaxUrl, onLoadInitialRefDataCallBack);
	//register the process
	return false;
}
function onLoadInitialRefDataCallBack(ajaxResponse) {
	var dynamic=3D"";
	var footer=3D"</div></fieldset><fieldset =
class=3D\"footerJS\"><legend>"+tradValidation+"</legend><div =
class=3D\"buttonContainer\"><div class=3D\"leftButtonPart\"><input =
type=3D\"button\" name=3D\"action_confirm\" class=3D\"button\" =
value=3D\""+tradOk+"\" onclick=3D\"fillInput();\"/></div></div><div =
class=3D\"buttonContainer\"><div class=3D\"leftButtonPart\"><input =
type=3D\"button\" name=3D\"action_cancel\" class=3D\"button\" =
value=3D\""+tradCancel+"\" =
onclick=3D\"hideDiv('jsContainer');\"/></div></div></fieldset>";
	ajaxProcessing =3D false;
	//alert('On ajax callback:' + ajaxResponse.refDataId);
	//alert('On ajax callback:' + ajaxResponse.children.length);
	document.getElementById("jsContainer").innerHTML=3D"";
	var refDataId=3DajaxResponse.refDataId;
	displayKeyMap[refDataId] =3D ajaxResponse.displayKey;
	displayFirstLevelKeyMap[refDataId] =3D =
ajaxResponse.displayFirstLevelKey;
	useDescriptionMap[refDataId]=3DajaxResponse.useDescription;
	var header =3D generateHeader(ajaxResponse.isHierarchical, =
ajaxResponse.ajaxWindowTitle, refDataId);
	// if hierarchical > generate tree
	if(ajaxResponse.isHierarchical){
		dynamic =3D generateChildren(ajaxResponse, refDataId, true);
	}
	// else generate simple list
	else{
		dynamic =3D generateList(ajaxResponse, refDataId);
	}
	//alert(ajaxResponse.children[child].description);
	//expandNode(ajaxResponse.refDataId, ajaxResponse.children[0].key);
	=
document.getElementById("jsContainer").innerHTML=3Dheader+dynamic+footer;=

	hideDiv('loading');
	showDiv('jsContainer');
=09
}
var isFilteredTree =3D false;
function resetTree(scope) {
	var ajaxUrl =3D refDataAjaxBrowseServiceBaseUrl + =
'action=3DupdateSearchScope&searchScope=3D' + scope.value;
	sendAjaxRequest(ajaxUrl, onResetTreeCallBack);
	return false;
}
function onResetTreeCallBack(ajaxResponse) {
	ajaxProcessing =3D false;
	var funcs =3D ajaxResponse.split("|");
	for (var i=3D0; i < funcs.length; i++ ){
		if(funcs[i].indexOf("COUNTRY") > -1){
			loadCountryTree(funcs[i],isFilteredTree);
		}
		else{
			loadFilterTree(funcs[i]);
		}
	}
}

/**
 * This method is called on onload event of browsing page.
 */
function loadCountryTree(refDataId, filteredTree) {
	isFilteredTree =3D filteredTree;
	document.getElementById("leftTree").innerHTML=3DloadingImg;
	//generateFunction =3D "generateLiContent2";
	generateFunction =3D "fromBrowse";
	//showDiv('loading');
	var ajaxUrl =3D refDataAjaxBrowseServiceBaseUrl + =
'action=3DloadInitialTree&refDataId=3D' + =
encodeURIComponent(refDataId)+"&filteredTree=3D"+filteredTree;
	sendAjaxRequest(ajaxUrl, onLoadCountryTreeCallBack);
	return false;
}
function onLoadCountryTreeCallBack(ajaxResponse) {
	var dynamic=3D"";
	ajaxProcessing =3D false;
	var refDataId=3DajaxResponse.refDataId;
	displayKeyMap[refDataId] =3D ajaxResponse.displayKey;
	dynamic =3D generateChildren(ajaxResponse, ajaxResponse.refDataId, =
true);
	document.getElementById("leftTree").innerHTML=3Ddynamic;
	hideDiv('loading');
}
/**
 * This method is called on onload event of browsing page. Only for =
filterable tree.
 */
function loadFilterTree(refDataId) {
	document.getElementById("filterTree").innerHTML=3DloadingImg;
	//generateFunction =3D "generateLiContent2";
	generateFunction =3D "fromBrowse";
	//showDiv('loading');
	var ajaxUrl =3D refDataAjaxBrowseServiceBaseUrl + =
'action=3DloadInitialTree&refDataId=3D' + encodeURIComponent(refDataId);
	sendAjaxRequest(ajaxUrl, onLoadFilterTreeCallBack);
	return false;
}
function onLoadFilterTreeCallBack(ajaxResponse) {
	var dynamic=3D"";
	ajaxProcessing =3D false;
	var refDataId=3DajaxResponse.refDataId;
	displayKeyMap[refDataId] =3D ajaxResponse.displayKey;
	displayFirstLevelKeyMap[refDataId] =3D =
ajaxResponse.displayFirstLevelKey;
	dynamic =3D generateChildren(ajaxResponse, ajaxResponse.refDataId, =
true);
	document.getElementById("filterTree").innerHTML=3Ddynamic;
	hideDiv('loading');
}
/**
 * This method is called when a user clicks on a expand link in the AJAX =
tree from browse feature.
 */
function expandBrowseNode(refDataId, key, keyId) {
	var elId=3D"k"+keyId;
	document.getElementById(elId).innerHTML+=3DloadingImg2;
	var ajaxUrl =3D refDataAjaxBrowseServiceBaseUrl + =
'action=3Dexpand&refDataId=3D' + encodeURIComponent(refDataId) + =
'&key=3D' + encodeURIComponent(key)+ '&keyId=3D' + =
encodeURIComponent(keyId);
	var fnc =3D new Function("xx", "var elId=3D'" + elId + "'; =
onExpandNodeRefDataCallBack(xx, elId, '"+refDataId+"');");
	sendAjaxRequest(ajaxUrl, fnc);
}
/**
 * These methods are called when a user clicks on a expand link in the =
AJAX tree.
 */
function expandNode(refDataId, key, keyId) {
	var elId=3D"k"+keyId;
	document.getElementById(elId).innerHTML+=3DloadingImg2;
	var ajaxUrl =3D refDataAjaxServiceBaseUrl + =
'action=3Dexpand&refDataId=3D' + encodeURIComponent(refDataId) + =
'&key=3D' + encodeURIComponent(key)+ '&keyId=3D' + =
encodeURIComponent(keyId);
	var fnc =3D new Function("xx", "var elId=3D'" + elId + "'; =
onExpandNodeRefDataCallBack(xx, elId, '"+refDataId+"');");
	sendAjaxRequest(ajaxUrl, fnc);
}
function expandFilterNode(refDataId, key, keyId) {
	var elId=3D"k"+keyId;
	document.getElementById(elId).innerHTML+=3DloadingImg2;
	var ajaxUrl =3D refDataAjaxServiceBaseUrl + =
'action=3DexpandFilter&refDataId=3D' + encodeURIComponent(refDataId) + =
'&key=3D' + encodeURIComponent(key)+ '&keyId=3D' + =
encodeURIComponent(keyId);
	var fnc =3D new Function("xx", "var elId=3D'" + elId + "'; =
onExpandNodeRefDataCallBack(xx, elId, '"+refDataId+"');");
	sendAjaxRequest(ajaxUrl, fnc);
}
function onExpandNodeRefDataCallBack(ajaxResponse, elId, refDataId) {
	var dynamic=3D"";
	ajaxProcessing =3D false;
	dynamic =3D generateChildren(ajaxResponse,refDataId, false);
	document.getElementById(elId).innerHTML=3Ddynamic;
}
function updateRightTree(refDataId, key) {
	document.getElementById("filterTree").innerHTML=3DloadingImg;
	var ajaxUrl =3D refDataAjaxBrowseServiceBaseUrl + =
'action=3DloadRightTree&refDataId=3D' + encodeURIComponent(refDataId) =
+'&key=3D' + encodeURIComponent(key);
	sendAjaxRequest(ajaxUrl, onUpdateRightTreeCallBack);
}
function onUpdateRightTreeCallBack(ajaxResponse) {
	var dynamic=3D"";
	ajaxProcessing =3D false;
	dynamic =3D generateChildren(ajaxResponse,ajaxResponse.refDataId, =
true);
	document.getElementById("filterTree").innerHTML=3Ddynamic;
}
/**
 * This method is called when a user clicks on the filter button from =
browse pages.
 */
function filterFromBrowse(refDataId) {
	if (document.getElementById("searchKey").value =3D=3D ""){
		loadFilterTree(refDataId);
	}
	else {
		document.getElementById("filterTree").innerHTML=3DloadingImg;
		var ajaxUrl =3D refDataAjaxBrowseServiceBaseUrl;
		//sendAjaxRequest(ajaxUrl, onFilterFromBrowseCallBack);
		sendPostAjaxRequest(ajaxUrl, onFilterFromBrowseCallBack, =
'action=3Dfind&refDataId=3D' + encodeURIComponent(refDataId) + '&key=3D' =
+ encodeURIComponent(document.getElementById("searchKey").value));
	}
}
function onFilterFromBrowseCallBack(ajaxResponse){
	var dynamic=3D"";
	ajaxProcessing =3D false;
	dynamic =3D generateChildren(ajaxResponse, ajaxResponse.refDataId, =
true);
	document.getElementById("filterTree").innerHTML=3Ddynamic;
}
/**
 * This method is called when a user clicks on the filter button from =
search pages.
 */
function findNode(refDataId) {
	if (document.getElementById("treeFilter").value =3D=3D ""){
		startPickRefData(refDataId,originalInputId);
	}
	else{
		document.getElementById("overflow").innerHTML=3D"<div =
style=3D'text-align:center'>"+loadingImg+"</div>";
		var ajaxUrl =3D refDataAjaxServiceBaseUrl ;
		//sendAjaxRequest(ajaxUrl, onFindNodeRefDataCallBack);
		sendPostAjaxRequest(ajaxUrl, =
onFindNodeRefDataCallBack,'action=3Dfind&refDataId=3D' + =
encodeURIComponent(refDataId) + '&key=3D' + =
encodeURIComponent(document.getElementById("treeFilter").value));
	}
}

function onFindNodeRefDataCallBack(ajaxResponse){
	var dynamic=3D"";
	ajaxProcessing =3D false;
	dynamic =3D generateChildren(ajaxResponse, ajaxResponse.refDataId, =
true);
	document.getElementById("overflow").innerHTML=3Ddynamic;
}
/**
 * This function generate the AJAX tree
 */
function generateChildren(subChildren, refDataId, isFirstLevel){
	var dynamic=3D"";
	var specialStyle=3D"";
	if(subChildren.exception !=3D null){
		return "<p class=3D'red bold' =
style=3D'margin-left:10%'>"+subChildren.exception+"</p>";
	}
	if((subChildren.children!=3Dnull && subChildren.children.length < 1) || =
subChildren.children=3D=3Dnull){
		return "<p class=3D'red bold' =
style=3D'margin-left:10%'>"+tradNoFilterResult+"</p>";
	}
	dynamic+=3D"<ul class=3D\"tree\">";
	for (var child=3D0 ; child< subChildren.children.length; child++){
		specialStyle =3D"";
		dynamic+=3D"<li>";
		//if child is a branch
		if(subChildren.children[child].type !=3D null && =
subChildren.children[child].type.indexOf("branch")>-1){
			// if expanded (with children) > display minus icon
			if(subChildren.children[child].children !=3D null && =
subChildren.children[child].children.length > 0){
				dynamic+=3D"<a href=3D\"javascript:;\"><img =
src=3D\""+imageFolder+"minus.gif\" alt=3D\""+tradCollapse+"\" =
onclick=3D\"document.getElementById('k"+subChildren.children[child].keyId=
+"').style.display=3D'none'; =
changeToExpand(this,'k"+subChildren.children[child].keyId+"')\" /></a>";
			}
			//if collapse (without children) > display plus icon
			else{
				// One filter result > hide plus icon
				if(subChildren.children[child].foundOccurence && =
subChildren.children[child].foundOccurence =3D=3D 1 && =
subChildren.children[child].match){
					specialStyle =3D" style=3D'visibility:hidden'";
				}
				dynamic+=3D"<a href=3D\"javascript:;\" "+specialStyle+"><img =
src=3D\""+imageFolder+"plus.gif\" alt=3D\""+tradExpand+"\" =
onclick=3D\"";
				// If foundOccurence > Filter tree=20
				if(generateFunction.indexOf("fromBrowse") < 0 ){
					if(subChildren.children[child].foundOccurence && =
subChildren.children[child].foundOccurence > 0){
						dynamic+=3D"expandFilterNode";
					}
					else{
						dynamic+=3D"expandNode";
					}
				}
				else{
					dynamic+=3D"expandBrowseNode";
				}
				=
dynamic+=3D"('"+refDataId+"','"+subChildren.children[child].key+"','"+sub=
Children.children[child].keyId+"'); =
changeToCollapse(this,'k"+subChildren.children[child].keyId+"')\" =
/></a>";
			}
		}
		else{
			dynamic+=3D"<img src=3D\""+imageFolder+"tree-separator.gif\" =
alt=3D\"\" />";
		}
		//methode avec eval=20
		//dynamic+=3D =
eval(generateFunction+'('+subChildren.children[child]+')');
		//methode avec if
		if(generateFunction.indexOf("fromBrowse")> -1 ){
			dynamic+=3DgenerateLiForBrowse(subChildren.children[child], =
refDataId, isFirstLevel);
		}
		else if(generateFunction.indexOf("fromSearch")> -1){
			dynamic+=3DgenerateLiForSearch(subChildren.children[child], =
refDataId, isFirstLevel);
		}
		dynamic+=3D"<span id=3D'k"+subChildren.children[child].keyId+"'>";
		//recurrency if child has children
		if(subChildren.children[child].children !=3D null && =
subChildren.children[child].children.length > 0){
			dynamic +=3D generateChildren(subChildren.children[child], refDataId, =
false);
		}
		dynamic+=3D"</span></li>";
	}
	dynamic+=3D"</ul>";
	return dynamic;
}
/**
 * This function generate an AJAX List
 */
function generateList(subChildren, refDataId){
	var dynamic=3D"";
	// one column layout
	if (subChildren.children.length<=3D10){
		dynamic+=3D"<div class=3D\"column\"><ul>";
		for (var j=3D0 ; j< subChildren.children.length; j++){
			dynamic+=3DgenerateLiForList(subChildren.children[j],true, =
refDataId);
		}
		dynamic+=3D"</ul></div>";
	}
	//two columns layout
	else{
		dynamic+=3D"<div class=3D\"column1\"><ul>";
		for (var k=3D0 ; k< subChildren.children.length/2; k++){
			dynamic+=3DgenerateLiForList(subChildren.children[k],true,refDataId);
		}
		dynamic+=3D"</ul></div>";
		dynamic+=3D"<div class=3D\"column2\"><ul>";
		for (k ; k< subChildren.children.length; k++){
			=
dynamic+=3DgenerateLiForList(subChildren.children[k],false,refDataId);
		}
		dynamic+=3D"</ul></div>";
	}
	return dynamic;
}
/**
 * This function generate <li> element for ajax list
 */
function generateLiForList(subChildren, labelOnLeft, refDataId){
	var dynamic=3D"";
	labelOnLeft =3D false;
	dynamic+=3D"<li>";
	//label before checkbox
	if(labelOnLeft){
		dynamic+=3D"<label for=3D\"chkId"+subChildren.key+"\">";
		if(displayKeyMap[refDataId]){
			dynamic+=3DsubChildren.key+" - ";
		}
		dynamic+=3DsubChildren.description+"</label> ";
	}
	dynamic+=3D"<input type=3D\"checkbox\" class=3D\"checkbox\" =
name=3D\"chk\" id=3D\"chkId"+subChildren.key+"\" ";
	if(useDescriptionMap[refDataId]){
		dynamic+=3D"value=3D\"'"+subChildren.description+"'\"";
	}
	else{
		dynamic+=3D"value=3D\""+subChildren.key+"\"";
	}
	dynamic+=3D" />";
	//label after checkbox
	if(!labelOnLeft){
		dynamic+=3D"<label for=3D\"chkId"+subChildren.key+"\">";
		if(displayKeyMap[refDataId]){
			dynamic+=3DsubChildren.key+" - ";
		}
		dynamic+=3DsubChildren.description+"</label> ";
	}
	dynamic+=3D"</li>";
	return dynamic;
}
/**
 * This function generate the header part of dynamic content when user =
clicked on a 'plus' icon
 */
function generateHeader(isHierarchical, title, refDataId){
	if(title =3D=3D null) {
		title =3D "";
	}
	var header =3D "<h3>"+title+"</h3>";
	if(isHierarchical){
		header+=3D"<fieldset =
class=3D\"filter\"><legend>"+tradFilter+"</legend><label =
for=3D\"treeFilter\">"+tradFilter+" </label><input type=3D\"text\" =
name=3D\"treeFilter\" id=3D\"treeFilter\" onkeypress=3D\"if =
(event.keyCode =3D=3D 13) { findNode('"+refDataId+"'); return false;} \" =
/><div class=3D\"buttonContainer\"><div =
class=3D\"leftButtonPart\"><input type=3D\"button\" =
name=3D\"action_filter\" class=3D\"button\" value=3D\""+tradApply+"\" =
onclick=3D\"findNode('"+refDataId+"')\"/></div></div></fieldset>";
	}
	header+=3D"<fieldset><legend>"+tradTree+"</legend><div =
class=3D\"overflow\" id=3D\"overflow\">";
	return header;
}
/**
 * This function generate <li> element for ajax tree
 */
function generateLiForSearch(subChildren, refDataId, isFirstLevel){
	var dynamic=3D"";
	//implementation for search page
	// Checkbox if match=3Dtrue (filter) or if match=3Dnull (expand)
	if(!(subChildren.match !=3D null && !subChildren.match)){
		dynamic+=3D"<input type=3D\"checkbox\" class=3D\"checkbox\" =
name=3D\"chk\" id=3D\"chkId"+subChildren.key+"\"";
		if(useDescriptionMap[refDataId]){
			dynamic+=3D"value=3D\"'"+subChildren.description+"'\"";
		}
		else{
			if(refDataId=3D=3D'CPV_CODE' && isFirstLevel){
				dynamic+=3D"value=3D\"'"+subChildren.description+"'\"";
			} else {
				dynamic+=3D"value=3D\""+subChildren.key+"\"";
			}
		}
		dynamic+=3D" />";
	}
	dynamic+=3D"<label for=3D\"chkId"+subChildren.key+"\" =
title=3D\""+subChildren.key+"\">";
	// Key
	if (isFirstLevel) {
		if (displayFirstLevelKeyMap[refDataId] && displayKeyMap[refDataId]) {
			dynamic+=3DsubChildren.key+" - ";
		}
	} else if(displayKeyMap[refDataId]){
		dynamic+=3DsubChildren.key+" - ";
	}
	// description
	dynamic+=3DsubChildren.description+"</label>";
	// occurence
	if(subChildren.foundOccurence && subChildren.type.indexOf('leaf') < 0){
		dynamic+=3D" ("+subChildren.foundOccurence+") ";
	}
	return dynamic;=09
}
/**
 * This function generate <li> element for ajax list/tree for browse =
pages
 */
function generateLiForBrowse(subChildren, refDataId, isFirstLevel){
	var dynamic=3D"";
	//implementation for browse page
	// if COUNTRY > implement update right tree
	if(refDataId.indexOf('COUNTRY') > -1 ){
		dynamic+=3D"<a id=3D'link-k"+subChildren.key+"' =
onclick=3D'showSelected(this);updateRightTree(\""+refDataId+"\",\""+subCh=
ildren.key+"\")' href=3D'javascript:;' title=3D'"+subChildren.key+"'>";
	}
	// else implement link to result
	else{
		//dynamic+=3D"<a =
href=3D'"+refDataAjaxBrowseServiceBaseUrl+"action=3DselectFacet&refDataId=
=3D"+encodeURIComponent(refDataId)+"&key=3D"+encodeURIComponent(subChildr=
en.key)+"' title=3D'"+subChildren.key+"'>";
		dynamic+=3D"<a =
href=3D\"javascript:$do('selectFacet','refDataId=3D"+encodeURIComponent(r=
efDataId)+"&key=3D"+encodeURIComponent(subChildren.key)+"',true,false,'_s=
elf','"+refDataAjaxBrowseServiceBaseUrl+"');\" title=3D\"Search =
result\">";
	}
	/*if(displayKeyMap[refDataId]){
		dynamic+=3DsubChildren.key+" - ";
	}*/
	// Key
	if (isFirstLevel) {
		if (displayFirstLevelKeyMap[refDataId] && displayKeyMap[refDataId]) {
			dynamic+=3DsubChildren.key+" - ";
		}
	} else if(displayKeyMap[refDataId]){
		dynamic+=3DsubChildren.key+" - ";
	}
	// descrition
	dynamic+=3DsubChildren.description+"";
	// occurence
	if(subChildren.foundDocument){
		dynamic+=3D" ("+subChildren.foundDocument+") ";
	}
	dynamic+=3D"</a>";
	return dynamic;
}
/**
 * This function change the onclick function for expand/collapse icon in =
ajax trees
 */
function changeToCollapse(el,keyId){
	el.onclick =3D function onclick(event) {=20
		document.getElementById(keyId).style.display=3D'none';
		changeToExpand(this,keyId); } ;
	el.src=3DimageFolder+"minus.gif";
	el.alt=3DtradCollapse;
}
/**
 * This function change the onclick function for expand/collapse icon in =
ajax trees
 */
function changeToExpand(el,keyId){
	el.onclick =3D function onclick(event) {=20
		document.getElementById(keyId).style.display=3D'block';=09
		changeToCollapse(this,keyId); } ;
	el.src=3DimageFolder+"plus.gif";
	el.alt=3DtradExpand;
}
/**
 * This function fill form inputs with checked checkbox from tree/list
 */
function fillInput(){
	var checkBox =3D document.getElementsByName("chk");
	var str=3D"";
	for (var i=3D0; i< checkBox.length; i++){
		if (checkBox[i].checked){
			str+=3D checkBox[i].value+",";
		}
	}
	str =3D str.slice(0, -1);
	document.getElementById(originalInputId).value=3Dstr;
	document.getElementById(originalInputId).title=3Dstr;
	hideDiv('jsContainer');
}

function showSelected(el){
	resetSelected();
	el.style.color=3D"#FF2222";=09
}
function resetSelected(){
	var dynLinks =3D document.getElementsByTagName('a');
	for (var i=3D0; i<dynLinks.length; i++){
		if(dynLinks[i].id.indexOf('link-k') > -1){
			dynLinks[i].style.color=3D"";
		}=09
	}
}

function rollOver(el) {
	el.firstChild.src=3DimageFolder+'europa_logo_hover.png';
}

function rollOut(el) {
	el.firstChild.src=3DimageFolder+'europa_logo.png';
}
------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/js/jquery-1.9.0.js

/*!=0A=
 * jQuery JavaScript Library v1.9.0=0A=
 * http://jquery.com/=0A=
 *=0A=
 * Includes Sizzle.js=0A=
 * http://sizzlejs.com/=0A=
 *=0A=
 * Copyright 2005, 2012 jQuery Foundation, Inc. and other contributors=0A=
 * Released under the MIT license=0A=
 * http://jquery.org/license=0A=
 *=0A=
 * Date: 2013-1-14=0A=
 */=0A=
(function( window, undefined ) {=0A=
"use strict";=0A=
var=0A=
	// A central reference to the root jQuery(document)=0A=
	rootjQuery,=0A=
=0A=
	// The deferred used on DOM ready=0A=
	readyList,=0A=
=0A=
	// Use the correct document accordingly with window argument (sandbox)=0A=
	document =3D window.document,=0A=
	location =3D window.location,=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=
	// [[Class]] -> type pairs=0A=
	class2type =3D {},=0A=
=0A=
	// List of deleted data cache ids, so we can reuse them=0A=
	core_deletedIds =3D [],=0A=
=0A=
	core_version =3D "1.9.0",=0A=
=0A=
	// Save a reference to some core methods=0A=
	core_concat =3D core_deletedIds.concat,=0A=
	core_push =3D core_deletedIds.push,=0A=
	core_slice =3D core_deletedIds.slice,=0A=
	core_indexOf =3D core_deletedIds.indexOf,=0A=
	core_toString =3D class2type.toString,=0A=
	core_hasOwn =3D class2type.hasOwnProperty,=0A=
	core_trim =3D core_version.trim,=0A=
=0A=
	// Define a local copy of jQuery=0A=
	jQuery =3D function( selector, context ) {=0A=
		// The jQuery object is actually just the init constructor 'enhanced'=0A=
		return new jQuery.fn.init( selector, context, rootjQuery );=0A=
	},=0A=
=0A=
	// Used for matching numbers=0A=
	core_pnum =3D /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,=0A=
=0A=
	// Used for splitting on whitespace=0A=
	core_rnotwhite =3D /\S+/g,=0A=
=0A=
	// Make sure we trim BOM and NBSP (here's looking at you, Safari 5.0 =
and IE)=0A=
	rtrim =3D /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,=0A=
=0A=
	// A simple way to check for HTML strings=0A=
	// Prioritize #id over <tag> to avoid XSS via location.hash (#9521)=0A=
	// Strict HTML recognition (#11290: must start with <)=0A=
	rquickExpr =3D /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,=0A=
=0A=
	// Match a standalone tag=0A=
	rsingleTag =3D /^<(\w+)\s*\/?>(?:<\/\1>|)$/,=0A=
=0A=
	// JSON RegExp=0A=
	rvalidchars =3D /^[\],:{}\s]*$/,=0A=
	rvalidbraces =3D /(?:^|:|,)(?:\s*\[)+/g,=0A=
	rvalidescape =3D /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,=0A=
	rvalidtokens =3D =
/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,=0A=
=0A=
	// Matches dashed string for camelizing=0A=
	rmsPrefix =3D /^-ms-/,=0A=
	rdashAlpha =3D /-([\da-z])/gi,=0A=
=0A=
	// Used by jQuery.camelCase as callback to replace()=0A=
	fcamelCase =3D function( all, letter ) {=0A=
		return letter.toUpperCase();=0A=
	},=0A=
=0A=
	// The ready event handler and self cleanup method=0A=
	DOMContentLoaded =3D function() {=0A=
		if ( document.addEventListener ) {=0A=
			document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, =
false );=0A=
			jQuery.ready();=0A=
		} else if ( document.readyState =3D=3D=3D "complete" ) {=0A=
			// we're here because readyState =3D=3D=3D "complete" in oldIE=0A=
			// which is good enough for us to call the dom ready!=0A=
			document.detachEvent( "onreadystatechange", DOMContentLoaded );=0A=
			jQuery.ready();=0A=
		}=0A=
	};=0A=
=0A=
jQuery.fn =3D jQuery.prototype =3D {=0A=
	// The current version of jQuery being used=0A=
	jquery: core_version,=0A=
=0A=
	constructor: jQuery,=0A=
	init: function( selector, context, rootjQuery ) {=0A=
		var match, elem;=0A=
=0A=
		// HANDLE: $(""), $(null), $(undefined), $(false)=0A=
		if ( !selector ) {=0A=
			return this;=0A=
		}=0A=
=0A=
		// Handle HTML strings=0A=
		if ( typeof selector =3D=3D=3D "string" ) {=0A=
			if ( selector.charAt(0) =3D=3D=3D "<" && selector.charAt( =
selector.length - 1 ) =3D=3D=3D ">" && selector.length >=3D 3 ) {=0A=
				// Assume that strings that start and end with <> are HTML and skip =
the regex check=0A=
				match =3D [ null, selector, null ];=0A=
=0A=
			} else {=0A=
				match =3D rquickExpr.exec( selector );=0A=
			}=0A=
=0A=
			// Match html or make sure no context is specified for #id=0A=
			if ( match && (match[1] || !context) ) {=0A=
=0A=
				// HANDLE: $(html) -> $(array)=0A=
				if ( match[1] ) {=0A=
					context =3D context instanceof jQuery ? context[0] : context;=0A=
=0A=
					// scripts is true for back-compat=0A=
					jQuery.merge( this, jQuery.parseHTML(=0A=
						match[1],=0A=
						context && context.nodeType ? context.ownerDocument || context : =
document,=0A=
						true=0A=
					) );=0A=
=0A=
					// HANDLE: $(html, props)=0A=
					if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) =
) {=0A=
						for ( match in context ) {=0A=
							// Properties of context are called as methods if possible=0A=
							if ( jQuery.isFunction( this[ match ] ) ) {=0A=
								this[ match ]( context[ match ] );=0A=
=0A=
							// ...and otherwise set as attributes=0A=
							} else {=0A=
								this.attr( match, context[ match ] );=0A=
							}=0A=
						}=0A=
					}=0A=
=0A=
					return this;=0A=
=0A=
				// HANDLE: $(#id)=0A=
				} else {=0A=
					elem =3D document.getElementById( match[2] );=0A=
=0A=
					// Check parentNode to catch when Blackberry 4.6 returns=0A=
					// nodes that are no longer in the document #6963=0A=
					if ( elem && elem.parentNode ) {=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: $(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 this.constructor( context ).find( selector );=0A=
			}=0A=
=0A=
		// HANDLE: $(DOMElement)=0A=
		} else if ( selector.nodeType ) {=0A=
			this.context =3D this[0] =3D selector;=0A=
			this.length =3D 1;=0A=
			return this;=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 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 core_slice.call( this );=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[ this.length + num ] : this[ num ] );=0A=
	},=0A=
=0A=
	// Take an array of elements and push it onto the stack=0A=
	// (returning the new matched element set)=0A=
	pushStack: function( elems ) {=0A=
=0A=
		// Build a new jQuery matched element set=0A=
		var ret =3D jQuery.merge( this.constructor(), elems );=0A=
=0A=
		// Add the old object onto the stack (as a reference)=0A=
		ret.prevObject =3D this;=0A=
		ret.context =3D this.context;=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=
		// Add the callback=0A=
		jQuery.ready.promise().done( fn );=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	slice: function() {=0A=
		return this.pushStack( core_slice.apply( this, arguments ) );=0A=
	},=0A=
=0A=
	first: function() {=0A=
		return this.eq( 0 );=0A=
	},=0A=
=0A=
	last: function() {=0A=
		return this.eq( -1 );=0A=
	},=0A=
=0A=
	eq: function( i ) {=0A=
		var len =3D this.length,=0A=
			j =3D +i + ( i < 0 ? len : 0 );=0A=
		return this.pushStack( j >=3D 0 && j < len ? [ this[j] ] : [] );=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 || this.constructor(null);=0A=
	},=0A=
=0A=
	// For internal use only.=0A=
	// Behaves like an Array's method, not like a jQuery method.=0A=
	push: core_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=
	var options, name, src, copy, copyIsArray, clone,=0A=
		target =3D arguments[0] || {},=0A=
		i =3D 1,=0A=
		length =3D arguments.length,=0A=
		deep =3D false;=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 plain objects or arrays=0A=
				if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray =
=3D jQuery.isArray(copy)) ) ) {=0A=
					if ( copyIsArray ) {=0A=
						copyIsArray =3D false;=0A=
						clone =3D src && jQuery.isArray(src) ? src : [];=0A=
=0A=
					} else {=0A=
						clone =3D src && jQuery.isPlainObject(src) ? src : {};=0A=
					}=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=
		if ( window.$ =3D=3D=3D jQuery ) {=0A=
			window.$ =3D _$;=0A=
		}=0A=
=0A=
		if ( deep && window.jQuery =3D=3D=3D jQuery ) {=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=
	// A counter to track how many items to wait for before=0A=
	// the ready event fires. See #6781=0A=
	readyWait: 1,=0A=
=0A=
	// Hold (or release) the ready event=0A=
	holdReady: function( hold ) {=0A=
		if ( hold ) {=0A=
			jQuery.readyWait++;=0A=
		} else {=0A=
			jQuery.ready( true );=0A=
		}=0A=
	},=0A=
=0A=
	// Handle when the DOM is ready=0A=
	ready: function( wait ) {=0A=
=0A=
		// Abort if there are pending holds or we're already ready=0A=
		if ( wait =3D=3D=3D true ? --jQuery.readyWait : jQuery.isReady ) {=0A=
			return;=0A=
		}=0A=
=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 );=0A=
		}=0A=
=0A=
		// Remember that the DOM is ready=0A=
		jQuery.isReady =3D true;=0A=
=0A=
		// If a normal DOM Ready event fired, decrement, and wait if need be=0A=
		if ( wait !=3D=3D true && --jQuery.readyWait > 0 ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// If there are functions bound, to execute=0A=
		readyList.resolveWith( document, [ jQuery ] );=0A=
=0A=
		// Trigger any bound ready events=0A=
		if ( jQuery.fn.trigger ) {=0A=
			jQuery( document ).trigger("ready").off("ready");=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 jQuery.type(obj) =3D=3D=3D "function";=0A=
	},=0A=
=0A=
	isArray: Array.isArray || function( obj ) {=0A=
		return jQuery.type(obj) =3D=3D=3D "array";=0A=
	},=0A=
=0A=
	isWindow: function( obj ) {=0A=
		return obj !=3D null && obj =3D=3D obj.window;=0A=
	},=0A=
=0A=
	isNumeric: function( obj ) {=0A=
		return !isNaN( parseFloat(obj) ) && isFinite( obj );=0A=
	},=0A=
=0A=
	type: function( obj ) {=0A=
		if ( obj =3D=3D null ) {=0A=
			return String( obj );=0A=
		}=0A=
		return typeof obj =3D=3D=3D "object" || typeof obj =3D=3D=3D =
"function" ?=0A=
			class2type[ core_toString.call(obj) ] || "object" :=0A=
			typeof obj;=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 || jQuery.type(obj) !=3D=3D "object" || obj.nodeType || =
jQuery.isWindow( obj ) ) {=0A=
			return false;=0A=
		}=0A=
=0A=
		try {=0A=
			// Not own constructor property must be Object=0A=
			if ( obj.constructor &&=0A=
				!core_hasOwn.call(obj, "constructor") &&=0A=
				!core_hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {=0A=
				return false;=0A=
			}=0A=
		} catch ( e ) {=0A=
			// IE8,9 Will throw exceptions on certain host objects #9897=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 || core_hasOwn.call( obj, key );=0A=
	},=0A=
=0A=
	isEmptyObject: function( obj ) {=0A=
		var name;=0A=
		for ( name in obj ) {=0A=
			return false;=0A=
		}=0A=
		return true;=0A=
	},=0A=
=0A=
	error: function( msg ) {=0A=
		throw new Error( msg );=0A=
	},=0A=
=0A=
	// data: string of html=0A=
	// context (optional): If specified, the fragment will be created in =
this context, defaults to document=0A=
	// keepScripts (optional): If true, will include scripts passed in the =
html string=0A=
	parseHTML: function( data, context, keepScripts ) {=0A=
		if ( !data || typeof data !=3D=3D "string" ) {=0A=
			return null;=0A=
		}=0A=
		if ( typeof context =3D=3D=3D "boolean" ) {=0A=
			keepScripts =3D context;=0A=
			context =3D false;=0A=
		}=0A=
		context =3D context || document;=0A=
=0A=
		var parsed =3D rsingleTag.exec( data ),=0A=
			scripts =3D !keepScripts && [];=0A=
=0A=
		// Single tag=0A=
		if ( parsed ) {=0A=
			return [ context.createElement( parsed[1] ) ];=0A=
		}=0A=
=0A=
		parsed =3D jQuery.buildFragment( [ data ], context, scripts );=0A=
		if ( scripts ) {=0A=
			jQuery( scripts ).remove();=0A=
		}=0A=
		return jQuery.merge( [], parsed.childNodes );=0A=
	},=0A=
=0A=
	parseJSON: function( data ) {=0A=
		// Attempt to parse using the native JSON parser first=0A=
		if ( window.JSON && window.JSON.parse ) {=0A=
			return window.JSON.parse( data );=0A=
		}=0A=
=0A=
		if ( data =3D=3D=3D null ) {=0A=
			return data;=0A=
		}=0A=
=0A=
		if ( typeof data =3D=3D=3D "string" ) {=0A=
=0A=
			// Make sure leading/trailing whitespace is removed (IE can't handle =
it)=0A=
			data =3D jQuery.trim( data );=0A=
=0A=
			if ( data ) {=0A=
				// Make sure the incoming data is actual JSON=0A=
				// Logic borrowed from http://json.org/json2.js=0A=
				if ( rvalidchars.test( data.replace( rvalidescape, "@" )=0A=
					.replace( rvalidtokens, "]" )=0A=
					.replace( rvalidbraces, "")) ) {=0A=
=0A=
					return ( new Function( "return " + data ) )();=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		jQuery.error( "Invalid JSON: " + data );=0A=
	},=0A=
=0A=
	// Cross-browser xml parsing=0A=
	parseXML: function( data ) {=0A=
		var xml, tmp;=0A=
		if ( !data || typeof data !=3D=3D "string" ) {=0A=
			return null;=0A=
		}=0A=
		try {=0A=
			if ( window.DOMParser ) { // Standard=0A=
				tmp =3D new DOMParser();=0A=
				xml =3D tmp.parseFromString( data , "text/xml" );=0A=
			} else { // IE=0A=
				xml =3D new ActiveXObject( "Microsoft.XMLDOM" );=0A=
				xml.async =3D "false";=0A=
				xml.loadXML( data );=0A=
			}=0A=
		} catch( e ) {=0A=
			xml =3D undefined;=0A=
		}=0A=
		if ( !xml || !xml.documentElement || xml.getElementsByTagName( =
"parsererror" ).length ) {=0A=
			jQuery.error( "Invalid XML: " + data );=0A=
		}=0A=
		return xml;=0A=
	},=0A=
=0A=
	noop: function() {},=0A=
=0A=
	// Evaluates a script in a global context=0A=
	// Workarounds based on findings by Jim Driscoll=0A=
	// =
http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-=
global-context=0A=
	globalEval: function( data ) {=0A=
		if ( data && jQuery.trim( data ) ) {=0A=
			// We use execScript on Internet Explorer=0A=
			// We use an anonymous function so that context is window=0A=
			// rather than jQuery in Firefox=0A=
			( window.execScript || function( data ) {=0A=
				window[ "eval" ].call( window, data );=0A=
			} )( data );=0A=
		}=0A=
	},=0A=
=0A=
	// Convert dashed to camelCase; used by the css and data modules=0A=
	// Microsoft forgot to hump their vendor prefix (#9572)=0A=
	camelCase: function( string ) {=0A=
		return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, =
fcamelCase );=0A=
	},=0A=
=0A=
	nodeName: function( elem, name ) {=0A=
		return elem.nodeName && elem.nodeName.toLowerCase() =3D=3D=3D =
name.toLowerCase();=0A=
	},=0A=
=0A=
	// args is for internal usage only=0A=
	each: function( obj, callback, args ) {=0A=
		var value,=0A=
			i =3D 0,=0A=
			length =3D obj.length,=0A=
			isArray =3D isArraylike( obj );=0A=
=0A=
		if ( args ) {=0A=
			if ( isArray ) {=0A=
				for ( ; i < length; i++ ) {=0A=
					value =3D callback.apply( obj[ i ], args );=0A=
=0A=
					if ( value =3D=3D=3D false ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			} else {=0A=
				for ( i in obj ) {=0A=
					value =3D callback.apply( obj[ i ], args );=0A=
=0A=
					if ( value =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 ( isArray ) {=0A=
				for ( ; i < length; i++ ) {=0A=
					value =3D callback.call( obj[ i ], i, obj[ i ] );=0A=
=0A=
					if ( value =3D=3D=3D false ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			} else {=0A=
				for ( i in obj ) {=0A=
					value =3D callback.call( obj[ i ], i, obj[ i ] );=0A=
=0A=
					if ( value =3D=3D=3D false ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return obj;=0A=
	},=0A=
=0A=
	// Use native String.trim function wherever possible=0A=
	trim: core_trim && !core_trim.call("\uFEFF\xA0") ?=0A=
		function( text ) {=0A=
			return text =3D=3D null ?=0A=
				"" :=0A=
				core_trim.call( text );=0A=
		} :=0A=
=0A=
		// Otherwise use our own trimming functionality=0A=
		function( text ) {=0A=
			return text =3D=3D null ?=0A=
				"" :=0A=
				( text + "" ).replace( rtrim, "" );=0A=
		},=0A=
=0A=
	// results is for internal usage only=0A=
	makeArray: function( arr, results ) {=0A=
		var ret =3D results || [];=0A=
=0A=
		if ( arr !=3D null ) {=0A=
			if ( isArraylike( Object(arr) ) ) {=0A=
				jQuery.merge( ret,=0A=
					typeof arr =3D=3D=3D "string" ?=0A=
					[ arr ] : arr=0A=
				);=0A=
			} else {=0A=
				core_push.call( ret, arr );=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	},=0A=
=0A=
	inArray: function( elem, arr, i ) {=0A=
		var len;=0A=
=0A=
		if ( arr ) {=0A=
			if ( core_indexOf ) {=0A=
				return core_indexOf.call( arr, elem, i );=0A=
			}=0A=
=0A=
			len =3D arr.length;=0A=
			i =3D i ? i < 0 ? Math.max( 0, len + i ) : i : 0;=0A=
=0A=
			for ( ; i < len; i++ ) {=0A=
				// Skip accessing in sparse arrays=0A=
				if ( i in arr && arr[ i ] =3D=3D=3D elem ) {=0A=
					return i;=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return -1;=0A=
	},=0A=
=0A=
	merge: function( first, second ) {=0A=
		var l =3D second.length,=0A=
			i =3D first.length,=0A=
			j =3D 0;=0A=
=0A=
		if ( typeof l =3D=3D=3D "number" ) {=0A=
			for ( ; j < l; j++ ) {=0A=
				first[ i++ ] =3D second[ j ];=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 retVal,=0A=
			ret =3D [],=0A=
			i =3D 0,=0A=
			length =3D elems.length;=0A=
		inv =3D !!inv;=0A=
=0A=
		// Go through the array, only saving the items=0A=
		// that pass the validator function=0A=
		for ( ; i < length; i++ ) {=0A=
			retVal =3D !!callback( elems[ i ], i );=0A=
			if ( inv !=3D=3D retVal ) {=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 value,=0A=
			i =3D 0,=0A=
			length =3D elems.length,=0A=
			isArray =3D isArraylike( elems ),=0A=
			ret =3D [];=0A=
=0A=
		// Go through the array, translating each of the items to their=0A=
		if ( isArray ) {=0A=
			for ( ; 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=
		// Go through every key on the object,=0A=
		} else {=0A=
			for ( i in elems ) {=0A=
				value =3D callback( elems[ i ], i, arg );=0A=
=0A=
				if ( value !=3D null ) {=0A=
					ret[ ret.length ] =3D value;=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Flatten any nested arrays=0A=
		return core_concat.apply( [], ret );=0A=
	},=0A=
=0A=
	// A global GUID counter for objects=0A=
	guid: 1,=0A=
=0A=
	// Bind a function to a context, optionally partially applying any=0A=
	// arguments.=0A=
	proxy: function( fn, context ) {=0A=
		var tmp, args, proxy;=0A=
=0A=
		if ( typeof context =3D=3D=3D "string" ) {=0A=
			tmp =3D fn[ context ];=0A=
			context =3D fn;=0A=
			fn =3D tmp;=0A=
		}=0A=
=0A=
		// Quick check to determine if target is callable, in the spec=0A=
		// this throws a TypeError, but we will just return undefined.=0A=
		if ( !jQuery.isFunction( fn ) ) {=0A=
			return undefined;=0A=
		}=0A=
=0A=
		// Simulated bind=0A=
		args =3D core_slice.call( arguments, 2 );=0A=
		proxy =3D function() {=0A=
			return fn.apply( context || this, args.concat( core_slice.call( =
arguments ) ) );=0A=
		};=0A=
=0A=
		// Set the guid of unique handler to the same of original handler, so =
it can be removed=0A=
		proxy.guid =3D fn.guid =3D fn.guid || jQuery.guid++;=0A=
=0A=
		return proxy;=0A=
	},=0A=
=0A=
	// Multifunctional method to get and set values of a collection=0A=
	// The value/s can optionally be executed if it's a function=0A=
	access: function( elems, fn, key, value, chainable, emptyGet, raw ) {=0A=
		var i =3D 0,=0A=
			length =3D elems.length,=0A=
			bulk =3D key =3D=3D null;=0A=
=0A=
		// Sets many values=0A=
		if ( jQuery.type( key ) =3D=3D=3D "object" ) {=0A=
			chainable =3D true;=0A=
			for ( i in key ) {=0A=
				jQuery.access( elems, fn, i, key[i], true, emptyGet, raw );=0A=
			}=0A=
=0A=
		// Sets one value=0A=
		} else if ( value !=3D=3D undefined ) {=0A=
			chainable =3D true;=0A=
=0A=
			if ( !jQuery.isFunction( value ) ) {=0A=
				raw =3D true;=0A=
			}=0A=
=0A=
			if ( bulk ) {=0A=
				// Bulk operations run against the entire set=0A=
				if ( raw ) {=0A=
					fn.call( elems, value );=0A=
					fn =3D null;=0A=
=0A=
				// ...except when executing function values=0A=
				} else {=0A=
					bulk =3D fn;=0A=
					fn =3D function( elem, key, value ) {=0A=
						return bulk.call( jQuery( elem ), value );=0A=
					};=0A=
				}=0A=
			}=0A=
=0A=
			if ( fn ) {=0A=
				for ( ; i < length; i++ ) {=0A=
					fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( =
elems[i], key ) ) );=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return chainable ?=0A=
			elems :=0A=
=0A=
			// Gets=0A=
			bulk ?=0A=
				fn.call( elems ) :=0A=
				length ? fn( elems[0], key ) : emptyGet;=0A=
	},=0A=
=0A=
	now: function() {=0A=
		return ( new Date() ).getTime();=0A=
	}=0A=
});=0A=
=0A=
jQuery.ready.promise =3D function( obj ) {=0A=
	if ( !readyList ) {=0A=
=0A=
		readyList =3D jQuery.Deferred();=0A=
=0A=
		// Catch cases where $(document).ready() is called after the browser =
event has already occurred.=0A=
		// we once tried to use readyState "interactive" here, but it caused =
issues like the one=0A=
		// discovered by ChrisS here: =
http://bugs.jquery.com/ticket/12282#comment:15=0A=
		if ( document.readyState =3D=3D=3D "complete" ) {=0A=
			// Handle it asynchronously to allow scripts the opportunity to delay =
ready=0A=
			setTimeout( jQuery.ready );=0A=
=0A=
		// Standards-based browsers support DOMContentLoaded=0A=
		} else 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 {=0A=
			// Ensure firing before onload, 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 top =3D false;=0A=
=0A=
			try {=0A=
				top =3D window.frameElement =3D=3D null && document.documentElement;=0A=
			} catch(e) {}=0A=
=0A=
			if ( top && top.doScroll ) {=0A=
				(function doScrollCheck() {=0A=
					if ( !jQuery.isReady ) {=0A=
=0A=
						try {=0A=
							// Use the trick by Diego Perini=0A=
							// http://javascript.nwbox.com/IEContentLoaded/=0A=
							top.doScroll("left");=0A=
						} catch(e) {=0A=
							return setTimeout( doScrollCheck, 50 );=0A=
						}=0A=
=0A=
						// and execute any waiting functions=0A=
						jQuery.ready();=0A=
					}=0A=
				})();=0A=
			}=0A=
		}=0A=
	}=0A=
	return readyList.promise( obj );=0A=
};=0A=
=0A=
// Populate the class2type map=0A=
jQuery.each("Boolean Number String Function Array Date RegExp Object =
Error".split(" "), function(i, name) {=0A=
	class2type[ "[object " + name + "]" ] =3D name.toLowerCase();=0A=
});=0A=
=0A=
function isArraylike( obj ) {=0A=
	var length =3D obj.length,=0A=
		type =3D jQuery.type( obj );=0A=
=0A=
	if ( jQuery.isWindow( obj ) ) {=0A=
		return false;=0A=
	}=0A=
=0A=
	if ( obj.nodeType =3D=3D=3D 1 && length ) {=0A=
		return true;=0A=
	}=0A=
=0A=
	return type =3D=3D=3D "array" || type !=3D=3D "function" &&=0A=
		( length =3D=3D=3D 0 ||=0A=
		typeof length =3D=3D=3D "number" && length > 0 && ( length - 1 ) in =
obj );=0A=
}=0A=
=0A=
// All jQuery objects should point back to these=0A=
rootjQuery =3D jQuery(document);=0A=
// String to Object options format cache=0A=
var optionsCache =3D {};=0A=
=0A=
// Convert String-formatted options into Object-formatted ones and store =
in cache=0A=
function createOptions( options ) {=0A=
	var object =3D optionsCache[ options ] =3D {};=0A=
	jQuery.each( options.match( core_rnotwhite ) || [], function( _, flag ) =
{=0A=
		object[ flag ] =3D true;=0A=
	});=0A=
	return object;=0A=
}=0A=
=0A=
/*=0A=
 * Create a callback list using the following parameters:=0A=
 *=0A=
 *	options: an optional list of space-separated options that will change =
how=0A=
 *			the callback list behaves or a more traditional option object=0A=
 *=0A=
 * By default a callback list will act like an event callback list and =
can be=0A=
 * "fired" multiple times.=0A=
 *=0A=
 * Possible options:=0A=
 *=0A=
 *	once:			will ensure the callback list can only be fired once (like a =
Deferred)=0A=
 *=0A=
 *	memory:			will keep track of previous values and will call any =
callback added=0A=
 *					after the list has been fired right away with the latest =
"memorized"=0A=
 *					values (like a Deferred)=0A=
 *=0A=
 *	unique:			will ensure a callback can only be added once (no duplicate =
in the list)=0A=
 *=0A=
 *	stopOnFalse:	interrupt callings when a callback returns false=0A=
 *=0A=
 */=0A=
jQuery.Callbacks =3D function( options ) {=0A=
=0A=
	// Convert options from String-formatted to Object-formatted if needed=0A=
	// (we check in cache first)=0A=
	options =3D typeof options =3D=3D=3D "string" ?=0A=
		( optionsCache[ options ] || createOptions( options ) ) :=0A=
		jQuery.extend( {}, options );=0A=
=0A=
	var // Last fire value (for non-forgettable lists)=0A=
		memory,=0A=
		// Flag to know if list was already fired=0A=
		fired,=0A=
		// Flag to know if list is currently firing=0A=
		firing,=0A=
		// First callback to fire (used internally by add and fireWith)=0A=
		firingStart,=0A=
		// End of the loop when firing=0A=
		firingLength,=0A=
		// Index of currently firing callback (modified by remove if needed)=0A=
		firingIndex,=0A=
		// Actual callback list=0A=
		list =3D [],=0A=
		// Stack of fire calls for repeatable lists=0A=
		stack =3D !options.once && [],=0A=
		// Fire callbacks=0A=
		fire =3D function( data ) {=0A=
			memory =3D options.memory && data;=0A=
			fired =3D true;=0A=
			firingIndex =3D firingStart || 0;=0A=
			firingStart =3D 0;=0A=
			firingLength =3D list.length;=0A=
			firing =3D true;=0A=
			for ( ; list && firingIndex < firingLength; firingIndex++ ) {=0A=
				if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) =3D=3D=3D =
false && options.stopOnFalse ) {=0A=
					memory =3D false; // To prevent further calls using add=0A=
					break;=0A=
				}=0A=
			}=0A=
			firing =3D false;=0A=
			if ( list ) {=0A=
				if ( stack ) {=0A=
					if ( stack.length ) {=0A=
						fire( stack.shift() );=0A=
					}=0A=
				} else if ( memory ) {=0A=
					list =3D [];=0A=
				} else {=0A=
					self.disable();=0A=
				}=0A=
			}=0A=
		},=0A=
		// Actual Callbacks object=0A=
		self =3D {=0A=
			// Add a callback or a collection of callbacks to the list=0A=
			add: function() {=0A=
				if ( list ) {=0A=
					// First, we save the current length=0A=
					var start =3D list.length;=0A=
					(function add( args ) {=0A=
						jQuery.each( args, function( _, arg ) {=0A=
							var type =3D jQuery.type( arg );=0A=
							if ( type =3D=3D=3D "function" ) {=0A=
								if ( !options.unique || !self.has( arg ) ) {=0A=
									list.push( arg );=0A=
								}=0A=
							} else if ( arg && arg.length && type !=3D=3D "string" ) {=0A=
								// Inspect recursively=0A=
								add( arg );=0A=
							}=0A=
						});=0A=
					})( arguments );=0A=
					// Do we need to add the callbacks to the=0A=
					// current firing batch?=0A=
					if ( firing ) {=0A=
						firingLength =3D list.length;=0A=
					// With memory, if we're not firing then=0A=
					// we should call right away=0A=
					} else if ( memory ) {=0A=
						firingStart =3D start;=0A=
						fire( memory );=0A=
					}=0A=
				}=0A=
				return this;=0A=
			},=0A=
			// Remove a callback from the list=0A=
			remove: function() {=0A=
				if ( list ) {=0A=
					jQuery.each( arguments, function( _, arg ) {=0A=
						var index;=0A=
						while( ( index =3D jQuery.inArray( arg, list, index ) ) > -1 ) {=0A=
							list.splice( index, 1 );=0A=
							// Handle firing indexes=0A=
							if ( firing ) {=0A=
								if ( index <=3D firingLength ) {=0A=
									firingLength--;=0A=
								}=0A=
								if ( index <=3D firingIndex ) {=0A=
									firingIndex--;=0A=
								}=0A=
							}=0A=
						}=0A=
					});=0A=
				}=0A=
				return this;=0A=
			},=0A=
			// Control if a given callback is in the list=0A=
			has: function( fn ) {=0A=
				return jQuery.inArray( fn, list ) > -1;=0A=
			},=0A=
			// Remove all callbacks from the list=0A=
			empty: function() {=0A=
				list =3D [];=0A=
				return this;=0A=
			},=0A=
			// Have the list do nothing anymore=0A=
			disable: function() {=0A=
				list =3D stack =3D memory =3D undefined;=0A=
				return this;=0A=
			},=0A=
			// Is it disabled?=0A=
			disabled: function() {=0A=
				return !list;=0A=
			},=0A=
			// Lock the list in its current state=0A=
			lock: function() {=0A=
				stack =3D undefined;=0A=
				if ( !memory ) {=0A=
					self.disable();=0A=
				}=0A=
				return this;=0A=
			},=0A=
			// Is it locked?=0A=
			locked: function() {=0A=
				return !stack;=0A=
			},=0A=
			// Call all callbacks with the given context and arguments=0A=
			fireWith: function( context, args ) {=0A=
				args =3D args || [];=0A=
				args =3D [ context, args.slice ? args.slice() : args ];=0A=
				if ( list && ( !fired || stack ) ) {=0A=
					if ( firing ) {=0A=
						stack.push( args );=0A=
					} else {=0A=
						fire( args );=0A=
					}=0A=
				}=0A=
				return this;=0A=
			},=0A=
			// Call all the callbacks with the given arguments=0A=
			fire: function() {=0A=
				self.fireWith( this, arguments );=0A=
				return this;=0A=
			},=0A=
			// To know if the callbacks have already been called at least once=0A=
			fired: function() {=0A=
				return !!fired;=0A=
			}=0A=
		};=0A=
=0A=
	return self;=0A=
};=0A=
jQuery.extend({=0A=
=0A=
	Deferred: function( func ) {=0A=
		var tuples =3D [=0A=
				// action, add listener, listener list, final state=0A=
				[ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ],=0A=
				[ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ],=0A=
				[ "notify", "progress", jQuery.Callbacks("memory") ]=0A=
			],=0A=
			state =3D "pending",=0A=
			promise =3D {=0A=
				state: function() {=0A=
					return state;=0A=
				},=0A=
				always: function() {=0A=
					deferred.done( arguments ).fail( arguments );=0A=
					return this;=0A=
				},=0A=
				then: function( /* fnDone, fnFail, fnProgress */ ) {=0A=
					var fns =3D arguments;=0A=
					return jQuery.Deferred(function( newDefer ) {=0A=
						jQuery.each( tuples, function( i, tuple ) {=0A=
							var action =3D tuple[ 0 ],=0A=
								fn =3D jQuery.isFunction( fns[ i ] ) && fns[ i ];=0A=
							// deferred[ done | fail | progress ] for forwarding actions to =
newDefer=0A=
							deferred[ tuple[1] ](function() {=0A=
								var returned =3D fn && fn.apply( this, arguments );=0A=
								if ( returned && jQuery.isFunction( returned.promise ) ) {=0A=
									returned.promise()=0A=
										.done( newDefer.resolve )=0A=
										.fail( newDefer.reject )=0A=
										.progress( newDefer.notify );=0A=
								} else {=0A=
									newDefer[ action + "With" ]( this =3D=3D=3D promise ? =
newDefer.promise() : this, fn ? [ returned ] : arguments );=0A=
								}=0A=
							});=0A=
						});=0A=
						fns =3D null;=0A=
					}).promise();=0A=
				},=0A=
				// Get a promise for this deferred=0A=
				// If obj is provided, the promise aspect is added to the object=0A=
				promise: function( obj ) {=0A=
					return obj !=3D null ? jQuery.extend( obj, promise ) : promise;=0A=
				}=0A=
			},=0A=
			deferred =3D {};=0A=
=0A=
		// Keep pipe for back-compat=0A=
		promise.pipe =3D promise.then;=0A=
=0A=
		// Add list-specific methods=0A=
		jQuery.each( tuples, function( i, tuple ) {=0A=
			var list =3D tuple[ 2 ],=0A=
				stateString =3D tuple[ 3 ];=0A=
=0A=
			// promise[ done | fail | progress ] =3D list.add=0A=
			promise[ tuple[1] ] =3D list.add;=0A=
=0A=
			// Handle state=0A=
			if ( stateString ) {=0A=
				list.add(function() {=0A=
					// state =3D [ resolved | rejected ]=0A=
					state =3D stateString;=0A=
=0A=
				// [ reject_list | resolve_list ].disable; progress_list.lock=0A=
				}, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );=0A=
			}=0A=
=0A=
			// deferred[ resolve | reject | notify ]=0A=
			deferred[ tuple[0] ] =3D function() {=0A=
				deferred[ tuple[0] + "With" ]( this =3D=3D=3D deferred ? promise : =
this, arguments );=0A=
				return this;=0A=
			};=0A=
			deferred[ tuple[0] + "With" ] =3D list.fireWith;=0A=
		});=0A=
=0A=
		// Make the deferred a promise=0A=
		promise.promise( deferred );=0A=
=0A=
		// Call given func if any=0A=
		if ( func ) {=0A=
			func.call( deferred, deferred );=0A=
		}=0A=
=0A=
		// All done!=0A=
		return deferred;=0A=
	},=0A=
=0A=
	// Deferred helper=0A=
	when: function( subordinate /* , ..., subordinateN */ ) {=0A=
		var i =3D 0,=0A=
			resolveValues =3D core_slice.call( arguments ),=0A=
			length =3D resolveValues.length,=0A=
=0A=
			// the count of uncompleted subordinates=0A=
			remaining =3D length !=3D=3D 1 || ( subordinate && jQuery.isFunction( =
subordinate.promise ) ) ? length : 0,=0A=
=0A=
			// the master Deferred. If resolveValues consist of only a single =
Deferred, just use that.=0A=
			deferred =3D remaining =3D=3D=3D 1 ? subordinate : jQuery.Deferred(),=0A=
=0A=
			// Update function for both resolve and progress values=0A=
			updateFunc =3D function( i, contexts, values ) {=0A=
				return function( value ) {=0A=
					contexts[ i ] =3D this;=0A=
					values[ i ] =3D arguments.length > 1 ? core_slice.call( arguments ) =
: value;=0A=
					if( values =3D=3D=3D progressValues ) {=0A=
						deferred.notifyWith( contexts, values );=0A=
					} else if ( !( --remaining ) ) {=0A=
						deferred.resolveWith( contexts, values );=0A=
					}=0A=
				};=0A=
			},=0A=
=0A=
			progressValues, progressContexts, resolveContexts;=0A=
=0A=
		// add listeners to Deferred subordinates; treat others as resolved=0A=
		if ( length > 1 ) {=0A=
			progressValues =3D new Array( length );=0A=
			progressContexts =3D new Array( length );=0A=
			resolveContexts =3D new Array( length );=0A=
			for ( ; i < length; i++ ) {=0A=
				if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i =
].promise ) ) {=0A=
					resolveValues[ i ].promise()=0A=
						.done( updateFunc( i, resolveContexts, resolveValues ) )=0A=
						.fail( deferred.reject )=0A=
						.progress( updateFunc( i, progressContexts, progressValues ) );=0A=
				} else {=0A=
					--remaining;=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// if we're not waiting on anything, resolve the master=0A=
		if ( !remaining ) {=0A=
			deferred.resolveWith( resolveContexts, resolveValues );=0A=
		}=0A=
=0A=
		return deferred.promise();=0A=
	}=0A=
});=0A=
jQuery.support =3D (function() {=0A=
=0A=
	var support, all, a, select, opt, input, fragment, eventName, =
isSupported, i,=0A=
		div =3D document.createElement("div");=0A=
=0A=
	// Setup=0A=
	div.setAttribute( "className", "t" );=0A=
	div.innerHTML =3D "  <link/><table></table><a href=3D'/a'>a</a><input =
type=3D'checkbox'/>";=0A=
=0A=
	// Support tests won't run in some limited or non-browser environments=0A=
	all =3D div.getElementsByTagName("*");=0A=
	a =3D div.getElementsByTagName("a")[ 0 ];=0A=
	if ( !all || !a || !all.length ) {=0A=
		return {};=0A=
	}=0A=
=0A=
	// First batch of tests=0A=
	select =3D document.createElement("select");=0A=
	opt =3D select.appendChild( document.createElement("option") );=0A=
	input =3D div.getElementsByTagName("input")[ 0 ];=0A=
=0A=
	a.style.cssText =3D "top:1px;float:left;opacity:.5";=0A=
	support =3D {=0A=
		// Test setAttribute on camelCase class. If it works, we need =
attrFixes when doing get/setAttribute (ie6/7)=0A=
		getSetAttribute: div.className !=3D=3D "t",=0A=
=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 instead)=0A=
		style: /top/.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.5/.test( a.style.opacity ),=0A=
=0A=
		// Verify style float existence=0A=
		// (IE uses styleFloat instead of cssFloat)=0A=
		cssFloat: !!a.style.cssFloat,=0A=
=0A=
		// Check the default checkbox/radio value ("" on WebKit; "on" =
elsewhere)=0A=
		checkOn: !!input.value,=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: opt.selected,=0A=
=0A=
		// Tests for enctype support on a form (#6743)=0A=
		enctype: !!document.createElement("form").enctype,=0A=
=0A=
		// Makes sure cloning an html5 element does not cause problems=0A=
		// Where outerHTML is undefined, this still works=0A=
		html5Clone: document.createElement("nav").cloneNode( true ).outerHTML =
!=3D=3D "<:nav></:nav>",=0A=
=0A=
		// jQuery.support.boxModel DEPRECATED in 1.8 since we don't support =
Quirks Mode=0A=
		boxModel: document.compatMode =3D=3D=3D "CSS1Compat",=0A=
=0A=
		// Will be defined later=0A=
		deleteExpando: true,=0A=
		noCloneEvent: true,=0A=
		inlineBlockNeedsLayout: false,=0A=
		shrinkWrapBlocks: false,=0A=
		reliableMarginRight: true,=0A=
		boxSizingReliable: true,=0A=
		pixelPosition: false=0A=
	};=0A=
=0A=
	// Make sure checked status is properly cloned=0A=
	input.checked =3D true;=0A=
	support.noCloneChecked =3D input.cloneNode( true ).checked;=0A=
=0A=
	// Make sure that the options inside disabled selects aren't marked as =
disabled=0A=
	// (WebKit marks them as disabled)=0A=
	select.disabled =3D true;=0A=
	support.optDisabled =3D !opt.disabled;=0A=
=0A=
	// Support: IE<9=0A=
	try {=0A=
		delete div.test;=0A=
	} catch( e ) {=0A=
		support.deleteExpando =3D false;=0A=
	}=0A=
=0A=
	// Check if we can trust getAttribute("value")=0A=
	input =3D document.createElement("input");=0A=
	input.setAttribute( "value", "" );=0A=
	support.input =3D input.getAttribute( "value" ) =3D=3D=3D "";=0A=
=0A=
	// Check if an input maintains its value after becoming a radio=0A=
	input.value =3D "t";=0A=
	input.setAttribute( "type", "radio" );=0A=
	support.radioValue =3D input.value =3D=3D=3D "t";=0A=
=0A=
	// #11217 - WebKit loses check when the name is after the checked =
attribute=0A=
	input.setAttribute( "checked", "t" );=0A=
	input.setAttribute( "name", "t" );=0A=
=0A=
	fragment =3D document.createDocumentFragment();=0A=
	fragment.appendChild( input );=0A=
=0A=
	// Check if a disconnected checkbox will retain its checked=0A=
	// value of true after appended to the DOM (IE6/7)=0A=
	support.appendChecked =3D input.checked;=0A=
=0A=
	// WebKit doesn't clone checked state correctly in fragments=0A=
	support.checkClone =3D fragment.cloneNode( true ).cloneNode( true =
).lastChild.checked;=0A=
=0A=
	// Support: IE<9=0A=
	// Opera does not clone events (and typeof div.attachEvent =3D=3D=3D =
undefined).=0A=
	// IE9-10 clones events bound via attachEvent, but they don't trigger =
with .click()=0A=
	if ( div.attachEvent ) {=0A=
		div.attachEvent( "onclick", function() {=0A=
			support.noCloneEvent =3D false;=0A=
		});=0A=
=0A=
		div.cloneNode( true ).click();=0A=
	}=0A=
=0A=
	// Support: IE<9 (lack submit/change bubble), Firefox 17+ (lack focusin =
event)=0A=
	// Beware of CSP restrictions =
(https://developer.mozilla.org/en/Security/CSP), test/csp.php=0A=
	for ( i in { submit: true, change: true, focusin: true }) {=0A=
		div.setAttribute( eventName =3D "on" + i, "t" );=0A=
=0A=
		support[ i + "Bubbles" ] =3D eventName in window || div.attributes[ =
eventName ].expando =3D=3D=3D false;=0A=
	}=0A=
=0A=
	div.style.backgroundClip =3D "content-box";=0A=
	div.cloneNode( true ).style.backgroundClip =3D "";=0A=
	support.clearCloneStyle =3D div.style.backgroundClip =3D=3D=3D =
"content-box";=0A=
=0A=
	// Run tests that need a body at doc ready=0A=
	jQuery(function() {=0A=
		var container, marginDiv, tds,=0A=
			divReset =3D =
"padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-bo=
x-sizing:content-box;-webkit-box-sizing:content-box;",=0A=
			body =3D document.getElementsByTagName("body")[0];=0A=
=0A=
		if ( !body ) {=0A=
			// Return for frameset docs that don't have a body=0A=
			return;=0A=
		}=0A=
=0A=
		container =3D document.createElement("div");=0A=
		container.style.cssText =3D =
"border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-to=
p:1px";=0A=
=0A=
		body.appendChild( container ).appendChild( div );=0A=
=0A=
		// Support: IE8=0A=
		// Check if table cells still have offsetWidth/Height when they are set=0A=
		// to display:none and there are still other visible table cells in a=0A=
		// table row; if so, offsetWidth/Height are not reliable for use when=0A=
		// determining if an element has been hidden directly using=0A=
		// display:none (it is still safe to use offsets if a parent element is=0A=
		// hidden; don safety goggles and see bug #4512 for more information).=0A=
		div.innerHTML =3D "<table><tr><td></td><td>t</td></tr></table>";=0A=
		tds =3D div.getElementsByTagName("td");=0A=
		tds[ 0 ].style.cssText =3D "padding:0;margin:0;border:0;display:none";=0A=
		isSupported =3D ( tds[ 0 ].offsetHeight =3D=3D=3D 0 );=0A=
=0A=
		tds[ 0 ].style.display =3D "";=0A=
		tds[ 1 ].style.display =3D "none";=0A=
=0A=
		// Support: IE8=0A=
		// Check if empty table cells still have offsetWidth/Height=0A=
		support.reliableHiddenOffsets =3D isSupported && ( tds[ 0 =
].offsetHeight =3D=3D=3D 0 );=0A=
=0A=
		// Check box-sizing and margin behavior=0A=
		div.innerHTML =3D "";=0A=
		div.style.cssText =3D =
"box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:bord=
er-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;posit=
ion:absolute;top:1%;";=0A=
		support.boxSizing =3D ( div.offsetWidth =3D=3D=3D 4 );=0A=
		support.doesNotIncludeMarginInBodyOffset =3D ( body.offsetTop !=3D=3D =
1 );=0A=
=0A=
		// Use window.getComputedStyle because jsdom on node.js will break =
without it.=0A=
		if ( window.getComputedStyle ) {=0A=
			support.pixelPosition =3D ( window.getComputedStyle( div, null ) || =
{} ).top !=3D=3D "1%";=0A=
			support.boxSizingReliable =3D ( window.getComputedStyle( div, null ) =
|| { width: "4px" } ).width =3D=3D=3D "4px";=0A=
=0A=
			// Check if div with explicit width and no margin-right incorrectly=0A=
			// gets computed margin-right based on width of container. (#3333)=0A=
			// Fails in WebKit before Feb 2011 nightlies=0A=
			// WebKit Bug 13343 - getComputedStyle returns wrong value for =
margin-right=0A=
			marginDiv =3D div.appendChild( document.createElement("div") );=0A=
			marginDiv.style.cssText =3D div.style.cssText =3D divReset;=0A=
			marginDiv.style.marginRight =3D marginDiv.style.width =3D "0";=0A=
			div.style.width =3D "1px";=0A=
=0A=
			support.reliableMarginRight =3D=0A=
				!parseFloat( ( window.getComputedStyle( marginDiv, null ) || {} =
).marginRight );=0A=
		}=0A=
=0A=
		if ( typeof div.style.zoom !=3D=3D "undefined" ) {=0A=
			// Support: IE<8=0A=
			// Check if natively block-level elements act like inline-block=0A=
			// elements when setting their display to 'inline' and giving=0A=
			// them layout=0A=
			div.innerHTML =3D "";=0A=
			div.style.cssText =3D divReset + =
"width:1px;padding:1px;display:inline;zoom:1";=0A=
			support.inlineBlockNeedsLayout =3D ( div.offsetWidth =3D=3D=3D 3 );=0A=
=0A=
			// Support: IE6=0A=
			// Check if elements with layout shrink-wrap their children=0A=
			div.style.display =3D "block";=0A=
			div.innerHTML =3D "<div></div>";=0A=
			div.firstChild.style.width =3D "5px";=0A=
			support.shrinkWrapBlocks =3D ( div.offsetWidth !=3D=3D 3 );=0A=
=0A=
			// Prevent IE 6 from affecting layout for positioned elements #11048=0A=
			// Prevent IE from shrinking the body in IE 7 mode #12869=0A=
			body.style.zoom =3D 1;=0A=
		}=0A=
=0A=
		body.removeChild( container );=0A=
=0A=
		// Null elements to avoid leaks in IE=0A=
		container =3D div =3D tds =3D marginDiv =3D null;=0A=
	});=0A=
=0A=
	// Null elements to avoid leaks in IE=0A=
	all =3D select =3D fragment =3D opt =3D a =3D input =3D null;=0A=
=0A=
	return support;=0A=
})();=0A=
=0A=
var rbrace =3D /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,=0A=
	rmultiDash =3D /([A-Z])/g;=0A=
	=0A=
function internalData( elem, name, data, pvt /* Internal Use Only */ ){=0A=
	if ( !jQuery.acceptData( elem ) ) {=0A=
		return;=0A=
	}=0A=
=0A=
	var thisCache, ret,=0A=
		internalKey =3D jQuery.expando,=0A=
		getByName =3D typeof name =3D=3D=3D "string",=0A=
=0A=
		// We have to handle DOM nodes and JS objects differently because IE6-7=0A=
		// can't GC object references properly across the DOM-JS boundary=0A=
		isNode =3D elem.nodeType,=0A=
=0A=
		// Only DOM nodes need the global jQuery cache; JS object data is=0A=
		// attached directly to the object so GC can occur automatically=0A=
		cache =3D isNode ? jQuery.cache : elem,=0A=
=0A=
		// Only defining an ID for JS objects if its cache already exists =
allows=0A=
		// the code to shortcut on the same path as a DOM node with no cache=0A=
		id =3D isNode ? elem[ internalKey ] : elem[ internalKey ] && =
internalKey;=0A=
=0A=
	// Avoid doing any more work than we need to when trying to get data on =
an=0A=
	// object that has no data at all=0A=
	if ( (!id || !cache[id] || (!pvt && !cache[id].data)) && getByName && =
data =3D=3D=3D undefined ) {=0A=
		return;=0A=
	}=0A=
=0A=
	if ( !id ) {=0A=
		// Only DOM nodes need a new unique ID for each element since their =
data=0A=
		// ends up in the global cache=0A=
		if ( isNode ) {=0A=
			elem[ internalKey ] =3D id =3D core_deletedIds.pop() || jQuery.guid++;=0A=
		} else {=0A=
			id =3D internalKey;=0A=
		}=0A=
	}=0A=
=0A=
	if ( !cache[ id ] ) {=0A=
		cache[ id ] =3D {};=0A=
=0A=
		// Avoids exposing jQuery metadata on plain JS objects when the object=0A=
		// is serialized using JSON.stringify=0A=
		if ( !isNode ) {=0A=
			cache[ id ].toJSON =3D jQuery.noop;=0A=
		}=0A=
	}=0A=
=0A=
	// An object can be passed to jQuery.data instead of a key/value pair; =
this gets=0A=
	// shallow copied over onto the existing cache=0A=
	if ( typeof name =3D=3D=3D "object" || typeof name =3D=3D=3D "function" =
) {=0A=
		if ( pvt ) {=0A=
			cache[ id ] =3D jQuery.extend( cache[ id ], name );=0A=
		} else {=0A=
			cache[ id ].data =3D jQuery.extend( cache[ id ].data, name );=0A=
		}=0A=
	}=0A=
=0A=
	thisCache =3D cache[ id ];=0A=
=0A=
	// jQuery data() is stored in a separate object inside the object's =
internal data=0A=
	// cache in order to avoid key collisions between internal data and =
user-defined=0A=
	// data.=0A=
	if ( !pvt ) {=0A=
		if ( !thisCache.data ) {=0A=
			thisCache.data =3D {};=0A=
		}=0A=
=0A=
		thisCache =3D thisCache.data;=0A=
	}=0A=
=0A=
	if ( data !=3D=3D undefined ) {=0A=
		thisCache[ jQuery.camelCase( name ) ] =3D data;=0A=
	}=0A=
=0A=
	// Check for both converted-to-camel and non-converted data property =
names=0A=
	// If a data property was specified=0A=
	if ( getByName ) {=0A=
=0A=
		// First Try to find as-is property data=0A=
		ret =3D thisCache[ name ];=0A=
=0A=
		// Test for null|undefined property data=0A=
		if ( ret =3D=3D null ) {=0A=
=0A=
			// Try to find the camelCased property=0A=
			ret =3D thisCache[ jQuery.camelCase( name ) ];=0A=
		}=0A=
	} else {=0A=
		ret =3D thisCache;=0A=
	}=0A=
=0A=
	return ret;=0A=
}=0A=
=0A=
function internalRemoveData( elem, name, pvt /* For internal use only */ =
){=0A=
	if ( !jQuery.acceptData( elem ) ) {=0A=
		return;=0A=
	}=0A=
=0A=
	var thisCache, i, l,=0A=
=0A=
		isNode =3D elem.nodeType,=0A=
=0A=
		// See jQuery.data for more information=0A=
		cache =3D isNode ? jQuery.cache : elem,=0A=
		id =3D isNode ? elem[ jQuery.expando ] : jQuery.expando;=0A=
=0A=
	// If there is already no cache entry for this object, there is no=0A=
	// purpose in continuing=0A=
	if ( !cache[ id ] ) {=0A=
		return;=0A=
	}=0A=
=0A=
	if ( name ) {=0A=
=0A=
		thisCache =3D pvt ? cache[ id ] : cache[ id ].data;=0A=
=0A=
		if ( thisCache ) {=0A=
=0A=
			// Support array or space separated string names for data keys=0A=
			if ( !jQuery.isArray( name ) ) {=0A=
=0A=
				// try the string as a key before any manipulation=0A=
				if ( name in thisCache ) {=0A=
					name =3D [ name ];=0A=
				} else {=0A=
=0A=
					// split the camel cased version by spaces unless a key with the =
spaces exists=0A=
					name =3D jQuery.camelCase( name );=0A=
					if ( name in thisCache ) {=0A=
						name =3D [ name ];=0A=
					} else {=0A=
						name =3D name.split(" ");=0A=
					}=0A=
				}=0A=
			} else {=0A=
				// If "name" is an array of keys...=0A=
				// When data is initially created, via ("key", "val") signature,=0A=
				// keys will be converted to camelCase.=0A=
				// Since there is no way to tell _how_ a key was added, remove=0A=
				// both plain key and camelCase key. #12786=0A=
				// This will only penalize the array argument path.=0A=
				name =3D name.concat( jQuery.map( name, jQuery.camelCase ) );=0A=
			}=0A=
=0A=
			for ( i =3D 0, l =3D name.length; i < l; i++ ) {=0A=
				delete thisCache[ name[i] ];=0A=
			}=0A=
=0A=
			// If there is no data left in the cache, we want to continue=0A=
			// and let the cache object itself get destroyed=0A=
			if ( !( pvt ? isEmptyDataObject : jQuery.isEmptyObject )( thisCache ) =
) {=0A=
				return;=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// See jQuery.data for more information=0A=
	if ( !pvt ) {=0A=
		delete cache[ id ].data;=0A=
=0A=
		// Don't destroy the parent cache unless the internal data object=0A=
		// had been the only thing left in it=0A=
		if ( !isEmptyDataObject( cache[ id ] ) ) {=0A=
			return;=0A=
		}=0A=
	}=0A=
=0A=
	// Destroy the cache=0A=
	if ( isNode ) {=0A=
		jQuery.cleanData( [ elem ], true );=0A=
=0A=
	// Use delete when supported for expandos or `cache` is not a window =
per isWindow (#10080)=0A=
	} else if ( jQuery.support.deleteExpando || cache !=3D cache.window ) {=0A=
		delete cache[ id ];=0A=
=0A=
	// When all else fails, null=0A=
	} else {=0A=
		cache[ id ] =3D null;=0A=
	}=0A=
}=0A=
=0A=
jQuery.extend({=0A=
	cache: {},=0A=
=0A=
	// Unique for each copy of jQuery on the page=0A=
	// Non-digits removed to match rinlinejQuery=0A=
	expando: "jQuery" + ( core_version + Math.random() ).replace( /\D/g, "" =
),=0A=
=0A=
	// The following elements throw uncatchable exceptions if you=0A=
	// attempt to add expando properties to them.=0A=
	noData: {=0A=
		"embed": true,=0A=
		// Ban all objects except for Flash (which handle expandos)=0A=
		"object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",=0A=
		"applet": true=0A=
	},=0A=
=0A=
	hasData: function( elem ) {=0A=
		elem =3D elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ =
jQuery.expando ];=0A=
		return !!elem && !isEmptyDataObject( elem );=0A=
	},=0A=
=0A=
	data: function( elem, name, data ) {=0A=
		return internalData( elem, name, data, false );=0A=
	},=0A=
=0A=
	removeData: function( elem, name ) {=0A=
		return internalRemoveData( elem, name, false );=0A=
	},=0A=
=0A=
	// For internal use only.=0A=
	_data: function( elem, name, data ) {=0A=
		return internalData( elem, name, data, true );=0A=
	},=0A=
	=0A=
	_removeData: function( elem, name ) {=0A=
		return internalRemoveData( elem, name, true );=0A=
	},=0A=
=0A=
	// A method for determining if a DOM node can handle the data expando=0A=
	acceptData: function( elem ) {=0A=
		var noData =3D elem.nodeName && jQuery.noData[ =
elem.nodeName.toLowerCase() ];=0A=
=0A=
		// nodes accept data unless otherwise specified; rejection can be =
conditional=0A=
		return !noData || noData !=3D=3D true && elem.getAttribute("classid") =
=3D=3D=3D noData;=0A=
	}=0A=
});=0A=
=0A=
jQuery.fn.extend({=0A=
	data: function( key, value ) {=0A=
		var attrs, name,=0A=
			elem =3D this[0],=0A=
			i =3D 0,=0A=
			data =3D null;=0A=
=0A=
		// Gets all values=0A=
		if ( key =3D=3D=3D undefined ) {=0A=
			if ( this.length ) {=0A=
				data =3D jQuery.data( elem );=0A=
=0A=
				if ( elem.nodeType =3D=3D=3D 1 && !jQuery._data( elem, "parsedAttrs" =
) ) {=0A=
					attrs =3D elem.attributes;=0A=
					for ( ; i < attrs.length; i++ ) {=0A=
						name =3D attrs[i].name;=0A=
=0A=
						if ( !name.indexOf( "data-" ) ) {=0A=
							name =3D jQuery.camelCase( name.substring(5) );=0A=
=0A=
							dataAttr( elem, name, data[ name ] );=0A=
						}=0A=
					}=0A=
					jQuery._data( elem, "parsedAttrs", true );=0A=
				}=0A=
			}=0A=
=0A=
			return data;=0A=
		}=0A=
=0A=
		// Sets multiple values=0A=
		if ( typeof key =3D=3D=3D "object" ) {=0A=
			return this.each(function() {=0A=
				jQuery.data( this, key );=0A=
			});=0A=
		}=0A=
=0A=
		return jQuery.access( this, function( value ) {=0A=
=0A=
			if ( value =3D=3D=3D undefined ) {=0A=
				// Try to fetch any internally stored data first=0A=
				return elem ? dataAttr( elem, key, jQuery.data( elem, key ) ) : null;=0A=
			}=0A=
=0A=
			this.each(function() {=0A=
				jQuery.data( this, key, value );=0A=
			});=0A=
		}, null, value, arguments.length > 1, null, true );=0A=
	},=0A=
=0A=
	removeData: function( key ) {=0A=
		return this.each(function() {=0A=
			jQuery.removeData( this, key );=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
function dataAttr( elem, key, data ) {=0A=
	// If nothing was found internally, try to fetch any=0A=
	// data from the HTML5 data-* attribute=0A=
	if ( data =3D=3D=3D undefined && elem.nodeType =3D=3D=3D 1 ) {=0A=
=0A=
		var name =3D "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();=0A=
=0A=
		data =3D elem.getAttribute( name );=0A=
=0A=
		if ( typeof data =3D=3D=3D "string" ) {=0A=
			try {=0A=
				data =3D data =3D=3D=3D "true" ? true :=0A=
				data =3D=3D=3D "false" ? false :=0A=
				data =3D=3D=3D "null" ? null :=0A=
				// Only convert to a number if it doesn't change the string=0A=
				+data + "" =3D=3D=3D data ? +data :=0A=
				rbrace.test( data ) ? jQuery.parseJSON( data ) :=0A=
					data;=0A=
			} catch( e ) {}=0A=
=0A=
			// Make sure we set the data so it isn't changed later=0A=
			jQuery.data( elem, key, data );=0A=
=0A=
		} else {=0A=
			data =3D undefined;=0A=
		}=0A=
	}=0A=
=0A=
	return data;=0A=
}=0A=
=0A=
// checks a cache object for emptiness=0A=
function isEmptyDataObject( obj ) {=0A=
	var name;=0A=
	for ( name in obj ) {=0A=
=0A=
		// if the public data object is empty, the private is still empty=0A=
		if ( name =3D=3D=3D "data" && jQuery.isEmptyObject( obj[name] ) ) {=0A=
			continue;=0A=
		}=0A=
		if ( name !=3D=3D "toJSON" ) {=0A=
			return false;=0A=
		}=0A=
	}=0A=
=0A=
	return true;=0A=
}=0A=
jQuery.extend({=0A=
	queue: function( elem, type, data ) {=0A=
		var queue;=0A=
=0A=
		if ( elem ) {=0A=
			type =3D ( type || "fx" ) + "queue";=0A=
			queue =3D jQuery._data( elem, type );=0A=
=0A=
			// Speed up dequeue by getting out quickly if this is just a lookup=0A=
			if ( data ) {=0A=
				if ( !queue || jQuery.isArray(data) ) {=0A=
					queue =3D jQuery._data( elem, type, jQuery.makeArray(data) );=0A=
				} else {=0A=
					queue.push( data );=0A=
				}=0A=
			}=0A=
			return queue || [];=0A=
		}=0A=
	},=0A=
=0A=
	dequeue: function( elem, type ) {=0A=
		type =3D type || "fx";=0A=
=0A=
		var queue =3D jQuery.queue( elem, type ),=0A=
			startLength =3D queue.length,=0A=
			fn =3D queue.shift(),=0A=
			hooks =3D jQuery._queueHooks( elem, type ),=0A=
			next =3D function() {=0A=
				jQuery.dequeue( elem, type );=0A=
			};=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=
			startLength--;=0A=
		}=0A=
=0A=
		hooks.cur =3D fn;=0A=
		if ( fn ) {=0A=
=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=
			// clear up the last queue stop function=0A=
			delete hooks.stop;=0A=
			fn.call( elem, next, hooks );=0A=
		}=0A=
=0A=
		if ( !startLength && hooks ) {=0A=
			hooks.empty.fire();=0A=
		}=0A=
	},=0A=
=0A=
	// not intended for public consumption - generates a queueHooks object, =
or returns the current one=0A=
	_queueHooks: function( elem, type ) {=0A=
		var key =3D type + "queueHooks";=0A=
		return jQuery._data( elem, key ) || jQuery._data( elem, key, {=0A=
			empty: jQuery.Callbacks("once memory").add(function() {=0A=
				jQuery._removeData( elem, type + "queue" );=0A=
				jQuery._removeData( elem, key );=0A=
			})=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
jQuery.fn.extend({=0A=
	queue: function( type, data ) {=0A=
		var setter =3D 2;=0A=
=0A=
		if ( typeof type !=3D=3D "string" ) {=0A=
			data =3D type;=0A=
			type =3D "fx";=0A=
			setter--;=0A=
		}=0A=
=0A=
		if ( arguments.length < setter ) {=0A=
			return jQuery.queue( this[0], type );=0A=
		}=0A=
=0A=
		return data =3D=3D=3D undefined ?=0A=
			this :=0A=
			this.each(function() {=0A=
				var queue =3D jQuery.queue( this, type, data );=0A=
=0A=
				// ensure a hooks for this queue=0A=
				jQuery._queueHooks( this, type );=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=
	// 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( next, hooks ) {=0A=
			var timeout =3D setTimeout( next, time );=0A=
			hooks.stop =3D function() {=0A=
				clearTimeout( timeout );=0A=
			};=0A=
		});=0A=
	},=0A=
	clearQueue: function( type ) {=0A=
		return this.queue( type || "fx", [] );=0A=
	},=0A=
	// Get a promise resolved when queues of a certain type=0A=
	// are emptied (fx is the type by default)=0A=
	promise: function( type, obj ) {=0A=
		var tmp,=0A=
			count =3D 1,=0A=
			defer =3D jQuery.Deferred(),=0A=
			elements =3D this,=0A=
			i =3D this.length,=0A=
			resolve =3D function() {=0A=
				if ( !( --count ) ) {=0A=
					defer.resolveWith( elements, [ elements ] );=0A=
				}=0A=
			};=0A=
=0A=
		if ( typeof type !=3D=3D "string" ) {=0A=
			obj =3D type;=0A=
			type =3D undefined;=0A=
		}=0A=
		type =3D type || "fx";=0A=
=0A=
		while( i-- ) {=0A=
			tmp =3D jQuery._data( elements[ i ], type + "queueHooks" );=0A=
			if ( tmp && tmp.empty ) {=0A=
				count++;=0A=
				tmp.empty.add( resolve );=0A=
			}=0A=
		}=0A=
		resolve();=0A=
		return defer.promise( obj );=0A=
	}=0A=
});=0A=
var nodeHook, boolHook,=0A=
	rclass =3D /[\t\r\n]/g,=0A=
	rreturn =3D /\r/g,=0A=
	rfocusable =3D /^(?:input|select|textarea|button|object)$/i,=0A=
	rclickable =3D /^(?:a|area)$/i,=0A=
	rboolean =3D =
/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hi=
dden|loop|multiple|open|readonly|required|scoped)$/i,=0A=
	ruseDefault =3D /^(?:checked|selected)$/i,=0A=
	getSetAttribute =3D jQuery.support.getSetAttribute,=0A=
	getSetInput =3D jQuery.support.input;=0A=
=0A=
jQuery.fn.extend({=0A=
	attr: function( name, value ) {=0A=
		return jQuery.access( this, jQuery.attr, name, value, arguments.length =
> 1 );=0A=
	},=0A=
=0A=
	removeAttr: function( name ) {=0A=
		return this.each(function() {=0A=
			jQuery.removeAttr( this, name );=0A=
		});=0A=
	},=0A=
=0A=
	prop: function( name, value ) {=0A=
		return jQuery.access( this, jQuery.prop, name, value, arguments.length =
> 1 );=0A=
	},=0A=
=0A=
	removeProp: function( name ) {=0A=
		name =3D jQuery.propFix[ name ] || name;=0A=
		return this.each(function() {=0A=
			// try/catch handles cases where IE balks (such as removing a =
property on window)=0A=
			try {=0A=
				this[ name ] =3D undefined;=0A=
				delete this[ name ];=0A=
			} catch( e ) {}=0A=
		});=0A=
	},=0A=
=0A=
	addClass: function( value ) {=0A=
		var classes, elem, cur, clazz, j,=0A=
			i =3D 0,=0A=
			len =3D this.length,=0A=
			proceed =3D typeof value =3D=3D=3D "string" && value;=0A=
=0A=
		if ( jQuery.isFunction( value ) ) {=0A=
			return this.each(function( j ) {=0A=
				jQuery( this ).addClass( value.call( this, j, this.className ) );=0A=
			});=0A=
		}=0A=
=0A=
		if ( proceed ) {=0A=
			// The disjunction here is for better compressibility (see =
removeClass)=0A=
			classes =3D ( value || "" ).match( core_rnotwhite ) || [];=0A=
=0A=
			for ( ; i < len; i++ ) {=0A=
				elem =3D this[ i ];=0A=
				cur =3D elem.nodeType =3D=3D=3D 1 && ( elem.className ?=0A=
					( " " + elem.className + " " ).replace( rclass, " " ) :=0A=
					" "=0A=
				);=0A=
=0A=
				if ( cur ) {=0A=
					j =3D 0;=0A=
					while ( (clazz =3D classes[j++]) ) {=0A=
						if ( cur.indexOf( " " + clazz + " " ) < 0 ) {=0A=
							cur +=3D clazz + " ";=0A=
						}=0A=
					}=0A=
					elem.className =3D jQuery.trim( cur );=0A=
=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	removeClass: function( value ) {=0A=
		var classes, elem, cur, clazz, j,=0A=
			i =3D 0,=0A=
			len =3D this.length,=0A=
			proceed =3D arguments.length =3D=3D=3D 0 || typeof value =3D=3D=3D =
"string" && value;=0A=
=0A=
		if ( jQuery.isFunction( value ) ) {=0A=
			return this.each(function( j ) {=0A=
				jQuery( this ).removeClass( value.call( this, j, this.className ) );=0A=
			});=0A=
		}=0A=
		if ( proceed ) {=0A=
			classes =3D ( value || "" ).match( core_rnotwhite ) || [];=0A=
=0A=
			for ( ; i < len; i++ ) {=0A=
				elem =3D this[ i ];=0A=
				// This expression is here for better compressibility (see addClass)=0A=
				cur =3D elem.nodeType =3D=3D=3D 1 && ( elem.className ?=0A=
					( " " + elem.className + " " ).replace( rclass, " " ) :=0A=
					""=0A=
				);=0A=
=0A=
				if ( cur ) {=0A=
					j =3D 0;=0A=
					while ( (clazz =3D classes[j++]) ) {=0A=
						// Remove *all* instances=0A=
						while ( cur.indexOf( " " + clazz + " " ) >=3D 0 ) {=0A=
							cur =3D cur.replace( " " + clazz + " ", " " );=0A=
						}=0A=
					}=0A=
					elem.className =3D value ? jQuery.trim( cur ) : "";=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	toggleClass: function( value, stateVal ) {=0A=
		var type =3D typeof value,=0A=
			isBool =3D typeof stateVal =3D=3D=3D "boolean";=0A=
=0A=
		if ( jQuery.isFunction( value ) ) {=0A=
			return this.each(function( i ) {=0A=
				jQuery( this ).toggleClass( value.call(this, i, this.className, =
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,=0A=
					i =3D 0,=0A=
					self =3D jQuery( this ),=0A=
					state =3D stateVal,=0A=
					classNames =3D value.match( core_rnotwhite ) || [];=0A=
=0A=
				while ( (className =3D classNames[ i++ ]) ) {=0A=
					// check each className given, space separated list=0A=
					state =3D isBool ? state : !self.hasClass( className );=0A=
					self[ state ? "addClass" : "removeClass" ]( className );=0A=
				}=0A=
=0A=
			// Toggle whole class name=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=
				// If the element has a class name or if we're passed "false",=0A=
				// then remove the whole classname (if there was one, the above =
saved it).=0A=
				// Otherwise bring back whatever was previously saved (if anything),=0A=
				// falling back to the empty string if nothing was stored.=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=
			i =3D 0,=0A=
			l =3D this.length;=0A=
		for ( ; i < l; i++ ) {=0A=
			if ( this[i].nodeType =3D=3D=3D 1 && (" " + this[i].className + " =
").replace(rclass, " ").indexOf( className ) >=3D 0 ) {=0A=
				return true;=0A=
			}=0A=
		}=0A=
=0A=
		return false;=0A=
	},=0A=
=0A=
	val: function( value ) {=0A=
		var hooks, ret, isFunction,=0A=
			elem =3D this[0];=0A=
=0A=
		if ( !arguments.length ) {=0A=
			if ( elem ) {=0A=
				hooks =3D jQuery.valHooks[ elem.type ] || jQuery.valHooks[ =
elem.nodeName.toLowerCase() ];=0A=
=0A=
				if ( hooks && "get" in hooks && (ret =3D hooks.get( elem, "value" )) =
!=3D=3D undefined ) {=0A=
					return ret;=0A=
				}=0A=
=0A=
				ret =3D elem.value;=0A=
=0A=
				return typeof ret =3D=3D=3D "string" ?=0A=
					// handle most common string cases=0A=
					ret.replace(rreturn, "") :=0A=
					// handle cases where value is null/undef or number=0A=
					ret =3D=3D null ? "" : ret;=0A=
			}=0A=
=0A=
			return;=0A=
		}=0A=
=0A=
		isFunction =3D jQuery.isFunction( value );=0A=
=0A=
		return this.each(function( i ) {=0A=
			var val,=0A=
				self =3D jQuery(this);=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=
			} else {=0A=
				val =3D value;=0A=
			}=0A=
=0A=
			// Treat null/undefined as ""; convert numbers to string=0A=
			if ( val =3D=3D null ) {=0A=
				val =3D "";=0A=
			} else if ( typeof val =3D=3D=3D "number" ) {=0A=
				val +=3D "";=0A=
			} else if ( jQuery.isArray( val ) ) {=0A=
				val =3D jQuery.map(val, function ( value ) {=0A=
					return value =3D=3D null ? "" : value + "";=0A=
				});=0A=
			}=0A=
=0A=
			hooks =3D jQuery.valHooks[ this.type ] || jQuery.valHooks[ =
this.nodeName.toLowerCase() ];=0A=
=0A=
			// If set returns undefined, fall back to normal setting=0A=
			if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) =
=3D=3D=3D undefined ) {=0A=
				this.value =3D val;=0A=
			}=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	valHooks: {=0A=
		option: {=0A=
			get: function( elem ) {=0A=
				// attributes.value is undefined in Blackberry 4.7 but=0A=
				// uses .value. See #6932=0A=
				var val =3D elem.attributes.value;=0A=
				return !val || val.specified ? elem.value : elem.text;=0A=
			}=0A=
		},=0A=
		select: {=0A=
			get: function( elem ) {=0A=
				var value, option,=0A=
					options =3D elem.options,=0A=
					index =3D elem.selectedIndex,=0A=
					one =3D elem.type =3D=3D=3D "select-one" || index < 0,=0A=
					values =3D one ? null : [],=0A=
					max =3D one ? index + 1 : options.length,=0A=
					i =3D index < 0 ?=0A=
						max :=0A=
						one ? index : 0;=0A=
=0A=
				// Loop through all the selected options=0A=
				for ( ; i < max; i++ ) {=0A=
					option =3D options[ i ];=0A=
=0A=
					// oldIE doesn't update selected after form reset (#2551)=0A=
					if ( ( option.selected || i =3D=3D=3D index ) &&=0A=
							// Don't return options that are disabled or in a disabled =
optgroup=0A=
							( jQuery.support.optDisabled ? !option.disabled : =
option.getAttribute("disabled") =3D=3D=3D null ) &&=0A=
							( !option.parentNode.disabled || !jQuery.nodeName( =
option.parentNode, "optgroup" ) ) ) {=0A=
=0A=
						// Get the specific 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=
			set: function( elem, value ) {=0A=
				var values =3D jQuery.makeArray( value );=0A=
=0A=
				jQuery(elem).find("option").each(function() {=0A=
					this.selected =3D jQuery.inArray( jQuery(this).val(), values ) >=3D =
0;=0A=
				});=0A=
=0A=
				if ( !values.length ) {=0A=
					elem.selectedIndex =3D -1;=0A=
				}=0A=
				return values;=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	attr: function( elem, name, value ) {=0A=
		var ret, hooks, notxml,=0A=
			nType =3D elem.nodeType;=0A=
=0A=
		// don't get/set attributes on text, comment and attribute nodes=0A=
		if ( !elem || nType =3D=3D=3D 3 || nType =3D=3D=3D 8 || nType =
=3D=3D=3D 2 ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Fallback to prop when attributes are not supported=0A=
		if ( typeof elem.getAttribute =3D=3D=3D "undefined" ) {=0A=
			return jQuery.prop( elem, name, value );=0A=
		}=0A=
=0A=
		notxml =3D nType !=3D=3D 1 || !jQuery.isXMLDoc( elem );=0A=
=0A=
		// All attributes are lowercase=0A=
		// Grab necessary hook if one is defined=0A=
		if ( notxml ) {=0A=
			name =3D name.toLowerCase();=0A=
			hooks =3D jQuery.attrHooks[ name ] || ( rboolean.test( name ) ? =
boolHook : nodeHook );=0A=
		}=0A=
=0A=
		if ( value !=3D=3D undefined ) {=0A=
=0A=
			if ( value =3D=3D=3D null ) {=0A=
				jQuery.removeAttr( elem, name );=0A=
=0A=
			} else if ( hooks && notxml && "set" in hooks && (ret =3D hooks.set( =
elem, value, name )) !=3D=3D undefined ) {=0A=
				return ret;=0A=
=0A=
			} else {=0A=
				elem.setAttribute( name, value + "" );=0A=
				return value;=0A=
			}=0A=
=0A=
		} else if ( hooks && notxml && "get" in hooks && (ret =3D hooks.get( =
elem, name )) !=3D=3D null ) {=0A=
			return ret;=0A=
=0A=
		} else {=0A=
=0A=
			// In IE9+, Flash objects don't have .getAttribute (#12945)=0A=
			// Support: IE9+=0A=
			if ( typeof elem.getAttribute !=3D=3D "undefined" ) {=0A=
				ret =3D  elem.getAttribute( name );=0A=
			}=0A=
=0A=
			// Non-existent attributes return null, we normalize to undefined=0A=
			return ret =3D=3D null ?=0A=
				undefined :=0A=
				ret;=0A=
		}=0A=
	},=0A=
=0A=
	removeAttr: function( elem, value ) {=0A=
		var name, propName,=0A=
			i =3D 0,=0A=
			attrNames =3D value && value.match( core_rnotwhite );=0A=
=0A=
		if ( attrNames && elem.nodeType =3D=3D=3D 1 ) {=0A=
			while ( (name =3D attrNames[i++]) ) {=0A=
				propName =3D jQuery.propFix[ name ] || name;=0A=
=0A=
				// Boolean attributes get special treatment (#10870)=0A=
				if ( rboolean.test( name ) ) {=0A=
					// Set corresponding property to false for boolean attributes=0A=
					// Also clear defaultChecked/defaultSelected (if appropriate) for =
IE<8=0A=
					if ( !getSetAttribute && ruseDefault.test( name ) ) {=0A=
						elem[ jQuery.camelCase( "default-" + name ) ] =3D=0A=
							elem[ propName ] =3D false;=0A=
					} else {=0A=
						elem[ propName ] =3D false;=0A=
					}=0A=
=0A=
				// See #9699 for explanation of this approach (setting first, then =
removal)=0A=
				} else {=0A=
					jQuery.attr( elem, name, "" );=0A=
				}=0A=
=0A=
				elem.removeAttribute( getSetAttribute ? name : propName );=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	attrHooks: {=0A=
		type: {=0A=
			set: function( elem, value ) {=0A=
				if ( !jQuery.support.radioValue && value =3D=3D=3D "radio" && =
jQuery.nodeName(elem, "input") ) {=0A=
					// Setting the type on a radio button after the value resets the =
value in IE6-9=0A=
					// Reset value to default in case type is set after value during =
creation=0A=
					var val =3D elem.value;=0A=
					elem.setAttribute( "type", value );=0A=
					if ( val ) {=0A=
						elem.value =3D val;=0A=
					}=0A=
					return value;=0A=
				}=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	propFix: {=0A=
		tabindex: "tabIndex",=0A=
		readonly: "readOnly",=0A=
		"for": "htmlFor",=0A=
		"class": "className",=0A=
		maxlength: "maxLength",=0A=
		cellspacing: "cellSpacing",=0A=
		cellpadding: "cellPadding",=0A=
		rowspan: "rowSpan",=0A=
		colspan: "colSpan",=0A=
		usemap: "useMap",=0A=
		frameborder: "frameBorder",=0A=
		contenteditable: "contentEditable"=0A=
	},=0A=
=0A=
	prop: function( elem, name, value ) {=0A=
		var ret, hooks, notxml,=0A=
			nType =3D elem.nodeType;=0A=
=0A=
		// don't get/set properties on text, comment and attribute nodes=0A=
		if ( !elem || nType =3D=3D=3D 3 || nType =3D=3D=3D 8 || nType =
=3D=3D=3D 2 ) {=0A=
			return;=0A=
		}=0A=
=0A=
		notxml =3D nType !=3D=3D 1 || !jQuery.isXMLDoc( elem );=0A=
=0A=
		if ( notxml ) {=0A=
			// Fix name and attach hooks=0A=
			name =3D jQuery.propFix[ name ] || name;=0A=
			hooks =3D jQuery.propHooks[ name ];=0A=
		}=0A=
=0A=
		if ( value !=3D=3D undefined ) {=0A=
			if ( hooks && "set" in hooks && (ret =3D hooks.set( elem, value, name =
)) !=3D=3D undefined ) {=0A=
				return ret;=0A=
=0A=
			} else {=0A=
				return ( elem[ name ] =3D value );=0A=
			}=0A=
=0A=
		} else {=0A=
			if ( hooks && "get" in hooks && (ret =3D hooks.get( elem, name )) =
!=3D=3D null ) {=0A=
				return ret;=0A=
=0A=
			} else {=0A=
				return elem[ name ];=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	propHooks: {=0A=
		tabIndex: {=0A=
			get: function( elem ) {=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=
				var attributeNode =3D elem.getAttributeNode("tabindex");=0A=
=0A=
				return attributeNode && attributeNode.specified ?=0A=
					parseInt( attributeNode.value, 10 ) :=0A=
					rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName =
) && elem.href ?=0A=
						0 :=0A=
						undefined;=0A=
			}=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
// Hook for boolean attributes=0A=
boolHook =3D {=0A=
	get: function( elem, name ) {=0A=
		var=0A=
			// Use .prop to determine if this attribute is understood as boolean=0A=
			prop =3D jQuery.prop( elem, name ),=0A=
=0A=
			// Fetch it accordingly=0A=
			attr =3D typeof prop =3D=3D=3D "boolean" && elem.getAttribute( name ),=0A=
			detail =3D typeof prop =3D=3D=3D "boolean" ?=0A=
=0A=
				getSetInput && getSetAttribute ?=0A=
					attr !=3D null :=0A=
					// oldIE fabricates an empty string for missing boolean attributes=0A=
					// and conflates checked/selected into attroperties=0A=
					ruseDefault.test( name ) ?=0A=
						elem[ jQuery.camelCase( "default-" + name ) ] :=0A=
						!!attr :=0A=
=0A=
				// fetch an attribute node for properties not recognized as boolean=0A=
				elem.getAttributeNode( name );=0A=
=0A=
		return detail && detail.value !=3D=3D false ?=0A=
			name.toLowerCase() :=0A=
			undefined;=0A=
	},=0A=
	set: function( elem, value, name ) {=0A=
		if ( value =3D=3D=3D false ) {=0A=
			// Remove boolean attributes when set to false=0A=
			jQuery.removeAttr( elem, name );=0A=
		} else if ( getSetInput && getSetAttribute || !ruseDefault.test( name =
) ) {=0A=
			// IE<8 needs the *property* name=0A=
			elem.setAttribute( !getSetAttribute && jQuery.propFix[ name ] || =
name, name );=0A=
=0A=
		// Use defaultChecked and defaultSelected for oldIE=0A=
		} else {=0A=
			elem[ jQuery.camelCase( "default-" + name ) ] =3D elem[ name ] =3D =
true;=0A=
		}=0A=
=0A=
		return name;=0A=
	}=0A=
};=0A=
=0A=
// fix oldIE value attroperty=0A=
if ( !getSetInput || !getSetAttribute ) {=0A=
	jQuery.attrHooks.value =3D {=0A=
		get: function( elem, name ) {=0A=
			var ret =3D elem.getAttributeNode( name );=0A=
			return jQuery.nodeName( elem, "input" ) ?=0A=
=0A=
				// Ignore the value *property* by using defaultValue=0A=
				elem.defaultValue :=0A=
=0A=
				ret && ret.specified ? ret.value : undefined;=0A=
		},=0A=
		set: function( elem, value, name ) {=0A=
			if ( jQuery.nodeName( elem, "input" ) ) {=0A=
				// Does not return so that setAttribute is also used=0A=
				elem.defaultValue =3D value;=0A=
			} else {=0A=
				// Use nodeHook if defined (#1954); otherwise setAttribute is fine=0A=
				return nodeHook && nodeHook.set( elem, value, name );=0A=
			}=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// IE6/7 do not support getting/setting some attributes with =
get/setAttribute=0A=
if ( !getSetAttribute ) {=0A=
=0A=
	// Use this for any attribute in IE6/7=0A=
	// This fixes almost every IE6/7 issue=0A=
	nodeHook =3D jQuery.valHooks.button =3D {=0A=
		get: function( elem, name ) {=0A=
			var ret =3D elem.getAttributeNode( name );=0A=
			return ret && ( name =3D=3D=3D "id" || name =3D=3D=3D "name" || name =
=3D=3D=3D "coords" ? ret.value !=3D=3D "" : ret.specified ) ?=0A=
				ret.value :=0A=
				undefined;=0A=
		},=0A=
		set: function( elem, value, name ) {=0A=
			// Set the existing or create a new attribute node=0A=
			var ret =3D elem.getAttributeNode( name );=0A=
			if ( !ret ) {=0A=
				elem.setAttributeNode(=0A=
					(ret =3D elem.ownerDocument.createAttribute( name ))=0A=
				);=0A=
			}=0A=
=0A=
			ret.value =3D value +=3D "";=0A=
=0A=
			// Break association with cloned elements by also using setAttribute =
(#9646)=0A=
			return name =3D=3D=3D "value" || value =3D=3D=3D elem.getAttribute( =
name ) ?=0A=
				value :=0A=
				undefined;=0A=
		}=0A=
	};=0A=
=0A=
	// Set contenteditable to false on removals(#10429)=0A=
	// Setting to empty string throws an error as an invalid value=0A=
	jQuery.attrHooks.contenteditable =3D {=0A=
		get: nodeHook.get,=0A=
		set: function( elem, value, name ) {=0A=
			nodeHook.set( elem, value =3D=3D=3D "" ? false : value, name );=0A=
		}=0A=
	};=0A=
=0A=
	// Set width and height to auto instead of 0 on empty string( Bug #8150 =
)=0A=
	// This is for removals=0A=
	jQuery.each([ "width", "height" ], function( i, name ) {=0A=
		jQuery.attrHooks[ name ] =3D jQuery.extend( jQuery.attrHooks[ name ], {=0A=
			set: function( elem, value ) {=0A=
				if ( value =3D=3D=3D "" ) {=0A=
					elem.setAttribute( name, "auto" );=0A=
					return value;=0A=
				}=0A=
			}=0A=
		});=0A=
	});=0A=
}=0A=
=0A=
=0A=
// Some attributes require a special call on IE=0A=
// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx=0A=
if ( !jQuery.support.hrefNormalized ) {=0A=
	jQuery.each([ "href", "src", "width", "height" ], function( i, name ) {=0A=
		jQuery.attrHooks[ name ] =3D jQuery.extend( jQuery.attrHooks[ name ], {=0A=
			get: function( elem ) {=0A=
				var ret =3D elem.getAttribute( name, 2 );=0A=
				return ret =3D=3D null ? undefined : ret;=0A=
			}=0A=
		});=0A=
	});=0A=
=0A=
	// href/src property should get the full normalized URL (#10299/#12915)=0A=
	jQuery.each([ "href", "src" ], function( i, name ) {=0A=
		jQuery.propHooks[ name ] =3D {=0A=
			get: function( elem ) {=0A=
				return elem.getAttribute( name, 4 );=0A=
			}=0A=
		};=0A=
	});=0A=
}=0A=
=0A=
if ( !jQuery.support.style ) {=0A=
	jQuery.attrHooks.style =3D {=0A=
		get: function( elem ) {=0A=
			// Return undefined in the case of empty string=0A=
			// Note: IE uppercases css property names, but if we were to =
.toLowerCase()=0A=
			// .cssText, that would destroy case senstitivity in URL's, like in =
"background"=0A=
			return elem.style.cssText || undefined;=0A=
		},=0A=
		set: function( elem, value ) {=0A=
			return ( elem.style.cssText =3D value + "" );=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// Safari mis-reports the default selected property of an option=0A=
// Accessing the parent's selectedIndex property fixes it=0A=
if ( !jQuery.support.optSelected ) {=0A=
	jQuery.propHooks.selected =3D jQuery.extend( jQuery.propHooks.selected, =
{=0A=
		get: function( elem ) {=0A=
			var parent =3D elem.parentNode;=0A=
=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=
			return null;=0A=
		}=0A=
	});=0A=
}=0A=
=0A=
// IE6/7 call enctype encoding=0A=
if ( !jQuery.support.enctype ) {=0A=
	jQuery.propFix.enctype =3D "encoding";=0A=
}=0A=
=0A=
// Radios and checkboxes getter/setter=0A=
if ( !jQuery.support.checkOn ) {=0A=
	jQuery.each([ "radio", "checkbox" ], function() {=0A=
		jQuery.valHooks[ this ] =3D {=0A=
			get: function( elem ) {=0A=
				// Handle the case where in Webkit "" is returned instead of "on" if =
a value isn't specified=0A=
				return elem.getAttribute("value") =3D=3D=3D null ? "on" : elem.value;=0A=
			}=0A=
		};=0A=
	});=0A=
}=0A=
jQuery.each([ "radio", "checkbox" ], function() {=0A=
	jQuery.valHooks[ this ] =3D jQuery.extend( jQuery.valHooks[ this ], {=0A=
		set: function( elem, value ) {=0A=
			if ( jQuery.isArray( value ) ) {=0A=
				return ( elem.checked =3D jQuery.inArray( jQuery(elem).val(), value =
) >=3D 0 );=0A=
			}=0A=
		}=0A=
	});=0A=
});=0A=
var rformElems =3D /^(?:input|select|textarea)$/i,=0A=
	rkeyEvent =3D /^key/,=0A=
	rmouseEvent =3D /^(?:mouse|contextmenu)|click/,=0A=
	rfocusMorph =3D /^(?:focusinfocus|focusoutblur)$/,=0A=
	rtypenamespace =3D /^([^.]*)(?:\.(.+)|)$/;=0A=
=0A=
function returnTrue() {=0A=
	return true;=0A=
}=0A=
=0A=
function returnFalse() {=0A=
	return false;=0A=
}=0A=
=0A=
/*=0A=
 * Helper functions for managing events -- not part of the public =
interface.=0A=
 * Props to Dean Edwards' addEvent library for many of the ideas.=0A=
 */=0A=
jQuery.event =3D {=0A=
=0A=
	global: {},=0A=
=0A=
	add: function( elem, types, handler, data, selector ) {=0A=
=0A=
		var handleObjIn, eventHandle, tmp,=0A=
			events, t, handleObj,=0A=
			special, handlers, type, namespaces, origType,=0A=
			// Don't attach events to noData or text/comment nodes (but allow =
plain objects)=0A=
			elemData =3D elem.nodeType !=3D=3D 3 && elem.nodeType !=3D=3D 8 && =
jQuery._data( elem );=0A=
=0A=
		if ( !elemData ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Caller can pass in an object of custom data in lieu of the handler=0A=
		if ( handler.handler ) {=0A=
			handleObjIn =3D handler;=0A=
			handler =3D handleObjIn.handler;=0A=
			selector =3D handleObjIn.selector;=0A=
		}=0A=
=0A=
		// Make sure that the handler has a unique ID, used to find/remove it =
later=0A=
		if ( !handler.guid ) {=0A=
			handler.guid =3D jQuery.guid++;=0A=
		}=0A=
=0A=
		// Init the element's event structure and main handler, if this is the =
first=0A=
		if ( !(events =3D elemData.events) ) {=0A=
			events =3D elemData.events =3D {};=0A=
		}=0A=
		if ( !(eventHandle =3D elemData.handle) ) {=0A=
			eventHandle =3D elemData.handle =3D function( e ) {=0A=
				// Discard the second event of a jQuery.event.trigger() and=0A=
				// when an event is called after a page has unloaded=0A=
				return typeof jQuery !=3D=3D "undefined" && (!e || =
jQuery.event.triggered !=3D=3D e.type) ?=0A=
					jQuery.event.dispatch.apply( eventHandle.elem, arguments ) :=0A=
					undefined;=0A=
			};=0A=
			// Add elem as a property of the handle fn to prevent a memory leak =
with IE non-native events=0A=
			eventHandle.elem =3D elem;=0A=
		}=0A=
=0A=
		// Handle multiple events separated by a space=0A=
		// jQuery(...).bind("mouseover mouseout", fn);=0A=
		types =3D ( types || "" ).match( core_rnotwhite ) || [""];=0A=
		t =3D types.length;=0A=
		while ( t-- ) {=0A=
			tmp =3D rtypenamespace.exec( types[t] ) || [];=0A=
			type =3D origType =3D tmp[1];=0A=
			namespaces =3D ( tmp[2] || "" ).split( "." ).sort();=0A=
=0A=
			// If event changes its type, use the special event handlers for the =
changed type=0A=
			special =3D jQuery.event.special[ type ] || {};=0A=
=0A=
			// If selector defined, determine special event api type, otherwise =
given type=0A=
			type =3D ( selector ? special.delegateType : special.bindType ) || =
type;=0A=
=0A=
			// Update special based on newly reset type=0A=
			special =3D jQuery.event.special[ type ] || {};=0A=
=0A=
			// handleObj is passed to all event handlers=0A=
			handleObj =3D jQuery.extend({=0A=
				type: type,=0A=
				origType: origType,=0A=
				data: data,=0A=
				handler: handler,=0A=
				guid: handler.guid,=0A=
				selector: selector,=0A=
				needsContext: selector && jQuery.expr.match.needsContext.test( =
selector ),=0A=
				namespace: namespaces.join(".")=0A=
			}, handleObjIn );=0A=
=0A=
			// Init the event handler queue if we're the first=0A=
			if ( !(handlers =3D events[ type ]) ) {=0A=
				handlers =3D events[ type ] =3D [];=0A=
				handlers.delegateCount =3D 0;=0A=
=0A=
				// Only use addEventListener/attachEvent if the special 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 to the element's handler list, delegates in front=0A=
			if ( selector ) {=0A=
				handlers.splice( handlers.delegateCount++, 0, handleObj );=0A=
			} else {=0A=
				handlers.push( handleObj );=0A=
			}=0A=
=0A=
			// Keep track of which events have ever been used, for event =
optimization=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=
	// Detach an event or set of events from an element=0A=
	remove: function( elem, types, handler, selector, mappedTypes ) {=0A=
=0A=
		var j, origCount, tmp,=0A=
			events, t, handleObj,=0A=
			special, handlers, type, namespaces, origType,=0A=
			elemData =3D jQuery.hasData( elem ) && jQuery._data( elem );=0A=
=0A=
		if ( !elemData || !(events =3D elemData.events) ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Once for each type.namespace in types; type may be omitted=0A=
		types =3D ( types || "" ).match( core_rnotwhite ) || [""];=0A=
		t =3D types.length;=0A=
		while ( t-- ) {=0A=
			tmp =3D rtypenamespace.exec( types[t] ) || [];=0A=
			type =3D origType =3D tmp[1];=0A=
			namespaces =3D ( tmp[2] || "" ).split( "." ).sort();=0A=
=0A=
			// Unbind all events (on this namespace, if provided) for the element=0A=
			if ( !type ) {=0A=
				for ( type in events ) {=0A=
					jQuery.event.remove( elem, type + types[ t ], handler, selector, =
true );=0A=
				}=0A=
				continue;=0A=
			}=0A=
=0A=
			special =3D jQuery.event.special[ type ] || {};=0A=
			type =3D ( selector ? special.delegateType : special.bindType ) || =
type;=0A=
			handlers =3D events[ type ] || [];=0A=
			tmp =3D tmp[2] && new RegExp( "(^|\\.)" + =
namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" );=0A=
=0A=
			// Remove matching events=0A=
			origCount =3D j =3D handlers.length;=0A=
			while ( j-- ) {=0A=
				handleObj =3D handlers[ j ];=0A=
=0A=
				if ( ( mappedTypes || origType =3D=3D=3D handleObj.origType ) &&=0A=
					( !handler || handler.guid =3D=3D=3D handleObj.guid ) &&=0A=
					( !tmp || tmp.test( handleObj.namespace ) ) &&=0A=
					( !selector || selector =3D=3D=3D handleObj.selector || selector =
=3D=3D=3D "**" && handleObj.selector ) ) {=0A=
					handlers.splice( j, 1 );=0A=
=0A=
					if ( handleObj.selector ) {=0A=
						handlers.delegateCount--;=0A=
					}=0A=
					if ( special.remove ) {=0A=
						special.remove.call( elem, handleObj );=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// Remove generic event handler if we removed something and no more =
handlers exist=0A=
			// (avoids potential for endless recursion during removal of special =
event handlers)=0A=
			if ( origCount && !handlers.length ) {=0A=
				if ( !special.teardown || special.teardown.call( elem, namespaces, =
elemData.handle ) =3D=3D=3D false ) {=0A=
					jQuery.removeEvent( elem, type, elemData.handle );=0A=
				}=0A=
=0A=
				delete events[ type ];=0A=
			}=0A=
		}=0A=
=0A=
		// Remove the expando if it's no longer used=0A=
		if ( jQuery.isEmptyObject( events ) ) {=0A=
			delete elemData.handle;=0A=
=0A=
			// removeData also checks for emptiness and clears the expando if =
empty=0A=
			// so use it instead of delete=0A=
			jQuery._removeData( elem, "events" );=0A=
		}=0A=
	},=0A=
=0A=
	trigger: function( event, data, elem, onlyHandlers ) {=0A=
=0A=
		var i, cur, tmp, bubbleType, ontype, handle, special,=0A=
			eventPath =3D [ elem || document ],=0A=
			type =3D event.type || event,=0A=
			namespaces =3D event.namespace ? event.namespace.split(".") : [];=0A=
=0A=
		cur =3D tmp =3D elem =3D elem || document;=0A=
=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=
		// focus/blur morphs to focusin/out; ensure we're not firing them =
right now=0A=
		if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {=0A=
			return;=0A=
		}=0A=
=0A=
		if ( type.indexOf(".") >=3D 0 ) {=0A=
			// Namespaced trigger; create a regexp to match event type in handle()=0A=
			namespaces =3D type.split(".");=0A=
			type =3D namespaces.shift();=0A=
			namespaces.sort();=0A=
		}=0A=
		ontype =3D type.indexOf(":") < 0 && "on" + type;=0A=
=0A=
		// Caller can pass in a jQuery.Event object, Object, or just an event =
type string=0A=
		event =3D event[ jQuery.expando ] ?=0A=
			event :=0A=
			new jQuery.Event( type, typeof event =3D=3D=3D "object" && event );=0A=
=0A=
		event.isTrigger =3D true;=0A=
		event.namespace =3D namespaces.join(".");=0A=
		event.namespace_re =3D event.namespace ?=0A=
			new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" =
) :=0A=
			null;=0A=
=0A=
		// Clean up the event in case it is being reused=0A=
		event.result =3D undefined;=0A=
		if ( !event.target ) {=0A=
			event.target =3D elem;=0A=
		}=0A=
=0A=
		// Clone any incoming data and prepend the event, creating the handler =
arg list=0A=
		data =3D data =3D=3D null ?=0A=
			[ event ] :=0A=
			jQuery.makeArray( data, [ event ] );=0A=
=0A=
		// Allow special events to draw outside the lines=0A=
		special =3D jQuery.event.special[ type ] || {};=0A=
		if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, =
data ) =3D=3D=3D false ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Determine event propagation path in advance, per W3C events spec =
(#9951)=0A=
		// Bubble up to document, then to window; watch for a global =
ownerDocument var (#9724)=0A=
		if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {=0A=
=0A=
			bubbleType =3D special.delegateType || type;=0A=
			if ( !rfocusMorph.test( bubbleType + type ) ) {=0A=
				cur =3D cur.parentNode;=0A=
			}=0A=
			for ( ; cur; cur =3D cur.parentNode ) {=0A=
				eventPath.push( cur );=0A=
				tmp =3D cur;=0A=
			}=0A=
=0A=
			// Only add window if we got to document (e.g., not plain obj or =
detached DOM)=0A=
			if ( tmp =3D=3D=3D (elem.ownerDocument || document) ) {=0A=
				eventPath.push( tmp.defaultView || tmp.parentWindow || window );=0A=
			}=0A=
		}=0A=
=0A=
		// Fire handlers on the event path=0A=
		i =3D 0;=0A=
		while ( (cur =3D eventPath[i++]) && !event.isPropagationStopped() ) {=0A=
=0A=
			event.type =3D i > 1 ?=0A=
				bubbleType :=0A=
				special.bindType || type;=0A=
=0A=
			// jQuery handler=0A=
			handle =3D ( jQuery._data( cur, "events" ) || {} )[ event.type ] && =
jQuery._data( cur, "handle" );=0A=
			if ( handle ) {=0A=
				handle.apply( cur, data );=0A=
			}=0A=
=0A=
			// Native handler=0A=
			handle =3D ontype && cur[ ontype ];=0A=
			if ( handle && jQuery.acceptData( cur ) && handle.apply && =
handle.apply( cur, data ) =3D=3D=3D false ) {=0A=
				event.preventDefault();=0A=
			}=0A=
		}=0A=
		event.type =3D type;=0A=
=0A=
		// If nobody prevented the default action, do it now=0A=
		if ( !onlyHandlers && !event.isDefaultPrevented() ) {=0A=
=0A=
			if ( (!special._default || special._default.apply( =
elem.ownerDocument, data ) =3D=3D=3D false) &&=0A=
				!(type =3D=3D=3D "click" && jQuery.nodeName( elem, "a" )) && =
jQuery.acceptData( elem ) ) {=0A=
=0A=
				// Call a native DOM method on the target with the same name name as =
the event.=0A=
				// Can't use an .isFunction() check here because IE6/7 fails that =
test.=0A=
				// Don't do default actions on window, that's where global variables =
be (#6170)=0A=
				if ( ontype && elem[ type ] && !jQuery.isWindow( elem ) ) {=0A=
=0A=
					// Don't re-trigger an onFOO event when we call its FOO() method=0A=
					tmp =3D elem[ ontype ];=0A=
=0A=
					if ( tmp ) {=0A=
						elem[ ontype ] =3D null;=0A=
					}=0A=
=0A=
					// Prevent re-triggering of the same event, since we already =
bubbled it above=0A=
					jQuery.event.triggered =3D type;=0A=
					try {=0A=
						elem[ type ]();=0A=
					} catch ( e ) {=0A=
						// IE<9 dies on focus/blur to hidden element (#1486,#12518)=0A=
						// only reproducible on winXP IE8 native, not IE9 in IE8 mode=0A=
					}=0A=
					jQuery.event.triggered =3D undefined;=0A=
=0A=
					if ( tmp ) {=0A=
						elem[ ontype ] =3D tmp;=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return event.result;=0A=
	},=0A=
=0A=
	dispatch: function( event ) {=0A=
=0A=
		// Make a writable jQuery.Event from the native event object=0A=
		event =3D jQuery.event.fix( event );=0A=
=0A=
		var i, j, ret, matched, handleObj,=0A=
			handlerQueue =3D [],=0A=
			args =3D core_slice.call( arguments ),=0A=
			handlers =3D ( jQuery._data( this, "events" ) || {} )[ event.type ] =
|| [],=0A=
			special =3D jQuery.event.special[ event.type ] || {};=0A=
=0A=
		// Use the fix-ed jQuery.Event rather than the (read-only) native event=0A=
		args[0] =3D event;=0A=
		event.delegateTarget =3D this;=0A=
=0A=
		// Call the preDispatch hook for the mapped type, and let it bail if =
desired=0A=
		if ( special.preDispatch && special.preDispatch.call( this, event ) =
=3D=3D=3D false ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Determine handlers=0A=
		handlerQueue =3D jQuery.event.handlers.call( this, event, handlers );=0A=
=0A=
		// Run delegates first; they may want to stop propagation beneath us=0A=
		i =3D 0;=0A=
		while ( (matched =3D handlerQueue[ i++ ]) && =
!event.isPropagationStopped() ) {=0A=
			event.currentTarget =3D matched.elem;=0A=
=0A=
			j =3D 0;=0A=
			while ( (handleObj =3D matched.handlers[ j++ ]) && =
!event.isImmediatePropagationStopped() ) {=0A=
=0A=
				// Triggered event must either 1) have no namespace, or=0A=
				// 2) have namespace(s) a subset or equal to those in the bound =
event (both can have no namespace).=0A=
				if ( !event.namespace_re || event.namespace_re.test( =
handleObj.namespace ) ) {=0A=
=0A=
					event.handleObj =3D handleObj;=0A=
					event.data =3D handleObj.data;=0A=
=0A=
					ret =3D ( (jQuery.event.special[ handleObj.origType ] || {}).handle =
|| handleObj.handler )=0A=
							.apply( matched.elem, args );=0A=
=0A=
					if ( ret !=3D=3D undefined ) {=0A=
						if ( (event.result =3D ret) =3D=3D=3D false ) {=0A=
							event.preventDefault();=0A=
							event.stopPropagation();=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Call the postDispatch hook for the mapped type=0A=
		if ( special.postDispatch ) {=0A=
			special.postDispatch.call( this, event );=0A=
		}=0A=
=0A=
		return event.result;=0A=
	},=0A=
=0A=
	handlers: function( event, handlers ) {=0A=
		var i, matches, sel, handleObj,=0A=
			handlerQueue =3D [],=0A=
			delegateCount =3D handlers.delegateCount,=0A=
			cur =3D event.target;=0A=
=0A=
		// Find delegate handlers=0A=
		// Black-hole SVG <use> instance trees (#13180)=0A=
		// Avoid non-left-click bubbling in Firefox (#3861)=0A=
		if ( delegateCount && cur.nodeType && (!event.button || event.type =
!=3D=3D "click") ) {=0A=
=0A=
			for ( ; cur !=3D this; cur =3D cur.parentNode || this ) {=0A=
=0A=
				// Don't process clicks on disabled elements (#6911, #8165, #11382, =
#11764)=0A=
				if ( cur.disabled !=3D=3D true || event.type !=3D=3D "click" ) {=0A=
					matches =3D [];=0A=
					for ( i =3D 0; i < delegateCount; i++ ) {=0A=
						handleObj =3D handlers[ i ];=0A=
=0A=
						// Don't conflict with Object.prototype properties (#13203)=0A=
						sel =3D handleObj.selector + " ";=0A=
=0A=
						if ( matches[ sel ] =3D=3D=3D undefined ) {=0A=
							matches[ sel ] =3D handleObj.needsContext ?=0A=
								jQuery( sel, this ).index( cur ) >=3D 0 :=0A=
								jQuery.find( sel, this, null, [ cur ] ).length;=0A=
						}=0A=
						if ( matches[ sel ] ) {=0A=
							matches.push( handleObj );=0A=
						}=0A=
					}=0A=
					if ( matches.length ) {=0A=
						handlerQueue.push({ elem: cur, handlers: matches });=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Add the remaining (directly-bound) handlers=0A=
		if ( delegateCount < handlers.length ) {=0A=
			handlerQueue.push({ elem: this, handlers: handlers.slice( =
delegateCount ) });=0A=
		}=0A=
=0A=
		return handlerQueue;=0A=
	},=0A=
=0A=
	fix: function( event ) {=0A=
		if ( event[ jQuery.expando ] ) {=0A=
			return event;=0A=
		}=0A=
=0A=
		// Create a writable copy of the event object and normalize some =
properties=0A=
		var i, prop,=0A=
			originalEvent =3D event,=0A=
			fixHook =3D jQuery.event.fixHooks[ event.type ] || {},=0A=
			copy =3D fixHook.props ? this.props.concat( fixHook.props ) : =
this.props;=0A=
=0A=
		event =3D new jQuery.Event( originalEvent );=0A=
=0A=
		i =3D copy.length;=0A=
		while ( i-- ) {=0A=
			prop =3D copy[ i ];=0A=
			event[ prop ] =3D originalEvent[ prop ];=0A=
		}=0A=
=0A=
		// Support: IE<9=0A=
		// Fix target property (#1925)=0A=
		if ( !event.target ) {=0A=
			event.target =3D originalEvent.srcElement || document;=0A=
		}=0A=
=0A=
		// Support: Chrome 23+, Safari?=0A=
		// Target should not be a text node (#504, #13143)=0A=
		if ( event.target.nodeType =3D=3D=3D 3 ) {=0A=
			event.target =3D event.target.parentNode;=0A=
		}=0A=
=0A=
		// Support: IE<9=0A=
		// For mouse/key events, metaKey=3D=3Dfalse if it's undefined (#3368, =
#11328)=0A=
		event.metaKey =3D !!event.metaKey;=0A=
=0A=
		return fixHook.filter ? fixHook.filter( event, originalEvent ) : event;=0A=
	},=0A=
=0A=
	// Includes some event props shared by KeyEvent and MouseEvent=0A=
	props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase =
metaKey relatedTarget shiftKey target timeStamp view which".split(" "),=0A=
=0A=
	fixHooks: {},=0A=
=0A=
	keyHooks: {=0A=
		props: "char charCode key keyCode".split(" "),=0A=
		filter: function( event, original ) {=0A=
=0A=
			// Add which for key events=0A=
			if ( event.which =3D=3D null ) {=0A=
				event.which =3D original.charCode !=3D null ? original.charCode : =
original.keyCode;=0A=
			}=0A=
=0A=
			return event;=0A=
		}=0A=
	},=0A=
=0A=
	mouseHooks: {=0A=
		props: "button buttons clientX clientY fromElement offsetX offsetY =
pageX pageY screenX screenY toElement".split(" "),=0A=
		filter: function( event, original ) {=0A=
			var eventDoc, doc, body,=0A=
				button =3D original.button,=0A=
				fromElement =3D original.fromElement;=0A=
=0A=
			// Calculate pageX/Y if missing and clientX/Y available=0A=
			if ( event.pageX =3D=3D null && original.clientX !=3D null ) {=0A=
				eventDoc =3D event.target.ownerDocument || document;=0A=
				doc =3D eventDoc.documentElement;=0A=
				body =3D eventDoc.body;=0A=
=0A=
				event.pageX =3D original.clientX + ( doc && doc.scrollLeft || body =
&& body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && =
body.clientLeft || 0 );=0A=
				event.pageY =3D original.clientY + ( doc && doc.scrollTop  || body =
&& body.scrollTop  || 0 ) - ( doc && doc.clientTop  || body && =
body.clientTop  || 0 );=0A=
			}=0A=
=0A=
			// Add relatedTarget, if necessary=0A=
			if ( !event.relatedTarget && fromElement ) {=0A=
				event.relatedTarget =3D fromElement =3D=3D=3D event.target ? =
original.toElement : fromElement;=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 && button !=3D=3D undefined ) {=0A=
				event.which =3D ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? =
2 : 0 ) ) );=0A=
			}=0A=
=0A=
			return event;=0A=
		}=0A=
	},=0A=
=0A=
	special: {=0A=
		load: {=0A=
			// Prevent triggered image.load events from bubbling to window.load=0A=
			noBubble: true=0A=
		},=0A=
		click: {=0A=
			// For checkbox, fire native event so checked state will be right=0A=
			trigger: function() {=0A=
				if ( jQuery.nodeName( this, "input" ) && this.type =3D=3D=3D =
"checkbox" && this.click ) {=0A=
					this.click();=0A=
					return false;=0A=
				}=0A=
			}=0A=
		},=0A=
		focus: {=0A=
			// Fire native event if possible so blur/focus sequence is correct=0A=
			trigger: function() {=0A=
				if ( this !=3D=3D document.activeElement && this.focus ) {=0A=
					try {=0A=
						this.focus();=0A=
						return false;=0A=
					} catch ( e ) {=0A=
						// Support: IE<9=0A=
						// If we error on focus to hidden element (#1486, #12518),=0A=
						// let .trigger() run the handlers=0A=
					}=0A=
				}=0A=
			},=0A=
			delegateType: "focusin"=0A=
		},=0A=
		blur: {=0A=
			trigger: function() {=0A=
				if ( this =3D=3D=3D document.activeElement && this.blur ) {=0A=
					this.blur();=0A=
					return false;=0A=
				}=0A=
			},=0A=
			delegateType: "focusout"=0A=
		},=0A=
=0A=
		beforeunload: {=0A=
			postDispatch: function( event ) {=0A=
=0A=
				// Even when returnValue equals to undefined Firefox will still show =
alert=0A=
				if ( event.result !=3D=3D undefined ) {=0A=
					event.originalEvent.returnValue =3D event.result;=0A=
				}=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	simulate: function( type, elem, event, bubble ) {=0A=
		// Piggyback on a donor event to simulate a different one.=0A=
		// Fake originalEvent to avoid donor's stopPropagation, but if the=0A=
		// simulated event prevents default then we do the same on the donor.=0A=
		var e =3D jQuery.extend(=0A=
			new jQuery.Event(),=0A=
			event,=0A=
			{ type: type,=0A=
				isSimulated: true,=0A=
				originalEvent: {}=0A=
			}=0A=
		);=0A=
		if ( bubble ) {=0A=
			jQuery.event.trigger( e, null, elem );=0A=
		} else {=0A=
			jQuery.event.dispatch.call( elem, e );=0A=
		}=0A=
		if ( e.isDefaultPrevented() ) {=0A=
			event.preventDefault();=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
jQuery.removeEvent =3D document.removeEventListener ?=0A=
	function( elem, type, handle ) {=0A=
		if ( elem.removeEventListener ) {=0A=
			elem.removeEventListener( type, handle, false );=0A=
		}=0A=
	} :=0A=
	function( elem, type, handle ) {=0A=
		var name =3D "on" + type;=0A=
=0A=
		if ( elem.detachEvent ) {=0A=
=0A=
			// #8545, #7054, preventing memory leaks for custom events in IE6-8=0A=
			// detachEvent needed property on element, by name of that event, to =
properly expose it to GC=0A=
			if ( typeof elem[ name ] =3D=3D=3D "undefined" ) {=0A=
				elem[ name ] =3D null;=0A=
			}=0A=
=0A=
			elem.detachEvent( name, handle );=0A=
		}=0A=
	};=0A=
=0A=
jQuery.Event =3D function( src, props ) {=0A=
	// Allow instantiation without the 'new' keyword=0A=
	if ( !(this instanceof jQuery.Event) ) {=0A=
		return new jQuery.Event( src, props );=0A=
	}=0A=
=0A=
	// Event object=0A=
	if ( src && src.type ) {=0A=
		this.originalEvent =3D src;=0A=
		this.type =3D src.type;=0A=
=0A=
		// Events bubbling up the document may have been marked as prevented=0A=
		// by a handler lower down the tree; reflect the correct value.=0A=
		this.isDefaultPrevented =3D ( src.defaultPrevented || src.returnValue =
=3D=3D=3D false ||=0A=
			src.getPreventDefault && src.getPreventDefault() ) ? returnTrue : =
returnFalse;=0A=
=0A=
	// Event type=0A=
	} else {=0A=
		this.type =3D src;=0A=
	}=0A=
=0A=
	// Put explicitly provided properties onto the event object=0A=
	if ( props ) {=0A=
		jQuery.extend( this, props );=0A=
	}=0A=
=0A=
	// Create a timestamp if incoming event doesn't have one=0A=
	this.timeStamp =3D src && src.timeStamp || jQuery.now();=0A=
=0A=
	// Mark it as fixed=0A=
	this[ jQuery.expando ] =3D 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=
	isDefaultPrevented: returnFalse,=0A=
	isPropagationStopped: returnFalse,=0A=
	isImmediatePropagationStopped: returnFalse,=0A=
=0A=
	preventDefault: function() {=0A=
		var e =3D this.originalEvent;=0A=
=0A=
		this.isDefaultPrevented =3D returnTrue;=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=
		// Support: IE=0A=
		// Otherwise set the returnValue property of the original event to =
false=0A=
		} else {=0A=
			e.returnValue =3D false;=0A=
		}=0A=
	},=0A=
	stopPropagation: function() {=0A=
		var e =3D this.originalEvent;=0A=
=0A=
		this.isPropagationStopped =3D returnTrue;=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=
=0A=
		// Support: IE=0A=
		// Set the cancelBubble property of the original event to true=0A=
		e.cancelBubble =3D true;=0A=
	},=0A=
	stopImmediatePropagation: function() {=0A=
		this.isImmediatePropagationStopped =3D returnTrue;=0A=
		this.stopPropagation();=0A=
	}=0A=
};=0A=
=0A=
// Create mouseenter/leave events using mouseover/out and event-time =
checks=0A=
jQuery.each({=0A=
	mouseenter: "mouseover",=0A=
	mouseleave: "mouseout"=0A=
}, function( orig, fix ) {=0A=
	jQuery.event.special[ orig ] =3D {=0A=
		delegateType: fix,=0A=
		bindType: fix,=0A=
=0A=
		handle: function( event ) {=0A=
			var ret,=0A=
				target =3D this,=0A=
				related =3D event.relatedTarget,=0A=
				handleObj =3D event.handleObj;=0A=
=0A=
			// For mousenter/leave call the handler if related is outside the =
target.=0A=
			// NB: No relatedTarget if the mouse left/entered the browser window=0A=
			if ( !related || (related !=3D=3D target && !jQuery.contains( target, =
related )) ) {=0A=
				event.type =3D handleObj.origType;=0A=
				ret =3D handleObj.handler.apply( this, arguments );=0A=
				event.type =3D fix;=0A=
			}=0A=
			return ret;=0A=
		}=0A=
	};=0A=
});=0A=
=0A=
// IE submit delegation=0A=
if ( !jQuery.support.submitBubbles ) {=0A=
=0A=
	jQuery.event.special.submit =3D {=0A=
		setup: function() {=0A=
			// Only need this for delegated form submit events=0A=
			if ( jQuery.nodeName( this, "form" ) ) {=0A=
				return false;=0A=
			}=0A=
=0A=
			// Lazy-add a submit handler when a descendant form may potentially =
be submitted=0A=
			jQuery.event.add( this, "click._submit keypress._submit", function( e =
) {=0A=
				// Node name check avoids a VML-related crash in IE (#9807)=0A=
				var elem =3D e.target,=0A=
					form =3D jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, =
"button" ) ? elem.form : undefined;=0A=
				if ( form && !jQuery._data( form, "submitBubbles" ) ) {=0A=
					jQuery.event.add( form, "submit._submit", function( event ) {=0A=
						event._submit_bubble =3D true;=0A=
					});=0A=
					jQuery._data( form, "submitBubbles", true );=0A=
				}=0A=
			});=0A=
			// return undefined since we don't need an event listener=0A=
		},=0A=
=0A=
		postDispatch: function( event ) {=0A=
			// If form was submitted by the user, bubble the event up the tree=0A=
			if ( event._submit_bubble ) {=0A=
				delete event._submit_bubble;=0A=
				if ( this.parentNode && !event.isTrigger ) {=0A=
					jQuery.event.simulate( "submit", this.parentNode, event, true );=0A=
				}=0A=
			}=0A=
		},=0A=
=0A=
		teardown: function() {=0A=
			// Only need this for delegated form submit events=0A=
			if ( jQuery.nodeName( this, "form" ) ) {=0A=
				return false;=0A=
			}=0A=
=0A=
			// Remove delegated handlers; cleanData eventually reaps submit =
handlers attached above=0A=
			jQuery.event.remove( this, "._submit" );=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// IE change delegation and checkbox/radio fix=0A=
if ( !jQuery.support.changeBubbles ) {=0A=
=0A=
	jQuery.event.special.change =3D {=0A=
=0A=
		setup: function() {=0A=
=0A=
			if ( rformElems.test( this.nodeName ) ) {=0A=
				// IE doesn't fire change on a check/radio until blur; trigger it on =
click=0A=
				// after a propertychange. Eat the blur-change in =
special.change.handle.=0A=
				// This still fires onchange a second time for check/radio after =
blur.=0A=
				if ( this.type =3D=3D=3D "checkbox" || this.type =3D=3D=3D "radio" ) =
{=0A=
					jQuery.event.add( this, "propertychange._change", function( event ) =
{=0A=
						if ( event.originalEvent.propertyName =3D=3D=3D "checked" ) {=0A=
							this._just_changed =3D true;=0A=
						}=0A=
					});=0A=
					jQuery.event.add( this, "click._change", function( event ) {=0A=
						if ( this._just_changed && !event.isTrigger ) {=0A=
							this._just_changed =3D false;=0A=
						}=0A=
						// Allow triggered, simulated change events (#11500)=0A=
						jQuery.event.simulate( "change", this, event, true );=0A=
					});=0A=
				}=0A=
				return false;=0A=
			}=0A=
			// Delegated event; lazy-add a change handler on descendant inputs=0A=
			jQuery.event.add( this, "beforeactivate._change", function( e ) {=0A=
				var elem =3D e.target;=0A=
=0A=
				if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, =
"changeBubbles" ) ) {=0A=
					jQuery.event.add( elem, "change._change", function( event ) {=0A=
						if ( this.parentNode && !event.isSimulated && !event.isTrigger ) {=0A=
							jQuery.event.simulate( "change", this.parentNode, event, true );=0A=
						}=0A=
					});=0A=
					jQuery._data( elem, "changeBubbles", true );=0A=
				}=0A=
			});=0A=
		},=0A=
=0A=
		handle: function( event ) {=0A=
			var elem =3D event.target;=0A=
=0A=
			// Swallow native change events from checkbox/radio, we already =
triggered them above=0A=
			if ( this !=3D=3D elem || event.isSimulated || event.isTrigger || =
(elem.type !=3D=3D "radio" && elem.type !=3D=3D "checkbox") ) {=0A=
				return event.handleObj.handler.apply( this, arguments );=0A=
			}=0A=
		},=0A=
=0A=
		teardown: function() {=0A=
			jQuery.event.remove( this, "._change" );=0A=
=0A=
			return !rformElems.test( this.nodeName );=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// Create "bubbling" focus and blur events=0A=
if ( !jQuery.support.focusinBubbles ) {=0A=
	jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix =
) {=0A=
=0A=
		// Attach a single capturing handler while someone wants =
focusin/focusout=0A=
		var attaches =3D 0,=0A=
			handler =3D function( event ) {=0A=
				jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), =
true );=0A=
			};=0A=
=0A=
		jQuery.event.special[ fix ] =3D {=0A=
			setup: function() {=0A=
				if ( attaches++ =3D=3D=3D 0 ) {=0A=
					document.addEventListener( orig, handler, true );=0A=
				}=0A=
			},=0A=
			teardown: function() {=0A=
				if ( --attaches =3D=3D=3D 0 ) {=0A=
					document.removeEventListener( orig, handler, true );=0A=
				}=0A=
			}=0A=
		};=0A=
	});=0A=
}=0A=
=0A=
jQuery.fn.extend({=0A=
=0A=
	on: function( types, selector, data, fn, /*INTERNAL*/ one ) {=0A=
		var origFn, type;=0A=
=0A=
		// Types can be a map of types/handlers=0A=
		if ( typeof types =3D=3D=3D "object" ) {=0A=
			// ( types-Object, selector, data )=0A=
			if ( typeof selector !=3D=3D "string" ) {=0A=
				// ( types-Object, data )=0A=
				data =3D data || selector;=0A=
				selector =3D undefined;=0A=
			}=0A=
			for ( type in types ) {=0A=
				this.on( type, selector, data, types[ type ], one );=0A=
			}=0A=
			return this;=0A=
		}=0A=
=0A=
		if ( data =3D=3D null && fn =3D=3D null ) {=0A=
			// ( types, fn )=0A=
			fn =3D selector;=0A=
			data =3D selector =3D undefined;=0A=
		} else if ( fn =3D=3D null ) {=0A=
			if ( typeof selector =3D=3D=3D "string" ) {=0A=
				// ( types, selector, fn )=0A=
				fn =3D data;=0A=
				data =3D undefined;=0A=
			} else {=0A=
				// ( types, data, fn )=0A=
				fn =3D data;=0A=
				data =3D selector;=0A=
				selector =3D undefined;=0A=
			}=0A=
		}=0A=
		if ( fn =3D=3D=3D false ) {=0A=
			fn =3D returnFalse;=0A=
		} else if ( !fn ) {=0A=
			return this;=0A=
		}=0A=
=0A=
		if ( one =3D=3D=3D 1 ) {=0A=
			origFn =3D fn;=0A=
			fn =3D function( event ) {=0A=
				// Can use an empty set, since event contains the info=0A=
				jQuery().off( event );=0A=
				return origFn.apply( this, arguments );=0A=
			};=0A=
			// Use same guid so caller can remove using origFn=0A=
			fn.guid =3D origFn.guid || ( origFn.guid =3D jQuery.guid++ );=0A=
		}=0A=
		return this.each( function() {=0A=
			jQuery.event.add( this, types, fn, data, selector );=0A=
		});=0A=
	},=0A=
	one: function( types, selector, data, fn ) {=0A=
		return this.on( types, selector, data, fn, 1 );=0A=
	},=0A=
	off: function( types, selector, fn ) {=0A=
		var handleObj, type;=0A=
		if ( types && types.preventDefault && types.handleObj ) {=0A=
			// ( event )  dispatched jQuery.Event=0A=
			handleObj =3D types.handleObj;=0A=
			jQuery( types.delegateTarget ).off(=0A=
				handleObj.namespace ? handleObj.origType + "." + handleObj.namespace =
: handleObj.origType,=0A=
				handleObj.selector,=0A=
				handleObj.handler=0A=
			);=0A=
			return this;=0A=
		}=0A=
		if ( typeof types =3D=3D=3D "object" ) {=0A=
			// ( types-object [, selector] )=0A=
			for ( type in types ) {=0A=
				this.off( type, selector, types[ type ] );=0A=
			}=0A=
			return this;=0A=
		}=0A=
		if ( selector =3D=3D=3D false || typeof selector =3D=3D=3D "function" =
) {=0A=
			// ( types [, fn] )=0A=
			fn =3D selector;=0A=
			selector =3D undefined;=0A=
		}=0A=
		if ( fn =3D=3D=3D false ) {=0A=
			fn =3D returnFalse;=0A=
		}=0A=
		return this.each(function() {=0A=
			jQuery.event.remove( this, types, fn, selector );=0A=
		});=0A=
	},=0A=
=0A=
	bind: function( types, data, fn ) {=0A=
		return this.on( types, null, data, fn );=0A=
	},=0A=
	unbind: function( types, fn ) {=0A=
		return this.off( types, null, fn );=0A=
	},=0A=
=0A=
	delegate: function( selector, types, data, fn ) {=0A=
		return this.on( types, selector, data, fn );=0A=
	},=0A=
	undelegate: function( selector, types, fn ) {=0A=
		// ( namespace ) or ( selector, types [, fn] )=0A=
		return arguments.length =3D=3D=3D 1 ? this.off( selector, "**" ) : =
this.off( types, selector || "**", fn );=0A=
	},=0A=
=0A=
	trigger: function( type, data ) {=0A=
		return this.each(function() {=0A=
			jQuery.event.trigger( type, data, this );=0A=
		});=0A=
	},=0A=
	triggerHandler: function( type, data ) {=0A=
		var elem =3D this[0];=0A=
		if ( elem ) {=0A=
			return jQuery.event.trigger( type, data, elem, true );=0A=
		}=0A=
	},=0A=
=0A=
	hover: function( fnOver, fnOut ) {=0A=
		return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );=0A=
	}=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 =
contextmenu").split(" "), function( i, name ) {=0A=
=0A=
	// Handle event binding=0A=
	jQuery.fn[ name ] =3D function( data, fn ) {=0A=
		return arguments.length > 0 ?=0A=
			this.on( name, null, data, fn ) :=0A=
			this.trigger( name );=0A=
	};=0A=
=0A=
	if ( rkeyEvent.test( name ) ) {=0A=
		jQuery.event.fixHooks[ name ] =3D jQuery.event.keyHooks;=0A=
	}=0A=
=0A=
	if ( rmouseEvent.test( name ) ) {=0A=
		jQuery.event.fixHooks[ name ] =3D jQuery.event.mouseHooks;=0A=
	}=0A=
});=0A=
/*!=0A=
 * Sizzle CSS Selector Engine=0A=
 * Copyright 2012 jQuery Foundation and other contributors=0A=
 * Released under the MIT license=0A=
 * http://sizzlejs.com/=0A=
 */=0A=
(function( window, undefined ) {=0A=
=0A=
var i,=0A=
	cachedruns,=0A=
	Expr,=0A=
	getText,=0A=
	isXML,=0A=
	compile,=0A=
	hasDuplicate,=0A=
	outermostContext,=0A=
=0A=
	// Local document vars=0A=
	setDocument,=0A=
	document,=0A=
	docElem,=0A=
	documentIsXML,=0A=
	rbuggyQSA,=0A=
	rbuggyMatches,=0A=
	matches,=0A=
	contains,=0A=
	sortOrder,=0A=
=0A=
	// Instance-specific data=0A=
	expando =3D "sizzle" + -(new Date()),=0A=
	preferredDoc =3D window.document,=0A=
	support =3D {},=0A=
	dirruns =3D 0,=0A=
	done =3D 0,=0A=
	classCache =3D createCache(),=0A=
	tokenCache =3D createCache(),=0A=
	compilerCache =3D createCache(),=0A=
=0A=
	// General-purpose constants=0A=
	strundefined =3D typeof undefined,=0A=
	MAX_NEGATIVE =3D 1 << 31,=0A=
=0A=
	// Array methods=0A=
	arr =3D [],=0A=
	pop =3D arr.pop,=0A=
	push =3D arr.push,=0A=
	slice =3D arr.slice,=0A=
	// Use a stripped-down indexOf if we can't use a native one=0A=
	indexOf =3D arr.indexOf || function( elem ) {=0A=
		var i =3D 0,=0A=
			len =3D this.length;=0A=
		for ( ; i < len; i++ ) {=0A=
			if ( this[i] =3D=3D=3D elem ) {=0A=
				return i;=0A=
			}=0A=
		}=0A=
		return -1;=0A=
	},=0A=
=0A=
=0A=
	// Regular expressions=0A=
=0A=
	// Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace=0A=
	whitespace =3D "[\\x20\\t\\r\\n\\f]",=0A=
	// http://www.w3.org/TR/css3-syntax/#characters=0A=
	characterEncoding =3D "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",=0A=
=0A=
	// Loosely modeled on CSS identifier characters=0A=
	// An unquoted value should be a CSS identifier =
http://www.w3.org/TR/css3-selectors/#attribute-selectors=0A=
	// Proper syntax: =
http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier=0A=
	identifier =3D characterEncoding.replace( "w", "w#" ),=0A=
=0A=
	// Acceptable operators =
http://www.w3.org/TR/selectors/#attribute-selectors=0A=
	operators =3D "([*^$|!~]?=3D)",=0A=
	attributes =3D "\\[" + whitespace + "*(" + characterEncoding + ")" + =
whitespace +=0A=
		"*(?:" + operators + whitespace + =
"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + identifier + ")|)|)" + =
whitespace + "*\\]",=0A=
=0A=
	// Prefer arguments quoted,=0A=
	//   then not containing pseudos/brackets,=0A=
	//   then attribute selectors/non-parenthetical expressions,=0A=
	//   then anything else=0A=
	// These preferences are here to reduce the number of selectors=0A=
	//   needing tokenize in the PSEUDO preFilter=0A=
	pseudos =3D ":(" + characterEncoding + =
")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + =
attributes.replace( 3, 8 ) + ")*)|.*)\\)|)",=0A=
=0A=
	// Leading and non-escaped trailing whitespace, capturing some =
non-whitespace characters preceding the latter=0A=
	rtrim =3D new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" =
+ whitespace + "+$", "g" ),=0A=
=0A=
	rcomma =3D new RegExp( "^" + whitespace + "*," + whitespace + "*" ),=0A=
	rcombinators =3D new RegExp( "^" + whitespace + =
"*([\\x20\\t\\r\\n\\f>+~])" + whitespace + "*" ),=0A=
	rpseudo =3D new RegExp( pseudos ),=0A=
	ridentifier =3D new RegExp( "^" + identifier + "$" ),=0A=
=0A=
	matchExpr =3D {=0A=
		"ID": new RegExp( "^#(" + characterEncoding + ")" ),=0A=
		"CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ),=0A=
		"NAME": new RegExp( "^\\[name=3D['\"]?(" + characterEncoding + =
")['\"]?\\]" ),=0A=
		"TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" =
),=0A=
		"ATTR": new RegExp( "^" + attributes ),=0A=
		"PSEUDO": new RegExp( "^" + pseudos ),=0A=
		"CHILD": new RegExp( =
"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +=0A=
			"*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + =
whitespace +=0A=
			"*(\\d+)|))" + whitespace + "*\\)|)", "i" ),=0A=
		// For use in libraries implementing .is()=0A=
		// We use this for POS matching in `select`=0A=
		"needsContext": new RegExp( "^" + whitespace + =
"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +=0A=
			whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=3D[^-]|$)", =
"i" )=0A=
	},=0A=
=0A=
	rsibling =3D /[\x20\t\r\n\f]*[+~]/,=0A=
=0A=
	rnative =3D /\{\s*\[native code\]\s*\}/,=0A=
=0A=
	// Easily-parseable/retrievable ID or TAG or CLASS selectors=0A=
	rquickExpr =3D /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,=0A=
=0A=
	rinputs =3D /^(?:input|select|textarea|button)$/i,=0A=
	rheader =3D /^h\d$/i,=0A=
=0A=
	rescape =3D /'|\\/g,=0A=
	rattributeQuotes =3D /\=3D[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,=0A=
=0A=
	// CSS escapes =
http://www.w3.org/TR/CSS21/syndata.html#escaped-characters=0A=
	runescape =3D /\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,=0A=
	funescape =3D function( _, escaped ) {=0A=
		var high =3D "0x" + escaped - 0x10000;=0A=
		// NaN means non-codepoint=0A=
		return high !=3D=3D high ?=0A=
			escaped :=0A=
			// BMP codepoint=0A=
			high < 0 ?=0A=
				String.fromCharCode( high + 0x10000 ) :=0A=
				// Supplemental Plane codepoint (surrogate pair)=0A=
				String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );=0A=
	};=0A=
=0A=
// Use a stripped-down slice if we can't use a native one=0A=
try {=0A=
	slice.call( docElem.childNodes, 0 )[0].nodeType;=0A=
} catch ( e ) {=0A=
	slice =3D function( i ) {=0A=
		var elem,=0A=
			results =3D [];=0A=
		for ( ; (elem =3D this[i]); i++ ) {=0A=
			results.push( elem );=0A=
		}=0A=
		return results;=0A=
	};=0A=
}=0A=
=0A=
/**=0A=
 * For feature detection=0A=
 * @param {Function} fn The function to test for native support=0A=
 */=0A=
function isNative( fn ) {=0A=
	return rnative.test( fn + "" );=0A=
}=0A=
=0A=
/**=0A=
 * Create key-value caches of limited size=0A=
 * @returns {Function(string, Object)} Returns the Object data after =
storing it on itself with=0A=
 *	property name the (space-suffixed) string and (if the cache is larger =
than Expr.cacheLength)=0A=
 *	deleting the oldest entry=0A=
 */=0A=
function createCache() {=0A=
	var cache,=0A=
		keys =3D [];=0A=
=0A=
	return (cache =3D function( key, value ) {=0A=
		// Use (key + " ") to avoid collision with native prototype properties =
(see Issue #157)=0A=
		if ( keys.push( key +=3D " " ) > Expr.cacheLength ) {=0A=
			// Only keep the most recent entries=0A=
			delete cache[ keys.shift() ];=0A=
		}=0A=
		return (cache[ key ] =3D value);=0A=
	});=0A=
}=0A=
=0A=
/**=0A=
 * Mark a function for special use by Sizzle=0A=
 * @param {Function} fn The function to mark=0A=
 */=0A=
function markFunction( fn ) {=0A=
	fn[ expando ] =3D true;=0A=
	return fn;=0A=
}=0A=
=0A=
/**=0A=
 * Support testing using an element=0A=
 * @param {Function} fn Passed the created div and expects a boolean =
result=0A=
 */=0A=
function assert( fn ) {=0A=
	var div =3D document.createElement("div");=0A=
=0A=
	try {=0A=
		return fn( div );=0A=
	} catch (e) {=0A=
		return false;=0A=
	} finally {=0A=
		// release memory in IE=0A=
		div =3D null;=0A=
	}=0A=
}=0A=
=0A=
function Sizzle( selector, context, results, seed ) {=0A=
	var match, elem, m, nodeType,=0A=
		// QSA vars=0A=
		i, groups, old, nid, newContext, newSelector;=0A=
=0A=
	if ( ( context ? context.ownerDocument || context : preferredDoc ) =
!=3D=3D document ) {=0A=
		setDocument( context );=0A=
	}=0A=
=0A=
	context =3D context || document;=0A=
	results =3D results || [];=0A=
=0A=
	if ( !selector || typeof selector !=3D=3D "string" ) {=0A=
		return results;=0A=
	}=0A=
=0A=
	if ( (nodeType =3D context.nodeType) !=3D=3D 1 && nodeType !=3D=3D 9 ) {=0A=
		return [];=0A=
	}=0A=
=0A=
	if ( !documentIsXML && !seed ) {=0A=
=0A=
		// Shortcuts=0A=
		if ( (match =3D rquickExpr.exec( selector )) ) {=0A=
			// Speed-up: Sizzle("#ID")=0A=
			if ( (m =3D match[1]) ) {=0A=
				if ( nodeType =3D=3D=3D 9 ) {=0A=
					elem =3D context.getElementById( m );=0A=
					// Check parentNode to catch when Blackberry 4.6 returns=0A=
					// nodes that are no longer in the document #6963=0A=
					if ( elem && elem.parentNode ) {=0A=
						// Handle the case where IE, Opera, and Webkit return items=0A=
						// by name instead of ID=0A=
						if ( elem.id =3D=3D=3D m ) {=0A=
							results.push( elem );=0A=
							return results;=0A=
						}=0A=
					} else {=0A=
						return results;=0A=
					}=0A=
				} else {=0A=
					// Context is not a document=0A=
					if ( context.ownerDocument && (elem =3D =
context.ownerDocument.getElementById( m )) &&=0A=
						contains( context, elem ) && elem.id =3D=3D=3D m ) {=0A=
						results.push( elem );=0A=
						return results;=0A=
					}=0A=
				}=0A=
=0A=
			// Speed-up: Sizzle("TAG")=0A=
			} else if ( match[2] ) {=0A=
				push.apply( results, slice.call(context.getElementsByTagName( =
selector ), 0) );=0A=
				return results;=0A=
=0A=
			// Speed-up: Sizzle(".CLASS")=0A=
			} else if ( (m =3D match[3]) && support.getByClassName && =
context.getElementsByClassName ) {=0A=
				push.apply( results, slice.call(context.getElementsByClassName( m ), =
0) );=0A=
				return results;=0A=
			}=0A=
		}=0A=
=0A=
		// QSA path=0A=
		if ( support.qsa && !rbuggyQSA.test(selector) ) {=0A=
			old =3D true;=0A=
			nid =3D expando;=0A=
			newContext =3D context;=0A=
			newSelector =3D nodeType =3D=3D=3D 9 && selector;=0A=
=0A=
			// qSA works strangely on Element-rooted queries=0A=
			// We can work around this by specifying an extra ID on the root=0A=
			// and working up from there (Thanks to Andrew Dupont for the =
technique)=0A=
			// IE 8 doesn't work on object elements=0A=
			if ( nodeType =3D=3D=3D 1 && context.nodeName.toLowerCase() !=3D=3D =
"object" ) {=0A=
				groups =3D tokenize( selector );=0A=
=0A=
				if ( (old =3D context.getAttribute("id")) ) {=0A=
					nid =3D old.replace( rescape, "\\$&" );=0A=
				} else {=0A=
					context.setAttribute( "id", nid );=0A=
				}=0A=
				nid =3D "[id=3D'" + nid + "'] ";=0A=
=0A=
				i =3D groups.length;=0A=
				while ( i-- ) {=0A=
					groups[i] =3D nid + toSelector( groups[i] );=0A=
				}=0A=
				newContext =3D rsibling.test( selector ) && context.parentNode || =
context;=0A=
				newSelector =3D groups.join(",");=0A=
			}=0A=
=0A=
			if ( newSelector ) {=0A=
				try {=0A=
					push.apply( results, slice.call( newContext.querySelectorAll(=0A=
						newSelector=0A=
					), 0 ) );=0A=
					return results;=0A=
				} catch(qsaError) {=0A=
				} finally {=0A=
					if ( !old ) {=0A=
						context.removeAttribute("id");=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// All others=0A=
	return select( selector.replace( rtrim, "$1" ), context, results, seed =
);=0A=
}=0A=
=0A=
/**=0A=
 * Detect xml=0A=
 * @param {Element|Object} elem An element or a document=0A=
 */=0A=
isXML =3D Sizzle.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).documentElement;=0A=
	return documentElement ? documentElement.nodeName !=3D=3D "HTML" : =
false;=0A=
};=0A=
=0A=
/**=0A=
 * Sets document-related variables once based on the current document=0A=
 * @param {Element|Object} [doc] An element or document object to use to =
set the document=0A=
 * @returns {Object} Returns the current document=0A=
 */=0A=
setDocument =3D Sizzle.setDocument =3D function( node ) {=0A=
	var doc =3D node ? node.ownerDocument || node : preferredDoc;=0A=
=0A=
	// If no document and documentElement is available, return=0A=
	if ( doc =3D=3D=3D document || doc.nodeType !=3D=3D 9 || =
!doc.documentElement ) {=0A=
		return document;=0A=
	}=0A=
=0A=
	// Set our document=0A=
	document =3D doc;=0A=
	docElem =3D doc.documentElement;=0A=
=0A=
	// Support tests=0A=
	documentIsXML =3D isXML( doc );=0A=
=0A=
	// Check if getElementsByTagName("*") returns only elements=0A=
	support.tagNameNoComments =3D assert(function( div ) {=0A=
		div.appendChild( doc.createComment("") );=0A=
		return !div.getElementsByTagName("*").length;=0A=
	});=0A=
=0A=
	// Check if attributes should be retrieved by attribute nodes=0A=
	support.attributes =3D assert(function( div ) {=0A=
		div.innerHTML =3D "<select></select>";=0A=
		var type =3D typeof div.lastChild.getAttribute("multiple");=0A=
		// IE8 returns a string for some attributes even when not present=0A=
		return type !=3D=3D "boolean" && type !=3D=3D "string";=0A=
	});=0A=
=0A=
	// Check if getElementsByClassName can be trusted=0A=
	support.getByClassName =3D assert(function( div ) {=0A=
		// Opera can't find a second classname (in 9.6)=0A=
		div.innerHTML =3D "<div class=3D'hidden e'></div><div =
class=3D'hidden'></div>";=0A=
		if ( !div.getElementsByClassName || =
!div.getElementsByClassName("e").length ) {=0A=
			return false;=0A=
		}=0A=
=0A=
		// Safari 3.2 caches class attributes and doesn't catch changes=0A=
		div.lastChild.className =3D "e";=0A=
		return div.getElementsByClassName("e").length =3D=3D=3D 2;=0A=
	});=0A=
=0A=
	// Check if getElementById returns elements by name=0A=
	// Check if getElementsByName privileges form controls or returns =
elements by ID=0A=
	support.getByName =3D assert(function( div ) {=0A=
		// Inject content=0A=
		div.id =3D expando + 0;=0A=
		div.innerHTML =3D "<a name=3D'" + expando + "'></a><div name=3D'" + =
expando + "'></div>";=0A=
		docElem.insertBefore( div, docElem.firstChild );=0A=
=0A=
		// Test=0A=
		var pass =3D doc.getElementsByName &&=0A=
			// buggy browsers will return fewer than the correct 2=0A=
			doc.getElementsByName( expando ).length =3D=3D=3D 2 +=0A=
			// buggy browsers will return more than the correct 0=0A=
			doc.getElementsByName( expando + 0 ).length;=0A=
		support.getIdNotName =3D !doc.getElementById( expando );=0A=
=0A=
		// Cleanup=0A=
		docElem.removeChild( div );=0A=
=0A=
		return pass;=0A=
	});=0A=
=0A=
	// IE6/7 return modified attributes=0A=
	Expr.attrHandle =3D assert(function( div ) {=0A=
		div.innerHTML =3D "<a href=3D'#'></a>";=0A=
		return div.firstChild && typeof div.firstChild.getAttribute !=3D=3D =
strundefined &&=0A=
			div.firstChild.getAttribute("href") =3D=3D=3D "#";=0A=
	}) ?=0A=
		{} :=0A=
		{=0A=
			"href": function( elem ) {=0A=
				return elem.getAttribute( "href", 2 );=0A=
			},=0A=
			"type": function( elem ) {=0A=
				return elem.getAttribute("type");=0A=
			}=0A=
		};=0A=
=0A=
	// ID find and filter=0A=
	if ( support.getIdNotName ) {=0A=
		Expr.find["ID"] =3D function( id, context ) {=0A=
			if ( typeof context.getElementById !=3D=3D strundefined && =
!documentIsXML ) {=0A=
				var m =3D context.getElementById( id );=0A=
				// Check parentNode to catch when Blackberry 4.6 returns=0A=
				// nodes that are no longer in the document #6963=0A=
				return m && m.parentNode ? [m] : [];=0A=
			}=0A=
		};=0A=
		Expr.filter["ID"] =3D function( id ) {=0A=
			var attrId =3D id.replace( runescape, funescape );=0A=
			return function( elem ) {=0A=
				return elem.getAttribute("id") =3D=3D=3D attrId;=0A=
			};=0A=
		};=0A=
	} else {=0A=
		Expr.find["ID"] =3D function( id, context ) {=0A=
			if ( typeof context.getElementById !=3D=3D strundefined && =
!documentIsXML ) {=0A=
				var m =3D context.getElementById( id );=0A=
=0A=
				return m ?=0A=
					m.id =3D=3D=3D id || typeof m.getAttributeNode !=3D=3D strundefined =
&& m.getAttributeNode("id").value =3D=3D=3D id ?=0A=
						[m] :=0A=
						undefined :=0A=
					[];=0A=
			}=0A=
		};=0A=
		Expr.filter["ID"] =3D  function( id ) {=0A=
			var attrId =3D id.replace( runescape, funescape );=0A=
			return function( elem ) {=0A=
				var node =3D typeof elem.getAttributeNode !=3D=3D strundefined && =
elem.getAttributeNode("id");=0A=
				return node && node.value =3D=3D=3D attrId;=0A=
			};=0A=
		};=0A=
	}=0A=
=0A=
	// Tag=0A=
	Expr.find["TAG"] =3D support.tagNameNoComments ?=0A=
		function( tag, context ) {=0A=
			if ( typeof context.getElementsByTagName !=3D=3D strundefined ) {=0A=
				return context.getElementsByTagName( tag );=0A=
			}=0A=
		} :=0A=
		function( tag, context ) {=0A=
			var elem,=0A=
				tmp =3D [],=0A=
				i =3D 0,=0A=
				results =3D context.getElementsByTagName( tag );=0A=
=0A=
			// Filter out possible comments=0A=
			if ( tag =3D=3D=3D "*" ) {=0A=
				for ( ; (elem =3D results[i]); i++ ) {=0A=
					if ( elem.nodeType =3D=3D=3D 1 ) {=0A=
						tmp.push( elem );=0A=
					}=0A=
				}=0A=
=0A=
				return tmp;=0A=
			}=0A=
			return results;=0A=
		};=0A=
=0A=
	// Name=0A=
	Expr.find["NAME"] =3D support.getByName && function( tag, context ) {=0A=
		if ( typeof context.getElementsByName !=3D=3D strundefined ) {=0A=
			return context.getElementsByName( name );=0A=
		}=0A=
	};=0A=
=0A=
	// Class=0A=
	Expr.find["CLASS"] =3D support.getByClassName && function( className, =
context ) {=0A=
		if ( typeof context.getElementsByClassName !=3D=3D strundefined && =
!documentIsXML ) {=0A=
			return context.getElementsByClassName( className );=0A=
		}=0A=
	};=0A=
=0A=
	// QSA and matchesSelector support=0A=
=0A=
	// matchesSelector(:active) reports false when true (IE9/Opera 11.5)=0A=
	rbuggyMatches =3D [];=0A=
=0A=
	// qSa(:focus) reports false when true (Chrome 21),=0A=
	// no need to also add to buggyMatches since matches checks buggyQSA=0A=
	// A support test would require too much code (would include document =
ready)=0A=
	rbuggyQSA =3D [ ":focus" ];=0A=
=0A=
	if ( (support.qsa =3D isNative(doc.querySelectorAll)) ) {=0A=
		// Build QSA regex=0A=
		// Regex strategy adopted from Diego Perini=0A=
		assert(function( div ) {=0A=
			// Select is set to empty string on purpose=0A=
			// This is to test IE's treatment of not explictly=0A=
			// setting a boolean content attribute,=0A=
			// since its presence should be enough=0A=
			// http://bugs.jquery.com/ticket/12359=0A=
			div.innerHTML =3D "<select><option selected=3D''></option></select>";=0A=
=0A=
			// IE8 - Some boolean attributes are not treated correctly=0A=
			if ( !div.querySelectorAll("[selected]").length ) {=0A=
				rbuggyQSA.push( "\\[" + whitespace + =
"*(?:checked|disabled|ismap|multiple|readonly|selected|value)" );=0A=
			}=0A=
=0A=
			// Webkit/Opera - :checked should return selected option elements=0A=
			// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked=0A=
			// IE8 throws error here and will not see later tests=0A=
			if ( !div.querySelectorAll(":checked").length ) {=0A=
				rbuggyQSA.push(":checked");=0A=
			}=0A=
		});=0A=
=0A=
		assert(function( div ) {=0A=
=0A=
			// Opera 10-12/IE8 - ^=3D $=3D *=3D and empty values=0A=
			// Should not select anything=0A=
			div.innerHTML =3D "<input type=3D'hidden' i=3D''/>";=0A=
			if ( div.querySelectorAll("[i^=3D'']").length ) {=0A=
				rbuggyQSA.push( "[*^$]=3D" + whitespace + "*(?:\"\"|'')" );=0A=
			}=0A=
=0A=
			// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements =
are still enabled)=0A=
			// IE8 throws error here and will not see later tests=0A=
			if ( !div.querySelectorAll(":enabled").length ) {=0A=
				rbuggyQSA.push( ":enabled", ":disabled" );=0A=
			}=0A=
=0A=
			// Opera 10-11 does not throw on post-comma invalid pseudos=0A=
			div.querySelectorAll("*,:x");=0A=
			rbuggyQSA.push(",.*:");=0A=
		});=0A=
	}=0A=
=0A=
	if ( (support.matchesSelector =3D isNative( (matches =3D =
docElem.matchesSelector ||=0A=
		docElem.mozMatchesSelector ||=0A=
		docElem.webkitMatchesSelector ||=0A=
		docElem.oMatchesSelector ||=0A=
		docElem.msMatchesSelector) )) ) {=0A=
=0A=
		assert(function( div ) {=0A=
			// Check to see if it's possible to do matchesSelector=0A=
			// on a disconnected node (IE 9)=0A=
			support.disconnectedMatch =3D matches.call( div, "div" );=0A=
=0A=
			// This should fail with an exception=0A=
			// Gecko does not error, returns false instead=0A=
			matches.call( div, "[s!=3D'']:x" );=0A=
			rbuggyMatches.push( "!=3D", pseudos );=0A=
		});=0A=
	}=0A=
=0A=
	rbuggyQSA =3D new RegExp( rbuggyQSA.join("|") );=0A=
	rbuggyMatches =3D new RegExp( rbuggyMatches.join("|") );=0A=
=0A=
	// Element contains another=0A=
	// Purposefully does not implement inclusive descendent=0A=
	// As in, an element does not contain itself=0A=
	contains =3D isNative(docElem.contains) || =
docElem.compareDocumentPosition ?=0A=
		function( a, b ) {=0A=
			var adown =3D a.nodeType =3D=3D=3D 9 ? a.documentElement : a,=0A=
				bup =3D b && b.parentNode;=0A=
			return a =3D=3D=3D bup || !!( bup && bup.nodeType =3D=3D=3D 1 && (=0A=
				adown.contains ?=0A=
					adown.contains( bup ) :=0A=
					a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16=0A=
			));=0A=
		} :=0A=
		function( a, b ) {=0A=
			if ( b ) {=0A=
				while ( (b =3D b.parentNode) ) {=0A=
					if ( b =3D=3D=3D a ) {=0A=
						return true;=0A=
					}=0A=
				}=0A=
			}=0A=
			return false;=0A=
		};=0A=
=0A=
	// Document order sorting=0A=
	sortOrder =3D docElem.compareDocumentPosition ?=0A=
	function( a, b ) {=0A=
		var compare;=0A=
=0A=
		if ( a =3D=3D=3D b ) {=0A=
			hasDuplicate =3D true;=0A=
			return 0;=0A=
		}=0A=
=0A=
		if ( (compare =3D b.compareDocumentPosition && =
a.compareDocumentPosition && a.compareDocumentPosition( b )) ) {=0A=
			if ( compare & 1 || a.parentNode && a.parentNode.nodeType =3D=3D=3D =
11 ) {=0A=
				if ( a =3D=3D=3D doc || contains( preferredDoc, a ) ) {=0A=
					return -1;=0A=
				}=0A=
				if ( b =3D=3D=3D doc || contains( preferredDoc, b ) ) {=0A=
					return 1;=0A=
				}=0A=
				return 0;=0A=
			}=0A=
			return compare & 4 ? -1 : 1;=0A=
		}=0A=
=0A=
		return a.compareDocumentPosition ? -1 : 1;=0A=
	} :=0A=
	function( a, b ) {=0A=
		var cur,=0A=
			i =3D 0,=0A=
			aup =3D a.parentNode,=0A=
			bup =3D b.parentNode,=0A=
			ap =3D [ a ],=0A=
			bp =3D [ b ];=0A=
=0A=
		// The nodes are identical, we can exit early=0A=
		if ( a =3D=3D=3D b ) {=0A=
			hasDuplicate =3D true;=0A=
			return 0;=0A=
=0A=
		// Fallback to using sourceIndex (in IE) if it's available on both =
nodes=0A=
		} else if ( a.sourceIndex && b.sourceIndex ) {=0A=
			return ( ~b.sourceIndex || MAX_NEGATIVE ) - ( contains( preferredDoc, =
a ) && ~a.sourceIndex || MAX_NEGATIVE );=0A=
=0A=
		// Parentless nodes are either documents or disconnected=0A=
		} else if ( !aup || !bup ) {=0A=
			return a =3D=3D=3D doc ? -1 :=0A=
				b =3D=3D=3D doc ? 1 :=0A=
				aup ? -1 :=0A=
				bup ? 1 :=0A=
				0;=0A=
=0A=
		// If the nodes are siblings, we can do a quick check=0A=
		} else if ( aup =3D=3D=3D bup ) {=0A=
			return siblingCheck( a, b );=0A=
		}=0A=
=0A=
		// Otherwise we need full lists of their ancestors for comparison=0A=
		cur =3D a;=0A=
		while ( (cur =3D cur.parentNode) ) {=0A=
			ap.unshift( cur );=0A=
		}=0A=
		cur =3D b;=0A=
		while ( (cur =3D cur.parentNode) ) {=0A=
			bp.unshift( cur );=0A=
		}=0A=
=0A=
		// Walk down the tree looking for a discrepancy=0A=
		while ( ap[i] =3D=3D=3D bp[i] ) {=0A=
			i++;=0A=
		}=0A=
=0A=
		return i ?=0A=
			// Do a sibling check if the nodes have a common ancestor=0A=
			siblingCheck( ap[i], bp[i] ) :=0A=
=0A=
			// Otherwise nodes in our document sort first=0A=
			ap[i] =3D=3D=3D preferredDoc ? -1 :=0A=
			bp[i] =3D=3D=3D preferredDoc ? 1 :=0A=
			0;=0A=
	};=0A=
=0A=
	// Always assume the presence of duplicates if sort doesn't=0A=
	// pass them to our comparison function (as in Google Chrome).=0A=
	hasDuplicate =3D false;=0A=
	[0, 0].sort( sortOrder );=0A=
	support.detectDuplicates =3D hasDuplicate;=0A=
=0A=
	return document;=0A=
};=0A=
=0A=
Sizzle.matches =3D function( expr, elements ) {=0A=
	return Sizzle( expr, null, null, elements );=0A=
};=0A=
=0A=
Sizzle.matchesSelector =3D function( elem, expr ) {=0A=
	// Set document vars if needed=0A=
	if ( ( elem.ownerDocument || elem ) !=3D=3D document ) {=0A=
		setDocument( elem );=0A=
	}=0A=
=0A=
	// Make sure that attribute selectors are quoted=0A=
	expr =3D expr.replace( rattributeQuotes, "=3D'$1']" );=0A=
=0A=
	// rbuggyQSA always contains :focus, so no need for an existence check=0A=
	if ( support.matchesSelector && !documentIsXML && (!rbuggyMatches || =
!rbuggyMatches.test(expr)) && !rbuggyQSA.test(expr) ) {=0A=
		try {=0A=
			var ret =3D matches.call( elem, expr );=0A=
=0A=
			// IE 9's matchesSelector returns false on disconnected nodes=0A=
			if ( ret || support.disconnectedMatch ||=0A=
					// As well, disconnected nodes are said to be in a document=0A=
					// fragment in IE 9=0A=
					elem.document && elem.document.nodeType !=3D=3D 11 ) {=0A=
				return ret;=0A=
			}=0A=
		} catch(e) {}=0A=
	}=0A=
=0A=
	return Sizzle( expr, document, null, [elem] ).length > 0;=0A=
};=0A=
=0A=
Sizzle.contains =3D function( context, elem ) {=0A=
	// Set document vars if needed=0A=
	if ( ( context.ownerDocument || context ) !=3D=3D document ) {=0A=
		setDocument( context );=0A=
	}=0A=
	return contains( context, elem );=0A=
};=0A=
=0A=
Sizzle.attr =3D function( elem, name ) {=0A=
	var val;=0A=
=0A=
	// Set document vars if needed=0A=
	if ( ( elem.ownerDocument || elem ) !=3D=3D document ) {=0A=
		setDocument( elem );=0A=
	}=0A=
=0A=
	if ( !documentIsXML ) {=0A=
		name =3D name.toLowerCase();=0A=
	}=0A=
	if ( (val =3D Expr.attrHandle[ name ]) ) {=0A=
		return val( elem );=0A=
	}=0A=
	if ( documentIsXML || support.attributes ) {=0A=
		return elem.getAttribute( name );=0A=
	}=0A=
	return ( (val =3D elem.getAttributeNode( name )) || elem.getAttribute( =
name ) ) && elem[ name ] =3D=3D=3D true ?=0A=
		name :=0A=
		val && val.specified ? val.value : null;=0A=
};=0A=
=0A=
Sizzle.error =3D function( msg ) {=0A=
	throw new Error( "Syntax error, unrecognized expression: " + msg );=0A=
};=0A=
=0A=
// Document sorting and removing duplicates=0A=
Sizzle.uniqueSort =3D function( results ) {=0A=
	var elem,=0A=
		duplicates =3D [],=0A=
		i =3D 1,=0A=
		j =3D 0;=0A=
=0A=
	// Unless we *know* we can detect duplicates, assume their presence=0A=
	hasDuplicate =3D !support.detectDuplicates;=0A=
	results.sort( sortOrder );=0A=
=0A=
	if ( hasDuplicate ) {=0A=
		for ( ; (elem =3D results[i]); i++ ) {=0A=
			if ( elem =3D=3D=3D results[ i - 1 ] ) {=0A=
				j =3D duplicates.push( i );=0A=
			}=0A=
		}=0A=
		while ( j-- ) {=0A=
			results.splice( duplicates[ j ], 1 );=0A=
		}=0A=
	}=0A=
=0A=
	return results;=0A=
};=0A=
=0A=
function siblingCheck( a, b ) {=0A=
	var cur =3D a && b && a.nextSibling;=0A=
=0A=
	for ( ; cur; cur =3D cur.nextSibling ) {=0A=
		if ( cur =3D=3D=3D b ) {=0A=
			return -1;=0A=
		}=0A=
	}=0A=
=0A=
	return a ? 1 : -1;=0A=
}=0A=
=0A=
// Returns a function to use in pseudos for input types=0A=
function createInputPseudo( type ) {=0A=
	return function( elem ) {=0A=
		var name =3D elem.nodeName.toLowerCase();=0A=
		return name =3D=3D=3D "input" && elem.type =3D=3D=3D type;=0A=
	};=0A=
}=0A=
=0A=
// Returns a function to use in pseudos for buttons=0A=
function createButtonPseudo( type ) {=0A=
	return function( elem ) {=0A=
		var name =3D elem.nodeName.toLowerCase();=0A=
		return (name =3D=3D=3D "input" || name =3D=3D=3D "button") && =
elem.type =3D=3D=3D type;=0A=
	};=0A=
}=0A=
=0A=
// Returns a function to use in pseudos for positionals=0A=
function createPositionalPseudo( fn ) {=0A=
	return markFunction(function( argument ) {=0A=
		argument =3D +argument;=0A=
		return markFunction(function( seed, matches ) {=0A=
			var j,=0A=
				matchIndexes =3D fn( [], seed.length, argument ),=0A=
				i =3D matchIndexes.length;=0A=
=0A=
			// Match elements found at the specified indexes=0A=
			while ( i-- ) {=0A=
				if ( seed[ (j =3D matchIndexes[i]) ] ) {=0A=
					seed[j] =3D !(matches[j] =3D seed[j]);=0A=
				}=0A=
			}=0A=
		});=0A=
	});=0A=
}=0A=
=0A=
/**=0A=
 * Utility function for retrieving the text value of an array of DOM =
nodes=0A=
 * @param {Array|Element} elem=0A=
 */=0A=
getText =3D Sizzle.getText =3D function( elem ) {=0A=
	var node,=0A=
		ret =3D "",=0A=
		i =3D 0,=0A=
		nodeType =3D elem.nodeType;=0A=
=0A=
	if ( !nodeType ) {=0A=
		// If no nodeType, this is expected to be an array=0A=
		for ( ; (node =3D elem[i]); i++ ) {=0A=
			// Do not traverse comment nodes=0A=
			ret +=3D getText( node );=0A=
		}=0A=
	} else if ( nodeType =3D=3D=3D 1 || nodeType =3D=3D=3D 9 || nodeType =
=3D=3D=3D 11 ) {=0A=
		// Use textContent for elements=0A=
		// innerText usage removed for consistency of new lines (see #11153)=0A=
		if ( typeof elem.textContent =3D=3D=3D "string" ) {=0A=
			return elem.textContent;=0A=
		} else {=0A=
			// Traverse its children=0A=
			for ( elem =3D elem.firstChild; elem; elem =3D elem.nextSibling ) {=0A=
				ret +=3D getText( elem );=0A=
			}=0A=
		}=0A=
	} else if ( nodeType =3D=3D=3D 3 || nodeType =3D=3D=3D 4 ) {=0A=
		return elem.nodeValue;=0A=
	}=0A=
	// Do not include comment or processing instruction nodes=0A=
=0A=
	return ret;=0A=
};=0A=
=0A=
Expr =3D Sizzle.selectors =3D {=0A=
=0A=
	// Can be adjusted by the user=0A=
	cacheLength: 50,=0A=
=0A=
	createPseudo: markFunction,=0A=
=0A=
	match: matchExpr,=0A=
=0A=
	find: {},=0A=
=0A=
	relative: {=0A=
		">": { dir: "parentNode", first: true },=0A=
		" ": { dir: "parentNode" },=0A=
		"+": { dir: "previousSibling", first: true },=0A=
		"~": { dir: "previousSibling" }=0A=
	},=0A=
=0A=
	preFilter: {=0A=
		"ATTR": function( match ) {=0A=
			match[1] =3D match[1].replace( runescape, funescape );=0A=
=0A=
			// Move the given value to match[3] whether quoted or unquoted=0A=
			match[3] =3D ( match[4] || match[5] || "" ).replace( runescape, =
funescape );=0A=
=0A=
			if ( match[2] =3D=3D=3D "~=3D" ) {=0A=
				match[3] =3D " " + match[3] + " ";=0A=
			}=0A=
=0A=
			return match.slice( 0, 4 );=0A=
		},=0A=
=0A=
		"CHILD": function( match ) {=0A=
			/* matches from matchExpr["CHILD"]=0A=
				1 type (only|nth|...)=0A=
				2 what (child|of-type)=0A=
				3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)=0A=
				4 xn-component of xn+y argument ([+-]?\d*n|)=0A=
				5 sign of xn-component=0A=
				6 x of xn-component=0A=
				7 sign of y-component=0A=
				8 y of y-component=0A=
			*/=0A=
			match[1] =3D match[1].toLowerCase();=0A=
=0A=
			if ( match[1].slice( 0, 3 ) =3D=3D=3D "nth" ) {=0A=
				// nth-* requires argument=0A=
				if ( !match[3] ) {=0A=
					Sizzle.error( match[0] );=0A=
				}=0A=
=0A=
				// numeric x and y parameters for Expr.filter.CHILD=0A=
				// remember that false/true cast respectively to 0/1=0A=
				match[4] =3D +( match[4] ? match[5] + (match[6] || 1) : 2 * ( =
match[3] =3D=3D=3D "even" || match[3] =3D=3D=3D "odd" ) );=0A=
				match[5] =3D +( ( match[7] + match[8] ) || match[3] =3D=3D=3D "odd" =
);=0A=
=0A=
			// other types prohibit arguments=0A=
			} else if ( match[3] ) {=0A=
				Sizzle.error( match[0] );=0A=
			}=0A=
=0A=
			return match;=0A=
		},=0A=
=0A=
		"PSEUDO": function( match ) {=0A=
			var excess,=0A=
				unquoted =3D !match[5] && match[2];=0A=
=0A=
			if ( matchExpr["CHILD"].test( match[0] ) ) {=0A=
				return null;=0A=
			}=0A=
=0A=
			// Accept quoted arguments as-is=0A=
			if ( match[4] ) {=0A=
				match[2] =3D match[4];=0A=
=0A=
			// Strip excess characters from unquoted arguments=0A=
			} else if ( unquoted && rpseudo.test( unquoted ) &&=0A=
				// Get excess from tokenize (recursively)=0A=
				(excess =3D tokenize( unquoted, true )) &&=0A=
				// advance to the next closing parenthesis=0A=
				(excess =3D unquoted.indexOf( ")", unquoted.length - excess ) - =
unquoted.length) ) {=0A=
=0A=
				// excess is a negative index=0A=
				match[0] =3D match[0].slice( 0, excess );=0A=
				match[2] =3D unquoted.slice( 0, excess );=0A=
			}=0A=
=0A=
			// Return only captures needed by the pseudo filter method (type and =
argument)=0A=
			return match.slice( 0, 3 );=0A=
		}=0A=
	},=0A=
=0A=
	filter: {=0A=
=0A=
		"TAG": function( nodeName ) {=0A=
			if ( nodeName =3D=3D=3D "*" ) {=0A=
				return function() { return true; };=0A=
			}=0A=
=0A=
			nodeName =3D nodeName.replace( runescape, funescape ).toLowerCase();=0A=
			return function( elem ) {=0A=
				return elem.nodeName && elem.nodeName.toLowerCase() =3D=3D=3D =
nodeName;=0A=
			};=0A=
		},=0A=
=0A=
		"CLASS": function( className ) {=0A=
			var pattern =3D classCache[ className + " " ];=0A=
=0A=
			return pattern ||=0A=
				(pattern =3D new RegExp( "(^|" + whitespace + ")" + className + "(" =
+ whitespace + "|$)" )) &&=0A=
				classCache( className, function( elem ) {=0A=
					return pattern.test( elem.className || (typeof elem.getAttribute =
!=3D=3D strundefined && elem.getAttribute("class")) || "" );=0A=
				});=0A=
		},=0A=
=0A=
		"ATTR": function( name, operator, check ) {=0A=
			return function( elem ) {=0A=
				var result =3D Sizzle.attr( elem, name );=0A=
=0A=
				if ( result =3D=3D null ) {=0A=
					return operator =3D=3D=3D "!=3D";=0A=
				}=0A=
				if ( !operator ) {=0A=
					return true;=0A=
				}=0A=
=0A=
				result +=3D "";=0A=
=0A=
				return operator =3D=3D=3D "=3D" ? result =3D=3D=3D check :=0A=
					operator =3D=3D=3D "!=3D" ? result !=3D=3D check :=0A=
					operator =3D=3D=3D "^=3D" ? check && result.indexOf( check ) =
=3D=3D=3D 0 :=0A=
					operator =3D=3D=3D "*=3D" ? check && result.indexOf( check ) > -1 :=0A=
					operator =3D=3D=3D "$=3D" ? check && result.substr( result.length - =
check.length ) =3D=3D=3D check :=0A=
					operator =3D=3D=3D "~=3D" ? ( " " + result + " " ).indexOf( check ) =
> -1 :=0A=
					operator =3D=3D=3D "|=3D" ? result =3D=3D=3D check || =
result.substr( 0, check.length + 1 ) =3D=3D=3D check + "-" :=0A=
					false;=0A=
			};=0A=
		},=0A=
=0A=
		"CHILD": function( type, what, argument, first, last ) {=0A=
			var simple =3D type.slice( 0, 3 ) !=3D=3D "nth",=0A=
				forward =3D type.slice( -4 ) !=3D=3D "last",=0A=
				ofType =3D what =3D=3D=3D "of-type";=0A=
=0A=
			return first =3D=3D=3D 1 && last =3D=3D=3D 0 ?=0A=
=0A=
				// Shortcut for :nth-*(n)=0A=
				function( elem ) {=0A=
					return !!elem.parentNode;=0A=
				} :=0A=
=0A=
				function( elem, context, xml ) {=0A=
					var cache, outerCache, node, diff, nodeIndex, start,=0A=
						dir =3D simple !=3D=3D forward ? "nextSibling" : "previousSibling",=0A=
						parent =3D elem.parentNode,=0A=
						name =3D ofType && elem.nodeName.toLowerCase(),=0A=
						useCache =3D !xml && !ofType;=0A=
=0A=
					if ( parent ) {=0A=
=0A=
						// :(first|last|only)-(child|of-type)=0A=
						if ( simple ) {=0A=
							while ( dir ) {=0A=
								node =3D elem;=0A=
								while ( (node =3D node[ dir ]) ) {=0A=
									if ( ofType ? node.nodeName.toLowerCase() =3D=3D=3D name : =
node.nodeType =3D=3D=3D 1 ) {=0A=
										return false;=0A=
									}=0A=
								}=0A=
								// Reverse direction for :only-* (if we haven't yet done so)=0A=
								start =3D dir =3D type =3D=3D=3D "only" && !start && =
"nextSibling";=0A=
							}=0A=
							return true;=0A=
						}=0A=
=0A=
						start =3D [ forward ? parent.firstChild : parent.lastChild ];=0A=
=0A=
						// non-xml :nth-child(...) stores cache data on `parent`=0A=
						if ( forward && useCache ) {=0A=
							// Seek `elem` from a previously-cached index=0A=
							outerCache =3D parent[ expando ] || (parent[ expando ] =3D {});=0A=
							cache =3D outerCache[ type ] || [];=0A=
							nodeIndex =3D cache[0] =3D=3D=3D dirruns && cache[1];=0A=
							diff =3D cache[0] =3D=3D=3D dirruns && cache[2];=0A=
							node =3D nodeIndex && parent.childNodes[ nodeIndex ];=0A=
=0A=
							while ( (node =3D ++nodeIndex && node && node[ dir ] ||=0A=
=0A=
								// Fallback to seeking `elem` from the start=0A=
								(diff =3D nodeIndex =3D 0) || start.pop()) ) {=0A=
=0A=
								// When found, cache indexes on `parent` and break=0A=
								if ( node.nodeType =3D=3D=3D 1 && ++diff && node =3D=3D=3D elem =
) {=0A=
									outerCache[ type ] =3D [ dirruns, nodeIndex, diff ];=0A=
									break;=0A=
								}=0A=
							}=0A=
=0A=
						// Use previously-cached element index if available=0A=
						} else if ( useCache && (cache =3D (elem[ expando ] || (elem[ =
expando ] =3D {}))[ type ]) && cache[0] =3D=3D=3D dirruns ) {=0A=
							diff =3D cache[1];=0A=
=0A=
						// xml :nth-child(...) or :nth-last-child(...) or =
:nth(-last)?-of-type(...)=0A=
						} else {=0A=
							// Use the same loop as above to seek `elem` from the start=0A=
							while ( (node =3D ++nodeIndex && node && node[ dir ] ||=0A=
								(diff =3D nodeIndex =3D 0) || start.pop()) ) {=0A=
=0A=
								if ( ( ofType ? node.nodeName.toLowerCase() =3D=3D=3D name : =
node.nodeType =3D=3D=3D 1 ) && ++diff ) {=0A=
									// Cache the index of each encountered element=0A=
									if ( useCache ) {=0A=
										(node[ expando ] || (node[ expando ] =3D {}))[ type ] =3D [ =
dirruns, diff ];=0A=
									}=0A=
=0A=
									if ( node =3D=3D=3D elem ) {=0A=
										break;=0A=
									}=0A=
								}=0A=
							}=0A=
						}=0A=
=0A=
						// Incorporate the offset, then check against cycle size=0A=
						diff -=3D last;=0A=
						return diff =3D=3D=3D first || ( diff % first =3D=3D=3D 0 && diff =
/ first >=3D 0 );=0A=
					}=0A=
				};=0A=
		},=0A=
=0A=
		"PSEUDO": function( pseudo, argument ) {=0A=
			// pseudo-class names are case-insensitive=0A=
			// http://www.w3.org/TR/selectors/#pseudo-classes=0A=
			// Prioritize by case sensitivity in case custom pseudos are added =
with uppercase letters=0A=
			// Remember that setFilters inherits from pseudos=0A=
			var args,=0A=
				fn =3D Expr.pseudos[ pseudo ] || Expr.setFilters[ =
pseudo.toLowerCase() ] ||=0A=
					Sizzle.error( "unsupported pseudo: " + pseudo );=0A=
=0A=
			// The user may use createPseudo to indicate that=0A=
			// arguments are needed to create the filter function=0A=
			// just as Sizzle does=0A=
			if ( fn[ expando ] ) {=0A=
				return fn( argument );=0A=
			}=0A=
=0A=
			// But maintain support for old signatures=0A=
			if ( fn.length > 1 ) {=0A=
				args =3D [ pseudo, pseudo, "", argument ];=0A=
				return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?=0A=
					markFunction(function( seed, matches ) {=0A=
						var idx,=0A=
							matched =3D fn( seed, argument ),=0A=
							i =3D matched.length;=0A=
						while ( i-- ) {=0A=
							idx =3D indexOf.call( seed, matched[i] );=0A=
							seed[ idx ] =3D !( matches[ idx ] =3D matched[i] );=0A=
						}=0A=
					}) :=0A=
					function( elem ) {=0A=
						return fn( elem, 0, args );=0A=
					};=0A=
			}=0A=
=0A=
			return fn;=0A=
		}=0A=
	},=0A=
=0A=
	pseudos: {=0A=
		// Potentially complex pseudos=0A=
		"not": markFunction(function( selector ) {=0A=
			// Trim the selector passed to compile=0A=
			// to avoid treating leading and trailing=0A=
			// spaces as combinators=0A=
			var input =3D [],=0A=
				results =3D [],=0A=
				matcher =3D compile( selector.replace( rtrim, "$1" ) );=0A=
=0A=
			return matcher[ expando ] ?=0A=
				markFunction(function( seed, matches, context, xml ) {=0A=
					var elem,=0A=
						unmatched =3D matcher( seed, null, xml, [] ),=0A=
						i =3D seed.length;=0A=
=0A=
					// Match elements unmatched by `matcher`=0A=
					while ( i-- ) {=0A=
						if ( (elem =3D unmatched[i]) ) {=0A=
							seed[i] =3D !(matches[i] =3D elem);=0A=
						}=0A=
					}=0A=
				}) :=0A=
				function( elem, context, xml ) {=0A=
					input[0] =3D elem;=0A=
					matcher( input, null, xml, results );=0A=
					return !results.pop();=0A=
				};=0A=
		}),=0A=
=0A=
		"has": markFunction(function( selector ) {=0A=
			return function( elem ) {=0A=
				return Sizzle( selector, elem ).length > 0;=0A=
			};=0A=
		}),=0A=
=0A=
		"contains": markFunction(function( text ) {=0A=
			return function( elem ) {=0A=
				return ( elem.textContent || elem.innerText || getText( elem ) =
).indexOf( text ) > -1;=0A=
			};=0A=
		}),=0A=
=0A=
		// "Whether an element is represented by a :lang() selector=0A=
		// is based solely on the element's language value=0A=
		// being equal to the identifier C,=0A=
		// or beginning with the identifier C immediately followed by "-".=0A=
		// The matching of C against the element's language value is performed =
case-insensitively.=0A=
		// The identifier C does not have to be a valid language name."=0A=
		// http://www.w3.org/TR/selectors/#lang-pseudo=0A=
		"lang": markFunction( function( lang ) {=0A=
			// lang value must be a valid identifider=0A=
			if ( !ridentifier.test(lang || "") ) {=0A=
				Sizzle.error( "unsupported lang: " + lang );=0A=
			}=0A=
			lang =3D lang.replace( runescape, funescape ).toLowerCase();=0A=
			return function( elem ) {=0A=
				var elemLang;=0A=
				do {=0A=
					if ( (elemLang =3D documentIsXML ?=0A=
						elem.getAttribute("xml:lang") || elem.getAttribute("lang") :=0A=
						elem.lang) ) {=0A=
=0A=
						elemLang =3D elemLang.toLowerCase();=0A=
						return elemLang =3D=3D=3D lang || elemLang.indexOf( lang + "-" ) =
=3D=3D=3D 0;=0A=
					}=0A=
				} while ( (elem =3D elem.parentNode) && elem.nodeType =3D=3D=3D 1 );=0A=
				return false;=0A=
			};=0A=
		}),=0A=
=0A=
		// Miscellaneous=0A=
		"target": function( elem ) {=0A=
			var hash =3D window.location && window.location.hash;=0A=
			return hash && hash.slice( 1 ) =3D=3D=3D elem.id;=0A=
		},=0A=
=0A=
		"root": function( elem ) {=0A=
			return elem =3D=3D=3D docElem;=0A=
		},=0A=
=0A=
		"focus": function( elem ) {=0A=
			return elem =3D=3D=3D document.activeElement && (!document.hasFocus =
|| document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);=0A=
		},=0A=
=0A=
		// Boolean properties=0A=
		"enabled": function( elem ) {=0A=
			return elem.disabled =3D=3D=3D false;=0A=
		},=0A=
=0A=
		"disabled": function( elem ) {=0A=
			return elem.disabled =3D=3D=3D true;=0A=
		},=0A=
=0A=
		"checked": function( elem ) {=0A=
			// In CSS3, :checked should return both checked and selected elements=0A=
			// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked=0A=
			var nodeName =3D elem.nodeName.toLowerCase();=0A=
			return (nodeName =3D=3D=3D "input" && !!elem.checked) || (nodeName =
=3D=3D=3D "option" && !!elem.selected);=0A=
		},=0A=
=0A=
		"selected": function( elem ) {=0A=
			// Accessing this property makes selected-by-default=0A=
			// options in Safari work properly=0A=
			if ( elem.parentNode ) {=0A=
				elem.parentNode.selectedIndex;=0A=
			}=0A=
=0A=
			return elem.selected =3D=3D=3D true;=0A=
		},=0A=
=0A=
		// Contents=0A=
		"empty": function( elem ) {=0A=
			// http://www.w3.org/TR/selectors/#empty-pseudo=0A=
			// :empty is only affected by element nodes and content =
nodes(including text(3), cdata(4)),=0A=
			//   not comment, processing instructions, or others=0A=
			// Thanks to Diego Perini for the nodeName shortcut=0A=
			//   Greater than "@" means alpha characters (specifically not =
starting with "#" or "?")=0A=
			for ( elem =3D elem.firstChild; elem; elem =3D elem.nextSibling ) {=0A=
				if ( elem.nodeName > "@" || elem.nodeType =3D=3D=3D 3 || =
elem.nodeType =3D=3D=3D 4 ) {=0A=
					return false;=0A=
				}=0A=
			}=0A=
			return true;=0A=
		},=0A=
=0A=
		"parent": function( elem ) {=0A=
			return !Expr.pseudos["empty"]( elem );=0A=
		},=0A=
=0A=
		// Element/input types=0A=
		"header": function( elem ) {=0A=
			return rheader.test( elem.nodeName );=0A=
		},=0A=
=0A=
		"input": function( elem ) {=0A=
			return rinputs.test( elem.nodeName );=0A=
		},=0A=
=0A=
		"button": function( elem ) {=0A=
			var name =3D elem.nodeName.toLowerCase();=0A=
			return name =3D=3D=3D "input" && elem.type =3D=3D=3D "button" || name =
=3D=3D=3D "button";=0A=
		},=0A=
=0A=
		"text": function( elem ) {=0A=
			var attr;=0A=
			// IE6 and 7 will map elem.type to 'text' for new HTML5 types =
(search, etc)=0A=
			// use getAttribute instead to test this case=0A=
			return elem.nodeName.toLowerCase() =3D=3D=3D "input" &&=0A=
				elem.type =3D=3D=3D "text" &&=0A=
				( (attr =3D elem.getAttribute("type")) =3D=3D null || =
attr.toLowerCase() =3D=3D=3D elem.type );=0A=
		},=0A=
=0A=
		// Position-in-collection=0A=
		"first": createPositionalPseudo(function() {=0A=
			return [ 0 ];=0A=
		}),=0A=
=0A=
		"last": createPositionalPseudo(function( matchIndexes, length ) {=0A=
			return [ length - 1 ];=0A=
		}),=0A=
=0A=
		"eq": createPositionalPseudo(function( matchIndexes, length, argument =
) {=0A=
			return [ argument < 0 ? argument + length : argument ];=0A=
		}),=0A=
=0A=
		"even": createPositionalPseudo(function( matchIndexes, length ) {=0A=
			var i =3D 0;=0A=
			for ( ; i < length; i +=3D 2 ) {=0A=
				matchIndexes.push( i );=0A=
			}=0A=
			return matchIndexes;=0A=
		}),=0A=
=0A=
		"odd": createPositionalPseudo(function( matchIndexes, length ) {=0A=
			var i =3D 1;=0A=
			for ( ; i < length; i +=3D 2 ) {=0A=
				matchIndexes.push( i );=0A=
			}=0A=
			return matchIndexes;=0A=
		}),=0A=
=0A=
		"lt": createPositionalPseudo(function( matchIndexes, length, argument =
) {=0A=
			var i =3D argument < 0 ? argument + length : argument;=0A=
			for ( ; --i >=3D 0; ) {=0A=
				matchIndexes.push( i );=0A=
			}=0A=
			return matchIndexes;=0A=
		}),=0A=
=0A=
		"gt": createPositionalPseudo(function( matchIndexes, length, argument =
) {=0A=
			var i =3D argument < 0 ? argument + length : argument;=0A=
			for ( ; ++i < length; ) {=0A=
				matchIndexes.push( i );=0A=
			}=0A=
			return matchIndexes;=0A=
		})=0A=
	}=0A=
};=0A=
=0A=
// Add button/input type pseudos=0A=
for ( i in { radio: true, checkbox: true, file: true, password: true, =
image: true } ) {=0A=
	Expr.pseudos[ i ] =3D createInputPseudo( i );=0A=
}=0A=
for ( i in { submit: true, reset: true } ) {=0A=
	Expr.pseudos[ i ] =3D createButtonPseudo( i );=0A=
}=0A=
=0A=
function tokenize( selector, parseOnly ) {=0A=
	var matched, match, tokens, type,=0A=
		soFar, groups, preFilters,=0A=
		cached =3D tokenCache[ selector + " " ];=0A=
=0A=
	if ( cached ) {=0A=
		return parseOnly ? 0 : cached.slice( 0 );=0A=
	}=0A=
=0A=
	soFar =3D selector;=0A=
	groups =3D [];=0A=
	preFilters =3D Expr.preFilter;=0A=
=0A=
	while ( soFar ) {=0A=
=0A=
		// Comma and first run=0A=
		if ( !matched || (match =3D rcomma.exec( soFar )) ) {=0A=
			if ( match ) {=0A=
				// Don't consume trailing commas as valid=0A=
				soFar =3D soFar.slice( match[0].length ) || soFar;=0A=
			}=0A=
			groups.push( tokens =3D [] );=0A=
		}=0A=
=0A=
		matched =3D false;=0A=
=0A=
		// Combinators=0A=
		if ( (match =3D rcombinators.exec( soFar )) ) {=0A=
			matched =3D match.shift();=0A=
			tokens.push( {=0A=
				value: matched,=0A=
				// Cast descendant combinators to space=0A=
				type: match[0].replace( rtrim, " " )=0A=
			} );=0A=
			soFar =3D soFar.slice( matched.length );=0A=
		}=0A=
=0A=
		// Filters=0A=
		for ( type in Expr.filter ) {=0A=
			if ( (match =3D matchExpr[ type ].exec( soFar )) && (!preFilters[ =
type ] ||=0A=
				(match =3D preFilters[ type ]( match ))) ) {=0A=
				matched =3D match.shift();=0A=
				tokens.push( {=0A=
					value: matched,=0A=
					type: type,=0A=
					matches: match=0A=
				} );=0A=
				soFar =3D soFar.slice( matched.length );=0A=
			}=0A=
		}=0A=
=0A=
		if ( !matched ) {=0A=
			break;=0A=
		}=0A=
	}=0A=
=0A=
	// Return the length of the invalid excess=0A=
	// if we're just parsing=0A=
	// Otherwise, throw an error or return tokens=0A=
	return parseOnly ?=0A=
		soFar.length :=0A=
		soFar ?=0A=
			Sizzle.error( selector ) :=0A=
			// Cache the tokens=0A=
			tokenCache( selector, groups ).slice( 0 );=0A=
}=0A=
=0A=
function toSelector( tokens ) {=0A=
	var i =3D 0,=0A=
		len =3D tokens.length,=0A=
		selector =3D "";=0A=
	for ( ; i < len; i++ ) {=0A=
		selector +=3D tokens[i].value;=0A=
	}=0A=
	return selector;=0A=
}=0A=
=0A=
function addCombinator( matcher, combinator, base ) {=0A=
	var dir =3D combinator.dir,=0A=
		checkNonElements =3D base && combinator.dir =3D=3D=3D "parentNode",=0A=
		doneName =3D done++;=0A=
=0A=
	return combinator.first ?=0A=
		// Check against closest ancestor/preceding element=0A=
		function( elem, context, xml ) {=0A=
			while ( (elem =3D elem[ dir ]) ) {=0A=
				if ( elem.nodeType =3D=3D=3D 1 || checkNonElements ) {=0A=
					return matcher( elem, context, xml );=0A=
				}=0A=
			}=0A=
		} :=0A=
=0A=
		// Check against all ancestor/preceding elements=0A=
		function( elem, context, xml ) {=0A=
			var data, cache, outerCache,=0A=
				dirkey =3D dirruns + " " + doneName;=0A=
=0A=
			// We can't set arbitrary data on XML nodes, so they don't benefit =
from dir caching=0A=
			if ( xml ) {=0A=
				while ( (elem =3D elem[ dir ]) ) {=0A=
					if ( elem.nodeType =3D=3D=3D 1 || checkNonElements ) {=0A=
						if ( matcher( elem, context, xml ) ) {=0A=
							return true;=0A=
						}=0A=
					}=0A=
				}=0A=
			} else {=0A=
				while ( (elem =3D elem[ dir ]) ) {=0A=
					if ( elem.nodeType =3D=3D=3D 1 || checkNonElements ) {=0A=
						outerCache =3D elem[ expando ] || (elem[ expando ] =3D {});=0A=
						if ( (cache =3D outerCache[ dir ]) && cache[0] =3D=3D=3D dirkey ) {=0A=
							if ( (data =3D cache[1]) =3D=3D=3D true || data =3D=3D=3D =
cachedruns ) {=0A=
								return data =3D=3D=3D true;=0A=
							}=0A=
						} else {=0A=
							cache =3D outerCache[ dir ] =3D [ dirkey ];=0A=
							cache[1] =3D matcher( elem, context, xml ) || cachedruns;=0A=
							if ( cache[1] =3D=3D=3D true ) {=0A=
								return true;=0A=
							}=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
		};=0A=
}=0A=
=0A=
function elementMatcher( matchers ) {=0A=
	return matchers.length > 1 ?=0A=
		function( elem, context, xml ) {=0A=
			var i =3D matchers.length;=0A=
			while ( i-- ) {=0A=
				if ( !matchers[i]( elem, context, xml ) ) {=0A=
					return false;=0A=
				}=0A=
			}=0A=
			return true;=0A=
		} :=0A=
		matchers[0];=0A=
}=0A=
=0A=
function condense( unmatched, map, filter, context, xml ) {=0A=
	var elem,=0A=
		newUnmatched =3D [],=0A=
		i =3D 0,=0A=
		len =3D unmatched.length,=0A=
		mapped =3D map !=3D null;=0A=
=0A=
	for ( ; i < len; i++ ) {=0A=
		if ( (elem =3D unmatched[i]) ) {=0A=
			if ( !filter || filter( elem, context, xml ) ) {=0A=
				newUnmatched.push( elem );=0A=
				if ( mapped ) {=0A=
					map.push( i );=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	return newUnmatched;=0A=
}=0A=
=0A=
function setMatcher( preFilter, selector, matcher, postFilter, =
postFinder, postSelector ) {=0A=
	if ( postFilter && !postFilter[ expando ] ) {=0A=
		postFilter =3D setMatcher( postFilter );=0A=
	}=0A=
	if ( postFinder && !postFinder[ expando ] ) {=0A=
		postFinder =3D setMatcher( postFinder, postSelector );=0A=
	}=0A=
	return markFunction(function( seed, results, context, xml ) {=0A=
		var temp, i, elem,=0A=
			preMap =3D [],=0A=
			postMap =3D [],=0A=
			preexisting =3D results.length,=0A=
=0A=
			// Get initial elements from seed or context=0A=
			elems =3D seed || multipleContexts( selector || "*", context.nodeType =
? [ context ] : context, [] ),=0A=
=0A=
			// Prefilter to get matcher input, preserving a map for seed-results =
synchronization=0A=
			matcherIn =3D preFilter && ( seed || !selector ) ?=0A=
				condense( elems, preMap, preFilter, context, xml ) :=0A=
				elems,=0A=
=0A=
			matcherOut =3D matcher ?=0A=
				// If we have a postFinder, or filtered seed, or non-seed postFilter =
or preexisting results,=0A=
				postFinder || ( seed ? preFilter : preexisting || postFilter ) ?=0A=
=0A=
					// ...intermediate processing is necessary=0A=
					[] :=0A=
=0A=
					// ...otherwise use results directly=0A=
					results :=0A=
				matcherIn;=0A=
=0A=
		// Find primary matches=0A=
		if ( matcher ) {=0A=
			matcher( matcherIn, matcherOut, context, xml );=0A=
		}=0A=
=0A=
		// Apply postFilter=0A=
		if ( postFilter ) {=0A=
			temp =3D condense( matcherOut, postMap );=0A=
			postFilter( temp, [], context, xml );=0A=
=0A=
			// Un-match failing elements by moving them back to matcherIn=0A=
			i =3D temp.length;=0A=
			while ( i-- ) {=0A=
				if ( (elem =3D temp[i]) ) {=0A=
					matcherOut[ postMap[i] ] =3D !(matcherIn[ postMap[i] ] =3D elem);=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		if ( seed ) {=0A=
			if ( postFinder || preFilter ) {=0A=
				if ( postFinder ) {=0A=
					// Get the final matcherOut by condensing this intermediate into =
postFinder contexts=0A=
					temp =3D [];=0A=
					i =3D matcherOut.length;=0A=
					while ( i-- ) {=0A=
						if ( (elem =3D matcherOut[i]) ) {=0A=
							// Restore matcherIn since elem is not yet a final match=0A=
							temp.push( (matcherIn[i] =3D elem) );=0A=
						}=0A=
					}=0A=
					postFinder( null, (matcherOut =3D []), temp, xml );=0A=
				}=0A=
=0A=
				// Move matched elements from seed to results to keep them =
synchronized=0A=
				i =3D matcherOut.length;=0A=
				while ( i-- ) {=0A=
					if ( (elem =3D matcherOut[i]) &&=0A=
						(temp =3D postFinder ? indexOf.call( seed, elem ) : preMap[i]) > =
-1 ) {=0A=
=0A=
						seed[temp] =3D !(results[temp] =3D elem);=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
		// Add elements to results, through postFinder if defined=0A=
		} else {=0A=
			matcherOut =3D condense(=0A=
				matcherOut =3D=3D=3D results ?=0A=
					matcherOut.splice( preexisting, matcherOut.length ) :=0A=
					matcherOut=0A=
			);=0A=
			if ( postFinder ) {=0A=
				postFinder( null, results, matcherOut, xml );=0A=
			} else {=0A=
				push.apply( results, matcherOut );=0A=
			}=0A=
		}=0A=
	});=0A=
}=0A=
=0A=
function matcherFromTokens( tokens ) {=0A=
	var checkContext, matcher, j,=0A=
		len =3D tokens.length,=0A=
		leadingRelative =3D Expr.relative[ tokens[0].type ],=0A=
		implicitRelative =3D leadingRelative || Expr.relative[" "],=0A=
		i =3D leadingRelative ? 1 : 0,=0A=
=0A=
		// The foundational matcher ensures that elements are reachable from =
top-level context(s)=0A=
		matchContext =3D addCombinator( function( elem ) {=0A=
			return elem =3D=3D=3D checkContext;=0A=
		}, implicitRelative, true ),=0A=
		matchAnyContext =3D addCombinator( function( elem ) {=0A=
			return indexOf.call( checkContext, elem ) > -1;=0A=
		}, implicitRelative, true ),=0A=
		matchers =3D [ function( elem, context, xml ) {=0A=
			return ( !leadingRelative && ( xml || context !=3D=3D =
outermostContext ) ) || (=0A=
				(checkContext =3D context).nodeType ?=0A=
					matchContext( elem, context, xml ) :=0A=
					matchAnyContext( elem, context, xml ) );=0A=
		} ];=0A=
=0A=
	for ( ; i < len; i++ ) {=0A=
		if ( (matcher =3D Expr.relative[ tokens[i].type ]) ) {=0A=
			matchers =3D [ addCombinator(elementMatcher( matchers ), matcher) ];=0A=
		} else {=0A=
			matcher =3D Expr.filter[ tokens[i].type ].apply( null, =
tokens[i].matches );=0A=
=0A=
			// Return special upon seeing a positional matcher=0A=
			if ( matcher[ expando ] ) {=0A=
				// Find the next relative operator (if any) for proper handling=0A=
				j =3D ++i;=0A=
				for ( ; j < len; j++ ) {=0A=
					if ( Expr.relative[ tokens[j].type ] ) {=0A=
						break;=0A=
					}=0A=
				}=0A=
				return setMatcher(=0A=
					i > 1 && elementMatcher( matchers ),=0A=
					i > 1 && toSelector( tokens.slice( 0, i - 1 ) ).replace( rtrim, =
"$1" ),=0A=
					matcher,=0A=
					i < j && matcherFromTokens( tokens.slice( i, j ) ),=0A=
					j < len && matcherFromTokens( (tokens =3D tokens.slice( j )) ),=0A=
					j < len && toSelector( tokens )=0A=
				);=0A=
			}=0A=
			matchers.push( matcher );=0A=
		}=0A=
	}=0A=
=0A=
	return elementMatcher( matchers );=0A=
}=0A=
=0A=
function matcherFromGroupMatchers( elementMatchers, setMatchers ) {=0A=
	// A counter to specify which element is currently being matched=0A=
	var matcherCachedRuns =3D 0,=0A=
		bySet =3D setMatchers.length > 0,=0A=
		byElement =3D elementMatchers.length > 0,=0A=
		superMatcher =3D function( seed, context, xml, results, expandContext =
) {=0A=
			var elem, j, matcher,=0A=
				setMatched =3D [],=0A=
				matchedCount =3D 0,=0A=
				i =3D "0",=0A=
				unmatched =3D seed && [],=0A=
				outermost =3D expandContext !=3D null,=0A=
				contextBackup =3D outermostContext,=0A=
				// We must always have either seed elements or context=0A=
				elems =3D seed || byElement && Expr.find["TAG"]( "*", expandContext =
&& context.parentNode || context ),=0A=
				// Nested matchers should use non-integer dirruns=0A=
				dirrunsUnique =3D (dirruns +=3D contextBackup =3D=3D null ? 1 : =
Math.E);=0A=
=0A=
			if ( outermost ) {=0A=
				outermostContext =3D context !=3D=3D document && context;=0A=
				cachedruns =3D matcherCachedRuns;=0A=
			}=0A=
=0A=
			// Add elements passing elementMatchers directly to results=0A=
			for ( ; (elem =3D elems[i]) !=3D null; i++ ) {=0A=
				if ( byElement && elem ) {=0A=
					for ( j =3D 0; (matcher =3D elementMatchers[j]); j++ ) {=0A=
						if ( matcher( elem, context, xml ) ) {=0A=
							results.push( elem );=0A=
							break;=0A=
						}=0A=
					}=0A=
					if ( outermost ) {=0A=
						dirruns =3D dirrunsUnique;=0A=
						cachedruns =3D ++matcherCachedRuns;=0A=
					}=0A=
				}=0A=
=0A=
				// Track unmatched elements for set filters=0A=
				if ( bySet ) {=0A=
					// They will have gone through all possible matchers=0A=
					if ( (elem =3D !matcher && elem) ) {=0A=
						matchedCount--;=0A=
					}=0A=
=0A=
					// Lengthen the array for every element, matched or not=0A=
					if ( seed ) {=0A=
						unmatched.push( elem );=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// Apply set filters to unmatched elements=0A=
			// `i` starts as a string, so matchedCount would equal "00" if there =
are no elements=0A=
			matchedCount +=3D i;=0A=
			if ( bySet && i !=3D=3D matchedCount ) {=0A=
				for ( j =3D 0; (matcher =3D setMatchers[j]); j++ ) {=0A=
					matcher( unmatched, setMatched, context, xml );=0A=
				}=0A=
=0A=
				if ( seed ) {=0A=
					// Reintegrate element matches to eliminate the need for sorting=0A=
					if ( matchedCount > 0 ) {=0A=
						while ( i-- ) {=0A=
							if ( !(unmatched[i] || setMatched[i]) ) {=0A=
								setMatched[i] =3D pop.call( results );=0A=
							}=0A=
						}=0A=
					}=0A=
=0A=
					// Discard index placeholder values to get only actual matches=0A=
					setMatched =3D condense( setMatched );=0A=
				}=0A=
=0A=
				// Add matches to results=0A=
				push.apply( results, setMatched );=0A=
=0A=
				// Seedless set matches succeeding multiple successful matchers =
stipulate sorting=0A=
				if ( outermost && !seed && setMatched.length > 0 &&=0A=
					( matchedCount + setMatchers.length ) > 1 ) {=0A=
=0A=
					Sizzle.uniqueSort( results );=0A=
				}=0A=
			}=0A=
=0A=
			// Override manipulation of globals by nested matchers=0A=
			if ( outermost ) {=0A=
				dirruns =3D dirrunsUnique;=0A=
				outermostContext =3D contextBackup;=0A=
			}=0A=
=0A=
			return unmatched;=0A=
		};=0A=
=0A=
	return bySet ?=0A=
		markFunction( superMatcher ) :=0A=
		superMatcher;=0A=
}=0A=
=0A=
compile =3D Sizzle.compile =3D function( selector, group /* Internal Use =
Only */ ) {=0A=
	var i,=0A=
		setMatchers =3D [],=0A=
		elementMatchers =3D [],=0A=
		cached =3D compilerCache[ selector + " " ];=0A=
=0A=
	if ( !cached ) {=0A=
		// Generate a function of recursive functions that can be used to =
check each element=0A=
		if ( !group ) {=0A=
			group =3D tokenize( selector );=0A=
		}=0A=
		i =3D group.length;=0A=
		while ( i-- ) {=0A=
			cached =3D matcherFromTokens( group[i] );=0A=
			if ( cached[ expando ] ) {=0A=
				setMatchers.push( cached );=0A=
			} else {=0A=
				elementMatchers.push( cached );=0A=
			}=0A=
		}=0A=
=0A=
		// Cache the compiled function=0A=
		cached =3D compilerCache( selector, matcherFromGroupMatchers( =
elementMatchers, setMatchers ) );=0A=
	}=0A=
	return cached;=0A=
};=0A=
=0A=
function multipleContexts( selector, contexts, results ) {=0A=
	var i =3D 0,=0A=
		len =3D contexts.length;=0A=
	for ( ; i < len; i++ ) {=0A=
		Sizzle( selector, contexts[i], results );=0A=
	}=0A=
	return results;=0A=
}=0A=
=0A=
function select( selector, context, results, seed ) {=0A=
	var i, tokens, token, type, find,=0A=
		match =3D tokenize( selector );=0A=
=0A=
	if ( !seed ) {=0A=
		// Try to minimize operations if there is only one group=0A=
		if ( match.length =3D=3D=3D 1 ) {=0A=
=0A=
			// Take a shortcut and set the context if the root selector is an ID=0A=
			tokens =3D match[0] =3D match[0].slice( 0 );=0A=
			if ( tokens.length > 2 && (token =3D tokens[0]).type =3D=3D=3D "ID" &&=0A=
					context.nodeType =3D=3D=3D 9 && !documentIsXML &&=0A=
					Expr.relative[ tokens[1].type ] ) {=0A=
=0A=
				context =3D Expr.find["ID"]( token.matches[0].replace( runescape, =
funescape ), context )[0];=0A=
				if ( !context ) {=0A=
					return results;=0A=
				}=0A=
=0A=
				selector =3D selector.slice( tokens.shift().value.length );=0A=
			}=0A=
=0A=
			// Fetch a seed set for right-to-left matching=0A=
			for ( i =3D matchExpr["needsContext"].test( selector ) ? -1 : =
tokens.length - 1; i >=3D 0; i-- ) {=0A=
				token =3D tokens[i];=0A=
=0A=
				// Abort if we hit a combinator=0A=
				if ( Expr.relative[ (type =3D token.type) ] ) {=0A=
					break;=0A=
				}=0A=
				if ( (find =3D Expr.find[ type ]) ) {=0A=
					// Search, expanding context for leading sibling combinators=0A=
					if ( (seed =3D find(=0A=
						token.matches[0].replace( runescape, funescape ),=0A=
						rsibling.test( tokens[0].type ) && context.parentNode || context=0A=
					)) ) {=0A=
=0A=
						// If seed is empty or no tokens remain, we can return early=0A=
						tokens.splice( i, 1 );=0A=
						selector =3D seed.length && toSelector( tokens );=0A=
						if ( !selector ) {=0A=
							push.apply( results, slice.call( seed, 0 ) );=0A=
							return results;=0A=
						}=0A=
=0A=
						break;=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// Compile and execute a filtering function=0A=
	// Provide `match` to avoid retokenization if we modified the selector =
above=0A=
	compile( selector, match )(=0A=
		seed,=0A=
		context,=0A=
		documentIsXML,=0A=
		results,=0A=
		rsibling.test( selector )=0A=
	);=0A=
	return results;=0A=
}=0A=
=0A=
// Deprecated=0A=
Expr.pseudos["nth"] =3D Expr.pseudos["eq"];=0A=
=0A=
// Easy API for creating new setFilters=0A=
function setFilters() {}=0A=
Expr.filters =3D setFilters.prototype =3D Expr.pseudos;=0A=
Expr.setFilters =3D new setFilters();=0A=
=0A=
// Initialize with the default document=0A=
setDocument();=0A=
=0A=
// Override sizzle attribute retrieval=0A=
Sizzle.attr =3D jQuery.attr;=0A=
jQuery.find =3D Sizzle;=0A=
jQuery.expr =3D Sizzle.selectors;=0A=
jQuery.expr[":"] =3D jQuery.expr.pseudos;=0A=
jQuery.unique =3D Sizzle.uniqueSort;=0A=
jQuery.text =3D Sizzle.getText;=0A=
jQuery.isXMLDoc =3D Sizzle.isXML;=0A=
jQuery.contains =3D Sizzle.contains;=0A=
=0A=
=0A=
})( window );=0A=
var runtil =3D /Until$/,=0A=
	rparentsprev =3D /^(?:parents|prev(?:Until|All))/,=0A=
	isSimple =3D /^.[^:#\[\.,]*$/,=0A=
	rneedsContext =3D jQuery.expr.match.needsContext,=0A=
	// methods guaranteed to produce a unique set when starting from a =
unique set=0A=
	guaranteedUnique =3D {=0A=
		children: true,=0A=
		contents: true,=0A=
		next: true,=0A=
		prev: true=0A=
	};=0A=
=0A=
jQuery.fn.extend({=0A=
	find: function( selector ) {=0A=
		var i, ret, self;=0A=
=0A=
		if ( typeof selector !=3D=3D "string" ) {=0A=
			self =3D this;=0A=
			return this.pushStack( jQuery( selector ).filter(function() {=0A=
				for ( i =3D 0; i < self.length; i++ ) {=0A=
					if ( jQuery.contains( self[ i ], this ) ) {=0A=
						return true;=0A=
					}=0A=
				}=0A=
			}) );=0A=
		}=0A=
=0A=
		ret =3D [];=0A=
		for ( i =3D 0; i < this.length; i++ ) {=0A=
			jQuery.find( selector, this[ i ], ret );=0A=
		}=0A=
=0A=
		// Needed because $( selector, context ) becomes $( context ).find( =
selector )=0A=
		ret =3D this.pushStack( jQuery.unique( ret ) );=0A=
		ret.selector =3D ( this.selector ? this.selector + " " : "" ) + =
selector;=0A=
		return ret;=0A=
	},=0A=
=0A=
	has: function( target ) {=0A=
		var i,=0A=
			targets =3D jQuery( target, this ),=0A=
			len =3D targets.length;=0A=
=0A=
		return this.filter(function() {=0A=
			for ( i =3D 0; i < len; 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) );=0A=
	},=0A=
=0A=
	filter: function( selector ) {=0A=
		return this.pushStack( winnow(this, selector, true) );=0A=
	},=0A=
=0A=
	is: function( selector ) {=0A=
		return !!selector && (=0A=
			typeof selector =3D=3D=3D "string" ?=0A=
				// If this is a positional/relative selector, check membership in =
the returned set=0A=
				// so $("p:first").is("p:last") won't return true for a doc with two =
"p".=0A=
				rneedsContext.test( selector ) ?=0A=
					jQuery( selector, this.context ).index( this[0] ) >=3D 0 :=0A=
					jQuery.filter( selector, this ).length > 0 :=0A=
				this.filter( selector ).length > 0 );=0A=
	},=0A=
=0A=
	closest: function( selectors, context ) {=0A=
		var cur,=0A=
			i =3D 0,=0A=
			l =3D this.length,=0A=
			ret =3D [],=0A=
			pos =3D rneedsContext.test( selectors ) || typeof selectors !=3D=3D =
"string" ?=0A=
				jQuery( selectors, context || this.context ) :=0A=
				0;=0A=
=0A=
		for ( ; i < l; i++ ) {=0A=
			cur =3D this[i];=0A=
=0A=
			while ( cur && cur.ownerDocument && cur !=3D=3D context && =
cur.nodeType !=3D=3D 11 ) {=0A=
				if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, =
selectors) ) {=0A=
					ret.push( cur );=0A=
					break;=0A=
				}=0A=
				cur =3D cur.parentNode;=0A=
			}=0A=
		}=0A=
=0A=
		return this.pushStack( ret.length > 1 ? jQuery.unique( ret ) : ret );=0A=
	},=0A=
=0A=
	// Determine the position of an element within=0A=
	// the matched set of elements=0A=
	index: function( elem ) {=0A=
=0A=
		// No argument, return index in parent=0A=
		if ( !elem ) {=0A=
			return ( this[0] && this[0].parentNode ) ? =
this.first().prevAll().length : -1;=0A=
		}=0A=
=0A=
		// index in selector=0A=
		if ( typeof elem =3D=3D=3D "string" ) {=0A=
			return jQuery.inArray( this[0], jQuery( elem ) );=0A=
		}=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 ) :=0A=
				jQuery.makeArray( selector && selector.nodeType ? [ selector ] : =
selector ),=0A=
			all =3D jQuery.merge( this.get(), set );=0A=
=0A=
		return this.pushStack( jQuery.unique(all) );=0A=
	},=0A=
=0A=
	addBack: function( selector ) {=0A=
		return this.add( selector =3D=3D null ?=0A=
			this.prevObject : this.prevObject.filter(selector)=0A=
		);=0A=
	}=0A=
});=0A=
=0A=
jQuery.fn.andSelf =3D jQuery.fn.addBack;=0A=
=0A=
function sibling( cur, dir ) {=0A=
	do {=0A=
		cur =3D cur[ dir ];=0A=
	} while ( cur && cur.nodeType !=3D=3D 1 );=0A=
=0A=
	return cur;=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 sibling( elem, "nextSibling" );=0A=
	},=0A=
	prev: function( elem ) {=0A=
		return sibling( elem, "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.merge( [], 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 && !guaranteedUnique[ name ] ? jQuery.unique( =
ret ) : ret;=0A=
=0A=
		if ( this.length > 1 && rparentsprev.test( name ) ) {=0A=
			ret =3D ret.reverse();=0A=
		}=0A=
=0A=
		return this.pushStack( ret );=0A=
	};=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	filter: function( expr, elems, not ) {=0A=
		if ( not ) {=0A=
			expr =3D ":not(" + expr + ")";=0A=
		}=0A=
=0A=
		return elems.length =3D=3D=3D 1 ?=0A=
			jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] :=0A=
			jQuery.find.matches(expr, elems);=0A=
	},=0A=
=0A=
	dir: function( elem, dir, until ) {=0A=
		var matched =3D [],=0A=
			cur =3D elem[ dir ];=0A=
=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=
	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=
=0A=
// Implement the identical functionality for filter and not=0A=
function winnow( elements, qualifier, keep ) {=0A=
=0A=
	// Can't pass null or undefined to indexOf in Firefox 4=0A=
	// Set to 0 to skip string check=0A=
	qualifier =3D qualifier || 0;=0A=
=0A=
	if ( jQuery.isFunction( qualifier ) ) {=0A=
		return jQuery.grep(elements, function( elem, i ) {=0A=
			var retVal =3D !!qualifier.call( elem, i, elem );=0A=
			return retVal =3D=3D=3D keep;=0A=
		});=0A=
=0A=
	} else if ( qualifier.nodeType ) {=0A=
		return jQuery.grep(elements, function( elem ) {=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 ) {=0A=
		return ( jQuery.inArray( elem, qualifier ) >=3D 0 ) =3D=3D=3D keep;=0A=
	});=0A=
}=0A=
function createSafeFragment( document ) {=0A=
	var list =3D nodeNames.split( "|" ),=0A=
		safeFrag =3D document.createDocumentFragment();=0A=
=0A=
	if ( safeFrag.createElement ) {=0A=
		while ( list.length ) {=0A=
			safeFrag.createElement(=0A=
				list.pop()=0A=
			);=0A=
		}=0A=
	}=0A=
	return safeFrag;=0A=
}=0A=
=0A=
var nodeNames =3D =
"abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|fig=
ure|footer|" +=0A=
		=
"header|hgroup|mark|meter|nav|output|progress|section|summary|time|video"=
,=0A=
	rinlinejQuery =3D / jQuery\d+=3D"(?:null|\d+)"/g,=0A=
	rnoshimcache =3D new RegExp("<(?:" + nodeNames + ")[\\s/>]", "i"),=0A=
	rleadingWhitespace =3D /^\s+/,=0A=
	rxhtmlTag =3D =
/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi=
,=0A=
	rtagName =3D /<([\w:]+)/,=0A=
	rtbody =3D /<tbody/i,=0A=
	rhtml =3D /<|&#?\w+;/,=0A=
	rnoInnerhtml =3D /<(?:script|style|link)/i,=0A=
	manipulation_rcheckableType =3D /^(?:checkbox|radio)$/i,=0A=
	// checked=3D"checked" or checked=0A=
	rchecked =3D /checked\s*(?:[^=3D]|=3D\s*.checked.)/i,=0A=
	rscriptType =3D /^$|\/(?:java|ecma)script/i,=0A=
	rscriptTypeMasked =3D /^true\/(.*)/,=0A=
	rcleanScript =3D /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,=0A=
=0A=
	// We have to close these tags to support XHTML (#13200)=0A=
	wrapMap =3D {=0A=
		option: [ 1, "<select multiple=3D'multiple'>", "</select>" ],=0A=
		legend: [ 1, "<fieldset>", "</fieldset>" ],=0A=
		area: [ 1, "<map>", "</map>" ],=0A=
		param: [ 1, "<object>", "</object>" ],=0A=
		thead: [ 1, "<table>", "</table>" ],=0A=
		tr: [ 2, "<table><tbody>", "</tbody></table>" ],=0A=
		col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ],=0A=
		td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],=0A=
=0A=
		// IE6-8 can't serialize link, script, style, or any html5 (NoScope) =
tags,=0A=
		// unless wrapped in a div with non-breaking characters in front of it.=0A=
		_default: jQuery.support.htmlSerialize ? [ 0, "", "" ] : [ 1, =
"X<div>", "</div>"  ]=0A=
	},=0A=
	safeFragment =3D createSafeFragment( document ),=0A=
	fragmentDiv =3D safeFragment.appendChild( document.createElement("div") =
);=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=
jQuery.fn.extend({=0A=
	text: function( value ) {=0A=
		return jQuery.access( this, function( value ) {=0A=
			return value =3D=3D=3D undefined ?=0A=
				jQuery.text( this ) :=0A=
				this.empty().append( ( this[0] && this[0].ownerDocument || document =
).createTextNode( value ) );=0A=
		}, null, value, arguments.length );=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 ),=0A=
				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=
		var isFunction =3D jQuery.isFunction( html );=0A=
=0A=
		return this.each(function(i) {=0A=
			jQuery( this ).wrapAll( isFunction ? html.call(this, i) : 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 || this.nodeType =3D=3D=3D 11 || =
this.nodeType =3D=3D=3D 9 ) {=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 || this.nodeType =3D=3D=3D 11 || =
this.nodeType =3D=3D=3D 9 ) {=0A=
				this.insertBefore( elem, this.firstChild );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	before: function() {=0A=
		return this.domManip( arguments, false, function( elem ) {=0A=
			if ( this.parentNode ) {=0A=
				this.parentNode.insertBefore( elem, this );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	after: function() {=0A=
		return this.domManip( arguments, false, function( elem ) {=0A=
			if ( this.parentNode ) {=0A=
				this.parentNode.insertBefore( elem, this.nextSibling );=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	// keepData is for internal use only--do not document=0A=
	remove: function( selector, keepData ) {=0A=
		var elem,=0A=
			i =3D 0;=0A=
=0A=
		for ( ; (elem =3D this[i]) !=3D null; i++ ) {=0A=
			if ( !selector || jQuery.filter( selector, [ elem ] ).length > 0 ) {=0A=
				if ( !keepData && elem.nodeType =3D=3D=3D 1 ) {=0A=
					jQuery.cleanData( getAll( elem ) );=0A=
				}=0A=
=0A=
				if ( elem.parentNode ) {=0A=
					if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) {=0A=
						setGlobalEval( getAll( elem, "script" ) );=0A=
					}=0A=
					elem.parentNode.removeChild( elem );=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	empty: function() {=0A=
		var elem,=0A=
			i =3D 0;=0A=
=0A=
		for ( ; (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( getAll( elem, false ) );=0A=
			}=0A=
=0A=
			// Remove any remaining nodes=0A=
			while ( elem.firstChild ) {=0A=
				elem.removeChild( elem.firstChild );=0A=
			}=0A=
=0A=
			// If this is a select, ensure that it displays empty (#12336)=0A=
			// Support: IE<9=0A=
			if ( elem.options && jQuery.nodeName( elem, "select" ) ) {=0A=
				elem.options.length =3D 0;=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	},=0A=
=0A=
	clone: function( dataAndEvents, deepDataAndEvents ) {=0A=
		dataAndEvents =3D dataAndEvents =3D=3D null ? false : dataAndEvents;=0A=
		deepDataAndEvents =3D deepDataAndEvents =3D=3D null ? dataAndEvents : =
deepDataAndEvents;=0A=
=0A=
		return this.map( function () {=0A=
			return jQuery.clone( this, dataAndEvents, deepDataAndEvents );=0A=
		});=0A=
	},=0A=
=0A=
	html: function( value ) {=0A=
		return jQuery.access( this, function( value ) {=0A=
			var elem =3D this[0] || {},=0A=
				i =3D 0,=0A=
				l =3D this.length;=0A=
=0A=
			if ( value =3D=3D=3D undefined ) {=0A=
				return elem.nodeType =3D=3D=3D 1 ?=0A=
					elem.innerHTML.replace( rinlinejQuery, "" ) :=0A=
					undefined;=0A=
			}=0A=
=0A=
			// See if we can take a shortcut and just use innerHTML=0A=
			if ( typeof value =3D=3D=3D "string" && !rnoInnerhtml.test( value ) &&=0A=
				( jQuery.support.htmlSerialize || !rnoshimcache.test( value )  ) &&=0A=
				( jQuery.support.leadingWhitespace || !rleadingWhitespace.test( =
value ) ) &&=0A=
				!wrapMap[ ( rtagName.exec( value ) || ["", ""] )[1].toLowerCase() ] =
) {=0A=
=0A=
				value =3D value.replace( rxhtmlTag, "<$1></$2>" );=0A=
=0A=
				try {=0A=
					for (; i < l; i++ ) {=0A=
						// Remove element nodes and prevent memory leaks=0A=
						elem =3D this[i] || {};=0A=
						if ( elem.nodeType =3D=3D=3D 1 ) {=0A=
							jQuery.cleanData( getAll( elem, false ) );=0A=
							elem.innerHTML =3D value;=0A=
						}=0A=
					}=0A=
=0A=
					elem =3D 0;=0A=
=0A=
				// If using innerHTML throws an exception, use the fallback method=0A=
				} catch(e) {}=0A=
			}=0A=
=0A=
			if ( elem ) {=0A=
				this.empty().append( value );=0A=
			}=0A=
		}, null, value, arguments.length );=0A=
	},=0A=
=0A=
	replaceWith: function( value ) {=0A=
		var isFunc =3D jQuery.isFunction( value );=0A=
=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 ( !isFunc && typeof value !=3D=3D "string" ) {=0A=
			value =3D jQuery( value ).not( this ).detach();=0A=
		}=0A=
=0A=
		return this.domManip( [ value ], true, function( elem ) {=0A=
			var next =3D this.nextSibling,=0A=
				parent =3D this.parentNode;=0A=
=0A=
			if ( parent && this.nodeType =3D=3D=3D 1 || this.nodeType =3D=3D=3D =
11 ) {=0A=
=0A=
				jQuery( this ).remove();=0A=
=0A=
				if ( next ) {=0A=
					next.parentNode.insertBefore( elem, next );=0A=
				} else {=0A=
					parent.appendChild( elem );=0A=
				}=0A=
			}=0A=
		});=0A=
	},=0A=
=0A=
	detach: function( selector ) {=0A=
		return this.remove( selector, true );=0A=
	},=0A=
=0A=
	domManip: function( args, table, callback ) {=0A=
=0A=
		// Flatten any nested arrays=0A=
		args =3D core_concat.apply( [], args );=0A=
=0A=
		var fragment, first, scripts, hasScripts, node, doc,=0A=
			i =3D 0,=0A=
			l =3D this.length,=0A=
			set =3D this,=0A=
			iNoClone =3D l - 1,=0A=
			value =3D args[0],=0A=
			isFunction =3D jQuery.isFunction( value );=0A=
=0A=
		// We can't cloneNode fragments that contain checked, in WebKit=0A=
		if ( isFunction || !( l <=3D 1 || typeof value !=3D=3D "string" || =
jQuery.support.checkClone || !rchecked.test( value ) ) ) {=0A=
			return this.each(function( index ) {=0A=
				var self =3D set.eq( index );=0A=
				if ( isFunction ) {=0A=
					args[0] =3D value.call( this, index, table ? self.html() : =
undefined );=0A=
				}=0A=
				self.domManip( args, table, callback );=0A=
			});=0A=
		}=0A=
=0A=
		if ( l ) {=0A=
			fragment =3D jQuery.buildFragment( args, this[ 0 ].ownerDocument, =
false, this );=0A=
			first =3D fragment.firstChild;=0A=
=0A=
			if ( fragment.childNodes.length =3D=3D=3D 1 ) {=0A=
				fragment =3D first;=0A=
			}=0A=
=0A=
			if ( first ) {=0A=
				table =3D table && jQuery.nodeName( first, "tr" );=0A=
				scripts =3D jQuery.map( getAll( fragment, "script" ), disableScript =
);=0A=
				hasScripts =3D scripts.length;=0A=
=0A=
				// Use the original fragment for the last item instead of the first =
because it can end up=0A=
				// being emptied incorrectly in certain situations (#8070).=0A=
				for ( ; i < l; i++ ) {=0A=
					node =3D fragment;=0A=
=0A=
					if ( i !=3D=3D iNoClone ) {=0A=
						node =3D jQuery.clone( node, true, true );=0A=
=0A=
						// Keep references to cloned scripts for later restoration=0A=
						if ( hasScripts ) {=0A=
							jQuery.merge( scripts, getAll( node, "script" ) );=0A=
						}=0A=
					}=0A=
=0A=
					callback.call(=0A=
						table && jQuery.nodeName( this[i], "table" ) ?=0A=
							findOrAppend( this[i], "tbody" ) :=0A=
							this[i],=0A=
						node,=0A=
						i=0A=
					);=0A=
				}=0A=
=0A=
				if ( hasScripts ) {=0A=
					doc =3D scripts[ scripts.length - 1 ].ownerDocument;=0A=
=0A=
					// Reenable scripts=0A=
					jQuery.map( scripts, restoreScript );=0A=
=0A=
					// Evaluate executable scripts on first document insertion=0A=
					for ( i =3D 0; i < hasScripts; i++ ) {=0A=
						node =3D scripts[ i ];=0A=
						if ( rscriptType.test( node.type || "" ) &&=0A=
							!jQuery._data( node, "globalEval" ) && jQuery.contains( doc, node =
) ) {=0A=
=0A=
							if ( node.src ) {=0A=
								// Hope ajax is available...=0A=
								jQuery.ajax({=0A=
									url: node.src,=0A=
									type: "GET",=0A=
									dataType: "script",=0A=
									async: false,=0A=
									global: false,=0A=
									"throws": true=0A=
								});=0A=
							} else {=0A=
								jQuery.globalEval( ( node.text || node.textContent || =
node.innerHTML || "" ).replace( rcleanScript, "" ) );=0A=
							}=0A=
						}=0A=
					}=0A=
				}=0A=
=0A=
				// Fix #11809: Avoid leaking memory=0A=
				fragment =3D first =3D null;=0A=
			}=0A=
		}=0A=
=0A=
		return this;=0A=
	}=0A=
});=0A=
=0A=
function findOrAppend( elem, tag ) {=0A=
	return elem.getElementsByTagName( tag )[0] || elem.appendChild( =
elem.ownerDocument.createElement( tag ) );=0A=
}=0A=
=0A=
// Replace/restore the type attribute of script elements for safe DOM =
manipulation=0A=
function disableScript( elem ) {=0A=
	var attr =3D elem.getAttributeNode("type");=0A=
	elem.type =3D ( attr && attr.specified ) + "/" + elem.type;=0A=
	return elem;=0A=
}=0A=
function restoreScript( elem ) {=0A=
	var match =3D rscriptTypeMasked.exec( elem.type );=0A=
	if ( match ) {=0A=
		elem.type =3D match[1];=0A=
	} else {=0A=
		elem.removeAttribute("type");=0A=
	}=0A=
	return elem;=0A=
}=0A=
=0A=
// Mark scripts as having already been evaluated=0A=
function setGlobalEval( elems, refElements ) {=0A=
	var elem,=0A=
		i =3D 0;=0A=
	for ( ; (elem =3D elems[i]) !=3D null; i++ ) {=0A=
		jQuery._data( elem, "globalEval", !refElements || jQuery._data( =
refElements[i], "globalEval" ) );=0A=
	}=0A=
}=0A=
=0A=
function cloneCopyEvent( src, dest ) {=0A=
=0A=
	if ( dest.nodeType !=3D=3D 1 || !jQuery.hasData( src ) ) {=0A=
		return;=0A=
	}=0A=
=0A=
	var type, i, l,=0A=
		oldData =3D jQuery._data( src ),=0A=
		curData =3D jQuery._data( dest, oldData ),=0A=
		events =3D oldData.events;=0A=
=0A=
	if ( events ) {=0A=
		delete curData.handle;=0A=
		curData.events =3D {};=0A=
=0A=
		for ( type in events ) {=0A=
			for ( i =3D 0, l =3D events[ type ].length; i < l; i++ ) {=0A=
				jQuery.event.add( dest, type, events[ type ][ i ] );=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// make the cloned public data object a copy from the original=0A=
	if ( curData.data ) {=0A=
		curData.data =3D jQuery.extend( {}, curData.data );=0A=
	}=0A=
}=0A=
=0A=
function fixCloneNodeIssues( src, dest ) {=0A=
	var nodeName, data, e;=0A=
=0A=
	// We do not need to do anything for non-Elements=0A=
	if ( dest.nodeType !=3D=3D 1 ) {=0A=
		return;=0A=
	}=0A=
=0A=
	nodeName =3D dest.nodeName.toLowerCase();=0A=
=0A=
	// IE6-8 copies events bound via attachEvent when using cloneNode.=0A=
	if ( !jQuery.support.noCloneEvent && dest[ jQuery.expando ] ) {=0A=
		data =3D jQuery._data( dest );=0A=
=0A=
		for ( e in data.events ) {=0A=
			jQuery.removeEvent( dest, e, data.handle );=0A=
		}=0A=
=0A=
		// Event data gets referenced instead of copied if the expando gets =
copied too=0A=
		dest.removeAttribute( jQuery.expando );=0A=
	}=0A=
=0A=
	// IE blanks contents when cloning scripts, and tries to evaluate =
newly-set text=0A=
	if ( nodeName =3D=3D=3D "script" && dest.text !=3D=3D src.text ) {=0A=
		disableScript( dest ).text =3D src.text;=0A=
		restoreScript( dest );=0A=
=0A=
	// IE6-10 improperly clones children of object elements using classid.=0A=
	// IE10 throws NoModificationAllowedError if parent is null, #12132.=0A=
	} else if ( nodeName =3D=3D=3D "object" ) {=0A=
		if ( dest.parentNode ) {=0A=
			dest.outerHTML =3D src.outerHTML;=0A=
		}=0A=
=0A=
		// This path appears unavoidable for IE9. When cloning an object=0A=
		// element in IE9, the outerHTML strategy above is not sufficient.=0A=
		// If the src has innerHTML and the destination does not,=0A=
		// copy the src.innerHTML into the dest.innerHTML. #10324=0A=
		if ( jQuery.support.html5Clone && ( src.innerHTML && =
!jQuery.trim(dest.innerHTML) ) ) {=0A=
			dest.innerHTML =3D src.innerHTML;=0A=
		}=0A=
=0A=
	} else if ( nodeName =3D=3D=3D "input" && =
manipulation_rcheckableType.test( src.type ) ) {=0A=
		// IE6-8 fails to persist the checked state of a cloned checkbox=0A=
		// or radio button. Worse, IE6-7 fail to give the cloned element=0A=
		// a checked appearance if the defaultChecked value isn't also set=0A=
=0A=
		dest.defaultChecked =3D dest.checked =3D src.checked;=0A=
=0A=
		// IE6-7 get confused and end up setting the value of a cloned=0A=
		// checkbox/radio button to an empty string instead of "on"=0A=
		if ( dest.value !=3D=3D src.value ) {=0A=
			dest.value =3D src.value;=0A=
		}=0A=
=0A=
	// IE6-8 fails to return the selected option to the default selected=0A=
	// state when cloning options=0A=
	} else if ( nodeName =3D=3D=3D "option" ) {=0A=
		dest.defaultSelected =3D dest.selected =3D src.defaultSelected;=0A=
=0A=
	// IE6-8 fails to set the defaultValue to the correct value when=0A=
	// cloning other types of input fields=0A=
	} else if ( nodeName =3D=3D=3D "input" || nodeName =3D=3D=3D "textarea" =
) {=0A=
		dest.defaultValue =3D src.defaultValue;=0A=
	}=0A=
}=0A=
=0A=
jQuery.each({=0A=
	appendTo: "append",=0A=
	prependTo: "prepend",=0A=
	insertBefore: "before",=0A=
	insertAfter: "after",=0A=
	replaceAll: "replaceWith"=0A=
}, function( name, original ) {=0A=
	jQuery.fn[ name ] =3D function( selector ) {=0A=
		var elems,=0A=
			i =3D 0,=0A=
			ret =3D [],=0A=
			insert =3D jQuery( selector ),=0A=
			last =3D insert.length - 1;=0A=
=0A=
		for ( ; i <=3D last; i++ ) {=0A=
			elems =3D i =3D=3D=3D last ? this : this.clone(true);=0A=
			jQuery( insert[i] )[ original ]( elems );=0A=
=0A=
			// Modern browsers can apply jQuery collections as arrays, but oldIE =
needs a .get()=0A=
			core_push.apply( ret, elems.get() );=0A=
		}=0A=
=0A=
		return this.pushStack( ret );=0A=
	};=0A=
});=0A=
=0A=
function getAll( context, tag ) {=0A=
	var elems, elem,=0A=
		i =3D 0,=0A=
		found =3D typeof context.getElementsByTagName !=3D=3D "undefined" ? =
context.getElementsByTagName( tag || "*" ) :=0A=
			typeof context.querySelectorAll !=3D=3D "undefined" ? =
context.querySelectorAll( tag || "*" ) :=0A=
			undefined;=0A=
=0A=
	if ( !found ) {=0A=
		for ( found =3D [], elems =3D context.childNodes || context; (elem =3D =
elems[i]) !=3D null; i++ ) {=0A=
			if ( !tag || jQuery.nodeName( elem, tag ) ) {=0A=
				found.push( elem );=0A=
			} else {=0A=
				jQuery.merge( found, getAll( elem, tag ) );=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	return tag =3D=3D=3D undefined || tag && jQuery.nodeName( context, tag =
) ?=0A=
		jQuery.merge( [ context ], found ) :=0A=
		found;=0A=
}=0A=
=0A=
// Used in buildFragment, fixes the defaultChecked property=0A=
function fixDefaultChecked( elem ) {=0A=
	if ( manipulation_rcheckableType.test( elem.type ) ) {=0A=
		elem.defaultChecked =3D elem.checked;=0A=
	}=0A=
}=0A=
=0A=
jQuery.extend({=0A=
	clone: function( elem, dataAndEvents, deepDataAndEvents ) {=0A=
		var destElements, srcElements, node, i, clone,=0A=
			inPage =3D jQuery.contains( elem.ownerDocument, elem );=0A=
=0A=
		if ( jQuery.support.html5Clone || jQuery.isXMLDoc(elem) || =
!rnoshimcache.test( "<" + elem.nodeName + ">" ) ) {=0A=
			clone =3D elem.cloneNode( true );=0A=
=0A=
		// IE<=3D8 does not properly clone detached, unknown element nodes=0A=
		} else {=0A=
			fragmentDiv.innerHTML =3D elem.outerHTML;=0A=
			fragmentDiv.removeChild( clone =3D fragmentDiv.firstChild );=0A=
		}=0A=
=0A=
		if ( (!jQuery.support.noCloneEvent || !jQuery.support.noCloneChecked) =
&&=0A=
				(elem.nodeType =3D=3D=3D 1 || elem.nodeType =3D=3D=3D 11) && =
!jQuery.isXMLDoc(elem) ) {=0A=
=0A=
			// We eschew Sizzle here for performance reasons: =
http://jsperf.com/getall-vs-sizzle/2=0A=
			destElements =3D getAll( clone );=0A=
			srcElements =3D getAll( elem );=0A=
=0A=
			// Fix all IE cloning issues=0A=
			for ( i =3D 0; (node =3D srcElements[i]) !=3D null; ++i ) {=0A=
				// Ensure that the destination node is not null; Fixes #9587=0A=
				if ( destElements[i] ) {=0A=
					fixCloneNodeIssues( node, destElements[i] );=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Copy the events from the original to the clone=0A=
		if ( dataAndEvents ) {=0A=
			if ( deepDataAndEvents ) {=0A=
				srcElements =3D srcElements || getAll( elem );=0A=
				destElements =3D destElements || getAll( clone );=0A=
=0A=
				for ( i =3D 0; (node =3D srcElements[i]) !=3D null; i++ ) {=0A=
					cloneCopyEvent( node, destElements[i] );=0A=
				}=0A=
			} else {=0A=
				cloneCopyEvent( elem, clone );=0A=
			}=0A=
		}=0A=
=0A=
		// Preserve script evaluation history=0A=
		destElements =3D getAll( clone, "script" );=0A=
		if ( destElements.length > 0 ) {=0A=
			setGlobalEval( destElements, !inPage && getAll( elem, "script" ) );=0A=
		}=0A=
=0A=
		destElements =3D srcElements =3D node =3D null;=0A=
=0A=
		// Return the cloned set=0A=
		return clone;=0A=
	},=0A=
=0A=
	buildFragment: function( elems, context, scripts, selection ) {=0A=
		var contains, elem, tag, tmp, wrap, tbody, j,=0A=
			l =3D elems.length,=0A=
=0A=
			// Ensure a safe fragment=0A=
			safe =3D createSafeFragment( context ),=0A=
=0A=
			nodes =3D [],=0A=
			i =3D 0;=0A=
=0A=
		for ( ; i < l; i++ ) {=0A=
			elem =3D elems[ i ];=0A=
=0A=
			if ( elem || elem =3D=3D=3D 0 ) {=0A=
=0A=
				// Add nodes directly=0A=
				if ( jQuery.type( elem ) =3D=3D=3D "object" ) {=0A=
					jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );=0A=
=0A=
				// Convert non-html into a text node=0A=
				} else if ( !rhtml.test( elem ) ) {=0A=
					nodes.push( context.createTextNode( elem ) );=0A=
=0A=
				// Convert html into DOM nodes=0A=
				} else {=0A=
					tmp =3D tmp || safe.appendChild( context.createElement("div") );=0A=
=0A=
					// Deserialize a standard representation=0A=
					tag =3D ( rtagName.exec( elem ) || ["", ""] )[1].toLowerCase();=0A=
					wrap =3D wrapMap[ tag ] || wrapMap._default;=0A=
=0A=
					tmp.innerHTML =3D wrap[1] + elem.replace( rxhtmlTag, "<$1></$2>" ) =
+ wrap[2];=0A=
=0A=
					// Descend through wrappers to the right content=0A=
					j =3D wrap[0];=0A=
					while ( j-- ) {=0A=
						tmp =3D tmp.lastChild;=0A=
					}=0A=
=0A=
					// Manually add leading whitespace removed by IE=0A=
					if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( =
elem ) ) {=0A=
						nodes.push( context.createTextNode( rleadingWhitespace.exec( elem =
)[0] ) );=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=
						elem =3D tag =3D=3D=3D "table" && !rtbody.test( elem ) ?=0A=
							tmp.firstChild :=0A=
=0A=
							// String was a bare <thead> or <tfoot>=0A=
							wrap[1] =3D=3D=3D "<table>" && !rtbody.test( elem ) ?=0A=
								tmp :=0A=
								0;=0A=
=0A=
						j =3D elem && elem.childNodes.length;=0A=
						while ( j-- ) {=0A=
							if ( jQuery.nodeName( (tbody =3D elem.childNodes[j]), "tbody" ) =
&& !tbody.childNodes.length ) {=0A=
								elem.removeChild( tbody );=0A=
							}=0A=
						}=0A=
					}=0A=
=0A=
					jQuery.merge( nodes, tmp.childNodes );=0A=
=0A=
					// Fix #12392 for WebKit and IE > 9=0A=
					tmp.textContent =3D "";=0A=
=0A=
					// Fix #12392 for oldIE=0A=
					while ( tmp.firstChild ) {=0A=
						tmp.removeChild( tmp.firstChild );=0A=
					}=0A=
=0A=
					// Remember the top-level container for proper cleanup=0A=
					tmp =3D safe.lastChild;=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Fix #11356: Clear elements from fragment=0A=
		if ( tmp ) {=0A=
			safe.removeChild( tmp );=0A=
		}=0A=
=0A=
		// Reset defaultChecked for any radios and checkboxes=0A=
		// about to be appended to the DOM in IE 6/7 (#8060)=0A=
		if ( !jQuery.support.appendChecked ) {=0A=
			jQuery.grep( getAll( nodes, "input" ), fixDefaultChecked );=0A=
		}=0A=
=0A=
		i =3D 0;=0A=
		while ( (elem =3D nodes[ i++ ]) ) {=0A=
=0A=
			// #4087 - If origin and destination elements are the same, and this =
is=0A=
			// that element, do not do anything=0A=
			if ( selection && jQuery.inArray( elem, selection ) !=3D=3D -1 ) {=0A=
				continue;=0A=
			}=0A=
=0A=
			contains =3D jQuery.contains( elem.ownerDocument, elem );=0A=
=0A=
			// Append to fragment=0A=
			tmp =3D getAll( safe.appendChild( elem ), "script" );=0A=
=0A=
			// Preserve script evaluation history=0A=
			if ( contains ) {=0A=
				setGlobalEval( tmp );=0A=
			}=0A=
=0A=
			// Capture executables=0A=
			if ( scripts ) {=0A=
				j =3D 0;=0A=
				while ( (elem =3D tmp[ j++ ]) ) {=0A=
					if ( rscriptType.test( elem.type || "" ) ) {=0A=
						scripts.push( elem );=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		tmp =3D null;=0A=
=0A=
		return safe;=0A=
	},=0A=
=0A=
	cleanData: function( elems, /* internal */ acceptData ) {=0A=
		var data, id, elem, type,=0A=
			i =3D 0,=0A=
			internalKey =3D jQuery.expando,=0A=
			cache =3D jQuery.cache,=0A=
			deleteExpando =3D jQuery.support.deleteExpando,=0A=
			special =3D jQuery.event.special;=0A=
=0A=
		for ( ; (elem =3D elems[i]) !=3D null; i++ ) {=0A=
=0A=
			if ( acceptData || jQuery.acceptData( elem ) ) {=0A=
=0A=
				id =3D elem[ internalKey ];=0A=
				data =3D id && cache[ id ];=0A=
=0A=
				if ( data ) {=0A=
					if ( data.events ) {=0A=
						for ( type in data.events ) {=0A=
							if ( special[ type ] ) {=0A=
								jQuery.event.remove( elem, type );=0A=
=0A=
							// This is a shortcut to avoid jQuery.event.remove's overhead=0A=
							} else {=0A=
								jQuery.removeEvent( elem, type, data.handle );=0A=
							}=0A=
						}=0A=
					}=0A=
=0A=
					// Remove cache only if it was not already removed by =
jQuery.event.remove=0A=
					if ( cache[ id ] ) {=0A=
=0A=
						delete cache[ id ];=0A=
=0A=
						// IE does not allow us to delete expando properties from nodes,=0A=
						// nor does it have a removeAttribute function on Document nodes;=0A=
						// we must handle all of these cases=0A=
						if ( deleteExpando ) {=0A=
							delete elem[ internalKey ];=0A=
=0A=
						} else if ( typeof elem.removeAttribute !=3D=3D "undefined" ) {=0A=
							elem.removeAttribute( internalKey );=0A=
=0A=
						} else {=0A=
							elem[ internalKey ] =3D null;=0A=
						}=0A=
=0A=
						core_deletedIds.push( id );=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
});=0A=
var curCSS, getStyles, iframe,=0A=
	ralpha =3D /alpha\([^)]*\)/i,=0A=
	ropacity =3D /opacity\s*=3D\s*([^)]*)/,=0A=
	rposition =3D /^(top|right|bottom|left)$/,=0A=
	// swappable if display is none or starts with table except "table", =
"table-cell", or "table-caption"=0A=
	// see here for display values: =
https://developer.mozilla.org/en-US/docs/CSS/display=0A=
	rdisplayswap =3D /^(none|table(?!-c[ea]).+)/,=0A=
	rmargin =3D /^margin/,=0A=
	rnumsplit =3D new RegExp( "^(" + core_pnum + ")(.*)$", "i" ),=0A=
	rnumnonpx =3D new RegExp( "^(" + core_pnum + ")(?!px)[a-z%]+$", "i" ),=0A=
	rrelNum =3D new RegExp( "^([+-])=3D(" + core_pnum + ")", "i" ),=0A=
	elemdisplay =3D { BODY: "block" },=0A=
=0A=
	cssShow =3D { position: "absolute", visibility: "hidden", display: =
"block" },=0A=
	cssNormalTransform =3D {=0A=
		letterSpacing: 0,=0A=
		fontWeight: 400=0A=
	},=0A=
=0A=
	cssExpand =3D [ "Top", "Right", "Bottom", "Left" ],=0A=
	cssPrefixes =3D [ "Webkit", "O", "Moz", "ms" ];=0A=
=0A=
// return a css property mapped to a potentially vendor prefixed property=0A=
function vendorPropName( style, name ) {=0A=
=0A=
	// shortcut for names that are not vendor prefixed=0A=
	if ( name in style ) {=0A=
		return name;=0A=
	}=0A=
=0A=
	// check for vendor prefixed names=0A=
	var capName =3D name.charAt(0).toUpperCase() + name.slice(1),=0A=
		origName =3D name,=0A=
		i =3D cssPrefixes.length;=0A=
=0A=
	while ( i-- ) {=0A=
		name =3D cssPrefixes[ i ] + capName;=0A=
		if ( name in style ) {=0A=
			return name;=0A=
		}=0A=
	}=0A=
=0A=
	return origName;=0A=
}=0A=
=0A=
function isHidden( elem, el ) {=0A=
	// isHidden might be called from jQuery#filter function;=0A=
	// in that case, element will be second argument=0A=
	elem =3D el || elem;=0A=
	return jQuery.css( elem, "display" ) =3D=3D=3D "none" || =
!jQuery.contains( elem.ownerDocument, elem );=0A=
}=0A=
=0A=
function showHide( elements, show ) {=0A=
	var elem,=0A=
		values =3D [],=0A=
		index =3D 0,=0A=
		length =3D elements.length;=0A=
=0A=
	for ( ; index < length; index++ ) {=0A=
		elem =3D elements[ index ];=0A=
		if ( !elem.style ) {=0A=
			continue;=0A=
		}=0A=
		values[ index ] =3D jQuery._data( elem, "olddisplay" );=0A=
		if ( show ) {=0A=
			// Reset the inline display of this element to learn if it is=0A=
			// being hidden by cascaded rules or not=0A=
			if ( !values[ index ] && elem.style.display =3D=3D=3D "none" ) {=0A=
				elem.style.display =3D "";=0A=
			}=0A=
=0A=
			// Set elements which have been overridden with display: none=0A=
			// in a stylesheet to whatever the default browser style is=0A=
			// for such an element=0A=
			if ( elem.style.display =3D=3D=3D "" && isHidden( elem ) ) {=0A=
				values[ index ] =3D jQuery._data( elem, "olddisplay", =
css_defaultDisplay(elem.nodeName) );=0A=
			}=0A=
		} else if ( !values[ index ] && !isHidden( elem ) ) {=0A=
			jQuery._data( elem, "olddisplay", jQuery.css( elem, "display" ) );=0A=
		}=0A=
	}=0A=
=0A=
	// Set the display of most of the elements in a second loop=0A=
	// to avoid the constant reflow=0A=
	for ( index =3D 0; index < length; index++ ) {=0A=
		elem =3D elements[ index ];=0A=
		if ( !elem.style ) {=0A=
			continue;=0A=
		}=0A=
		if ( !show || elem.style.display =3D=3D=3D "none" || =
elem.style.display =3D=3D=3D "" ) {=0A=
			elem.style.display =3D show ? values[ index ] || "" : "none";=0A=
		}=0A=
	}=0A=
=0A=
	return elements;=0A=
}=0A=
=0A=
jQuery.fn.extend({=0A=
	css: function( name, value ) {=0A=
		return jQuery.access( this, function( elem, name, value ) {=0A=
			var styles, len,=0A=
				map =3D {},=0A=
				i =3D 0;=0A=
=0A=
			if ( jQuery.isArray( name ) ) {=0A=
				styles =3D getStyles( elem );=0A=
				len =3D name.length;=0A=
=0A=
				for ( ; i < len; i++ ) {=0A=
					map[ name[ i ] ] =3D jQuery.css( elem, name[ i ], false, styles );=0A=
				}=0A=
=0A=
				return map;=0A=
			}=0A=
=0A=
			return value !=3D=3D undefined ?=0A=
				jQuery.style( elem, name, value ) :=0A=
				jQuery.css( elem, name );=0A=
		}, name, value, arguments.length > 1 );=0A=
	},=0A=
	show: function() {=0A=
		return showHide( this, true );=0A=
	},=0A=
	hide: function() {=0A=
		return showHide( this );=0A=
	},=0A=
	toggle: function( state ) {=0A=
		var bool =3D typeof state =3D=3D=3D "boolean";=0A=
=0A=
		return this.each(function() {=0A=
			if ( bool ? state : isHidden( this ) ) {=0A=
				jQuery( this ).show();=0A=
			} else {=0A=
				jQuery( this ).hide();=0A=
			}=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
jQuery.extend({=0A=
	// Add in style property hooks for overriding the default=0A=
	// behavior of getting and setting a style property=0A=
	cssHooks: {=0A=
		opacity: {=0A=
			get: function( elem, computed ) {=0A=
				if ( computed ) {=0A=
					// We should always get a number back from opacity=0A=
					var ret =3D curCSS( elem, "opacity" );=0A=
					return ret =3D=3D=3D "" ? "1" : ret;=0A=
				}=0A=
			}=0A=
		}=0A=
	},=0A=
=0A=
	// Exclude the following css properties to add px=0A=
	cssNumber: {=0A=
		"columnCount": true,=0A=
		"fillOpacity": true,=0A=
		"fontWeight": true,=0A=
		"lineHeight": true,=0A=
		"opacity": true,=0A=
		"orphans": true,=0A=
		"widows": true,=0A=
		"zIndex": true,=0A=
		"zoom": true=0A=
	},=0A=
=0A=
	// Add in properties whose names you wish to fix before=0A=
	// setting or getting the value=0A=
	cssProps: {=0A=
		// normalize float css property=0A=
		"float": jQuery.support.cssFloat ? "cssFloat" : "styleFloat"=0A=
	},=0A=
=0A=
	// Get and set the style property on a DOM Node=0A=
	style: function( elem, name, value, extra ) {=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 =
|| !elem.style ) {=0A=
			return;=0A=
		}=0A=
=0A=
		// Make sure that we're working with the right name=0A=
		var ret, type, hooks,=0A=
			origName =3D jQuery.camelCase( name ),=0A=
			style =3D elem.style;=0A=
=0A=
		name =3D jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] =
=3D vendorPropName( style, origName ) );=0A=
=0A=
		// gets hook for the prefixed version=0A=
		// followed by the unprefixed version=0A=
		hooks =3D jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];=0A=
=0A=
		// Check if we're setting a value=0A=
		if ( value !=3D=3D undefined ) {=0A=
			type =3D typeof value;=0A=
=0A=
			// convert relative number strings (+=3D or -=3D) to relative =
numbers. #7345=0A=
			if ( type =3D=3D=3D "string" && (ret =3D rrelNum.exec( value )) ) {=0A=
				value =3D ( ret[1] + 1 ) * ret[2] + parseFloat( jQuery.css( elem, =
name ) );=0A=
				// Fixes bug #9237=0A=
				type =3D "number";=0A=
			}=0A=
=0A=
			// Make sure that NaN and null values aren't set. See: #7116=0A=
			if ( value =3D=3D null || type =3D=3D=3D "number" && isNaN( value ) ) =
{=0A=
				return;=0A=
			}=0A=
=0A=
			// If a number was passed in, add 'px' to the (except for certain CSS =
properties)=0A=
			if ( type =3D=3D=3D "number" && !jQuery.cssNumber[ origName ] ) {=0A=
				value +=3D "px";=0A=
			}=0A=
=0A=
			// Fixes #8908, it can be done more correctly by specifing setters in =
cssHooks,=0A=
			// but it would mean to define eight (for every problematic property) =
identical functions=0A=
			if ( !jQuery.support.clearCloneStyle && value =3D=3D=3D "" && =
name.indexOf("background") =3D=3D=3D 0 ) {=0A=
				style[ name ] =3D "inherit";=0A=
			}=0A=
=0A=
			// If a hook was provided, use that value, otherwise just set the =
specified value=0A=
			if ( !hooks || !("set" in hooks) || (value =3D hooks.set( elem, =
value, extra )) !=3D=3D undefined ) {=0A=
=0A=
				// Wrapped to prevent IE from throwing errors when 'invalid' values =
are provided=0A=
				// Fixes bug #5509=0A=
				try {=0A=
					style[ name ] =3D value;=0A=
				} catch(e) {}=0A=
			}=0A=
=0A=
		} else {=0A=
			// If a hook was provided get the non-computed value from there=0A=
			if ( hooks && "get" in hooks && (ret =3D hooks.get( elem, false, =
extra )) !=3D=3D undefined ) {=0A=
				return ret;=0A=
			}=0A=
=0A=
			// Otherwise just get the value from the style object=0A=
			return style[ name ];=0A=
		}=0A=
	},=0A=
=0A=
	css: function( elem, name, extra, styles ) {=0A=
		var val, num, hooks,=0A=
			origName =3D jQuery.camelCase( name );=0A=
=0A=
		// Make sure that we're working with the right name=0A=
		name =3D jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] =
=3D vendorPropName( elem.style, origName ) );=0A=
=0A=
		// gets hook for the prefixed version=0A=
		// followed by the unprefixed version=0A=
		hooks =3D jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];=0A=
=0A=
		// If a hook was provided get the computed value from there=0A=
		if ( hooks && "get" in hooks ) {=0A=
			val =3D hooks.get( elem, true, extra );=0A=
		}=0A=
=0A=
		// Otherwise, if a way to get the computed value exists, use that=0A=
		if ( val =3D=3D=3D undefined ) {=0A=
			val =3D curCSS( elem, name, styles );=0A=
		}=0A=
=0A=
		//convert "normal" to computed value=0A=
		if ( val =3D=3D=3D "normal" && name in cssNormalTransform ) {=0A=
			val =3D cssNormalTransform[ name ];=0A=
		}=0A=
=0A=
		// Return, converting to number if forced or a qualifier was provided =
and val looks numeric=0A=
		if ( extra ) {=0A=
			num =3D parseFloat( val );=0A=
			return extra =3D=3D=3D true || jQuery.isNumeric( num ) ? num || 0 : =
val;=0A=
		}=0A=
		return val;=0A=
	},=0A=
=0A=
	// A method for quickly swapping in/out CSS properties to get correct =
calculations=0A=
	swap: function( elem, options, callback, args ) {=0A=
		var ret, name,=0A=
			old =3D {};=0A=
=0A=
		// Remember the old values, and insert the new ones=0A=
		for ( name in options ) {=0A=
			old[ name ] =3D elem.style[ name ];=0A=
			elem.style[ name ] =3D options[ name ];=0A=
		}=0A=
=0A=
		ret =3D callback.apply( elem, args || [] );=0A=
=0A=
		// Revert the old values=0A=
		for ( name in options ) {=0A=
			elem.style[ name ] =3D old[ name ];=0A=
		}=0A=
=0A=
		return ret;=0A=
	}=0A=
});=0A=
=0A=
// NOTE: we've included the "window" in window.getComputedStyle=0A=
// because jsdom on node.js will break without it.=0A=
if ( window.getComputedStyle ) {=0A=
	getStyles =3D function( elem ) {=0A=
		return window.getComputedStyle( elem, null );=0A=
	};=0A=
=0A=
	curCSS =3D function( elem, name, _computed ) {=0A=
		var width, minWidth, maxWidth,=0A=
			computed =3D _computed || getStyles( elem ),=0A=
=0A=
			// getPropertyValue is only needed for .css('filter') in IE9, see =
#12537=0A=
			ret =3D computed ? computed.getPropertyValue( name ) || computed[ =
name ] : undefined,=0A=
			style =3D elem.style;=0A=
=0A=
		if ( computed ) {=0A=
=0A=
			if ( ret =3D=3D=3D "" && !jQuery.contains( elem.ownerDocument, elem ) =
) {=0A=
				ret =3D jQuery.style( elem, name );=0A=
			}=0A=
=0A=
			// A tribute to the "awesome hack by Dean Edwards"=0A=
			// Chrome < 17 and Safari 5.0 uses "computed value" instead of "used =
value" for margin-right=0A=
			// Safari 5.1.7 (at least) returns percentage for a larger set of =
values, but width seems to be reliably pixels=0A=
			// this is against the CSSOM draft spec: =
http://dev.w3.org/csswg/cssom/#resolved-values=0A=
			if ( rnumnonpx.test( ret ) && rmargin.test( name ) ) {=0A=
=0A=
				// Remember the original values=0A=
				width =3D style.width;=0A=
				minWidth =3D style.minWidth;=0A=
				maxWidth =3D style.maxWidth;=0A=
=0A=
				// Put in the new values to get a computed value out=0A=
				style.minWidth =3D style.maxWidth =3D style.width =3D ret;=0A=
				ret =3D computed.width;=0A=
=0A=
				// Revert the changed values=0A=
				style.width =3D width;=0A=
				style.minWidth =3D minWidth;=0A=
				style.maxWidth =3D maxWidth;=0A=
			}=0A=
		}=0A=
=0A=
		return ret;=0A=
	};=0A=
} else if ( document.documentElement.currentStyle ) {=0A=
	getStyles =3D function( elem ) {=0A=
		return elem.currentStyle;=0A=
	};=0A=
=0A=
	curCSS =3D function( elem, name, _computed ) {=0A=
		var left, rs, rsLeft,=0A=
			computed =3D _computed || getStyles( elem ),=0A=
			ret =3D computed ? computed[ name ] : undefined,=0A=
			style =3D elem.style;=0A=
=0A=
		// Avoid setting ret to empty string here=0A=
		// so we don't default to auto=0A=
		if ( ret =3D=3D null && style && style[ name ] ) {=0A=
			ret =3D style[ name ];=0A=
		}=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=
		// but not position css attributes, as those are proportional to the =
parent element instead=0A=
		// and we can't measure the parent instead because it might trigger a =
"stacking dolls" problem=0A=
		if ( rnumnonpx.test( ret ) && !rposition.test( name ) ) {=0A=
=0A=
			// Remember the original values=0A=
			left =3D style.left;=0A=
			rs =3D elem.runtimeStyle;=0A=
			rsLeft =3D rs && rs.left;=0A=
=0A=
			// Put in the new values to get a computed value out=0A=
			if ( rsLeft ) {=0A=
				rs.left =3D elem.currentStyle.left;=0A=
			}=0A=
			style.left =3D name =3D=3D=3D "fontSize" ? "1em" : ret;=0A=
			ret =3D style.pixelLeft + "px";=0A=
=0A=
			// Revert the changed values=0A=
			style.left =3D left;=0A=
			if ( rsLeft ) {=0A=
				rs.left =3D rsLeft;=0A=
			}=0A=
		}=0A=
=0A=
		return ret =3D=3D=3D "" ? "auto" : ret;=0A=
	};=0A=
}=0A=
=0A=
function setPositiveNumber( elem, value, subtract ) {=0A=
	var matches =3D rnumsplit.exec( value );=0A=
	return matches ?=0A=
		// Guard against undefined "subtract", e.g., when used as in cssHooks=0A=
		Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || =
"px" ) :=0A=
		value;=0A=
}=0A=
=0A=
function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {=0A=
	var i =3D extra =3D=3D=3D ( isBorderBox ? "border" : "content" ) ?=0A=
		// If we already have the right measurement, avoid augmentation=0A=
		4 :=0A=
		// Otherwise initialize for horizontal or vertical properties=0A=
		name =3D=3D=3D "width" ? 1 : 0,=0A=
=0A=
		val =3D 0;=0A=
=0A=
	for ( ; i < 4; i +=3D 2 ) {=0A=
		// both box models exclude margin, so add it if we want it=0A=
		if ( extra =3D=3D=3D "margin" ) {=0A=
			val +=3D jQuery.css( elem, extra + cssExpand[ i ], true, styles );=0A=
		}=0A=
=0A=
		if ( isBorderBox ) {=0A=
			// border-box includes padding, so remove it if we want content=0A=
			if ( extra =3D=3D=3D "content" ) {=0A=
				val -=3D jQuery.css( elem, "padding" + cssExpand[ i ], true, styles =
);=0A=
			}=0A=
=0A=
			// at this point, extra isn't border nor margin, so remove border=0A=
			if ( extra !=3D=3D "margin" ) {=0A=
				val -=3D jQuery.css( elem, "border" + cssExpand[ i ] + "Width", =
true, styles );=0A=
			}=0A=
		} else {=0A=
			// at this point, extra isn't content, so add padding=0A=
			val +=3D jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );=0A=
=0A=
			// at this point, extra isn't content nor padding, so add border=0A=
			if ( extra !=3D=3D "padding" ) {=0A=
				val +=3D jQuery.css( elem, "border" + cssExpand[ i ] + "Width", =
true, styles );=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	return val;=0A=
}=0A=
=0A=
function getWidthOrHeight( elem, name, extra ) {=0A=
=0A=
	// Start with offset property, which is equivalent to the border-box =
value=0A=
	var valueIsBorderBox =3D true,=0A=
		val =3D name =3D=3D=3D "width" ? elem.offsetWidth : elem.offsetHeight,=0A=
		styles =3D getStyles( elem ),=0A=
		isBorderBox =3D jQuery.support.boxSizing && jQuery.css( elem, =
"boxSizing", false, styles ) =3D=3D=3D "border-box";=0A=
=0A=
	// some non-html elements return undefined for offsetWidth, so check =
for null/undefined=0A=
	// svg - https://bugzilla.mozilla.org/show_bug.cgi?id=3D649285=0A=
	// MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=3D491668=0A=
	if ( val <=3D 0 || val =3D=3D null ) {=0A=
		// Fall back to computed then uncomputed css if necessary=0A=
		val =3D curCSS( elem, name, styles );=0A=
		if ( val < 0 || val =3D=3D null ) {=0A=
			val =3D elem.style[ name ];=0A=
		}=0A=
=0A=
		// Computed unit is not pixels. Stop here and return.=0A=
		if ( rnumnonpx.test(val) ) {=0A=
			return val;=0A=
		}=0A=
=0A=
		// we need the check for style in case a browser which returns =
unreliable values=0A=
		// for getComputedStyle silently falls back to the reliable elem.style=0A=
		valueIsBorderBox =3D isBorderBox && ( jQuery.support.boxSizingReliable =
|| val =3D=3D=3D elem.style[ name ] );=0A=
=0A=
		// Normalize "", auto, and prepare for extra=0A=
		val =3D parseFloat( val ) || 0;=0A=
	}=0A=
=0A=
	// use the active box-sizing model to add/subtract irrelevant styles=0A=
	return ( val +=0A=
		augmentWidthOrHeight(=0A=
			elem,=0A=
			name,=0A=
			extra || ( isBorderBox ? "border" : "content" ),=0A=
			valueIsBorderBox,=0A=
			styles=0A=
		)=0A=
	) + "px";=0A=
}=0A=
=0A=
// Try to determine the default display value of an element=0A=
function css_defaultDisplay( nodeName ) {=0A=
	var doc =3D document,=0A=
		display =3D elemdisplay[ nodeName ];=0A=
=0A=
	if ( !display ) {=0A=
		display =3D actualDisplay( nodeName, doc );=0A=
=0A=
		// If the simple way fails, read from inside an iframe=0A=
		if ( display =3D=3D=3D "none" || !display ) {=0A=
			// Use the already-created iframe if possible=0A=
			iframe =3D ( iframe ||=0A=
				jQuery("<iframe frameborder=3D'0' width=3D'0' height=3D'0'/>")=0A=
				.css( "cssText", "display:block !important" )=0A=
			).appendTo( doc.documentElement );=0A=
=0A=
			// Always write a new HTML skeleton so Webkit and Firefox don't choke =
on reuse=0A=
			doc =3D ( iframe[0].contentWindow || iframe[0].contentDocument =
).document;=0A=
			doc.write("<!doctype html><html><body>");=0A=
			doc.close();=0A=
=0A=
			display =3D actualDisplay( nodeName, doc );=0A=
			iframe.detach();=0A=
		}=0A=
=0A=
		// Store the correct default display=0A=
		elemdisplay[ nodeName ] =3D display;=0A=
	}=0A=
=0A=
	return display;=0A=
}=0A=
=0A=
// Called ONLY from within css_defaultDisplay=0A=
function actualDisplay( name, doc ) {=0A=
	var elem =3D jQuery( doc.createElement( name ) ).appendTo( doc.body ),=0A=
		display =3D jQuery.css( elem[0], "display" );=0A=
	elem.remove();=0A=
	return display;=0A=
}=0A=
=0A=
jQuery.each([ "height", "width" ], function( i, name ) {=0A=
	jQuery.cssHooks[ name ] =3D {=0A=
		get: function( elem, computed, extra ) {=0A=
			if ( computed ) {=0A=
				// certain elements can have dimension info if we invisibly show them=0A=
				// however, it must have a current display style that would benefit =
from this=0A=
				return elem.offsetWidth =3D=3D=3D 0 && rdisplayswap.test( =
jQuery.css( elem, "display" ) ) ?=0A=
					jQuery.swap( elem, cssShow, function() {=0A=
						return getWidthOrHeight( elem, name, extra );=0A=
					}) :=0A=
					getWidthOrHeight( elem, name, extra );=0A=
			}=0A=
		},=0A=
=0A=
		set: function( elem, value, extra ) {=0A=
			var styles =3D extra && getStyles( elem );=0A=
			return setPositiveNumber( elem, value, extra ?=0A=
				augmentWidthOrHeight(=0A=
					elem,=0A=
					name,=0A=
					extra,=0A=
					jQuery.support.boxSizing && jQuery.css( elem, "boxSizing", false, =
styles ) =3D=3D=3D "border-box",=0A=
					styles=0A=
				) : 0=0A=
			);=0A=
		}=0A=
	};=0A=
});=0A=
=0A=
if ( !jQuery.support.opacity ) {=0A=
	jQuery.cssHooks.opacity =3D {=0A=
		get: function( elem, computed ) {=0A=
			// IE uses filters for opacity=0A=
			return ropacity.test( (computed && elem.currentStyle ? =
elem.currentStyle.filter : elem.style.filter) || "" ) ?=0A=
				( 0.01 * parseFloat( RegExp.$1 ) ) + "" :=0A=
				computed ? "1" : "";=0A=
		},=0A=
=0A=
		set: function( elem, value ) {=0A=
			var style =3D elem.style,=0A=
				currentStyle =3D elem.currentStyle,=0A=
				opacity =3D jQuery.isNumeric( value ) ? "alpha(opacity=3D" + value * =
100 + ")" : "",=0A=
				filter =3D currentStyle && currentStyle.filter || style.filter || "";=0A=
=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=
			// if setting opacity to 1, and no other filters exist - attempt to =
remove filter attribute #6652=0A=
			// if value =3D=3D=3D "", then remove inline opacity #12685=0A=
			if ( ( value >=3D 1 || value =3D=3D=3D "" ) &&=0A=
					jQuery.trim( filter.replace( ralpha, "" ) ) =3D=3D=3D "" &&=0A=
					style.removeAttribute ) {=0A=
=0A=
				// Setting style.filter to null, "" & " " still leave "filter:" in =
the cssText=0A=
				// if "filter:" is present at all, clearType is disabled, we want to =
avoid this=0A=
				// style.removeAttribute is IE Only, but so apparently is this code =
path...=0A=
				style.removeAttribute( "filter" );=0A=
=0A=
				// if there is no filter style applied in a css rule or unset inline =
opacity, we are done=0A=
				if ( value =3D=3D=3D "" || currentStyle && !currentStyle.filter ) {=0A=
					return;=0A=
				}=0A=
			}=0A=
=0A=
			// otherwise, set new filter values=0A=
			style.filter =3D ralpha.test( filter ) ?=0A=
				filter.replace( ralpha, opacity ) :=0A=
				filter + " " + opacity;=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// These hooks cannot be added until DOM ready because the support test=0A=
// for it is not run until after DOM ready=0A=
jQuery(function() {=0A=
	if ( !jQuery.support.reliableMarginRight ) {=0A=
		jQuery.cssHooks.marginRight =3D {=0A=
			get: function( elem, computed ) {=0A=
				if ( computed ) {=0A=
					// WebKit Bug 13343 - getComputedStyle returns wrong value for =
margin-right=0A=
					// Work around by temporarily setting element display to =
inline-block=0A=
					return jQuery.swap( elem, { "display": "inline-block" },=0A=
						curCSS, [ elem, "marginRight" ] );=0A=
				}=0A=
			}=0A=
		};=0A=
	}=0A=
=0A=
	// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=3D29084=0A=
	// getComputedStyle returns percent when specified for =
top/left/bottom/right=0A=
	// rather than make the css module depend on the offset module, we just =
check for it here=0A=
	if ( !jQuery.support.pixelPosition && jQuery.fn.position ) {=0A=
		jQuery.each( [ "top", "left" ], function( i, prop ) {=0A=
			jQuery.cssHooks[ prop ] =3D {=0A=
				get: function( elem, computed ) {=0A=
					if ( computed ) {=0A=
						computed =3D curCSS( elem, prop );=0A=
						// if curCSS returns percentage, fallback to offset=0A=
						return rnumnonpx.test( computed ) ?=0A=
							jQuery( elem ).position()[ prop ] + "px" :=0A=
							computed;=0A=
					}=0A=
				}=0A=
			};=0A=
		});=0A=
	}=0A=
=0A=
});=0A=
=0A=
if ( jQuery.expr && jQuery.expr.filters ) {=0A=
	jQuery.expr.filters.hidden =3D function( elem ) {=0A=
		return ( elem.offsetWidth =3D=3D=3D 0 && elem.offsetHeight =3D=3D=3D 0 =
) || (!jQuery.support.reliableHiddenOffsets && ((elem.style && =
elem.style.display) || jQuery.css( 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=
=0A=
// These hooks are used by animate to expand properties=0A=
jQuery.each({=0A=
	margin: "",=0A=
	padding: "",=0A=
	border: "Width"=0A=
}, function( prefix, suffix ) {=0A=
	jQuery.cssHooks[ prefix + suffix ] =3D {=0A=
		expand: function( value ) {=0A=
			var i =3D 0,=0A=
				expanded =3D {},=0A=
=0A=
				// assumes a single number if not a string=0A=
				parts =3D typeof value =3D=3D=3D "string" ? value.split(" ") : [ =
value ];=0A=
=0A=
			for ( ; i < 4; i++ ) {=0A=
				expanded[ prefix + cssExpand[ i ] + suffix ] =3D=0A=
					parts[ i ] || parts[ i - 2 ] || parts[ 0 ];=0A=
			}=0A=
=0A=
			return expanded;=0A=
		}=0A=
	};=0A=
=0A=
	if ( !rmargin.test( prefix ) ) {=0A=
		jQuery.cssHooks[ prefix + suffix ].set =3D setPositiveNumber;=0A=
	}=0A=
});=0A=
var r20 =3D /%20/g,=0A=
	rbracket =3D /\[\]$/,=0A=
	rCRLF =3D /\r?\n/g,=0A=
	rsubmitterTypes =3D /^(?:submit|button|image|reset)$/i,=0A=
	rsubmittable =3D /^(?:input|select|textarea|keygen)/i;=0A=
=0A=
jQuery.fn.extend({=0A=
	serialize: function() {=0A=
		return jQuery.param( this.serializeArray() );=0A=
	},=0A=
	serializeArray: function() {=0A=
		return this.map(function(){=0A=
			// Can add propHook for "elements" to filter or add form elements=0A=
			var elements =3D jQuery.prop( this, "elements" );=0A=
			return elements ? jQuery.makeArray( elements ) : this;=0A=
		})=0A=
		.filter(function(){=0A=
			var type =3D this.type;=0A=
			// Use .is(":disabled") so that fieldset[disabled] works=0A=
			return this.name && !jQuery( this ).is( ":disabled" ) &&=0A=
				rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) =
&&=0A=
				( this.checked || !manipulation_rcheckableType.test( 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 ){=0A=
						return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };=0A=
					}) :=0A=
					{ name: elem.name, value: val.replace( rCRLF, "\r\n" ) };=0A=
		}).get();=0A=
	}=0A=
});=0A=
=0A=
//Serialize an array of form elements or a set of=0A=
//key/values into a query string=0A=
jQuery.param =3D function( a, traditional ) {=0A=
	var prefix,=0A=
		s =3D [],=0A=
		add =3D function( key, value ) {=0A=
			// If value is a function, invoke it and return its value=0A=
			value =3D jQuery.isFunction( value ) ? value() : ( value =3D=3D null =
? "" : value );=0A=
			s[ s.length ] =3D encodeURIComponent( key ) + "=3D" + =
encodeURIComponent( value );=0A=
		};=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 && 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 && !jQuery.isPlainObject( a ) ) =
) {=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 ( prefix in a ) {=0A=
			buildParams( prefix, a[ prefix ], traditional, add );=0A=
		}=0A=
	}=0A=
=0A=
	// Return the resulting serialization=0A=
	return s.join( "&" ).replace( r20, "+" );=0A=
};=0A=
=0A=
function buildParams( prefix, obj, traditional, add ) {=0A=
	var name;=0A=
=0A=
	if ( jQuery.isArray( obj ) ) {=0A=
		// Serialize array item.=0A=
		jQuery.each( obj, function( i, v ) {=0A=
			if ( traditional || rbracket.test( prefix ) ) {=0A=
				// Treat each array item as a scalar.=0A=
				add( prefix, v );=0A=
=0A=
			} else {=0A=
				// Item is non-scalar (array or object), encode its numeric index.=0A=
				buildParams( prefix + "[" + ( typeof v =3D=3D=3D "object" ? i : "" ) =
+ "]", v, traditional, add );=0A=
			}=0A=
		});=0A=
=0A=
	} else if ( !traditional && jQuery.type( obj ) =3D=3D=3D "object" ) {=0A=
		// Serialize object item.=0A=
		for ( name in obj ) {=0A=
			buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add =
);=0A=
		}=0A=
=0A=
	} else {=0A=
		// Serialize scalar item.=0A=
		add( prefix, obj );=0A=
	}=0A=
}=0A=
var=0A=
	// Document location=0A=
	ajaxLocParts,=0A=
	ajaxLocation,=0A=
	=0A=
	ajax_nonce =3D jQuery.now(),=0A=
=0A=
	ajax_rquery =3D /\?/,=0A=
	rhash =3D /#.*$/,=0A=
	rts =3D /([?&])_=3D[^&]*/,=0A=
	rheaders =3D /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r =
character at EOL=0A=
	// #7653, #8125, #8152: local protocol detection=0A=
	rlocalProtocol =3D =
/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,=0A=
	rnoContent =3D /^(?:GET|HEAD)$/,=0A=
	rprotocol =3D /^\/\//,=0A=
	rurl =3D /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,=0A=
=0A=
	// Keep a copy of the old load method=0A=
	_load =3D jQuery.fn.load,=0A=
=0A=
	/* Prefilters=0A=
	 * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js =
for an example)=0A=
	 * 2) These are called:=0A=
	 *    - BEFORE asking for a transport=0A=
	 *    - AFTER param serialization (s.data is a string if s.processData =
is true)=0A=
	 * 3) key is the dataType=0A=
	 * 4) the catchall symbol "*" can be used=0A=
	 * 5) execution will start with transport dataType and THEN continue =
down to "*" if needed=0A=
	 */=0A=
	prefilters =3D {},=0A=
=0A=
	/* Transports bindings=0A=
	 * 1) key is the dataType=0A=
	 * 2) the catchall symbol "*" can be used=0A=
	 * 3) selection will start with transport dataType and THEN go to "*" =
if needed=0A=
	 */=0A=
	transports =3D {},=0A=
=0A=
	// Avoid comment-prolog char sequence (#10098); must appease lint and =
evade compression=0A=
	allTypes =3D "*/".concat("*");=0A=
=0A=
// #8138, IE may throw an exception when accessing=0A=
// a field from window.location if document.domain has been set=0A=
try {=0A=
	ajaxLocation =3D location.href;=0A=
} catch( e ) {=0A=
	// Use the href attribute of an A element=0A=
	// since IE will modify it given document.location=0A=
	ajaxLocation =3D document.createElement( "a" );=0A=
	ajaxLocation.href =3D "";=0A=
	ajaxLocation =3D ajaxLocation.href;=0A=
}=0A=
=0A=
// Segment location into parts=0A=
ajaxLocParts =3D rurl.exec( ajaxLocation.toLowerCase() ) || [];=0A=
=0A=
// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport=0A=
function addToPrefiltersOrTransports( structure ) {=0A=
=0A=
	// dataTypeExpression is optional and defaults to "*"=0A=
	return function( dataTypeExpression, func ) {=0A=
=0A=
		if ( typeof dataTypeExpression !=3D=3D "string" ) {=0A=
			func =3D dataTypeExpression;=0A=
			dataTypeExpression =3D "*";=0A=
		}=0A=
=0A=
		var dataType,=0A=
			i =3D 0,=0A=
			dataTypes =3D dataTypeExpression.toLowerCase().match( core_rnotwhite =
) || [];=0A=
=0A=
		if ( jQuery.isFunction( func ) ) {=0A=
			// For each dataType in the dataTypeExpression=0A=
			while ( (dataType =3D dataTypes[i++]) ) {=0A=
				// Prepend if requested=0A=
				if ( dataType[0] =3D=3D=3D "+" ) {=0A=
					dataType =3D dataType.slice( 1 ) || "*";=0A=
					(structure[ dataType ] =3D structure[ dataType ] || []).unshift( =
func );=0A=
=0A=
				// Otherwise append=0A=
				} else {=0A=
					(structure[ dataType ] =3D structure[ dataType ] || []).push( func =
);=0A=
				}=0A=
			}=0A=
		}=0A=
	};=0A=
}=0A=
=0A=
// Base inspection function for prefilters and transports=0A=
function inspectPrefiltersOrTransports( structure, options, =
originalOptions, jqXHR ) {=0A=
=0A=
	var inspected =3D {},=0A=
		seekingTransport =3D ( structure =3D=3D=3D transports );=0A=
=0A=
	function inspect( dataType ) {=0A=
		var selected;=0A=
		inspected[ dataType ] =3D true;=0A=
		jQuery.each( structure[ dataType ] || [], function( _, =
prefilterOrFactory ) {=0A=
			var dataTypeOrTransport =3D prefilterOrFactory( options, =
originalOptions, jqXHR );=0A=
			if( typeof dataTypeOrTransport =3D=3D=3D "string" && =
!seekingTransport && !inspected[ dataTypeOrTransport ] ) {=0A=
				options.dataTypes.unshift( dataTypeOrTransport );=0A=
				inspect( dataTypeOrTransport );=0A=
				return false;=0A=
			} else if ( seekingTransport ) {=0A=
				return !( selected =3D dataTypeOrTransport );=0A=
			}=0A=
		});=0A=
		return selected;=0A=
	}=0A=
=0A=
	return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && =
inspect( "*" );=0A=
}=0A=
=0A=
// A special extend for ajax options=0A=
// that takes "flat" options (not to be deep extended)=0A=
// Fixes #9887=0A=
function ajaxExtend( target, src ) {=0A=
	var key, deep,=0A=
		flatOptions =3D jQuery.ajaxSettings.flatOptions || {};=0A=
=0A=
	for ( key in src ) {=0A=
		if ( src[ key ] !=3D=3D undefined ) {=0A=
			( flatOptions[ key ] ? target : ( deep || (deep =3D {}) ) )[ key ] =
=3D src[ key ];=0A=
		}=0A=
	}=0A=
	if ( deep ) {=0A=
		jQuery.extend( true, target, deep );=0A=
	}=0A=
=0A=
	return target;=0A=
}=0A=
=0A=
jQuery.fn.load =3D function( url, params, callback ) {=0A=
	if ( typeof url !=3D=3D "string" && _load ) {=0A=
		return _load.apply( this, arguments );=0A=
	}=0A=
=0A=
	var selector, type, response,=0A=
		self =3D this,=0A=
		off =3D url.indexOf(" ");=0A=
=0A=
	if ( off >=3D 0 ) {=0A=
		selector =3D url.slice( off, url.length );=0A=
		url =3D url.slice( 0, off );=0A=
	}=0A=
=0A=
	// If it's a function=0A=
	if ( jQuery.isFunction( params ) ) {=0A=
=0A=
		// We assume that it's the callback=0A=
		callback =3D params;=0A=
		params =3D undefined;=0A=
=0A=
	// Otherwise, build a param string=0A=
	} else if ( params && typeof params =3D=3D=3D "object" ) {=0A=
		type =3D "POST";=0A=
	}=0A=
=0A=
	// If we have elements to modify, make the request=0A=
	if ( self.length > 0 ) {=0A=
		jQuery.ajax({=0A=
			url: url,=0A=
=0A=
			// if "type" variable is undefined, then "GET" method will be used=0A=
			type: type,=0A=
			dataType: "html",=0A=
			data: params=0A=
		}).done(function( responseText ) {=0A=
=0A=
			// Save response for use in complete callback=0A=
			response =3D arguments;=0A=
=0A=
			self.html( selector ?=0A=
=0A=
				// If a selector was specified, locate the right elements in a dummy =
div=0A=
				// Exclude scripts to avoid IE 'Permission Denied' errors=0A=
				jQuery("<div>").append( jQuery.parseHTML( responseText ) ).find( =
selector ) :=0A=
=0A=
				// Otherwise use the full result=0A=
				responseText );=0A=
=0A=
		}).complete( callback && function( jqXHR, status ) {=0A=
			self.each( callback, response || [ jqXHR.responseText, status, jqXHR =
] );=0A=
		});=0A=
	}=0A=
=0A=
	return this;=0A=
};=0A=
=0A=
// Attach a bunch of functions for handling common AJAX events=0A=
jQuery.each( [ "ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", =
"ajaxSuccess", "ajaxSend" ], function( i, type ){=0A=
	jQuery.fn[ type ] =3D function( fn ){=0A=
		return this.on( type, fn );=0A=
	};=0A=
});=0A=
=0A=
jQuery.each( [ "get", "post" ], function( i, method ) {=0A=
	jQuery[ method ] =3D function( url, data, callback, type ) {=0A=
		// shift arguments if data argument was omitted=0A=
		if ( jQuery.isFunction( data ) ) {=0A=
			type =3D type || callback;=0A=
			callback =3D data;=0A=
			data =3D undefined;=0A=
		}=0A=
=0A=
		return jQuery.ajax({=0A=
			url: url,=0A=
			type: method,=0A=
			dataType: type,=0A=
			data: data,=0A=
			success: callback=0A=
		});=0A=
	};=0A=
});=0A=
=0A=
jQuery.extend({=0A=
=0A=
	// Counter for holding the number of active queries=0A=
	active: 0,=0A=
=0A=
	// Last-Modified header cache for next request=0A=
	lastModified: {},=0A=
	etag: {},=0A=
=0A=
	ajaxSettings: {=0A=
		url: ajaxLocation,=0A=
		type: "GET",=0A=
		isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),=0A=
		global: true,=0A=
		processData: true,=0A=
		async: true,=0A=
		contentType: "application/x-www-form-urlencoded; charset=3DUTF-8",=0A=
		/*=0A=
		timeout: 0,=0A=
		data: null,=0A=
		dataType: null,=0A=
		username: null,=0A=
		password: null,=0A=
		cache: null,=0A=
		throws: false,=0A=
		traditional: false,=0A=
		headers: {},=0A=
		*/=0A=
=0A=
		accepts: {=0A=
			"*": allTypes,=0A=
			text: "text/plain",=0A=
			html: "text/html",=0A=
			xml: "application/xml, text/xml",=0A=
			json: "application/json, text/javascript"=0A=
		},=0A=
=0A=
		contents: {=0A=
			xml: /xml/,=0A=
			html: /html/,=0A=
			json: /json/=0A=
		},=0A=
=0A=
		responseFields: {=0A=
			xml: "responseXML",=0A=
			text: "responseText"=0A=
		},=0A=
=0A=
		// Data converters=0A=
		// Keys separate source (or catchall "*") and destination types with a =
single space=0A=
		converters: {=0A=
=0A=
			// Convert anything to text=0A=
			"* text": window.String,=0A=
=0A=
			// Text to html (true =3D no transformation)=0A=
			"text html": true,=0A=
=0A=
			// Evaluate text as a json expression=0A=
			"text json": jQuery.parseJSON,=0A=
=0A=
			// Parse text as xml=0A=
			"text xml": jQuery.parseXML=0A=
		},=0A=
=0A=
		// For options that shouldn't be deep extended:=0A=
		// you can add your own custom options here if=0A=
		// and when you create one that shouldn't be=0A=
		// deep extended (see ajaxExtend)=0A=
		flatOptions: {=0A=
			url: true,=0A=
			context: true=0A=
		}=0A=
	},=0A=
=0A=
	// Creates a full fledged settings object into target=0A=
	// with both ajaxSettings and settings fields.=0A=
	// If target is omitted, writes into ajaxSettings.=0A=
	ajaxSetup: function( target, settings ) {=0A=
		return settings ?=0A=
=0A=
			// Building a settings object=0A=
			ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :=0A=
=0A=
			// Extending ajaxSettings=0A=
			ajaxExtend( jQuery.ajaxSettings, target );=0A=
	},=0A=
=0A=
	ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),=0A=
	ajaxTransport: addToPrefiltersOrTransports( transports ),=0A=
=0A=
	// Main method=0A=
	ajax: function( url, options ) {=0A=
=0A=
		// If url is an object, simulate pre-1.5 signature=0A=
		if ( typeof url =3D=3D=3D "object" ) {=0A=
			options =3D url;=0A=
			url =3D undefined;=0A=
		}=0A=
=0A=
		// Force options to be an object=0A=
		options =3D options || {};=0A=
=0A=
		var transport,=0A=
			// URL without anti-cache param=0A=
			cacheURL,=0A=
			// Response headers=0A=
			responseHeadersString,=0A=
			responseHeaders,=0A=
			// timeout handle=0A=
			timeoutTimer,=0A=
			// Cross-domain detection vars=0A=
			parts,=0A=
			// To know if global events are to be dispatched=0A=
			fireGlobals,=0A=
			// Loop variable=0A=
			i,=0A=
			// Create the final options object=0A=
			s =3D jQuery.ajaxSetup( {}, options ),=0A=
			// Callbacks context=0A=
			callbackContext =3D s.context || s,=0A=
			// Context for global events is callbackContext if it is a DOM node =
or jQuery collection=0A=
			globalEventContext =3D s.context && ( callbackContext.nodeType || =
callbackContext.jquery ) ?=0A=
				jQuery( callbackContext ) :=0A=
				jQuery.event,=0A=
			// Deferreds=0A=
			deferred =3D jQuery.Deferred(),=0A=
			completeDeferred =3D jQuery.Callbacks("once memory"),=0A=
			// Status-dependent callbacks=0A=
			statusCode =3D s.statusCode || {},=0A=
			// Headers (they are sent all at once)=0A=
			requestHeaders =3D {},=0A=
			requestHeadersNames =3D {},=0A=
			// The jqXHR state=0A=
			state =3D 0,=0A=
			// Default abort message=0A=
			strAbort =3D "canceled",=0A=
			// Fake xhr=0A=
			jqXHR =3D {=0A=
				readyState: 0,=0A=
=0A=
				// Builds headers hashtable if needed=0A=
				getResponseHeader: function( key ) {=0A=
					var match;=0A=
					if ( state =3D=3D=3D 2 ) {=0A=
						if ( !responseHeaders ) {=0A=
							responseHeaders =3D {};=0A=
							while ( (match =3D rheaders.exec( responseHeadersString )) ) {=0A=
								responseHeaders[ match[1].toLowerCase() ] =3D match[ 2 ];=0A=
							}=0A=
						}=0A=
						match =3D responseHeaders[ key.toLowerCase() ];=0A=
					}=0A=
					return match =3D=3D null ? null : match;=0A=
				},=0A=
=0A=
				// Raw string=0A=
				getAllResponseHeaders: function() {=0A=
					return state =3D=3D=3D 2 ? responseHeadersString : null;=0A=
				},=0A=
=0A=
				// Caches the header=0A=
				setRequestHeader: function( name, value ) {=0A=
					var lname =3D name.toLowerCase();=0A=
					if ( !state ) {=0A=
						name =3D requestHeadersNames[ lname ] =3D requestHeadersNames[ =
lname ] || name;=0A=
						requestHeaders[ name ] =3D value;=0A=
					}=0A=
					return this;=0A=
				},=0A=
=0A=
				// Overrides response content-type header=0A=
				overrideMimeType: function( type ) {=0A=
					if ( !state ) {=0A=
						s.mimeType =3D type;=0A=
					}=0A=
					return this;=0A=
				},=0A=
=0A=
				// Status-dependent callbacks=0A=
				statusCode: function( map ) {=0A=
					var code;=0A=
					if ( map ) {=0A=
						if ( state < 2 ) {=0A=
							for ( code in map ) {=0A=
								// Lazy-add the new callback in a way that preserves old ones=0A=
								statusCode[ code ] =3D [ statusCode[ code ], map[ code ] ];=0A=
							}=0A=
						} else {=0A=
							// Execute the appropriate callbacks=0A=
							jqXHR.always( map[ jqXHR.status ] );=0A=
						}=0A=
					}=0A=
					return this;=0A=
				},=0A=
=0A=
				// Cancel the request=0A=
				abort: function( statusText ) {=0A=
					var finalText =3D statusText || strAbort;=0A=
					if ( transport ) {=0A=
						transport.abort( finalText );=0A=
					}=0A=
					done( 0, finalText );=0A=
					return this;=0A=
				}=0A=
			};=0A=
=0A=
		// Attach deferreds=0A=
		deferred.promise( jqXHR ).complete =3D completeDeferred.add;=0A=
		jqXHR.success =3D jqXHR.done;=0A=
		jqXHR.error =3D jqXHR.fail;=0A=
=0A=
		// Remove hash character (#7531: and string promotion)=0A=
		// Add protocol if not provided (#5866: IE7 issue with protocol-less =
urls)=0A=
		// Handle falsy url in the settings object (#10093: consistency with =
old signature)=0A=
		// We also use the url parameter if available=0A=
		s.url =3D ( ( url || s.url || ajaxLocation ) + "" ).replace( rhash, "" =
).replace( rprotocol, ajaxLocParts[ 1 ] + "//" );=0A=
=0A=
		// Alias method option to type as per ticket #12004=0A=
		s.type =3D options.method || options.type || s.method || s.type;=0A=
=0A=
		// Extract dataTypes list=0A=
		s.dataTypes =3D jQuery.trim( s.dataType || "*" ).toLowerCase().match( =
core_rnotwhite ) || [""];=0A=
=0A=
		// A cross-domain request is in order when we have a =
protocol:host:port mismatch=0A=
		if ( s.crossDomain =3D=3D null ) {=0A=
			parts =3D rurl.exec( s.url.toLowerCase() );=0A=
			s.crossDomain =3D !!( parts &&=0A=
				( parts[ 1 ] !=3D=3D ajaxLocParts[ 1 ] || parts[ 2 ] !=3D=3D =
ajaxLocParts[ 2 ] ||=0A=
					( parts[ 3 ] || ( parts[ 1 ] =3D=3D=3D "http:" ? 80 : 443 ) ) !=3D=0A=
						( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] =3D=3D=3D "http:" ? 80 =
: 443 ) ) )=0A=
			);=0A=
		}=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=
		// Apply prefilters=0A=
		inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );=0A=
=0A=
		// If request was aborted inside a prefilter, stop there=0A=
		if ( state =3D=3D=3D 2 ) {=0A=
			return jqXHR;=0A=
		}=0A=
=0A=
		// We can fire global events as of now if asked to=0A=
		fireGlobals =3D s.global;=0A=
=0A=
		// Watch for a new set of requests=0A=
		if ( fireGlobals && jQuery.active++ =3D=3D=3D 0 ) {=0A=
			jQuery.event.trigger("ajaxStart");=0A=
		}=0A=
=0A=
		// Uppercase the type=0A=
		s.type =3D s.type.toUpperCase();=0A=
=0A=
		// Determine if request has content=0A=
		s.hasContent =3D !rnoContent.test( s.type );=0A=
=0A=
		// Save the URL in case we're toying with the If-Modified-Since=0A=
		// and/or If-None-Match header later on=0A=
		cacheURL =3D s.url;=0A=
=0A=
		// More options handling for requests with no content=0A=
		if ( !s.hasContent ) {=0A=
=0A=
			// If data is available, append data to url=0A=
			if ( s.data ) {=0A=
				cacheURL =3D ( s.url +=3D ( ajax_rquery.test( cacheURL ) ? "&" : "?" =
) + s.data );=0A=
				// #9682: remove data so that it's not used in an eventual retry=0A=
				delete s.data;=0A=
			}=0A=
=0A=
			// Add anti-cache in url if needed=0A=
			if ( s.cache =3D=3D=3D false ) {=0A=
				s.url =3D rts.test( cacheURL ) ?=0A=
=0A=
					// If there is already a '_' parameter, set its value=0A=
					cacheURL.replace( rts, "$1_=3D" + ajax_nonce++ ) :=0A=
=0A=
					// Otherwise add one to the end=0A=
					cacheURL + ( ajax_rquery.test( cacheURL ) ? "&" : "?" ) + "_=3D" + =
ajax_nonce++;=0A=
			}=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[ cacheURL ] ) {=0A=
				jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ =
cacheURL ] );=0A=
			}=0A=
			if ( jQuery.etag[ cacheURL ] ) {=0A=
				jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );=0A=
			}=0A=
		}=0A=
=0A=
		// Set the correct header, if data is being sent=0A=
		if ( s.data && s.hasContent && s.contentType !=3D=3D false || =
options.contentType ) {=0A=
			jqXHR.setRequestHeader( "Content-Type", s.contentType );=0A=
		}=0A=
=0A=
		// Set the Accepts header for the server, depending on the dataType=0A=
		jqXHR.setRequestHeader(=0A=
			"Accept",=0A=
			s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?=0A=
				s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !=3D=3D "*" ? ", " =
+ allTypes + "; q=3D0.01" : "" ) :=0A=
				s.accepts[ "*" ]=0A=
		);=0A=
=0A=
		// Check for headers option=0A=
		for ( i in s.headers ) {=0A=
			jqXHR.setRequestHeader( i, s.headers[ i ] );=0A=
		}=0A=
=0A=
		// Allow custom headers/mimetypes and early abort=0A=
		if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) =
=3D=3D=3D false || state =3D=3D=3D 2 ) ) {=0A=
			// Abort if not done already and return=0A=
			return jqXHR.abort();=0A=
		}=0A=
=0A=
		// aborting is no longer a cancellation=0A=
		strAbort =3D "abort";=0A=
=0A=
		// Install callbacks on deferreds=0A=
		for ( i in { success: 1, error: 1, complete: 1 } ) {=0A=
			jqXHR[ i ]( s[ i ] );=0A=
		}=0A=
=0A=
		// Get transport=0A=
		transport =3D inspectPrefiltersOrTransports( transports, s, options, =
jqXHR );=0A=
=0A=
		// If no transport, we auto-abort=0A=
		if ( !transport ) {=0A=
			done( -1, "No Transport" );=0A=
		} else {=0A=
			jqXHR.readyState =3D 1;=0A=
=0A=
			// Send global event=0A=
			if ( fireGlobals ) {=0A=
				globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );=0A=
			}=0A=
			// Timeout=0A=
			if ( s.async && s.timeout > 0 ) {=0A=
				timeoutTimer =3D setTimeout(function() {=0A=
					jqXHR.abort("timeout");=0A=
				}, s.timeout );=0A=
			}=0A=
=0A=
			try {=0A=
				state =3D 1;=0A=
				transport.send( requestHeaders, done );=0A=
			} catch ( e ) {=0A=
				// Propagate exception as error if not done=0A=
				if ( state < 2 ) {=0A=
					done( -1, e );=0A=
				// Simply rethrow otherwise=0A=
				} else {=0A=
					throw e;=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		// Callback for when everything is done=0A=
		function done( status, nativeStatusText, responses, headers ) {=0A=
			var isSuccess, success, error, response, modified,=0A=
				statusText =3D nativeStatusText;=0A=
=0A=
			// Called once=0A=
			if ( state =3D=3D=3D 2 ) {=0A=
				return;=0A=
			}=0A=
=0A=
			// State is "done" now=0A=
			state =3D 2;=0A=
=0A=
			// Clear timeout if it exists=0A=
			if ( timeoutTimer ) {=0A=
				clearTimeout( timeoutTimer );=0A=
			}=0A=
=0A=
			// Dereference transport for early garbage collection=0A=
			// (no matter how long the jqXHR object will be used)=0A=
			transport =3D undefined;=0A=
=0A=
			// Cache response headers=0A=
			responseHeadersString =3D headers || "";=0A=
=0A=
			// Set readyState=0A=
			jqXHR.readyState =3D status > 0 ? 4 : 0;=0A=
=0A=
			// Get response data=0A=
			if ( responses ) {=0A=
				response =3D ajaxHandleResponses( s, jqXHR, responses );=0A=
			}=0A=
=0A=
			// If successful, handle type chaining=0A=
			if ( status >=3D 200 && status < 300 || status =3D=3D=3D 304 ) {=0A=
=0A=
				// Set the If-Modified-Since and/or If-None-Match header, if in =
ifModified mode.=0A=
				if ( s.ifModified ) {=0A=
					modified =3D jqXHR.getResponseHeader("Last-Modified");=0A=
					if ( modified ) {=0A=
						jQuery.lastModified[ cacheURL ] =3D modified;=0A=
					}=0A=
					modified =3D jqXHR.getResponseHeader("etag");=0A=
					if ( modified ) {=0A=
						jQuery.etag[ cacheURL ] =3D modified;=0A=
					}=0A=
				}=0A=
=0A=
				// If not modified=0A=
				if ( status =3D=3D=3D 304 ) {=0A=
					isSuccess =3D true;=0A=
					statusText =3D "notmodified";=0A=
=0A=
				// If we have data=0A=
				} else {=0A=
					isSuccess =3D ajaxConvert( s, response );=0A=
					statusText =3D isSuccess.state;=0A=
					success =3D isSuccess.data;=0A=
					error =3D isSuccess.error;=0A=
					isSuccess =3D !error;=0A=
				}=0A=
			} else {=0A=
				// We extract error from statusText=0A=
				// then normalize statusText and status for non-aborts=0A=
				error =3D statusText;=0A=
				if ( status || !statusText ) {=0A=
					statusText =3D "error";=0A=
					if ( status < 0 ) {=0A=
						status =3D 0;=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// Set data for the fake xhr object=0A=
			jqXHR.status =3D status;=0A=
			jqXHR.statusText =3D ( nativeStatusText || statusText ) + "";=0A=
=0A=
			// Success/Error=0A=
			if ( isSuccess ) {=0A=
				deferred.resolveWith( callbackContext, [ success, statusText, jqXHR =
] );=0A=
			} else {=0A=
				deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );=0A=
			}=0A=
=0A=
			// Status-dependent callbacks=0A=
			jqXHR.statusCode( statusCode );=0A=
			statusCode =3D undefined;=0A=
=0A=
			if ( fireGlobals ) {=0A=
				globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",=0A=
					[ jqXHR, s, isSuccess ? success : error ] );=0A=
			}=0A=
=0A=
			// Complete=0A=
			completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );=0A=
=0A=
			if ( fireGlobals ) {=0A=
				globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );=0A=
				// Handle the global AJAX counter=0A=
				if ( !( --jQuery.active ) ) {=0A=
					jQuery.event.trigger("ajaxStop");=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
		return jqXHR;=0A=
	},=0A=
=0A=
	getScript: function( url, callback ) {=0A=
		return jQuery.get( url, undefined, callback, "script" );=0A=
	},=0A=
=0A=
	getJSON: function( url, data, callback ) {=0A=
		return jQuery.get( url, data, callback, "json" );=0A=
	}=0A=
});=0A=
=0A=
/* Handles responses to an ajax request:=0A=
 * - sets all responseXXX fields accordingly=0A=
 * - finds the right dataType (mediates between content-type and =
expected dataType)=0A=
 * - returns the corresponding response=0A=
 */=0A=
function ajaxHandleResponses( s, jqXHR, responses ) {=0A=
=0A=
	var ct, type, finalDataType, firstDataType,=0A=
		contents =3D s.contents,=0A=
		dataTypes =3D s.dataTypes,=0A=
		responseFields =3D s.responseFields;=0A=
=0A=
	// Fill responseXXX fields=0A=
	for ( type in responseFields ) {=0A=
		if ( type in responses ) {=0A=
			jqXHR[ responseFields[type] ] =3D responses[ type ];=0A=
		}=0A=
	}=0A=
=0A=
	// Remove auto dataType and get content-type in the process=0A=
	while( dataTypes[ 0 ] =3D=3D=3D "*" ) {=0A=
		dataTypes.shift();=0A=
		if ( ct =3D=3D=3D undefined ) {=0A=
			ct =3D s.mimeType || jqXHR.getResponseHeader("Content-Type");=0A=
		}=0A=
	}=0A=
=0A=
	// Check if we're dealing with a known content-type=0A=
	if ( ct ) {=0A=
		for ( type in contents ) {=0A=
			if ( contents[ type ] && contents[ type ].test( ct ) ) {=0A=
				dataTypes.unshift( type );=0A=
				break;=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// Check to see if we have a response for the expected dataType=0A=
	if ( dataTypes[ 0 ] in responses ) {=0A=
		finalDataType =3D dataTypes[ 0 ];=0A=
	} else {=0A=
		// Try convertible dataTypes=0A=
		for ( type in responses ) {=0A=
			if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {=0A=
				finalDataType =3D type;=0A=
				break;=0A=
			}=0A=
			if ( !firstDataType ) {=0A=
				firstDataType =3D type;=0A=
			}=0A=
		}=0A=
		// Or just use first one=0A=
		finalDataType =3D finalDataType || firstDataType;=0A=
	}=0A=
=0A=
	// If we found a dataType=0A=
	// We add the dataType to the list if needed=0A=
	// and return the corresponding response=0A=
	if ( finalDataType ) {=0A=
		if ( finalDataType !=3D=3D dataTypes[ 0 ] ) {=0A=
			dataTypes.unshift( finalDataType );=0A=
		}=0A=
		return responses[ finalDataType ];=0A=
	}=0A=
}=0A=
=0A=
// Chain conversions given the request and the original response=0A=
function ajaxConvert( s, response ) {=0A=
=0A=
	var conv, conv2, current, tmp,=0A=
		converters =3D {},=0A=
		i =3D 0,=0A=
		// Work with a copy of dataTypes in case we need to modify it for =
conversion=0A=
		dataTypes =3D s.dataTypes.slice(),=0A=
		prev =3D dataTypes[ 0 ];=0A=
=0A=
	// Apply the dataFilter if provided=0A=
	if ( s.dataFilter ) {=0A=
		response =3D s.dataFilter( response, s.dataType );=0A=
	}=0A=
=0A=
	// Create converters map with lowercased keys=0A=
	if ( dataTypes[ 1 ] ) {=0A=
		for ( conv in s.converters ) {=0A=
			converters[ conv.toLowerCase() ] =3D s.converters[ conv ];=0A=
		}=0A=
	}=0A=
=0A=
	// Convert to each sequential dataType, tolerating list modification=0A=
	for ( ; (current =3D dataTypes[++i]); ) {=0A=
=0A=
		// There's only work to do if current dataType is non-auto=0A=
		if ( current !=3D=3D "*" ) {=0A=
=0A=
			// Convert response if prev dataType is non-auto and differs from =
current=0A=
			if ( prev !=3D=3D "*" && prev !=3D=3D current ) {=0A=
=0A=
				// Seek a direct converter=0A=
				conv =3D converters[ prev + " " + current ] || converters[ "* " + =
current ];=0A=
=0A=
				// If none found, seek a pair=0A=
				if ( !conv ) {=0A=
					for ( conv2 in converters ) {=0A=
=0A=
						// If conv2 outputs current=0A=
						tmp =3D conv2.split(" ");=0A=
						if ( tmp[ 1 ] =3D=3D=3D current ) {=0A=
=0A=
							// If prev can be converted to accepted input=0A=
							conv =3D converters[ prev + " " + tmp[ 0 ] ] ||=0A=
								converters[ "* " + tmp[ 0 ] ];=0A=
							if ( conv ) {=0A=
								// Condense equivalence converters=0A=
								if ( conv =3D=3D=3D true ) {=0A=
									conv =3D converters[ conv2 ];=0A=
=0A=
								// Otherwise, insert the intermediate dataType=0A=
								} else if ( converters[ conv2 ] !=3D=3D true ) {=0A=
									current =3D tmp[ 0 ];=0A=
									dataTypes.splice( i--, 0, current );=0A=
								}=0A=
=0A=
								break;=0A=
							}=0A=
						}=0A=
					}=0A=
				}=0A=
=0A=
				// Apply converter (if not an equivalence)=0A=
				if ( conv !=3D=3D true ) {=0A=
=0A=
					// Unless errors are allowed to bubble, catch and return them=0A=
					if ( conv && s["throws"] ) {=0A=
						response =3D conv( response );=0A=
					} else {=0A=
						try {=0A=
							response =3D conv( response );=0A=
						} catch ( e ) {=0A=
							return { state: "parsererror", error: conv ? e : "No conversion =
from " + prev + " to " + current };=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			// Update prev for next iteration=0A=
			prev =3D current;=0A=
		}=0A=
	}=0A=
=0A=
	return { state: "success", data: response };=0A=
}=0A=
// Install script dataType=0A=
jQuery.ajaxSetup({=0A=
	accepts: {=0A=
		script: "text/javascript, application/javascript, =
application/ecmascript, application/x-ecmascript"=0A=
	},=0A=
	contents: {=0A=
		script: /(?:java|ecma)script/=0A=
	},=0A=
	converters: {=0A=
		"text script": function( text ) {=0A=
			jQuery.globalEval( text );=0A=
			return text;=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
// Handle cache's special case and global=0A=
jQuery.ajaxPrefilter( "script", function( s ) {=0A=
	if ( s.cache =3D=3D=3D undefined ) {=0A=
		s.cache =3D false;=0A=
	}=0A=
	if ( s.crossDomain ) {=0A=
		s.type =3D "GET";=0A=
		s.global =3D false;=0A=
	}=0A=
});=0A=
=0A=
// Bind script tag hack transport=0A=
jQuery.ajaxTransport( "script", function(s) {=0A=
=0A=
	// This transport only deals with cross domain requests=0A=
	if ( s.crossDomain ) {=0A=
=0A=
		var script,=0A=
			head =3D document.head || jQuery("head")[0] || =
document.documentElement;=0A=
=0A=
		return {=0A=
=0A=
			send: function( _, callback ) {=0A=
=0A=
				script =3D document.createElement("script");=0A=
=0A=
				script.async =3D true;=0A=
=0A=
				if ( s.scriptCharset ) {=0A=
					script.charset =3D s.scriptCharset;=0A=
				}=0A=
=0A=
				script.src =3D s.url;=0A=
=0A=
				// Attach handlers for all browsers=0A=
				script.onload =3D script.onreadystatechange =3D function( _, isAbort =
) {=0A=
=0A=
					if ( isAbort || !script.readyState || /loaded|complete/.test( =
script.readyState ) ) {=0A=
=0A=
						// Handle memory leak in IE=0A=
						script.onload =3D script.onreadystatechange =3D null;=0A=
=0A=
						// Remove the script=0A=
						if ( script.parentNode ) {=0A=
							script.parentNode.removeChild( script );=0A=
						}=0A=
=0A=
						// Dereference the script=0A=
						script =3D null;=0A=
=0A=
						// Callback if not abort=0A=
						if ( !isAbort ) {=0A=
							callback( 200, "success" );=0A=
						}=0A=
					}=0A=
				};=0A=
=0A=
				// Circumvent IE6 bugs with base elements (#2709 and #4378) by =
prepending=0A=
				// Use native DOM manipulation to avoid our domManip AJAX trickery=0A=
				head.insertBefore( script, head.firstChild );=0A=
			},=0A=
=0A=
			abort: function() {=0A=
				if ( script ) {=0A=
					script.onload( undefined, true );=0A=
				}=0A=
			}=0A=
		};=0A=
	}=0A=
});=0A=
var oldCallbacks =3D [],=0A=
	rjsonp =3D /(=3D)\?(?=3D&|$)|\?\?/;=0A=
=0A=
// Default jsonp settings=0A=
jQuery.ajaxSetup({=0A=
	jsonp: "callback",=0A=
	jsonpCallback: function() {=0A=
		var callback =3D oldCallbacks.pop() || ( jQuery.expando + "_" + ( =
ajax_nonce++ ) );=0A=
		this[ callback ] =3D true;=0A=
		return callback;=0A=
	}=0A=
});=0A=
=0A=
// Detect, normalize options and install callbacks for jsonp requests=0A=
jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR =
) {=0A=
=0A=
	var callbackName, overwritten, responseContainer,=0A=
		jsonProp =3D s.jsonp !=3D=3D false && ( rjsonp.test( s.url ) ?=0A=
			"url" :=0A=
			typeof s.data =3D=3D=3D "string" && !( s.contentType || "" =
).indexOf("application/x-www-form-urlencoded") && rjsonp.test( s.data ) =
&& "data"=0A=
		);=0A=
=0A=
	// Handle iff the expected data type is "jsonp" or we have a parameter =
to set=0A=
	if ( jsonProp || s.dataTypes[ 0 ] =3D=3D=3D "jsonp" ) {=0A=
=0A=
		// Get callback name, remembering preexisting value associated with it=0A=
		callbackName =3D s.jsonpCallback =3D jQuery.isFunction( =
s.jsonpCallback ) ?=0A=
			s.jsonpCallback() :=0A=
			s.jsonpCallback;=0A=
=0A=
		// Insert callback into url or form data=0A=
		if ( jsonProp ) {=0A=
			s[ jsonProp ] =3D s[ jsonProp ].replace( rjsonp, "$1" + callbackName =
);=0A=
		} else if ( s.jsonp !=3D=3D false ) {=0A=
			s.url +=3D ( ajax_rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + =
"=3D" + callbackName;=0A=
		}=0A=
=0A=
		// Use data converter to retrieve json after script execution=0A=
		s.converters["script json"] =3D function() {=0A=
			if ( !responseContainer ) {=0A=
				jQuery.error( callbackName + " was not called" );=0A=
			}=0A=
			return responseContainer[ 0 ];=0A=
		};=0A=
=0A=
		// force json dataType=0A=
		s.dataTypes[ 0 ] =3D "json";=0A=
=0A=
		// Install callback=0A=
		overwritten =3D window[ callbackName ];=0A=
		window[ callbackName ] =3D function() {=0A=
			responseContainer =3D arguments;=0A=
		};=0A=
=0A=
		// Clean-up function (fires after converters)=0A=
		jqXHR.always(function() {=0A=
			// Restore preexisting value=0A=
			window[ callbackName ] =3D overwritten;=0A=
=0A=
			// Save back as free=0A=
			if ( s[ callbackName ] ) {=0A=
				// make sure that re-using the options doesn't screw things around=0A=
				s.jsonpCallback =3D originalSettings.jsonpCallback;=0A=
=0A=
				// save the callback name for future use=0A=
				oldCallbacks.push( callbackName );=0A=
			}=0A=
=0A=
			// Call if it was a function and we have a response=0A=
			if ( responseContainer && jQuery.isFunction( overwritten ) ) {=0A=
				overwritten( responseContainer[ 0 ] );=0A=
			}=0A=
=0A=
			responseContainer =3D overwritten =3D undefined;=0A=
		});=0A=
=0A=
		// Delegate to script=0A=
		return "script";=0A=
	}=0A=
});=0A=
var xhrCallbacks, xhrSupported,=0A=
	xhrId =3D 0,=0A=
	// #5280: Internet Explorer will keep connections alive if we don't =
abort on unload=0A=
	xhrOnUnloadAbort =3D window.ActiveXObject && function() {=0A=
		// Abort all pending requests=0A=
		var key;=0A=
		for ( key in xhrCallbacks ) {=0A=
			xhrCallbacks[ key ]( undefined, true );=0A=
		}=0A=
	};=0A=
=0A=
// Functions to create xhrs=0A=
function createStandardXHR() {=0A=
	try {=0A=
		return new window.XMLHttpRequest();=0A=
	} catch( e ) {}=0A=
}=0A=
=0A=
function createActiveXHR() {=0A=
	try {=0A=
		return new window.ActiveXObject("Microsoft.XMLHTTP");=0A=
	} catch( e ) {}=0A=
}=0A=
=0A=
// Create the request object=0A=
// (This is still attached to ajaxSettings for backward compatibility)=0A=
jQuery.ajaxSettings.xhr =3D window.ActiveXObject ?=0A=
	/* 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=
	 * Additionally XMLHttpRequest can be disabled in IE7/IE8 so=0A=
	 * we need a fallback.=0A=
	 */=0A=
	function() {=0A=
		return !this.isLocal && createStandardXHR() || createActiveXHR();=0A=
	} :=0A=
	// For all other browsers, use the standard XMLHttpRequest object=0A=
	createStandardXHR;=0A=
=0A=
// Determine support properties=0A=
xhrSupported =3D jQuery.ajaxSettings.xhr();=0A=
jQuery.support.cors =3D !!xhrSupported && ( "withCredentials" in =
xhrSupported );=0A=
xhrSupported =3D jQuery.support.ajax =3D !!xhrSupported;=0A=
=0A=
// Create transport if the browser can provide an xhr=0A=
if ( xhrSupported ) {=0A=
=0A=
	jQuery.ajaxTransport(function( s ) {=0A=
		// Cross domain only allowed if supported through XMLHttpRequest=0A=
		if ( !s.crossDomain || jQuery.support.cors ) {=0A=
=0A=
			var callback;=0A=
=0A=
			return {=0A=
				send: function( headers, complete ) {=0A=
=0A=
					// Get a new xhr=0A=
					var handle, i,=0A=
						xhr =3D s.xhr();=0A=
=0A=
					// Open the socket=0A=
					// Passing null username, generates a login popup on Opera (#2865)=0A=
					if ( s.username ) {=0A=
						xhr.open( s.type, s.url, s.async, s.username, s.password );=0A=
					} else {=0A=
						xhr.open( s.type, s.url, s.async );=0A=
					}=0A=
=0A=
					// Apply custom fields if provided=0A=
					if ( s.xhrFields ) {=0A=
						for ( i in s.xhrFields ) {=0A=
							xhr[ i ] =3D s.xhrFields[ i ];=0A=
						}=0A=
					}=0A=
=0A=
					// Override mime type if needed=0A=
					if ( s.mimeType && xhr.overrideMimeType ) {=0A=
						xhr.overrideMimeType( s.mimeType );=0A=
					}=0A=
=0A=
					// X-Requested-With header=0A=
					// For cross-domain requests, seeing as conditions for a preflight =
are=0A=
					// akin to a jigsaw puzzle, we simply never set it to be sure.=0A=
					// (it can always be set on a per-request basis or even using =
ajaxSetup)=0A=
					// For same-domain requests, won't change header if already =
provided.=0A=
					if ( !s.crossDomain && !headers["X-Requested-With"] ) {=0A=
						headers["X-Requested-With"] =3D "XMLHttpRequest";=0A=
					}=0A=
=0A=
					// Need an extra try/catch for cross domain requests in Firefox 3=0A=
					try {=0A=
						for ( i in headers ) {=0A=
							xhr.setRequestHeader( i, headers[ i ] );=0A=
						}=0A=
					} catch( err ) {}=0A=
=0A=
					// Do send the request=0A=
					// This may raise an exception which is actually=0A=
					// handled in jQuery.ajax (so no try/catch here)=0A=
					xhr.send( ( s.hasContent && s.data ) || null );=0A=
=0A=
					// Listener=0A=
					callback =3D function( _, isAbort ) {=0A=
=0A=
						var status,=0A=
							statusText,=0A=
							responseHeaders,=0A=
							responses,=0A=
							xml;=0A=
=0A=
						// Firefox throws exceptions when accessing properties=0A=
						// of an xhr when a network error occurred=0A=
						// =
http://helpful.knobs-dials.com/index.php/Component_returned_failure_code:=
_0x80040111_(NS_ERROR_NOT_AVAILABLE)=0A=
						try {=0A=
=0A=
							// Was never called and is aborted or complete=0A=
							if ( callback && ( isAbort || xhr.readyState =3D=3D=3D 4 ) ) {=0A=
=0A=
								// Only called once=0A=
								callback =3D undefined;=0A=
=0A=
								// Do not keep as active anymore=0A=
								if ( handle ) {=0A=
									xhr.onreadystatechange =3D jQuery.noop;=0A=
									if ( xhrOnUnloadAbort ) {=0A=
										delete xhrCallbacks[ handle ];=0A=
									}=0A=
								}=0A=
=0A=
								// If it's an abort=0A=
								if ( isAbort ) {=0A=
									// Abort it manually if needed=0A=
									if ( xhr.readyState !=3D=3D 4 ) {=0A=
										xhr.abort();=0A=
									}=0A=
								} else {=0A=
									responses =3D {};=0A=
									status =3D xhr.status;=0A=
									xml =3D xhr.responseXML;=0A=
									responseHeaders =3D xhr.getAllResponseHeaders();=0A=
=0A=
									// Construct response list=0A=
									if ( xml && xml.documentElement /* #4958 */ ) {=0A=
										responses.xml =3D xml;=0A=
									}=0A=
=0A=
									// When requesting binary data, IE6-9 will throw an exception=0A=
									// on any attempt to access responseText (#11426)=0A=
									if ( typeof xhr.responseText =3D=3D=3D "string" ) {=0A=
										responses.text =3D xhr.responseText;=0A=
									}=0A=
=0A=
									// Firefox throws an exception when accessing=0A=
									// statusText for faulty cross-domain requests=0A=
									try {=0A=
										statusText =3D xhr.statusText;=0A=
									} catch( e ) {=0A=
										// We normalize with Webkit giving an empty statusText=0A=
										statusText =3D "";=0A=
									}=0A=
=0A=
									// Filter status for non standard behaviors=0A=
=0A=
									// If the request is local and we have data: assume a success=0A=
									// (success with no data won't get notified, that's the best we=0A=
									// can do given current implementations)=0A=
									if ( !status && s.isLocal && !s.crossDomain ) {=0A=
										status =3D responses.text ? 200 : 404;=0A=
									// IE - #1450: sometimes returns 1223 when it should be 204=0A=
									} else if ( status =3D=3D=3D 1223 ) {=0A=
										status =3D 204;=0A=
									}=0A=
								}=0A=
							}=0A=
						} catch( firefoxAccessException ) {=0A=
							if ( !isAbort ) {=0A=
								complete( -1, firefoxAccessException );=0A=
							}=0A=
						}=0A=
=0A=
						// Call complete if needed=0A=
						if ( responses ) {=0A=
							complete( status, statusText, responses, responseHeaders );=0A=
						}=0A=
					};=0A=
=0A=
					if ( !s.async ) {=0A=
						// if we're in sync mode we fire the callback=0A=
						callback();=0A=
					} else if ( xhr.readyState =3D=3D=3D 4 ) {=0A=
						// (IE6 & IE7) if it's in cache and has been=0A=
						// retrieved directly we need to fire the callback=0A=
						setTimeout( callback );=0A=
					} else {=0A=
						handle =3D ++xhrId;=0A=
						if ( xhrOnUnloadAbort ) {=0A=
							// Create the active xhrs callbacks list if needed=0A=
							// and attach the unload handler=0A=
							if ( !xhrCallbacks ) {=0A=
								xhrCallbacks =3D {};=0A=
								jQuery( window ).unload( xhrOnUnloadAbort );=0A=
							}=0A=
							// Add to list of active xhrs callbacks=0A=
							xhrCallbacks[ handle ] =3D callback;=0A=
						}=0A=
						xhr.onreadystatechange =3D callback;=0A=
					}=0A=
				},=0A=
=0A=
				abort: function() {=0A=
					if ( callback ) {=0A=
						callback( undefined, true );=0A=
					}=0A=
				}=0A=
			};=0A=
		}=0A=
	});=0A=
}=0A=
var fxNow, timerId,=0A=
	rfxtypes =3D /^(?:toggle|show|hide)$/,=0A=
	rfxnum =3D new RegExp( "^(?:([+-])=3D|)(" + core_pnum + ")([a-z%]*)$", =
"i" ),=0A=
	rrun =3D /queueHooks$/,=0A=
	animationPrefilters =3D [ defaultPrefilter ],=0A=
	tweeners =3D {=0A=
		"*": [function( prop, value ) {=0A=
			var end, unit,=0A=
				tween =3D this.createTween( prop, value ),=0A=
				parts =3D rfxnum.exec( value ),=0A=
				target =3D tween.cur(),=0A=
				start =3D +target || 0,=0A=
				scale =3D 1,=0A=
				maxIterations =3D 20;=0A=
=0A=
			if ( parts ) {=0A=
				end =3D +parts[2];=0A=
				unit =3D parts[3] || ( jQuery.cssNumber[ prop ] ? "" : "px" );=0A=
=0A=
				// We need to compute starting value=0A=
				if ( unit !=3D=3D "px" && start ) {=0A=
					// Iteratively approximate from a nonzero starting point=0A=
					// Prefer the current property, because this process will be =
trivial if it uses the same units=0A=
					// Fallback to end or a simple constant=0A=
					start =3D jQuery.css( tween.elem, prop, true ) || end || 1;=0A=
=0A=
					do {=0A=
						// If previous iteration zeroed out, double until we get =
*something*=0A=
						// Use a string for doubling factor so we don't accidentally see =
scale as unchanged below=0A=
						scale =3D scale || ".5";=0A=
=0A=
						// Adjust and apply=0A=
						start =3D start / scale;=0A=
						jQuery.style( tween.elem, prop, start + unit );=0A=
=0A=
					// Update scale, tolerating zero or NaN from tween.cur()=0A=
					// And breaking the loop if scale is unchanged or perfect, or if =
we've just had enough=0A=
					} while ( scale !=3D=3D (scale =3D tween.cur() / target) && scale =
!=3D=3D 1 && --maxIterations );=0A=
				}=0A=
=0A=
				tween.unit =3D unit;=0A=
				tween.start =3D start;=0A=
				// If a +=3D/-=3D token was provided, we're doing a relative =
animation=0A=
				tween.end =3D parts[1] ? start + ( parts[1] + 1 ) * end : end;=0A=
			}=0A=
			return tween;=0A=
		}]=0A=
	};=0A=
=0A=
// Animations created synchronously will run synchronously=0A=
function createFxNow() {=0A=
	setTimeout(function() {=0A=
		fxNow =3D undefined;=0A=
	});=0A=
	return ( fxNow =3D jQuery.now() );=0A=
}=0A=
=0A=
function createTweens( animation, props ) {=0A=
	jQuery.each( props, function( prop, value ) {=0A=
		var collection =3D ( tweeners[ prop ] || [] ).concat( tweeners[ "*" ] =
),=0A=
			index =3D 0,=0A=
			length =3D collection.length;=0A=
		for ( ; index < length; index++ ) {=0A=
			if ( collection[ index ].call( animation, prop, value ) ) {=0A=
=0A=
				// we're done with this property=0A=
				return;=0A=
			}=0A=
		}=0A=
	});=0A=
}=0A=
=0A=
function Animation( elem, properties, options ) {=0A=
	var result,=0A=
		stopped,=0A=
		index =3D 0,=0A=
		length =3D animationPrefilters.length,=0A=
		deferred =3D jQuery.Deferred().always( function() {=0A=
			// don't match elem in the :animated selector=0A=
			delete tick.elem;=0A=
		}),=0A=
		tick =3D function() {=0A=
			if ( stopped ) {=0A=
				return false;=0A=
			}=0A=
			var currentTime =3D fxNow || createFxNow(),=0A=
				remaining =3D Math.max( 0, animation.startTime + animation.duration =
- currentTime ),=0A=
				// archaic crash bug won't allow us to use 1 - ( 0.5 || 0 ) (#12497)=0A=
				temp =3D remaining / animation.duration || 0,=0A=
				percent =3D 1 - temp,=0A=
				index =3D 0,=0A=
				length =3D animation.tweens.length;=0A=
=0A=
			for ( ; index < length ; index++ ) {=0A=
				animation.tweens[ index ].run( percent );=0A=
			}=0A=
=0A=
			deferred.notifyWith( elem, [ animation, percent, remaining ]);=0A=
=0A=
			if ( percent < 1 && length ) {=0A=
				return remaining;=0A=
			} else {=0A=
				deferred.resolveWith( elem, [ animation ] );=0A=
				return false;=0A=
			}=0A=
		},=0A=
		animation =3D deferred.promise({=0A=
			elem: elem,=0A=
			props: jQuery.extend( {}, properties ),=0A=
			opts: jQuery.extend( true, { specialEasing: {} }, options ),=0A=
			originalProperties: properties,=0A=
			originalOptions: options,=0A=
			startTime: fxNow || createFxNow(),=0A=
			duration: options.duration,=0A=
			tweens: [],=0A=
			createTween: function( prop, end ) {=0A=
				var tween =3D jQuery.Tween( elem, animation.opts, prop, end,=0A=
						animation.opts.specialEasing[ prop ] || animation.opts.easing );=0A=
				animation.tweens.push( tween );=0A=
				return tween;=0A=
			},=0A=
			stop: function( gotoEnd ) {=0A=
				var index =3D 0,=0A=
					// if we are going to the end, we want to run all the tweens=0A=
					// otherwise we skip this part=0A=
					length =3D gotoEnd ? animation.tweens.length : 0;=0A=
				if ( stopped ) {=0A=
					return this;=0A=
				}=0A=
				stopped =3D true;=0A=
				for ( ; index < length ; index++ ) {=0A=
					animation.tweens[ index ].run( 1 );=0A=
				}=0A=
=0A=
				// resolve when we played the last frame=0A=
				// otherwise, reject=0A=
				if ( gotoEnd ) {=0A=
					deferred.resolveWith( elem, [ animation, gotoEnd ] );=0A=
				} else {=0A=
					deferred.rejectWith( elem, [ animation, gotoEnd ] );=0A=
				}=0A=
				return this;=0A=
			}=0A=
		}),=0A=
		props =3D animation.props;=0A=
=0A=
	propFilter( props, animation.opts.specialEasing );=0A=
=0A=
	for ( ; index < length ; index++ ) {=0A=
		result =3D animationPrefilters[ index ].call( animation, elem, props, =
animation.opts );=0A=
		if ( result ) {=0A=
			return result;=0A=
		}=0A=
	}=0A=
=0A=
	createTweens( animation, props );=0A=
=0A=
	if ( jQuery.isFunction( animation.opts.start ) ) {=0A=
		animation.opts.start.call( elem, animation );=0A=
	}=0A=
=0A=
	jQuery.fx.timer(=0A=
		jQuery.extend( tick, {=0A=
			elem: elem,=0A=
			anim: animation,=0A=
			queue: animation.opts.queue=0A=
		})=0A=
	);=0A=
=0A=
	// attach callbacks from options=0A=
	return animation.progress( animation.opts.progress )=0A=
		.done( animation.opts.done, animation.opts.complete )=0A=
		.fail( animation.opts.fail )=0A=
		.always( animation.opts.always );=0A=
}=0A=
=0A=
function propFilter( props, specialEasing ) {=0A=
	var index, name, easing, value, hooks;=0A=
=0A=
	// camelCase, specialEasing and expand cssHook pass=0A=
	for ( index in props ) {=0A=
		name =3D jQuery.camelCase( index );=0A=
		easing =3D specialEasing[ name ];=0A=
		value =3D props[ index ];=0A=
		if ( jQuery.isArray( value ) ) {=0A=
			easing =3D value[ 1 ];=0A=
			value =3D props[ index ] =3D value[ 0 ];=0A=
		}=0A=
=0A=
		if ( index !=3D=3D name ) {=0A=
			props[ name ] =3D value;=0A=
			delete props[ index ];=0A=
		}=0A=
=0A=
		hooks =3D jQuery.cssHooks[ name ];=0A=
		if ( hooks && "expand" in hooks ) {=0A=
			value =3D hooks.expand( value );=0A=
			delete props[ name ];=0A=
=0A=
			// not quite $.extend, this wont overwrite keys already present.=0A=
			// also - reusing 'index' from above because we have the correct =
"name"=0A=
			for ( index in value ) {=0A=
				if ( !( index in props ) ) {=0A=
					props[ index ] =3D value[ index ];=0A=
					specialEasing[ index ] =3D easing;=0A=
				}=0A=
			}=0A=
		} else {=0A=
			specialEasing[ name ] =3D easing;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
jQuery.Animation =3D jQuery.extend( Animation, {=0A=
=0A=
	tweener: function( props, callback ) {=0A=
		if ( jQuery.isFunction( props ) ) {=0A=
			callback =3D props;=0A=
			props =3D [ "*" ];=0A=
		} else {=0A=
			props =3D props.split(" ");=0A=
		}=0A=
=0A=
		var prop,=0A=
			index =3D 0,=0A=
			length =3D props.length;=0A=
=0A=
		for ( ; index < length ; index++ ) {=0A=
			prop =3D props[ index ];=0A=
			tweeners[ prop ] =3D tweeners[ prop ] || [];=0A=
			tweeners[ prop ].unshift( callback );=0A=
		}=0A=
	},=0A=
=0A=
	prefilter: function( callback, prepend ) {=0A=
		if ( prepend ) {=0A=
			animationPrefilters.unshift( callback );=0A=
		} else {=0A=
			animationPrefilters.push( callback );=0A=
		}=0A=
	}=0A=
});=0A=
=0A=
function defaultPrefilter( elem, props, opts ) {=0A=
	/*jshint validthis:true */=0A=
	var index, prop, value, length, dataShow, toggle, tween, hooks, oldfire,=0A=
		anim =3D this,=0A=
		style =3D elem.style,=0A=
		orig =3D {},=0A=
		handled =3D [],=0A=
		hidden =3D elem.nodeType && isHidden( elem );=0A=
=0A=
	// handle queue: false promises=0A=
	if ( !opts.queue ) {=0A=
		hooks =3D jQuery._queueHooks( elem, "fx" );=0A=
		if ( hooks.unqueued =3D=3D null ) {=0A=
			hooks.unqueued =3D 0;=0A=
			oldfire =3D hooks.empty.fire;=0A=
			hooks.empty.fire =3D function() {=0A=
				if ( !hooks.unqueued ) {=0A=
					oldfire();=0A=
				}=0A=
			};=0A=
		}=0A=
		hooks.unqueued++;=0A=
=0A=
		anim.always(function() {=0A=
			// doing this makes sure that the complete handler will be called=0A=
			// before this completes=0A=
			anim.always(function() {=0A=
				hooks.unqueued--;=0A=
				if ( !jQuery.queue( elem, "fx" ).length ) {=0A=
					hooks.empty.fire();=0A=
				}=0A=
			});=0A=
		});=0A=
	}=0A=
=0A=
	// height/width overflow pass=0A=
	if ( elem.nodeType =3D=3D=3D 1 && ( "height" in props || "width" in =
props ) ) {=0A=
		// Make sure that nothing sneaks out=0A=
		// Record all 3 overflow attributes because IE does not=0A=
		// change the overflow attribute when overflowX and=0A=
		// overflowY are set to the same value=0A=
		opts.overflow =3D [ style.overflow, style.overflowX, style.overflowY ];=0A=
=0A=
		// Set display property to inline-block for height/width=0A=
		// animations on inline elements that are having width/height animated=0A=
		if ( jQuery.css( elem, "display" ) =3D=3D=3D "inline" &&=0A=
				jQuery.css( elem, "float" ) =3D=3D=3D "none" ) {=0A=
=0A=
			// inline-level elements accept inline-block;=0A=
			// block-level elements need to be inline with layout=0A=
			if ( !jQuery.support.inlineBlockNeedsLayout || css_defaultDisplay( =
elem.nodeName ) =3D=3D=3D "inline" ) {=0A=
				style.display =3D "inline-block";=0A=
=0A=
			} else {=0A=
				style.zoom =3D 1;=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	if ( opts.overflow ) {=0A=
		style.overflow =3D "hidden";=0A=
		if ( !jQuery.support.shrinkWrapBlocks ) {=0A=
			anim.done(function() {=0A=
				style.overflow =3D opts.overflow[ 0 ];=0A=
				style.overflowX =3D opts.overflow[ 1 ];=0A=
				style.overflowY =3D opts.overflow[ 2 ];=0A=
			});=0A=
		}=0A=
	}=0A=
=0A=
=0A=
	// show/hide pass=0A=
	for ( index in props ) {=0A=
		value =3D props[ index ];=0A=
		if ( rfxtypes.exec( value ) ) {=0A=
			delete props[ index ];=0A=
			toggle =3D toggle || value =3D=3D=3D "toggle";=0A=
			if ( value =3D=3D=3D ( hidden ? "hide" : "show" ) ) {=0A=
				continue;=0A=
			}=0A=
			handled.push( index );=0A=
		}=0A=
	}=0A=
=0A=
	length =3D handled.length;=0A=
	if ( length ) {=0A=
		dataShow =3D jQuery._data( elem, "fxshow" ) || jQuery._data( elem, =
"fxshow", {} );=0A=
		if ( "hidden" in dataShow ) {=0A=
			hidden =3D dataShow.hidden;=0A=
		}=0A=
=0A=
		// store state if its toggle - enables .stop().toggle() to "reverse"=0A=
		if ( toggle ) {=0A=
			dataShow.hidden =3D !hidden;=0A=
		}=0A=
		if ( hidden ) {=0A=
			jQuery( elem ).show();=0A=
		} else {=0A=
			anim.done(function() {=0A=
				jQuery( elem ).hide();=0A=
			});=0A=
		}=0A=
		anim.done(function() {=0A=
			var prop;=0A=
			jQuery._removeData( elem, "fxshow" );=0A=
			for ( prop in orig ) {=0A=
				jQuery.style( elem, prop, orig[ prop ] );=0A=
			}=0A=
		});=0A=
		for ( index =3D 0 ; index < length ; index++ ) {=0A=
			prop =3D handled[ index ];=0A=
			tween =3D anim.createTween( prop, hidden ? dataShow[ prop ] : 0 );=0A=
			orig[ prop ] =3D dataShow[ prop ] || jQuery.style( elem, prop );=0A=
=0A=
			if ( !( prop in dataShow ) ) {=0A=
				dataShow[ prop ] =3D tween.start;=0A=
				if ( hidden ) {=0A=
					tween.end =3D tween.start;=0A=
					tween.start =3D prop =3D=3D=3D "width" || prop =3D=3D=3D "height" ? =
1 : 0;=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function Tween( elem, options, prop, end, easing ) {=0A=
	return new Tween.prototype.init( elem, options, prop, end, easing );=0A=
}=0A=
jQuery.Tween =3D Tween;=0A=
=0A=
Tween.prototype =3D {=0A=
	constructor: Tween,=0A=
	init: function( elem, options, prop, end, easing, unit ) {=0A=
		this.elem =3D elem;=0A=
		this.prop =3D prop;=0A=
		this.easing =3D easing || "swing";=0A=
		this.options =3D options;=0A=
		this.start =3D this.now =3D this.cur();=0A=
		this.end =3D end;=0A=
		this.unit =3D unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );=0A=
	},=0A=
	cur: function() {=0A=
		var hooks =3D Tween.propHooks[ this.prop ];=0A=
=0A=
		return hooks && hooks.get ?=0A=
			hooks.get( this ) :=0A=
			Tween.propHooks._default.get( this );=0A=
	},=0A=
	run: function( percent ) {=0A=
		var eased,=0A=
			hooks =3D Tween.propHooks[ this.prop ];=0A=
=0A=
		if ( this.options.duration ) {=0A=
			this.pos =3D eased =3D jQuery.easing[ this.easing ](=0A=
				percent, this.options.duration * percent, 0, 1, this.options.duration=0A=
			);=0A=
		} else {=0A=
			this.pos =3D eased =3D percent;=0A=
		}=0A=
		this.now =3D ( this.end - this.start ) * eased + this.start;=0A=
=0A=
		if ( this.options.step ) {=0A=
			this.options.step.call( this.elem, this.now, this );=0A=
		}=0A=
=0A=
		if ( hooks && hooks.set ) {=0A=
			hooks.set( this );=0A=
		} else {=0A=
			Tween.propHooks._default.set( this );=0A=
		}=0A=
		return this;=0A=
	}=0A=
};=0A=
=0A=
Tween.prototype.init.prototype =3D Tween.prototype;=0A=
=0A=
Tween.propHooks =3D {=0A=
	_default: {=0A=
		get: function( tween ) {=0A=
			var result;=0A=
=0A=
			if ( tween.elem[ tween.prop ] !=3D null &&=0A=
				(!tween.elem.style || tween.elem.style[ tween.prop ] =3D=3D null) ) {=0A=
				return tween.elem[ tween.prop ];=0A=
			}=0A=
=0A=
			// passing a non empty string as a 3rd parameter to .css will =
automatically=0A=
			// attempt a parseFloat and fallback to a string if the parse fails=0A=
			// so, simple values such as "10px" are parsed to Float.=0A=
			// complex values such as "rotate(1rad)" are returned as is.=0A=
			result =3D jQuery.css( tween.elem, tween.prop, "auto" );=0A=
			// Empty strings, null, undefined and "auto" are converted to 0.=0A=
			return !result || result =3D=3D=3D "auto" ? 0 : result;=0A=
		},=0A=
		set: function( tween ) {=0A=
			// use step hook for back compat - use cssHook if its there - use =
.style if its=0A=
			// available and use plain properties where available=0A=
			if ( jQuery.fx.step[ tween.prop ] ) {=0A=
				jQuery.fx.step[ tween.prop ]( tween );=0A=
			} else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ =
tween.prop ] ] !=3D null || jQuery.cssHooks[ tween.prop ] ) ) {=0A=
				jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );=0A=
			} else {=0A=
				tween.elem[ tween.prop ] =3D tween.now;=0A=
			}=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
// Remove in 2.0 - this supports IE8's panic based approach=0A=
// to setting things on disconnected nodes=0A=
=0A=
Tween.propHooks.scrollTop =3D Tween.propHooks.scrollLeft =3D {=0A=
	set: function( tween ) {=0A=
		if ( tween.elem.nodeType && tween.elem.parentNode ) {=0A=
			tween.elem[ tween.prop ] =3D tween.now;=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
jQuery.each([ "toggle", "show", "hide" ], function( i, name ) {=0A=
	var cssFn =3D jQuery.fn[ name ];=0A=
	jQuery.fn[ name ] =3D function( speed, easing, callback ) {=0A=
		return speed =3D=3D null || typeof speed =3D=3D=3D "boolean" ?=0A=
			cssFn.apply( this, arguments ) :=0A=
			this.animate( genFx( name, true ), speed, easing, callback );=0A=
	};=0A=
});=0A=
=0A=
jQuery.fn.extend({=0A=
	fadeTo: function( speed, to, easing, callback ) {=0A=
=0A=
		// show any hidden elements after setting opacity to 0=0A=
		return this.filter( isHidden ).css( "opacity", 0 ).show()=0A=
=0A=
			// animate to the value specified=0A=
			.end().animate({ opacity: to }, speed, easing, callback );=0A=
	},=0A=
	animate: function( prop, speed, easing, callback ) {=0A=
		var empty =3D jQuery.isEmptyObject( prop ),=0A=
			optall =3D jQuery.speed( speed, easing, callback ),=0A=
			doAnimation =3D function() {=0A=
				// Operate on a copy of prop so per-property easing won't be lost=0A=
				var anim =3D Animation( this, jQuery.extend( {}, prop ), optall );=0A=
				doAnimation.finish =3D function() {=0A=
					anim.stop( true );=0A=
				};=0A=
				// Empty animations, or finishing resolves immediately=0A=
				if ( empty || jQuery._data( this, "finish" ) ) {=0A=
					anim.stop( true );=0A=
				}=0A=
			};=0A=
			doAnimation.finish =3D doAnimation;=0A=
=0A=
		return empty || optall.queue =3D=3D=3D false ?=0A=
			this.each( doAnimation ) :=0A=
			this.queue( optall.queue, doAnimation );=0A=
	},=0A=
	stop: function( type, clearQueue, gotoEnd ) {=0A=
		var stopQueue =3D function( hooks ) {=0A=
			var stop =3D hooks.stop;=0A=
			delete hooks.stop;=0A=
			stop( gotoEnd );=0A=
		};=0A=
=0A=
		if ( typeof type !=3D=3D "string" ) {=0A=
			gotoEnd =3D clearQueue;=0A=
			clearQueue =3D type;=0A=
			type =3D undefined;=0A=
		}=0A=
		if ( clearQueue && type !=3D=3D false ) {=0A=
			this.queue( type || "fx", [] );=0A=
		}=0A=
=0A=
		return this.each(function() {=0A=
			var dequeue =3D true,=0A=
				index =3D type !=3D null && type + "queueHooks",=0A=
				timers =3D jQuery.timers,=0A=
				data =3D jQuery._data( this );=0A=
=0A=
			if ( index ) {=0A=
				if ( data[ index ] && data[ index ].stop ) {=0A=
					stopQueue( data[ index ] );=0A=
				}=0A=
			} else {=0A=
				for ( index in data ) {=0A=
					if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {=0A=
						stopQueue( data[ index ] );=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			for ( index =3D timers.length; index--; ) {=0A=
				if ( timers[ index ].elem =3D=3D=3D this && (type =3D=3D null || =
timers[ index ].queue =3D=3D=3D type) ) {=0A=
					timers[ index ].anim.stop( gotoEnd );=0A=
					dequeue =3D false;=0A=
					timers.splice( index, 1 );=0A=
				}=0A=
			}=0A=
=0A=
			// start the next in the queue if the last step wasn't forced=0A=
			// timers currently will call their complete callbacks, which will =
dequeue=0A=
			// but only if they were gotoEnd=0A=
			if ( dequeue || !gotoEnd ) {=0A=
				jQuery.dequeue( this, type );=0A=
			}=0A=
		});=0A=
	},=0A=
	finish: function( type ) {=0A=
		if ( type !=3D=3D false ) {=0A=
			type =3D type || "fx";=0A=
		}=0A=
		return this.each(function() {=0A=
			var index,=0A=
				data =3D jQuery._data( this ),=0A=
				queue =3D data[ type + "queue" ],=0A=
				hooks =3D data[ type + "queueHooks" ],=0A=
				timers =3D jQuery.timers,=0A=
				length =3D queue ? queue.length : 0;=0A=
=0A=
			// enable finishing flag on private data=0A=
			data.finish =3D true;=0A=
=0A=
			// empty the queue first=0A=
			jQuery.queue( this, type, [] );=0A=
=0A=
			if ( hooks && hooks.cur && hooks.cur.finish ) {=0A=
				hooks.cur.finish.call( this );=0A=
			}=0A=
=0A=
			// look for any active animations, and finish them=0A=
			for ( index =3D timers.length; index--; ) {=0A=
				if ( timers[ index ].elem =3D=3D=3D this && timers[ index ].queue =
=3D=3D=3D type ) {=0A=
					timers[ index ].anim.stop( true );=0A=
					timers.splice( index, 1 );=0A=
				}=0A=
			}=0A=
=0A=
			// look for any animations in the old queue and finish them=0A=
			for ( index =3D 0; index < length; index++ ) {=0A=
				if ( queue[ index ] && queue[ index ].finish ) {=0A=
					queue[ index ].finish.call( this );=0A=
				}=0A=
			}=0A=
=0A=
			// turn off finishing flag=0A=
			delete data.finish;=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
// Generate parameters to create a standard animation=0A=
function genFx( type, includeWidth ) {=0A=
	var which,=0A=
		attrs =3D { height: type },=0A=
		i =3D 0;=0A=
=0A=
	// if we include width, step value is 1 to do all cssExpand values,=0A=
	// if we don't include width, step value is 2 to skip over Left and =
Right=0A=
	includeWidth =3D includeWidth? 1 : 0;=0A=
	for( ; i < 4 ; i +=3D 2 - includeWidth ) {=0A=
		which =3D cssExpand[ i ];=0A=
		attrs[ "margin" + which ] =3D attrs[ "padding" + which ] =3D type;=0A=
	}=0A=
=0A=
	if ( includeWidth ) {=0A=
		attrs.opacity =3D attrs.width =3D type;=0A=
	}=0A=
=0A=
	return attrs;=0A=
}=0A=
=0A=
// Generate shortcuts for custom animations=0A=
jQuery.each({=0A=
	slideDown: genFx("show"),=0A=
	slideUp: genFx("hide"),=0A=
	slideToggle: genFx("toggle"),=0A=
	fadeIn: { opacity: "show" },=0A=
	fadeOut: { opacity: "hide" },=0A=
	fadeToggle: { opacity: "toggle" }=0A=
}, function( name, props ) {=0A=
	jQuery.fn[ name ] =3D function( speed, easing, callback ) {=0A=
		return this.animate( props, speed, easing, callback );=0A=
	};=0A=
});=0A=
=0A=
jQuery.speed =3D function( speed, easing, fn ) {=0A=
	var opt =3D speed && typeof speed =3D=3D=3D "object" ? jQuery.extend( =
{}, 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=
		opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[ opt.duration ] : =
jQuery.fx.speeds._default;=0A=
=0A=
	// normalize opt.queue - true/undefined/null -> "fx"=0A=
	if ( opt.queue =3D=3D null || opt.queue =3D=3D=3D true ) {=0A=
		opt.queue =3D "fx";=0A=
	}=0A=
=0A=
	// Queueing=0A=
	opt.old =3D opt.complete;=0A=
=0A=
	opt.complete =3D function() {=0A=
		if ( jQuery.isFunction( opt.old ) ) {=0A=
			opt.old.call( this );=0A=
		}=0A=
=0A=
		if ( opt.queue ) {=0A=
			jQuery.dequeue( this, opt.queue );=0A=
		}=0A=
	};=0A=
=0A=
	return opt;=0A=
};=0A=
=0A=
jQuery.easing =3D {=0A=
	linear: function( p ) {=0A=
		return p;=0A=
	},=0A=
	swing: function( p ) {=0A=
		return 0.5 - Math.cos( p*Math.PI ) / 2;=0A=
	}=0A=
};=0A=
=0A=
jQuery.timers =3D [];=0A=
jQuery.fx =3D Tween.prototype.init;=0A=
jQuery.fx.tick =3D function() {=0A=
	var timer,=0A=
		timers =3D jQuery.timers,=0A=
		i =3D 0;=0A=
=0A=
	fxNow =3D jQuery.now();=0A=
=0A=
	for ( ; i < timers.length; i++ ) {=0A=
		timer =3D timers[ i ];=0A=
		// Checks the timer has not already been removed=0A=
		if ( !timer() && timers[ i ] =3D=3D=3D timer ) {=0A=
			timers.splice( i--, 1 );=0A=
		}=0A=
	}=0A=
=0A=
	if ( !timers.length ) {=0A=
		jQuery.fx.stop();=0A=
	}=0A=
	fxNow =3D undefined;=0A=
};=0A=
=0A=
jQuery.fx.timer =3D function( timer ) {=0A=
	if ( timer() && jQuery.timers.push( timer ) ) {=0A=
		jQuery.fx.start();=0A=
	}=0A=
};=0A=
=0A=
jQuery.fx.interval =3D 13;=0A=
=0A=
jQuery.fx.start =3D function() {=0A=
	if ( !timerId ) {=0A=
		timerId =3D setInterval( jQuery.fx.tick, jQuery.fx.interval );=0A=
	}=0A=
};=0A=
=0A=
jQuery.fx.stop =3D function() {=0A=
	clearInterval( timerId );=0A=
	timerId =3D null;=0A=
};=0A=
=0A=
jQuery.fx.speeds =3D {=0A=
	slow: 600,=0A=
	fast: 200,=0A=
	// Default speed=0A=
	_default: 400=0A=
};=0A=
=0A=
// Back Compat <1.8 extension point=0A=
jQuery.fx.step =3D {};=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=
jQuery.fn.offset =3D function( options ) {=0A=
	if ( arguments.length ) {=0A=
		return options =3D=3D=3D undefined ?=0A=
			this :=0A=
			this.each(function( i ) {=0A=
				jQuery.offset.setOffset( this, options, i );=0A=
			});=0A=
	}=0A=
=0A=
	var docElem, win,=0A=
		box =3D { top: 0, left: 0 },=0A=
		elem =3D this[ 0 ],=0A=
		doc =3D elem && elem.ownerDocument;=0A=
=0A=
	if ( !doc ) {=0A=
		return;=0A=
	}=0A=
=0A=
	docElem =3D doc.documentElement;=0A=
=0A=
	// Make sure it's not a disconnected DOM node=0A=
	if ( !jQuery.contains( docElem, elem ) ) {=0A=
		return box;=0A=
	}=0A=
=0A=
	// If we don't have gBCR, just use 0,0 rather than error=0A=
	// BlackBerry 5, iOS 3 (original iPhone)=0A=
	if ( typeof elem.getBoundingClientRect !=3D=3D "undefined" ) {=0A=
		box =3D elem.getBoundingClientRect();=0A=
	}=0A=
	win =3D getWindow( doc );=0A=
	return {=0A=
		top: box.top  + ( win.pageYOffset || docElem.scrollTop )  - ( =
docElem.clientTop  || 0 ),=0A=
		left: box.left + ( win.pageXOffset || docElem.scrollLeft ) - ( =
docElem.clientLeft || 0 )=0A=
	};=0A=
};=0A=
=0A=
jQuery.offset =3D {=0A=
=0A=
	setOffset: function( elem, options, i ) {=0A=
		var position =3D jQuery.css( elem, "position" );=0A=
=0A=
		// set position first, in-case top/left are set even on static elem=0A=
		if ( position =3D=3D=3D "static" ) {=0A=
			elem.style.position =3D "relative";=0A=
		}=0A=
=0A=
		var curElem =3D jQuery( elem ),=0A=
			curOffset =3D curElem.offset(),=0A=
			curCSSTop =3D jQuery.css( elem, "top" ),=0A=
			curCSSLeft =3D jQuery.css( elem, "left" ),=0A=
			calculatePosition =3D ( position =3D=3D=3D "absolute" || position =
=3D=3D=3D "fixed" ) && jQuery.inArray("auto", [curCSSTop, curCSSLeft]) > =
-1,=0A=
			props =3D {}, curPosition =3D {}, curTop, curLeft;=0A=
=0A=
		// need to be able to calculate position if either top or left is auto =
and position is either absolute or fixed=0A=
		if ( calculatePosition ) {=0A=
			curPosition =3D curElem.position();=0A=
			curTop =3D curPosition.top;=0A=
			curLeft =3D curPosition.left;=0A=
		} else {=0A=
			curTop =3D parseFloat( curCSSTop ) || 0;=0A=
			curLeft =3D parseFloat( curCSSLeft ) || 0;=0A=
		}=0A=
=0A=
		if ( jQuery.isFunction( options ) ) {=0A=
			options =3D options.call( elem, i, curOffset );=0A=
		}=0A=
=0A=
		if ( options.top !=3D null ) {=0A=
			props.top =3D ( options.top - curOffset.top ) + curTop;=0A=
		}=0A=
		if ( options.left !=3D null ) {=0A=
			props.left =3D ( 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=
=0A=
	position: function() {=0A=
		if ( !this[ 0 ] ) {=0A=
			return;=0A=
		}=0A=
=0A=
		var offsetParent, offset,=0A=
			parentOffset =3D { top: 0, left: 0 },=0A=
			elem =3D this[ 0 ];=0A=
=0A=
		// fixed elements are offset from window (parentOffset =3D {top:0, =
left: 0}, because it is it's only offset parent=0A=
		if ( jQuery.css( elem, "position" ) =3D=3D=3D "fixed" ) {=0A=
			// we assume that getBoundingClientRect is available when computed =
position is fixed=0A=
			offset =3D elem.getBoundingClientRect();=0A=
		} else {=0A=
			// Get *real* offsetParent=0A=
			offsetParent =3D this.offsetParent();=0A=
=0A=
			// Get correct offsets=0A=
			offset =3D this.offset();=0A=
			if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) {=0A=
				parentOffset =3D offsetParent.offset();=0A=
			}=0A=
=0A=
			// Add offsetParent borders=0A=
			parentOffset.top  +=3D jQuery.css( offsetParent[ 0 ], =
"borderTopWidth", true );=0A=
			parentOffset.left +=3D jQuery.css( offsetParent[ 0 ], =
"borderLeftWidth", true );=0A=
		}=0A=
=0A=
		// Subtract parent offsets and 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=
		return {=0A=
			top:  offset.top  - parentOffset.top - jQuery.css( elem, "marginTop", =
true ),=0A=
			left: offset.left - parentOffset.left - jQuery.css( elem, =
"marginLeft", true)=0A=
		};=0A=
	},=0A=
=0A=
	offsetParent: function() {=0A=
		return this.map(function() {=0A=
			var offsetParent =3D this.offsetParent || document.documentElement;=0A=
			while ( offsetParent && ( !jQuery.nodeName( offsetParent, "html" ) && =
jQuery.css( offsetParent, "position") =3D=3D=3D "static" ) ) {=0A=
				offsetParent =3D offsetParent.offsetParent;=0A=
			}=0A=
			return offsetParent || document.documentElement;=0A=
		});=0A=
	}=0A=
});=0A=
=0A=
=0A=
// Create scrollLeft and scrollTop methods=0A=
jQuery.each( {scrollLeft: "pageXOffset", scrollTop: "pageYOffset"}, =
function( method, prop ) {=0A=
	var top =3D /Y/.test( prop );=0A=
=0A=
	jQuery.fn[ method ] =3D function( val ) {=0A=
		return jQuery.access( this, function( elem, method, val ) {=0A=
			var win =3D getWindow( elem );=0A=
=0A=
			if ( val =3D=3D=3D undefined ) {=0A=
				return win ? (prop in win) ? win[ prop ] :=0A=
					win.document.documentElement[ method ] :=0A=
					elem[ method ];=0A=
			}=0A=
=0A=
			if ( win ) {=0A=
				win.scrollTo(=0A=
					!top ? val : jQuery( win ).scrollLeft(),=0A=
					top ? val : jQuery( win ).scrollTop()=0A=
				);=0A=
=0A=
			} else {=0A=
				elem[ method ] =3D val;=0A=
			}=0A=
		}, method, val, arguments.length, null );=0A=
	};=0A=
});=0A=
=0A=
function getWindow( elem ) {=0A=
	return jQuery.isWindow( elem ) ?=0A=
		elem :=0A=
		elem.nodeType =3D=3D=3D 9 ?=0A=
			elem.defaultView || elem.parentWindow :=0A=
			false;=0A=
}=0A=
// Create innerHeight, innerWidth, height, width, outerHeight and =
outerWidth methods=0A=
jQuery.each( { Height: "height", Width: "width" }, function( name, type =
) {=0A=
	jQuery.each( { padding: "inner" + name, content: type, "": "outer" + =
name }, function( defaultExtra, funcName ) {=0A=
		// margin is only for outerHeight, outerWidth=0A=
		jQuery.fn[ funcName ] =3D function( margin, value ) {=0A=
			var chainable =3D arguments.length && ( defaultExtra || typeof margin =
!=3D=3D "boolean" ),=0A=
				extra =3D defaultExtra || ( margin =3D=3D=3D true || value =3D=3D=3D =
true ? "margin" : "border" );=0A=
=0A=
			return jQuery.access( this, function( elem, type, value ) {=0A=
				var doc;=0A=
=0A=
				if ( jQuery.isWindow( elem ) ) {=0A=
					// As of 5/8/2012 this will yield incorrect results for Mobile =
Safari, but there=0A=
					// isn't a whole lot we can do. See pull request at this URL for =
discussion:=0A=
					// https://github.com/jquery/jquery/pull/764=0A=
					return elem.document.documentElement[ "client" + name ];=0A=
				}=0A=
=0A=
				// Get document width or height=0A=
				if ( elem.nodeType =3D=3D=3D 9 ) {=0A=
					doc =3D elem.documentElement;=0A=
=0A=
					// Either scroll[Width/Height] or offset[Width/Height] or =
client[Width/Height], whichever is greatest=0A=
					// unfortunately, this causes bug #3838 in IE6/8 only, but there is =
currently no good, small way to fix it.=0A=
					return Math.max(=0A=
						elem.body[ "scroll" + name ], doc[ "scroll" + name ],=0A=
						elem.body[ "offset" + name ], doc[ "offset" + name ],=0A=
						doc[ "client" + name ]=0A=
					);=0A=
				}=0A=
=0A=
				return value =3D=3D=3D undefined ?=0A=
					// Get width or height on the element, requesting but not forcing =
parseFloat=0A=
					jQuery.css( elem, type, extra ) :=0A=
=0A=
					// Set width or height on the element=0A=
					jQuery.style( elem, type, value, extra );=0A=
			}, type, chainable ? margin : undefined, chainable, null );=0A=
		};=0A=
	});=0A=
});=0A=
// Limit scope pollution from any deprecated API=0A=
// (function() {=0A=
=0A=
// })();=0A=
// Expose jQuery to the global object=0A=
window.jQuery =3D window.$ =3D jQuery;=0A=
=0A=
// Expose jQuery as an AMD module, but only for AMD loaders that=0A=
// understand the issues with loading multiple versions of jQuery=0A=
// in a page that all might call define(). The loader will indicate=0A=
// they have special allowances for multiple jQuery versions by=0A=
// specifying define.amd.jQuery =3D true. Register as a named module,=0A=
// since jQuery can be concatenated with other files that may use define,=0A=
// but not use a proper concatenation script that understands anonymous=0A=
// AMD modules. A named AMD is safest and most robust way to register.=0A=
// Lowercase jquery is used because AMD module names are derived from=0A=
// file names, and jQuery is normally delivered in a lowercase file name.=0A=
// Do this after creating the global so that if an AMD module wants to =
call=0A=
// noConflict to hide this version of jQuery, it will work.=0A=
if ( typeof define =3D=3D=3D "function" && define.amd && =
define.amd.jQuery ) {=0A=
	define( "jquery", [], function () { return jQuery; } );=0A=
}=0A=
=0A=
})( window );=0A=

------=_NextPart_000_0000_01CE35BD.6A681460
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://ted.europa.eu/static/js/jquery.marquee.min.js?1.08.06

/**=0A=
 * jQuery.marquee - scrolling text horizontally=0A=
 * Date: 11/01/2013=0A=
 * @author Aamir Afridi - aamirafridi(at)gmail(dot)com | =
http://www.aamirafridi.com=0A=
 */=0A=
=0A=
;(function(e){e.fn.marquee=3Dfunction(t){return this.each(function(){var =
n=3De.extend({},e.fn.marquee.defaults,t),r=3De(this),i,s;n=3De.extend({},=
n,r.data());r.wrapInner('<div =
class=3D"js-marquee"></div>');r.find(".js-marquee").css({"margin-right":n=
.gap,"float":"left"}).clone().appendTo(r);r.wrapInner('<div =
style=3D"width:100000px" =
class=3D"js-marquee-wrapper"></div>');s=3Dr.find(".js-marquee:first").wid=
th()+n.gap;i=3Dr.find(".js-marquee-wrapper");var =
o=3Dfunction(){i.css("margin-left",n.direction=3D=3D"left"?0:"-"+s+"px");=
i.animate({"margin-left":n.direction=3D=3D"left"?"-"+s+"px":0},n.speed,"l=
inear",o)};setTimeout(o,n.delayBeforeStart)})};e.fn.marquee.defaults=3D{s=
peed:1e4,gap:20,delayBeforeStart:1e3,direction:"left"}})(jQuery);=0A=

------=_NextPart_000_0000_01CE35BD.6A681460--
	
